RC6

Inom kryptografi är RC6 ett blockchiffer med symmetriska nycklar som härrör från RC5. RC6 är en parametriserad algoritm med en variabel blockstorlek, en variabel nyckelstorlek och ett variabelt antal rundor. RC står för "Rivest Cipher", eller alternativt "Rons kod".

1997 utlyste NIST en tävling för att välja en efterföljare till Data Encryption Standard (DES) som skulle kallas Advanced Encryption Standard (AES). RC6 härleddes från RC5 för att uppfylla tävlingens krav och valdes ut som en av de fem finalisterna i tävlingen om Advanced Encryption Standard (AES), men valdes inte ut som standard.

För att kunna erbjuda olika säkerhets- och effektivitetsnivåer kan man med RC6 välja blockstorlek: 32 bitar (endast för experiment och utvärdering), 64 bitar (som ersättning för DES) och 128 bitar (avsedd för AES). Antalet rundor kan variera mellan 0 och 255, medan nyckelstorlekarna kan variera mellan 0 och 2040 bitar.

RC6 är mycket lik RC5:s struktur och kan ses som en sammanflätning av två parallella RC5-krypteringsprocesser. RC6 använder dock en extra multiplikationsoperation som inte finns i RC5 och använder fyra b/4-bitars arbetsregister (se uppdelning av klartextblock i Feistel cipher) i stället för två b/2-bitars register som i RC5 (b är blockstorleken). Heltalsmultiplikation används för att öka den spridning som uppnås per runda så att färre rundor behövs och chifferns hastighet kan ökas.
Anledningen till att man använder fyra arbetsregister i stället för två är främst för optimering på 32-bitars CPU:er. Standardblockstorleken för RC5 var 64 bitar, medan standardblockstorleken för AES är 128 bitar. RC5 har endast två arbetsregister. Den använder 32-bitars operationer när den hanterar 64-bitars block och 64-bitars operationer när den hanterar 128-bitars block, så fyra arbetsregister krävs för att bygga AES-arkitekturen med hjälp av endast 32-bitars operationer.

RC6 är en egenutvecklad och patenterad algoritm (av RSA Security U.S. Patent 5,724,428 och U.S. Patent 5,835,600 ) och kan kräva licens- och royaltybetalningar för produkter som använder algoritmen. Den utformades av Ron Rivest, Matt Robshaw, Ray Sidney och Yiqun Lisa Yin, och har också lämnats in till projekten NESSIE och CRYPTREC.

Frågor och svar

F: Vad är RC6?


S: RC6 är ett blockchiffer med symmetrisk nyckel som härrör från RC5. Det är en parametrerad algoritm med en variabel blockstorlek, nyckelstorlek och antal rundor.

F: Vem har konstruerat RC6?


S: RC6 utformades av Ron Rivest, Matt Robshaw, Ray Sidney och Yiqun Lisa Yin.

F: Vilka är standardblockstorlekarna för RC5 och AES?


S: Standardblockstorleken för RC5 är 64 bitar medan standardblockstorleken för AES är 128 bitar.

F: Hur är RC6:s struktur jämfört med RC5:s?


S: RC6:s struktur är mycket lik RC5:s, men den använder en extra multiplikationsoperation som inte finns i RC5 samt fyra b/4-bitars arbetsregister i stället för två b/2-bitars register.

F: Varför används fyra arbetsregister i stället för två för att bygga AES-arkitekturen med hjälp av endast 32-bitarsoperationer?


Svar: Heltalsmultiplikation används för att öka den spridning som uppnås per runda så att färre rundor behövs och hastigheten kan ökas. Fyra arbetsregister behövs eftersom 32-bitarsoperationer används när man hanterar 64-bitarsblock och 64-bitarsoperationer när man hanterar 128-bitarsblock.

F: Krävs det några licenser eller royaltybetalningar för produkter som använder algoritmen?



S: Ja, eftersom det är en egenutvecklad och patenterad algoritm (av RSA Security U.S. Patent 5,724,428 och U.S. Patent 5,835,600 ) kan det krävas licens- och royaltybetalningar för alla produkter som använder algoritmen.

AlegsaOnline.com - 2020 / 2023 - License CC3