RC2
Template:Infobox Block Ciphers
In crittografia l'RC2 è un cifrario a blocchi progettato da Ronald Rivest nel 1987 (la sigla "RC" sta per "Ron's Code" o "Rivest Cipher").
Storia
Lo sviluppo dell'RC2 fu voluto dalla Lotus Software, che stava cercando un cifrario che, dopo averlo fatto esaminare dall'NSA, lo avrebbe esportato al di fuori degli USA come algoritmo integrato nel suo Lotus Notes. L'NSA ricevette l'RC2 e suggerì un paio di modifiche, che furono inserite da Rivest. Dopo ulteriori affinamenti, il cifrario fu approvato per l'esportazione nel 1989. Bisogna considerare che fino al 1996 vigeva negli USA una ferrea regolamentazione in materia di esportazione della crittografia al di fuori del Paese: fu possibile inserire l'RC2 nel Lotus Notes perché, potendo esso utilizzare chiavi di lunghezza variabile, fu impostata quest'ultima al massimo consentito dalla legge, cioè 40 bit.
Inizialmente i dettagli dell'algoritmo, di proprietà di RSA Security, la società per cui lavorava Rivest, furono tenuti segreti; ma il 29 gennaio 1996 fu pubblicato da un utente anonimo sul forum sci.crypt di Usenet il codice sorgente di un algoritmo crittografico i cui risultati erano identici a quelli ottenuti dall'RC2 originale (una simile scoperta era già stata effettuata nel 1994 quando ad essere pubblicato sullo stesso forum fu il codice sorgente dell'RC4, anch'esso tenuto segreto fino ad allora): non è chiaro se chi pubblicò il codice sorgente ebbe accesso alle specifiche dell'algoritmo oppure lo ottenne mediante reingegnerizzazione.
Struttura
L'RC2 lavora su blocchi dati di 64 bit con una chiave di lunghezza variabile da 8 a 128 bit, con incrementi di 8 bit. La funzione di Feistel opera sui dati con 18 passaggi: 16 sono di un tipo definito MIXING (mescolamento), che consistono di 4 applicazioni di una funzione di trasformazione denominata MIX (mostrata nel diagramma in figura), e 2 di un altro tipo definito MASHING (mescolamento).
Sicurezza
L'RC2 è vulnerabile ad un attacco correlato alla chiave attuato con 234 testi in chiaro scelti[1].
Note
Voci correlate
Fonti
- Steven Levy: Crypto: How the Code Rebels Beat the Government Saving Privacy in the Digital Age - 2001 - ISBN 0-14-024432-8
Riferimenti
- Lars Knudsen, Vincent Rijmen, Ronald Rivest, Matt Robshaw: On the Design and Security of RC2 - Fast Software Encryption 1998
- John Kelsey, Bruce Schneier, David Wagner: Related-key cryptanalysis of 3-WAY, Biham-DES, CAST, DES-X, NewDES, RC2 e TEA - ICICS 1997
Collegamenti esterni
- RFC 2268 - Una descrizione dell'algoritmo di cifratura RC2
- RSA FAQ: What is RC2?
- Il post originale su sci.crypt che mostrava l'algoritmo RC2