Najpopularniejsze współczesne algorytmy szyfrujące
|
- AES – symetryczny szyfr blokowy, czyli taki, w którym strumień danych wejściowych (tekst jawny, czyli jeszcze niezaszyfrowane informacje) jest dzielony na bloki o określonej wielkości, np. 128 bitów, które są szyfrowane, a następnie składane w szyfrogram (ciąg zaszyfrowanych danych). AES został przyjęty przez amerykańską agencję NIST (odpowiednik polskiego Głównego Urzędu Miar) jako podstawowy szyfr stosowany do utajniania informacji. Występuje najczęściej w trzech wersjach: 128-bitowej, 192-bitowej oraz najsilniejszej 256-bitowej. Słyszy się pogłoski o ewentualnej możliwości złamania tego szyfru, ale nigdy, jak dotąd, nie zostały potwierdzone.
- DES – poprzednik AES-a; opracowany w latach 70. przez firmę IBM szyfr blokowy, w którym 64-bitowe bloki danych są szyfrowane 56-bitowym kluczem. Złamanie tego szyfru nie stanowi już większych trudności dla maszyn o dużej mocy obliczeniowej, wciąż jednak może być stosowany w przypadku mniej ważnych danych
- Twofish – symetryczny szyfr blokowy; korzysta z kluczy o długości 128, 192 i 256 bitów. Szyfrowane dane są dzielone na bloki po 128 bitów każdy. Szyfr ten był jednym z finalistów konkursu na algorytm szyfrujący, rozpisanego przez amerykańską agencję NIST (ostatecznie wygrał AES). Dotychczas nie znaleziono efektywnej metody złamania tego szyfru, szybszej niż atak typu brute force (testowanie wszystkich możliwych kombinacji).
- RC4 – szyfr strumieniowy wykorzystywany m.in. przez przeglądarki internetowe podczas połączeń za pomocą protokołu SSL , protokołu BitTorrent, jak również w sieciach bezprzewodowych (WEP ). Obecnie nie jest już jednak uważany za bezpieczny. W 2001 roku standard szyfrowania sieci bezprzewodowych (WEP) został złamany.
|
Szyfrowanie informacji (kryptografia) polega na zastąpieniu tekstu jawnego odpowiednimi znakami alfabetu i symbolami. Odbywa się to zgodnie z przyjętym przez nadawcę i odbiorcę algorytmem (metodą), według ustalonego klucza. Prostym przykładem algorytmu szyfrowania jest np. przestawienie liter w wiadomości lub podstawienie w miejsce danych liter innych. Przykłady współczesnych, złożonych algorytmów znajdziesz w ramce „Najpopularniejsze współczesne algorytmy szyfrowania”. Klucz szyfrujący określa, jak to przyporządkowanie ma wyglądać. Jeśli zaszyfrowana wiadomość trafi do nieuprawnionej osoby, to do jej odczytania sama wiedza o zastosowanym algorytmie nie wystarczy, potrzebny jest jeszcze klucz. Aby szyfr był bezpieczny, klucz trzeba zachować w tajemnicy, a zbiór możliwych kluczy musi być na tyle duży, żeby nie dało się ich sprawdzić w ograniczonym czasie.
Metody starożytnych
Wagę utajniania informacji rozumieli już starożytni Spartanie, którzy używali tzw. skytali. Była to drewniana ociosana laska czy wałek, na który nawijano pasek pergaminu, tak by jego brzegi stykały się ze sobą, a tekst pisano na powstałej w ten sposób otulinie. Gdy wiadomość została zapisana, odwijano pasek pergaminu i przekazywano adresatowi. Odbiorca wiadomości musiał mieć wałek identycznej grubości – nawijał na niego pergamin i odczytywał wiadomość.
Współcześnie szyfry opierają się nie na wymyślnych mechanizmach, lecz na matematyce, wspartej mocami obliczeniowymi komputerów. Ale również matematyka w szyfrach to żadna nowość. Wykorzystał ją Juliusz Cezar, tworząc szyfr, zwany szyfrem Cezara. Kodował wiadomości w ten sposób, że każda litera tekstu jawnego była zamieniana na literę znajdującą się w alfabecie łacińskim trzy miejsca za nią (alfabet był zapętlony – po Z następowało znowu A). Podczas kodowania z tekstu jawnego usuwano wszelkie spacje, znaki interpunkcyjne, nie miała znaczenia także wielkość liter. Nazwa naszego miesięcznika zapisana szyfrem Cezara brzmiałaby: SFIRUPDX
Gdzie tu matematyka? Otóż kluczem szyfrującym jest liczba 3, gdyż o taką wartość następuje przesunięcie znaków alfabetu. Jest to jeden z najprostszych szyfrów – szyfr podstawieniowy. Jego „siła” we współczesnym świecie jest żadna i z jego złamaniem powinien sobie poradzić każdy piśmienny człowiek, i to bez komputera. Mimo to z tego banalnego szyfru korzystała armia rosyjska w 1915 roku, ponoć dlatego, że bardziej skomplikowane metody nie były akceptowane przez sztab.
Szyfry iluzoryczne
Od czasów starożytnych techniki obliczeniowe się rozwinęły. Mimo to w komputerach wciąż można znaleźć szyfry, których siła praktycznie nie odbiega od siły szyfru Cezara. W systemach Unix, a także w Linuksie i wielu programach działających w DOS-ie oraz Windows, można znaleźć metodę „utajniania” tekstu za pomocą funkcji o nazwie ROT13. Jest to po prostu szyfr Cezara o kluczu 13! Czemu trzynastka? Żeby było prościej. Ponowne zaszyfrowanie zaszyfrowanego już tekstu odszyfrowuje go, gdyż 13 to połowa 26-znakowego alfabetu łacińskiego (bez polskich znaków).