Verschil tussen AES en Twofish

AES vs Twofish

De Advanced Encryption Standard, of AES, is momenteel de nieuwste standaard die is aangenomen door de Amerikaanse overheid voor het coderen van uiterst geheime informatie. Het label van AES was oorspronkelijk niet bedoeld voor een enkele versleutelingsmethode; in plaats daarvan was het een competitie tussen velen. Onder de vijf finalisten zijn Rijndael en Twofish. Rjindael won en werd aangenomen als AES terwijl Twofish dat duidelijk niet deed.

AES is een blokcijfer en maakt gebruik van een substitutiepermutatienetwerk voor het coderen van de gegevens. Aan de andere kant gebruikt Twofish een Feistel-netwerk om dezelfde taak uit te voeren. Dit betekent dat Twofish erg op elkaar lijkt, zij het veel complexer dan de oudere standaarden DES (Data Encryption Standard) en 3DES (Triple DES). Ondanks dat het vergelijkbaar is met de oudere DES-codering, is Twofish onbreekbaar; zelfs in theoretisch perspectief. AES is ook een zeer robuuste versleutelingsstandaard, vooral met zeer lange sleutellengten. Er zijn echter gevallen waarin AES-codering verbreekbaar is. Het is echter niet erg alarmerend, omdat de breuk werd uitgevoerd op de versie met 8 ronden, die niet in gebruik is. Er is nog steeds geen bewezen aanval waarbij gegevens daadwerkelijk werden verzameld door de AES-codering te verbreken.

Afhankelijk van de lengte van de sleutel, implementeert AES een ander aantal coderingsrondes. Voor sleutelgroottes van 128 bits, 192 bits en 256 bits is het aantal ronden respectievelijk 10, 12 en 14. Twofish varieert niet het aantal rondes voor een toetsgrootte. In plaats daarvan gebruikt het een vast aantal van 16, ongeacht.

Waarschijnlijk de belangrijkste reden waarom Rijndael werd gekozen voor AES in plaats van Twofish is het feit dat het zeer efficiënt is als het gaat om hardware. Het vereist minder geheugen en minder cycli om gegevens te versleutelen. Hoewel de impact op high-end apparaten kleiner is, kan voor low-end apparaten de kloof erg groot zijn.

Hoewel het lijkt alsof het verbreken van het cijfer de enige manier is om in te breken in een veilig systeem. Het is eigenlijk de moeilijkste manier om het te doen; vooral als je voor een zeer moeilijke versleutelingsstandaard staat, zoals zowel AES als Twofish zijn.

Samenvatting:
1. AES is eigenlijk Rijndael terwijl Twofish een van de AES-finalisten is
2. AES maakt gebruik van het substitutiepermutatienetwerk terwijl Twofish het Feistel-netwerk gebruikt
3. AES is breekbaar in sommige vormen terwijl Twofish is
4. AES implementeert minder ronden dan Twofish
5. AES is efficiënter dan Twofish