GoldBug (Instant Messenger)

Aus MARJORIE-WIKI
Wechseln zu: Navigation, Suche
GoldBug
Goldbug-neuland.png
Goldbugchattab.png
Screenshot von GoldBug 3.0
Basisdaten
Aktuelle Version 3.5
(09 März 2017)
Betriebssystem Microsoft Windows, Mac OS X, Linux
Programmier­sprache C++
Kategorie E-Mail-Programm, Instant Messenger, Chat, E-Mail, Suchmaschine, Newsgroups, Filesharing,
Lizenz BSD (Freie Software)
goldbug.sourceforge.net

GoldBug ist ein quelloffener sicherer Instant Chat Messenger und Email-Klient sowie auch eine Internet- bzw. URL-Datenbank-Suchmaschine basierend auf dem Netzwerkprotokoll namens Echo und dem Programmkern Spot-on (spot-on.sf.net). Die beiden Grundfunktionen des Internets und seiner Nutzer – Kommunikation und Websuche – werden somit durch diese Applikation abgebildet.

Einleitung[Bearbeiten]

GoldBug nutzt für die Kommunikation starke sowie hybride Mehrfach-Verschlüsselung mit verschiedenen Schichten von modernen Verschlüsselungs-Technologien von etablierten und auditierten Verschlüsselungs-Bibliotheken: wie libgcrypt (bekannt von GnuPG) und OpenSSL – d. h. es sind Implementierung nach RFC 4880 des OpenPGP-Standards bzw. nach Prozessen der Zertifizierung nach dem Federal Information Processing Standard (FIPS 140-2). [1] [2] Es wurde 2014 als eines der wichtigsten 25 quelloffenen Projekte durch EfyTimes gewertet.[3] [4]


Somit werden sowohl symmetrische (z.B. AES) wie auch asymmetrische Verschlüsselungsverfahren (z.B. RSA mit öffentlichem Schlüssel) genutzt.[5]

Darüber hinaus ist GoldBug der erste Messenger, der eine Verschlüsselung der Kommunikation über quantum-computing resistentere Algorithmen wie NTRU und McEliece quelloffen zur Verfügung stellt. Dieses ist insbesondere wichtig, da das offizielle U.S.-Institut NIST im Jahr 2016 mitteilte, dass RSA als Algorithmus im heutigen Zeitalter des Quantum Computings nicht mehr als sicher gilt.

Die Applikation GoldBug erlaubt es also, manuell und eigenständig seine persönlichen Verschlüsselungs-Komponenten auszuwählen z.B. mit Verschlüsselung durch das RSA-Kryptosystem, NTRU-Encrypt, dem Elgamal-Verschlüsselungsverfahren oder dem McEliece Algorithmus, der auch mit dem Modell nach Fujisaki-Okamoto gegen einen IND-CCA2 Angriff zusätzlich absichert ist.

Da die beiden Algorithmen NTRU und McEliece als zukunftsweisend resistenter gegenüber Quantum Computing gelten, hat GoldBug damit als erster E-Mail-Klient und Instant Messenger diese beiden zukunftsicheren Algorithmen implementiert.[6]

Ebenso können Schlüsselgröße, Verschlüsselungsverfahren, kryptologische Hashfunktion, Salt und weitere Werte individuell eingestellt werden.

Gegenüber anderen Crypto-Messengern liegen die Vorteile von GoldBug in folgenden Eigenschaften[7]:

  • durch die Quelloffenheit (BSD-Lizenz) kann jeder den Programmcode von GoldBug blesen und überprüfen, es ist kein Vertrauen an eine dritte Instanz notwendig. Nur wenige Crypto-Messenger sind quelloffen.[8]
  • Das Programm GoldBug ermöglicht es jedem, einen eigenen Chat Server zu erstellen und zu nutzen sowie mit anderen in einem gemeinsamen Netzwerk mit weiteren Chatservern zu föderieren. Nur wenige Crypto-Messenger können über eine eigene Infrastruktur betrieben werden.
  • GoldBug ist der erste Messenger, der die Algorithmen NTRU und McEliece implementierte und damit resistenter ist gegenüber Quantum Computing, angesichts der offiziellen NIST-Bestätigung im Jahr 2016, dass RSA nicht mehr als sicher gilt. Nur wenige Crypto-Messenger haben eine Alternative zu dem unsicheren RSA.
  • GoldBug erlaubt es zudem jedem einzelnen Nutzer, ganz individuelle und manuelle Verschlüsselungswerte zu bestimmen. Dieses ist insbesondere bei der Ende-zu-Ende Verschlüsselung entscheidend. Nur wenige, also fast kein Crypto-Messenger ermöglicht es, ein Ende-zu-Ende verschlüsselndes Passwort manuell außerhalb des Internets zur Gegenstelle zu übertragen.
  • Das aktuell vielgenutzte Paradigma der ephemeralen (temporären) Verschlüsselungskeys im Bereich von Forward Secrecy ist durch GoldBug nicht nur mittels der Innovation des „kryptograpischen Callings“ in das Paradigma „Instant Forward Perfect Secrecy“ innoviert worden, sondern auch mit der Funktion von „Secret Streams“ mittels eines SMP-Prozesses authentifiziert worden (Socialist-Millionaire-Protokoll). Das heisst: ein Nutzer kann mit seiner Gegenstelle nicht nur einmal pro Sitzung einen temporären Sitzungsschlüssel übertragen (wie bei manchen althergebrachten RSA-Messengern), sondern diesen fast sekündlich – sozusagen „instant“ – erneuern und zusätzlich mit einem SMP-Password absichern und authentifizieren. Nur wenige Crypto-Messenger erlauben eine ganze handvoll an verschiedenen Übertragungsmethoden von sitzungsbezogenen Schlüsseln im Rahmen des „kryptographischen Callings“.

Dementsprechend lautet der Claim und Untertitel des Programms GoldBug: „Your instant Definition in decentral Crypto.“

Entscheidend sind also nicht nur die Quelloffenheit sowie Algorithmen und Prozeduren der Verschlüsselung, sondern der ganz einfache praktische Prüf-Fall: Kann ein Nutzer einen eigenen (dezentralen) Chat-Server für ein jeweiliges Crypto-Programm einrichten und kann er seine Ende zu Ende Verschlüsselung durch ein individuelles und manuell eingegebenes bzw. zur Gegenstelle kommuniziertes Passwort erstellen? Mit GoldBug ist das der Fall.

Mit den vier Kriterien: Quelloffenheit, föderierbare Chat-Server, manuell-insertierbare und individuelle Ende zu Ende Passworte und viertens Quantum-Computing-resistente Algorithmen weisst GoldBug hier zukunftsweisende Alleinstellungsmerkmale auf, die selbst einige Jahre nach dem ersten Release durch vergleichbare (wenn auch populärere) Technologie-Begleiter technisch und kryptologisch noch nicht erreicht wurden.

Fortgeschrittene Nutzer fragten sich also, was nützt sogenanntes „Double-Racheting“: ein Cache an temporären Sitzungs-Schlüsseln, wenn man die App nicht über einen eigenen Server laufen lassen kann oder gar auf dem veralteten und unsicheren Algorithmus RSA basiert?

Das Programm GoldBug beinhaltet als quelloffene Kommunikations-Suite neben POP3 und IMAP-Untersützung bei der E-Mail-Funktion weiterhin ein dezentrales und verschlüsseltes peer-to-peer (p2p) E-Mail und einen dezentralen privaten bzw. öffentlichen Gruppen-Chat im IRC-Stil.

Schließlich sind verschiedene Werkzeuge integriert, wie ein Verschlüsselungs-Pad zur Wandlung von Klartext in verschlüsselten Ciphertext oder ein RSS- bzw. Atom-Feed-Reader, um die URL-Datenbank für die eigene Websuche zu versorgen.

So können mit dem Wandlungs-Pad Texte, bevor sie in einen verschlüsselten Transfer gegeben werden, bereits ein weiteres Mal verschlüsselt werden oder als Ciphertext im Internet gepostet werden. Durch die Nutzung des RSS-Feed-Readers können Nutzer ihre RSS-Seiten abspeichern und in diesen eine Stichwort-Suche durchführen.

Mit dem p2p E-Mail ist neben POP3 und IMAP mit den sogenannten „E-Mail-Institutions“ innerhalb der p2p E-Mail-Funktion ein drittes Server-Protokoll für verschlüsseltes E-Mail etabliert worden.

Technisch gesehen ist GoldBug eine grafische Benutzeroberfläche für den Spot-on Echo-Kernel, der in C++ mit der Qt-Bibliothek geschrieben wurde. Das Programm ist verfügbar bzw. kompiliert aus dem offenen Quellcode für Windows, Mac OS X und Linux, hier insbesondere FreeBSD, Debian und openSUSE. Eine Option für den RaspberryPi Computer ist ebenso vorhanden.

Namensherkunft[Bearbeiten]

Der Name GoldBug geht zurück auf die Kurzgeschichte Der Goldkäfer von Edgar Allan Poe: Die Geschichte erzählt von William LeGrand, der letztens einen gold-farbigen Marienkäfer entdeckte. Sein Freund Jupiter sah sodann die Entwicklung voraus, dass LeGrand nun nach dem Kontakt mit dem Marienkäfer bestärkt sei in der Suche nach Erfahrungs-Wissen, Schätzen und Weisheiten – und geht zu einem weiteren alten Freund von LeGrand, um dieses zu besprechen. Nachdem sie sodann eine geheime Botschaft entschlüsseln konnten, beginnen die drei ein Abenteuer als Team, von dem die Kurzgeschichte dann erzählt. Edgar Allan Poes Kurzgeschichte und Ideen zur Verschlüsselung halfen seinerzeit ebenso, verschlüsseltes Schreiben und die Deciffrierung von sogenannten Kryptogrammen seit 1843 bekannt zu machen. Der Name der Software bezieht sich somit über 170 Jahre später in symbolischer Weise auf diesen alten Kontext.

Das zugrundeliegende Echo-Protokoll und seine Verschlüsselung[Bearbeiten]

Das Echo Protokoll ist bereits vor dem ersten Release on GoldBug bzw. dessen Programm-Kernel Spot-on im Sommer 2013 – nur wenige Wochen nach der Veröffentlichung der Massenüberachungsaktivitäten durch Edward Snowden – in einem vorherigen Forschungsprojekt entwickelt worden. Das Release des Spot-On Kernels und der Benutzerüberfläche GoldBug stellte das Echo Protokoll und seine Multi-Verschlüsselung sodann der Öffentlichkeit quelloffen zur Verfügung. Das Echo Protokoll basiert auf zwei simplen Prozessen: Erstens, jedes Datenpacket wird verschlüsselt, und, zweitens, jedes Datenpacket wird in einem Netzwerk an jeden bestehenden Nachbarn gesandt. Über die weiteren Stationen in einem Netzwerk wird der Empfänger des Datenpackets somit erreicht. Netzwerk-Redundanzen werden durch eine Congestion Control Funktion in jedem Klienten ausgefiltert. Verschiedene Verbindungs-Modi des Echos erlauben unterschiedliche Szenarien:

Verbindungen im Echo-Protokoll des GoldBug-Messengers können in drei verschiedenen Modi betrieben werden: Volles Echo, Halbes Echo und Adaptives Echo. Weiterhin ist bei allen drei Methoden die Einrichtung eines Echo-Accounts möglich.

Volles Echo[Bearbeiten]

Der Modus des Vollen Echos sendet jedes verschlüsseltes Nachrichten-Paket an jeden verbundenen Nachbarn. Jeder Nachbar führt dieses ebenso durch. In kleineren Netzwerken wird so jeder Knotenpunkt zeitgerecht erreicht. Ein Knotenpunkt kann dann im Clienten-Modus, im Server-Modus oder als sogenannter Servent betrieben werden, bei dem er zugleich ein Chat-Server als auch ein Chat-Teilnehmer-Client ist.

Halbes Echo[Bearbeiten]

Das Halbe Echo sendet die Chat-Nachricht nur einen Hop weiter an den direkten Nachbarn bzw. Chat-Freund. Das bedeutet, dass zwei Nachbarn miteinander Informationen austauschen können und die Nachricht nicht an dritte, weitere Teilnehmer ausgeliefert wird. Obwohl sowieso immer verschlüsselt, können mit dieser Methode des Halben Echos andere Teilnehmer im Netzwerk davon ausgeschlossen werden, dass sie überhaupt von der Nachrichtenübermittlung erfahren – Metadaten, wer mit wem wann kommuniziert, werden also eingeschränkt.

Adaptives Echo[Bearbeiten]

Das Adaptive Echo (AE) sendet die Nachricht – wenn entsprechende kryptographische Token vorhanden sind – ausschließlich nur zu den verbundenen Nachbarn, die ebenso den entsprechenden Verschlüsselungs-Token kennen. Die folgende Abbildung erläutert das Kommunikationsbeispiel von Hänsel und Gretel. Abbildung: Hänsel und Gretel

Die Grafik zeigt das Adaptive Echo-Protokoll für echocasting. Mit Verschlüsselungs-Tokens lernen die einzelnen Computer im Netzwerk, an welche Teilnehmer eine Nachricht zu senden ist und an welche nicht.

Bezugnehmend auf das alte Märchen markieren beide Teilnehmer im Wald die Spur, um aus dem Wald wieder heraus zu finden – mit weißen Kieselsteinen und Brotkrumen. Sie möchten den Wald wieder verlassen und über den Weg kommunizieren, ohne dass die Böse Hexe davon Kenntnis erlangen soll. Wie können Hänsel und Gretel miteinander kommunizieren, ohne dass die Böse Hexe davon Kenntnis erlangt?

Die Grafik zeigt das Adaptive Echo-Protokoll für Echocasting. Mit Verschlüsselungs-Tokens lernen die einzelnen Computer im Netzwerk, an welche Teilnehmer eine Nachricht zu senden ist und an welche nicht. Die Teilnehmer in diesem Beispiel nutzen das Verschlüsselungs-Stichwort „Weiße Kieselsteine“. Die Nachricht wird dann nicht zu dem Kontenpunkt der Bösen Hexe (Knotenpunkt E6) gesandt. Alle anderen Teilnehmer, die den Verschlüsselungs-Token „Weisse Kieselsteine“ nicht kennen, verhalten sich regulär nach dem Vollen bzw. wenn definiert: Halben Echo (s.o.) und senden die Nachricht wiederum an alle bzw. nur den einen definierten, verbundenen Nachbarn.


Echo Accounts[Bearbeiten]

Accounts definieren einfach eine Ausschließlichkeit im Verbinden zu einen anderen Knotenpunkt oder Nachbarn. Nachbar A und Nachbar B können dann nur miteinander verbinden, wenn sie zuvor sich auf genaue Accout-Logins und ein Passwort verständigt haben. Dieses erlaubt es, eine Art Web of Trust zu etablieren, ohne dass der öffentliche Verschlüsselungs-Key preisgegeben werden muss und ohne dass ein Verschlüsselungs-Key einer bestimmten IP-Adresse zugeordnet werden muss oder kann.

Prozess der Echo-Verschlüsselung[Bearbeiten]

Die Nachricht eines Teilnehmers wird sodann verschlüsselt z.B. in dem folgenden Format: TLS/SSL (AES ( RSA (Nachricht))). Statt RSA kann auch NTRU oder McEliece oder ElGamal gewählt werden. Das bedeutet, die verschlüsselte Nachricht wird durch einen selbst-signierten TLS/SSL-Kanal zum anderen Nachbarn gesendet. Durch die Benutzung verschiedener Schichten von Verschlüsselung wird es einem Angreifer so sehr schwer gemacht, die Verschlüsselung überhaupt brechen zu können. Ebenso kann der sichere SSL-Kanal dazu genutzt werden, einen symmetrischen Schlüssel für eine durchgehende Ende-zu-Ende-Verschlüsselung zu senden, wie einen AES-Schlüssel (Advanced Encryption Standard). So werden Aufzeichnungen Dritter vermieden, die Schlüssel abfangen wollen, die im Klartext übertragen werden. Die selbst-signierte (peer-to-peer) TLS/SSL-(Transport Layer Security)-Verbindung ist abgesichert gegen einen Man-In-The-Middle-Angriff des Diffie-Hellman-Transportwege-Protokolls durch verschiedene Maßnahmen wie z.B.: optional die IP-Adresse des Nachbarn in das SSL-Zertifikat mit zu inkludieren oder auch durch die Möglichkeit, ein permanentes SSL-Zertifikat zu erstellen, so dass ein durch Dritte unbemerkt ersetzter, falscher Nachbar nicht in der Lage wäre, sich zu verbinden und dann sofort auffallen würde.


Die Grundfunktionen des Programm in den einzelnen Tabulatoren[Bearbeiten]

Neben dem

  • „Login“-Tab, um sich in die Benutzeroberfläche mit einer Passphrase, die mindestens 16 Zeichen umfassen muss, einzuloggen
  • sowie einem Tab, um den Kernel zu aktivieren, und dem
  • „Add-Friend-Key“-Tab, bei dem der Verschlüsselungs-Key des Freundes eingegeben wird, hat das GoldBug Proframm verschiedene weitere Funktionen, unter anderem in den Tabulatoren bzw Pop-up-Fenstern:
  • 1:1 Chat,
  • E-Mail,
  • Gruppenchat im IRC-Stil, sowie
  • Datei-Transfer (hier StarBeam-FileSharing genannt) und auch eine
  • URL-Datenbank-Suche
  • ein Crypto-Pad zur Conversion von Klartext zu Ciphertext.
  • ein Werkzeug zur Verschlüsselung von Dateien.[9]

Chat[Bearbeiten]

Chat-Nachrichten in GoldBug sind immer verschlüsselt. Neben der Verschlüselungsmethode nach einem asymmetrischen (z.B. RSA- oder Elgamal) Verschlüsselungsverfahren kann auch eine Verschlüsselung mit einem symmetrischen Schlüssel (AES) genutzt werden. Der symmetrische Schlüssel kann manuell eingegeben werden (z.B. wenn man sich auf ein Passwort einigt, das beispielswiese die Stadt benennt, in der man geheiratet hat) oder der Schlüssel kann auch automatisch generiert werden im AES-Standard mit 32 zufälligen Zeichen. Der symmetrische Schlüssel wird dann zusätzlich noch abgesichert mit einem MAC-Hash (Message Authentication Code Hash). Ein Nutzer, der das Verschlüsselungsverfahren Elgamal verwendet, kann ebenso mit einem Nutzer chatten, der das Verschlüsselungsverfahren RSA anwendet.[10] [11]

E-Mail[Bearbeiten]

GoldBug enthält auch einen funktionablen E-Mail-Klienten. Dieser ermöglicht es, E-Mails entweder über eine Peer-to-Peer-Methode zu senden, ohne eines der zentralen Post Office Protokoll-Server wie POP3 oder IMAP in Anspruch zu nehmen. Mit den p2p „E-Mail-Institutions“ ist eine dritte Protokollvariante neben POP3 und IMAP entwickelt worden, die inbesondere verschlüsselte E-Mails adressiert. Auch kann der eingebaute E-Mail-Klient für POP3 und IMAP basierend auf der Bibliothek libcurl genutzt werden. Damit können E-Mail sowohl verschlüsselt, als auch in offenem Text-Modus empfangen und gesendet werden. GoldBug ist damit neben dem ausschließlich mobilen Klienten Trojita eine Alternative zu einem E-Mail-Klienten, der quelloffen das QT-Framework von Digia nutzt. [12]


Poptastic[Bearbeiten]

POPTASTIC ist ein verschlüsselter Chat auf Basis von E-Mail. Die E-Mails werden Ende-zu-Ende asymmetrisch – und hybride ergänzend: symmetrisch – verschlüsselt und dann über einen IMAP oder POP3 Server gesandt und sodann bei der Gegenstelle wieder in ein Chat-Format umgewandelt. POPTASTIC ist proxy-fähig und kann daher auch hinter einer Firewall oder beispielsweise über das Tor-Netzwerk betrieben werden. Damit können E-Mail-Server als Chat-Server genutzt werden.[13]

Gruppenchat (Buzz / e*IRC)[Bearbeiten]

Der Gruppen-Chat ist ebenso immer verschlüsselt. Er wird eIRC (ge-echo-ter IRC) oder Buzz genannt, was der Original-Name des Gruppenchats im Spot-on Klienten, Kernel und Quellcode ist. Diese Art des Gruppen-Chats erfordert es nicht, dass die Teilnehmer öffentliche Schlüssel aus dem Paar öffentlicher und privater Schlüssel (asymmetrische Verschlüsselung) tauschen. Der Gruppenchat ist basierend auf einem Magnet-Magnet-URI-Link-Standard, der durch kryptographische Werte gebildet wird. Ein AES definiert sodann den Gruppenchatraum, es ist also ein symmetrisches Verschlüsselungsverfahren. Jeder, der den Magneten kennt, kann den Chat entschlüsseln und daran teilhaben (siehe auch weiter unten die Erläuterung des Magnet-URI-Standards für Verschlüsselung, der durch die hiesigen Entwicklungen für kryptographische Prozesse implementiert wurde).[14]


StarBeam File Transfer[Bearbeiten]

StarBeam ist die Funktion im entsprechenden Tabulator, um eine Datei in Form von verschlüsselten Paketen über das Internet zu senden. Jeder, der den Magnet-Link kennt, ist in der Lage, die Datenpackete zu empfangen und die Datei zu entschlüsseln. Um die Magneten zwischen zwei Personen privat zu halten, kann zusätzlich ein sogenanntes „Nova“-Passwort auf die Datei gesetzt werden – so dass das Nova-Passwort ggf. erst zu einem späteren Zeitpunkt freigegeben werden kann, z.B. wenn der Transfer schon längst abgeschlossen ist. Das Nova ist eine zweite Schicht an Verschlüsselung, neben der Einführung des Magnet-URI-Standards für Verschlüsselung im Quellcode des Spot-on-Kernels.[15]


URL Web-Suche[Bearbeiten]

Neben den Kommunikationsfunktionen ist eine p2p Websuche in einer URL-Datenbank in dem Programm GoldBug integriert. Damit wird die Applikation auch zu einer Web-Suchmaschine. Der URL-Datenbankbestand kann mit anderen Nutzern geteilt werden und es wird damit neben der quelloffenen Suchmaschine auch ein quelloffener Datenbestand ermöglicht, den eine Nutzergemeinschaft in verschiedenen Knotenpunkten archivieren kann. Der Import der URLs kann über drei Funktionen erfolgen: zum einen ist in GoldBug ein RSS-/Atom-Feedreader integriert. Weiterhin kann mit dem Webbrowser Dooble.sf.net einzelne gelesene Seiten importiert werden. Drittens schließlich kann das Web in grossflächigem Maße mit dem Crawler Pandamonium (im Windows Release von GoldBug beigefügt) indexiert und der URL-Datenbank hinzugefügt werden. Die Datenbank ist wie auch der Transfer der URLs zu anderen Knotenpunkten vollständig verschlüsselt. Die Suchworte der Websuche werden daher nicht dem Zugriff von Dritten ausgesetzt. Als Datenbanken für die URLs kann der Nutzer zwischen SQLite oder PostGres wählen. Die Datenbanken können als singuläres Repositorium oder im Netzwerk mit mehreren Nutzern p2p betrieben werden. Die Suche in verschlüsselten Datenbanken ist dabei ein ganz neuer Forschungszweig und GoldBug hat hier ein entsprechendes Modell vorgelegt.

Rosetta CryptoPad[Bearbeiten]

Das Rosetta CryptoPad ist eine weitere Funktion as pop-up-Werkzeug, um Klartext in Chipertext umzuwandeln. Ebenso basierend auf einem Paar von öffentlichem und privatem Schlüssel können Nutzer den verschlüsselten Text dann über herkömmliche Klartext-Protokolle wie @-mail oder über jedes andere Nachrichtenprogramm austauschen; auch in Foren kann der Text gepostet und sodann vom Freund wieder ausgelesen und decodiert werden. So wird eine Art „slow-chat“ durchgeführt, da jeder die Nachricht erst manuell ver- und entschlüsselt. Der Name Rosetta CryptoPad geht zurück auf den Stein von Rosette, welcher früher als eine Art Übersetzungs-„Buch“ für ägyptische Hieroglyphen diente. Dieses kleine Pad als Verschlüsselungs-Werkzeug wurde erstmals in der Version 0.8 als Weihnachtsveröffentlichung in 2013 vorgestellt.[16]

File-Encryption Werkzeug[Bearbeiten]

Nur wenige Versionen später wurde in GoldBug ein weiteres Werkzeug integriert, dass es ermöglicht, auch eine Datei in eine verschlüsselte Datei umzuwandeln. Dazu kann der Nutzer wiederum individuell den Chiper-Verschlüsselungsalgorithmus, Hash, Vektoren und eine Signierung wählen. Es ermöglicht somit, z. B. potentiell unsichere Container von TrueCrypt mit einer weiteren Verschlüsselungsschicht zu versehen oder auch Dateien, die in eine Cloud oder zu einem Filehoster hochgeladen werden sollen, vorab zu verschlüsseln. Natürlich kann damit auch ein Anhang einer E-Mail oder eine Datei für einen Transportweg innerhalb von GoldBug z. B. über die FileSahring-Funktion StarBeam zusätzlich verschlüsselt werden. [17]

Ausgewählte Kryotographische Innovationen[Bearbeiten]

Die folgenden ausgewählten kryptographischen Innovationen sind zu nennen:

Repleo[Bearbeiten]

In GoldBug besteht die Möglichkeit, den eigenen, öffentlichen Verschlüsselungs-Key ebenso als verschlüsselten Chiphertext zurückzusenden, ihn also nicht im Klartext zu senden – wenn der Freund seinen öffentlichen Schlüssel zuerst geschickt hat. Dieses wird dann Repleo genannt.[18] Ebenso ermöglicht es das integrierte E-Mail-Programm, dass der Chat-Verschlüsselungs-Key z. B. in einer verschlüsselten Weise über E-Mail versandt wird.

E-Mail-Institutionen[Bearbeiten]

Die E-Mail-Funktion von GoldBug basiert auf einem puren Peer-to-Peer-E-Mail. Das Versenden einer E-Mail an einen Partner, der offline ist, kann in dem peer-to-peer Netzwerk über zwei Methoden durchgeführt werden. Einmal: Wenn beide Freunde einen dritten gemeinsamen Freund haben und alle ihre Verschlüsselungs-Keys austauschen – z. B. wenn Alice und Bob beide einen gemeinsamen dritten Webserver nutzen und sie die Verschlüsselungs-Keys austauschen, dann wird der Webserver die E-Mails zwischenspeichern für den Freund, der derzeit offline ist. Das funktioniert natürlich auch, wenn der Webserver ein realer dritter Freund ist, der kontinuierlich online ist. Oder, zweite Methode: eine sogenannte E-Mail-Institution wird erstellt. Für diese Instanz wird einen spezieller Verschlüsselungs-Magnet-URI erstellt. Wenn der Magnet bei den Nutzern bekannt ist und die E-Mail-Institution die Verschlüsselungs-Keys der Nutzer abgespeichert hat, dann werden die E-Mails in dieser Art einer virtuellen Institution zwischengespeichert, wie es sonst auf einem POP3- bzw. IMAP-Server der Fall wäre. Der Verschlüsselungs-Key des Nutzers, der die E-Mail-Institution einrichtet, muss nicht versandt oder bekannt gegeben werden, lediglich der Magnet der E-Mail-Institution muss bei den anderen Nutzern bekannt und eingegeben sein. Und, wie genannt, der Ersteller einer E-Mail-Institution gibt den öffentlichen Verschlüsselungs-Key eines Nutzers der Institution in seine Institution ein. Sodann können auch E-Mails abgerufen werden aus einer Institution, mit der man nicht direkt, sondern P2P verbunden ist.


Magnet URI Verschlüsselungs Standard[Bearbeiten]

Der Magnet-URI-Link-Standard wurde ausgearbeitet und weiterentwickelt in ein Format, um Verschlüsselungswerte ähnlich einem Blatt mit Blutwerten weiter geben zu können. Ein Magnet-URI, der in GoldBug, respektive für den Spot-On-Gruppen-Chat-Kanal genutzt wird, sieht aus wie in diesem Format:


und die Kategorien sind wie folgt abgekürzt:

  • rn=Spot-On_Developer_Channel_Key& = Raum Name
  • xf=10000& == Exacte Frequenz
  • xs=Spot-On_Developer_Channel_Salt& = Exactes Salz
  • ct=aes256& = Cipher Type // Chiffrierungs Typ
  • hk=Spot-On_Developer_Channel_Hash_Key& = Hash Key
  • ht=sha512& = Hash Type (z. B. SHA or Whirlpool)
  • xt=urn:buzz = Die Extension ist Buzz, ein neues Wort für e*IRC oder einen Gruppen-Chat Raum, basierend auf dem Echo-Protokoll

Dieser Standard wird genutzt, um symmetrische Schlüssel zu tauschen für Gruppenchat oder E-Mail-Institutionen oder auch Dateiübertragungen mit StarBeam.

SMP: Socialist Millionaire Protokoll[Bearbeiten]

Das Socialist Millionaire Protokoll ermöglicht eine alternative Authentifizierung des Chat-Partners. SMP wird auch im Off-the-Record Messaging (OTR) bei XMPP genutzt. Beide Chat-Partner müssen dazu ein einfaches Passwort eingeben, um sich gegenseitig zu authentifieren: wie beispielsweise der Name des Restaurants, in dem beide sich das erste Mal getroffen haben oder die Stadt, in der sie geheiratet haben. Somit wird sichergestellt, dass am anderen Ende auch wirklich der erwartete Chat-Partner ist. Die Eingaben für das Authentifizierungs-Password kann über ein virtuelles Keyboard erfolgen, das als weiteres Werkzeug eingebaut ist, um Keyloggern oder Betriebssystemen das Speichern von Passphrasen zu unterbinden. Das Keyboard ist in deutscher und englischer Sprache verfügbar und funktioniert über Doppelklick nicht nur bei der SMP-Eingabe, sondern bei jeglicher Authenifizierungsabfrage des Messengers, also auch beim Initial-Login. Die SMP-Funktion findet sich im 1:1-pop-up-Chat-Fenster. Weiterhin wird es bei den Secret Streams genutzt, um emphemerale (temporäre) Schlüssel in der Funktion des „Instant Perfect Forward Secrey“ (IPFS) zu authentifizieren.

Echo Public Key Share (EPKS): Serverloser Schlüsselaustausch[Bearbeiten]

Mit der Version 2.5 wurde bei GoldBug auch die Methode EPKS, eine Art serverloser Schlüsselaustausch veröffentlicht (Echo Public Key Sharing). Während PGP-Key-Server, die bislang ein zentrales Modell für eine Suche nach Schlüsseln zur Verschlüsselung darstellten, zahlreiche Nachteile bieten, wurde die Schlüsselverwaltung mit einem serverlosen Paradigma mit einen Schlüsseltausch über das Echo-Protokoll innoviert. Die Nutzer legen dabei einen 16-Zeichen langen Community-Namen fest. Eine Art Gruppen-Chat Raum ausschließlich für den Tausch von Schlüsseln, wobei die Gruppe auch nur zwei private Nutzer umfassen kann. Alle Online-Personen, die diesen Community-Namen kennen und eingegeben haben, erhalten dann von einem Nutzer seinen öffentlichen Schlüssel, wenn er diesen an die Community sendet. So kann beispielsweise ein Communityname "Waldorfschule" genutzt werden, damit alle Personen, die diesen Communitynamen eingegeben haben, von den Teilnehmer dieser Community den öffentlichen Schlüssel zugesandt bekommen. Standardmäßig ist eine erste Community beim Start der Applikation eingerichtet - und zwar für den automatischen Tausch des URL-Keys. Damit nimmt der Nutzer an der p2p Websuche des Klienten teil, indem er automatisch mit allen verbundenen Nutzern den URL-Key tauscht und dann auch in einem distribuierten URL-Netzwerk eine Websuche umsetzen kann. Das Verfahren bietet dementsprechend gute Perspektiven, wesentlich sicherer den Tausch von Schlüssel über diese etablierten Online-Echo-Communities abzubilden.

Forward Secrecy mit asymmetrischen Schlüsseln[Bearbeiten]

Während in der Chat-Funktion Perfect Forward Secrecy über die Calling-Funktion bereits mit symmetrischen Schlüsseln (z.B. ein Passwort oder eine AES-Zeichenfolge) vorhanden war und damit das neue Paradigma des „Instant Forward Perfect Secrecy“ (IPFS) etablierte, wurde mit einer weiteren Veröffentlichung sowohl für Chat als auch für E-Mail nun „Forward Secrecy“ (FS) auch mit asymmetrischen Schlüsseln ergänzt. Damit kann über den permanenten Schlüssel für Chat oder Email auch ein sitzungsbasiertes, also temporäres Schlüsselpaar eingerichtet werden, über das die Kommunikation dann abläuft. GoldBug war und ist damit der erste E-Mail-Client, der Forward Secrecy, also instant und sitzungsbasierte Schlüssel, sowohl zur asymmetrischen als auch symmetrischen Verschlüsselung für E-Mail und Chat anbietet.

Secret Streams auf Basis von SMP[Bearbeiten]

Mit dem Secret Streams Release in 2017 wurde sodann die sog. „Secret-Streams-Funktion“ hinzugefügt. Sie ermöglicht das Vorhalten von ephemeralen Sitzungsschlüsseln im Bereich des Konzeptes von „Instant Perfect Forward Secrecy“ für Chat und als auch für E-Mail, die sich aus einem gemeinsam definierten, aber nicht online geteilten Geheimnis eines Socialist-Millionaire-Protokol-(SMP)-Prozesses ableiten. Gegenüber anderen Konzepten wie dem Signal-Protokoll mit seinem Double-Ratchet ist nunmehr bei GoldBug ergänzend sichergestellt, dass die in der Timeline befindlichen ephemeralen Sitzungsschlüssel authentifiziert sind mittels SMP. Damit ist der Fall ausgeschlossen, dass jemand Alice ihr Device aus der Hand nimmt und unter ihren temporären Schlüsseln jederzeit weiter kommunizieren kann. Die „Secret Streams“ Funktion ist somit authentifiziertes „Instant Perfect Forward Secrecy“ in einem Stream von Schlüsseln über das SMP-Fenster für E-Mail und Chat.


Auditierung und Evaluierung der Software[Bearbeiten]

Die beiden Sicherheitsforscher David Adams (Tokyo) und Ann-Kathrin Maier (München) haben in ihrer BIG SEVEN Studie die sieben bekanntesten Verschlüsselungsprogramme für E-Mail und Chat-Nachrichten aus dem Open Source Bereich untersucht und sodann vertieft ein IT-Audit für die bekannte Software-Lösung GoldBug in 2016 durchgeführt. Das Audit berücksichtigte die wesentlichen Kriterien, Untersuchungsfelder und Methoden in Anlehnung an acht internationale IT-Audit Manuale und wurde in 20 Dimensionen durchgeführt. Die Software „GoldBug - E-Mail-Programm und Instant Messenger“ hatte dabei excellente Bewertungen und zeigt sich nicht nur sehr vertrauenswürdig und compliant bzw. konform zu den internationalen IT-Audit-Manualen und Sicherheitsstandards. GoldBug punktet auch im Vergleich und der Bewertung der Einzelfunktionen wesentlich ausführlicher als die vergleichbaren anderen open source Crypto-Messenger. Die Münchener Co-Autorin der Studie Ann-Kathrin Maier ergänzt: Wir haben sodann unsere Messenger-Studie vertieft mit einem ausführlichen Audit des Crypto-Programms GoldBug, das excellente Ergebnisse für verschlüsseltes E-Mail und sicheren Online-Chat erhielt. Durch unsere Code-Reviews von GoldBug können wir die Vertrauenswürdigkeit in die Sicherheit dieser Open Source Verschlüsselung bestätigen" (Adams/Maier, 2016).[19] Zahlreiche Details wurden durch verschiedenste Methoden analysiert, verglichen und auch von den beiden Autoren strategisch für die aktuellen Verschlüsselungs-Diskussionen bewertet. Zu den vergleichend untersuchten Applikationen zählen CryptoCat, GoldBug, OTR-XMPP-Klienten wie z.B. Pidgin mit dem OTR-Plugin, RetroShare sowie Signal, Surespot und Tox.

Versionsgeschichte[Bearbeiten]

Die Versionsgeschichte ist im Wiki des Projektes GoldBug referenziert:

Vergleich mit ähnlichen Werkzeugen für sichere Kommunikation[Bearbeiten]

Vergleich mit OTR[Bearbeiten]

OTR bietet ebenso über das XMPP-Chat-Protokoll Ende-zu-Ende-Verschlüsselung an. Im Vergleich ist hier die Verschlüsselung eine Aushandlung, die einmal pro Online-Sitzung erfolgt, während die Echo-basierten Chat-Applikationen dieses jede Sekunde erneuern oder randomisieren können. Das Kriterienmerkmal von perfect forward secrecy wurde weiterentwickelt zum Anspruch des Instant Forward Perfect Secrey (IFPS). Während OTR ein Plug-in ist, sieht das Echo Protocol einen nativen, originären verschlüsselten Nachrichtentausch vor, ohne die Notwendigkeit, in der Software eine Plugin-Entwicklung (mit allen Schnittstellenoptionen und Sicherheitsüberlegungen) umsetzen zu müssen. Weiterhin ist das Socialist Millionaire Protokoll (SMP) in beiden Chat-Verschlüsselungen bzw. -Clienten enthalten.

Vergleich mit RetroShare[Bearbeiten]

RetroShare nutzt lediglich einen Schlüssel für alle Funktionen der Applikation, hat kein Messaging zu Freunden, die gerade offline sind, und korreliert die IP-Adresse zum Verschlüsselungs-Key – was in einem genutzten DHT (Verteilte Hashtabelle) und dem vorhandenen öffentlich bekannten Schlüssel schnell dazu führen kann, dass die eigene IP-Adresse herausgefunden und analysiert werden kann. GoldBug nutzt dementsprechend 8 verschiedene Verschlüsselungs-Keys für die verschiedenen Funktionen und erlaubt es auch, Nachrichten an Nutzer zu senden, die derzeit offline sind. Die Verschlüsselungs-Keys sind nicht an die eigene IP-Adresse korreliert, und die Verbindungen zu Freunden kann z.B. über Echo-Accounts geregelt werden, was weiterhin die Erstellung eines Web of Trusts ermöglicht (F2F-Methode).

Vergleich mit YaCy[Bearbeiten]

YaCy ist eine p2p Suchmaschine für URLs, die Suchergebnisse aus einem distribuierten, also verteilten Datenbestand zusammenstellt. GoldBug stellt mit seiner p2p Websuche eine technische Alternative dar, die im Vergleich zu YaCy Suchanfragen, Datentransfers und Speicherung der Datenbestände verschlüsselt. Zusätzlich wird durch die Verschlüsselung auch kein sogenannter "Queryhit" bei den Suchanfragen im Netzwerk generiert, wie es bei YaCy der Fall ist, so dass auch die Suchworte des Nutzers nicht durch Dritte oder Peers erfasst und ausgewertet werden. Die Benutzeroberfläche ist Klienten-basiert und derzeit nicht browserbasiert. Ein Zugriff auf die Verschlüsselung in der URL-Datenbank erfordert bei einem Webinterface eine Bridge aus Python zu einem Apache-Webserver, der die Browseranfragen per TLS/SSL erhält und über die Bridge and die Datenbank weitergibt.

Siehe auch[Bearbeiten]

Weblinks[Bearbeiten]

  • Adams, David / Maier, Ann-Kathrin (2016): BIG SEVEN Study, open source crypto-messengers to be compared - or: Comprehensive Confidentiality Review & Audit of GoldBug, Encrypting E-Mail-Client & Secure Instant Messenger, Descriptions, tests and analysis reviews of 20 functions of the application GoldBug based on the essential fields and methods of evaluation of the 8 major international audit manuals for IT security investigations including 38 figures and 87 tables., URL: https://sf.net/projects/goldbug/files/bigseven-crypto-audit.pdf - English / German Language, Version 1.1, 305 pages, June 2016

Einzelnachweise[Bearbeiten]

  1. Schneier, Bruce / Seidel, Kathleen / Vijayakumar, Saranya: GOLDBUG Multi-Encrypting Messenger – in: A Worldwide Survey of Encryption Products, URL: https://www.schneier.com/cryptography/paperfiles/worldwide-survey-of-encryption- products.pdf, February 11, 2016 Version 1.0.
  2. GoldBug uses crypto libraries (like libgcrypt (GnuPG) and OpenSSL.
  3. Banerjee, Sanchari: EFYTIMES News Network: 25 Best Open Source Projects Of 2014: EFYTIMES ranked GoldBug Messenger # 4 on the overall Top 25 Best Open Source Projects Of 2014, http://www.efytimes.com/e1/fullnews.asp?edid=148831.
  4. Harvey, Cynthia: Datamation: 50 Noteworthy Open Source Projects – Chapter Secure Communication: GoldBug Messenger ranked on first # 1 position, URL: http://www.datamation.com/open-source/50-noteworthy-new-open-source-projects- 3.html, posted September 19, 2014.
  5. Dragomir, Mircea: GoldBug Instant Messenger - Softpedia Review: This is a secure P2P Instant Messenger that ensures private communication based on a multi encryption technology constituted of several security layers, URL: http://www.softpedia.com/get/Internet/Chat/Instant-Messaging/GoldBug-Instant- Messenger.shtml, Softpedia Review, January 31st, 2016
  6. Edwards, Scott (Ed.) et al.: GoldBug – Deutsches Benutzer-Handbuch des sicheren E-Mail- Klienten und Sofort-Nachrichten-Programms GoldBug mit Multi-Verschlüsselung, URL: https://de.wikibooks.org/wiki/Goldbug, Wikibooks 2014.
  7. Adams, David / Maier, Ann-Kathrin (2016): BIG SEVEN Study, open source crypto-messengers to be compared - or: Comprehensive Confidentiality Review & Audit of GoldBug, Encrypting E-Mail-Client & Secure Instant Messenger, Descriptions, tests and analysis reviews of 20 functions of the application GoldBug based on the essential fields and methods of evaluation of the 8 major international audit manuals for IT security investigations including 38 figures and 87 tables., URL: https://sf.net/projects/goldbug/files/bigseven-crypto-audit.pdf - English / German Language, Version 1.1, 305 pages, June 2016
  8. Hartshorn, Sarah: GoldBug Messenger among - 3 New Open Source Secure Communication Projects, URL: http://blog.vuze.com/2015/05/28/3-new-open-source-secure- communication-projects/, May 28, 2015.
  9. The program GoldBug includes an encrypted mail component, as well as an IRC chat. softpedia.com
  10. Constantinos / OsArena: GOLDBUG: ΜΙΑ ΣΟΥΙΤΑ ΓΙΑ CHATING ΜΕ ΠΟΛΛΑΠΛΗ ΚΡΥΠΤΟΓΡΑΦΗΣΗ, Latest Articles, URL: http://osarena.net/logismiko/applications /goldbug-mia-souita-gia-chating-me-pollapli-kriptografisi.html, 25 March 2014.
  11. Cakra,Deden: Review of GoldBug Instant Messenger, Blogspot, http://bengkelcakra.blogspot.de/2014/12/free-download-goldbug-instant- messenger.html, 13 December 2014.
  12. Constantinos / OsArena: GOLDBUG: ΜΙΑ ΣΟΥΙΤΑ ΓΙΑ CHATING ΜΕ ΠΟΛΛΑΠΛΗ ΚΡΥΠΤΟΓΡΑΦΗΣΗ, Latest Articles, URL: http://osarena.net/logismiko/applications /goldbug-mia-souita-gia-chating-me-pollapli-kriptografisi.html, 25 March 2014.
  13. Lindner, Mirko: Poptastic: Verschlüsselter Chat über POP3 mit dem GoldBug Messenger, Pro- Linux, URL: http://www.pro-linux.de/news/1/21822/poptastic-verschluesselter-chat- ueber-pop3.html, 9. Dezember 2014.
  14. Demir, Yigit Ekim: Güvenli ve Hizli Anlik Mesajlasma Programi: GoldBug Instant Messenger programi, bu sorunun üstesinden gelmek isteyen kullanicilar için en iyi çözümlerden birisi haline geliyor ve en güvenli sekilde anlik mesajlar gönderebilmenize imkan taniyor (Translated: “Goldbug Instant Messenger Application is the best solution for users, who want to use one of the most secure ways to send instant messages”), News Portal Tamindir, URL: http://www.tamindir.com/goldbug-instant-messenger/, 2014.
  15. Weller, Jan: Testbericht zu GoldBug für Freeware, https://www.freeware.de/download/goldbug/, 2013.
  16. Security Blog: Secure chat communications suite GoldBug. Security Blog, URL: http://www.hacker10.com/other-computing/secure-chat-communications-suite- goldbug/, 25. März 2014.
  17. Joos, Thomas: Sicheres Messaging im Web, URL: http://www.pcwelt.de/ratgeber/ Tor__I2p__Gnunet__RetroShare__Freenet__GoldBug__Spurlos_im_Web- Anonymisierungsnetzwerke-8921663.html, PCWelt Magazin, 01. Oktober 2014.
  18. GoldBug kann Schlüssel selbst encodiert versenden. heise.de
  19. Adams, David / Maier, Ann-Kathrin (2016): BIG SEVEN Study, open source crypto-messengers to be compared - or: Comprehensive Confidentiality Review & Audit of GoldBug, Encrypting E-Mail-Client & Secure Instant Messenger, Descriptions, tests and analysis reviews of 20 functions of the application GoldBug based on the essential fields and methods of evaluation of the 8 major international audit manuals for IT security investigations including 38 figures and 87 tables., URL: https://sf.net/projects/goldbug/files/bigseven-crypto-audit.pdf - English / German Language, Version 1.1, 305 pages, June 2016
Info Sign.svg Dieser Wikipedia-Artikel wurde, gemäß GFDL, CC-by-sa mit der kompletten History importiert.