Wprowadzenie
Jedną z podstawowych metod bezpieczeństwa stosowaną we współczesnych systemach teleinformatycznych jest poufność danych. Poufność danych zapewniana jest przede wszystkim dzięki algorytmom kryptograficznym: zarówno symetrycznym, które wymagają dystrybucji lub ustalenia sekretnego klucza, jak i asymetrycznych, gdzie ochrona danych zapewniana jest dzięki komplementarnej parze kluczy (klucz prywatny i klucz publiczny). Schemat szyfrowania w przypadku szyfrów symetrycznych wygląda następująco:
Ek(M) = C
z kolei odszyfrowywanie:
Dk(C) = M
gdzie, E oznacza szyfrowanie, D - odszyfrowywanie, M to wiadomość przeznaczona do zaszyfrowania (plaintext), C to wiadomość zaszyfrowana (ciphertext), a K to klucz kryptograficzny.
Należy pamiętać że w przypadku gdy mamy do zaszyfrowania długi tekst (większy niż pojedynczy blok danych wejściowych konkretnego algorytmu), musimy korzystać z jednego z trybów szyfrowania. Poniżej przedstawione zostały schematy dla najpopularniejszych trybów (te schematy były prezentowane i szczegółowo omawiane na wykładzie): EBC, CBC, OFB, CFB i CTR. Na rysunkach jako przykład szyfru blokowego podany został szyfr DES.