1976 schlugen Diffie und Hellman eine neue Art Cryptography vor, die zwischen Encipherment und Deciphermentschlüsseln unterschied. Einer der Schlüssel bekannt öffentlich; das andere würde privat von seinem Inhaber gehalten. Klassischer Cryptography erfordert den Absender und die Empfänger, einen allgemeinen Schlüssel zu teilen. Allgemeiner Schlüsselcryptography nicht. Wenn der Enciphermentschlüssel allgemein ist, um eine geheime Anzeige zu senden chiffrieren Sie einfach die Anzeige mit dem allgemeinen Schlüssel der Empfängers. Senden Sie ihn dann. Die Empfänger kann ihn dechiffrieren seinen privaten Schlüssel verwendend.
James Ellis, ein Entcoder, der für Gruppe Sicherheit Kommunikation-Elektronik der britischen Regierung, gesagt "er arbeitet, zeigte Beweis des Konzeptes in einem Januar 1970 CESG Report, der betitelt wurde ' die Möglichkeit der sicheren Nicht-Geheimnis Digital Verschlüsselung.'" Zwei seiner Kollegen fanden praktische Implementierungen. Diese Arbeit blieb bis 1997 eingestuft.
Weil ein Schlüssel allgemein ist und sein ergänzender Schlüssel geheim bleiben muß, muß ein allgemeines Schlüsselschlüsselsystem die folgenden drei Bedingungen treffen.
Es muß einfach rechnerisch sein, eine Anzeige zu chiffrieren oder zu dechiffrieren, die den passenden Schlüssel gegeben wird.
Es muß infeasible rechnerisch sein, den privaten Schlüssel vom allgemeinen Schlüssel abzuleiten.
Es muß infeasible rechnerisch sein, den privaten Schlüssel von einem gewählten Klartextangriff festzustellen
Die RSA Ziffer liefert Geheimhaltung und Authentisierung.
RSA ist eine Exponentiationziffer. Wählen Sie zwei große höchste Vollkommenheit Zahlen p und q, und lassen Sie n = pq. Das totient ff(n) von n ist die Zahl Zahlen kleiner als n ohne Faktoren im Common mit n.
Unsere Beispiele verwenden kleine Zahlen für pädagogische Zwecke. Tatsächliches RSA bereitet sollte mindestens 512 Bits jedes sein vor und gibt einen Modul von mindestens 1.024 Bits. In der Praxis wird RSA mit Verschlüsselungsdurcheinanderfunktionen kombiniert, um Neuordnung der Blöcke zu verhindern.
| BEISPIEL: Lassen Sie n = 10. Die Zahlen, die kleiner sind, als 10 und sind verhältnismäßig Haupt(haben Sie keine Faktoren im Common mit), n sind 1, 3, 7 und 9. Folglich ff(10) = 4. Ähnlich wenn n = 21, die Zahlen, die zu n verhältnismäßig Haupt sind, 1, 2, 4, 5, 8, 10, 11, 13, 16, 17, 19 und 20 sind. So f(21) = 12. |
Wählen Sie eine Ganzzahl e < n, das zum ff(n) verhältnismäßig Haupt ist. Finden Sie eine zweite Ganzzahl d so daß ED Umb. ff(n) = 1. Der allgemeine Schlüssel ist (e, N) und der private Schlüssel ist d.
Lassen Sie m eine Anzeige sein. Dann:
c = m^e Umb. n
und
m = c^d Umb. n
| BEISPIEL: Lassen Sie p = 7 und q = 11. Dann n = 77 und f(n) = 60. Alice wählt e = 17, also ist ihr privater Schlüssel d = 53. In diesem Schlüsselsystem wird jeder Klartextbuchstabe durch eine Zahl zwischen 00 (a) und 25 (Z) dargestellt; 26 stellt einen freien Raum dar. Bob möchte Alice die Anzeige "HALLO WELT schicken." Mit der Darstellung oben, ist der Klartext 07 04 11 11 14 26 22 14 17 11 03. Mit Alices allgemeinem Schlüssel ist der verschlüsselte Text 07^17 Umb. 77 = 28 04^17 Umb. 77 = 16 11^17 Umb. 77 = 44 ... 03^17 Umb. 77 = 75 oder 28 16 44 44 42 38 22 42 19 44 75. |
Zusätzlich zur Vertraulichkeit kann RSA Daten- und Ursprungsauthentisierung zur Verfügung stellen. Wenn Alice ihre Anzeige mit ihrem privaten Schlüssel chiffriert, kann jedermann ihn lesen, aber, wenn jedermann ihn ändert, kann der (geänderte) verschlüsselte Text nicht richtig dechiffroren werden.
| BEISPIEL: Nehmen Sie Alice Wünsche an, um Bob die Anzeige "HALLO WELT" zu schicken, so daß Bob sicher ist, daß Alice sie sendete. Sie chiffriert die Anzeige mit ihrem privaten Schlüssel und schickt sie Bob. Wie oben angezeigt, wird der Klartext als 07 04 11 11 14 26 22 14 17 11 03 dargestellt. Mit Alices privatem Schlüssel ist der verschlüsselte Text 07^53 Umb. 77 = 35 04^53 Umb. 77 = 09 11^53 Umb. 77 = 44 ... 03^53 Umb. 77 = 05 oder 35 09 44 44 93 12 24 94 04 05. Zusätzlich zur Ursprung Echtheit kann Bob sicher sein, daß keine Buchstaben geändert wurden. Das Zur Verfügung stellen von von Vertraulichkeit und von von Authentisierung erfordert das Chiffrieren mit dem privaten Schlüssel des Absenders und dem allgemeinen Schlüssel der Empfängers. |
BEISPIEL: Nehmen Sie Alice Wünsche an, um Bob die Anzeige "HALLO WELT" im Vertrauen zu schicken und beglaubigte. Wieder nehmen Sie an, daß Alices privater Schlüssel 53 ist. Nehmen Sie Bobs allgemeinen Schlüssel, um 37 zu sein (seinen privaten Schlüssel 13 bildend). Der Klartext wird als 07 04 11 11 14 26 22 14 17 11 03 dargestellt. Der Encipherment ist (07^53 Umb. 77)37 Umb. 77 = 07 (04^53 Umb. 77)37 Umb. 77 = 37 (11^53 Umb. 77)37 Umb. 77 = 44 ... (03^53 Umb. 77)37 Umb. 77 = 47 oder 07 37 44 44 14 59 22 14 61 44 47. Die Empfänger verwendet den privaten Schlüssel der Empfängers, um die Anzeige und den allgemeinen Schlüssel des Absenders zu dechiffrieren, um ihn zu beglaubigen. |
BEISPIEL: Bob empfängt den verschlüsselten Text oben, 07 37 44 44 14 59 22 14 61 44 47. Der Decipherment ist (07^13 Umb. 77)17 Umb. 77 = 07 (37^13 Umb. 77)17 Umb. 77 = 04 (44^13 Umb. 77)17 Umb. 77 = 11 ... (47^13 Umb. 77)17 Umb. 77 = 03 oder 07 04 11 11 14 26 22 14 17 11 03. Dieses entspricht der Anzeige "HALLO WELT" vom vorhergehenden Beispiel. |
Der Gebrauch von einem allgemeinen Schlüsselsystem liefert eine technische Art nonrepudiation von Ursprung. Die Anzeige wird mit Alices allgemeinem Schlüssel dechiffroren. Weil der allgemeine Schlüssel das Gegenteil des privaten Schlüssels ist, nur der private Schlüssel die Anzeige chiffroren haben könnte. Weil Alice das einzige ist, wer diesen privaten Schlüssel kennt, nur sie die Anzeige chiffroren haben könnte. Die zugrundeliegende Annahme ist, daß Alices privater Schlüssel nicht verglichen worden ist und daß das allgemeine Schlüssellager ihr Name wirklich ihr gehört.
In der Praxis würden niemand Blöcke der Größe benutzen, die hier dargestellt wurde. Die Ausgabe ist, daß, selbst wenn n, wenn ein Buchstabe pro Block chiffroren wird, RSA kann mit den Techniken gebrochen werden sehr groß ist, die verwendet werden, um klassische Ersatzziffern zu brechen. Ausserdem obgleich kein einzelner Block ohne Abfragung geändert werden kann (weil der Angreifer vermutlich nicht Zugang zum privaten Schlüssel hat), kann ein Angreifer Blöcke neu ordnen und die Bedeutung der Anzeige ändern.
BEISPIEL: Ein General schickt den Hauptsitzen eine Anzeige, die fragen, ob der Angriff auf den Hauptsitzantworten mit Anzeige "on" chiffroren mit einer RSA Ziffer mit einem Modul 1,024-bit ist, aber jeder Buchstabe wird separat chiffroren. Ein Angreifer fängt die Anzeige ab und tauscht den Auftrag der Blöcke aus. Wenn der General die Anzeige dechiffriert, liest sie "NR.," das Entgegengesetzte des ursprünglichen Klartextes. Außerdem wenn der Angreifer weiß, daß Hauptsitze eine von zwei Anzeigen (hier, "NICHT" oder "on") senden, kann der Angreifer eine Technik verwenden, die "Vorwärtssuche" oder "precomputation", um die Ziffer zu brechen genannt wird. Aus diesem Grund wird Klartext normalerweise mit gelegentlichen Daten aufgefüllt, um einen Block zu bilden. Dieses kann das Problem von vorwärts suchen beseitigen, weil der Satz der möglichen Klartexte zum precompute durchführbar zu groß wird. Ein anderer General sendet den gleichen Antrag wie im Beispiel oben. Wieder antworten die Hauptsitze mit Anzeige "on" chiffroren mit einer RSA Ziffer mit einem Modul 1,024-bit. Jeder Buchstabe wird separat chiffroren, aber die ersten sechs Bits jedes Blockes enthalten die Zahl des Blockes, enthalten die folgenden acht Bits den Buchstaben, und die restlichen 1.010 Bits enthalten gelegentliche Daten. Wenn der Angreifer die Blöcke neu ordnet, ermittelt der General, daß Block 2 vor Block 1 (resultierend aus der Zahl in den ersten sechs Bits) ankam und sie neu ordnet. Der Angreifer kann nicht precompute die Blöcke, auch feststellen welches "O enthält,", weil sie 21010 Blöcke würde berechnen müssen, die rechnerisch infeasible ist. |
Online: 296 users browsing the articles directory
![]() . |