Keystream - Keystream
I kryptografi er en keystream en strøm af tilfældige eller pseudosluttede tegn, der kombineres med en almindelig tekstmeddelelse for at producere en krypteret besked (chifferteksten).
"Tegnene" i nøglestrømmen kan være bits , bytes , tal eller faktiske tegn som AZ afhængigt af brugssagen.
Normalt tilføjes, trækkes eller XORes hvert tegn i nøglestrømmen med et tegn i klarteksten for at producere chifferteksten ved hjælp af modulær aritmetik .
Keystreams bruges i engangskoden og i de fleste streamchiffer . Blokchiffer kan også bruges til at producere keystreams. For eksempel er CTR -tilstand en bloktilstand, der får en blokchiffer til at producere en nøglestrøm og dermed forvandler blokchifteren til en stream -chiffer.
Eksempel
I dette enkle eksempel bruger vi det engelske alfabet på 26 tegn fra az. Således kan vi ikke kryptere tal, kommaer, mellemrum og andre symboler. De tilfældige tal i nøglestrømmen skal derefter være mindst mellem 0 og 25.
For at kryptere tilføjer vi keystream -tallene til klarteksten. Og for at dekryptere trækker vi de samme keystream -tal fra chifferteksten for at få ren tekst.
Hvis et chiffertekstnummer bliver større end 25, indpakker vi det til en værdi mellem 0-25. Således bliver 26 til 0 og 27 bliver til 1 og så videre. (Sådan indpakning kaldes modulær aritmetik .)
Her kombineres klartekstmeddelelsen "angreb ved daggry" ved tilføjelse med tastaturet "kjcngmlhylyu" og frembringer chifferteksten "kcvniwlabluh".
| Simpel tekst | -en | t | t | -en | c | k | -en | t | d | -en | w | n |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Almindelig tekst som tal | 0 | 19 | 19 | 0 | 2 | 10 | 0 | 19 | 3 | 0 | 22 | 13 |
| Keystream | k | j | c | n | g | m | l | h | y | l | y | u |
| Keystream som tal | 10 | 9 | 2 | 13 | 6 | 12 | 11 | 7 | 24 | 11 | 24 | 20 |
| Chiffertekst som tal | 10 | 28 | 21 | 13 | 8 | 22 | 11 | 26 | 27 | 11 | 46 | 33 |
| Chiffertekst som tal indpakket til 0-25 |
10 | 2 | 21 | 13 | 8 | 22 | 11 | 0 | 1 | 11 | 20 | 7 |
| Chiffertekst som tekst | k | c | v | n | jeg | w | l | -en | b | l | u | h |
Referencer
- Handbook of Applied Cryptography af Menezes, van Oorschot og Vanstone (2001), kapitel 1, 6 og 7.