# KASUMI

KASUMI és un xifratge de blocs utilitzat en sistemes de comunicacions mòbils UMTS, GSM i GPRS. A UMTS, KASUMI s'utilitza en els algorismes de confidencialitat (f8) i integritat (f9) amb els noms UEA1 i UIA1, respectivament. En GSM, KASUMI s'utilitza al generador de flux de claus A5/3 i en GPRS al generador de flux de claus GEA3.
KASUMI va ser dissenyat per al 3GPP per ser utilitzat en el sistema de seguretat UMTS pel Grup d'Experts d'Algoritmes de Seguretat (SAGE), una part de l'organisme d'estàndards europeu ETSI. A causa de les pressions de programació en l'estandardització de 3GPP, en lloc de desenvolupar un nou xifratge, SAGE va acordar amb el grup d'especificacions tècniques (TSG) de 3GPP els aspectes del sistema de seguretat 3G (SA3) per basar el desenvolupament en un algorisme existent que ja havia estat sotmès a una avaluació. Van triar l'algoritme de xifrat MISTY1 desenvolupat i patentat per Mitsubishi Electric Corporation. L'algoritme original es va modificar lleugerament per facilitar la implementació del maquinari i per complir altres requisits establerts per a la seguretat de les comunicacions mòbils 3G.
KASUMI rep el nom de l'algoritme original MISTY1 —霞み(hiraganaかすみ, romaji kasumi) és la paraula japonesa per "boira".
El gener de 2010, Orr Dunkelman, Nathan Keller i Adi Shamir van publicar un article que mostrava que podrien trencar Kasumi amb un atac de clau relacionada i recursos computacionals molt modestos; aquest atac és ineficaç contra MISTY1.

## Descripció

L'algorisme KASUMI s'especifica en una especificació tècnica 3GPP. KASUMI és un xifratge de blocs amb clau de 128 bits i entrada i sortida de 64 bits. El nucli de KASUMI és una xarxa Feistel de vuit rondes. Les funcions rodones a la xarxa principal de Feistel són transformacions de xarxa irreversibles semblants a Feistel. A cada ronda, la funció rodona utilitza una clau rodona que consta de vuit subclaus de 16 bits derivades de la clau original de 128 bits utilitzant una programació de claus fixa.

### Clau

La clau K de 128 bits es divideix en vuit subclaus K $_i$ de 16 bits:
$K=K_{1}\|K_{2}\|K_{3}\|K_{4}\|K_{5}\|K_{6}\|K_{7}\|K_{8}\,$
A més, s'utilitza una clau modificada K', dividida de manera similar en subclaus de 16 bits K'$_i$. La clau modificada es deriva de la clau original mitjançant XORing amb 0x123456789ABCDEFFEDCBA9876543210 (escollit com a número "no hi ha res sota la màniga").
Les claus rodones es deriven de les subclaus mitjançant la rotació de bits cap a l'esquerra per una quantitat determinada i de les subclaus modificades (sense canvis).

## Referències

* ↑ «Draft Report of SA3 #38» (en anglès). 3GPP.
* 1 2 «General Report on the Design, Speification and Evaluation of 3GPP Standard Confidentiality and Integrity Algorithms» (en anglès). 3GPP.
* ↑ Matsui, Mitsuru; Tokita, Toshio Mitsubishi Electric Advance, 100, Dec 2000, pàg. 2–8. ISSN: 1345-3041 [Consulta: 6 gener 2010].
* ↑ Orr Dunkelman; Nathan Keller; Adi Shamir "A Practical-Time Attack on the A5/3 Cryptosystem Used in Third Generation GSM Telephony", 10-01-2010.
* ↑ «3GPP TS 35.202: Specification of the 3GPP confidentiality and integrity algorithms; Document 2: Kasumi specification» (en anglès). 3GPP.