Serpent (Verschlüsselung)
Serpent ist ein symmetrischer Verschlüsselungsalgorithmus, der von den Kryptographen Ross Anderson, Eli Biham und Lars Knudsen entwickelt wurde. Es ist eine Blockchiffre mit einer Blockgröße von 128 Bit und variabler Schlüsselgröße bis 256 Bit.
Serpent | |
---|---|
Die lineare Transformation von Serpent | |
Entwickler | Ross Anderson, Eli Biham, Lars Knudsen |
Veröffentlicht | 21. August 1998 |
Abgeleitet von | Square |
Zertifizierung | AES Finalist |
Schlüssellänge | 128, 192 oder 256 Bit |
Blockgröße | 128 Bit |
Struktur | Substitutions-Permutations-Netzwerk |
Runden | 32 |
Serpent war ein Kandidat für den Advanced Encryption Standard (AES) und gehörte mit Twofish, Rijndael, MARS und RC6 zu den fünf Finalisten des AES-Ausscheidungsverfahrens.
Serpent scheint eine sicherere Architektur als Rijndael zu haben. MARS, Twofish und Serpent wurden als hoch-sicher eingestuft, während Rijndael und RC6 „nur“ als hinreichend-sicher eingestuft wurden. Rijndael wurde vor allem wegen seiner mathematischen Struktur, die möglicherweise zu Angriffen führen könnte, kritisiert. Im Gegensatz zu den beiden anderen als hoch-sicher eingestuften Kandidaten der letzten Runde, MARS und Twofish, wurde Serpent bezüglich seiner Sicherheit nicht kritisiert und es wurde angenommen, dass dieser der sicherste der fünf Finalisten sei.
Serpent weist außerdem bei Implementierung in Hardware, die als Pipeline erfolgen kann, die höchste Geschwindigkeit unter den Finalisten auf. Er ist jedoch bei Software-Implementierungen der Langsamste, während Rijndael sowohl in Hardware als auch in Software relativ schnell ist. Vor allem dieser Geschwindigkeitsvorteil dürfte bei der Entscheidung, Rijndael zum AES zu erklären, den Ausschlag gegeben haben.