RC6
From Wikipedia, the free encyclopedia
RC6 je blokovni šifrirni algoritem narejen na osnovi RC5 algoritma. Tega je razvilo več avtorjev in sicer zraven Ronald Rivesta še Sidney in Yin. Motiv za razvoj algoritma RC6 so bile AES (angl. Advanced Encryption Standard) zahteve, kjer se je uvrstil med pet finalistov. Zmagal je Rijndael algoritem, ki sta ga razvila belgijca Joan Daemen in Vincent Rijmen. Glavna pomanjkljivost RC6 algoritma je njegova uporaba 32 bitnih rotacij variabel in multiplikacij celoštevilskih podatkovnih tipov in zato naj ne bi bil najbolj primeren za uporabo na določenih platformah. Ampak, ko so te operacije podprte, je ta algoritem daleč najhitrejši od vseh kandidatov na tem AES natečaju.
Tako kot RC5 je tudi RC6 parameteriziran algoritem, kjer so velikosti bloka, ključa in število ciklov variabilni. Pravtako je tudi tu zgornja meja velikosti ključa 2040 bitov. V primerjavi z RC5 sta tu dve glavni novosti: vključitev multiplikacij integerjev in uporaba štirih b/4-bit delovnih registrov namesto dveh b/2-bit registrov, kjer je b velikost bloka. Multiplikacija integerjev se uporablja, da povečamo difuzijo na cikel zato, da je potrebnih manj ciklov in še tudi povečamo hitrost šifrirnega algoritma. Razlog za uporabo štirih registrov namesto dveh je tehnične narave in ne teoretične.