Jaký je rozdíl mezi šifrováním toku a blokováním šifrování?

Šifrování dat je dobré pro hardwarové aplikace v reálném čase.

Tok šifrování

Základní myšlenkou průtokové šifry je rozdělit text na malé bloky, jeden bit nebo jeden bajt dlouhý a kódovat každý blok v závislosti na mnoha předchozích bloků. Šifrování toku používá jiný kódovací klíč, který musí být přiveden do algoritmu pro každý bit nebo bajt, takže při zakódování vytváří jiný zašifrovaný text. Některé proudové šifry používají generátor klíče, který produkuje bitstream náhodně nebo téměř náhodně. Šifrování provede booleovskou operaci, známou jako exkluzivní OR, mezi bity v toku klíče a bity v prostém textu za účelem vytvoření zašifrovaného textu.

Blokovat šifrování

Základní myšlenkou blokové šifry je rozdělit text na poměrně dlouhé bloky, obvykle 64 nebo 128 bitů, a kód každého bloku odděleně. Stejný šifrovací klíč se používá pro každý blok a šifrovací klíč určuje pořadí, ve kterém se v každém bloku provádějí substituční, transportní a další matematické funkce. Silné algoritmy znamenají, že reverzní inženýrství šifrovacího systému nebo stanovení toho, jaké funkce byly prováděny v každém bloku, v jakém pořadí je prakticky nemožné.

Rozptýlení a zmatek

Zablokování šifrování používá technologie známé jako zmatek a difúze, aby se text převedl na šifrovaný text. Myšlenkou zmatku je, aby vztah mezi šifrovacím klíčem a prostým textem byl co nejsložitější. V ideálním případě musí mít každý znak šifrovacího klíče vliv na každý znak šifrovaného textu. Naproti tomu difúze rozšiřuje vliv každého znaku v prostém textu na několik znaků v šifrovém textu, čímž je šifrování méně náchylné na statistické útoky.

Klady a zápory

Skutečnost, že šifrování toku šifruje a dešifruje informace po jednom bitu, znamená, že jsou obzvláště přizpůsobitelné hardwarovým aplikacím v reálném čase, jako jsou například audio a video aplikace. Šifrování toku je slabší a méně účinné než šifrování bloků, pokud jde o softwarové aplikace a v této oblasti se používá méně často. Blokování šifrování je snazší implementovat v softwaru, protože šifruje informace v délce blues, které software již používá. Šifrovací klíč má často stejnou délku jako velikost bloku.