heim - Antivirenprogramme
PGP schützt die elektronische Korrespondenz. PGP-Verschlüsselung: Was ist das und wie wird es verwendet?

Durch den Schutz wird sichergestellt, dass nur der Empfänger der Informationen diese nutzen kann. Sobald es in die falschen Hände gerät, ist es völlig nutzlos, da es nicht entschlüsselt werden kann.

Durch die Authentifizierung wird sichergestellt, dass einige Informationen, die von Ihnen erstellt und öffentlich zugänglich gemacht wurden, tatsächlich von Ihnen stammen und nicht von irgendjemandem während der Übertragung verfälscht oder geändert wurden.

PGP basiert auf einem kryptografischen System namens Public Key, das auf nicht vertrauenswürdigen Kanälen verwendet werden kann. Dies macht es ideal zum Schutz von Informationen, die über Netzwerke wie das Internet übertragen werden.

In Public-Key-Systemen verfügt jeder Teilnehmer am Informationsaustausch über zwei Schlüssel, die sich gegenseitig ergänzen; Einer ist der öffentliche Schlüssel und der andere ist der private Schlüssel. Der öffentliche Schlüssel kann und sollte frei verfügbar sein, da es sich um den Schlüssel handelt, mit dem der Absender die an Sie übermittelten Informationen verschlüsselt. Der private Schlüssel darf unter keinen Umständen weitergegeben werden. Er ist derjenige, der die Sicherheit der übermittelten Daten gewährleistet.

Schlüsselzuordnung

Nachdem Sie die Schlüssel Ihrer Freunde in einer Datei gespeichert haben, müssen Sie ihnen Ihren öffentlichen Schlüssel senden. Zunächst muss er aus seiner eigenen öffentlichen Schlüsseldatei extrahiert werden:

pgp -kx-Identifikatordatei [Schlüsseldatei]

Beispiel: „pgp -kx alex mykey“ extrahiert den öffentlichen Schlüssel, der durch die Teilzeichenfolge „alex“ in der Datei mykey identifiziert wird.

Die generierte Datei mykey.pgp liegt nicht im ASCII-Format vor. Wenn Sie jedoch eine Schlüsseldatei im ASCII-Format erstellen müssen, um sie beispielsweise per E-Mail zu versenden oder einer Datenbank zusätzliche Informationen hinzuzufügen, müssen Sie den folgenden Befehl verwenden:

pgp -kxa-Identifikationsdatei [Schlüsseldatei]

Beispiel: „pgp -kxa alex mykey“ extrahiert den durch die Teilzeichenfolge „alex“ identifizierten öffentlichen Schlüssel in die Datei „mykey.asc“.

Neben dem Schlüssel werden auch alle Zertifikate hervorgehoben, die ihn bestätigen.

Geben Sie den folgenden Befehl ein, um die in der Datei enthaltenen Schlüssel anzuzeigen:

pgp -kv [Bezeichner] [Schlüsseldatei]

Beachten Sie noch einmal, dass die Standarddatei pubring.pgp ist. Wenn der Bezeichner nicht explizit angegeben wird, werden alle Schlüssel aus der Datei angezeigt. Um alle Zertifikate für jeden Schlüssel anzuzeigen, müssen Sie Folgendes eingeben:

pgp -kvv [Bezeichner] [Ring]

Nachrichtenverschlüsselung

Versuchen wir nun, die Datei zu verschlüsseln. Sie können dies mit dem Befehl tun:

pgp -e Datei-ID

Dieser Befehl erstellt eine Datei namens file.pgp, die die Originaldatei enthält und verschlüsselt ist, sodass nur der Empfänger sie mit seinem privaten Schlüssel entschlüsseln kann.

Denken Sie daran, dass es sich bei der generierten Datei nicht um eine ASCII-Datei handelt. Um sie per E-Mail zu versenden, müssen Sie daher möglicherweise eine weitere Option -a hinzufügen, um sicherzustellen, dass die codierte Ausgabedatei im ASCII-Format vorliegt, etwa so:

pgp -ea-Dateikennung

Verschlüsseln einer Nachricht für mehrere Empfänger

Nehmen wir an, Sie müssen einen Brief verschlüsseln und an mehrere Empfänger senden. In diesem Fall machen wir Folgendes:

pgp -ea Datei-ID1, ID2, ID3

Wie eine Nachricht signiert wird

Durch das Signieren eines Dokuments kann der Empfänger überprüfen, ob der Text tatsächlich vom Absender verfasst wurde und die Nachricht nicht verändert wurde. Um ein Dokument zu signieren, müssen Sie einen privaten Schlüssel verwenden:

pgp -s Datei-ID

Wenn wir in unserer secring.pgp mehrere private Schlüssel haben, können wir anhand der ID einen davon auswählen. Dieser Befehl erstellt eine Datei, die kein ASCII-Text ist, da PGP versucht, die Datei zu komprimieren. Wenn Sie die Datei hingegen signieren möchten, sodass der Text lesbar bleibt und am Ende eine Signatur vorhanden ist, sieht die Vorgehensweise folgendermaßen aus:

pgp -sta-Datei

Dieser letzte Befehl ist sehr nützlich, wenn Sie E-Mails signieren, die auch ohne PGP weiterhin gelesen werden können. Außerdem kann eine solche Nachricht von denjenigen gelesen werden, die die Signatur nicht überprüfen müssen.

Alternativ können Sie ein Dokument signieren und anschließend mit dem folgenden Befehl verschlüsseln:

pgp -es Datei Empfänger-ID meine_ID

Zum Verschlüsseln der Datei wird ein öffentlicher Schlüssel verwendet, der durch die Teilzeichenfolge „recipient_identifier“ identifiziert wird, sodass nur dieser Schlüssel die Datei entschlüsseln kann. Anschließend identifizieren wir den privaten Schlüssel mit der Zeichenfolge „my_id“, da sich in unserem Set mehrere Schlüssel befinden. Auch in diesem Fall ist es mit der Option -a möglich, die Datei im ASCII-Format zu erstellen.

Dekodierung

Um eine Datei zu entschlüsseln und/oder ihre Signatur zu überprüfen, verwenden Sie den folgenden Befehl:

pgp-Eingabedatei [-o Ausgabedatei]

Standardmäßig wird davon ausgegangen, dass die Eingabedatei die Erweiterung .pgp hat. Der Name der aus der Dekodierung resultierenden Datei ist ein optionaler Parameter. Wenn keine Ausgabedatei angegeben ist, wird die entschlüsselte Datei in der Datei input_file ohne die Erweiterung .pgp gespeichert.

Sie können die entschlüsselte Datei auch einfach ansehen, ohne sie zu speichern.

Julius Cäsar traute den Boten nicht. Deshalb ersetzte er beim Versenden von Briefen an seine Generäle jedes A in seiner Nachricht durch ein D, jedes B durch ein E usw. Nur derjenige, der die Regel kannte „um 3 verschieben“ konnte seine Botschaft entschlüsseln.

Also lasst uns anfangen.

Verschlüsselung und Entschlüsselung

Als Informationen werden Informationen bezeichnet, die ohne besondere Maßnahmen gelesen, verstanden und verstanden werden können im Klartext (Klartext, Klartext). Die Methode, Klartext so zu verzerren, dass sein Wesen verborgen bleibt, wird aufgerufen Verschlüsselung 1 (Verschlüsselung oder Verschlüsselung). Die Verschlüsselung von Klartext führt zu seiner Umwandlung in ein unverständliches Kauderwelsch Geheimtext (Geheimtext). Durch die Verschlüsselung können Informationen vor Personen verborgen bleiben, für die sie nicht bestimmt sind, obwohl diese den Chiffretext selbst sehen können. Der umgekehrte Vorgang, den Chiffretext in seine ursprüngliche Form zurückzubringen, wird als Entschlüsselung bezeichnet ( Entschlüsselung oder entschlüsseln) 2 .

Abbildung 1 verdeutlicht dies.

Was ist Kryptographie?

Kryptographie ist die Wissenschaft, wie man mithilfe der Mathematik Daten ver- und entschlüsselt. Kryptographie ermöglicht die Speicherung oder Übertragung sensibler Informationen über unzuverlässige Kommunikationskanäle (wie das Internet), sodass sie von niemand anderem als dem rechtmäßigen Empfänger gelesen werden können.

Während Kryptographie die Wissenschaft des Datenschutzes ist, Kryptoanalyse ist die Wissenschaft der Analyse und Unterbrechung kryptografischer Kommunikation. Die klassische Kryptoanalyse ist eine Mischung aus Analytik, mathematischen und statistischen Berechnungen sowie Ruhe, Entschlossenheit und Glück. Kryptoanalytiker werden auch Cracker genannt.

Kryptologie kombiniert Kryptographie und Kryptoanalyse.

Steganographie ist eine verwandte Disziplin. Anstatt Nachrichten unlesbar zu machen, nutzt sie Techniken, um die Nachrichten selbst zu verbergen. Steganographie ist keine Kryptographie, sie ist nur ein Sonderfall Codierung, deren Zuverlässigkeit auf der Geheimhaltung des Mechanismus zum Verstecken von Nachrichten beruht. Wenn Sie sich beispielsweise dafür entscheiden, Nachricht A zu verbergen, indem Sie die Anfangsbuchstaben der ersten Wörter in jedem Satz von Nachricht B verwenden, bleibt sie geheim, bis jemand herausfindet, wo nach A gesucht werden muss. Ab diesem Zeitpunkt bietet der Mechanismus keinen Schutz mehr .

Starke Kryptographie

„Es gibt zwei Arten von Kryptografie auf der Welt: Kryptografie, die Ihre kleine Schwester daran hindert, Ihre Dateien zu lesen, und Kryptografie, die große Regierungen daran hindert, Ihre Dateien zu lesen.“ In diesem Buch geht es um Kryptographie vom Typ II.

Bruce Schneier, „Angewandte Kryptographie: Protokolle, Algorithmen, Quellcode in C“

PGP basiert auf der gleichen Art von Kryptographie.

Kryptographie kann sein aufstehen, Vielleicht schwach, wie im Beispiel beschrieben. Die kryptografische Stärke wird daran gemessen, wie viel Zeit und Ressourcen erforderlich sind, um den ursprünglichen Klartext aus dem Chiffretext wiederherzustellen. Das Ergebnis einer starken Kryptografie ist ein Chiffretext, der ohne die Kenntnis bestimmter Entschlüsselungswerkzeuge äußerst schwer zu knacken ist. Aber wie schwierig? Mit der gesamten Rechenleistung der modernen Zivilisation – sogar einer Milliarde Computer, die eine Milliarde Operationen pro Sekunde ausführen – wird es bis zum Ende des Universums unmöglich sein, das Ergebnis starker Kryptographie zu entschlüsseln.

Manche denken vielleicht, dass eine starke Kryptografie selbst dem ernsthaftesten Kryptoanalytiker standhalten kann. Aber wer redet darüber? Es ist nicht erwiesen, dass die beste heute verfügbare Verschlüsselung der Rechenleistung der Computer von morgen standhalten kann. Allerdings ist die starke Kryptographie von PGP die beste, die heute verfügbar ist. Wachsamkeit und Konservatismus schützen Sie besser als der Anspruch auf perfekten Schutz.

Wie Kryptographie funktioniert

Kryptografischer Algorithmus oder Chiffre ist eine mathematische Formel, die die Prozesse der Verschlüsselung und Entschlüsselung beschreibt. Um Klartext zu verschlüsseln, arbeitet ein kryptografischer Algorithmus mit zusammen Schlüssel– ein Wort, eine Zahl oder eine Phrase. Dieselbe Nachricht wird mit demselben Algorithmus, jedoch mit unterschiedlichen Schlüsseln, in einen anderen Chiffretext umgewandelt. Die Sicherheit eines Chiffretextes hängt vollständig von zwei Dingen ab: der Stärke des kryptografischen Algorithmus und der Geheimhaltung des Schlüssels.

Der Kryptoalgorithmus sowie alle Arten von Schlüsseln und Protokollen, die ihn steuern, bilden ihn Kryptosystem. PGP ist ein Kryptosystem.

Konventionelle Kryptographie

In der traditionellen Kryptographie auch Verschlüsselung genannt Geheimnis oder symmetrisch Schlüssel wird derselbe Schlüssel sowohl zum Verschlüsseln als auch zum Entschlüsseln von Daten verwendet. Der Data Encryption Standard (DES) ist ein Beispiel für einen symmetrischen Algorithmus, der im Westen seit den 70er Jahren im Banken- und Handelssektor weit verbreitet ist. Es wird derzeit durch den Advanced Encryption Standard (AES) ersetzt. Abbildung 2 veranschaulicht den symmetrischen Verschlüsselungsprozess.

Caesar-Chiffre

Ein äußerst einfaches Beispiel für eine symmetrische Verschlüsselung ist eine Substitutionsverschlüsselung. Eine Substitutionsverschlüsselung ersetzt jede Information durch andere Information. Am häufigsten wird dies durch Verschieben der Buchstaben des Alphabets erreicht. Ein paar Beispiele sind Captain Midnights Secret Decoder Ring, den Sie vielleicht als Kind hatten, und Julius Caesars Chiffre. In beiden Fällen besteht der Algorithmus darin, das Alphabet zu verschieben, und der Schlüssel ist die Anzahl der Buchstaben, um die die Verschiebung erfolgt.

Nehmen wir an, wenn wir uns entscheiden, das Wort „SECRET“ mit dem Caesar-Schlüssel 3 zu verschlüsseln, verschieben wir das lateinische Alphabet so, dass es mit dem dritten Buchstaben (D) beginnt.

Nehmen wir also die Originalversion

ABCDEFGHIJKLMNOPQRSTUVWXYZ,

und wenn wir alles um 3 verschieben, erhalten wir

DEFGHIJKLMNOPQRSTUVWXYZABC,

wobei D=A, E=B, F=C usw.

Mit diesem Schema wird der Klartext „SECRET“ zu „VHFUHW“. Damit jemand den Originaltext rekonstruieren kann, sagen Sie ihm, dass der Schlüssel 3 ist.

Offensichtlich ist dies nach heutigen Maßstäben ein äußerst schwacher Algorithmus, aber selbst er hat Caesar geholfen! Und es zeigt perfekt, wie symmetrische Verschlüsselung funktioniert.

Symmetrische Verschlüsselung und Schlüsselverwaltung

Die symmetrische Verschlüsselung bietet eine Reihe von Vorteilen. Der erste ist die Geschwindigkeit kryptografischer Operationen. Dies ist besonders nützlich für die Verschlüsselung von Daten, die bei Ihnen verbleiben. Allerdings kann die alleinige Verwendung der symmetrischen Verschlüsselung zum Schutz wertvoller Daten während der Übertragung aufgrund der Komplexität der Übertragung des geheimen Schlüssels recht teuer sein.

Denken Sie an die Figur aus Ihrem Lieblingsspionagefilm: den Mann mit der versiegelten Aktentasche, die mit Handschellen an seinen Arm gefesselt ist. Was ist Ihrer Meinung nach in diesem Fall? Es enthält per se kaum Raketenabschusscodes/Chemiewaffenformeln/Invasionspläne. Höchstwahrscheinlich gibt es einen Schlüssel, der geheime Informationen entschlüsselt.

Um eine kryptografische Kommunikation mithilfe eines symmetrischen Algorithmus aufzubauen, müssen sich Sender und Empfänger zunächst auf einen Schlüssel einigen und diesen geheim halten. Wenn sie sich an geografisch abgelegenen Orten befinden, müssen sie einen vertrauenswürdigen Vermittler, beispielsweise einen zuverlässigen Kurier, beauftragen, um zu verhindern, dass der Schlüssel während des Transports gefährdet wird. Ein Angreifer, der einen Schlüssel während der Übertragung abfängt, kann später alle mit diesem Schlüssel verschlüsselten oder authentifizierten Informationen lesen, ändern und fälschen. Das große Problem bei symmetrischen Chiffren (von Captain Midnights Decoder Ring bis hin zu DES und AES) ist die Komplexität der Schlüsselverwaltung: Wie gelangt man an den Schlüssel zum Empfänger, ohne dass das Risiko besteht, dass er abgefangen wird?

Kryptographie mit öffentlichen Schlüsseln

Das Schlüsselverwaltungsproblem wurde behoben Open-Source-Kryptographie, oder asymmetrisch, Schlüssel, dessen Konzept 1975 von Whitfield Diffie und Martin Hellman vorgeschlagen wurde 3 .

Die Public-Key-Kryptographie ist ein asymmetrisches Schema, das Folgendes verwendet: Schlüsselpaare: offen (Öffentlicher Schlüssel), das die Daten verschlüsselt, und das entsprechende geschlossen (Privat Schlüssel), der sie entschlüsselt. Sie verteilen Ihren öffentlichen Schlüssel auf der ganzen Welt, während Sie Ihren privaten Schlüssel geheim halten. Jeder, der über eine Kopie Ihres öffentlichen Schlüssels verfügt, kann Informationen verschlüsseln, die nur Sie lesen können. Irgendjemand. Sogar Menschen, die Sie noch nie zuvor getroffen haben.

Obwohl das Schlüsselpaar mathematisch verwandt ist, ist die Berechnung des privaten Schlüssels aus dem öffentlichen Schlüssel nicht praktikabel. Jeder, der über Ihren öffentlichen Schlüssel verfügt, kann die Daten verschlüsseln, aber nicht entschlüsseln. Nur eine Person mit dem entsprechenden privaten Schlüssel kann die Informationen entschlüsseln.

Die wichtigste Errungenschaft der asymmetrischen Verschlüsselung besteht darin, dass sie es Personen ohne bestehende Sicherheitsvereinbarung ermöglicht, geheime Nachrichten auszutauschen. Die Notwendigkeit, dass sich Sender und Empfänger über einen speziellen sicheren Kanal auf einen geheimen Schlüssel einigen, entfällt vollständig. Bei der gesamten Kommunikation handelt es sich ausschließlich um öffentliche Schlüssel, während private Schlüssel sicher aufbewahrt werden. Beispiele für Kryptosysteme mit öffentlichem Schlüssel sind Elgamal(benannt nach dem Autor Tahir Elgamal), RSA(benannt nach den Erfindern: Ron Rivest, Adi Shamir und Leonard Adleman) Diffie-Hellman(richtigerweise zu Ehren seiner Schöpfer benannt) und DSA, Algorithmus für digitale Signaturen(erfunden von David Kravitz).

Da die symmetrische Kryptographie einst die einzige Möglichkeit zum Versenden geheimer Informationen war, beschränkten die Kosten sicherer Schlüsselaustauschkanäle deren Nutzung nur auf einen kleinen Kreis von Organisationen, die sie sich leisten konnten, insbesondere Regierungen und große Bankinstitute (oder kleine Kinder mit Secret Decoder Rings). . Das Aufkommen der Public-Key-Verschlüsselung war eine technologische Revolution, die der breiten Masse starke Kryptographie zugänglich machte. Erinnern Sie sich an den Kurier mit einer Aktentasche am Arm? Die Verschlüsselung mit öffentlichen Schlüsseln beruhigte ihn (wahrscheinlich zu seinem eigenen Wohl).

So funktioniert PGP

PGP vereint die besten Aspekte der symmetrischen Kryptografie und der Public-Key-Kryptografie. PGP ist Hybrides Kryptosystem.

Wenn ein Benutzer Daten mit PGP verschlüsselt, komprimiert das Programm sie zunächst. Durch die Komprimierung wird die Modemübertragungszeit verkürzt, Speicherplatz gespart und, was noch wichtiger ist, die kryptografische Stärke verbessert. Die meisten kryptoanalytischen Techniken basieren auf einer statistischen Analyse des Chiffretexts, um nach Merkmalen des Klartexts zu suchen. Durch die Komprimierung wird die Anzahl solcher Merkmale verringert (die Datenredundanz verringert), was die Widerstandsfähigkeit gegenüber der Kryptoanalyse erheblich erhöht. (Zu kurze Dateien und Dateien, die nicht gut genug komprimiert werden, werden überhaupt nicht komprimiert.)

Dann erstellt PGP Sitzungsschlüssel, d.h. ein einmaliger symmetrischer Schlüssel, der nur für eine Operation verwendet wird. Dieser Sitzungsschlüssel ist eine Pseudozufallszahl, die aus zufälligen Mausbewegungen und Tastenanschlägen generiert wird. Der Sitzungsschlüssel basiert auf einem sehr zuverlässigen, schnellen symmetrischen Algorithmus, den PGP zum Verschlüsseln einer komprimierten Nachricht verwendet. Das Ergebnis ist ein Chiffretext. Sobald die Daten verschlüsselt sind, wird auch der Sitzungsschlüssel verschlüsselt, jedoch mit dem öffentlichen Schlüssel des Empfängers. Dieser mit einem öffentlichen Schlüssel verschlüsselte Sitzungsschlüssel wird an den Chiffretext angehängt und zusammen mit diesem an den Empfänger gesendet.

Die Entschlüsselung erfolgt in umgekehrter Reihenfolge. Der PGP des Empfängers verwendet seinen privaten Schlüssel, um den Sitzungsschlüssel aus der Nachricht zu extrahieren, der den Chiffretext der ursprünglichen Nachricht in Klartext rekonstruiert.

Somit vereint die Kombination dieser beiden kryptografischen Methoden den Komfort der Public-Key-Verschlüsselung mit der Geschwindigkeit eines symmetrischen Algorithmus. Die symmetrische Verschlüsselung ist tausende Male schneller als die asymmetrische Verschlüsselung. Die Verschlüsselung mit öffentlichen Schlüsseln wiederum bietet eine einfache Lösung für das Problem der Schlüsselverwaltung und Datenübertragung. Zusammengenommen ergänzen und verbessern sich Ausführungsgeschwindigkeit und Schlüsselverwaltung gegenseitig, ohne die Sicherheit zu beeinträchtigen.

Schlüssel

Schlüssel– Hierbei handelt es sich um einen bestimmten Wert, der in Kombination mit einem kryptografischen Algorithmus einen bestimmten Chiffretext erzeugt. Die Schlüssel sind normalerweise sehr, sehr, sehr große Zahlen. Die Schlüsselgröße wird in Bits gemessen; Die Zahl, die einen 2048-Bit-Schlüssel darstellt, ist verdammt groß. Bei der asymmetrischen Kryptografie gilt: Je größer der Schlüssel, desto sicherer ist der resultierende Chiffretext.

Allerdings sind die Größe eines asymmetrischen Schlüssels und die Größe eines symmetrischen geheimen Schlüssels völlig unvergleichlich. Die Stärke eines symmetrischen 80-Bit-Schlüssels entspricht einem öffentlichen 1024-Bit-Schlüssel. Ein symmetrischer 128-Bit-Schlüssel entspricht ungefähr einem 3000-Bit-öffentlichen Schlüssel. Auch hier bedeutet ein größerer Schlüssel eine höhere Zuverlässigkeit, aber die Mechanismen, die jeder Art von Kryptografie zugrunde liegen, sind völlig unterschiedlich und es ist nicht akzeptabel, ihre Schlüssel in absoluten Zahlen zu vergleichen.

Trotz der Tatsache, dass das Schlüsselpaar mathematisch verwandt ist, ist es fast unmöglich, das private aus dem offenen zu berechnen; Gleichzeitig bleibt die Berechnung des privaten Schlüssels immer möglich, wenn Sie über genügend Zeit und Rechenleistung verfügen. Aus diesem Grund ist es wichtig, einen Schlüssel mit der richtigen Länge zu erstellen: groß genug, um zuverlässig zu sein, aber klein genug, um schnell im Betrieb zu bleiben. Überlegen und bewerten Sie dazu, wer versuchen könnte, „Ihre Dateien zu lesen“, wie hartnäckig er sein könnte, wie viel Zeit er hat und welche Ressourcen er hat.

Größere Schlüssel werden für einen längeren Zeitraum kryptografisch geschützt. Wenn das, was Sie verschlüsseln möchten, viele, viele Jahre lang geheim gehalten werden muss, müssen Sie möglicherweise einen sehr großen Schlüssel verwenden. Wer weiß, wie lange es dauern wird, Ihren Schlüssel mit den schnelleren und effizienteren Computern von morgen zu knacken? Es gab eine Zeit, in der der symmetrische 56-Bit-DES-Schlüssel als äußerst sicher galt.

Nach modernen Maßstäben sind symmetrische 128-Bit-Schlüssel absolut sicher und können nicht gehackt werden, zumindest bis jemand einen funktionierenden Quanten-Supercomputer baut. Laut Kryptologen können 256-Bit-Schlüssel nicht einmal theoretisch und nicht einmal auf einem hypothetischen Quantencomputer geknackt werden. Aus diesem Grund unterstützt der AES-Algorithmus Schlüssel mit 128 und 256 Bit. Die Geschichte lehrt uns jedoch, dass sich all diese Beteuerungen nach ein paar Jahrzehnten als leeres Gerede herausstellen können.

PGP speichert Schlüssel in verschlüsselter Form. Sie sind in zwei Dateien auf Ihrer Festplatte enthalten; eine Datei für öffentliche Schlüssel, die andere für private Schlüssel. Diese Dateien werden aufgerufen Bänder (Schlüsselringe). Mithilfe von PGP fügen Sie von Zeit zu Zeit die öffentlichen Schlüssel Ihrer Korrespondenten zum öffentlichen Schlüsselbund hinzu. Ihre privaten Schlüssel befinden sich in einem Ring privater Schlüssel. Wenn Sie einen privaten Schlüsselbund verlieren (löschen), können Sie die für die Schlüssel dieses Schlüsselbunds verschlüsselten Informationen in keiner Weise entschlüsseln. Daher empfiehlt es sich, einige Sicherungskopien dieser Datei aufzubewahren.

Digitale Signaturen

Ein zusätzlicher Vorteil der Verwendung von Kryptosystemen mit öffentlichem Schlüssel besteht darin, dass sie die Möglichkeit zum Erstellen bieten elektronische digitale Signaturen (EDS). Eine digitale Signatur ermöglicht es dem Empfänger einer Nachricht, die Authentizität der Informationsquelle zu überprüfen (mit anderen Worten, wer der Autor der Informationen ist) und auch zu überprüfen, ob die Informationen während der Übertragung geändert (verfälscht) wurden. Daher ist eine digitale Signatur ein Mittel Genehmigung Und Kontrolle der Datenintegrität. Darüber hinaus trägt die digitale Signatur Grundsatz des Nichtverzichts, was bedeutet, dass der Absender nicht auf die Urheberschaft der von ihm unterzeichneten Informationen verzichten kann. Diese Merkmale sind für die Kryptographie ebenso wichtig wie die Geheimhaltung.

Eine elektronische Signatur erfüllt denselben Zweck wie ein Siegel oder ein handschriftliches Autogramm auf einem Blatt Papier. Aufgrund ihres digitalen Charakters ist die digitale Signatur der manuellen Signatur und dem Siegel jedoch in einer Reihe sehr wichtiger Aspekte überlegen. Eine digitale Signatur bestätigt nicht nur die Identität des Unterzeichners, sondern hilft auch festzustellen, ob der Inhalt der signierten Informationen geändert wurde. Eine handschriftliche Unterschrift und ein Siegel haben diese Qualität nicht und sind zudem viel leichter zu fälschen. Gleichzeitig ähnelt eine elektronische Signatur einem physischen Siegel in dem Sinne, dass ein Siegel von jeder Person angebracht werden kann, die das Signet erhalten hat, und eine digitale Signatur von jeder Person erstellt werden kann, die über eine Kopie des erforderlichen Privatdokuments verfügt Schlüssel 4 .

Manche Menschen verwenden digitale Signaturen viel häufiger als Verschlüsselung. Sie müssen sich beispielsweise keine Sorgen machen, wenn jemand herausfindet, dass Sie gerade 1.000 US-Dollar auf Ihr Bankkonto eingezahlt haben, aber Sie sollten absolut sicher sein, dass Sie die Transaktion über einen Bankangestellten durchgeführt haben.

Eine einfache Möglichkeit zur Generierung digitaler Signaturen ist in Abbildung 6 dargestellt. Anstatt Informationen mit dem öffentlichen Schlüssel einer anderen Person zu verschlüsseln, verschlüsseln Sie sie mit Ihrem eigenen privaten Schlüssel. Wenn die Informationen mit Ihrem öffentlichen Schlüssel entschlüsselt werden können, sind Sie die Quelle.

Hash-Funktion

Das oben beschriebene Schema weist jedoch eine Reihe erheblicher Nachteile auf. Es ist extrem langsam und produziert zu viele Daten – mindestens das Doppelte der ursprünglichen Informationen. Eine Verbesserung dieses Schemas ist die Einführung einer neuen Komponente in den Konvertierungsprozess – Einweg-Hash-Funktion. Eine Einweg-Hash-Funktion nimmt eine Eingabe beliebiger Länge, ein sogenanntes Vorbild – in diesem Fall eine Nachricht beliebiger Größe, sogar Tausende oder Millionen Bits – und erzeugt eine streng vom Vorbild abhängige Ausgabe einer festen Länge, beispielsweise 160 Bits . Eine Hash-Funktion stellt sicher, dass bei jeder Änderung der Informationen – auch nur um ein Bit – ein völlig anderer Hash-Wert entsteht.

Während des digitalen Signaturvorgangs verarbeitet PGP die Nachricht mithilfe eines kryptografisch starken Einweg-Hash-Algorithmus. Diese Operation führt zur Generierung einer Zeichenfolge begrenzter Länge, genannt Nachrichtenauszug (Nachrichtenauszug) 5 . (Auch hier führt jede Änderung am Vorbild zu einem völlig anderen Digest.)

PGP verschlüsselt dann den empfangenen Digest mit dem privaten Schlüssel des Absenders, erstellt eine „elektronische Signatur“ und hängt sie an den Prototyp an. PGP überträgt die digitale Signatur zusammen mit der Originalnachricht. Beim Empfang der Nachricht berechnet der Empfänger mithilfe von PGP den Auszug der signierten Daten neu, entschlüsselt die digitale Signatur mit dem öffentlichen Schlüssel des Absenders und überprüft so die Integrität der Daten und ihrer Quelle. Wenn die vom Adressaten berechneten Digests und die mit der Nachricht erhaltenen Digests übereinstimmen, wurden die Informationen nach der Signatur nicht geändert. PGP kann die zu signierende Nachricht verschlüsseln oder auch nicht; Das Signieren von Klartext ohne Verschlüsselung ist nützlich, wenn einer der Empfänger kein Interesse daran hat oder nicht in der Lage ist, die Signatur zu überprüfen (z. B. wenn er nicht über PGP verfügt).

Wenn der Mechanismus zur Generierung digitaler Signaturen eine starke Einweg-Hash-Funktion verwendet, gibt es keine Möglichkeit, die Signatur einer Person aus einem Dokument zu übernehmen und sie an ein anderes anzuhängen oder die signierte Nachricht in irgendeiner Weise zu ändern. Die kleinste Änderung im signierten Dokument wird während des Überprüfungsprozesses der digitalen Signatur erkannt.

Digitale Signaturen spielen eine entscheidende Rolle bei der Authentifizierung und Validierung der Schlüssel anderer PGP-Benutzer.

Digitale Zertifikate

Eines der Hauptprobleme bei asymmetrischen Kryptosystemen besteht darin, dass Benutzer ständig überwachen müssen, ob sie Nachrichten mit den wahren Schlüsseln ihrer Korrespondenten verschlüsseln. In einer Umgebung des freien Austauschs öffentlicher Schlüssel über öffentliche Depotserver sind Angriffe möglich, die auf diesem Prinzip basieren "der Mann in der Mitte" eine ernsthafte potenzielle Bedrohung darstellen. Bei dieser Art von Angriff steckt der Angreifer dem Benutzer einen gefälschten Schlüssel mit dem Namen des beabsichtigten Empfängers zu; Die Daten werden mit einem gefälschten Schlüssel verschlüsselt, von ihrem böswilligen Besitzer abgefangen und geraten schließlich in die falschen Hände.

In einer Umgebung mit einem Kryptosystem mit öffentlichem Schlüssel ist es von entscheidender Bedeutung, dass Sie absolut sicher sind, dass der öffentliche Schlüssel, mit dem Sie etwas verschlüsseln möchten, keine geschickte Nachahmung, sondern das wahre Eigentum Ihres Korrespondenten ist. Sie können einfach nur mit den Schlüsseln verschlüsseln, die Ihnen von ihren Besitzern von Hand zu Hand auf Disketten übergeben wurden. Angenommen, Sie müssen eine Person kontaktieren, die auf der anderen Seite der Welt lebt und mit der Sie nicht einmal vertraut sind. Wie können Sie sicher sein, dass Sie seinen echten Schlüssel erhalten haben?

Digitale Schlüsselzertifikate Vereinfachen Sie die Aufgabe, den Besitz öffentlicher Schlüssel durch die beabsichtigten Eigentümer zu bestimmen.

Ein Zertifikat ist eine Form der Identifizierung. Weitere Arten der Identifizierung sind Ihr Führerschein, Ihr Staatspass, Ihre Geburtsurkunde usw. Jeder von ihnen enthält einige Informationen, die Sie identifizieren, und einen bestimmten fälschungssicheren Nachweis, dass jemand anderes (eine Regierungsbehörde, eine Privatperson) Ihre Identität festgestellt hat. Einige Zertifikate, wie zum Beispiel ein Reisepass, sind ein eigenständiger Nachweis Ihrer Identität; Es wäre ziemlich schlimm, wenn jemand es entführen würde, um sich als Sie auszugeben.

Ein digitales Zertifikat hat einen ähnlichen Zweck wie ein physisches. Bei einem digitalen Schlüsselzertifikat handelt es sich um Informationen, die dem öffentlichen Schlüssel eines Benutzers beigefügt sind und anderen dabei helfen, festzustellen, ob der Schlüssel echt und korrekt ist. Um es unmöglich zu machen, den Schlüssel einer Person als Schlüssel einer anderen Person auszugeben, sind digitale Zertifikate erforderlich.

Ein digitales Zertifikat besteht aus drei Komponenten:

    der öffentliche Schlüssel, dem er zugeordnet ist;

    Daten bzw. Aufzeichnungen des Zertifikats (Angaben zur Identität des Nutzers, wie Name, E-Mail etc., sowie ggf. weitere einschränkende Informationen: Zugriffsrechte, Arbeitsbeschränkungen etc.);

    eine oder mehrere digitale Signaturen, die den Schlüssel mit dem Zertifikat „verknüpfen“.

Der Zweck der digitalen Signatur eines Zertifikats besteht darin, anzuzeigen, dass die Zertifikatsinformationen von einer vertrauenswürdigen dritten Partei oder Organisation zertifiziert wurden. Gleichzeitig bestätigt eine digitale Signatur nicht die Echtheit des Zertifikats als Ganzes; Es garantiert lediglich, dass der signierte Zertifikatsdatensatz (identifizierende Informationen) einem bestimmten öffentlichen Schlüssel zugeordnet ist.

Daher ist ein Zertifikat in der Regel ein öffentlicher Schlüssel, an den eine oder mehrere Arten von IDs angehängt sind, sowie ein Bestätigungsstempel einer vertrauenswürdigen Stelle, der die ID und den öffentlichen Schlüssel „verknüpft“.

Zertifikatsverteilung

Zertifikate werden verwendet, wenn Sie Schlüssel mit jemandem austauschen müssen. Kleine Gruppen von Personen, die eine sichere Kommunikation benötigen, können sich problemlos gegenseitig Disketten reichen oder E-Mails mit Kopien ihrer Schlüssel senden.

Hierbei handelt es sich um eine manuelle Verteilung öffentlicher Schlüssel, die nur bis zu einem bestimmten Punkt wirksam ist. Alles darüber hinaus geht über die Möglichkeiten dieser Methode hinaus, und dann muss ein System bereitgestellt werden, das ausreichend Zuverlässigkeit und Sicherheit bietet und die Möglichkeit bietet, Schlüssel zu speichern und auszutauschen, sodass Kollegen, Geschäftspartner oder Fremde jedem verschlüsselte Nachrichten senden können andere, wenn das der Fall sein wird.

Ein solches System kann in Form eines einfachen Repository namens implementiert werden Zertifikatsserver, oder Server zur Aufbewahrung öffentlicher Schlüssel oder über eine komplexere und umfassendere Struktur verfügen, die zusätzliche wichtige Verwaltungsfunktionen bietet und aufgerufen wird Public-Key-Infrastruktur (Public-Key-Infrastruktur, PKI).

Depotserver

Ein Treuhandserver, auch Zertifikatsserver oder Schlüsselserver genannt, ist eine Netzwerkdatenbank, die es Benutzern ermöglicht, digitale Zertifikate zu hinterlassen und abzurufen. Ein Schlüsselserver verfügt möglicherweise auch über einige Verwaltungsfunktionen, die einer Organisation bei der Aufrechterhaltung ihrer Sicherheitsrichtlinien helfen. Beispielsweise können nur Schlüssel gespeichert werden, die bestimmte Kriterien erfüllen.

Public-Key-Infrastrukturen (PKI)

PKI verfügt wie ein einfacher Repository-Server über eine Datenbank zum Speichern von Zertifikaten, stellt aber gleichzeitig Dienste und Protokolle zur Verwaltung öffentlicher Schlüssel bereit. Dazu gehören die Möglichkeiten der Ausstellung (Veröffentlichung), des Widerrufs (Revoking) und der Zertifikatsvertrauenssysteme. Das Hauptmerkmal von PKI ist das Vorhandensein von Komponenten, die als bekannt sind Zertifizierungsstelle (Zertifizierungsstelle, CA) Und Registrierungszentrum (Registrierungsbehörde, RA).

Eine Zertifizierungsstelle (CA) stellt digitale Zertifikate aus und signiert sie mit ihrem privaten Schlüssel. Aufgrund der Bedeutung ihrer Rolle ist die Zertifizierungsstelle ein wichtiger Bestandteil der PKI-Infrastruktur. Mithilfe des öffentlichen Schlüssels der Zertifizierungsstelle überprüft jeder Benutzer, der die Authentizität eines bestimmten Zertifikats überprüfen möchte, die Signatur der Zertifizierungsstelle und überprüft somit die Integrität der im Zertifikat enthaltenen Informationen und, was noch wichtiger ist, die Beziehung zwischen den Informationen im Zertifikat und der Öffentlichkeit Schlüssel.

Ein Registration Center (RA) ist in der Regel ein System von Personen, Mechanismen und Prozessen, das der Registrierung neuer Benutzer in der PKI-Struktur und der weiteren Verwaltung regulärer Benutzer des Systems dient. Der CR kann auch ein „Vating“ durchführen – ein Verfahren zur Überprüfung, ob ein bestimmter öffentlicher Schlüssel dem vorgesehenen Eigentümer gehört.

CR ist eine menschliche Gemeinschaft: eine Person, eine Gruppe, eine Abteilung, ein Unternehmen oder eine andere Vereinigung. Andererseits ist eine CA in der Regel ein Programm, das seinen registrierten Benutzern Zertifikate ausstellt. Es gibt auch hackersichere Hardware-Implementierungen der CA, die aus kugelsicheren Materialien gefertigt und mit einem „roten Knopf“ ausgestattet sind, der in einer kritischen Situation alle ausgegebenen Schlüssel widerruft.

Die Rolle des CR-CS ähnelt der der staatlichen Passabteilung: Einige seiner Mitarbeiter prüfen, ob ein Reisepass erforderlich ist (die Arbeit des CR), während andere das Dokument selbst erstellen und es dem Eigentümer übergeben (die Arbeit des CR). Arbeit der CA). Eine CR ist für eine Zertifizierungsstelle nicht zwingend erforderlich, sie sorgt jedoch für eine manchmal notwendige Funktionstrennung.

Zertifikatsformat

Ein digitales Zertifikat ist ein Satz identifizierender Informationen, die mit einem öffentlichen Schlüssel verknüpft und von einem vertrauenswürdigen Dritten signiert sind, um seine Authentizität und Verbindung zu beweisen. Das Zertifikat kann in vielen verschiedenen Formaten vorliegen.

PGP unterstützt zwei Zertifikatformate:

    OpenPGP-Zertifikate (häufiger einfach als PGP-Schlüssel bezeichnet)

    X.509-Zertifikate

PGP-Zertifikatformat

Das PGP-Zertifikat enthält insbesondere folgende Informationen:

    Der öffentliche Schlüssel des Zertifikatsinhabers ist der öffentliche Teil des Schlüsselpaars und seines Algorithmus: RSA v4, RSA Legacy v3, DH oder DSA.

    Informationen über den Zertifikatsinhaber – Informationen, die den Benutzer identifizieren: sein Name, E-Mail-Adresse, ICQ-Nummer, Foto usw.

    Die digitale Signatur des Zertifikatsinhabers ist die Signatur des zum Zertifikat gehörenden Schlüsselpaares (sog Autosignatur).

    Gültigkeitsdauer des Zertifikats – das Startdatum des Zertifikats und das Ablaufdatum seiner Gültigkeit; gibt an, wann das Zertifikat ungültig wird (ähnlich dem Ablaufdatum eines Führerscheins). Wenn das Schlüsselpaar zusätzliche Verschlüsselungsunterschlüssel enthält, wird hier die Gültigkeitsdauer jedes einzelnen Schlüssels angegeben.

    Bevorzugter Verschlüsselungsalgorithmus – gibt die verschlüsselten Informationen an, mit welchem ​​Algorithmus der Zertifikatsinhaber den Empfang bevorzugt. Unterstützt werden: CAST, AES, IDEA, Triple-DES und Twofish.

Sie können sich ein PGP-Zertifikat als einen öffentlichen Schlüssel vorstellen, an den ein oder mehrere Tags angehängt sind (Abbildung 9). Diese „Tags“ enthalten Informationen zur Identifizierung des Besitzers des Schlüssels sowie eine Signatur auf diesem Schlüssel, die bestätigt, dass der Schlüssel und die Identifikationsinformationen zusammenhängen. (Diese Art von Signatur heißt Autosignatur (Selbstsignatur); Jedes PGP-Zertifikat enthält es.)

Ein einzigartiger Aspekt des PGP-Zertifikatformats besteht darin, dass jedes Zertifikat mehrere Signaturen enthalten kann. Jeder kann ein ID-Schlüsselpaar signieren, um aufgrund seiner persönlichen Überzeugung zu bestätigen, dass der öffentliche Schlüssel dem in der ID angegebenen Benutzer gehört. Wenn Sie auf öffentlichen Repository-Servern suchen, finden Sie möglicherweise einige Schlüssel, beispielsweise den des PGP-Autors Phil Zimmerman, der eine große Anzahl von Signaturen enthält.

Einige PGP-Zertifikate bestehen aus einem öffentlichen Schlüssel mit mehreren „Tags“, von denen jedes seine eigenen Informationen zur Identifizierung des Besitzers des Schlüssels enthält (z. B. den Namen des Besitzers und seine geschäftliche E-Mail-Adresse, den Spitznamen des Besitzers und seine private E-Mail-Adresse, ein Foto von des Eigentümers - alles auf einem Zertifikat). Die Liste der Signaturen auf jedem der „Tags“ kann unterschiedlich sein; Signaturen zeigen die Zuverlässigkeit eines bestimmten „Tags“ und seine Zugehörigkeit zu einem öffentlichen Schlüssel an und nicht, dass alle „Tags“ zuverlässig sind. (Beachten Sie, dass „Authentizität“ von der Person abhängt, die sie erstellt: Signaturen sind Meinungen, und verschiedene Personen legen unterschiedlich viel Wert auf die Überprüfung der Authentizität, bevor sie einen Schlüssel signieren.)

X.509-Zertifikatformat

X.509 ist ein weiteres sehr verbreitetes Format. Alle X.509-Zertifikate entsprechen dem internationalen Standard ITU-T X.509; Daher kann (theoretisch) ein für eine Anwendung erstelltes X.509-Zertifikat in jeder anderen Anwendung verwendet werden, die diesen Standard unterstützt. In der Praxis kommt es jedoch vor, dass verschiedene Unternehmen eigene Erweiterungen für X.509 erstellen, die nicht alle untereinander kompatibel sind.

Bei jedem Zertifikat muss jemand die Beziehung zwischen dem öffentlichen Schlüssel und den Informationen zur Identifizierung des Schlüsseleigentümers überprüfen. Beim Umgang mit einem PGP-Zertifikat kann jeder als Zeuge der darin enthaltenen Informationen fungieren (außer in Fällen, in denen diese Möglichkeit durch Sicherheitsrichtlinien bewusst eingeschränkt wird). Bei X.509-Zertifikaten kann der Zeuge jedoch nur eine Zertifizierungsstelle oder eine von ihr speziell für diese Rolle autorisierte Person sein. (Beachten Sie, dass PGP-Zertifikate auch hierarchische Vertrauensstrukturen vollständig unterstützen, die eine Zertifizierungsstelle zur Authentifizierung von Zertifikaten verwenden.)

Ein X.509-Zertifikat besteht aus einer Reihe von Standardfeldern, die Informationen über einen Benutzer oder ein Gerät und den entsprechenden öffentlichen Schlüssel enthalten. Der X.509-Standard definiert, welche Informationen im Zertifikat enthalten sind und wie diese kodiert sind (Datenformat).

Das X.509-Zertifikat enthält die folgenden Informationen:

    X.509-Version – gibt an, auf welcher Version des X.509-Standards dieses Zertifikat basiert, wodurch bestimmt wird, welche Informationen es enthalten kann.

    Der öffentliche Schlüssel des Zertifikatsinhabers ist der öffentliche Schlüssel zusammen mit der Kennung des verwendeten Algorithmus (die das Kryptosystem angibt, zu dem der Schlüssel gehört) und anderen Informationen zu den Schlüsselparametern.

    Seriennummer des Zertifikats – die Organisation, die das Zertifikat ausstellt, ist verpflichtet, ihm eine eindeutige Seriennummer zuzuweisen, um es unter anderen von dieser Organisation ausgestellten Zertifikaten zu identifizieren. Diese Informationen gelten in einer Reihe von Fällen; Wenn beispielsweise ein Zertifikat widerrufen wird, wird dessen Seriennummer eingefügt Verzeichnis der widerrufenen Zertifikate (Zertifikatssperrliste, CRL).

    Eindeutige Kennung des Schlüsselbesitzers (bzw DN, Distinguished Name– eindeutiger Name) – dieser Name muss im gesamten Internet eindeutig und eindeutig sein. DN besteht aus mehreren Unterabschnitten und könnte etwa so aussehen:

CN=Bob Davis [email protected], OU=PGP Engineering, O=PGP Corporation, C=US (was für „Entity Friendly Name“, „E-Mail“, „Organisationseinheit“, „Organisation“ und „Land“ steht.)

    Gültigkeitsdauer des Zertifikats – das Startdatum des Zertifikats und das Ablaufdatum seiner Gültigkeit; gibt an, wann das Zertifikat ungültig wird.

    Eindeutiger Name des Ausstellers – Der eindeutige Name der Organisation, die das Zertifikat signiert hat. Normalerweise ist dies der Name der Zertifizierungsstelle. Die Verwendung eines Zertifikats setzt Vertrauen in die Organisation voraus, die es signiert hat. (In Fällen mit Stammzertifikaten signiert die ausstellende Organisation – dieselbe Zertifizierungsstelle – es selbst.)

    Die digitale Signatur des Ausstellers ist eine elektronische Signatur, die mit dem privaten Schlüssel der Organisation erstellt wird, die das Zertifikat ausgestellt hat.

    Signaturalgorithmus-Identifikator: Gibt den Algorithmus an, den die Zertifizierungsstelle zum Signieren des Zertifikats verwendet.

Es gibt eine Reihe grundlegender Unterschiede zwischen den Zertifikatsformaten X.509 und PGP:

    Sie können Ihr eigenes PGP-Zertifikat persönlich erstellen; Sie müssen ein X.509-Zertifikat von einer Zertifizierungsstelle anfordern und erhalten;

    X.509-Zertifikate enthalten nur einen Namen des Zertifikatsinhabers;

    X.509-Zertifikate enthalten nur eine digitale Signatur, die die Echtheit des Zertifikats bestätigt.

Um ein X.509-Zertifikat zu erhalten, müssen Sie eine Zertifizierungsstelle bitten, es Ihnen auszustellen. Sie stellen dem System Ihren öffentlichen Schlüssel zur Verfügung und beweisen damit, dass Sie über den entsprechenden privaten Schlüssel sowie einige Informationen verfügen, die Sie identifizieren. Anschließend signieren Sie diese Informationen elektronisch und übermitteln das gesamte Paket – die Zertifikatsanforderung – an die Zertifizierungsstelle. Die Zertifizierungsstelle durchläuft einen Prozess, um die Authentizität der bereitgestellten Informationen zu überprüfen. Wenn alles übereinstimmt, erstellt sie ein Zertifikat, signiert es und sendet es an Sie zurück.

Sie können sich ein X.509-Zertifikat als ein normales Papierzertifikat oder ein Zertifikat vorstellen, auf dem ein öffentlicher Schlüssel aufgeklebt ist. Darin sind Ihr Name, einige Angaben zu Ihrer Person und die Unterschrift des Zertifikatsausstellers aufgeführt.

Der vielleicht größte Vorteil von X.509-Zertifikaten ist ihre Verwendung in Webbrowsern.

Authentizität und Vertrauen

Jeder Benutzer im Umfeld von Public-Key-Kryptosystemen läuft Gefahr, früher oder später versehentlich einen gefälschten Schlüssel (Zertifikat) mit einem echten zu verwechseln. Glaubwürdigkeit (Authentizität) besteht die Annahme, dass ein bestimmter öffentlicher Schlüssel dem beabsichtigten Eigentümer gehört, dessen Identifikationsinformationen im Schlüsselzertifikat angegeben sind. Authentizität ist eines der wichtigsten Kriterien in einer Public-Key-Systemumgebung, in der Sie die Authentizität eines bestimmten Zertifikats bestimmen müssen.

Sobald Sie davon überzeugt sind, dass der öffentliche Schlüssel einer anderen Person zuverlässig ist (d. h., dass er wirklich dem vorgesehenen Besitzer gehört), können Sie eine Kopie dieses Schlüssels an Ihrem Schlüsselbund signieren, was bescheinigt, dass Sie ihn überprüft und für zuverlässig befunden haben . Wenn Sie möchten, dass andere wissen, wie sehr Sie diesem Zertifikat vertrauen, können Sie Ihre Bestätigungssignatur auf den Treuhandserver exportieren, damit andere sie sehen und sich darauf verlassen können, um die Authentizität dieses Schlüssels zu bestimmen.

Wie im Abschnitt „Public-Key-Infrastrukturen“ (PKIs) erläutert, autorisieren einige Unternehmen eine oder mehrere Zertifizierungsstellen (CAs), die Authentizität von Zertifikaten zu überprüfen. In einer Organisation, die PKI mit In einer Organisation, die PGP-Zertifikate ohne PKI verwendet, besteht die Aufgabe der Zertifizierungsstelle darin, die Gültigkeit aller PGP-Zertifikate zu überprüfen und die Originalzertifikate zu signieren. Das Hauptziel einer CA besteht in der Regel darin, den öffentlichen Schlüssel mit ihrer eigenen Signatur mit den im Zertifikat enthaltenen Identifikationsinformationen zu „verknüpfen“ und so Dritten zu versichern, dass bestimmte Maßnahmen ergriffen wurden, um eine Verbindung zwischen dem Schlüssel und dem herzustellen Identifikationsinformationen.

Die CA einer Organisation ist der Eckpfeiler ihres Authentizitäts- und Vertrauenssystems; In einigen Organisationen, beispielsweise solchen, die PKI verwenden, gilt kein Zertifikat als gültig, bis es von einer vertrauenswürdigen Zertifizierungsstelle signiert wurde.

Authentifizierung

Eine Möglichkeit, die Echtheit eines Zertifikats festzustellen, ist ein mechanisches Verfahren. Dafür gibt es mehrere Methoden. Beispielsweise können Sie Ihren Korrespondenten bitten, eine Kopie seines öffentlichen Schlüssels „physisch“, d. h. per E-Mail, zu übertragen. Lieferung auf Festplatten – magnetische oder optische Datenträger usw. Dies ist jedoch oft unbequem und wirkungslos.

Eine andere Möglichkeit ist die Überprüfung Impressum (Fingerabdrücke) Zertifikat. So wie die Fingerabdrücke von Menschen einzigartig sind, so sind es auch die Fingerabdrücke jedes PGP-Zertifikats. Ein Fingerabdruck ist ein Hashwert des Zertifikats eines Benutzers, der als eine seiner Eigenschaften angezeigt wird. In PGP kann ein Fingerabdruck entweder als Hexadezimalzahl oder als eine Reihe sogenannter Zahlen dargestellt werden. biometrische Wörter, phonetisch klar und zur Vereinfachung der verbalen Fingerabdruckerkennung.

Sie können die Echtheit eines Zertifikats feststellen, indem Sie den Besitzer des Schlüssels anrufen (so dass Sie die Kommunikation einleiten) und ihn bitten, den Fingerabdruck von seinem Schlüssel zu lesen; Sie müssen diesen Ausdruck mit dem Ausdruck auf der Kopie vergleichen, die Sie erhalten haben. Diese Methode ist akzeptabel Und m, wenn Sie die Stimme des Korrespondenten kennen, aber wie können Sie die Identität von jemandem feststellen, den Sie nicht einmal kennen? Manche Leute drucken zu diesem Zweck wichtige Schlüssel auf ihre Visitenkarten.

Eine andere Methode zur Feststellung der Echtheit des Zertifikats einer anderen Person besteht darin, sich auf die Meinung eines Dritten zu verlassen, der seine Echtheit bereits festgestellt hat.

Die Zertifizierungsstelle ist beispielsweise dafür verantwortlich, gründlich zu überprüfen, ob ein öffentlicher Schlüssel dem beabsichtigten Eigentümer gehört, bevor sie ihm ein Zertifikat ausstellt. Jeder Benutzer, der der Zertifizierungsstelle vertraut, betrachtet automatisch alle von der Zertifizierungsstelle signierten Zertifikate als authentisch.

Ein paralleler Aspekt der Authentifizierung und Gültigkeit besteht darin, sicherzustellen, dass das Zertifikat nicht widerrufen (widerrufen) wurde. Weitere Informationen zu diesem Thema finden Sie im Abschnitt „Widerruf eines Zertifikats“.

Vertrauen aufbauen

Sie zertifizieren die Zertifikate selbst. Aber man vertraut auch Menschen. Daher können Sie darauf vertrauen, dass Menschen Zertifikate zertifizieren. In der Regel müssen Sie sich auf die Meinung einer anderen Person über die Echtheit des Schlüssels verlassen, es sei denn, der Eigentümer selbst hat Ihnen eine Kopie des Schlüssels ausgehändigt.

Meta-Bürgen und vertrauenswürdige Bürgen

In den meisten Fällen verlassen sich Benutzer bei der Überprüfung der Authentizität von Zertifikaten vollständig auf die Zertifizierungsstelle. Mit anderen Worten: Die Nutzer sind davon überzeugt, dass die CA das gesamte mechanische Verifizierungsverfahren für sie durchgeführt hat, und vertrauen auf ihre Garantien für die Echtheit der von ihr zertifizierten Zertifikate. Dieses Schema funktioniert nur bis zu einer bestimmten Grenze bei der Anzahl der PKI-Benutzer, bei deren Überschreitung die Zertifizierungsstelle nicht mehr in der Lage sein wird, das gleiche Maß an Gründlichkeit des Verifizierungsverfahrens aufrechtzuerhalten. In diesem Fall ist es erforderlich, dem System zusätzliche „Bürgen“ hinzuzufügen.

CA kann auch sein Meta-Garant(Meta-Repräsentant). Der Meta-Garant zertifiziert nicht nur die Schlüssel selbst, sondern erteilt auch anderen Personen (Organisationen) Zertifizierungsbefugnisse. So wie ein König engen Beratern sein persönliches Siegel oder Faksimile überreicht, damit diese in seinem Namen handeln können, so ermächtigt ein Meta-Bürge andere, als solcher zu handeln vertrauenswürdige Garanten(vertrauenswürdige Vertreter). Diese vertrauenswürdigen Garanten können Schlüssel mit demselben Ergebnis authentifizieren wie ein Meta-Garant. Sie können jedoch keine neuen vertrauenswürdigen Bürgen schaffen.

„Meta-Garant“ und „vertrauenswürdiger Garant“ sind PGP-Begriffe. Im X.509-Umfeld wird der Meta-Garant genannt Stammzertifizierungsstelle (Root-CA) und vertrauenswürdige Bürgen – Untergeordnete, oder dazwischenliegend, Zertifizierungsstellen (untergeordnete CAs, Zwischen-CAs).

Eine Stammzertifizierungsstelle verwendet zum Signieren von Schlüsseln einen privaten Schlüssel, der einem speziellen Zertifikattyp namens Stammzugeordnet ist. Jedes vom Root-Schlüssel der Zertifizierungsstelle signierte Zertifikat wird von jedem anderen vom Root-Schlüssel signierten Zertifikat als vertrauenswürdig eingestuft. Dieser Authentifizierungsprozess gilt sogar für Zertifikate, die von einer anderen Zertifizierungsstelle im [zugehörigen] System signiert wurden – wenn der Schlüssel der Zwischenzertifizierungsstelle durch den Schlüssel der Stammzertifizierungsstelle signiert ist, gilt jedes zuerst signierte Zertifikat innerhalb der Hierarchie als gültig. Dieser Prozess, bei dem entlang der Zweige einer Hierarchie nachverfolgt wird, wer welche Zertifikate unterzeichnet hat, wird aufgerufen Pfadverfolgung, oder Ketten, Zertifikate.

Modelle von Vertrauensbeziehungen

In relativ geschlossenen Systemen wie kleinen Organisationen und Firmen ist es einfach, den Pfad des Zertifikats bis zur Stammzertifizierungsstelle zurückzuverfolgen. Benutzer müssen jedoch häufig mit Personen außerhalb ihrer Unternehmensumgebung kommunizieren, einschließlich Personen, die sie noch nie zuvor getroffen haben, wie z. B. Lieferanten, Kunden, Klienten usw. Es wird eine Vertrauenslinie mit Personen aufgebaut, die nicht ausdrücklich von der Zertifizierungsstelle authentifiziert wurden eine schwierige Aufgabe.

Organisationen folgen einem von mehreren Vertrauensbeziehungsmodellen, die die Aktionen der Benutzer bei der Bestimmung der Gültigkeit von Zertifikaten leiten. Es gibt drei verschiedene Modelle:

    Direktes Vertrauen

    Hierarchisches Vertrauen

    Netz des Vertrauens

Direktes Vertrauen

Direktes Vertrauen Dies ist das einfachste Modell für Vertrauensbeziehungen. Bei diesem Schema ist der Benutzer davon überzeugt, dass der Schlüssel echt ist, da er genau weiß, von wem er den Schlüssel erhalten hat. Alle Kryptosysteme nutzen diese Form des Vertrauens in gewissem Umfang. In Webbrowsern wird beispielsweise den Stammschlüsseln von Zertifizierungsstellen direkt vertraut, weil waren im Distributionspaket dieses Softwareprodukts enthalten. Wenn es irgendeine Art von Hierarchie gibt, geht diese von diesen direkt vertrauenswürdigen Zertifikaten aus.

Bei PGP verwendet ein Benutzer, der Schlüssel selbstständig zertifiziert, ohne auf die Hilfe vertrauenswürdiger Bürgen zurückzugreifen, ein direktes Vertrauensschema.

Hierarchisches Vertrauen

IN hierarchisches System Es gibt eine Reihe von Root-Zertifikaten, von denen aus Vertrauen erweitert wird. Diese Zertifikate können entweder selbst Endbenutzerzertifikate signieren oder andere Zertifikate autorisieren, die entlang einer Kette Benutzerzertifikate signieren. Stellen Sie sich vor, das wäre ein großer „Baum“ des Vertrauens. Die Authentizität von Blattzertifikaten (Endbenutzerzertifikaten) wird bestimmt, indem die Kette bis zu ihren Anmeldeinformationen und dann zurück zu den Anmeldeinformationen dieser Anmeldeinformationen zurückverfolgt wird, bis ein direkt vertrauenswürdiges Stammzertifikat gefunden wird.

Netzwerk des Vertrauens

Netzwerk des Vertrauens kombiniert beide vorherigen Modelle und führt außerdem den Grundsatz ein, dass Vertrauen ein subjektives Konzept ist (das mit alltäglichen Vorstellungen korreliert), und die Idee, dass je mehr Informationen, desto besser. Das ist also so kumulatives Vertrauensmodell. Einem Zertifikat kann direkt oder entlang einer Kette vertraut werden, die bis zu einem direkt vertrauenswürdigen Stammzertifikat (Meta-Trustor) zurückreicht, oder es kann von einer Gruppe vertrauenswürdiger Trustoren signiert werden.

Möglicherweise kennen Sie das Konzept der „sechs Grad der Trennung“, was bedeutet, dass jedes Individuum mit sechs oder weniger Personen als Vermittler eine Art Kette zu jedem anderen Individuum auf dem Planeten aufbauen kann. Dabei handelt es sich um ein Netzwerk von Vertretern.

So geht das Ö Das gilt auch für die Vorstellung von Vertrauen bei PGP. PGP verwendet digitale Signaturen als eigene Form der Garantie. Wenn ein Benutzer den Schlüssel eines anderen Benutzers signiert, wird er zum Garanten dieses Schlüssels (garantiert, dass der Schlüssel authentisch ist und dem beabsichtigten Eigentümer gehört). Durch die Erweiterung dieses Prozesses entsteht ein Netzwerk des Vertrauens.

In einer PGP-Umgebung kann jeder Benutzer als Zertifizierungsstelle fungieren. Jeder Benutzer kann den öffentlichen Schlüssel eines anderen Benutzers überprüfen. Allerdings wird ein solches Zertifikat von einem anderen Benutzer nur dann als echt angesehen, wenn dieser den Zeugen als seinen vertrauenswürdigen Bürgen anerkennt. (Mit anderen Worten: Sie vertrauen meiner Meinung über die Echtheit anderer Schlüssel nur dann, wenn Sie mich als Ihren vertrauenswürdigen Garanten betrachten. Ansonsten ist meine subjektive Einschätzung der Echtheit der Schlüssel anderer Personen für Sie zumindest zweideutig.)

Der öffentliche Schlüsselring jedes Benutzers enthält die folgenden Indikatoren:

    ob der Benutzer einen bestimmten Schlüssel für authentisch hält;

    das Maß an Vertrauen, das der Benutzer einem bestimmten Schlüssel entgegenbringt, mit dem sein Besitzer als Garant für die Authentizität anderer Schlüssel fungiert.

Sie geben auf Ihrer Kopie meines Schlüssels an, wie wichtig Ihnen meine Meinung über die Echtheit der von mir signierten Schlüssel ist. Hierbei handelt es sich um ein reines Reputationssystem: Es ist bekannt, dass einige Benutzer Schlüssel sorgfältig prüfen und gute Signaturen liefern, denen die Menschen als bedingungslosen Indikator für Authentizität vertrauen.

Vertrauensabschlüsse in PGP

Das höchste Maß an Vertrauen – bedingungsloses Vertrauen (Implizites Vertrauen) ist Vertrauen in Ihr eigenes Schlüsselpaar. PGP ist davon überzeugt, dass Sie, wenn Sie einen privaten Schlüssel besitzen, den Aktionen des entsprechenden öffentlichen Schlüssels vertrauen müssen. Alle von Ihrer bedingungslos vertrauenswürdigen Person unterzeichneten Schlüssel sind für Sie wahr und authentisch.

Es gibt drei Vertrauensgrade, die Sie dem öffentlichen Schlüssel einer anderen Person zuweisen können:

    Volles Vertrauen

    Teilvertrauen

    Kein Vertrauen

Um die Sache noch verwirrender zu machen, gibt es auch drei Ebenen der Authentizität:

    Authentisch

    Möglicherweise echt

    Unsicher

Um einem anderen wichtigen Sponsor die Vollmacht zu erteilen, gehen Sie wie folgt vor:

    Nehmen Sie den Originalschlüssel

entweder von Ihnen oder einem anderen vertrauenswürdigen Bürgen unterschrieben und dann

    Stellen Sie das Maß an Vertrauen fest, das der Eigentümer Ihrer Meinung nach verdient.

Stellen wir uns zum Beispiel vor, dass Sie Alices Schlüssel an Ihrem Schlüsselbund haben. Sie haben die Echtheit ihres Schlüssels festgestellt und geben dies durch Ihre Unterschrift bekannt. Sie wissen, dass Alice eine starke Verfechterin einer sorgfältigen Überprüfung der Schlüssel anderer Leute ist. Deshalb geben Sie ihm volles Vertrauen, wodurch es tatsächlich zu einer Zertifizierungsstelle wird: Wenn Alice den Schlüssel einer anderen Person signiert, ist er von vornherein korrekt auf Ihrem Schlüsselbund.

PGP erfordert eine vollständig vertrauenswürdige oder zwei teilweise vertrauenswürdige Signaturen, um einen Schlüssel als echt zu etablieren. Die Methode von PGP, zwei Teildokumente mit einem Volldokument gleichzusetzen, ähnelt der Methode, mit der Sie manchmal zwei Arten von Ausweisdokumenten vorlegen müssen. Möglicherweise halten Sie Alice teilweise für vertrauenswürdig, und Sie finden möglicherweise auch, dass Bob teilweise vertrauenswürdig ist. Es besteht das Risiko, dass jeder von ihnen versehentlich einen gefälschten Schlüssel signiert, sodass Sie wahrscheinlich keinem von ihnen volles Vertrauen geben würden. Allerdings ist die Wahrscheinlichkeit, dass beide denselben gefälschten Schlüssel signieren, recht gering.

Widerruf des Zertifikats

Das Zertifikat kann nur so lange verwendet werden, wie es gültig ist. Es ist gefährlich, darauf zu vertrauen, dass ein Zertifikat für immer sicher und zuverlässig ist. In den meisten Organisationen und in allen PKIs hat ein Zertifikat eine begrenzte Lebensdauer. Dies verringert den Zeitraum, in dem das System gefährdet sein könnte, wenn das Zertifikat kompromittiert wird.

Somit wird das Zertifikat mit einer bestimmten festgelegten Gültigkeitsdauer erstellt, beginnend mit dem Erstellungsdatum und endend mit dem Ablaufdatum (ähnlich dem Ablaufdatum von Lebensmitteln oder der Gültigkeit eines Führerscheins). Das Zertifikat kann durchgehend verwendet werden Gültigkeitszeitraum Danach ist es nicht mehr wahr, da die Zuverlässigkeit seines Identifizierungsschlüsselpaars nicht mehr garantiert werden kann. (Das Zertifikat kann jedoch weiterhin zur Überprüfung von zuvor während seiner Lebensdauer verschlüsselten oder signierten Informationen verwendet werden; es wird jedoch für zukünftige kryptografische Anforderungen unbrauchbar.)

Manchmal besteht jedoch die Notwendigkeit, ein Zertifikat vor Ablauf ungültig zu machen, beispielsweise wenn der Eigentümer des Zertifikats von seinem aktuellen Job entlassen wird oder wenn der Eigentümer den Verdacht hat, dass der private Schlüssel dieses Zertifikats kompromittiert wurde. Dieser Vorgang wird aufgerufen Rezension oder Stornierung. Ein widerrufenes Zertifikat ist viel verdächtiger als ein abgelaufenes. Ein abgelaufenes Zertifikat ist nicht mehr verwendbar, stellt jedoch nicht die gleiche Gefährdungsgefahr dar wie ein widerrufenes Zertifikat.

Jeder Benutzer, der ein Zertifikat verifiziert hat (der für die Zusammengehörigkeit der Schlüssel- und Zertifikatsinformationen bürgt), kann seine Signatur jederzeit mit demselben privaten Schlüssel widerrufen, mit dem er es erstellt hat. Eine widerrufene Signatur zeigt an, dass der Unterzeichner festgestellt hat, dass der öffentliche Schlüssel und die Identitätsinformationen nicht mehr miteinander verknüpft sind oder dass der öffentliche Schlüssel (oder der entsprechende private Schlüssel) des Zertifikats kompromittiert wurde. Eine widerrufene Signatur hat fast die gleiche Bedeutung wie ein widerrufenes Zertifikat.

Im Fall von X.509-Zertifikaten ist eine widerrufene Signatur praktisch dasselbe wie ein widerrufenes Zertifikat, da im Allgemeinen nur eine Signatur eine Garantie für die Authentizität des Zertifikats war – die Signatur der Zertifizierungsstelle. PGP bietet die zusätzliche Möglichkeit, das gesamte Zertifikat (nicht nur die Signaturen darauf) zu widerrufen, wenn Sie jemals glauben, dass es in irgendeiner Weise kompromittiert wurde.

Nur der Besitzer des Zertifikats (der Besitzer des entsprechenden privaten Schlüssels) oder eine vom Besitzer speziell autorisierte Person (der sog „Vertrauenswürdiger Stornierer“, designierter Widerrufer), kann das PGP-Zertifikat widerrufen. (Es ist sehr sinnvoll, die Sperrfunktion einem Dritten zu übertragen, da der Verlust des Passworts zum privaten Schlüssel, der häufig als Sperrgrund dient, es dem Zertifikatsinhaber unmöglich macht, diesen Vorgang selbst durchzuführen.) Ein X. Das 509-Zertifikat kann von seinem Aussteller – der CA – nur auf Antrag des Eigentümers widerrufen werden.

Hinweis zum Widerruf des Zertifikats

Sobald ein Zertifikat widerrufen wird, ist es wichtig, alle potenziellen Korrespondenten darüber zu informieren, dass es nicht mehr gültig ist. Die einfachste Benachrichtigungsmethode in einer PGP-Umgebung besteht darin, das widerrufene Zertifikat auf dem Treuhandserver zu platzieren. Auf diese Weise wird jeder, der Sie kontaktieren möchte, gewarnt, diesen öffentlichen Schlüssel nicht zu verwenden.

In einer PKI-Umgebung erfolgt die Benachrichtigung über den Widerruf eines Zertifikats über einen speziellen Mechanismus namens Verzeichnis der widerrufenen Zertifikate (Zertifikatssperrliste, CRL), veröffentlicht von der Zertifizierungsstelle. Die CRL enthält eine datierbare, zertifizierte Liste aller widerrufenen, nicht abgelaufenen Systemzertifikate. Gesperrte Zertifikate bleiben nur so lange in der Liste, bis sie tatsächlich ablaufen, danach werden sie von dort entfernt – so wird verhindert, dass die Liste endlos wächst.

Die CA aktualisiert die CRL in regelmäßigen Abständen. Theoretisch sollte dies das Risiko einer unbeabsichtigten Verwendung eines widerrufenen Zertifikats minimieren. Dennoch besteht immer noch die Möglichkeit, dass ein kompromittiertes Zertifikat vorübergehend versehentlich verwendet wird Ö m-Intervall zwischen CRL-Veröffentlichungen.

Was ist eine Schlüsselwortphrase?

Die meisten Benutzer sind mit der Methode zur Einschränkung des Zugriffs auf einen Computer oder Computerressourcen vertraut Passwort Dabei handelt es sich um eine eindeutige Zeichenfolge, die als Identifikationscode eingegeben wird.

Schlüsselsatz ist eine längere, komplexere und theoretisch sicherere Passwortoption. Da eine Schlüsselphrase typischerweise aus mehreren Wörtern besteht, ist sie im Vergleich zum Standard wesentlich zuverlässiger Wörterbuchangriffe Dabei versucht der Angreifer alle Wörter im Wörterbuch auszuprobieren, um Ihr Passwort zu erraten. Die besten Schlüsselwortphrasen sind ziemlich lang und komplex und enthalten sowohl Groß- als auch Kleinbuchstaben sowie Zahlen, Satzzeichen und andere Symbole.

PGP verwendet eine Passphrase, um Ihren privaten Schlüssel zu verschlüsseln. Der private Schlüssel wird auf der Festplatte gespeichert und mit dem Hash-Wert der Passphrase als symmetrischer geheimer Schlüssel verschlüsselt. Sie verwenden die Passphrase zum Entschlüsseln und verwenden den privaten Schlüssel. Der Schlüsselsatz sollte so beschaffen sein, dass er für Sie schwer zu vergessen und für andere schwer zu erraten ist. Es sollte etwas sein, das schon lange sicher im Langzeitgedächtnis Ihres Gehirns gespeichert ist und nicht von Grund auf neu erfunden wurde. Warum? Denn wenn Sie den Schlüsselsatz vergessen, stecken Sie in großen Schwierigkeiten. Ein privater Schlüssel ist ohne seine Passphrase völlig nutzlos und es kann nichts dagegen unternommen werden. Erinnern Sie sich an das Zitat am Anfang dieses Kapitels? PGP ist eine Kryptografie, die verhindert, dass mächtige Regierungen Ihre Dateien lesen. Und noch schlimmer: Sie wird Ihnen nicht erlauben, sie zu lesen. Denken Sie daran, wenn Sie sich plötzlich dazu entschließen, den Schlüsselsatz in einen Auszug aus einer Anekdote zu ändern, an die Sie sich nie wirklich erinnern konnten.

Schlüsselfreigabe

Man sagt, dass ein Geheimnis kein Geheimnis mehr ist, wenn zwei Menschen es kennen. Teilen des privaten Schlüssels widerlegt diese Meinung. Obwohl dies nicht empfohlen wird, kann es in bestimmten Situationen erforderlich sein, einen privaten Schlüssel zu teilen. Zum Beispiel, Signaturschlüssel für Unternehmen (Unternehmenssignaturschlüssel, CSK) sind hochsensible private Schlüssel, die von einer Organisation beispielsweise zur Authentifizierung von Rechtsdokumenten, persönlichen Informationen von Mitarbeitern oder Pressemitteilungen zur Überprüfung der Urheberschaft verwendet werden. In diesem Fall ist es sinnvoll, dass mehrere Mitglieder des Unternehmens Zugriff auf den privaten Schlüssel haben. Dies bedeutet aber auch, dass jedes Teammitglied frei und umfassend im Namen des Unternehmens sprechen kann.

Die Lösung dieses Problems besteht darin, den privaten Schlüssel so aufzuteilen und zwischen mehreren Personen zu verteilen, dass für die Wiederherstellung eines funktionsfähigen Zustands die Anwesenheit von mehr als einem oder zwei Verwaltern von Teilen (Anteilen) des Schlüssels erforderlich ist. Werden zu wenige Anteile gesammelt, ist der Schlüssel unbrauchbar.

Sie können beispielsweise einen Schlüssel in drei Anteile aufteilen und zwei davon für die Rekonstruktion benötigen, oder Sie können ihn in zwei Anteile aufteilen und die Verwendung beider Anteile erfordern. Wenn für den Rekonstruktionsvorgang eine sichere Netzwerkverbindung verwendet wird, müssen sich die Hauptaktionäre nicht gemeinsam am selben geografischen Standort aufhalten.

Technische Details

Dieses Kapitel bietet eine detaillierte Einführung in die Konzepte und Terminologie der Kryptographie. In Kapitel 2, „Phil Zimmerman über PGP“, bietet Phil Zimmerman, der Autor von PGP, eine ausführlichere Diskussion über Datenschutzprobleme, die technischen Aspekte von PGP, einschließlich der im Programm verwendeten Algorithmen, und erklärt einige Arten von Angriffen und wie man sich gegen sie verteidigt.

Weitere Informationen zur Kryptographie finden Sie im Material im Abschnitt „Bibliographie“ des Vorworts.

Seite 3 / 4

    In den meisten Fällen der russische Begriff Verschlüsselung ist ein Synonym Verschlüsselung, bezeichnet aber manchmal den kryptografischen Prozess als Ganzes, – im Folgenden ca. Übersetzer. Zurück zum Text

    Um nicht verwirrt zu sein Entschlüsselung Mit Entschlüsselung: Das erste bedeutet, einen Chiffretext mithilfe eines Schlüssels in Klartext umzuwandeln, das zweite bedeutet, einen Chiffretext durch Kryptoanalyse in Klartext umzuwandeln, ohne den Schlüssel zu kennen. Zurück zum Text

    Es gibt mittlerweile Hinweise darauf, dass der britische Geheimdienst es mehrere Jahre vor Diffie und Hellman erfunden hat, es aber unter der Überschrift „Eulen“ geführt hat. geheim“ und nutzte es in keiner Weise. J. H. Ellis, The Possibility of Secure Non-Secret Digital Encryption, CESG-Bericht, Januar 1970. (CESG ist das nationale Zentrum des Vereinigten Königreichs für die offizielle Anwendung der Kryptographie), – ca. Autor. Die erste zivile Umsetzung des Konzepts der Public-Key-Kryptographie war die Erfindung von Ralph Merkle „Merkles Rätsel“(wurde von ihm 1974 als Studienarbeit beschrieben), dieses Schema war jedoch für praktische Zwecke nicht anwendbar, - ca. Fahrbahn. Zurück zum Text

    Somit zeigt eine digitale Signatur im Gegensatz zu einer handschriftlichen Signatur nicht an, dass eine bestimmte Person (natürliche Person) die Informationen überprüft hat, sondern dass ein bestimmter kryptografischer Schlüssel die Informationen überprüft hat. Dem Zweck der „Verknüpfung“ eines kryptografischen Schlüssels mit einer Person dienen digitale Zertifikate und Schlüsselschutzmechanismen, die auf den persönlichen (biometrischen) Daten ihres Besitzers basieren. Zurück zum Text

    Synonyme: Hashwert, Faltung, Signatur, Prüfsumme, Nachrichtenauthentizitätscode. Zurück zum Text

Dieses Kapitel enthält detaillierte Informationen über Kryptographie und PGP, geschrieben von Phil Zimmerman.

Warum ich PGP erstellt habe

„Alles, was Sie tun, wird unbedeutend sein, aber es ist sehr wichtig, dass Sie es tun.“

Mahatma Gandhi

Diese Angelegenheit ist persönlich, geheim und ausschließlich Ihnen vorbehalten. Sie können einen Wahlkampf planen, über Steuern diskutieren, eine geheime Affäre haben. Oder vielleicht kommunizieren Sie mit einem politischen Dissidenten, der in einem repressiven Land lebt. Was auch immer Ihre vertraulichen Dokumente und privaten E-Mails sind, Sie möchten nicht, dass jemand anderes sie lesen kann. Es ist nichts Falsches daran, die eigenen Rechte zu schützen. Das Recht auf Privatsphäre ist ebenso wichtig wie die Verfassung.

Das Recht auf Privatsphäre ist in jeder Zeile der Bill of Rights verankert. Doch als die Verfassung der Vereinigten Staaten verfasst wurde, sahen die Gründerväter keine Notwendigkeit, ausdrücklich Rechte auf Privatsphäre in der Kommunikation festzulegen. Es wäre gelinde gesagt seltsam. Vor zweihundert Jahren war die gesamte Kommunikation geheim. Kam ein Fremder in Hörweite, konnte man einfach hinter die Scheune gehen und das Gespräch fortsetzen. Niemand konnte es belauschen. Das Recht auf Privatsphäre in der Kommunikation war ein natürliches Recht, nicht so sehr im philosophischen Sinne, sondern im Sinne der Gesetze der Physik, basierend auf dem damaligen technologischen Stand.

Doch mit Beginn des Informationszeitalters, das mit der Erfindung des Telefons einherging, änderte sich alles. Heutzutage erfolgt die Kommunikation größtenteils elektronisch. Unsere intimsten Gespräche sind in keiner Weise geschützt. Ein Anruf von einem Mobiltelefon kann über einen Radiosender abgehört werden. Über das Internet gesendete E-Mails sind nicht sicherer als ein Mobiltelefongespräch. E-Mails werden zur Norm und ersetzen schnell die Papierpost.

Wenn die Regierung bis vor Kurzem beabsichtigte, die Privatsphäre der Bürger zu verletzen, war sie gezwungen, einige Zeit und Kosten aufzuwenden, um den Papierumschlag abzufangen, zu dampfen und zu öffnen. Oder er musste ein Telefongespräch anhören und vielleicht manuell transkribieren, zumindest vor dem Aufkommen automatischer Spracherkennungstechnologien. Diese Art der arbeitsintensiven „manuellen“ Abhörung war in größerem Maßstab nicht praktikabel. Es wurde nur in bestimmten Ausnahmefällen verwendet, wenn es das dafür ausgegebene Geld wert war. Es erinnerte an das Fangen eines Fisches mit einer Angelrute. Heutzutage können E-Mails automatisch nach Schlüsselwörtern und Phrasen durchsucht werden – in großem Umfang, unkontrolliert und unbemerkt. Es ist, als würde man Tonnen von Fisch mit einem Trawlernetz fangen. Und das exponentielle Wachstum der Rechenleistung von Computern ermöglicht dasselbe für den Sprachverkehr.

Natürlich könnten Sie argumentieren, dass Ihre E-Mail nichts Illegales enthält. Warum also verschlüsseln? Aber wenn Sie wirklich ein so gesetzestreuer Bürger sind, der nichts zu verbergen hat, warum versenden Sie dann nicht Ihre gesamte Papierkorrespondenz nur auf Postkarten? Warum stimmen Sie auf Wunsch nicht einem Drogentest zu? Warum bitten Sie die Polizei um einen Durchsuchungsbefehl zur Durchsuchung Ihrer Wohnung? Versteckst du etwas? Wenn Sie Briefe in Umschlägen verschicken, bedeutet das, dass Sie zwangsläufig ein Krimineller, ein Drogendealer oder vielleicht ein paranoider Verrückter sind? Müssen gesetzestreue Bürger ihre E-Mails verschlüsseln?

Was wäre, wenn alle plötzlich entscheiden würden, dass gesetzestreue Bürger Briefe nur noch auf Postkarten versenden sollten? Wenn in einer solchen Situation ein Nonkonformist einen Papierumschlag nutzt, um seine Bürgerrechte zu schützen, wird dies zwangsläufig Aufmerksamkeit erregen. Sicherlich werden die Behörden seinen Brief öffnen, um zu sehen, was er verbirgt. Glücklicherweise leben wir nicht in einer solchen Welt, denn jeder verschickt Briefe in Umschlägen und niemand findet das seltsam. Sicherheit liegt in der Masse. Es wäre großartig, wenn jeder alle von ihm gesendeten E-Mails, ob harmlos oder nicht, routinemäßig verschlüsseln würde, sodass niemand misstrauisch wäre, indem er einfach Kryptografie verwendet, um sein Recht auf Privatsphäre in seinen E-Mails zu schützen. Betrachten Sie es als eine Form der Solidarität.

Der Senatsentwurf 266, der allgemeine Gesetzentwurf zur Kriminalitätsbekämpfung von 1991, enthielt eine verheerende Maßnahme. Sollte dieser unverbindliche Beschluss in Kraft treten, müssten Hersteller sicherer Kommunikationsgeräte spezielle „Hintertüren“ in ihre Produkte einbauen, die es der Regierung ermöglichen würden, verschlüsselte Nachrichten zu lesen. Zitat:

„Der Kongress verlangt, dass Anbieter elektronischer Kommunikationsdienste und Hersteller elektronischer Kommunikationsgeräte sicherstellen, dass die Regierung Klartextinhalte von Sprach-, Digital- und anderen Kommunikationsströmen aus Kommunikationssystemen erhalten kann, wenn dies gesetzlich zulässig ist.“.

Es war diese Gesetzesinitiative, die mich dazu veranlasste, im selben Jahr PGP für den freien Zugang zum Internet zu veröffentlichen, kurz bevor die Maßnahme unter heftigem Protest von Industriegruppen und liberalen Menschenrechtsgruppen abgelehnt wurde.

Gesetz „Zur Kommunikationsunterstützung bei Strafverfolgungsmaßnahmen“ (CALEA) genehmigte 1994 eine Verpflichtung für Telefongesellschaften, Remote-Ports in ihren zentralen digitalen Vermittlungsstellen zu installieren, um Telefonkommunikation abzufangen, und schuf so eine neue Technologieinfrastruktur für das Abhören mit einem Klick; Bundesagenten müssen nicht mehr vor Ort sein und sich mit Krokodilklemmen an die Telefonleitung anschließen. Jetzt können sie ruhig bei einer Tasse Kaffee in ihrem Büro in Washington sitzen und Ihre Telefongespräche abhören. Natürlich verlangt das Gesetz immer noch eine gerichtliche Anordnung, um Abhörmaßnahmen durchzuführen. Doch während technische Infrastrukturen auf eine jahrzehntelange Lebensdauer ausgelegt sind, ändern sich Gesetze und Richtlinien innerhalb weniger Stunden. Sobald überwachungsoptimierte Kommunikationsinfrastrukturen bereits vorhanden sind, könnte eine Veränderung des politischen Umfelds zum Missbrauch dieser neu gewonnenen Macht führen. Der politische Kontext kann sich mit der Wahl eines neuen Präsidenten oder, vielleicht radikaler und dramatischer, mit der Bombardierung eines Bundesgebäudes ändern. 1

Ein Jahr nach der Verabschiedung von CALEA stellte das FBI eine Initiative vor, die von Telefongesellschaften verlangt, in ihren Infrastrukturen ausreichende Kapazitäten einzurichten, um jeweils ein Prozent aller Telefongespräche in großen US-Städten abzuhören. Dies würde eine mehr als tausendfache Zunahme der abgefangenen Kommunikation bedeuten. In den vergangenen Jahren gab es in den Vereinigten Staaten auf Bundes-, Landes- und lokaler Ebene zusammengenommen nur etwa tausend gerichtlich genehmigte Telefonüberwachungen pro Jahr. Es ist schwer vorstellbar, wie die Regierung genügend Richter einstellen wird, um die erforderliche Anzahl an Haftbefehlen zu unterzeichnen. Es ist sogar noch schwieriger zu verstehen, warum so viele Bundesagenten sitzen bleiben und dem ganzen Verkehr in Echtzeit zuhören. Die einzige Möglichkeit, eine solche Informationsmenge zu verarbeiten, ist ein riesiges Orwellsches automatisches Spracherkennungsprogramm, das den gesamten Datenverkehr auf der Suche nach interessanten Schlüsselwörtern oder der Stimme einer bestimmten Person durchsucht. Wenn die Regierung in der ersten Ein-Prozent-Stichprobe kein Ziel findet, wird die Abhörung auf die nächste umgestellt und so weiter, bis das Ziel gefunden wird oder bis alle Telefone auf verdächtige Kommunikation überwacht werden. Das FBI versicherte, dass es diese Kapazitäten nur als Grundlage für die Zukunft benötige. Diese Initiative löste jedoch eine so heftige öffentliche Empörung aus, dass sie vom Kongress abgelehnt wurde. Allein die Tatsache, dass das FBI eine solch ernsthafte Gewaltanwendung angefordert hat, zeigt jedoch seine unmittelbaren Pläne.

Wenn es um Datenschutzrechte geht, erschweren technologische Fortschritte die Aufrechterhaltung des Status quo. Der Status quo ist instabil. Wenn wir nichts unternehmen, werden neue Technologien der Regierung die Möglichkeit geben, die Bürger zu kontrollieren und zu überwachen, von denen Stalin nie geträumt hätte. Die einzige Möglichkeit, Ihre Bürgerrechte im digitalen Zeitalter zu wahren, ist eine starke Kryptografie.

Sie müssen nicht den Glauben an die Macht verlieren, um mit der Kryptografie zu beginnen. Ihre Geschäftskommunikation kann von Konkurrenten, organisierter Kriminalität und ausländischen Geheimdiensten abgefangen werden. Einige ausländische Regierungen gestatten beispielsweise, dass ihre informationstechnologischen Erkenntnisse gegen Unternehmen aus anderen Ländern eingesetzt werden, um ihre eigenen Unternehmen wettbewerbsfähiger zu machen. Die Ironie besteht darin, dass die von der US-Regierung in den 90er Jahren eingeführten Beschränkungen für die Verbreitung und Nutzung starker Kryptografie den Schutz ihrer eigenen amerikanischen Unternehmen vor diesen Bedrohungen schwächten.

Die Regierung weiß, welche wichtige Rolle die Kryptographie im „Machtverhältnis“ mit ihrem eigenen Volk spielen wird. Im April 1993 enthüllte die Clinton-Regierung eine radikal neue Kryptografiepolitik, die seit Beginn der Bush-Regierung bei der US-amerikanischen National Security Agency (NSA) entwickelt worden war. Grundlage dieser neuen Richtlinie war ein von der NSA entwickelter Verschlüsselungschip namens Clipper-Chip, enthält einen neuen geheimen NSA-Verschlüsselungsalgorithmus - Skipjack. Die Regierung versuchte, die Privatwirtschaft zu ermutigen, den Chip in alle sicheren Kommunikationsprodukte wie Kryptophone, Kryptofaxe usw. einzubetten. AT&T installierte Clipper in seinen kryptografischen Sprachprodukten. Was ist hier der Trick? Während des Herstellungsprozesses wird jeder Clipper-Chip mit einem eigenen, einzigartigen Schlüssel geladen, und die Regierung erhält eine Kopie, die sie hinterlegt. Es gibt jedoch keinen Grund zur Sorge – die Regierung verspricht, diese Treuhandschlüssel nur dann zum Abhören Ihrer Kommunikation zu verwenden, wenn dies der Fall ist „ordnungsgemäß gesetzlich zugelassen“. Um Clipper bedingungslos effektiv zu machen, wäre der nächste logische Schritt natürlich, alle anderen Formen der Kryptographie zu verbieten.

Ursprünglich erklärte die Regierung, dass die Verwendung des Clipper-Chips freiwillig sei und niemand gezwungen werde, ihn anstelle anderer Arten der Kryptografie zu verwenden. Doch die öffentliche Gegenreaktion gegen den Chip war heftig, viel stärker, als die Regierung gehofft hatte. Die Computerindustrie hat ihren massiven Widerstand gegen den Einsatz des Chips angekündigt. FBI-Direktor Louis Freeh antwortete auf eine Frage, die 1994 auf einer Pressekonferenz gestellt wurde, dass Clipper keine andere Wahl hätte, als sich um gesetzgeberische Unterstützung zu bemühen, wenn Clipper keine öffentliche Akzeptanz fände und das Abfangen durch das FBI aufgrund nichtstaatlicher Kryptografie unmöglich würde. Später, nach der Tragödie von Oklahoma City, argumentierte Herr Freeh bei einer Anhörung vor dem Justizausschuss des Senats, dass die Verfügbarkeit starker Kryptografie für die breite Öffentlichkeit von der Regierung streng eingeschränkt werden sollte (auch wenn niemand bewiesen hat, dass die Attentäter Kryptografie bei der Planung verwendet haben). Attacke).

Die Regierung hat Tendenzen gezeigt, die nicht zu der Gewissheit führen, dass sie niemals unsere bürgerlichen Freiheiten verletzen wird. FBI-Programm COINTELPRO richtete sich an Gruppen, die sich der Regierungspolitik widersetzten. Es spionierte die Antikriegs- und Bürgerrechtsbewegung aus. Es hat das Telefon von Martin Luther King abgehört. Nixon führte eine Liste seiner Feinde. Dann gab es den Watergate-Skandal. Und vor nicht allzu langer Zeit hat der Kongress versucht oder es geschafft, Gesetze zu verabschieden, die unsere Bürgerrechte im Internet einschränken würden. Einige Elemente im Weißen Haus von Clinton sammelten vertrauliche FBI-Dateien über republikanische Zivilangestellte, wahrscheinlich zum Zweck politischer Erpressung. Und übereifrige Staatsanwälte zeigten die Bereitschaft, bis ans Ende der Welt zu gehen, um nach belastendem Material über die sexuellen „Abenteuer“ ihrer politischen Gegner zu suchen. Zu keinem Zeitpunkt im letzten Jahrhundert war das öffentliche Misstrauen gegenüber der Regierung im gesamten politischen Spektrum so weit verbreitet wie heute.

In den 1990er Jahren wurde mir klar, dass wir, wenn wir diesem destruktiven Trend der Regierung, Kryptographie zu verbieten, widerstehen wollten, unter anderem die Kryptographie so oft wie möglich nutzen könnten, solange ihre Verwendung noch legal war. Sobald die Verwendung starker Kryptografie populär wird, wird es für Regierungen schwieriger, sie zu kriminalisieren. Daher kann der Einsatz von PGP als Mittel zur Wahrung der Demokratie dienen. Wenn das Recht auf Privatsphäre verboten ist, haben nur diejenigen Privatsphäre, die außerhalb des Gesetzes stehen.

Es stellte sich heraus, dass die Veröffentlichung des PGP zusammen mit der jahrelangen starken öffentlichen Unzufriedenheit und dem Druck der Industrie, die Exportkontrollen zu lockern, positive Auswirkungen hatte. In den letzten Monaten des Jahres 1999 kündigte die Clinton-Regierung eine radikale Überarbeitung der Exportkontrollpolitik für Kryptotechnologie an. Sie lehnte das Regime der Restriktionen einfach ab. Jetzt können wir endlich eine starke Verschlüsselung ohne maximale Stärkeschwellen exportieren. Es war ein langer Kampf, aber wir haben schließlich gewonnen, zumindest was die US-Exportkontrolle betrifft. Wir müssen nun unsere Bemühungen zur Verbreitung und Popularisierung der Kryptographie fortsetzen, um die Auswirkungen der zunehmenden elektronischen Überwachungsmaßnahmen einiger Staaten im Internet abzuschwächen. Und trotz der heftigen Proteste des FBI müssen wir immer noch unser Recht auf demokratische Nutzung durchsetzen.

PGP gibt Menschen die Macht, ihre Bürgerrechte selbst in die Hand zu nehmen. Hierfür besteht ein hoher gesellschaftlicher Bedarf. Deshalb habe ich PGP erstellt.

Symmetrische PGP-Algorithmen

PGP verfügt über eine Reihe verschiedener Geheimschlüsselalgorithmen, die die Nachricht selbst verschlüsseln. Unter Algorithmen mit geheimem Schlüssel verstehen wir symmetrische Blockchiffren, die denselben Schlüssel sowohl für die Verschlüsselung als auch für die Entschlüsselung verwenden. Die von PGP angebotenen symmetrischen Blockchiffren sind CAST, Triple-DES, IDEA, Twofish, und auch AES. Alle diese Algorithmen wurden nicht „auf die Knie“ geschrieben – sie sind das Ergebnis ernsthafter wissenschaftlicher Forschung von kryptologischen Gruppen mit hervorragendem Ruf.

Für diejenigen, die sich für Kryptographie interessieren, können wir diese Algorithmen etwas ausführlicher besprechen. CAST, Triple-DES und IDEA arbeiten mit 64-Bit-Datenblöcken. CAST und IDEA verfügen über 128-Bit-Schlüssel, Triple-DES verwendet einen 168-Bit-Schlüssel. Wie der Data Encryption Standard (DES) können diese Algorithmen im Gammamodus mit Chiffretext-Feedback arbeiten ( Chiffre-Feedback, CFB) und sequentielle Verkettung von Chiffretextblöcken ( Chiffrierblockverkettung, CBC). PGP verwendet sie im 64-Bit-CFB-Modus.

Ich habe den CAST-Algorithmus aus mehreren Gründen zu PGP hinzugefügt: Er ist als starke 128-Bit-Blockverschlüsselung vielversprechend, er ist sehr schnell und kostenlos. Der Name leitet sich von den Initialen der Entwickler Carlisle Adams und Stafford Tavares 2 von Northern Telecom (Nortel) ab. Nortel ließ sich CAST patentieren, verpflichtete sich jedoch schriftlich dazu, es ohne Zahlung von Patentgebühren für jedermann verfügbar zu halten. CAST scheint eine sehr erfolgreiche Chiffre zu sein, die von Leuten mit gutem Ruf in ihrem Fachgebiet entwickelt wurde. Dem Entwurf liegt ein rein formaler Ansatz mit einer Reihe formal nachweisbarer Vorgaben zugrunde; All dies deutet stark darauf hin, dass das Knacken seines 128-Bit-Schlüssels einen Frontalangriff erfordern würde. CAST verfügt über keinen schwachen oder halbschwachen Schlüsselraum. Es gibt starke Argumente dafür, dass CAST völlig unempfindlich gegenüber der linearen und differenziellen Kryptoanalyse ist, zwei der leistungsstärksten Formen der Kryptoanalyse, die in der öffentlichen Literatur beschrieben werden und die sich beide als wirksam beim Brechen von DES erwiesen haben. Die formale DES-ähnliche Architektur von CAST und der gute Ruf seiner Autoren erregten die Aufmerksamkeit der gesamten wissenschaftlichen Gemeinschaft auf den Algorithmus und Versuche kryptoanalytischer Angriffe, denen er mit Würde standhielt. Ich habe fast das gleiche Vertrauen in CAST wie vor ein paar Jahren mit IDEA, der Chiffre, die ich für frühe Versionen von PGP gewählt habe. Damals war IDEA zu jung, um ernsthafte Glaubwürdigkeit zu besitzen, aber bis heute läuft es sehr gut.

Die Blockverschlüsselung IDEA (International Data Encryption Algorithm) basiert auf dem Konzept der „Mischung von Operationen aus verschiedenen algebraischen Gruppen“. Er wurde an der ETH Zürich von James Massey und Sueja Lai entwickelt und 1990 veröffentlicht. In den ersten Veröffentlichungen hieß der Algorithmus IPES (Improved Proposed Encryption Standard), später wurde er jedoch in IDEA umbenannt. IDEA ist wesentlich resistenter gegen Angriffe als die früheren Chiffren FEAL, REDOC-II, LOKI, Khufu und Khafre. Außerdem erwies sich IDEA als viel resistenter gegenüber DES gegenüber dem sehr erfolgreichen differenziellen Kryptographie-Angriff von Biham und Shamir sowie gegenüber der linearen Kryptoanalyse. Das Vertrauen in IDEA wächst jedes Jahr. Das größte Hindernis für die Einführung von IDEA als Verschlüsselungsstandard ist leider die Tatsache, dass der Patentinhaber seines Designs, AscomSystec, es nicht frei zur lizenzgebührenfreien Nutzung zur Verfügung stellt, wie dies bei DES und CAST der Fall ist.

Auch das Drei-Schlüssel-Triple-DES ist unter anderem im Arsenal der PGP-Blockchiffren enthalten. DES wurde Mitte der 70er Jahre von IBM erfunden. Obwohl es effizient aufgebaut ist, ist sein 56-Bit-Schlüssel nach heutigen Maßstäben zu klein. Triple-DES ist äußerst zuverlässig; Es wurde im Laufe der Jahre gut untersucht und ist daher möglicherweise eine bessere Wahl als die relativ neuen Versionen CAST und IDEA. Bei Triple-DES handelt es sich um die dreimalige Anwendung von DES auf denselben Datenblock unter Verwendung von drei verschiedenen Schlüsseln, mit der Ausnahme, dass der zweite Vorgang im Entschlüsselungsmodus in umgekehrter Reihenfolge durchgeführt wird. Obwohl Triple-DES viel langsamer ist als CAST oder IDEA, ist die Geschwindigkeit bei E-Mail-Anwendungen normalerweise nicht entscheidend. Obwohl Triple-DES eine Schlüssellänge von 168 Bit hat, beträgt die effektive Stärke gegenüber einem Angreifer mit der unglaublich großen Rechenleistung, die bei dem Angriff zum Einsatz kommt, mindestens 112 Bit. Nach Berechnungen von Michael Wiener auf Crypto96 würden alle einem Angreifer auch nur annähernd plausiblen Speicherressourcen die Durchführung eines Angriffs ermöglichen, der fast so viel Zeit/Kosten erfordern würde wie das Brute-Force-Knacken eines 129-Bit-Schlüssels. Der Einsatz von Triple-DES ist durch keine Patente eingeschränkt.

Ab PGP 7.0 haben wir den Twofish-Algorithmus von Bruce Schneier hinzugefügt. Twofish war einer von fünf Finalisten im NIST-Projekt Advanced Encryption Standard (AES). AES ist eine neue Blockverschlüsselungsarchitektur, die mit 128-Bit-Blöcken mit Schlüsselgrößen von 128, 192 oder 256 Bit arbeitet. Als NIST 1996 den Wettbewerb startete, reichten 15 Kryptografiegruppen aus der ganzen Welt ihre Entwürfe ein, von denen 1998 fünf ausgewählt wurden.

Die fünf Finalisten waren Twofish, Serpent, Rijndael, RC6 und MARS. Alle fünf wurden von den weltbesten Kryptographen strengen kryptoanalytischen Tests unterzogen, von denen viele ihre eigene Arbeit bei AES im Wettbewerb mit anderen präsentierten. Von diesen fünf hervorragenden Algorithmen wählte NIST Rijndael („Rhine Dollar“) zum Gewinner. Rijndael ist eine Blockchiffre, die von Joan Dymen und Vincent Rijndael entwickelt wurde. Rijndael ist seit Version 7.1 in PGP enthalten. Weitere Informationen zu AES finden Sie unter www.nist.gov/aes.

In PGP 5.0 und höher generierte öffentliche Schlüssel enthalten Informationen darüber, welche Blockchiffren vom Programm des Empfängers erkannt werden, sodass das Programm des Absenders weiß, welche Algorithmen zur Verschlüsselung verwendet werden können. Öffentliche Diffie-Hellman/DSS-Schlüssel unterstützen CAST, IDEA, AES (Rijndael), Triple-DES und Twofish als Blockchiffren mit standardmäßig installiertem AES (in Versionen 8.0 und höher). Aus Gründen der Abwärtskompatibilität verfügen RSA-Schlüssel nicht über diese Funktion. PGP ist auf den IDEA-Algorithmus zur Verschlüsselung von Nachrichten mit RSA-Schlüsseln beschränkt, da ältere Versionen von PGP nur RSA und IDEA 3 unterstützen.

Über das Datenkomprimierungsverfahren in PGP

PGP komprimiert Klartext vor der Verschlüsselung, da verschlüsselte Daten viel weniger komprimiert sind. Durch die Datenkomprimierung wird die Modemübertragungszeit verkürzt, Speicherplatz gespart und, was noch wichtiger ist, die kryptografische Stärke verbessert. Die meisten kryptoanalytischen Techniken basieren auf einer statistischen Analyse des Chiffretexts und suchen nach Anzeichen einer Klartextredundanz. Durch die Komprimierung wird die Informationsredundanz reduziert, was die Widerstandsfähigkeit gegenüber Kryptoanalysen deutlich erhöht. Die Datenkomprimierung erfordert etwas mehr Zeit, aber aus Sicherheitsgründen lohnt es sich.

Zu kurze Dateien und Dateien, die nicht gut genug komprimiert werden, werden überhaupt nicht komprimiert. Darüber hinaus erkennt das Programm Dateien, die von den gängigsten Archivprogrammen wie PKZIP erstellt wurden, und versucht nicht, eine bereits komprimierte Datei zu komprimieren.

Für technisch Interessierte: Das Programm verwendet ZIP-Komprimierungsalgorithmen, die von Jean Lou Galli, Mark Adler und Richard Wales geschrieben wurden. Das ZIP-Programm verwendet Komprimierungsalgorithmen, die funktional denen von PKWares PKZIP 2.x entsprechen. Dieses Komprimierungsprogramm wurde für PGP vor allem wegen seiner guten Komprimierungsrate und Geschwindigkeit ausgewählt.

Über Zufallszahlen und Sitzungsschlüssel

Um einmalige symmetrische Sitzungsschlüssel zu generieren, verwendet PGP einen kryptografisch sicheren Pseudozufallszahlengenerator (PRNG) 4 . Fehlt die PNG-Datei, wird sie automatisch erstellt und mit absolut willkürlichen Zahlen gefüllt, die das Programm aus den Messwerten des Systemtimers, Verzögerungen von Tastenanschlägen und Mausbewegungen erhält.

Der Generator „seed“ die Datei jedes Mal, wenn sie verwendet wird, und mischt dabei teilweise altes Material mit neuem Material, das von einer bestimmten Tageszeit und anderen willkürlichen Indikatoren stammt. Als Gammagenerator wird ein symmetrischer Verschlüsselungsalgorithmus verwendet. Die Datei enthält sowohl Ausgangsdaten des Zufallsgenerators als auch Zufallsschlüsseldaten, die zum Festlegen des anfänglichen internen Zustands des Generators verwendet werden.

Die PNG-Datei muss vor Kompromittierung geschützt werden, um das Risiko der Berechnung Ihrer vorherigen oder zukünftigen Sitzungsschlüssel daraus zu verringern. Ein potenzieller Angreifer müsste hart arbeiten, um etwas Nützliches aus dieser Datei zu extrahieren, da sie vor und nach jeder Verwendung kryptografisch gemischt wird. Es wäre jedoch nicht überflüssig, es davor zu schützen, in die falschen Hände zu geraten. Wenn möglich, machen Sie die Datei nur für Sie selbst zugänglich. Wenn dies nicht möglich ist, gestatten Sie anderen nicht das einfache Kopieren von Dateien von Ihrem Computer.

Informationen zu Nachrichtenzusammenfassungen

Ein Message Digest ist eine kompakte 160- oder 128-Bit-Zusammenfassung Ihrer Prototyp-Nachricht oder Dateiprüfsumme. Sie können es sich als Fingerabdruck einer Nachricht oder Datei vorstellen. Der Message Digest ist ein „Spiegelbild“ des Prototyps: Werden die Originaldaten in irgendeiner Weise verändert, wird daraus ein völlig anderer Digest berechnet. Auf diese Weise können Sie selbst kleinste Änderungen erkennen, die ein Angreifer an einer Nachricht vorgenommen hat. Der Digest wird mithilfe einer kryptografisch starken Einweg-Hash-Funktion generiert. Es ist rechnerisch unmöglich, eine Dummy-Nachricht zu erstellen, die einen Digest erzeugt, der mit dem Digest der ursprünglichen Nachricht identisch ist 5 . In dieser Hinsicht ist ein Message Digest viel besser als eine Prüfsumme (CRC32 oder CRC64), da es recht einfach ist, zwei verschiedene Nachrichten zu erstellen, die dieselbe Prüfsumme ergeben. Aber wie bei der Prüfsumme gibt es keine Möglichkeit, die ursprünglichen Vorabbilddaten aus dem Digest wiederherzustellen.

Der in PGP 5.0 und höher verwendete starke Einweg-Hash-Funktionsalgorithmus wird aufgerufen SHA-1, was sicheren Hash-Algorithmus bedeutet; Es wurde von der NSA für das US-amerikanische National Institute of Standards and Technology (NIST) entwickelt. SHA-1 ist ein 160-Bit-Hash-Algorithmus. Manche Menschen stehen allen NSA-Entwicklungen misstrauisch gegenüber, da die NSA für die elektronische Aufklärung, die Signalaufklärung und das Knacken von Codes zuständig ist. Bedenken Sie jedoch, dass die NSA kein Interesse daran hat, Unterschriften zu fälschen. Die Regierung und ihre Sicherheitskräfte werden viel mehr von einem guten Standard fälschungssicherer digitaler Signaturen profitieren, die es niemandem erlauben, auf sie zu verzichten. Darüber hinaus wurde SHA-1 in der öffentlichen Literatur veröffentlicht und nach umfangreichen Recherchen der weltweit führenden Hash-Funktions-Kryptografen einstimmig für sein äußerst erfolgreiches Design gelobt. Es verfügt über einige architektonische Innovationen, die alle zuvor beobachteten Probleme von Einweg-Hash-Funktionen überwinden, die jemals von der zivilen Kryptographie-Community geschaffen wurden. Alle neueren Versionen von PGP verwenden SHA-1 als Hash-Algorithmus, um Signaturen mit neuen DSA-Schlüsseln zu generieren, die dem NIST Digital Signature Standard (DSS) entsprechen. Aus Gründen der Abwärtskompatibilität verwenden neue Versionen von PGP immer noch MD5 zum Signieren mit RSA-Schlüsseln, weil Alte Versionen von PGP verwenden für die Arbeit mit digitalen Signaturen nur den MD5-Algorithmus.

In frühen Versionen von PGP war der Hash-Funktionsalgorithmus MD5, Message Digest Algorithm, öffentlich veröffentlicht von RSA Data Security, Inc. MD5 ist ein Hash-Algorithmus mit 128-Bit-Ausgabe. Im Jahr 1996 wurde MD5 vom deutschen Kryptographen Hans Dobbertin praktisch geknackt. Obwohl der Algorithmus nicht vollständig versagt hat, wurden so schwerwiegende Mängel festgestellt (die Tendenz der Komprimierungsfunktion des Algorithmus, Kollisionen zu verursachen), dass jetzt niemandem mehr empfohlen wird, ihn zur Generierung digitaler Signaturen zu verwenden. Weitere Arbeiten in diesem Bereich werden es sicherlich ermöglichen, es vollständig zu hacken, was die freie Fälschung elektronischer Signaturen ermöglichen wird. Wenn Sie Ihre elektronische Signatur nicht eines Tages auf einem gefälschten Geständnis entdecken möchten, sollten Sie die neuen Schlüssel DSA und RSA v4 als bevorzugte Methode zur Generierung digitaler Signaturen verwenden, da diese SHA-1 als kryptografisch starkes Ein- Weg Hash-Funktion.

So schützen Sie Ihren öffentlichen Schlüssel vor Spoofing

In einer Kryptosystemumgebung mit öffentlichen Schlüsseln müssen Sie öffentliche Schlüssel nicht vor Gefährdung schützen. Im Gegenteil, es ist viel besser, wenn sie weit verbreitet sind. Es ist jedoch sehr wichtig, sie vor Fälschungen zu schützen, damit Sie immer sicher sein können, dass ein bestimmter öffentlicher Schlüssel wirklich der Person gehört, deren Name in den Zertifikatsinformationen angegeben ist. Dies ist der schwächste Punkt von Public-Key-Kryptosystemen und ihre größte Schwachstelle. Stellen wir uns zunächst einen möglichen Vorfall vor und überlegen wir dann, wie wir ihn verhindern können.

Nehmen wir an, Sie müssen Alice eine geheime Nachricht senden. Sie laden das Zertifikat und den öffentlichen Schlüssel vom Hinterlegungsserver herunter, verschlüsseln dann den Brief mit diesem Schlüssel und versenden ihn per E-Mail.

Unglücklicherweise für Sie und Alice hat der Angreifer Mallory sein eigenes Schlüsselpaar mit Alices Identifikationsinformationen im Zertifikat (Name, E-Mail) generiert, den Server gehackt und stillschweigend Alices echten öffentlichen Schlüssel durch seine eigene Fälschung ersetzt. Nichtsahnend haben Sie Mallorys gefälschten Schlüssel anstelle von Alices öffentlichem Schlüssel verwendet, denn alles sah plausibel aus, weil auf dem gefälschten Schlüssel Alices Identifikationsinformationen standen. Jetzt kann Mallory die für Alice bestimmte Nachricht abfangen und entschlüsseln, da er über den entsprechenden privaten Schlüssel verfügt. Er kann den Brief sogar mit Alices echtem Schlüssel neu verschlüsseln und an seinen Bestimmungsort senden, ohne dass jemand etwas Verdächtiges bemerkt. Darüber hinaus kann er seinen eigenen privaten Schlüssel verwenden, um Signaturen zu signieren, die angeblich Alice gehören, da jeder seinen öffentlichen Dummy-Schlüssel verwendet, um sie zu überprüfen.

Die einzige Möglichkeit, dieses Problem zu vermeiden, besteht darin, die Manipulation öffentlicher Schlüssel zu vermeiden. Dies ist einfach, wenn Sie den öffentlichen Schlüssel von Alice direkt persönlich von ihr erhalten haben, kann jedoch recht problematisch sein, wenn sie Tausende von Kilometern entfernt oder im Moment einfach nicht erreichbar ist.

Wahrscheinlich können Sie Alices Schlüssel von Ihrem gemeinsamen Freund David erhalten, der eine echte Kopie ihres öffentlichen Schlüssels besitzt. David kann den öffentlichen Schlüssel von Alice mit seinem eigenen privaten Schlüssel signieren und so für dessen Authentizität bürgen.

Dadurch kann David das Schlüsselzertifikat zertifizieren und so anzeigen, dass Alices Schlüssel nicht manipuliert wurde. Gleichzeitig erfordert die Überprüfung der Unterschrift des Bürgen auf dem Zertifikat, dass Sie über eine authentische Kopie von Davids öffentlichem Schlüssel verfügen. David wird Alice wahrscheinlich auch eine zuverlässige Kopie Ihres Schlüssels zur Verfügung stellen können. So wird er zu einem vertrauenswürdigen Vermittler und Garanten zwischen Ihnen und Alice.

Dieses signierte Public-Key-Zertifikat für Alice kann von ihr oder David auf den Treuhandserver hochgeladen werden, sodass Sie es jederzeit abrufen können. Sobald Sie das Zertifikat herunterladen, überprüfen Sie die Signatur mit Davids öffentlichem Schlüssel und können sicher sein, dass es sich tatsächlich um Alices echten öffentlichen Schlüssel handelt. Kein Betrüger kann Sie täuschen, indem er seinen gefälschten Schlüssel als Alices Schlüssel ausgibt, da niemand Davids Unterschrift fälschen kann, die diesen Schlüssel bestätigt.

Eine bekannte und angesehene Person kann sich sogar auf Vermittlungs- und Vertretungsdienste zwischen verschiedenen Benutzern spezialisieren, indem sie deren öffentliche Schlüsselzertifikate signiert. Diese vertrauenswürdige Person kann als Zertifizierungsstelle bezeichnet werden. Bei einem digitalen Zertifikat eines öffentlichen Schlüssels, das die Signatur dieser Zertifizierungsstelle enthält, kann a priori davon ausgegangen werden, dass es authentisch ist und tatsächlich dem Benutzer gehört, dessen Identität in den Zertifikatsdetails angegeben ist. Jeder Benutzer, der an einem solchen Web of Trust teilnehmen möchte, benötigt zur Überprüfung der Signaturen lediglich eine gültige Kopie des öffentlichen Schlüssels der Zertifizierungsstelle. In manchen Fällen kann eine Zertifizierungsstelle auch als Depotserver fungieren und es Netzwerkbenutzern ermöglichen, öffentliche Schlüssel von ihr anzufordern; Es ist jedoch nicht erforderlich, dass der Depotserver die Schlüssel zertifiziert.

Eine vertrauenswürdige zentrale Zertifizierungsstelle eignet sich besonders für große Unternehmen und Regierungsbehörden mit einem einzigen Verwaltungssystem. Einige Organisationen verwenden CA-Hierarchien.

In einer dezentraleren Umgebung wäre die Möglichkeit für alle Benutzer, als Vertreter und vertrauenswürdige Bürgen ihrer Freunde und Kollegen zu fungieren, einer zentralen Quelle für die Schlüsselzertifizierung vorzuziehen.

Eines der attraktiven Merkmale von PGP besteht darin, dass es sowohl in einer zentralen Umgebung mit einer Zertifizierungsstelle als auch in einer eher dezentralen Umgebung, in der Benutzer ihre persönlichen Schlüssel unabhängig austauschen, gleichermaßen effektiv implementiert werden kann.

Eine Reihe von Maßnahmen zum Schutz öffentlicher Schlüssel vor Fälschung ist das schwierigste Problem bei der praktischen Implementierung von Kryptosystemen mit öffentlichen Schlüsseln. Dies ist die „Achillesferse“ aller asymmetrischen Kryptographie, und die meisten PGP-Mechanismen sind speziell auf die Lösung dieses Hauptproblems ausgerichtet.

Verwenden Sie den öffentlichen Schlüssel einer anderen Person erst, wenn Sie absolut sicher sind, dass es sich nicht um eine Fälschung handelt und dass es sich um den echten Schlüssel der Person handelt, deren Identifikation in den Zertifikatsinformationen aufgeführt ist. Sie können sich der Echtheit des Schlüssels sicher sein, wenn Sie ihn direkt vom Eigentümer persönlich erhalten haben oder wenn das Zertifikat von einer Person Ihres Vertrauens unterzeichnet wurde, sofern Sie über eine zuverlässige Kopie des Schlüssels des Bürgen verfügen. Darüber hinaus müssen die Zertifikatsinformationen sowohl den Vor- als auch den Nachnamen des Benutzers widerspiegeln und nicht nur den Vornamen des Benutzers.

Unabhängig davon, wie erfahren Sie sind, treffen Sie Vorsichtsmaßnahmen und verlassen Sie sich nicht auf die Authentizität eines öffentlichen Schlüssels, der von einem Depotserver oder einer Website heruntergeladen wurde, es sei denn, er wurde von einer Person Ihres Vertrauens zertifiziert. Dieser nicht zertifizierte öffentliche Schlüssel könnte von jedem gefälscht oder ersetzt werden, möglicherweise sogar vom Systemadministrator des Servers oder der Website.

Wenn Sie aufgefordert werden, den Schlüssel einer anderen Person zu signieren, stellen Sie zunächst sicher, dass dieser tatsächlich der in der Zertifikatsidentifikation genannten Person gehört, da die Signatur auf dem Public-Key-Zertifikat Ihre Garantie dafür ist, dass er echt ist und der angegebenen Person gehört. Jeder, der Ihnen vertraut, wird diesen öffentlichen Schlüssel als gültig akzeptieren, da er Ihre Zertifizierungssignatur trägt. Verlassen Sie sich nicht auf Spekulationen und die Meinung anderer: Signieren Sie einen öffentlichen Schlüssel nur, wenn Sie persönlich und direkt davon überzeugt sind, dass er dem erklärten Eigentümer gehört. Signieren Sie vorzugsweise nur die Schlüssel, die Sie direkt von ihren wahren Besitzern erhalten haben.

Um ein Schlüsselzertifikat zu signieren, müssen Sie sich seiner Authentizität viel sicherer sein, als es persönlich zum Verschlüsseln von Nachrichten zu verwenden. Zur Feststellung der Echtheit des Schlüssels für den ausschließlich persönlichen Gebrauch reicht die Unterschrift eines vertrauenswürdigen Bürgen aus. Um einen Schlüssel jedoch selbst zu signieren, bedarf es einer unabhängigen, direkten Überzeugung darüber, wem der Schlüssel tatsächlich gehört. Möglicherweise möchten Sie den Besitzer anrufen (stellen Sie sicher, dass Sie mit der richtigen Person sprechen) und ihn den Fingerabdruck des Schlüssels lesen lassen, um sicherzustellen, dass der Schlüssel, den Sie besitzen, eine exakte Kopie des Originals ist.

Bedenken Sie: Ihre Unterschrift auf dem Schlüsselzertifikat garantiert kein Vertrauen in den Eigentümer; es garantiert nur die Zuverlässigkeit (Authentizität) dieses öffentlichen Schlüssels. Sie riskieren Ihren Ruf nicht, indem Sie den Schlüssel eines Soziopathen signieren, wenn Sie völlig davon überzeugt sind, dass der Schlüssel wirklich ihm gehört. Andere Menschen werden der Echtheit des Schlüssels vertrauen, weil er von Ihnen signiert ist (vorausgesetzt, sie vertrauen Ihnen), aber sie werden seinem Besitzer als Person nicht vertrauen. Der Integrität eines Schlüssels zu vertrauen und seinem Besitzer zu vertrauen, ist nicht dasselbe.

Es ist sinnvoll, Ihren öffentlichen Schlüssel zusammen mit einer Reihe von Zertifizierungssignaturen mehrerer Bürgen aufzubewahren, in der Hoffnung, dass die meisten Menschen der Zertifizierungssignatur von mindestens einem von ihnen vertrauen. Sie können Ihren Schlüssel mit einem Satz Signaturen in verschiedenen Depots hinterlegen. Wenn Sie den öffentlichen Schlüssel einer anderen Person signieren, geben Sie eine Kopie davon mit Ihrer Unterschrift an den Eigentümer zurück; Auf diese Weise können Sie als dessen Vertreter auftreten.

Treffen Sie alle Vorsichtsmaßnahmen, um sicherzustellen, dass niemand Ihre eigene öffentliche Schlüsselbunddatei manipulieren kann. Die Überprüfung der Signaturen des neuen Schlüsselzertifikats hängt vollständig von der Integrität der vertrauenswürdigen öffentlichen Schlüssel ab, die sich bereits in Ihrem Schlüsselbund befinden. Halten Sie das Band unter körperlicher Kontrolle; es empfiehlt sich, ihn sowie den privaten Schlüssel auf dem eigenen PC zu speichern und nicht auf einem Mehrbenutzersystem mit freiem Zugriff; Dies ist notwendig, um das Paket vor Fälschung und nicht vor Kompromittierung zu schützen. Bewahren Sie eine aktuelle, vertrauenswürdige Sicherungskopie Ihres öffentlichen und privaten Schlüsselbunds auf einem schreibgeschützten externen Speichergerät, beispielsweise einer CD, auf.

Da Ihr eigener öffentlicher Schlüssel die letzte Quelle für die direkte oder indirekte Überprüfung der Authentizität aller anderen Schlüssel im Schlüsselbund ist, ist es der Schlüssel, der am wichtigsten vor Fälschungen geschützt ist. Es ist besser, wenn Sie eine Sicherungskopie davon erstellen und diese auf einem zuverlässigen Medium speichern.

Die Logik von PGP geht davon aus, dass Sie Ihre Schlüsselbunde, PGP selbst und das System als Ganzes vollständig physisch sicher aufbewahren. Wenn ein Angreifer Zugriff auf den Computer erhält, könnte er theoretisch das Programm ändern und alle Mechanismen zur Erkennung ungültiger Schlüssel unwirksam machen.

Eine etwas kompliziertere Möglichkeit, den gesamten öffentlichen Schlüsselbund vor Fälschungen zu schützen, besteht darin, seine Datei mit einem privaten Schlüssel zu signieren. Sie können dies tun, indem Sie erstellen abnehmbare Signatur (abgelöste Signatur)-Datei und überprüfen Sie diese regelmäßig.

Wie PGP die Authentizität von Schlüsseln bestimmt

Bevor Sie mit diesem Absatz fortfahren, lesen Sie bitte den vorherigen Abschnitt „So schützen Sie Ihren öffentlichen Schlüssel vor Spoofing“.

PGP verfolgt, welche der öffentlichen Schlüssel auf dem Schlüsselbund durch die Signaturen Ihrer vertrauenswürdigen Bürgen zertifiziert sind. Sie müssen dem Programm lediglich mitteilen, wen Sie als vertrauenswürdige Garanten betrachten, indem Sie deren öffentliche Schlüssel mit Ihrem eigenen, bedingungslos zuverlässigen privaten Schlüssel signieren. Hier übernimmt PGP die Arbeit und zertifiziert automatisch alle anderen Schlüssel, die von den von Ihnen festgelegten Garantiegebern signiert sind; Selbstverständlich können Sie weitere Schlüssel auch weiterhin selbst zertifizieren.

PGP verwendet zwei parallele Kriterien zur Beurteilung der Gültigkeit öffentlicher Schlüssel. Verwechseln Sie diese nicht:

    Gehört der Schlüssel dem vorgesehenen Eigentümer? Mit anderen Worten: Ist es durch eine vertrauenswürdige Signatur zertifiziert?

    Gehört der Schlüssel der von Ihnen zur Beglaubigung anderer Schlüssel bevollmächtigten Person (Garant)?

PGP berechnet die Antwort auf Frage 1 automatisch. Die Antwort auf Frage 2 stellen Sie dem Programm selbst zur Verfügung. Wenn Sie Frage 2 beantworten, kann PGP die Antwort auf Frage 1 für alle Schlüssel berechnen, die von dem von Ihnen festgelegten Unterzeichner signiert wurden.

Von einem vertrauenswürdigen Bürgen zertifizierte Schlüssel gelten als authentisch. Der Schlüssel des vertrauenswürdigsten Garantiegebers muss entweder von Ihnen persönlich oder von einem anderen vertrauenswürdigen Garantiegeber authentifiziert werden.

PGP ermöglicht es, für jeden Bürgen eine der Vertrauensabstufungen festzulegen. Der Grad des Vertrauens in einen Schlüsselinhaber, der als Bürge fungiert, sollte nicht nur Ihre Einschätzung der Integrität dieser Person widerspiegeln, sondern auch Ihre Einschätzung ihrer Kompetenz im Verständnis von Schlüsselverwaltungs- und Zertifizierungsverfahren. Sie können den Pegel einstellen Mangel an Vertrauen, Teilvertrauen oder volles Vertrauen Benutzer in der Identität anderer öffentlicher Schlüssel. Dieser Indikator wird zusammen mit seinem Schlüssel auf Ihrem Schlüsselbund gespeichert, aber beim Exportieren des Schlüssels aus dem Schlüsselbund kopiert PGP ihn nicht, da Ihre persönliche Meinung als vertraulich gilt.

Durch die Berechnung der Vertrauenswürdigkeit eines öffentlichen Schlüssels überprüft PGP die Vertrauensstufen aller Signaturen, die ihn zertifizieren. Anschließend wird eine allgemeine Vertrauenswürdigkeitsbewertung ausgegeben: Beispielsweise werden zwei teilweise vertrauenswürdige Signaturen als gleichwertig mit einer vollständig vertrauenswürdigen Signatur betrachtet. Der Skeptizismus des Programms ist anpassbar: Sie können PGP so konfigurieren, dass zur Authentifizierung eines Schlüssels zwei vollständig vertrauenswürdige oder drei teilweise vertrauenswürdige Signaturen usw. erforderlich sind. 6

Ihr eigener öffentlicher Schlüssel ist grundsätzlich gültig. Das Programm stellt fest, dass der öffentliche Schlüssel Ihnen gehört, indem es den entsprechenden privaten Schlüssel im Schlüsselbund findet. PGP geht außerdem davon aus, dass Sie sich bei der Zertifizierung anderer Schlüssel voll und ganz zutrauen.

Im Laufe der Zeit sammeln Sie die Schlüssel von Korrespondenten auf einem Haufen, von denen Sie beschließen, das Recht auf Garantie einzuräumen. Andere Nutzer benennen ihre eigenen Bürgen. Jeder wird nach und nach Sätze von Authentifizierungssignaturen mit seinen Zertifikaten sammeln und verteilen, in der Hoffnung, dass jeder potenzielle Korrespondent mindestens einem oder zwei davon vertraut. All dies wird letztendlich ein dezentrales, fehlertolerantes Vertrauensnetzwerk aller öffentlichen Schlüssel des öffentlichen Informationssystems bilden.

Dieser einzigartige dezentrale Ansatz steht in krassem Gegensatz zu Standardsystemen zur Verwaltung öffentlicher Schlüssel, die von zielstrebigen öffentlichen und privaten konservativen Organisationen wie Internet Privacy Enhanced Mail (PEM) entwickelt wurden und auf zentraler Kontrolle und einem auferlegten vertikalen Vertrauenssystem basieren. Standardmodelle basieren auf einer Hierarchie von Zertifizierungsstellen, die für Sie entscheiden, wem Sie vertrauen können. Eine verteilte probabilistische Methode zur Bestimmung der Authentizität öffentlicher Schlüssel ist der Eckpfeiler der Schlüsselverwaltungsarchitektur unseres Programms. PGP bringt Sie an die Spitze Ihrer eigenen Zertifizierungspyramide und gibt Ihnen die Möglichkeit, selbst zu entscheiden, wer vertrauenswürdig ist und wer nicht. PGP ist für Leute konzipiert, die ihre Fallschirme lieber selbst packen.

Bedenken Sie, dass die Betonung dieses verteilten Massenansatzes nicht bedeutet, dass PGP nicht in stärker hierarchisch strukturierten Verwaltungsschemata implementiert werden kann. Benutzer großer Unternehmen können beispielsweise davon profitieren, wenn eine zentrale Person (Person oder Abteilung) die Schlüssel aller Mitarbeiter zertifiziert. PGP behandelt dieses zentralisierte Szenario als eine spezielle vereinfachte Form seines eigenen, universelleren Vertrauensmodells.

So schützen Sie Ihren privaten Schlüssel vor Gefährdung

Bewahren Sie Ihren privaten Schlüssel und Ihre Passphrase sorgfältig auf! Wenn der private Schlüssel kompromittiert ist, sollten Sie dies möglichst schnell allen Interessenten mitteilen, bevor der Angreifer mit der Fälschung Ihrer elektronischen Signatur beginnt. Beispielsweise könnte ein Angreifer den Schlüssel verwenden, um gefälschte Public-Key-Zertifikate zu signieren, was für viele Benutzer große Probleme verursachen könnte, insbesondere wenn Ihre Signatur unter ihnen eine hohe Autorität hat. Und was am wichtigsten ist: Ein kompromittierter privater Schlüssel birgt das Risiko, dass alle Ihre vertraulichen Nachrichten und Dateien kompromittiert werden.

Halten Sie zunächst Ihren privaten Schlüssel unter vollständiger physischer Kontrolle. Sie können es auf Ihrem Heimcomputer oder in einem Laptop speichern, den Sie bei sich tragen. Wenn Sie an einem Bürocomputer arbeiten, über den Sie keine ständige Kontrolle haben, bewahren Sie Ihre öffentlichen und privaten Schlüsselbunde auf einem schreibgeschützten externen Speichergerät wie einer Diskette oder einer Smartcard auf und vergessen Sie ihn nie im Büro du gehst nach Hause. Bewahren Sie den privaten Schlüssel niemals auf einem Mehrbenutzercomputer auf, z. B. einem UNIX-Einwahlsystem. Ein Angreifer könnte die Modemverbindung abhören, die Passphrase abfangen und dann an den privaten Schlüssel gelangen. Verwenden Sie Ihren privaten Schlüssel nur auf einer Maschine, die unter Ihrer vollständigen physischen Kontrolle steht.

Speichern Sie Ihr Passwort nicht auf demselben Computer wie Ihren privaten Schlüssel! Die Passphrase und den Schlüssel selbst auf demselben PC aufzubewahren ist genauso gefährlich wie die Aufbewahrung Ihrer PIN in derselben Brieftasche wie Ihre Bankkarte. Stellen Sie sich vor, was passieren würde, wenn jemand Zugriff auf eine Festplatte erhalten würde, die sowohl den privaten Schlüssel als auch die Passphrase enthält. Der sicherste Ort zum Speichern eines Schlüsselsatzes ist natürlich Ihr eigener Kopf. Wenn Sie der Meinung sind, dass es sich immer noch lohnt, den Schlüsselsatz aufzuschreiben, verstecken Sie die Aufnahme und bewahren Sie sie sicher auf, vielleicht sogar sicherer als den Schlüssel selbst.

Erstellen Sie mehrere Sicherungskopien des privaten Schlüssels auf verschiedenen Medien. Denken Sie daran, dass Sie zwar nur über eine Kopie des privaten Schlüssels verfügen, aber bei Verlust alle Kopien des öffentlichen Schlüssels, die Sie weltweit verteilt haben, unbrauchbar werden und alle verschlüsselten Informationen unwiederbringlich verloren gehen.

Der dezentrale, nicht-institutionelle Ansatz von PGP zur Verwaltung öffentlicher Schlüssel hat sowohl Vor- als auch Nachteile: Sie können sich nicht auf eine einzige Zertifikatssperrliste verlassen, was es schwieriger macht, die Auswirkungen der Kompromittierung privater Schlüssel zu begrenzen. Alles, was Sie tun können, ist, die Nachricht zu verbreiten und zu hoffen, dass jeder davon erfährt.

Wenn das Schlimmste passiert – der private Schlüssel und sein Passwort sind kompromittiert (hoffentlich haben Sie das irgendwie herausgefunden) – müssen Sie sofort ein Schlüsselwiderrufszertifikat ausstellen ( Schlüsselwiderrufszertifikat, KRC). Es dient als Vorsichtsmaßnahme, um die Verwendung eines widerrufenen öffentlichen Schlüssels zu blockieren. Sie können ein KRC-Zertifikat mit dem Befehl „Revoke“ des PGPkeys-Managers ausstellen oder Ihren Designated Revoker darum bitten. Anschließend müssen Sie dieses Zertifikat an den Repository-Server senden. Jeder potenzielle Korrespondent, der das Zertifikat herunterlädt, kann Ihren öffentlichen Schlüssel weder absichtlich noch versehentlich verwenden: PGP erlaubt Ihnen nicht, ihn zur Verschlüsselung zu verwenden, und beim Signaturvergleich werden Sie darüber informiert, dass der Schlüssel widerrufen wurde. Sie können nun ein neues Schlüsselpaar generieren und Ihren neuen öffentlichen Schlüssel online veröffentlichen.

Was passiert, wenn Sie Ihren privaten Schlüssel verloren haben?

Um einen öffentlichen Schlüssel im Normalfall zu widerrufen, müssen Sie den Befehl „Revoke“ im PGPkeys-Manager verwenden; Dadurch wird ein KRC-Zertifikat ausgestellt, das mit dem entsprechenden privaten Schlüssel signiert ist.

Aber was tun, wenn der private Schlüssel verloren geht, zerstört wird oder Sie einfach den Schlüsselsatz vergessen haben? Sie können den öffentlichen Schlüssel nicht selbst widerrufen, da zum Signieren des Widerrufzertifikats ein privater Schlüssel erforderlich ist, den Sie nicht mehr haben. Sofern Sie keinen „vertrauenswürdigen Widerrufer“ haben, der auf Ihren Wunsch hin ein KRC-Zertifikat ausstellen kann, müssen Sie jede Person, die den öffentlichen Schlüssel signiert hat, persönlich bitten, ihre Signatur darauf zu widerrufen. Wenn dann jemand versucht, ihn zu verwenden und sich dabei auf die Meinung der Bürgen verlässt, wird er gewarnt, dem Zustand Ihres öffentlichen Schlüssels nicht zu vertrauen.

Hüten Sie sich vor dem Balsam Kanaans

Beim Kauf eines neuen kryptografischen Produkts stellt sich immer die Frage: Kann man ihm vertrauen? Auch wenn man den Quellcode des Programms persönlich studiert hat, verfügt nicht jeder über eine mathematische Ausbildung, um die Zuverlässigkeit der Implementierung des Kryptosystems beurteilen zu können. Und selbst wenn Sie ein erfahrener Kryptograf sind, können kleinere Schwachstellen in Algorithmen unbemerkt bleiben.

In den frühen 1970er Jahren, noch während meines Studiums, entwickelte ich ein meiner Meinung nach brillantes Verschlüsselungsschema. Ein einfacher Strom aus Pseudozufallszahlen wurde mit einem Strom aus Klartext kombiniert, wodurch ein Chiffretext entstand. Dies sollte ihn gegen jede statistische Analyse resistent machen und selbst die mächtigsten Geheimdienste daran hindern, den Code zu knacken. Ich fühlte mich so selbstgefällig!

Jahre später entdeckte ich dasselbe Muster in einer Reihe von Ratgeberartikeln und Einführungsmaterialien in die Kryptographie. Wie schön, dass andere Kryptologen die gleiche Idee hatten! Leider wurde das Schema als einfache Hausaufgabe präsentiert, bei der grundlegende kryptoanalytische Techniken verwendet wurden, um es auf triviale Weise zu knacken. Das ist meine geniale Idee...

Aus dieser bitteren Erfahrung habe ich gelernt, wie einfach es ist, einen Verschlüsselungsalgorithmus zu einem falschen Sicherheitsgefühl zu entwickeln. Den meisten Menschen ist nicht bewusst, wie schwierig es ist, einen Algorithmus zu erfinden, der einem anhaltenden Angriff eines professionellen und einfallsreichen Gegners standhalten kann. Viele mittelmäßige Entwickler haben ebenso ineffektive Verschlüsselungsschemata entwickelt (oft dasselbe Schema), und einige davon wurden in kommerzielle Softwareprodukte integriert, die für gutes Geld an Tausende ahnungsloser Benutzer verkauft wurden.

Das ist dasselbe, als würde man Autosicherheitsgurte verkaufen, die schön und bequem sind, sich aber selbst beim mildesten Crashtest sofort lösen. Sich auf sie zu verlassen ist noch schlimmer, als überhaupt keinen Sicherheitsgurt anzulegen. Niemand wird erkennen, dass er nutzlos ist, bis er in einen echten Autounfall gerät. Durch die Verwendung eines schwachen Kryptoprodukts können Sie unwissentlich wertvolle Informationen gefährden, während Sie dies nicht getan hätten, wenn Sie überhaupt keine kryptografischen Tools hätten. Möglicherweise erfahren Sie nie, dass Ihre Daten kompromittiert wurden.

Manchmal implementieren kommerzielle Produkte den Federal Data Encryption Standard (DES), eine sehr gute Blockverschlüsselung (abgesehen davon, dass der Schlüssel zu kurz ist), die von der Regierung für den kommerziellen Gebrauch empfohlen wird (jedoch nicht für geheime Informationen, was ziemlich seltsam ist. Hmmm). DES kann in mehreren Modi arbeiten, von denen einige besser sind als andere. Die Regierung weist ausdrücklich darauf hin, beim Versenden von Nachrichten nicht das einfachste und schwächste System zu verwenden – ein elektronisches Codebuch ( elektronisches Codebuch, ECB). Stattdessen bietet es robustere und umfassendere Gammamodi mit geschlossenem Regelkreis ( Chiffre-Feedback, CFB) und Verkettung von Chiffretextblöcken ( Chiffrierblockverkettung, CBC).

Leider verwendeten die meisten kommerziellen Pakete, die ich Anfang der 1990er Jahre untersuchte, als ich PGP zum ersten Mal veröffentlichte, den ECB-Modus. In Gesprächen mit einigen der Autoren solcher Entwicklungen antworteten sie, dass sie noch nie von den CBC- oder CFB-Modi gehört hätten und nichts über die Schwächen der EZB wüssten. Dieselben Produkte implementieren manchmal unzureichende und unsichere Schlüsselverwaltungsprotokolle. Die Tatsache, dass sie noch nicht einmal die Grundlagen der Kryptographie studiert haben, um solche Grundkonzepte zu verstehen, ist überhaupt nicht ermutigend. Darüber hinaus enthält solche Software häufig einen alternativen, schnelleren Algorithmus, der anstelle des langsameren DES verwendet werden kann. Normalerweise hält der Entwickler des Programms seinen eigenen schnellen Algorithmus für genauso zuverlässig wie DES, aber nach einem Gespräch mit ihm fand ich meist heraus, dass es sich nur um eine Variation des Themas meiner eigenen „brillanten“ Erfindung aus meiner Studienzeit handelte. Er versteht vielleicht nicht einmal, wie sein Algorithmus funktioniert, aber er versichert mir leidenschaftlich, dass es sich um ein großartiges Schema handelt, auf das man sich verlassen kann. Ich weiß, dass er seinen Algorithmus für fehlerfrei hält, aber wie kann ich seine Zuverlässigkeit testen, ohne ihn zu studieren?

Fairerweise muss man erwähnen, dass Unternehmen, die sich auf Kryptotechnologien spezialisiert haben, solche schrecklich schwachen Programme nicht veröffentlichen.

Aber selbst wirklich gute Programme, die DES korrekt verwenden, haben immer noch Probleme. Normales DES verwendet einen 56-Bit-Schlüssel, der nach heutigen Maßstäben zu kurz ist und auf speziellen Hochgeschwindigkeitsmaschinen leicht mit roher Gewalt geknackt werden kann. Die Lebensdauer von DES ist zu Ende, und auch die Lebensdauer aller seiner Implementierungen ist zu Ende.

Es gibt eine Firma namens AccessData, die ein sehr günstiges Programm verkauft, das die in WordPerfect, Lotus 1-2-3, MS Excel, Symphony, Quattro Pro, Paradox, MS Word und PKZIP integrierten Verschlüsselungsschemata knackt. Es errät nicht nur das Passwort, sondern führt eine echte Kryptoanalyse durch. Manche Leute kaufen es, wenn sie Passwörter für ihre eigenen Dateien vergessen. Auch Strafverfolgungsbehörden kaufen es, um Akten auszulesen, die bei Durchsuchungen beschlagnahmt werden. Ich habe mit Eric Thompson, dem Autor des Programms, gesprochen und er gab zu, dass es nur einen Bruchteil einer Sekunde dauert, ein Passwort zu knacken, aber er fügte ein paar Verzögerungsschleifen hinzu, um den Prozess zu verlangsamen, damit er für den Käufer nicht so einfach erscheint .

Wenn es um sichere Telefonie geht, sind Ihre Möglichkeiten begrenzt. Spitzenkandidat ist die zwei- bis dreitausend Dollar teure STU-III Secure Telephone Unit, die von Motorola und AT&T für geheime Regierungsoperationen entwickelt wurde. Es verfügt über eine starke Verschlüsselung, für den Kauf dieser Version ist jedoch eine spezielle staatliche Lizenz erforderlich. Es gibt eine kommerzielle Version von STU-III mit reduzierter kryptografischer Stärke für die Bedürfnisse der NSA; Es gibt auch eine noch abgeschwächte Exportversion. Es gibt auch den 1.200 US-Dollar teuren Surity 3600 von AT&T, der den berüchtigten Clipper-Chip der Regierung mit hinterlegten Schlüsseln zum Abhören nutzt. Es gibt natürlich analoge (nicht digitale) Sprachverschlüsseler, die in Katalogen von „Spionage“-Produkten zu finden sind; Aus kryptografischer Sicht sind das wirklich nutzlose Spielzeuge, dennoch werden sie als „sichere“ Kommunikationsprodukte an Leute verkauft, die es einfach nicht besser wissen. 7

In mancher Hinsicht ähnelt die Kryptographie der Pharmaindustrie. Seine Zuverlässigkeit scheint von entscheidender Bedeutung zu sein. Schlechtes Penicillin sieht nicht anders aus als gutes. Wenn mit Ihrem Texteditor etwas nicht stimmt, werden Sie es sehen, aber wie bestimmen Sie die Stärke Ihrer kryptografischen Software? Der von einem schwachen Algorithmus erzeugte Chiffretext sieht genauso überzeugend aus wie der von einem starken Algorithmus erzeugte Chiffretext. In diesem Fall steckt viel Balsam Kanaans. 8 Es gibt viele Heiltränke. Im Gegensatz zu den Drogenhändlern der Antike haben die heutigen Entwickler meist keine Ahnung, dass ihre Produkte der Balsam Kanaans sind. Sie sind zwar gute Software-Ingenieure, kennen sich aber in der Regel nicht einmal mit wissenschaftlichen Arbeiten zur Kryptographie aus. Aber sie glauben weiterhin, dass sie ein gutes Kryptoprodukt schreiben können. Warum nicht? Schließlich scheint es intuitiv einfach zu sein und ihre Programme scheinen normal zu funktionieren.

Jeder, der glaubt, einen fehlerfreien kryptografischen Algorithmus erfunden zu haben, ist entweder ein unglaublich seltenes Genie oder ein naiver Narr. Leider muss ich mich manchmal mit Möchtegern-Kryptographen auseinandersetzen, die ihre eigenen „Verbesserungen“ an PGP vornehmen wollen, indem sie einen Algorithmus ihres eigenen Designs hinzufügen.

Ich erinnere mich an ein Gespräch, das ich 1991 mit Brian Snow, einem hochrangigen Kryptographen der NSA, führte. Er sagte, er hätte nie an die Zuverlässigkeit eines Algorithmus geglaubt, der von jemandem entwickelt wurde, der „sich nicht von Anfang an die Zähne ausgebissen hat“, indem er viel Zeit damit verbracht hat, Codes zu knacken. Es ergibt Sinn. Ich habe festgestellt, dass praktisch niemand in der Welt der kommerziellen Kryptographie dieses Kriterium erfüllt. „Ja“, fügte er mit einem übermütigen Grinsen hinzu. „Und es macht unsere Arbeit bei der NSA viel einfacher.“ Ein beängstigender Gedanke. Schließlich passe ich auch nicht.

Die Regierung verkaufte auch kanaanäischen Balsam. Nach dem Zweiten Weltkrieg verkauften die Vereinigten Staaten deutsche Enigma-Verschlüsselungsmaschinen an Länder der Dritten Welt. Die Regierung gab jedoch nicht bekannt, dass die Alliierten während des Krieges den Enigma-Code geknackt hatten, eine Tatsache, die jahrzehntelang geheim blieb. Auch heute noch verwenden viele UNIX-Systeme den Enigma-Algorithmus zum Verschlüsseln von Dateien, teilweise weil die Regierung gesetzliche Hindernisse für die Verwendung eines besseren Algorithmus geschaffen hat. Es versuchte sogar, die Erstveröffentlichung von RSA im Jahr 1977 zu verhindern. Und viele Jahre lang blockierte es praktisch alle Versuche, ein effektives Kryptophon für die breite Masse kommerziell zu entwickeln.

Die Hauptaufgabe der US-amerikanischen National Security Agency ist die Sammlung von Geheimdienstinformationen, hauptsächlich durch verdecktes Abhören und Abfangen privater ziviler Kommunikation (siehe James Bamfords Buch „Palace of Puzzles“). Die NSA verfügt über umfangreiche Fähigkeiten und Erfahrungen zum Knacken von Codes. Wenn Menschen keine starke Verschlüsselung verwenden können, macht das die Arbeit der NSA noch einfacher. Die Behörde ist auch für die Genehmigung und Empfehlung von Kryptoalgorithmen verantwortlich. Einige Kritiker sehen darin einen Interessenkonflikt, so als würde man einen Fuchs als Bewacher des Hühnerstalls einsetzen. In den 1980er Jahren setzte die NSA einen eigenen symmetrischen Verschlüsselungsalgorithmus (Approved COMSEC Program) durch, dessen Prinzipien sie unter Berufung auf das „Informationsgeheimnis“ nicht offenlegen wollte. Die Agentur wollte, dass jeder es einfach im Glauben annimmt. Aber jeder Kryptologe wird Ihnen sagen, dass ein gut konzipierter Algorithmus keinen Schutz benötigt, um zuverlässig zu bleiben. Lediglich die Schlüssel bedürfen des Schutzes. Wie können Sie dann sicher sein, dass der geheime Algorithmus der NSA wirklich sicher ist? Für die Agentur wäre es nicht schwer, einen Algorithmus zu entwickeln, den nur sie knacken könnte.

Zum Zeitpunkt der Erstveröffentlichung von PGP wurde die Qualität kommerzieller Kryptoprodukte in den Vereinigten Staaten von drei Hauptfaktoren bestimmt:

    Erstens die nahezu völlige Inkompetenz der Entwickler kommerzieller kryptografischer Lösungen (obwohl es seit der Veröffentlichung von PGP Änderungen gegeben hat). Jeder Programmierer stellte sich vor, ein Kryptograf zu sein, was zur Profanierung der Kryptoentwicklung und zur Verbreitung extrem minderwertiger Produkte führte.

    Zweitens das systematische Eingreifen der NSA, um jede Entwicklung guter kommerzieller Kryptotechnologien durch rechtliche Einschüchterung und wirtschaftlichen Druck zu unterdrücken. Ein Teil dieses Drucks bestand in strengen Exportkontrollen für Verschlüsselungsprodukte, die nach den Gesetzen des Softwaremarktes den Netzwerkeffekt hatten, inländische kryptografische Entwicklungen zu unterdrücken.

    Die dritte Methode der Unterdrückung bestand darin, einem einzelnen Unternehmen Patente auf alle Verschlüsselungsalgorithmen mit öffentlichem Schlüssel zu gewähren, wodurch Druck auf diesen kritischen Punkt ausgeübt werden konnte, um die Verbreitung der Technologie als Ganzes einzuschränken (dieses Patentkartell brach schließlich im Herbst 1995 zusammen).

Das Zusammenwirken all dieser Faktoren führte dazu, dass es bis zur Veröffentlichung von PGP in den Vereinigten Staaten kein allgemein verfügbares Universalprodukt gab, das eine hochkryptografisch sichere Verschlüsselung ermöglichte.

Ich bin von der Zuverlässigkeit von PGP nicht mehr so ​​überzeugt wie einst von meinem „brillanten“ Verschlüsselungsschema. Wenn dies der Fall wäre, wäre es ein schlechtes Symptom. Gleichzeitig glaube ich nicht, dass PGP irgendwelche klaffenden Lücken aufweist (obwohl ich davon überzeugt bin, dass es Fehler aufweist). Um es umzusetzen, habe ich die besten Algorithmen aus der zivilen kryptologischen Literatur ausgewählt. Diese Algorithmen wurden einzeln im Detail untersucht. Ich kenne viele der weltweit führenden Kryptografen und habe mit einigen von ihnen die meisten Algorithmen und Protokolle von PGP besprochen. Das Programm befindet sich seit Jahren in der Entwicklung und ist bereits gut erforscht. Und ich arbeite nicht für die NSA. Aber Sie müssen mir nicht glauben, denn die Quelltexte wurden gerade zum Zweck des freien Studiums veröffentlicht.

Noch ein Punkt, der für die Zuverlässigkeit und Integrität von PGP spricht: Nach der ersten kostenlosen Veröffentlichung im Jahr 1991 wurde ich wegen der Verbreitung des Programms im Ausland drei Jahre lang vom US-Zoll strafrechtlich verfolgt, mit der Aussicht auf einen Prozess und viele Jahre Gefängnis. Übrigens hat die Regierung aus irgendeinem Grund nicht auf andere kryptografische Software reagiert, aber nur PGP hat sie verrückt gemacht. Sagt Ihnen das etwas über die Stärke von PGP? Meinen Ruf verdanke ich der kryptografischen Integrität meiner Produkte. Ich werde mein Engagement für unsere bürgerlichen und verfassungsmäßigen Rechte, für die ich meine eigene Freiheit riskiert habe, nicht verraten. Ich werde nicht zulassen, dass das Programm, dessen Autor ich bin, geheime „Geheimgänge“ enthält.

Schwachstellen

„Selbst wenn man das gesamte Rechenpotenzial des Planeten – 260 Millionen Computer – nutzt, um einen PGP-Chiffretext zu entschlüsseln, wird es im Durchschnitt immer noch 12 Millionen Mal so alt sein, wie unser Universum alt ist, um ihn zu knacken.“

Es gibt keine unangreifbaren Sicherheitssysteme. Der kryptografische PGP-Schutz kann auf verschiedene Arten umgangen werden. Wenn Sie ein Sicherheitssystem anwenden, fragen Sie sich, ob die zu schützenden Informationen für einen Angreifer wertvoller sind als die Kosten des Angriffs selbst, um an sie zu gelangen. Durch die Analyse und Identifizierung Ihrer Risiken können Sie sich vor den einfachsten Angriffen schützen, ohne sich über teurere Angriffe Gedanken machen zu müssen.

Einige Punkte in der folgenden Diskussion mögen übermäßig paranoid erscheinen, aber dieser Ansatz ist bei der Diskussion von Sicherheitsfragen notwendig.

Kompromittierung des privaten Schlüssels und der Passphrase

Dies ist der einfachste und am leichtesten umzusetzende Angriff, wenn Sie das Passwort zu Ihrem privaten Schlüssel irgendwo notiert haben. Wenn ein Angreifer sowohl an die Aufzeichnung als auch an den privaten Schlüssel selbst gelangt, kann er alle Nachrichten entschlüsseln und Ihre Signatur fälschen.

Hier sind einige Tipps zum Schutz Ihrer Passphrase:

    Verwenden Sie keine offensichtlichen Schlüsselbegriffe, die leicht zu erraten sind, wie zum Beispiel die Namen Ihrer Kinder oder Ihres Ehepartners.

    Bilden Sie keine Schlüsselphrase aus einem einzigen Wort, denn in diesem Fall lässt sich die Schlüsselphrase ganz einfach durch Ausprobieren aller Wörter im Wörterbuch knacken. Aus diesem Grund ist eine Passphrase viel besser als ein Passwort. Ein fortgeschrittener Angreifer könnte den Computer ein Buch mit berühmten Sprüchen scannen lassen, um zu sehen, ob diese mit Ihrer Passphrase übereinstimmen. Versuchen Sie also, auch diese nicht zu verwenden. Fügen Sie Ihrer Schlüsselwortphrase nur dann Nicht-Buchstaben-Zeichen wie Zahlen und Satzzeichen hinzu, wenn das Erinnern dadurch nicht zu schwierig wird.

    Verwenden Sie ein Schlüsselwort, das leicht zu merken, aber schwer vorherzusagen ist. Vermeiden Sie es, etwas aufzuschreiben, indem Sie eines auswählen, das sich bereits in Ihrem Langzeitgedächtnis befindet, anstatt eines, das Sie sich ganz neu ausgedacht haben. Andernfalls werden Sie es wahrscheinlich vergessen, es sei denn, Sie beginnen sofort und regelmäßig mit der Anwendung. Vielleicht erinnern Sie sich an einen lustigen, bedeutungslosen Ausdruck, der Ihnen während Ihres Studiums in den Sinn kam und der Ihnen auf wundersame Weise all die Jahre im Gedächtnis geblieben ist.

Betrug mit öffentlichen Schlüsseln

Ein großes Problem entsteht, wenn die öffentlichen Schlüssel der Gegenparteien beim gegenseitigen Austausch arglistig ausgetauscht wurden. Das Spoofing öffentlicher Schlüssel ist eine große Schwachstelle in jedem asymmetrischen Kryptosystem, auch weil es von vielen Neulingen nicht sofort erkannt wird (weitere Informationen finden Sie im Abschnitt „So schützen Sie Ihren öffentlichen Schlüssel vor Spoofing“).

Kurz gesagt: Bevor Sie den öffentlichen Schlüssel einer anderen Person verwenden, stellen Sie sicher, dass dieser authentisch ist. Ein neuer öffentlicher Schlüssel kann nur dann als echt angesehen werden, wenn er direkt von seinem Besitzer erhalten wurde oder wenn er von einer Person unterzeichnet wurde, der Sie vertrauen, dass er die Schlüssel zertifiziert. Treffen Sie alle Vorkehrungen, um sicherzustellen, dass niemand Ihren öffentlichen Schlüsselbund manipulieren kann. Behalten Sie Ihre öffentlichen und privaten Schlüsselbunde unter vollständiger physischer Kontrolle, vorzugsweise auf Ihrem eigenen Computer und nicht auf einem öffentlich zugänglichen System. Erstellen Sie Sicherungskopien beider Bundles.

Nicht vollständig gelöschte Dateien

Ein weiteres potenzielles Sicherheitsrisiko ergibt sich aus der Art und Weise, wie die meisten Betriebssysteme Dateien löschen. Wenn Sie eine Datei verschlüsseln und das Klartext-Original löschen möchten, löscht das Betriebssystem die Daten nicht wirklich physisch – es entfernt lediglich den Eintrag der Datei aus dem Dateisystem und markiert speziell den Anfang der Datei auf der Festplatte, sodass die belegten Sektoren dies tun können enthielt die Datei, die später wiederverwendet werden sollte. Es ist, als würde man vertrauliche Dokumente in den Papierkorb werfen, anstatt sie in einen Aktenvernichter zu werfen. Die Festplattensektoren enthalten immer noch wertvolle Daten, die Sie löschen wollten, und wahrscheinlich werden in Zukunft neue Informationen darüber geschrieben. Wenn ein Angreifer jedoch kurz nach der Freigabe den Inhalt der Sektoren ausliest, kann er das Original wiederherstellen.

Kompromisse können unbeabsichtigt passieren. Wenn Ihr Computer abstürzt, kann die Festplatte beschädigt werden, was zur Beschädigung oder Zerstörung einiger Dateien führen kann. Um sie wiederherzustellen, können Sie ein spezielles Dienstprogramm verwenden. Dies führt jedoch normalerweise dazu, dass neben den erforderlichen auch alle anderen längst gelöschten Dateien „wiederbelebt“ werden. Diese neu entdeckten vertraulichen Daten, von denen Sie dachten, sie seien längst verschwunden und unwiederbringlich, können von jemandem eingesehen werden, der mit der Wiederherstellung der beschädigten Festplatte beschäftigt ist. Selbst wenn Sie eine wichtige Nachricht in einem Textverarbeitungsprogramm verfassen, kann es allein aufgrund der internen Funktionsweise zahlreiche temporäre Kopien des Textes auf der Festplatte speichern. Wenn die Arbeit beendet ist, werden diese temporären Kopien automatisch vom Programm gelöscht, Fragmente wertvoller Daten verbleiben jedoch irgendwo auf der Festplatte.

Die einzige Möglichkeit, die Wiederherstellung von Klartext zu verhindern, besteht darin, die aus der gerade gelöschten Datei freigegebenen Sektoren irgendwie zu überschreiben. Wenn Sie nicht sicher wissen, ob diese Sektoren in naher Zukunft wieder verwendet werden, müssen Sie bestimmte Maßnahmen ergreifen, um die gelöschte Datei sowie alle vom Texteditor auf der Festplatte hinterlassenen Fragmente zu überschreiben. Sie können dies erreichen, indem Sie die Datenvernichtungsfunktionen von PGP nutzen Sicheres Löschen Und Freespace Wipe.

Moderne Betriebssysteme verschärfen durch die Unterstützung sogenannter Journaldateisysteme das Problem temporärer Dateien zusätzlich. Diese Dateisysteme speichern in ihrem speziellen internen Bereich Sicherungskopien aller vom Betriebssystem im Dateisystem vorgenommenen Einträge – sie führen ein Protokoll der Änderungen. Ein solches Protokoll ist eine sequentielle Beschreibung aller auf der Festplatte vorgenommenen Änderungen und dient der zuverlässigen Wiederherstellung des FS nach Ausfällen. Das von Windows NT/2000/XP unterstützte NTFS-Dateisystem ist ein Beispiel für ein Journal-Dateisystem. MacOS X 10.2.2 verfügt außerdem über Journal-Erweiterungen für sein HFS-Dateisystem. Die einzige Möglichkeit, FS-Protokolleinträge im Zusammenhang mit gelöschten wertvollen Dateien zu zerstören, ist die Verwendung der PGP-Funktion Freespace Wipe.

Viren und Trojaner

Der Angriff besteht darin, das von Ihnen installierte PGP-Programm mit einem speziell entwickelten Computervirus oder -wurm zu infizieren. Dieser hypothetische Virus könnte so konzipiert sein, dass er einen privaten Schlüssel und seine Passphrase oder den Inhalt entschlüsselter Nachrichten abfängt und diese Informationen heimlich in eine Datei schreibt oder sie über das Netzwerk an den Angreifer sendet. Ebenso kann es die Funktionsweise von PGP so ändern, dass es keine gefälschten digitalen Signaturen meldet oder seine kryptografische Stärke schwächt. Dieser Angriff ist kostengünstiger als ein kryptoanalytischer.

Der Schutz vor dieser Art von Angriffen fällt in die allgemeine Kategorie des Virenschutzes. Es gibt ziemlich gute kommerzielle Antivirenpakete sowie Hygienemaßnahmen, deren Einhaltung das Risiko einer Virusinfektion erheblich verringert. Eine vollständige Übersicht über die Antivirenaktivitäten würde den Rahmen dieses Dokuments sprengen. Gegen Viren und Trojaner ist PGP schutzlos; Die Verwendung setzt voraus, dass der eigene Computer eine ausreichend zuverlässige Ausführungsumgebung darstellt. Wenn ein solcher Virus oder Wurm jedoch tatsächlich auftritt, wird sich hoffentlich sofort eine Warnung darüber in der gesamten Kryptografie- und Internet-Community verbreiten.

Wenn Ihr Computer ständig mit dem Netzwerk verbunden ist, könnte ein Angreifer eine ungepatchte Sicherheitslücke im Betriebssystem ausnutzen, um in Ihren Computer einzudringen und Malware zu installieren, die die Integrität von PGP gefährdet. Dies kann auch dann passieren, wenn Sie nicht in der Nähe sind.

Ein ähnlicher Angriff besteht darin, eine hochwertige PGP-Fälschung zu verwenden, die wie PGP funktioniert, aber beispielsweise die Signatur nicht ordnungsgemäß überprüft, was die Verwendung gefälschter öffentlicher Schlüssel ermöglicht oder die Stärke der Chiffretexte radikal reduziert. Für einen Angreifer wäre es nicht sehr schwierig, einen solchen Trojaner zu erstellen, da der PGP-Quellcode weit verbreitet ist, sodass jeder durch Änderungen daran eine kopflose Nachahmung eines Programms erstellen kann, das wie das Original aussieht, aber folgt bedingungslos dem dämonischen Willen seines Oberherrn. Dieser PGP-Trojaner kann weit verbreitet werden und stellt so sicher, dass er aus einer zuverlässigen Quelle stammt. Was für eine Täuschung!

Die beste Quelle für den Bezug von PGP ist die Website der PGP Corporation.

Darüber hinaus gibt es mehrere Möglichkeiten, die Integrität von PGP mithilfe einer digitalen Signatur zu überprüfen. Sie können eine zweite Originalkopie des Programms verwenden, um die Signatur der verdächtigen Distribution zu überprüfen. Dies hilft jedoch nicht, wenn Ihr Betriebssystem mit dem oben genannten speziellen Virus infiziert ist oder wenn die Originalkopie von PGP in böswilliger Absicht so verändert wurde, dass ihre Fähigkeit, Signaturen ordnungsgemäß zu überprüfen, beeinträchtigt wird. Für dieses Verfahren ist außerdem erforderlich, dass Sie über eine echte Kopie des öffentlichen Schlüssels der PGP Corporation verfügen, mit dem Sie die Signatur des Programmverteilungspakets überprüfen.

Auslagerungsdatei und virtueller Speicher

PGP wurde ursprünglich für MS-DOS entwickelt, ein nach heutigen Maßstäben primitives Betriebssystem. Doch als es für komplexere Betriebssysteme wie Microsoft Windows und Macintosh OS angepasst wurde, trat ein neues Problem auf. Dieses Problem ergibt sich aus der Tatsache, dass diese fortschrittlichen Betriebssysteme eine Technik namens virtueller Speicher verwenden.

Mit dem virtuellen Speicher können Sie Programme ausführen, die die Kapazität der in Ihrem Computer installierten Halbleiter-Random-Access-Memory-Schaltkreise (RAM) bei weitem übersteigen. Dies ist sehr nützlich, da Software aufgrund der zunehmenden Verbreitung grafischer Oberflächen immer umfangreicher wird und Benutzer zunehmend mit mehreren großen Anwendungen gleichzeitig arbeiten. Zu diesem Zweck nutzt das Betriebssystem eine Festplatte, um aktuell ungenutzte Teile des Programms zu speichern. Das bedeutet, dass das Betriebssystem Dinge auf die Festplatte schreiben kann, von denen Sie dachten, dass sie nur im physischen Hauptspeicher gespeichert werden sollten. Dies können Schlüssel, Passwörter und entschlüsselter Klartext sein. PGP behält diese Art wertvoller Daten nicht länger als nötig im Speicher, es besteht jedoch die Möglichkeit, dass das Betriebssystem sie trotzdem auf die Festplatte schreibt.

Daten werden in einen speziellen Bereich der Festplatte geschrieben, der als Auslagerungsdatei oder Auslagerungsdatei bezeichnet wird. Sie werden dann nach Bedarf aus der Auslagerungsdatei gelesen, sodass sich zu einem bestimmten Zeitpunkt nur ein Teil der Informationen oder des ausführbaren Programms im physischen Speicher befindet. Alle diese Aktionen sind für den Benutzer unsichtbar, er sieht lediglich das Blinken der Festplattenzugriffsanzeige. Microsoft Windows tauscht Speicherblöcke, sogenannte Seiten, mithilfe eines am wenigsten verwendeten Seitenersetzungsalgorithmus aus ( Zuletzt verwendet, LRU). Das bedeutet, dass diejenigen Seiten zuerst aus dem Speicher entladen werden, die am längsten nicht angefordert wurden. Dieser Ansatz verringert das Risiko, dass wertvolle Daten auf die Festplatte geschrieben werden, da PGP sie nicht lange im Speicher belässt. Wir haben auch versucht, wann immer möglich, das Betriebssystem zu zwingen, solche Daten im physischen Speicher zu blockieren, damit sie nicht auf die Festplatte gepumpt werden können. Aber wir können nichts garantieren.

Jeder, der physischen Zugriff auf Ihren Computer hat, kann auch auf diese Datei zugreifen. Wenn Sie über dieses Problem besorgt sind, können Sie es lösen, indem Sie ein Programm zum Verschlüsseln oder Überschreiben der Auslagerungsdatei installieren. Eine andere mögliche Lösung besteht darin, den virtuellen Speicher des Betriebssystems vollständig zu deaktivieren. MS Windows ermöglicht Ihnen dies, genau wie Mac OS. Wenn Sie es jedoch deaktivieren, müssen Sie zusätzliche RAM-Schaltkreise installieren, um alles im physischen Speicher unterzubringen.

Ein Verstoß gegen den physischen Sicherheitsbereich

Ein Angreifer könnte eine Lücke in der physischen Sicherheit Ihres Büros oder Zuhauses finden, um in Ihren Computer, entschlüsselte Dateien und gedruckte Dokumente einzudringen und sich physischen Zugriff darauf zu verschaffen. Dies gibt ihm auch die Möglichkeit, einen „Bug“ oder ein anderes „Lesezeichen“ zu installieren. Dies kann er durch Diebstahl, Müllkontrolle, falsche Durchsuchung und Beschlagnahme von Dokumenten, Beschlagnahme oder durch Bestechung, Erpressung oder Unterwanderung Ihrer Mitarbeiter erreichen. Einige dieser Angriffe richten sich am leichtesten gegen politische und öffentliche Organisationen, die auf große Freiwilligenzahlen angewiesen sind.

Lassen Sie sich nicht in falscher Sicherheit wiegen, nur weil Sie über eine starke Verschlüsselung verfügen. Kryptografische Methoden schützen Daten nur, wenn sie verschlüsselt sind – eine direkte Verletzung der physischen Sicherheit kann leicht Klartext oder geschriebene oder gesprochene Informationen gefährden.

Diese Art von Angriff ist kostengünstiger als kryptoanalytische Angriffe, ihre Wirksamkeit hängt jedoch vollständig vom Aufwand und den Ressourcen ab, die in die Gewährleistung der physischen Sicherheit investiert werden.

TEMPEST-Angriff

Ein weiterer Hacking-Ansatz eines gut ausgerüsteten Gegners basiert auf der Fernerkennung elektromagnetischer Wellen, die von einem Computer ausgesendet werden. Dieser teure und zeitaufwändige Angriff ist immer noch günstiger als die direkte Kryptoanalyse. Ein entsprechend ausgestatteter Transporter kann in der Nähe Ihres Büros parken und alle Tastenanschläge und Anzeigeinformationen aus der Ferne erfassen. Dadurch werden alle Ihre Passwörter, Nachrichten usw. angezeigt. Ein solcher Angriff kann durch eine zuverlässige Abschirmung von Computergeräten und Netzwerkkabeln verhindert werden. Diese Sicherheitstechnologie, bekannt als STURM(aus Standard für die Emanation transienter elektromagnetischer Impulse, ein Standard für Burst-Wechselstrahlung elektromagnetischer Impulse), der von einigen Regierungsbehörden und Verteidigungsunternehmen verwendet wird. Es gibt Unternehmen, die TEMPEST-Abschirmungen kommerziell anbieten.

Neue Versionen von PGP ab 6.0, die diese Option bieten Sicherer Viewer, kann transkribierten Text mit einer speziellen Schriftart anzeigen, die die Funkemissionen von Computermonitoren reduziert und die Erkennung der Signale erschwert.

Zeitstempelfälschung

Eine eher nicht offensichtliche PGP-Schwachstelle ist die Möglichkeit, Zeitstempel auf digitalen Signaturen und Schlüsselzertifikaten böswillig zu fälschen. Sie können diesen Abschnitt überspringen, wenn Sie nicht an den Details einiger asymmetrischer Kryptosystemprotokolle interessiert sind.

Nichts wird einen skrupellosen Benutzer davon abhalten, seine Systemuhr umzustellen, um Public-Key-Zertifikate und digitale Signaturen zu erstellen, die scheinbar zu einem anderen als dem tatsächlichen Zeitpunkt erstellt wurden. Es kann den Anschein erwecken, dass signierte Informationen früher oder später signiert wurden, als sie tatsächlich signiert wurden, oder dass das Schlüsselpaar in der Vergangenheit oder Zukunft erstellt wurde. Dies kann ihm einen rechtlichen oder finanziellen Vorteil bringen, indem beispielsweise eine Lücke geschaffen wird, die es ihm ermöglicht, seine eigene Unterschrift zu widerrufen.

Das Problem der Fälschung von EDS-Zeitstempeln ist nicht schlimmer als die Fälschung des Datums handschriftlicher Unterschriften. Man kann neben einem handschriftlichen Autogramm ein beliebiges Datum auf einen Vertrag schreiben, aber niemand scheint sich darüber allzu große Sorgen zu machen. Nicht in jedem Fall deutet ein „falsches“ Datum einer manuellen Unterschrift auf einen Betrug hin. Der Zeitstempel gibt an, wann eine Person das Dokument mit ihrer Unterschrift genehmigt hat oder zu welchem ​​Zeitpunkt sie möchte, dass die Unterschrift rechtswirksam wird.

PGP stellt dem unterzeichneten Text mehrere Zeilen voran, die das Datum der Unterzeichnung und die Person angeben, die den Text unterzeichnet hat. PGP Universal и PGP 8.0.3 и выше применяют особые механизмы для предостращения модификации этих служебных строк, тем не менее, взломщик может прибегнуть к обрамлению текста в электронном письме аккуратно составленным изображением, заставляющим вас поверить, что он подписал сообщение в иное время, чем было in der Wirklichkeit. Eine Möglichkeit, eine Täuschung zu erkennen, besteht darin, den gesamten Inhalt der Nachricht hervorzuheben (Strg+A). Ausgewählter Text sieht normalerweise anders aus als ein hervorgehobenes Bild.

In Fällen, in denen das tatsächliche Datum der Unterzeichnung von entscheidender Bedeutung ist, wird einfach die Dienste eines Notars in Anspruch genommen, um dieses Datum zu bestätigen. Ein Analogon zu einem solchen Verfahren im Fall einer digitalen Signatur wäre, einen vertrauenswürdigen Vermittler zu bitten, das Zertifikat der digitalen Signatur zu signieren und ihm einen eigenen zuverlässigen Zeitstempel beizufügen. Dafür sind keine exotischen oder übermäßig formalisierten Protokolle erforderlich. Zwischensignaturen sind seit langem als rechtliches Mittel zur Feststellung des tatsächlichen Datums der Unterzeichnung eines Dokuments anerkannt.

Ein vertrauenswürdiger Notar oder eine Zertifizierungsstelle kann sichere Signaturen mit zuverlässigen Zeitstempeln bereitstellen. 9 Ein zentraler Dienst ist hierfür nicht einmal erforderlich. Jeder vertrauenswürdige Bürge oder uninteressierte Dritte kann diese Rolle übernehmen, ebenso wie private, öffentliche und öffentliche Notare. Wenn ein Notar die Unterschrift einer anderen Person bestätigt, erstellt er ein Signaturzertifikat für das Signaturzertifikat. Anschließend kann der Notar die entfernbare digitale Signatur (ohne das beglaubigte Dokument selbst) in einem speziellen öffentlichen Archiv hinterlegen. Die Unterschrift eines Notars mit einem zuverlässigen Zeitstempel hat größeres Gewicht und eine größere rechtliche Bedeutung als das Datum der Originalunterschrift des Dokuments.

Eine ausführliche Diskussion dieses Themas finden Sie in Dennings IEEE-Computerartikel von 1983. Zukünftige Versionen von PGP verfügen möglicherweise über zusätzliche Funktionen für die Verarbeitung notariell beglaubigter Signaturen und gültiger Zeitstempel.

Schwachstellen von Mehrbenutzersystemen

PGP wurde ursprünglich für Einzelbenutzer-PCs entwickelt, die unter der vollständigen physischen Kontrolle des Besitzers stehen. Wenn Sie PGP zu Hause auf einem Offline-Computer ausführen, sind Ihre verschlüsselten Dateien ziemlich sicher, es sei denn, jemand bricht in Ihr Haus ein, stiehlt Ihren Computer und droht Ihnen, Ihre Passphrase preiszugeben (sofern diese nicht so leicht zu erraten ist).

PGP kann Ihre Dateien auf einem öffentlichen System nicht schützen, wenn sie im Klartext vorliegen. Ebenso kann es einem Angreifer nicht widerstehen, der mit äußerst komplexen Maßnahmen den verwendeten privaten Schlüssel abfängt. Ein Angreifer kann in Ihren Computer eindringen, wenn dieser mit einem Netzwerk verbunden ist oder wenn es sich um ein öffentliches Mehrbenutzersystem mit Remote-Konnektivität wie UNIX handelt. Sie müssen diese Risiken von Mehrbenutzersystemen berücksichtigen und Ihr Verhalten entsprechend anpassen. In Ihrem Fall ist es möglicherweise besser, PGP auf einem isolierten PC unter direkter physischer Kontrolle zu verwenden.

Verkehrsanalyse

Auch wenn ein Angreifer den Inhalt verschlüsselter Nachrichten nicht herausfinden kann, kann er dennoch einige Informationen erhalten, indem er verfolgt, woher die Nachrichten kommen und wohin sie gesendet werden, wie groß das Volumen ist und wann sie gesendet wurden. Dies ähnelt einem Angreifer, der Ihre Ferngesprächsrechnungen durchsucht, um herauszufinden, wen Sie wann angerufen haben und wie lange das Gespräch gedauert hat, obwohl ihm der Inhalt der Anrufe selbst unbekannt bleibt. Dies wird als Verkehrsanalyse bezeichnet. PGP allein schützt nicht vor solchen Angriffen. Um dieses Problem zu lösen, sind möglicherweise spezielle Kommunikationsprotokolle erforderlich, möglicherweise unter Verwendung kryptografischer Tools, die darauf ausgelegt sind, das Risiko der Verkehrsanalyse in einer bestimmten Kommunikationsumgebung zu verringern.

Kryptoanalyse

Die Kryptoanalyse ist ein äußerst komplexer und teurer Angriff, der nur von einem Gegner mit leistungsstarken Supercomputern und enormen Rechenressourcen, beispielsweise einem staatlichen Geheimdienst, durchgeführt werden kann. Sie kann den öffentlichen Schlüssel wahrscheinlich mithilfe einer geheimen mathematischen Entdeckung knacken. Doch seit 1978 versucht die wissenschaftliche Gemeinschaft, die asymmetrische Kryptographie zu durchbrechen, ohne Erfolg.

Möglicherweise verfügen die Geheimdienste über geheime Techniken zum Knacken von Blockchiffren, die in PGP implementiert sind. Das ist der Albtraum eines jeden Kryptologen. Bei praktischen kryptografischen Anwendungen gibt es keine Garantien für absolute Sicherheit.

Dennoch bleibt ein gewisser Optimismus berechtigt. Die in PGP enthaltenen Public-Key-Algorithmen, Hash-Funktionen und Blockchiffren wurden von einigen der besten Kryptographen der Welt erstellt. Sie wurden von den besten Gruppen ziviler Kryptoanalytiker der Welt umfangreichen Tests auf Zuverlässigkeit und Sicherheit unterzogen.

Auch wenn diese Blockchiffren einige unbekannte kleinere Mängel aufweisen, komprimiert PGP den Klartext vor der Verschlüsselung, wodurch mögliche Schwachstellen der Algorithmen minimiert werden. Der Rechenaufwand für die Entschlüsselung des Chiffretexts wird wahrscheinlich um ein Vielfaches höher sein als der Wert der Nachricht selbst, was den Angriff unrentabel und letztendlich sinnlos macht.

Wenn Ihre Situation Anlass zur Sorge vor kostspieligen Angriffen dieser Größenordnung gibt, sollten Sie sich möglicherweise an einen Berater für Informationssicherheit wenden, um maßgeschneiderte Lösungen zu entwickeln, die auf Ihre spezifischen Bedürfnisse zugeschnitten sind.

Abschluss

Ohne einen guten kryptografischen Schutz der digitalen Kommunikation ist es für einen Angreifer nahezu unmöglich, Nachrichten abzufangen, insbesondere solche, die über Modem oder E-Mail gesendet werden. Wenn Sie PGP verwenden und angemessene Vorsichtsmaßnahmen treffen, wird es für einen Angreifer viel mehr Aufwand, Zeit und Geld kosten, an Ihre Daten zu gelangen.

Wenn Sie sich vor einfachen Angriffen geschützt haben und sicher sind, dass Sie nicht von einem ernsthaften, einfallsreichen Gegner angegriffen werden, können Sie mit PGP wahrscheinlich beruhigt sein. PGP gibt Ihnen sehr gute Privatsphäre.

Seite 4 / 4

    Die Ereignisse des 11. September 2001 und die darauf folgende Reaktion zwingen uns, diese Worte ganz anders zu bewerten. Zurück zum Text

    Die Entwickler behaupten, dass der Name CAST mit dem Entwicklungsverfahren verbunden ist und an die probabilistische Natur des Prozesses (Cast, Englisch – Vermutung) und nicht an die Initialen der Autoren erinnern sollte. Zurück zum Text

    Die Rede ist vom abwärtskompatiblen RSA-Schlüsselformat, dem sogenannten RSA Legacy v3. Das neue RSA v4-Schlüsselformat entspricht vollständig der Funktionalität von DH/DSS v4-Schlüsseln. Zurück zum Text

    PGP implementiert einen PRNG-Generator, der den ANSI X9.17-Spezifikationen zur Generierung unvorhersehbarer Sitzungsschlüssel entspricht. Weitere Einzelheiten finden Sie in IETF RFC 1750. Zurück zum Text

    Genauer gesagt ist es rechnerisch praktisch unmöglich, eine Dummy-Nachricht zu erstellen, die einen Digest erzeugt, der mit dem Digest der Zielnachricht identisch ist, was 2.160 Iterationen unter Verwendung der SHA-1-Hash-Funktion erfordert. Gleichzeitig ist es auf der Grundlage des Geburtstagsparadoxons möglich, zwei Nachrichten zu erstellen, die in 2 80 Berechnungen einen identischen Digest erzeugen, und wenn wir die Wahrscheinlichkeitstheorie berücksichtigen, wird mit 50 % Erfolg die gewünschte Kombination von Nachrichten erhalten gefunden nach 2 79 Berechnungen. Zurück zum Text

    Es gibt keine Funktion zum Anpassen der „Skepsis“ des Programms bei der Beurteilung der Zuverlässigkeit von Schlüsseln in seinen neuesten Versionen. Ein Schlüssel gilt als authentisch, wenn sein Zertifikat von einer vollständig vertrauenswürdigen Signatur oder zwei teilweise vertrauenswürdigen Signaturen unterstützt wird. Nicht vertrauenswürdige Signaturen werden bei der Berechnung des Scores nicht berücksichtigt. Zurück zum Text

    In den letzten Jahren hat sich die Situation auf dem Markt für sichere Telefonie vor allem in den EU-Ländern zu ändern begonnen. Als Beispiel sind die SNAP-Plattform von SnapShield und das GSM-Mobilfunk-Kryptophon GSMK-100 der deutschen GSMK mbH für eineinhalbtausend Euro zu nennen. Wenn Ihr Budget solche Kosten nicht zulässt, können Sie auf die Shareware PGPfone zurückgreifen. Zurück zum Text

    In früheren Zeiten wurde der Balsam aus Kanaan als Quacksalbermedizin bezeichnet und soll angeblich alle Krankheiten heilen. Heutzutage wird dieser Begriff für unzuverlässige Sicherheitssysteme verwendet. Zurück zum Text

    Ein öffentlicher Zeitstempeldienst, der auf dem PGP-Mechanismus basiert, heißt Stamper. Hier erfahren Sie mehr darüber und wie Sie damit umgehen können. Zurück zum Text

Was ist PGP?

Das angewandte Kryptosystem PGP (Pretty Good Privacy) wurde 1991 vom MIT-Programmierer und Mathematiker Philip Zimmerman entwickelt und im Internet veröffentlicht und war tatsächlich das erste Produkt dieser Stufe, das der ganzen Welt freien Zugang gewährte (wofür Zimmerman später bezahlte). mehrere Jahre strafrechtliche Verfolgung durch den US-Zolldienst – damals war der Export starker Kryptotechnologien außerhalb der USA verboten). Das ursprüngliche Ziel der Entwicklung bestand darin, die Bürgerrechte der Benutzer des globalen Netzwerks zu schützen, und die Hauptaufgabe des Programms war der kryptografische Schutz von E-Mails – die Verschlüsselung.

Das Programm basiert auf der sogenannten asymmetrischen Kryptographie, die miteinander verbundene Schlüsselpaare verwendet: einen privaten, der nur vom Eigentümer aufbewahrt wird, um Daten zu entschlüsseln und digital zu signieren, und einen öffentlichen, der keinen Schutz benötigt weit verbreitet sein und zum Verschlüsseln und Vergleichen digitaler Signaturen verwendet werden (alle diese einzigartigen Fähigkeiten werden durch einen speziellen mathematischen Apparat erreicht). Dies ist eine ideale Lösung für Personen, die keinen vereinbarten geheimen Schlüssel haben. Sie können den öffentlichen Schlüssel des Empfängers aus einer beliebigen offenen Quelle, beispielsweise von seiner Internetseite, entnehmen, die Nachricht verschlüsseln und versenden. Niemand außer dem Empfänger mit dem entsprechenden privaten Schlüssel kann Ihren Brief lesen.

Seitdem hat PGP erhebliche Veränderungen und Veränderungen erfahren, sowohl im Einklang mit dem Zeitgeist und neuen Bedrohungen als auch aufgrund der Tatsache, dass mittlerweile ein erheblicher Teil der Benutzer des Programms nicht nur normale Menschen, sondern auch große Organisationen und Unternehmen sind . Heute besteht PGP aus mehreren Anwendungslinien, die sich in Zweck und Liste der zu lösenden Aufgaben, Funktionalität, Funktionsprinzipien und Ausführungsumgebung unterscheiden, sich jedoch durch volle Kompatibilität dank des OpenPGP-Standards sowie ihre außergewöhnliche Zuverlässigkeit bei der Bereitstellung von Informationen vereinen Sicherheit.

Die lange Geschichte von PGP hat die Aufmerksamkeit einer großen Anzahl von Benutzern, Forschern und Spezialisten auf das Kryptosystem gelenkt. Dazu trugen eine Reihe weiterer Umstände bei. Erstens war das Programm schon immer Shareware. Auch nachdem die Entwicklung auf kommerzielle Basis umgestellt wurde, werden weiterhin Freeware-Versionen veröffentlicht, die sich von kostenpflichtigen Versionen nur durch etwas weniger Funktionalität unterscheiden (im Großen und Ganzen nur durch das Fehlen von PGPdisk). Zweitens haben die Entwickler – herausragende Software-Ingenieure und Experten auf dem Gebiet der Informationssicherheit – den Quellcode des Programms stets zum kostenlosen Studium veröffentlicht, was eine notwendige Voraussetzung für die Aufrechterhaltung einer hohen Zuverlässigkeit und eines hervorragenden Rufs des Systems ist. Geschlossene Quellcodes erschweren das Studium des Programms nur durch das Vorhandensein von Lücken, „Geheimpassagen“ und Fehlern in der Implementierung. Andererseits ist die Tatsache, dass selbst die Verfügbarkeit von Open-Source-Code nicht dazu führte, dass PGP geknackt wurde, ein beredtes Zeugnis für die Zuverlässigkeit des Programms.

Weitere Informationen finden Sie im Abschnitt Software.

GRUNDLAGEN DER ARBEIT MIT DEM KRYPTOGRAPHISCHEN PROGRAMM PGP

Der Zweck der Arbeit besteht darin, die Funktionalität des kryptografischen Programms PGP zu studieren und praktische Fähigkeiten zur Verschlüsselung von Informationen zu erwerben.

1. Grundkonzepte eines kryptografischen Programms

1.1. allgemeine Informationen

PGP (Pretty Good Privacy - Sehr Gute Privatsphäre ) ist ein hochsicheres kryptografisches (Verschlüsselungs-)Programm, das es Benutzern ermöglicht, Informationen elektronisch und absolut vertraulich auszutauschen.

PGP nutzt das Prinzip der Verwendung zweier miteinander verbundener Schlüssel: Öffentlicher Schlüssel Und Privat Schlüssel. Dabei handelt es sich um sehr große Zahlen, die zufällig generiert werden (1024 Bit, 2048 Bit usw.). Nur der Absender der Nachricht hat Zugriff auf den privaten Schlüssel, und der öffentliche Schlüssel wird veröffentlicht oder über Kommunikationsnetzwerke an seine Korrespondenten verteilt. In diesem Fall werden die Informationen mit dem öffentlichen Schlüssel verschlüsselt und mit dem privaten Schlüssel entschlüsselt.

Öffentliche Schlüssel können auf einem öffentlichen Schlüsselserver veröffentlicht oder über Kommunikationsnetzwerke an Korrespondenten verteilt werden. Sie werden auf dem Computer in einem Verzeichnis gespeichert veröffentlichen. pkr in Form von „Public-Key-Zertifikaten“, zu denen Folgendes gehört:

1) Benutzer-ID des Schlüsselbesitzers (normalerweise der Benutzername);

2) ein Zeitstempel, der den Zeitpunkt der Generierung des Schlüsselpaars angibt;

3) die eigentlichen Schlüssel.

Private (geheime) Schlüssel werden ebenfalls als „Private-Key-Zertifikate“ im Verzeichnis gespeichert Geheimnis. skr. In diesem Fall wird jeder geheime Schlüssel mit einem separaten Passwort verschlüsselt.

Hauptfunktionen von PGP:

Generieren eines privaten-öffentlichen Schlüsselpaares;

Eine Datei mit einem öffentlichen Schlüssel verschlüsseln;

Entschlüsseln einer Datei mit einem privaten Schlüssel;

Digitale Signatur mit privatem Schlüssel;

Überprüfung einer elektronischen Signatur mithilfe eines öffentlichen Schlüssels.

Das PGP-Programm verfügt über eine benutzerfreundliche Oberfläche und eine relativ hohe Geschwindigkeit bei der Nachrichtenverschlüsselung und -entschlüsselung. Die neueste Version (PGP 8.0) ist russifiziert, was die weit verbreitete Verwendung von PGP unter Benutzern vorwegnahm.

1.2. So funktioniert PGP

Der Prozess der Verschlüsselung einer Nachricht mit PGP besteht aus mehreren Schritten (Abbildung 1). Zunächst komprimiert das Programm den Text. Dies reduziert die Zeit, die zum Versenden einer Nachricht per Modem benötigt wird, und erhöht die Sicherheit der Verschlüsselung.

Notiz : Die meisten Kryptoanalysetechniken (das Knacken verschlüsselter Nachrichten) basieren auf der Untersuchung der in Textdateien enthaltenen „Muster“, was dabei hilft, den Schlüssel zu knacken. Durch die Komprimierung werden diese „Zeichnungen“ beseitigt.

Um die Authentizität einer Nachricht sicherzustellen, kann diese „signiert“ werden. Dies geschieht durch Hinzufügen zur Nachricht elektronische (digitale) Signatur, die der Empfänger mithilfe des öffentlichen Schlüssels des Absenders zum Entschlüsseln überprüfen kann.

Eine digitale Signatur ist ein Datenblock, der mit einem geheimen Schlüssel generiert wird. Das Programm macht das wie folgt:

1) Aus dem Dokument wird generiert Nachrichtenauszug(Dies ist ein 160- oder 128-Bit-„Squeeze“ oder eine Prüfsumme der Nachrichtendatei), Informationen darüber, wer das Dokument signiert, und ein Zeitstempel werden hinzugefügt.

2) Der private Schlüssel des Absenders wird verwendet, um den Nachrichtenauszug zu verschlüsseln und ihn somit zu „signieren“.

3) Der Nachrichtenauszug wird zusammen mit der Nachricht selbst in verschlüsselter Form übertragen. Beim Identifizieren einer Signatur wird ein neuer Digest erstellt und mit dem übermittelten Digest verglichen; bei Übereinstimmung gilt die Signatur als bestätigt. Wenn die Nachricht irgendeine Änderung erfährt, wird ihr ein weiterer Digest zugeordnet, d. h. es wird erkannt, dass die Nachricht geändert wurde.

Die Erkennung elektronischer Signaturen zeigt, dass der Absender tatsächlich der Urheber der Nachricht war und dass die Nachricht nachträglich nicht geändert wurde.

Der nächste Schritt besteht darin, das sogenannte zu generieren Sitzung(temporärer) Schlüssel, bei dem es sich um eine Zufallszahl handelt, die deutlich kleiner ist als die öffentlichen und privaten Schlüssel (128 Bit, 168 Bit), was eine schnelle Verschlüsselung/Entschlüsselung gewährleistet. Der temporäre Schlüssel wird automatisch durch rein zufällige Ereignisse generiert, deren Quelle die Parameter von Tastenanschlägen und Mausbewegungen sind.

Die Nachricht wird mit diesem Sitzungsschlüssel verschlüsselt, und der Sitzungsschlüssel wird mit dem öffentlichen Schlüssel des Nachrichtenempfängers verschlüsselt und zusammen mit dem Chiffretext an den Empfänger gesendet (Abb. 1.1).

Öffentlicher Schlüssel des Empfängers

Die Entschlüsselung erfolgt in umgekehrter Reihenfolge. Das PGP-Programm des Nachrichtenempfängers verwendet den privaten Schlüssel des Empfängers, um einen temporären Sitzungsschlüssel zu extrahieren, den das Programm dann zum Entschlüsseln des Chiffretexts verwendet (Abbildung 1.2).

Abb.1.2. Prozess der Entschlüsselung einer Nachricht

2. Grundlagen der Arbeit mit einem kryptografischen Programm

2.1. PGP starten

!! Laufen Start/Programme/PGP/ PGP Desktop und schauen Sie sich die Speisekarte an.

Notiz . Zukünftig werden Anweisungen zur Erledigung von Aufgaben mit gekennzeichnet !! und erscheinen in Kursivschrift.

2.2. AnwendungsgrundlagenPGP Desktop

Fenster PGPDesktop enthält alle Standardelemente eines Windows-Anwendungsfensters (Kopfzeile, Fenstermenü, Symbolleisten, Programmarbeitsbereich, Statusleiste).

Das Fenstermenü besteht aus folgenden Elementen:

􀂃 Datei

Neuer PGP-Schlüssel (neuer PGP-Schlüssel)

Neu: PGP Zip (komprimiertes sicheres Archiv).

à PGP Disk (geschützte Festplatte. Schlüssel erforderlich!!!).

à Encrypted Whole Disk (die gesamte Festplatte verschlüsseln).

à PGP NetShare-Ordner (Datenverschlüsselung auf dem Server).

Offen (offen)

Persönliche Zertifikate importieren.

Ausfahrt

􀂃 Bearbeiten (Bearbeitung)

Kopieren

Paste

Löschen

Wählen Sie Alle

􀂃 Sicht) – bestimmt den Status des Arbeitsfelds des Programms, wo Sie Folgendes sehen können:

----------------Schlüssel

2. Neue Schlüsselverzeichnisse erstellen

!! Führen Sie das Programm aus PGP Desktop .

Erstellen Sie Ihre Schlüsselverzeichnisse, indem Sie das öffentliche Schlüsselverzeichnis „mykey“ nennen. pkr, Verzeichnis der geheimen Schlüssel mykey. skr, weitere Anweisungen befolgen.

Im Fenster PGPDesktop Befehl ausführen Datei/NeuPGP Schlüssel

Geben Sie Ihren Benutzernamen und Ihre E-Mail-Adresse ein...


Zeichnung. 2.2.2. Angabe des vollständigen Namens und der E-Mail-Adresse.

Entdecken Sie die Möglichkeiten der Funktion „Erweitert“ (im Bericht beschreiben!)

Zeichnung. 2.2.3. Geben Sie zusätzliche Schlüsselparameter an.

Schlüsselkomprimierung konfigurieren, der Schlüssel ist gültig bis 01.05.2014.

Der private Schlüssel ist in der Regel durch ein Passwort geschützt, was eine unbefugte Nutzung verhindert. Um den Schutz vor unbefugtem Zugriff Unbefugter auf den privaten Schlüssel zu erhöhen, sollte dieser nur auf dem eigenen Computer oder auf einer Diskette gespeichert und nur zum Signieren oder Entschlüsseln von E-Mail-Nachrichten verwendet werden. Im sich öffnenden Fenster Passphrase Geben Sie eine leicht zu merkende Passphrase mit mindestens 8 Zeichen und die Inschrift ein Eingabe ausblenden darf nicht angekreuzt werden, damit das eingegebene Passwort in der Zeile angezeigt wird. Bestätigen Sie im unteren Fenster das eingegebene Passwort.

Notiz: Passphrase Wird verwendet, um den privaten Schlüssel vor unbefugtem Zugriff zu schützen. Es empfiehlt sich, dass es aus mehreren Wörtern oder beliebigen Symbolen besteht (dies ist zuverlässiger). Bei der Phrase wird die Groß-/Kleinschreibung beachtet und sie sollte nicht zu kurz oder so einfach sein, dass man davon ausgehen kann. Es sollte nicht irgendwo aufgeschrieben hinterlassen werden, wo es jeder sehen kann, oder auf einem Computer gespeichert werden.

Zeichnung. 2.2.3. Geben Sie ein Passwort an, um den geheimen Schlüssel zu schützen.

Das Programm beginnt mit der Generierung eines Schlüsselpaares. Nach Abschluss der Schlüsselpaargenerierung wird der Indikator im Feld angezeigt Gesamtfortschritt wird komplett gefüllt sein. Dadurch wird das Programm darüber informiert, dass der Schlüsselgenerierungsprozess abgeschlossen ist.

Anschließend werden Sie aufgefordert, den Schlüssel zum globalen Schlüsselverzeichnis hinzuzufügen.

Als Ergebnis im Fenster PGPDesktop Es wird ein neues Schlüsselpaar bestehend aus drei Zeilen angezeigt:

Schlüsselpaar;

Benutzer-ID;

elektronische Unterschrift.

Sätze privater und öffentlicher Schlüssel werden in separaten Dateien gespeichert, die wie alle anderen Dateien in einen anderen Ordner auf Ihrer Festplatte oder einem anderen Speichermedium kopiert werden können. Standardmäßig werden Dateien mit privaten Schlüsselringen (secring. pkr) und öffentlichen Schlüsselringen (pubring. pkr) im PGP-Programmordner gespeichert ( C:\Eigene Dateien\PGP), zusammen mit anderen Dateien dieses Programms, aber Sicherungskopien können überall gespeichert werden.

2.2.4. Schlüssel abziehen

Um einen Schlüssel aus einem Schlüsselbund (Schlüsselverzeichnis) zu entfernen, wählen Sie ihn im Fenster aus PGPDesktop, und verwenden Sie dann eine der folgenden Methoden:

1. Drücken Sie die Taste Löschen.

2. Im Menüpunkt Bearbeiten Wählen Sie ein Team aus löschen.

2.2.5. Öffentlicher Schlüsselaustausch

Schlüssel exportieren

Normalerweise ist ein öffentlicher Schlüssel eine Datei, die nicht größer als 2 KB ist. Ein Beispiel für einen öffentlichen Schlüssel ist in Abb. dargestellt. 2.4. Sie können es an Ihre Korrespondenten senden, indem Sie es an eine E-Mail-Nachricht anhängen, die in einem E-Mail-Programm erstellt, auf einem Server abgelegt oder auf die Festplatte kopiert wird.

Um Ihren öffentlichen Schlüssel in eine Datei zu exportieren, müssen Sie die folgenden Schritte ausführen:

1) Führen Sie das Programm aus PGPDesktop.

2) Wählen Sie im Fenster das Schlüsselpaar aus.

3) Gehen Sie zum Menü Datei , Team auswählen Export und wähle Schlüssel .

4) Im erscheinenden Fenster Schlüssel in Datei exportieren Überprüfen Sie die Inschrift Private Schlüssel einschließen wurde nicht überprüft (d. h. es wird nur der öffentliche Schlüssel gesendet).

Abbildung 3. Öffentliche Schlüsseldatei

6) Klicken Sie OK .

!! Im Ordner Meine Dokumente Erstellen Sie einen Ordner mit Ihrem Nachnamen.

!! Exportieren Sie Ihren öffentlichen Schlüssel, indem Sie ihn in dem von Ihnen erstellten Ordner speichern.

!! Öffnen Sie das Programm Notepad (Start/Programme/Zubehör/Notepad). In einem Programm NotizbuchÖffnen Sie die Datei mit dem öffentlichen Schlüssel, indem Sie die Anzeige auf Fenster einstellen Dateityp- alle Dateien *.*.

Importieren eines Schlüssels

Um an Korrespondenten gesendete E-Mail-Nachrichten zu verschlüsseln, sollten deren öffentliche Schlüssel zu Ihrem Verzeichnis hinzugefügt werden.

Der öffentliche Schlüssel kann importiert werden:

1) Vom öffentlichen Schlüsselserver,

2) Aus dem Text der E-Mail-Nachricht

3) Aus einer öffentlichen Schlüsseldatei.

Sie können den resultierenden Schlüssel aus einer Datei auf verschiedene Arten in den Link importieren:

1) Führen Sie die Schlüsseldatei aus, indem Sie im angezeigten Fenster darauf doppelklicken Schlüssel(e) auswählen Importieren .

2) Aus dem Menü Schlüssel Fenster PGPkeys Menüpunkt wählen Importieren, im Fenster Wählen Sie Datei mit Schlüssel aus Suchen Sie die Datei mit dem Schlüssel und wählen Sie sie aus. Klicken Sie auf die Schaltfläche Offen, im angezeigten Fenster Schlüssel(e) auswählen Wählen Sie den Schlüssel aus und führen Sie den Befehl aus Importieren indem Sie auf den entsprechenden Button klicken .

3) Öffnen Sie den Ordner mit der Datei mit der Taste und ziehen Sie ihn mit der linken Maustaste in das Fenster PGPkeys .

4) Öffnen Sie die Textdatei, in der der Schlüssel gespeichert ist, mit einem Texteditor Notizbuch , Text auswählen Bearbeiten/Alle auswählen, kopieren Sie den ausgewählten Text in die Zwischenablage Bearbeiten/Kopieren. Gehe zum Fenster PGPkeys und führen Sie den Befehl aus Bearbeiten/Einfügen

Schlüsselauthentifizierung.

Nach Erhalt des öffentlichen Schlüssels sollten Sie dessen Zuverlässigkeit überprüfen, d. h., dass es sich tatsächlich um den öffentlichen Schlüssel des Korrespondenten handelt. Dies kann dadurch erfolgen, dass Sie den Korrespondenten, von dem der Schlüssel erhalten wurde, kontaktieren und ihn bitten, die eindeutige Identifikationsnummer seines öffentlichen Schlüssels telefonisch auszulesen.

Hinweis: Schlüssel werden durch eine eindeutige Schlüsselidentifikationsnummer (Fingerprint) referenziert, die eine Abkürzung des öffentlichen Schlüssels (die unteren 160 Bits des öffentlichen Schlüssels) darstellt. Wenn diese Schlüsselkennung angezeigt wird, werden der Kürze halber nur die unteren 32 Bits angezeigt. Schlüsselkennungen werden von PGP verwendet, um den Schlüssel beim Dekodieren einer Nachricht und beim Bestimmen ihrer Authentizität zu bestimmen.

Die Schlüsselidentifikationsnummer können Sie sehen, indem Sie mit der rechten Maustaste auf den Schlüssel klicken und auswählen Eigenschaften .

Und danach - Singing Key-Eigenschaften anzeigen.

Fingerabdruck- vollständige Identifikationsnummer;

Klicken Sie rein Unterschlüssel und definieren Sie die Kurzschlüsselnummer (ID).

!! Sehen Sie sich die vollständigen und kurzen ID-Nummern für Ihren Schlüssel an und vergleichen Sie sie.

2.2.6. Schlüssel hinzufügen

Sie können neu erstellte Schlüssel zu Schlüsselbunden hinzufügen oder die öffentlichen Schlüssel Ihrer Korrespondenten importieren.

!! Fügen Sie einen Schlüssel zum Schlüsselbund hinzu, indem Sie ein neues Schlüsselpaar erstellen. Verwenden Sie Ihren Namen als Schlüsselnamen und geben Sie Ihre E-Mail-Adresse im Format ein<имя>@mail. ru.

2.3. Nachrichtenverschlüsselung

Es gibt drei Hauptmethoden zum Verschlüsseln von Informationen:

1. Verschlüsseln Sie eine Nachricht direkt in einem unterstützten E-Mail-Programm PGP Desktop .

2. Verschlüsselung durch Kopieren des Nachrichtentextes in die Zwischenablage Windows.

3. Verschlüsseln einer Textdatei und anschließendes Anhängen an eine E-Mail-Nachricht.

Wir werden Nachrichten im Programm verschlüsseln Ausblick .

Nachricht– Hierbei handelt es sich um Daten eines bestimmten Formats, die zur Übertragung über Kommunikationsnetze bestimmt sind. Es wird in speziellen E-Mail-Programmen erstellt und kann nicht nur Text, sondern auch Dateien unterschiedlicher Art, einschließlich Grafiken und Audio, enthalten.

Um verschlüsselte Nachrichten zu erstellen und zu versenden, können Sie verschiedene E-Mail-Programme verwenden, die von PGP unterstützt werden: Outlook Express, The Bat!, Austausch, Eudora usw. Der einfachste Weg, dies zu tun, ist ein russifiziertes Programm Outlook Express.

Die Verschlüsselung und Signierung von Nachrichten in diesem Programm erfolgt wie folgt .

1) Starten Sie Outlook Express über das Hauptmenü, indem Sie Programme/Outlook Express auswählen.

!! Führen Sie das Programm aus Outlook Express. Erstellen Sie eine Nachricht mit einer Begrüßung an Ihren besten Freund (verwenden Sie die Computeradresse als E-Mail-Adresse des Absenders und die E-Mail-Adresse des Empfängers als).<фамилия>@mail. ru).

6) Führen Sie den Befehl aus Datei/Neu/Nachricht oder drücken Sie die Taste Erstellen Sie eine Nachricht in der Symbolleiste. Erweitern Sie das Fenster auf Vollbild.

7) Im erscheinenden Fenster Erstellen Sie eine Nachricht(Abb.2.5) Schreiben Sie den Text der Nachricht auf das Arbeitsfeld. Im Einklang An wen - Schreiben Sie die E-Mail-Adresse des Korrespondenten und in die Zeile Thema - Geben Sie den Betreff der Nachricht an (Sie dürfen ihn nicht angeben). Sie können eine beliebige Datei an eine Nachricht anhängen, indem Sie den Befehl ausführen Einfügen/Anhängen einer Datei, geben Sie im Suchfenster die Datei an, die angehängt werden soll, und klicken Sie darauf Investieren.

https://pandia.ru/text/80/365/images/image014_31.jpg" width="619" height="294 id=">

Reis. 2.6. Outlook Express-Fenster mit signierter Nachricht 19

Reis. 2.7. Outlook Express-Fenster mit einer verschlüsselten Nachricht

!! Schließe das Programm Outlook Express.

2.3.2. Verschlüsseln Sie die gesamte Datei

Mit dem PGP-Programm können Sie eine ganze Textdatei verschlüsseln. Gehen Sie dazu wie folgt vor:

1) Schreiben Sie den Text der Nachricht in einem beliebigen Texteditor (z. B. in einem Texteditor). Notizbuch) und speichern Sie es in einer Datei.

!! In einem Texteditor Notizbuch Schreiben Sie eine Nachricht mit Ihrer Privatadresse. Speichern Sie den Text in einer Datei Text. txt im Ordner Meine Dokumente.

!! Verschlüsseln und signieren Sie die gesamte Datei (ihr Name lautet jetzt Text. txt. pgp).

2) Gehen Sie zum Programm Dirigent, Wählen Sie die erstellte Datei aus und klicken Sie auf die rechte Maustaste.

3) Ein weiterer Befehl namens PGP erscheint im sich öffnenden Kontextmenü. Wenn Sie die Maus auf einen Menüpunkt platzieren PGP - Es öffnet sich ein Menü bestehend aus mehreren Befehlen:

􀂃 Sicher mit Schlüssel(Verschlüsselung ohne digitale Signatur mit einem Schlüssel);

􀂃 Sicher mit Passphrase(Verschlüsselung ohne digitale Signatur mit Passwort – ohne Schlüssel);

􀂃 Zeichenals(mit einer digitalen Signatur signieren);

􀂃 PGP Fetzen– die Datei zerstören (durch mehrere Überschreibungen mit zufälligen oder spezifischen Daten).

!! Öffnen Sie die Dateien mit den ursprünglichen und verschlüsselten Nachrichten und vergleichen Sie sie.

!! Hängen Sie die verschlüsselte Datei an eine E-Mail-Nachricht an und senden Sie sie zusammen.

!! Zerstören Sie die ursprüngliche Textdatei .

2.4. Entschlüsselung von Nachrichten

Laut Nachrichtenverschlüsselung gibt es im Wesentlichen zwei Möglichkeiten, sie zu entschlüsseln.

2.4.1. Entschlüsseln von Nachrichten in Outlook Express

1) Öffnen Sie die empfangene verschlüsselte Nachricht im Programm Outlook Express.

2) Im Menü PGP, Dropdown mit Taskleisten(Zeichen - Scheunenschloss) Führen Sie den Befehl aus Aktuelles Windows/Entschlüsseln und Überprüfen (Abb. 2.10).

3) Im erscheinenden PGP-Programmfenster müssen Sie ein Passwort eingeben, das den geheimen Schlüssel des Nachrichtenempfängers schützt, und auf klicken OK . Auf dem Bildschirm erscheint ein Fenster Textbetrachter , die die entschlüsselte Nachricht enthält. Durch Klicken auf die Schaltfläche kann es in die Zwischenablage kopiert werden In die Zwischenablage kopieren und fügen Sie es dann in einen Texteditor ein.

!! Führen Sie das Programm aus Outlook Express.Öffnen Sie den Ordner Postausgang. Doppelklicken Sie, um die von Ihnen erstellte Nachricht zu öffnen und zu entschlüsseln. Überprüfen Sie die Benutzer-ID und die Schlüssel-ID.

2.4.2. Entschlüsselung einer Datei, die Folgendes enthält

verschlüsselte Nachricht

1. Platzieren Sie die resultierende Datei mit verschlüsseltem Text Desktop (Datei mit der Erweiterung .pgp ).

2. Klicken Sie mit der rechten Maustaste auf die ausgewählte Datei.

3. Wählen Sie im angezeigten Kontextmenü aus PGP/Entschlüsseln und Verifizieren.

4. Im erscheinenden Fenster PGP muss die Passphrase eingeben Sie müssen ein Passwort eingeben, das den geheimen Schlüssel des Nachrichtenempfängers schützt, und auf klicken OK . Dadurch wird der entschlüsselte Text der Nachricht in einer gleichnamigen Datei ohne Erweiterung gespeichert .pgp.

!! Entschlüsseln Sie die in der Datei gespeicherte Nachricht Text. txt. pgp. Dann löschen Sie diese Datei.

2.6. Grundlagen der PGPdisk-Anwendung

PGP-Festplatte ist eine praktische Anwendung, mit der Sie einen Teil Ihrer Festplatte für die Speicherung vertraulicher Informationen reservieren können. Dieser reservierte Speicherplatz wird zum Erstellen einer Datei namens verwendet PGPdisk. Es verhält sich ähnlich wie eine Festplatte, da es als Speicher für Dateien und ausführbare Programme dient.

Anwendungsmenü PGP-Festplatte enthält folgende Elemente:

􀂃 NeuVirtuell Scheibe…(Erstellen Sie eine virtuelle neue Festplatte)

􀂃 Encrypt GanzScheibe…(ganze Festplatte verschlüsseln)

􀂃 Fetzen frei Raum(Freiraum freimachen)

2.6.1. Erstellen einer PGP-Festplatte

1) Führen Sie das Programm aus PGPdisk.

!! Auf Diskette MIT: erstelle dein eigenes PGP-Festplatte, und benennen Sie die Datei, die der Festplatte entspricht, mit Ihrem Namen. Bestimmen Sie die Festplattengröße von 500 KB bis 1 MB.

2) Führen Sie den Befehl aus NeuVirtuellScheibe, woraufhin der Assistent zum Erstellen eines PGP-Datenträgers auf dem Bildschirm erscheint.

https://pandia.ru/text/80/365/images/image018_23.jpg" width="621" height="372">

Sobald das neue Laufwerk erstellt wurde, wird es von PGP automatisch bereitgestellt, sodass es verwendet werden kann.

!! Öffne das Fenster Mein Computer und stellen Sie fest, ob die PGP-Festplatte angeschlossen ist.

2.6.2. Arbeiten mit PGP-Festplatte

Um damit zu arbeiten, kann ein PGP-Datenträger angeschlossen werden (in diesem Fall wird er im Fenster angezeigt). Mein Computer zusammen mit anderen Laufwerken) und trennen Sie die Verbindung, wenn Sie fertig sind.

Anschließen eines Laufwerks

1. Im Menü PGP Befehl ausführen Mounten Sie die Festplatte (Festplatte anschließen).

2. Suchen Sie im Browserfenster die Datei, die Ihrem PGP-Datenträger entspricht, und klicken Sie mit der linken Maustaste darauf. Klicken Eingeben.

3. Geben Sie eine Passphrase ein.

Als Ergebnis dieser Aktionen im Fenster Mein Computer Das PGP-Laufwerk wird mit dem Namen angezeigt, den Sie ihm zugewiesen haben. Sie können damit wie mit einer normalen Festplatte arbeiten: Dateien und Verzeichnisse erstellen, Dateien oder Verzeichnisse verschieben und kopieren oder löschen. Nachdem Sie mit vertraulichen Informationen gearbeitet haben, müssen Sie die Festplatte trennen. Sobald die Verbindung zum Laufwerk getrennt wird, wird sein Inhalt in einer Datei verschlüsselt.

!! Aus Ordner Kennenlernen von Windows 98 Kopieren Sie drei beliebige Dateien auf die erstellte PGP-Festplatte.

Trennen eines Laufwerks

1) Schließen Sie alle Programme und Dateien auf der PGP-Festplatte, da es nicht möglich ist, die Verbindung zur Festplatte zu trennen, wenn die Dateien auf dieser Festplatte noch geöffnet sind.

2) Gehen Sie zu Mein Computer, Wählen Sie den PGP-Datenträger mit der Maus aus.

3) Klicken Sie mit der rechten Maustaste oder erweitern Sie das Menü PGP.

4) Führen Sie den Befehl aus Hängen Sie die PGP-Festplatte aus im erscheinenden Menü.

Sobald die Verbindung zum Datenträger getrennt wird, wird er nicht mehr im Fenster angezeigt Mein Computer.

Ein PGP-Datenträger kann so konfiguriert werden, dass er automatisch heruntergefahren wird, wenn über einen bestimmten Zeitraum nicht darauf zugegriffen wird (siehe oben).

Klicken Sie mit der rechten Maustaste auf die Festplatte und wählen Sie PGP Desktop aus.

– Unmount Disk – unmounten (Diskette trennen),

– Datenträgereigenschaften bearbeiten – Datenträgerparameter bearbeiten.

Fügen Sie über „Datenträgereigenschaften bearbeiten“ einen weiteren Datenträgerbenutzer hinzu.

1. Lesen Sie alle Abschnitte der Richtlinien sorgfältig durch und erledigen Sie die mit gekennzeichneten Aufgaben !! .

2. Beginnen Sie nach der Erlaubnis des Lehrers mit der Erledigung der zusätzlichen Aufgabe.

3. Zusätzliche Aufgabe.

3.1. Erstellen Sie am Desktop Ordner und geben Sie ihm als Namen die Computernummer. Es dient dazu, gesendete Textdateien mit Nachrichten zu speichern.

3.2. Nutzung der App PGPkeys Erstellen Sie mit Ihrem Nachnamen ein Schlüsselpaar (öffentlicher und privater Schlüssel). Nehmen Sie die E-Mail-Adresse im folgenden Format an <фамилия>@<номер компьютера>.mail. ru(Zum Beispiel: *****@***ru). Notieren Sie sich Ihre Schlüssel-ID-Nummer.

3.3. Exportieren Sie Ihren öffentlichen Schlüssel in den Ordner mit Ihrer Computernummer auf Ihrem Desktop.

3.4. Erstellen Sie im Ordner mit der Computernummer auf dem Desktop eine Textdatei mit dem Namen <номер компьютера>.txt mit einem Texteditor Notizbuch und notieren Sie die Identifikationsnummer des exportierten öffentlichen Schlüssels.

3.5. Senden Sie Ihre öffentliche Schlüssel- und Identifikationsnummerndatei an alle Computer: Kopieren Sie die entsprechenden Dateien in Ordner Netzwerkumgebung/<номер компьютера>/C:/Windows/Desktop/Ordner mit Computernummer .

3.6. Importieren Sie die Ihnen zugesandten öffentlichen Schlüssel mithilfe der verschiedenen im Abschnitt beschriebenen Importmethoden Schlüssel importieren.

3.7. Schreiben Sie mit einem Texteditor eine Nachricht in den Ordner mit der Computernummer auf dem Desktop Notizbuch , mit Ihrem Nachnamen, Ihrer Adresse und etwaigen Vierzeilern. Verschlüsseln Sie die Nachricht mit einer Kopie in der Zwischenablage und dem öffentlichen Schlüssel des Korrespondenten und fügen Sie eine elektronische Signatur hinzu. Speichern Sie die Datei unter dem Namen Adresse_<номер компьютера>.txt und senden (kopieren) Sie es an Ihren Korrespondenten auf einem Computer in der Nähe in einem Ordner mit der Computernummer auf seinem Desktop.

Versuchen Sie, die von Ihnen erstellte Nachricht zu entschlüsseln.

3.8. Schreiben Sie eine Nachricht mit dem Namen Ihres Hauptfachs und dem Zweck Ihres Studiums. Speichern Sie die Datei unter dem Namen besonders _<номер компьютера>. txt. Verschlüsseln Sie eine Datei, die eine Nachricht enthält, über das Programm Dirigent, Verwendung des öffentlichen Schlüssels des Korrespondenten und Platzierung einer elektronischen Signatur. Senden Sie die erstellte Datei an Ihren Korrespondenten auf einem nahe gelegenen Computer im Ordner mit der Computernummer, der sich auf seinem Desktop befindet.

3.9. Öffnen Sie den Ordner mit Ihrer Computernummer. Erweitern Sie die Datei Adresse _<номер компьютера>. txt, Drucken Sie den verschlüsselten Text der Nachricht auf dem Drucker aus , Entschlüsseln Sie den Inhalt durch Kopieren in die Zwischenablage, vergleichen Sie die Schlüsselidentifikationsnummern und die elektronische Signatur des Korrespondenten mit der entschlüsselten Nachricht. Geben Sie den entschlüsselten Text der Nachricht auf dem Drucker aus.

3.10. Öffnen Sie den Ordner mit Ihrer Computernummer. Entschlüsseln Sie die Datei mit der Erweiterung besonders _<номер компьютера>. txt.pgp, entschlüsseln Sie es mit dem Programm Dirigent Vergleichen Sie die Schlüsselidentifikationsnummern und die elektronische Signatur Ihres Korrespondenten mit der entschlüsselten Nachricht.

3.11. Entfernen Sie Ihr Schlüsselpaar mit Erlaubnis des Lehrers aus dem Schlüsselkatalog und den importierten Schlüsseln der Korrespondenten.

3.12. Löschen Sie den Ordner mit der Computernummer

2. Auflistung der öffentlichen Schlüssel.

3. Auflistungen verschlüsselter und entschlüsselter Nachrichten.

4. Analyse verschiedener Methoden der Nachrichtenverschlüsselung.

5. Kurze Schlussfolgerungen zur geleisteten Arbeit.

Kontrollfragen

1. Was sind die Hauptfunktionen des PGP-Programms?

2. Was ist ein Schlüssel?

3. Erklären Sie den Zweck öffentlicher und privater Schlüssel.

4. Erklären Sie das Prinzip der Verschlüsselung und Entschlüsselung von Informationen mithilfe von PGP.

5. Wie wird eine elektronische Signatur angewendet?

6. Wie können Sie öffentliche Schlüssel mit Ihren Korrespondenten austauschen?

7. Wo kann ich die Schlüssel-ID und die Benutzer-ID sehen?

8. Nennen Sie die wichtigsten Möglichkeiten zur Verschlüsselung von Nachrichten mit PGP.

9. Nennen Sie die wichtigsten Möglichkeiten zum Entschlüsseln von Nachrichten mit PGP.

10. Mit welchem ​​Schlüssel wird eine Nachricht verschlüsselt und mit welchem ​​Schlüssel wird eine elektronische Signatur erstellt?

11. Wer kann eine mit einem öffentlichen Schlüssel verschlüsselte Nachricht entschlüsseln?

12. Warum benötigen Sie eine elektronische Signatur?

13. Was ist eine PGP-Festplatte?

14. Wie kann man mit einer PGP-Festplatte arbeiten?

15. Erklären Sie das Verfahren zum Trennen einer PGP-Festplatte.

  • Übersetzung

Wenn Sie Code schreiben, der in öffentliche Repositorys gespeichert wird, kann PGP für Sie nützlich sein. In dieser Artikelserie, von der wir heute den ersten veröffentlichen, werden wir uns mit der Verwendung von PGP zur Gewährleistung der Integrität des Softwarecodes befassen. Diese Materialien richten sich in erster Linie an Entwickler freier Software, obwohl die hier dargelegten Grundsätze in jeder Situation gelten, in der die Entwicklung von verteilten Programmierteams durchgeführt wird.

Folgende Themen werden hier behandelt:

  • PGP-Grundlagen und Empfehlungen für die Arbeit mit verwandter Software.
  • PGP mit Git verwenden.
  • Schutz des Entwicklerkontos.

Über die Struktur von Materialien

Jeder Abschnitt dieser Materialreihe ist in zwei Teile unterteilt:
  1. Eine Checkliste, die auf die Bedürfnisse eines bestimmten Projekts zugeschnitten werden kann.
  2. Erläuterungen zu den Elementen der Checkliste sowie Anleitungen zum Arbeiten mit den Programmen.

Checklistenfunktionen

Die Elemente in jeder Checkliste enthalten Informationen über die Prioritätsstufe des Elements. Wir hoffen, dass dies Ihnen bei der Entscheidungsfindung über die Verwendung dieser Empfehlungen hilft.
  • Den Punkten mit der Priorität „wichtig“ sollte besondere Aufmerksamkeit gewidmet werden. Werden die Empfehlungen aus den „wichtigen“ Punkten nicht umgesetzt, besteht ein hohes Risiko für Probleme mit dem im Projekt enthaltenen Code.
  • Elemente mit der Priorität „empfohlen“ enthalten Empfehlungen, deren Implementierung zur Verbesserung Ihres allgemeinen Sicherheitsniveaus sinnvoll ist. Ihre Umsetzung kann sich auf die Interaktion des Programmierers mit seiner Arbeitsumgebung auswirken, was möglicherweise die Aneignung neuer Gewohnheiten oder die Aufgabe alter Gewohnheiten erfordert.
Bitte beachten Sie, dass es sich bei allen hier aufgeführten Listen lediglich um Empfehlungen handelt. Wenn Sie der Meinung sind, dass die angegebenen Prioritätsstufen nicht den Sicherheitsanforderungen Ihres Projekts entsprechen, sollten Sie sie an Ihre Bedürfnisse anpassen.

Grundlegende PGP-Konzepte und -Tools

▍Checkliste

Hier sind die Themen, die Sie durcharbeiten müssen, nachdem Sie das Material in diesem Abschnitt erfolgreich gemeistert haben:
  1. Die Rolle von PGP in der Entwicklung freier Software (Wichtig).
  2. Grundlagen der Public-Key-Kryptographie (Wichtig).
  3. Unterschiede zwischen Verschlüsselungs- und Signierungsmaterialien (Wichtig).
  4. PGP-Schlüsselidentität (Wichtig).
  5. Gültigkeit der PGP-Schlüssel (Wichtig).
  6. Installieren der GnuPG-Dienstprogramme (Version 2.x) (Wichtig).

▍Erläuterungen

Die Open-Source-Community verlässt sich seit langem auf PGP, um die Authentizität und Integrität der entwickelten Softwareprodukte sicherzustellen. Sie wissen es vielleicht nicht, aber egal, ob Sie Linux, Mac oder Windows verwenden, Sie haben PGP bereits verwendet, um die Integrität Ihrer Computerumgebung sicherzustellen.
  • Linux-Distributionen verwenden PGP, um sicherzustellen, dass Binär- oder Quellpakete vom Zeitpunkt ihrer Erstellung bis zur Installation durch den Endbenutzer unverändert bleiben.
  • Freie Softwareprojekte bieten in der Regel separate PGP-Signaturen für veröffentlichte Softwarearchive an, sodass Projekte, die sich darauf verlassen, die Integrität heruntergeladener Versionen überprüfen können, bevor sie sie in ihre eigenen Distributionen integrieren.
  • Freie Software-Projekte stützen sich in der Regel auf PGP-Signaturen im Code selbst, um die Herkunft zu verfolgen und die Integrität des von den Entwicklern zum Projekt beigetragenen Codes sicherzustellen.
Dies ist dem Entwicklerzertifikat und den Code-Signatur-Mechanismen sehr ähnlich, die von Programmierern verwendet werden, die auf Closed-Source-Plattformen arbeiten. Tatsächlich sind die Grundkonzepte, die diesen beiden Technologien zugrunde liegen, weitgehend gleich. Sie unterscheiden sich hauptsächlich in technischen Implementierungsdetails und in der Art und Weise, wie sie Vertrauen delegieren. PGP ist nicht auf eine zentrale Zertifizierungsstelle angewiesen; stattdessen ermöglicht das System Benutzern, jedem Zertifikat unabhängig eine Vertrauensstufe zuzuweisen.

Unser Ziel ist es, Ihnen dabei zu helfen, die Herkunft des in Ihr Projekt eingegebenen Codes zu kontrollieren und seine Integrität mithilfe von PGP zu überwachen. Sie können dies erreichen, indem Sie die Best Practices für die Arbeit mit PGP befolgen und die grundlegenden Sicherheitsregeln verstehen.

▍Überblick über die Funktionsweise von PGP

Sie müssen nicht alle Details über die Funktionsweise von PGP kennen. Um diese Technologie erfolgreich einzusetzen, reicht es aus, ihre Grundkonzepte zu verstehen. PGP verwendet Public-Key-Kryptografie. Mithilfe kryptografischer Verfahren kann beispielsweise Klartext in Chiffretext umgewandelt werden. Für diesen Vorgang sind zwei unterschiedliche Schlüssel erforderlich:
  • Ein öffentlicher Schlüssel, der jedem bekannt ist.
  • Ein privater Schlüssel, der nur dem Besitzer bekannt ist.

▍Verschlüsselung

Zum Verschlüsseln verwendet PGP den öffentlichen Schlüssel der Person, für die das verschlüsselte Material bestimmt ist. Durch die Verschlüsselung wird eine Nachricht erstellt, die nur mit dem entsprechenden privaten Schlüssel des Empfängers der Nachricht entschlüsselt werden kann.

Der Verschlüsselungsprozess sieht folgendermaßen aus:

  1. Der Absender erstellt einen zufälligen Verschlüsselungsschlüssel (Sitzungsschlüssel).
  2. Der Absender verschlüsselt den Inhalt der Nachricht mit diesem Sitzungsschlüssel (unter Verwendung einer symmetrischen Verschlüsselung).
  3. Der Absender verschlüsselt den Sitzungsschlüssel mit dem öffentlichen PGP-Schlüssel des Empfängers.
  4. Der Absender sendet verschlüsselte Daten und einen verschlüsselten Sitzungsschlüssel an den Empfänger.
Um eine verschlüsselte Nachricht zu entschlüsseln, führen Sie die folgenden Schritte aus:
  1. Der Empfänger entschlüsselt den Sitzungsschlüssel mit seinem privaten PGP-Schlüssel.
  2. Der Empfänger verwendet den Sitzungsschlüssel, um den Inhalt der Nachricht zu entschlüsseln.

▍Signieren

Zum Signieren von Daten werden öffentliche und private PGP-Schlüssel umgekehrt verwendet:
  1. Der Unterzeichner generiert einen Prüfsummen-Hash einiger Daten.
  2. Der Unterzeichner verwendet seinen eigenen privaten Schlüssel, um diese Prüfsumme zu verschlüsseln.
  3. Der Unterzeichner stellt zusammen mit den Daten eine verschlüsselte Prüfsumme bereit.
Um die Signatur zu überprüfen, führen Sie die folgenden Schritte aus:
  1. Der Verifizierer generiert seine eigene Prüfsumme der Daten.
  2. Der Prüfer verwendet den öffentlichen Schlüssel des Unterzeichners, um die bereitgestellte Prüfsumme zu entschlüsseln.
  3. Stimmen die Prüfsummen überein, wird die Integrität des Inhalts überprüft.

▍Kombination von Verschlüsselung und Signierung

Häufig werden verschlüsselte Nachrichten auch mit dem eigenen PGP-Schlüssel des Datensenders signiert. Dieser Ansatz sollte immer dann verwendet werden, wenn verschlüsselte Nachrichten ausgetauscht werden, da eine Verschlüsselung ohne Authentifizierung wenig Sinn macht (vielleicht wird Anonymität in solchen Dingen nur von Geheimagenten und solchen benötigt, die bestimmte sensible Informationen öffentlich zugänglich machen).

▍Schlüsselidentifikationsdaten

Mit jedem PGP-Schlüssel muss die Identität des Schlüsselbesitzers verknüpft sein. In der Regel handelt es sich hierbei um den vollständigen Namen und die E-Mail-Adresse der Person im folgenden Format:

Alice Ingenieur
Manchmal enthalten die Anmeldeinformationen auch Kommentare in Klammern, die dem Endbenutzer Details zu einem bestimmten Schlüssel liefern sollen:

Bob Designer (veralteter 1024-Bit-Schlüssel)
Da menschliche Schlüsselinhaber mehrere berufliche und persönliche Rollen spielen können, können im selben Schlüssel mehrere Identitätssätze vorhanden sein:

Alice Ingenieur Alice Ingenieur Alice Ingenieur
Wenn mehrere Identitätssätze verwendet werden, wird einer davon als der primäre markiert, um das Auffinden des Schlüssels zu erleichtern.

▍Schlüsselzuverlässigkeit

Um den öffentlichen Schlüssel einer Person zur Verschlüsselung oder Verifizierung verwenden zu können, müssen Sie sicherstellen, dass er tatsächlich dieser Person (in diesem Fall Alice) und nicht einem Betrüger (der Name des Betrügers sei Eve) gehört. In PGP wird dies als Schlüsselgültigkeit bezeichnet:
  • Vollständige Schlüsselgültigkeit bedeutet, dass ein sehr hohes Maß an Sicherheit besteht, dass der Schlüssel Alice gehört.
  • Grenzvertrauen in einen Schlüssel bedeutet, dass wir einigermaßen sicher sind, dass der Schlüssel Alice gehört.
  • Die unbekannte Gültigkeit eines Schlüssels bedeutet, dass wir absolut nicht sicher sind, ob der Schlüssel Alice gehört.

▍Netzwerk des Vertrauens und „Vertrauen beim ersten Gebrauch“-Mechanismus

PGP umfasst einen Vertrauensdelegierungsmechanismus, der als Web of Trust (WOT) bekannt ist. Im Kern handelt es sich um einen Versuch, die Notwendigkeit zentralisierter Zertifikatsdienste, wie sie bei HTTPS/TLS verwendet werden, zu ersetzen. Bei diesem Ansatz trifft der Nutzer selbstständig Entscheidungen darüber, wem er vertrauen kann.

Leider verstehen nur sehr wenige Menschen, wie das Web of Trust funktioniert, und noch weniger Menschen interessieren sich für diese Technologie. Obwohl Vertrauensnetzwerke weiterhin ein wichtiger Aspekt der OpenPGP-Spezifikation bleiben, haben bestehende Versionen von GnuPG (2.2 und höher) einen alternativen Ansatz implementiert, der durch den Trust on First Use (TOFU)-Mechanismus repräsentiert wird.

TOFU kann mit SSH verglichen werden. Wenn Sie zum ersten Mal über SSH eine Verbindung zu einem Remote-System herstellen, merkt sich Ihr System seinen Schlüssel-Fingerabdruck. Wenn sich der Schlüssel ändert, benachrichtigt Sie der SSH-Client, lehnt die Verbindung ab und fordert Sie auf, eine Entscheidung darüber zu treffen, ob Sie dem geänderten Schlüssel vertrauen oder nicht.

Der TOFU-Mechanismus funktioniert auf ähnliche Weise. Wenn Sie den PGP-Schlüssel einer anderen Person zum ersten Mal importieren, gilt dieser als vertrauenswürdig. Wenn GnuPG dann auf einen neuen Schlüssel mit den gleichen Anmeldeinformationen stößt, werden beide Schlüssel als ungültig markiert und Sie müssen selbst entscheiden, welchen Sie behalten möchten.

In diesem Tutorial verwenden wir das TOFU-Vertrauensmodell.

▍Über Terminologie

An dieser Stelle möchten wir darauf hinweisen, wie wichtig es ist, die Unterschiede zwischen Begriffen wie PGP, OpenPGP, GnuPG und gpg zu verstehen:
  • PGP (Pretty Good Privacy) ist der Name eines kommerziellen Programms, das 1991 veröffentlicht wurde.
  • OpenPGP ist ein IETF-Standard, der mit PGP kompatibel ist.
  • GnuPG (Gnu Privacy Guard) ist freie Software, die den OpenPGP-Standard implementiert.
  • Das Befehlszeilentool für GnuPG heißt gpg.
Heutzutage wird der Begriff PGP fast überall im Sinne des „OpenPGP-Standards“ und nicht als Programmname verwendet, weshalb PGP und OpenPGP synonym verwendet werden. Die Begriffe GnuPG und GPG sollten nur für bestimmte Tools verwendet werden und nicht für Standards und andere Konzepte, mit denen wir arbeiten. Zum Beispiel:
  • PGP-Schlüssel (nicht GnuPG oder GPG)
  • PGP-Signierung (nicht GnuPG oder GPG)
  • PGP-Schlüsselserver (nicht GnuPG oder GPG)
Das Verständnis dieser Unterschiede sollte Ihnen bei der Kommunikation mit anderen PGP-Benutzern helfen.

▍GnuPG installieren

Wenn Sie Linux verwenden, bedeutet dies, dass die GnuPG-Software bereits auf Ihrem System installiert ist. Auf dem Mac müssen Sie GPG-Suite installieren oder den Befehl brew install gnupg2 verwenden. Wenn Sie ein Windows-Benutzer sind, ist GPG4Win die richtige Wahl und Sie müssen wahrscheinlich einige der Befehle in diesem Handbuch ändern. Wenn Sie unter Windows eine Unix-ähnliche Umgebung verwenden, müssen Sie die Befehle nicht ändern. Wenn Sie andere Plattformen nutzen, müssen Sie selbst die passende GnuPG-Implementierung finden.

▍GnuPG-Versionen 1 und 2

Sowohl GnuPG v.1 als auch GnuPG v.2 implementieren denselben Standard, stellen jedoch inkompatible Bibliotheken und Befehlszeilentools bereit, was dazu führt, dass viele Distributionen sowohl mit der veralteten Version 1 als auch mit der neueren Version 2 ausgeliefert werden. Sie müssen sicherstellen, dass Sie immer Verwenden Sie GnuPG v.2.

Um herauszufinden, welche Version von GnuPG sich auf Ihrem System unter dem Namen gpg verbirgt, führen Sie zunächst den folgenden Befehl aus:

$ gpg --version | Kopf -n1
Wenn Sie so etwas wie gpg (GnuPG) 1.4.x sehen, bedeutet das, dass der gpg-Befehl GnuPG v.1 aufruft. Versuchen Sie in diesem Fall den gpg2-Befehl:

$ gpg2 --version | Kopf -n1
Wenn Sie so etwas wie gpg (GnuPG) 2.x.x sehen, ist alles in Ordnung. Hier gehen wir davon aus, dass Sie über GnuPG Version 2.2 oder höher verfügen. Wenn Sie Version 2.0 von GnuPG verwenden, funktionieren einige der hier angegebenen Befehle nicht. Sie sollten daher die Installation der neuesten Version 2.2 von GnuPG in Betracht ziehen.

▍Ein Alias ​​für GnuPG v.2

Wenn Ihr System sowohl über einen gpg-Befehl als auch über einen gpg2-Befehl verfügt, wäre es eine gute Idee, alles so zu konfigurieren, dass der gpg-Befehl GnuPG v.2 aufruft und nicht die alte Version der Software. Sie können dies tun, indem Sie einen Alias ​​erstellen:

$ alias gpg=gpg2
Dieser Befehl kann in .bashrc eingefügt werden, damit GnuPG v.2 auf den gpg-Befehl reagiert.

Ergebnisse

Hier haben wir über die Grundlagen von PGP gesprochen, die Sie kennen müssen, um PGP erfolgreich zum Codeschutz einzusetzen. Das nächste Mal werden wir über das Erstellen und Schützen von PGP-Schlüsseln sprechen.

Liebe Leser! Verwenden Sie PGP, um den Code Ihrer Softwareprojekte zu schützen?

Tags: Tags hinzufügen

Dieser Artikel ist eine Kurzanleitung zur Verwendung von GnuPG (auch bekannt als GPG). Darin finden Sie grundlegende Befehle, Anwendungsbeispiele sowie Anweisungen zum Anhängen von GPG an E-Mail-Clients. Darüber hinaus wird davon ausgegangen, dass Sie mit dem Funktionsprinzip von GPG vertraut sind und es nicht erforderlich ist, beispielsweise zu erklären, was asymmetrische Kryptographie, öffentliche und private Schlüssel, digitale Signaturen usw. sind. In den mehreren Jahrzehnten des Bestehens von GPG ist es niemandem besonders gelungen, es zu knacken, was uns darauf hindeutet, dass es sich um eine ziemlich zuverlässige Lösung sowohl für den Austausch verschlüsselter Nachrichten als auch für die einfache Verschlüsselung von Dateien handelt.

Terminologie

Es gibt einige Verwirrung in der Terminologie. Beispielsweise kann nicht jeder klar erklären, wie sich PGP von GPG unterscheidet. Lassen Sie uns alles herausfinden.

  • OpenPGP ist ein Verschlüsselungsstandard, der in RFC 4880 und RFC 6637 beschrieben ist. Nicht zu verwechseln mit spezifischen Implementierungen wie PGP und GPG;
  • GnuPG oder GPG– eine spezifische offene (GPLv3) Implementierung von OpenPGP, die in diesem Artikel besprochen wird;
  • PGP ist eine hochgradig proprietäre Implementierung von OpenPGP der PGP Corporation. Im Jahr 2010 wurde das Unternehmen von Symantec gekauft und seine Produkte in Symantec Desktop Email Encryption umbenannt.

Wenn man „PGP“ sagt, meint man oft die in OpenPGP beschriebene Verschlüsselungsmethode und damit alle seine Implementierungen.

Grundlegende GnuPG-Befehle

Schlüssel generieren:

gpg --gen-key

Es empfiehlt sich, den RSA-Algorithmus und eine Schlüssellänge von 4096 Bit zu wählen.

Wichtig! Vergessen Sie nicht das Passwort für den privaten Schlüssel.

Ein häufiges Problem ist eine Meldung wie diese:

Es sind nicht genügend Zufallsbytes verfügbar. Bitte machen Sie andere Arbeiten, um zu spenden
das Betriebssystem eine Chance, mehr Entropie zu sammeln! (Benötigt 204 weitere Bytes)

Es kann durch die Installation eines Daemons zum Sammeln von Entropie gelöst werden:

sudo apt-get install rng-tools

Sehen Sie sich eine Liste der Schlüssel an:

gpg --list-keys
gpg --list-secret-keys
gpg --list-public-keys

Einen Schlüssel-Fingerabdruck erhalten:

gpg --fingerprint afiskon@ example.ru

Beispielausgabe:

pub 4096R/8640D6B9 27.09.2016
Fingerabdruck = DB5E AA39 0745 427D ED31 D189 3197 3F00 8640 D6B9
uid Aleksander Alekseev
sub 4096R/5982B4BF 27.09.2016

Fingerabdrücke werden in erster Linie verwendet, um zu überprüfen, ob tatsächlich der richtige Schlüssel vom Schlüsselserver importiert wurde (siehe unten). Sie werden nicht für die Suche verwendet.

gpg --armor --output privkey.txt --export-secret-keys 8640D6B9

Öffentlichen Schlüssel importieren:

gpg --import key.txt

Privaten Schlüssel importieren:

gpg --allow-secret-key-import --import privkey.txt

Wenn Sie --allow-secret-key-import nicht angeben, wird nur der öffentliche Schlüssel importiert, und wenn Sie versuchen, etwas zu signieren, erhalten Sie seltsame Fehlermeldungen wie:

gpg: kein standardmäßiger geheimer Schlüssel: geheimer Schlüssel nicht verfügbar
gpg: msg.txt: Signieren+Verschlüsselung fehlgeschlagen: Geheimschlüssel nicht verfügbar

Einen öffentlichen Schlüssel zum Schlüsselserver exportieren:

gpg --keyserver pgp.mit.edu --send-keys 8640D6B9

Wichtig! Sobald Sie einen Schlüssel auf den Keyserver hochgeladen haben, ist es nicht mehr möglich, ihn zu löschen, Sie können ihn nur widerrufen. Stellen Sie sicher, dass Sie eine zuverlässige Sicherung des Schlüssels erstellt haben. Wenn Sie noch nie mit PGP/GPG gearbeitet haben, Sehr Ich empfehle Ihnen, zunächst an Postadressen in der Zone example.ru zu üben.

Es spielt keine Rolle, welchen Schlüsselserver Sie angeben. Es gibt zum Beispiel auch keys.gnupg.net und andere. Sie alle tauschen von Zeit zu Zeit Daten miteinander aus. Es ist sinnvoll, Schlüssel gleichzeitig an mehrere Server zu senden, damit alle PGP/GPG-Benutzer sie schneller sehen können. Die Serversynchronisierung dauert nach meinen Beobachtungen 10-15 Minuten.

Hinweis: Um die ständige Angabe von --keyserver zu vermeiden, fügen Sie einfach zu ~/.bashrc hinzu:

Alias ​​gpg = „gpg --keyserver pgp.mit.edu“

Importieren eines öffentlichen Schlüssels vom Schlüsselserver:

gpg --keyserver pgp.mit.edu --search-keys afiskon@ example.ru

In der PGP/GPG-Welt gibt es ein sogenanntes Web of Trust. Kurz gesagt bedeutet dies, dass GPG dem Schlüssel nicht vertraut, es sei denn, er wurde von einer vertrauenswürdigen Person signiert. Wenn Sie außerdem Petya vertrauen und Petya Kolya vertraut, dann vertrauen Sie automatisch auch Kolya. Insbesondere bei der Überprüfung einer Signatur und anderen Aktionen meldet sich GPG standardmäßig wie folgt:

Um dies zu beheben, sagen wir:

gpg --edit-key afiskon@ example.ru

Dann sagen wir im Dialog „Vertrauen“, drücken 5 („Ich vertraue letztlich“) und sagen „Beenden“. Andere Schlüssel können mit dem Befehl tsign signiert werden. Übrigens können Sie dort auch das Passwort für Ihren Schlüssel ändern (Befehl passwd), das Ablaufdatum des Schlüssels in eine beliebige Richtung ändern (Befehl expire), einen Namen/eine E-Mail-Adresse hinzufügen (Befehl adduid) und einen Namen/eine E-Mail-Adresse löschen (Befehl revuid). ), sehen Sie sich die standardmäßig verwendeten Verschlüsselungsalgorithmen an (showpref) und machen Sie andere interessante Dinge.

Notiz: Was tun, wenn der Schlüssel abgelaufen ist? In diesem Fall können Sie das Ablaufdatum auf ein späteres Datum ändern und den Schlüssel erneut hochladen. Oder erstellen Sie einen neuen Schlüssel, signieren Sie ihn mit dem alten und laden Sie den neuen Schlüssel auf den Schlüsselserver hoch. Ein Widerruf ist nicht erforderlich.

Sie können den Schlüssel einer beliebigen Person signieren und den signierten Schlüssel auf den Server hochladen und so bestätigen, dass der Schlüssel tatsächlich der in der Beschreibung angegebenen Person gehört:

gpg --sign-key 7EFE74E5

Auf einem anderen Computer können Sie den Schlüssel erneut herunterladen und sehen, wer ihn signiert hat:

gpg --keyserver pgp.mit.edu --search-keys eax@ example.ru
gpg --list-sigs eax@ example.ru
gpg --check-sigs eax@ example.ru

Von Zeit zu Zeit lohnt es sich, die Schlüssel zu aktualisieren, falls die Schlüssel neue Signaturen haben oder einige Schlüssel widerrufen wurden:

gpg --keyserver pgp.mit.edu --refresh-keys

Ein Beispiel für das Verschlüsseln und Signieren einer Datei für einen bestimmten Empfänger (der Schalter -r kann mehrmals angegeben werden):

gpg --encrypt --sign --armor -r eax@ example.ru msg.txt

Das Entschlüsseln der Datei und das Überprüfen der Signatur erfolgt mit dem Befehl:

Ein Beispiel für das Signieren und Überprüfen der Signatur einer Binärdatei (z. B. eines ISO-Disk-Images):

gpg --detach-sign file.iso
gpg --verify file.iso.sig

Symmetrische Dateiverschlüsselung/-entschlüsselung (nützlich zum Beispiel zum Speichern von Passwörtern):

gpg -o nonsense.gpg --cipher-algo AES -a -c nonsense.txt
gpg -o nonsense2.txt -d nonsense.gpg

Symmetrische Verschlüsselung mit Speicherung im Binärformat (praktisch zum Verschlüsseln von Backups):

tar -cvzf - /home/eax | \
gpg --symmetric --cipher-algo AES256 --digest-algo SHA256 \
--compression-algo Unkomprimiert > backup.tgz.gpg

Entschlüsselung einer so verschlüsselten Datei:

gpg --decrypt backup.tgz.gpg | tar -xvzf -

Allerdings fordert GPG standardmäßig ein Passwort über die GUI-Schnittstelle an, was ich persönlich nicht sehr praktisch finde. Sie können dieses Verhalten wie folgt ändern:

Echo „pinentry-program /usr/bin/pinentry-tty“ >> \
~/ .gnupg/gpg-agent.conf
killall gpg-agent

Es kann sich herausstellen, dass Ihr privater Schlüssel kompromittiert ist, das heißt, er wurde gestohlen und das Passwort dafür erraten. Oder du hast es verloren. Oder Sie können sich einfach nicht an das Schlüsselpasswort erinnern. Für solche Fälle ist eine Schlüsselsperre vorgesehen. Es wird so gemacht. Vorab, unmittelbar nach der Schlüsselerstellung, müssen Sie ein Sperrzertifikat erstellen:

gpg --gen-revoke --armor --output =revocation.crt eax@ example.ru

Damit kann der Schlüssel wie folgt widerrufen werden:

gpg --import revocation.crt
gpg --keyserver pgp.mit.edu --send-keys 7EFE74E5

Wichtig! Das Sperrzertifikat ist unverschlüsselt und kann von jedem verwendet werden. Achten Sie darauf, diese an einem sicheren Ort (am besten an mehreren Orten) und verschlüsselt aufzubewahren!

GnuPG an Claws Mail anhängen

In Ubuntu benötigen wir folgende Pakete:

sudo apt-get install Claws-Mail-pgpinline Claws-Mail-Pgpmime

Unter Konfiguration → Plugins → Laden laden wir pgpcore.so, pgpinline.so und pgpmime.so. Als nächstes konfigurieren wir einfach die Plugins über die Client-Einstellungen. In Ihren Kontoeinstellungen können Sie festlegen, welche Schlüssel verwendet werden sollen, sowie neue Schlüssel generieren und an den Schlüsselserver senden. Beim Schreiben eines Briefes werden die Kontrollkästchen „Verschlüsseln“ und „Signieren“ in den Optionen verfügbar.

In den Kontoeigenschaften auf der Registerkarte „Datenschutz“ können Sie Plugins so konfigurieren, dass Nachrichten immer signiert, verschlüsselt beim Antworten auf verschlüsselte Nachrichten usw. werden. Ich empfehle Ihnen, PGP/MIME zu verwenden, da PGP/Inline für Benutzer, die kein PGP/GPG verwenden, ziemlich nervig sein kann. Das heißt, fast jeder.

Das einzige Problem, auf das ich mit dem Plugin gestoßen bin, war, dass man in den Einstellungen den vollständigen Pfad zur ausführbaren GPG-Datei angeben muss, danach hat alles funktioniert.

GnuPG an Mutt anhängen

Abschluss

GPG ist mit vielen anderen Dingen verknüpft. Nehmen wir an, es gibt ein Enigmail-Plugin für Thunderbird. Es gibt mobile Anwendungen, die GPG unterstützen. Für das iPhone gibt es beispielsweise oPenGP und iPGMail. Darüber hinaus gibt es Plugins für IM-Clients, insbesondere für Psi. Leider ist es nicht möglich, sie alle in einem Artikel zu behandeln.

Als Hausaufgabe können Sie mich zu Ihrem Schlüsselbund hinzufügen, meine Schlüssel signieren und mir einen verschlüsselten Brief per E-Mail senden.

Benutzen Sie PGP/GPG?



 


Lesen:



eBay-Promocodes und -Gutscheine eBay-Rabattgutscheine

eBay-Promocodes und -Gutscheine eBay-Rabattgutscheine

eBay ist eine Online-Auktion zum Verkauf von Waren verschiedener thematischer Kategorien. Bietet Interessen beliebter Online-Shops und...

Xiaomi Power Bank-Ladegerät: Bewertungen, Beschreibung und Eigenschaften Wie man eine originale Xiaomi Power Bank von einer Fälschung unterscheidet

Xiaomi Power Bank-Ladegerät: Bewertungen, Beschreibung und Eigenschaften Wie man eine originale Xiaomi Power Bank von einer Fälschung unterscheidet

Jetzt befinden wir uns im Zeitalter tragbarer Geräte, verschiedener Geräte, Smartphones, Tablets usw. Es überrascht nicht, dass das Problem des Aufladens besonders ...

Hash-Funktionen: Konzept und Grundlagen

Hash-Funktionen: Konzept und Grundlagen

Hashing ist eine spezielle Methode zur Adressierung von Daten (ein bestimmter Anordnungsalgorithmus) mithilfe ihrer eindeutigen Schlüssel (Schlüssel), um schnell das gewünschte zu finden...

Anweisungen zur Verwendung von sqlmap

Anweisungen zur Verwendung von sqlmap

SQL-Injection ist ein Angriff, der dynamische SQL-Anweisungen verwendet, indem er bestimmte Teile von Anweisungen auskommentiert oder ... hinzufügt.

Feed-Bild RSS