klíče nesmí být nikdy použit dvakrát
platný šifrovací by nikdy neměla být spoléhal na znamení pravosti
Říci, že jsme posílat zprávy a B stejné délky, a to jak šifrované pomocí stejného klíče, K . Potoku produkuje řetěz kousků C (K), stejně dlouhý jako zprávy. Šifrovaná verze zprávy pak jsou:
E (A) = C xor
E (B) = B xor C
kde xor se provádí bit po bitu.
Řekněme, že protivník má zachycené E (A) a E (B) . Ten lze snadno spočítat:
E (A) xor E (B)
Nicméně xor je
komutativní a má tu vlastnost, že X xor X = 0 (self-inverzní), takže:E (A) xor E (B) = (xor C) xor (B xor C) = xor B xor C xor C = B xor
Pokud jedna zpráva je delší než ostatní naše protivníka jen zkrátí delší zprávy do velikosti kratší a jeho útok bude jen ukáže, že část delší zprávy. Jinými slovy, pokud někdo zachytí dvě zprávy zašifrované stejným klíčem, mohou obnovit xor B , což je forma
běží klíčový kód . Dokonce i když je známo, ani zpráva, tak dlouho, jak zprávy jsou v přirozeném jazyce, lze tyto šifry často zlomený papír-a-tužka metod. John Tiltman dosáhne s šifrou Lorenz (TUNNY) v druhé světové válce . S průměrem osobní počítač , šifry mohou být rozděleny jako obvykle během několika minut. Pokud jedna zpráva je známo, je řešení triviální.Jinou situaci, kde využití je triviální, je-li
provoz-flow bezpečnostních opatření každá stanice vysílající nepřetržitý proud bitů šifry, s null znaky (např. LTRS v Baudot ) je poslán když není tam žádný skutečný provoz. To je běžný ve vojenských komunikacích. V takovém případě, a pokud je přenosový kanál není plně naloženo, tam je dobrá pravděpodobnost, že jeden z ciphertext toků bude jen nuly.NSA jde do velkých délek, aby se zabránilo klíče se používá dvakrát. 1960-éra šifrovací systémy se často zahrnuta děrný štítek čtečky pro načítání klíče. Tento mechanismus se automaticky sníží na polovinu, kdy karta byla odstraněna karta, předcházet jeho opětovné použití. [ pochvalná zmínka potřebovala ]Jeden způsob, jak se tomuto problému vyhnout, je použití
inicializačního vektoru (IV), poslal do jasné, že je v kombinaci s tajným hlavní klíč k vytvořit jeden-čas klíč pro proudová šifra. To se provádí v několika společných systémů, které používají populární proudová šifra RC4 , včetně Wired Equivalent Privacy (WEP), Wi-Fi Protected Access (WPA) a Ciphersaber . Jedním z mnoha problémů s WEP bylo to, že jeho IV bylo příliš krátké, 24 bitů. To znamenalo, že existuje vysoká pravděpodobnost, že stejná IV by byly použity dvakrát v případě více než několik tisíc pakety byly odeslány se stejným hlavního klíče (viz útok narozenin ), podřizovat pakety s duplicitní IV klíč znovu zaútočit. Tento problém byl opraven v WPA změnou "master" klíč často.Hlavní článek: Bit-mizerný útok
Předpokládám, že protivník zná přesný obsah všech nebo části jednoho z našich zpráv. Jako součást
člověka ve středu útoku , může změnit obsah zprávy, aniž by věděl, klíče, K . Říkají, například, on zná část zprávy obsahuje ASCII řetězec "1000,00 dolarů" . On může změnit na "9500,00 dolarů", tím, že xor'ing část ciphertext s řetězcem: "1000,00 dolarů" xor "9500,00 dolarů" . Chcete-li vidět, jak to funguje, za to, že šifry text pošleme je jen C (K) xor "1000,00 dolarů" . Co je vytváření je:C (K) xor "1000,00 dolarů" xor "1000,00 dolarů" xor "9500,00 dolarů" = C (K) xor "9500,00 dolarů"
což je to, co naši ciphertext by bylo, kdyby 9500 dolar byl správnou částku.
Viz také: malleability (kryptografie) .Bit-obracející útoky jsou předešel tím,
autentizační kód zprávy , aby zvýšila pravděpodobnost, že manipulace bude odhalen.