Powtórzenie

Przesunięcie deszyfrujące: D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

W wyniku przesunięcia uzyskuje się tekst „atakujemyoswicie”. Zdeszyfrowana wiadomość ma więc następującą treść: „Atakujemy o świcie”.

Szyfrowanie – co oznacza pojęcie klucza

Klucz jest jednym z podstawowych elementów szyfru. To on służy do szyfrowania i deszyfrowania tekstu. W kodzie Cezara funkcję klucza pełni liczba znaków, o którą następuje przesunięcie.

W wielu szyfrach rolę klucza odgrywa hasło, za pomocą którego szyfruje się tekst jawny w celu jego utajnienia. Z drugiej strony tego samego hasła używa się do uzyskania tekstu jawnego z tekstu zaszyfrowanego. W szyfrowaniu komputerowym klucz jest ciągiem bitów.

O skuteczności szyfrowania, a więc o jego odporności na próby złamania, decyduje w dużej mierze długość klucza. W ogromnym uproszczeniu długość klucza to liczba możliwych kombinacji klucza. Jeśli przestrzeń możliwych kluczy jest niewielka, agresor może wypróbować kolejno wszystkie klucze. Czynność ta nosi nazwę ataku siłowego (ataku brute force). Metodę szyfrowania uznaje się za złamaną, gdy ktoś odkryje sposób zaatakowania danego szyfru skuteczniejszy od ataku siłowego, a więc wypróbowywania wszystkich możliwych kluczy. Dlatego należy obierać wystarczająco długie klucze, aby atakujący metodą brute force nie mieli szansy powodzenia.

Wspomniany kod Cezara nie zapewnia prawie żadnego zabezpieczenia. Przewiduje tylko 26 kluczy. Wypróbowanie ich (nawet metodą ręczną) zajmuje bardzo mało czasu. Dlatego można szybko odczytywać szyfrogramy stworzone tą metodą bez konieczności mozolnego poszukiwania klucza.

W szyfrowaniu przy użyciu komputera można ustalić długość klucza na podstawie liczby bitów (np. klucz 40-bitowy, 56-bitowy, 128-bitowy, 256-bitowy). Wraz z długością klucza wzrasta liczba możliwych kombinacji – zupełnie jak w wypadku hasła. Szyfrowanie 128-bitowe jest bilion razy silniejsze od szyfrowania 40-bitowego.

Enigma to wirnikowa, elektromagnetyczna maszyna szyfrująca stosowana przez Niemców w czasie II wojny światowej.

Enigma to wirnikowa, elektromagnetyczna maszyna szyfrująca stosowana przez Niemców w czasie II wojny światowej.

 

Aplikacja Gpg4win pozwala szyfrować pocztę elektroniczną w standardach OpenPGP i S/MIME.

Aplikacja Gpg4win pozwala szyfrować pocztę elektroniczną w standardach OpenPGP i S/MIME.

 Szyfrowanie – zastosowania metod asymetrycznych

Właściwości asymetrycznych systemów kryptograficznych otwierają przed nimi szeroki zakres możliwości. Metody asymetryczne znajdują obecnie zastosowanie np. w szyfrowaniu korespondencji elektronicznej, a także w protokołach kryptograficznych takich jak SSL/TLS. Dużą popularnością cieszy się m.in. protokół HTTPS, który umożliwia bezpieczne komunikowanie się przeglądarki internetowej z serwerem. Ponadto metod asymetrycznych używa się często do cyfrowego podpisywania transakcji lub dokumentów.

Następca TrueCrypta, program VeraCrypt jest równie funkcjonalny, za to zapewnia jeszcze większy poziom bezpieczeństwa przechowywanych danych.

Następca TrueCrypta, program VeraCrypt jest równie funkcjonalny, za to zapewnia jeszcze większy poziom bezpieczeństwa przechowywanych danych.

 

Szyfrowanie – gdzie lepiej stosować metody symetryczne

W niektórych sytuacjach wystarczają w zupełności algorytmy symetryczne i wcale nie trzeba korzystać ze skomplikowanej kryptografii asymetrycznej. Jest tak, gdy okoliczności umożliwiają bezpieczne ustalenie klucza przez komunikujące się ze sobą osoby (np. na osobistym spotkaniu). Metody symetryczne sprawdzają się również w środowiskach, w których jednostka centralna zarządza wszystkimi kluczami (np. w zamkniętych systemach bankowych).

Szyfrowanie – czy można łączyć asymetryczne z symetrycznym

Wspólne stosowanie elementów kryptografii symetrycznej i asymetrycznej jest możliwe. Rozwiązanie to określa się mianem szyfrowania hybrydowego. Dane właściwe szyfruje się metodą symetryczną, zaś użyty do tego klucz zabezpiecza przed przechwyceniem za pomocą klucza publicznego odbiorcy. W ten sposób unika się przetwarzania dużych ilości danych mało wydajnymi metodami asymetrycznymi. Są potrzebne tylko do zaszyfrowania i odszyfrowania klucza. Adresat odczyta go za pomocą swojego klucza prywatnego, uzyskując możliwość dekryptażu całej wiadomości.

Nawet programy do kompresowania danych (tu: bezpłatny 7-Zip) zapewniają możliwość szyfrowania zasobów.

Nawet programy do kompresowania danych (tu: bezpłatny 7-Zip) zapewniają możliwość szyfrowania zasobów.

 

Szyfrowanie – opis najważniejszych algorytmów kryptograficznych

Poniżej przedstawiamy kilka spośród najbardziej znanych metod szyfrowania.

Data Encryption Standard (DES)

Bardzo popularny algorytm szyfrowania symetrycznego Data Encryption Standard (DES) powstał w połowie lat siedemdziesiątych we współpracy firmy IBM z amerykańską agencją NSA (National Security Agency). Zamierzeniem było stworzenie bezpiecznego standardu szyfrowania do wymiany informacji między jednostkami administracyjnymi Stanów Zjednoczonych. Ze względu na niewielką długość klucza (wynosi zaledwie 56 bitów) DES obecnie już nie zapewnia wysokiego poziomu bezpieczeństwa wymaganego w niektórych zastosowaniach. Można jednak sztucznie zwiększyć długość klucza, szyfrując dane wielokrotnie algorytmem DES. Właśnie takie kaskadowe odmiany algorytmu, Triple DES, TDES i 3DES, są nadal stosowane w sektorze usług bankowych.

Advanced Encryption Standard (AES)

AES, czyli Advanced Encryption Standard, powstał jako następca algorytmu DES na zlecenie amerykańskiej agencji federalnej NIST (National Institute of Standards and Technology). W 2000 r. przyjęła go jako standard stosowany w administracji rządowej. Początkowo algorytm nosił nazwę Rijndael od fragmentów nazwisk jego twórców, Vincenta Rijmena i Joana Daemena.

Szyfr występuje w trzech podstawowych odmianach – AES-128, AES-192 i AES-256. Liczby w nazwach odnoszą się do długości klucza. W nowym algorytmie zastosowano więc znacznie dłuższe klucze niż w DES. Metoda AES zapewnia bardzo wysoki poziom bezpieczeństwa. Dopiero po upływie ponad dziesięciu lat od momentu przyjęcia jej jako standard pojawiła się pierwsza interesująca koncepcja ataku, jednak i tak szybko okazała się niegodna uwagi. Algorytm jest dostępny publicznie i można go implementować w sprzęcie lub oprogramowaniu bez konieczności uiszczania opłat licencyjnych. Odmiany AES-192 i AES-256 są dopuszczone w Stanach Zjednoczonych do szyfrowania dokumentów rangi państwowej o najwyższej klauzuli tajności.

RSA

RSA to metoda asymetryczna, którą można stosować nie tylko do szyfrowania, lecz również do tworzenia cyfrowych podpisów. Został zaprojektowany w latach 1977/78 przez trzech kryptografów na uniwersytecie MIT. Nazwa szyfru pochodzi od pierwszych liter nazwisk jego autorów (Ron Rivest, Adi Shamir i Len Adleman).

Bezpieczeństwo danych szyfrowanych za pomocą RSA opiera się na trudności rozkładania dużych liczb całkowitych na czynniki pierwsze. O bezpieczeństwie decyduje w znacznej mierze długość klucza, więc nie powinna być zbyt mała.

W porównaniu do omówionych powyżej metod 3DES i AES algorytm RSA jest znacznie wolniejszy – co najmniej tysiąckrotnie. Dlatego stosuje się go przeważnie tylko do wymiany klucza szyfru symetrycznego. Właściwe dane zaś zabezpiecza się metodą symetryczną. Rozwiązanie to łączy w sobie zalety obu metod – wygodną wymianę klucza i dużą wydajność szyfrowania.

Twofish

Twofish to algorytm szyfrowania symetrycznego. Powstał w 1998 r. jako następca metody Blowfish, która jest nadal w użyciu. Długość klucza wynosi 128, 192 lub 256 bitów. Autorzy Twofisha nie opatentowali algorytmu, rozpowszechniając go w domenie publicznej. Jest więc dostępny dla wszystkich do nieodpłatnego użytku.

Szyfrowanie – które algorytmy są najbezpieczniejsze

Za nowoczesne i najbezpieczniejsze algorytmy szyfrowania uchodzą obecnie AES, Twofish i 3DES.

Szyfrowanie – co to S/MIME

S/MIME, a więc Secure/Multipurpose Internet Mail Extensions to standard przemysłowy szyfrowania danych w formacie MIME (takich jak wiadomości poczty elektronicznej). U podstaw tego rozwiązania leży szyfrowanie hybrydowe z użyciem kluczy prywatnego i publicznego. Wybrano taki rodzaj szyfrowania, aby zagwarantować nienaruszalność korespondencji, umożliwić uwierzytelnianie nadawcy i odbiorcy, a także chronić kryptograficznie treść wiadomości przed nieupoważnionym dostępem. Przedstawiona metoda uchodzi za stosunkowo bezpieczną. Dotychczas nikomu nie udało się złamać tego algorytmu.

Szyfrowanie – oprogramowanie szyfrujące

Szyfrować można pliki, foldery, partycje, całe dyski, a także transmisję danych, elektroniczną korespondencję i wiele innych elementów. Liczne aplikacje (niektóre z nich są bezpłatne) pozwalają zabezpieczać kryptograficznie pliki, nośniki danych i przepływ informacji w sieci. Możliwość szyfrowania oferują nawet niektóre narzędzia do kompresowania danych. Na przykład bezpłatny 7-Zip obsługuje algorytm kryptograficzny AES z kluczem o długości 256 bitów. Popularny, shareware'owy WinRARszyfruje metodą AES z 128-bitowym kluczem. Jest dostępnych wiele aplikacji do szyfrowania zasobów dyskowych. Do najbardziej funkcjonalnych należy wieloplatformowe narzędzie VeraCrypt, następca porzuconego projektu TrueCrypt. Działa w środowiskach Windows, Linux i Mac OS. Pozwala szyfrować w tle partycje i dyski, a także tworzyć pliki-kontenery gromadzące dane, które podpina się do systemu plików niczym wirtualne dyski. Tak jak jego poprzednik narzędzie obsługuje algorytmy szyfrujące AES, Serpent i Twofish, umożliwiając ich kaskadowe stosowanie. Za to twórcy zwiększyli z tysiąca do ponad trzystu tysięcy liczbę iteracji przy obliczaniu wartości haszowania do tworzenia klucza. Klucze szyfrujące generuje funkcja PBKDF2 z 512-bitowym ciągiem zaburzającym.

Najbardziej znanym oprogramowaniem do szyfrowania wszelkiego rodzaju danych jest PGP. Amerykański fizyk Phil Zimmermann stworzył w 1991 r. narzędzie PGP (Pretty Good Privacy), w którym zaimplementował szyfr RSA. Gotowy program opublikował w Usenecie, udostępniając go wszystkim do bezpłatnego użytku. Nowatorską cechą tego rozwiązania była możliwość opatrywania wiadomości e-mail cyfrowym podpisem, który potwierdza tożsamość nadawcy.

Z powodu niejasnej sytuacji, która miała miejsce, gdy projekt PGP był własnością firmy deweloperskiej McAfee, stworzono w 1998 r. standard OpenPGP. U jego podstaw leży kod źródłowy PGP 5.x, który opublikowano w książce i w tej postaci wywieziono ze Stanów Zjednoczonych. Zdecydowano się na taki wybieg, bo ówczesne przepisy zakazywały eksportu oprogramowania z USA. Regulacje prawne zabraniały szyfrowania z użyciem klucza o długości przekraczającej 40 bitów. Oprócz tego algorytmy użyte w oprogramowaniu PGP takie jak RSA zostały już wcześniej opatentowane. Na domiar złego krążyły fałszywe pogłoski, jakoby PGP wyposażono w luki, aby je później wykorzystać.

Wraz z GnuPG pojawiła się pierwsza implementacja standardu OpenPGP. Zaprojektowano ją jako bezpłatną alternatywę PGP i opublikowano pod licencją GNU GPL. Z upływem czasu powstało wiele rozszerzeń standardu OpenPGP, które zapewniają większą funkcjonalność niż PGP.

Cacert to jedna z niewielu organizacji, które wystawiają bezpłatne certyfikaty X.509 umożliwiające szyfrowanie poczty elektronicznej w standardzie S/MIME.

Cacert to jedna z niewielu organizacji, które wystawiają bezpłatne certyfikaty X.509 umożliwiające szyfrowanie poczty elektronicznej w standardzie S/MIME.

 

Szyfrowanie – utajnianie transmisji danych w internecie

Do utajniania transmisji danych w internecie używa się przeważnie protokołu SSL (Secure Socket Layer), który szyfruje informacje przekazywane z przeglądarki internetowej do serwera i w odwrotnym kierunku. Począwszy od wersji 3 protokół SSL jest rozwijany jako TLS (Transport Layer Security). Zabezpiecza tylko kanał transmisyjny. Odbierając dane, serwer docelowy deszyfruje je i zapisuje w loklnym systemie plików.

Szyfrowanie TLS stosuje się obecnie przeważnie w połączeniu z HTTPS – protokołem komunikacyjnym do bezpiecznego przesyłania danych w sieci WWW. Gdy internauta przywołuje witrynę internetową poprzez SSL, używa tych samych elementów protokołu HTTP, którymi zazwyczaj odwołuje się do serwera WWW. Różnica polega na tym, że tym razem wymiana danych odbywa się przez zaszyfrowany kanał. Zatem nazwa HTTPS umieszczona na początku adresu URL (zamiast HTTP) nie oznacza innego protokołu, lecz sygnalizuje szyfrowanie.

Większość serwerów WWW obsługuje TLS 1.0, niektóre ponadto SSLv2 i SSLv3 z różnymi algorytmami szyfrującymi. Tymczasem prawie wszystkie przeglądarki internetowe preferują TLS z szyfrowaniem RSA i AES. SSL znajduje ponadto zastosowanie m.in. w serwerach poczty elektronicznej, aplikacjach internetowych i komunikacji między serwerami.

Szyfrowanie – utajnianie poczty elektronicznej

Rozpatrując bezpieczeństwo poczty elektronicznej, należy rozróżnić dwa aspekty – szyfrowanie transmisji danych i szyfrowanie treści wiadomości. Za bezpieczne przesyłanie danych w wielu urządzeniach odpowiadają łącza SSL, jednak w niektórych trzeba ręcznie włączyć tę funkcję. Sprawdź więc w ustawieniach poczty, czy jest uaktywniona opcja SSL/TLS.

Oprócz transmisji danych można szyfrować ponadto treść przesyłanych depesz. Zadanie to można zrealizować za pomocą algorytmu S/MIME lub PGP (GPG), o których mowa powyżej. W obu wypadkach są do dyspozycji asymetryczne metody szyfrowania, które nadal uchodzą za bezpieczne. Są zaimplementowane we wtyczkach do popularnych programów pocztowych takich jak np. Thunderbird.

Szyfrowanie korespondencji ma dwie zasadnicze wady. Choć są dostępne szczegółowe instrukcje, instalowanie wymaganych narzędzi okazuje się zbyt trudne dla początkujących użytkowników. Na domiar złego nie wystarczy wyposażyć komputera nadawcy w wirtualny pęk kluczy. Również klienty pocztowe u odbiorców muszą obsługiwać PGP lub S/MIME. Tylko wówczas można wymieniać się zaszyfrowaną korespondencją. Dlatego opisane metody nie cieszą się dużą popularnością w sektorze użytkowników prywatnych.

Program edukacyjny CrypTool wprowadza początkujących w świat kryptoanalizy i pozwala eksperymentować na szyfrach.

Program edukacyjny CrypTool wprowadza początkujących w świat kryptoanalizy i pozwala eksperymentować na szyfrach.

 

Szyfrowanie – co to cyfrowy podpis

Podpisy cyfrowe służą do bezpiecznego przeprowadzania transakcji internetowych. Pozwalają sprawdzać elektroniczne dokumenty pod kątem ich pochodzenia i prawdziwości. Potwierdzają tożsamość komunikujących się osób. W gruncie rzeczy stanowią cyfrową odmianę pieczęci, która jednocześnie pełni funkcję sygnatury.

Warto zauważyć, że podpis cyfrowy zapewnia jeszcze większe zabezpieczenie niż podpis tradycyjny. Gwarantuje odbiorcy nie tylko, że nadawca wiadomości jest osobą, za którą się podaje (poręczenie autentyczności), lecz ponadto gwarantuje nienaruszalność korespondencji. Poświadcza więc, że dokument dotrze do adresata w takiej postaci, w jakiej wysłał go nadawca (nie zostanie po drodze przechwycony i zmodyfikowany).

Cyfrowe podpisy wymagają infrastruktury klucza publicznego (PKI, Public Key Infrastructure), która świadczy usługi uwierzytelniania i wydaje certyfikaty, aby potwierdzać zgodność stosowanych kluczy.

Szyfrowanie – zasady działania cyfrowego podpisu

Aby użytkownik mógł opatrywać dokumenty cyfrowym podpisem, musi dysponować kluczami sygnującymi. W podpisach cyfrowych stosuje się z zasady asymetryczne algorytmy szyfrowania.

Dla każdego uczestnika komunikacji trzeba wygenerować odrębną parę kluczy składającą się z klucza prywatnego i klucza publicznego. Jawny klucz publiczny umożliwia weryfikowanie podpisu cyfrowego. Klucz prywatny natomiast służy do składania podpisu i winien być przechowywany w bezpiecznym miejscu. Nie może trafić w ręce osób trzecich.

Aby sporządzić cyfrowy podpis, należy utworzyć wartość haszowania z wysyłanej wiadomości i sygnować ją kluczem prywatnym. Wiadomość i podpis wysyła się następnie do adresata, przy czym nie trzeba szyfrować treści dokumentu. Nie chodzi przecież o zachowanie poufności, lecz tylko o potwierdzenie tożsamości i zagwarantowanie nienaruszalności.

Odbiorca weryfikuje autentyczność podpisu, sprawdzając wartość haszowania kluczem publicznym. Jeśli procedura powiedzie się, może zakładać, że wiadomość pochodzi od właściciela klucza prywatnego, a jej treść nie została zmanipulowana podczas transmisji.

Szyfrowanie – co to certyfikat

Certyfikat to zestaw danych, który potwierdza określone właściwości obiektów lub osób. Autentyczność i nienaruszalność certyfikatu można sprawdzić metodami kryptograficznymi. Certyfikat cyfrowy zawiera dane wymagane do jego zweryfikowania.

Szyfrowanie – co to infrastruktura klucza publicznego

Infrastruktura klucza publicznego (PKI, Public Key Infrastructure) udostępnia zasoby nieodzowne do świadczenia usług certyfikacyjnych. W jej skład wchodzą m.in. reguły określające warunki wystawiania certyfikatów. Zadaniem tej infrastruktury jest także sprawdzanie tożsamości osób lub podmiotów wnioskujących o wydanie certyfikatu. Przeważnie publikuje informacje o wystawionych i cofniętych certyfikatach. Ponadto PKI musi dysponować metodami sporządzania takich certyfikatów, które są godne zaufania i nie budzą wątpliwości użytkowników. Istotne jest, aby nie było dostępu z internetu do sprzętu, który służy do generowania certyfikatów.

 



Dodaj komentarz






Dodaj

© 2013-2024 PRV.pl
Strona została stworzona kreatorem stron w serwisie PRV.pl