KCipher-2 (K2 Stream Cipher) | |
---|---|
Creator | KDDI R&D Laboratories, Inc. |
publicat | 2007 |
Dimensiunea cheii | 128 de biți |
Tip de | Cifrarea fluxului |
KCipher-2 (versiunea actualizată a K2 Stream Cipher) este un cifr de flux simetric de înaltă performanță (generator de chei de flux) dezvoltat de trei criptografi japonezi: Toshiaki Tanaka, Shinsaku Kiyomoto, Kouichi Sakurai. Cifrul folosește 2 intrări independente, o cheie de 128 de biți și un vector de inițializare de 128 de biți. Utilizarea acestui algoritm KCipher-2 vă permite să creșteți nivelul de securitate într-un număr de servicii, cum ar fi serviciile multimedia și serviciile de bandă largă. [1] [2]
KCipher-2 poate fi implementat eficient în software pentru criptare și decriptare rapidă datorită designului său necomplicat. Sunt utilizate doar 4 operații simple: XOR, adăugare, deplasare și tabele de căutare. Dacă algoritmul este implementat în hardware, atunci calculele interne pot fi paralelizate pentru a obține o eficiență mai mare. Mai mult decât atât, deoarece reprezentarea internă este de doar sute de biți, KCipher-2 este potrivit pentru medii cu resurse limitate. [unu]
Cifrul a fost publicat pentru prima dată [3] ca „K2 Stream Cipher” la sesiunea specială State of the Art of Stream Ciphers ( SASC ) din 2007, organizată de Rețeaua Europeană de Excelență în Criptologie ( ENCRYPT ). De când algoritmul de cifrare a fost publicat, securitatea și eficacitatea acestuia au fost evaluate cu atenție prin cercetări academice și industriale. În 2012, KCipher-2 a fost inclus în standardul internațional pentru cifrurile de flux ISO / IEC 18033-4, iar în martie 2013, Ministerul Afacerilor Interne și Comunicațiilor japonez, împreună cu Ministerul Economiei, Comerțului și Industriei, au anunțat includerea a unui cifr din lista recomandată de cifrurile e-guvernare . La momentul publicării RFC 7008 , august 2013, nu au fost găsite vulnerabilități. KCipher-2 este utilizat în aplicații industriale, în special în serviciile mobile de monitorizare și diagnosticare a sănătății în Japonia. [1] [2]
Pe PC au fost atinse viteze de peste 5 Gb/s. KCipher-2 poate decripta un film de 4,7 GB în 8 secunde, în timp ce standardul american AES ar dura 1,5 minute.
Vitezele de peste 380 Mb/s au fost atinse pe smartphone-urile echipate cu sistemul de operare Android. Decriptarea a 400 de fișiere video (100 KB fiecare) durează aproximativ 1 secundă, ceea ce este de 7-10 ori mai rapid decât AES.
Un nivel de utilizare a procesorului de 0,5% a fost atins la transcrierea unui videoclip echivalent de 1 seg pe un telefon mobil în redare în timp real, ceea ce nu a fost posibil cu metodele existente.
Algoritmul de configurare este independent de arhitectura CPU. Poate oferi performanțe suficiente în diferite medii.
Cifrurile de flux de bază utilizează mai multe registre independente de deplasare cu feedback liniar (LFSR) în combinație cu funcții neliniare pentru a genera o cheie de flux. Unele coduri de flux folosesc o funcție neliniară comună pentru a sincroniza neuniform unul sau mai multe LFSR. Sunt descrise diferite cifruri de flux care controlează ceasul și atacurile asupra acestora.
Mecanismul de control al ceasului al cifrurilor de flux, în mod obișnuit, fie controlează ceasul LFSR, fie decimează sau destinde ieșirea. Acest control al ceasului degradează performanța cifrului de flux deoarece unii dintre biții de ieșire sunt aruncați. Dacă aplicați compresie unui cifr de flux cu procesare cuvânt cu cuvânt, atunci performanța se va deteriora considerabil. Mecanismul de control al ceasului orientat pe biți este, de asemenea, ineficient pentru îmbunătățirea LFSR. Pe de altă parte, feedback-ul dinamic pentru LFSR este o metodă eficientă pentru îmbunătățirea securității cifrurilor de flux.
KCipher-2 este un cifru de flux care funcționează pe cuvinte și are un feedback dinamic puternic pentru o sincronizare neuniformă. Ideea principală a modelului este de a corecta operația de amestecare în timpul actualizării de stare. Polinoamele de feedback pentru LFSR cu procesare cuvânt cu cuvânt sunt descrise prin coeficienți; înmulțirea cuvântului de intrare cu un factor înseamnă amestecarea cuvintelor. Un exemplu tipic este LFSR al cifrului SNOW2.0[3]. În general, un polinom de feedback este un polinom primitiv. Creatorii folosesc un timp neuniform pentru operația de amestecare, iar modificarea provoacă doar o ușoară degradare a vitezei de criptare și decriptare. Cu alte cuvinte, cel puțin un RBOS este tactat inegal pentru a modifica dinamic funcția de feedback pentru un controler de feedback dinamic care primește ieșire de la alte RBOS. De exemplu, o funcție în buclă închisă definită ca , unde (0,1) sunt alese de controler cu feedback dinamic. RSOS controlat de un astfel de controler se numește registru de deplasare cu feedback dinamic (FSRS). Mecanismul de control al feedback-ului dinamic îmbunătățește securitatea cifrului de flux deoarece înlocuiește repetițiile liniare deterministe ale unor registre cu unele probabiliste. Acest lucru protejează eficient împotriva unui număr de atacuri. Cel mai important, KCipher-2 realizează nu numai performanțe ridicate precum cifrurile de flux bazate pe LFSR, ci și securitate ridicată.
Rata de generare a cheilor de flux KCipher-2 este de 4,97 cicluri/octet în seria Pentium 4. Astfel, acest cifru concurează cu alte cifruri de flux din lista CRYPTREC . În plus, KCipher-2 a fost dezvoltat ținând cont de două atacuri asupra SNOW2.0, algebric și diferențial, și are o rezistență mai mare la acestea. De fapt, până acum nu au fost găsite atacuri asupra KCipher-2, operațiuni mai mici. Ca rezultat, KCipher-2 realizează o securitate mai mare decât cifrurile de flux existente.
KCipher-2 constă din două tipuri de registre de schimbare a feedback-ului (RSOS), RSOS-A (5 registre) și RSOS-B (11 registre), o funcție neliniară cu patru registre interne R1, R2, L1, L2 și un control dinamic de feedback. conexiunile dispozitivului. RSOS-B este un registru de deplasare cu feedback dinamic. Dimensiunea fiecărui registru este de 32 de biți.
K. Yu. Leuven a efectuat o evaluare criptografică a cifrului K2. Scorul se bazează pe încercările de a ataca K2 într-o varietate de moduri, în concordanță cu criptoanaliza de stream de ultimă generație. Activitatea sa a inclus analiza atacurilor liniare, atacurilor algebrice, atacurilor de corelare și corelație rapidă, atacuri diferențiale care implică setarea cheilor asociate, atacuri ghiciți și determinați, proprietăți statistice, periodicitate și atacuri diferențiale.
În ceea ce privește atacurile liniare, a fost aplicată metoda de mascare liniară a versiunii K2, ignorând efectul feedback-ului dinamic. Cea mai bună corelație găsită folosește 13 aproximări liniare și este , ceea ce nu permite atacuri de succes. În analiza algebrică, se studiază structura și proprietățile cantitative ale sistemelor de ecuații rezultate și se argumentează că atacurile algebrice nu sunt fezabile. Analiza cu privire la atacurile de corelație și corelație rapidă (nu ținând cont și de controlerul de feedback dinamic) a arătat că această abordare nu a avut succes. Analiza diferențială (presupunând că nu există un controler de feedback dinamic și adăugarea modulo este înlocuită cu XOR), inclusiv un atac asupra cheii asociate, vectorul de inițializare asociat și o combinație a acestor atacuri, sugerează că K2 poate fi robust împotriva atacurilor diferențiale. Abordările ghiciți și determinați ale atacurilor orientate pe octeți și cuvinte au dus la complexitate , ceea ce implică faptul că aceste metode nu sunt aplicabile pentru K2. În ceea ce privește luarea în considerare a periodicității, nu au fost găsite perioade scurte în K2. Testele statistice nu au evidențiat niciun defect structural în modelul K2. De asemenea, analizele au arătat că K2 oferă și o rezistență bună împotriva atacurilor diferențiale modulo n.
Astfel, nu au fost găsite vulnerabilități în K2 și cifrul este considerat stabil.
Toată proprietatea intelectuală legată de KCipher-2 este deținută de KDDI Corporation. Experții CRYPTREC pot folosi KCipher-2 fără drepturi de autor. KCipher-2 va fi furnizat oricărei organizații guvernamentale la un cost rezonabil și în condiții rezonabile.
KDDI R&D Laboratories Corporation a produs un kit de dezvoltare a aplicațiilor (SDK) pentru KCipher-2. Acest algoritm de criptare este utilizat în următoarele sisteme/aplicații:
data | Versiune | Istoricul schimbărilor |
---|---|---|
ianuarie 2007 | K2 Ver.1.0[6] | Prima publicație la o conferință internațională. |
iulie 2007 | K2 Ver.2.0[7] | Etapa de încărcare a cheii din procesul de inițializare a fost modificată pentru a propaga mai eficient cheia și vectorul de inițializare în starea internă. |
2008 | KCipher-2 Ver.2.0 | Doar numele cifrului a fost schimbat din „K2” în „KCipher-2”. |
Criptosisteme simetrice | |
---|---|
Cifruri în flux | |
Rețeaua Feistel | |
Rețeaua SP | |
Alte |