RC5

RC5 (Rivest Cipher 5) ist eine 1994 von Ronald Rivest entworfene symmetrische Blockverschlüsselung. Das bedeutet, dass sowohl für das Verschlüsseln wie das Entschlüsseln der gleiche Schlüssel benutzt wird. Sie gehört zur Klasse der Feistelchiffren. Die Daten werden zunächst in Blöcke gleicher Größe aufgeteilt und über wiederholte Anwendung einfacher Operationen – sogenannter „Primitive – ver- oder entschlüsselt. Die Blockgröße, die Länge des Schlüssels und die Anzahl der Wiederholungen – die „Runden“ – sind nicht durch den Algorithmus vorgegeben und werden als Parameter vor der Verschlüsselung festgelegt.

RC5
Eine Runde (zwei Halbrunden) von RC5
Entwickler Ronald L. Rivest
Veröffentlicht 1994
Schlüssellänge 1 bis 2040 Bits
Blockgröße 32, 64 oder 128 Bit
Struktur Feistelchiffre
Runden 1 bis 255 Runden, empfohlen mindestens 16 Runden
Beste bekannte Kryptoanalyse
RC5-32/12 ist anfällig für die differentielle Kryptoanalyse bei 244 gewählten Klartextblöcken.

Das Ziel beim Entwurf von RC5 war eine einfache und schnelle Chiffre. Sie baut auf datenabhängigen Rotationen auf, deren Eignung als Primitiv zum Entwicklungszeitpunkt noch weitgehend unerforscht war.

Anders als viele andere Blockchiffren verwendet RC5 keine S-Boxen, um das von Claude Shannon 1949 als „Konfusion“ bezeichnete und für sicheren Betrieb wichtige Verwischen statistischer Zusammenhänge zwischen Klartext, Schlüssel und Chiffretext zu erreichen. Eine S-Box sorgt für starke Konfusion, da man weitgehend frei wählen kann, wie zum Beispiel eine -S-Box die möglichen Werte der eingegebenen Bits auf die möglichen Ausgangswerte abbildet. S-Boxen erfordern in der praktischen Implementierung aber zusätzlichen Speicher und auch einen gewissen Rechenaufwand, da man ein Datenwort erst in genügend kleine Teile teilen muss, die der S-Box eingegeben werden, denn ein ganzes Wort von 16 oder mehr Bit ist dafür zu groß. Danach muss man die Ergebnisse auch wieder zu einem Wort zusammensetzen. Der Verzicht auf S-Boxen macht RC5 sehr einfach und schnell und insbesondere auch für den Einsatz in ressourcenarmen Bereichen – etwa digitaler Hardware mit begrenzter Chipfläche – interessant.

Eine konkrete Softwareimplementation, die verschiedene Betriebsmodi zur Verkettung von Blöcken bietet – nämlich CBC, CBC-Pad und CTS – wird im Standard RFC 2040 spezifiziert.

RC5 diente als Basis für die Verschlüsselung RC6, die zur Wahl des Advanced Encryption Standard kandidierte.

In den Vereinigten Staaten hielt das Unternehmen RSA Security bis 2015 ein Patent auf RC5.

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.