Szyfr

Wygląd przypnij ukryj

Szyfr (inaczej kryptograficzny algorytm szyfrujący) – funkcja matematyczna wykorzystywana do szyfrowania tekstu jawnego lub jego deszyfrowania. Zazwyczaj jedna funkcja wykorzystywana jest do szyfrowania, a inna do deszyfrowania wiadomości. Wiadomość przed zaszyfrowaniem nazywana jest tekstem jawnym, zaś wiadomość zaszyfrowaną nazywamy szyfrogramem. Proces zamiany tekstu jawnego na szyfrogram nazywamy szyfrowaniem.

Algorytm ograniczony

Algorytmem ograniczonym nazywamy taki algorytm, który zapewnia bezpieczeństwo szyfrogramu tylko wtedy, gdy nie jest znana postać algorytmu (znajomość algorytmu pozwala odszyfrować szyfrogram). Algorytmy te są popularne w zastosowaniach, gdzie wysoki poziom bezpieczeństwa nie jest wymagany.

Algorytm z kluczem

Algorytm z kluczem to taki, w którym do zaszyfrowania oraz odszyfrowania wiadomości wykorzystywane są klucze. W przeciwieństwie do algorytmów ograniczonych, bezpieczeństwo wiadomości oparte jest na kluczu. W przypadku wielu algorytmów klucz szyfrujący jest inny niż klucz deszyfrujący.

Rodzaje algorytmów szyfrujących z kluczem

Wyróżniamy dwa rodzaje algorytmów kryptograficznych z kluczem:

Historyczne szyfry

Klucz do szyfru niemieckiego z okresu powstania wielkopolskiego (ze zbiorów Archiwum Państwowego w Poznaniu)

Szyfry historyczne musiały umożliwiać szyfrowanie i deszyfrowanie przez człowieka, a więc opierać się na relatywnie prostych operacjach. Współczesne komputery są o kilkanaście rzędów wielkości szybsze w obliczeniach od ludzi i potrafią złamać praktycznie każdy tego typu szyfr. Istnieją przykłady szyfrów, które są możliwe do stosowania przez człowieka bez użycia komputerów i zapewniają pewien sensowny poziom bezpieczeństwa. Przykładami takich szyfrów są np.: szyfr z kluczem jednorazowym (ang.) one time pad, szyfry podstawieniowe dla krótkich wiadomości, a nawet szyfr Solitaire opisany w powieści pt. Cryptonomicon autorstwa Neala Stephensona.

Wszystkie wymienione niżej szyfry nie mają obecnie żadnego praktycznego znaczenia:

Zobacz też

Przypisy

  1. a b c d Bruce Schneier: Kryptografia dla praktyków: protokoły, algorytmy i programy źródłowe w języku C. Warszawa: Wydawnictwa Naukowo-Techniczne, 2002, s. 29-30. ISBN 83-204-2678-2.
Kontrola autorytatywna (algorytm):Encyklopedia internetowa: