Proudová šifra: Porovnání verzí

Smazaný obsah Přidaný obsah
ZéroBot (diskuse | příspěvky)
m r2.7.1) (Robot: Přidávám ko:스트림 암호
G3robot (diskuse | příspěvky)
m komprese kódu, substituce šablony vjazyce2
Řádek 1:
{{Upravit}}
[[Soubor:A5-1 GSM cipher.svg|280px|thumb|Činnost proudové šifry [[A5/1]], která slouží k zašifrování komunikace [[Mobilní telefon|mobilním telefonem]].]]
'''Proudová šifra''' je v [[Kryptografie|kryptografii]] typ [[symetrická kryptografie|symetrické šifry]], kde vstupní datový tok je kombinován (typicky pomocí funkce [[Exkluzivní disjunkce|XOR]]) s [[Pseudonáhodná čísla|pseudonáhodným]] proudem bitů ({{Vjazyce2Vjazyce|en}} {{Cizojazyčně|en|''keystream''}}) vytvořeným z [[Šifrovací klíč|šifrovacího klíče]] a šifrovacího algoritmu.<ref> Sloučení proudu bitů se zprávou lze přirovnat k [[Modulace|modulaci]], kde šifrovací klíč je nosným signálem a zpráva je modulační signál. Zašifrovaný výstup je pak obdobou modulovaného signálu.</ref> Výsledkem je zašifrovaný datový tok (''proud''), který je kódován neustále se měnící transformací (na rozdíl od [[Bloková šifra|blokové šifry]], kde je transformace konstantní). Proudové šifry jsou typicky rychlejší než blokové šifry a pro implementaci potřebují jednodušší [[hardware]]. Naopak jsou na rozdíl od blokových šifer náchylnější ke [[Kryptoanalýza|kryptoanalytickým]] útokům, pokud jsou nevhodně implementovány (počáteční stav nesmí být použit dvakrát).
 
== Inspirace Vernamovou šifrou ==
Na proudovou šifru může být nahlíženo jako na implementaci neprolomitelné [[Vernamova šifra|Vernamovy šifry]]. Tato jednorázová tabulková šifra používá [[šifrovací klíč]] zcela [[Náhoda|náhodných]] čísel. Šifrovací klíč je kombinován pomocí jednoduché funkce se vstupním textem a tak je vytvořen šifrovaný tvar. Tento systém vytvořil [[Claude E. Shannon]] v roce 1949. Avšak šifrovací klíč musel být (alespoň) o stejné délce jako šifrovaný text a musel být generován úplně náhodně. Systém tak byl velmi těžkopádný, než aby byl zaveden do běžné praxe. Byl používán jen na kritické aplikace.
 
Proudová šifra využívá mnohem menší klíč, se kterým se lépe pracuje (např. 128bitový). Principem využití tohoto klíče je generování [[Pseudonáhodná čísla|pseudonáhodného]] proudu bitů ({{Vjazyce2Vjazyce|en}} {{Cizojazyčně|en|''keystream''}}), který nahrazuje původní jednorázový klíč, který musel být dlouhý jako šifrovaný text. Odstranil se tak problém nutnosti existence dlouhého jednorázového klíče, avšak vznikl jiný problém, protože šifrovací klíč je nyní pseudonáhodný, není opravdu náhodný. Tyto systémy na rozdíl od původního Shannonova lze v principu "rozlomit". <!-- S důkazem bezpečnosti si nemůžeme být v takovém případě zcela jisti.-->
 
== Typy proudových šifer ==
{{Přesnost|část}}
Proudová šifra generuje [[Pseudonáhodná čísla|pseudonáhodný]] proud bitů ({{Vjazyce2Vjazyce|en}} {{Cizojazyčně|en|''keystream''}}), který je vytvořen z [[Šifrovací klíč|šifrovacího klíče]] a šifrovacího algoritmu, takže výstup je závislý na změnách vnitřního stavu šifry. Aby pokaždé nebyla generována stejná posloupnost, což by snižovalo kvalitu šifry, je vnitřní stav navíc modifikován dalším zdrojem, což se může dít dvěma způsoby. Pokud se tak děje nezávisle na vstupním textu nebo zašifrované zprávě, je šifra hodnocena jako ''synchronní'' proudová šifra. Naproti tomu ''samosynchronní'' proudová šifra svůj stav mění na základě dat z předešlé části zašifrované zprávy.
 
=== Synchronní proudové šifry ===
Řádek 22:
Jiný přístup používá několik předchozích ''N'' čísel šifrovaného textu k vypočítání šifrovacího klíče. Podobná schémata jsou známá jako ''samosynchronní proudové šifry'', ''asynchronní proudové šifry'' nebo ''šifrovaný text automatickým klíčem (CTAK)''. Tato myšlenka samosynchronních šifer byla patentována v roce 1946, a má tu výhodu, že příjemce bude automaticky synchronizován s generátorem šifrovacích klíčů po obdržení ''N'' čísel zašifrovaného textu. Ovlivňuje to jednodušší obnovu, pokud jsou čísla ztracena nebo přidána do zprávy proudu. U jednočíselných chyb je jejich vliv omezen pouze do výše ''N'' čísel prostého textu.
 
Příkladem sebesynchronní proudové šifry je bloková šifra v [[bloková šifra režimy provozu|režimu šifrovací zpětné vazby]] ({{Vjazyce2Vjazyce|en}} {{Cizojazyčně|en|''Cipher feedback (CFB) mode''}}).
 
=== Blokové šifrování otevřené posloupnosti ===
Řádek 28:
 
== Lineární posuvné registry se zpětnou vazbou proudových šifer ==
Lineární zpětná vazba posuvných registrů ({{Vjazyce2Vjazyce|en}} {{Cizojazyčně|en|''linear feedback shift registers (LFSR)''}}). Binární proudové šifry jsou často stavěny pomocí [[lineární zpětná vazbě posuvných registrů|lineární zpětné vazby posuvných registrů]] (LFSR), protože mohou být jednoduše implementovány do [[hardware|hardwaru]] a lze je snadno matematicky analyzovat. Použití LFSR samo o sobě je však nepostačují k zajištění dobrého zabezpečení. Různé systémy byly navrženy pro zvýšení bezpečnosti LFSR.
 
=== Nelineární kombinační metody ===