STRUMOK | |
---|---|
Skaber | Oleksandr Kuznetsov, Mariya Lutsenko, Dmytro Ivanenko, Institute of Information Technologies PAT |
Oprettet | 2016 |
Standarder | DSTU 8845:2019 |
Nøglestørrelse | 256, 512 bit |
Type | Stream chiffer |
" STRUMOK " ( eng. STRUMOK ; Russian stream; flow; jet) er en streaming symmetrisk chiffer beskrevet i den nationale standard for Ukraine DSTU 8845:2019 "Informationsteknologier. Kryptografisk beskyttelse af information. Algoritme til symmetrisk streamingtransformation” [1] . Standarden trådte i kraft den 1. oktober 2019.
Afhængigt af længden af den hemmelige nøgle har den to driftstilstande: "STRUMOK-256" og "STRUMOK-512".
STRUMOK giver en høj nøglestreamgenereringshastighed (mere end 10 Gbit/s).
STRUMOK-algoritmen er baseret på ideen om spil , som består i at "pålægge" en sekvens af tilfældige tal på almindelig tekst . STRUMOK pseudo-tilfældige talgeneratoren bruger en 256-bit initialiseringsvektor og en 256-bit eller 512-bit hemmelig nøgle og giver sikkerhed under hensyntagen til den mulige brug af kvantekryptografisk analyse . Kryptoalgoritmen er orienteret til 64-bit computersystemer, derfor er ordstørrelsen defineret til at være 64 bit .
De vigtigste strukturelle komponenter i en generator er et lineært feedback-skiftregister og en tilstandsmaskine, hvori en ikke-lineær transformation udføres. Indgangsdataene ( nøgle og initialiseringsvektor ) bruges til at initialisere tilstandsvariablen , som består af atten 64-bit blokke:
Outputtet er en nøglestrøm ( gamma ), der er dannet af 64-bit ord .
Der er tre hovedfunktioner i STRUMOK-algoritmen:
Input: 256 eller 512-bit nøgle , 256-bit initialiseringsvektor .
Output: startværdien af tilstandsvariablen .
Indgang: Tilstandsvariabel og driftstilstand (normal eller initialiseringstilstand).
Output: Tilstandsvariabel .
Input: Tilstandsvariabel .
Output: keystream .
Funktionen tilstandsmaskine bruges i funktionerne og .
Input: tre 64-bit linjer .
Output: 64-bit streng .
Feedback i et lineært tilbagekoblingsskiftregister kan beskrives ved operationer på endelige feltelementer .
Feedbacken i skifteregisteret er bygget over polynomiefeltet :
hvor er roden af polynomiet over feltet :
,hvor er roden af polynomiet over feltet :
.Feltet er konstrueret over feltet af et polynomium .
Perioden for skifteregisterets outputsekvens er maksimal og lig med .
STRUMOK keystream-generatoren ligner i konceptet SNOW 2.0 . Men SNOW 2.0 er designet til brug i 32-bit computersystemer, mens STRUMOK er designet til brug i mere kraftfulde 64-bit computersystemer. I denne henseende stiger hastigheden for generering af en pseudo-tilfældig sekvens i Strumok-algoritmen. [2] I STRUMOK-algoritmen, sammenlignet med SNOW2.0 , øges længden af den hemmelige nøgle og initialiseringsvektoren. Dette giver dig mulighed for pålideligt at bruge stream-chifferet selv under forhold, hvor brugen af kvantekryptanalyse er tilgængelig for en angriber. [3]
Test rettet mod at bestemme tilfældigheden af NIST binære sekvenser viser, at STRUMOK algoritmen er ringere end SNOW 2.0 . [fire]
STRUMOK-nøglestrømgeneratoren giver dig mulighed for at generere pseudo-tilfældige sekvenser med en hastighed på mere end 10 Gbps (Intel Core i9-7980XE 2,60 GHz og OS Windows® 10 Pro). [5]
Symmetriske kryptosystemer | |
---|---|
Stream-cifre | |
Feistel netværk | |
SP netværk | |
Andet |