Samouczek kryptografii
Samouczek dotyczący kryptografii i bezpieczeństwa sieci
Informacje odgrywają kluczową rolę w prowadzeniu biznesu, organizacji, operacji wojskowych itp. Informacje w niewłaściwych rękach mogą prowadzić do utraty biznesu lub katastrofalnych skutków. Aby zabezpieczyć komunikację, firma może użyć kryptologii do szyfrowania informacji. Kryptologia polega na przekształcaniu informacji do formatu nieczytelnego dla człowieka i odwrotnie.
W tym samouczku Kryptografia i bezpieczeństwo sieci wprowadzimy Cię w świat kryptologii i pokażemy, jak zabezpieczyć informacje przed dostaniem się w niepowołane ręce.
Co to jest kryptografia?
Kryptografia to nauka i stosowanie technik, które ukrywają prawdziwe znaczenie informacji poprzez przekształcanie ich w formaty nieczytelne dla człowieka i odwrotnie.
Zilustrujmy to za pomocą przykładu. Załóżmy, że chcesz wysłać wiadomość "KOCHAM JABŁKA", możesz zastąpić każdą literę we frazie trzecią kolejną literą alfabetu. Zaszyfrowana wiadomość będzie „K NQXG CRRNGU”. Aby odszyfrować naszą wiadomość, będziemy musieli cofnąć się o trzy litery alfabetu, używając litery, którą chcemy odszyfrować. Poniższy obrazek pokazuje, jak przebiega transformacja.
Proces przekształcania informacji do postaci nieczytelnej dla człowieka nazywa się szyfrowaniem.
Nazywa się proces odwracania szyfrowania odszyfrowywanie.
Deszyfrowanie odbywa się za pomocą a sekretny klucz które są znane jedynie uprawnionym odbiorcom informacji. Klucz służy do odszyfrowania ukrytych wiadomości. Dzięki temu komunikacja jest bezpieczna, bo nawet jeśli atakującemu uda się zdobyć informacje, nie będzie to miało dla niego sensu.
Zaszyfrowana informacja to tzw szyfr. W dalszej części tego samouczka dotyczącego kryptografii dowiemy się, czym jest kryptoanaliza.
Cechy kryptografii
Lista funkcji kryptografii znajduje się poniżej:
- Algorytm
- Poufność
- Integrity
- Zdolność adaptacji
- Interoperacyjność
- Uwierzytelnianie
- Skalowalność
- Zarządzanie kluczami
Zastosowania kryptografii
Zastosowania kryptografii są następujące:
- Szyfrowanie SSL/TLS
- Przechowywanie haseł
- Bezpieczna bankowość internetowa
- Kryptowaluty
- Zaszyfrowane wiadomości e-mail
- Digiwszystkie podpisy
- Bezpieczna komunikacja
- Handel elektroniczny i transakcje online
Co to jest kryptoanaliza?
Kryptoanaliza jest sztuką próby odszyfrowania zaszyfrowanych wiadomości bez użycia klucza, który został użyty do zaszyfrowania wiadomości. Kryptoanaliza wykorzystuje analizę matematyczną i algorytmy do odszyfrowania szyfrów. Jest używana do łamania systemów bezpieczeństwa w celu uzyskania dostępu do zaszyfrowanej zawartości i wiadomości, nawet jeśli klucz kryptograficzny jest nieznany.
Powodzenie ataków kryptoanalizy zależy
- Dostępna ilość czasu
- Dostępna moc obliczeniowa
- Dostępna pojemność
Poniżej znajduje się lista powszechnie stosowanych ataków kryptoanalizy;
- Brutalny atak– ten typ ataku wykorzystuje algorytmy, które próbują odgadnąć wszystkie możliwe kombinacje logiczne tekstu jawnego, które są następnie szyfrowane i porównywane z oryginalnym szyfrem.
- Atak słownikowy– ten typ ataku wykorzystuje listę słów w celu znalezienia dopasowania tekstu jawnego lub klucza. Używa się go najczęściej podczas próby łamać zaszyfrowane hasła.
- Atak na tęczowy stół– ten typ ataku polega na porównaniu tekstu zaszyfrowanego z wcześniej obliczonymi skrótami w celu znalezienia dopasowań.
Czym jest kryptologia?
Kryptologia łączy w sobie techniki kryptografii i kryptoanalizy.
Szyfrowanie Algorithms
MD5– to skrót od Message-Digest 5. Służy do tworzenia 128-bitowych wartości skrótu. Teoretycznie skrótów nie można odwrócić na oryginalny zwykły tekst. MD5 służy do szyfrowania haseł, a także sprawdzania integralności danych. MD5 nie jest odporny na kolizje. Odporność na kolizje to trudności w znalezieniu dwóch wartości dających te same wartości skrótu.
- SHA– to skrót od Secure Hash Algorithm. Algorytmy SHA służą do generowania skondensowanych reprezentacji wiadomości (message digest). Ma różne wersje, takie jak:
- SHA-0: generuje 120-bitowe wartości skrótu. Został wycofany z użytku ze względu na istotne wady i zastąpiony przez SHA-1.
- SHA-1: generuje 160-bitowe wartości skrótu. Jest podobny do wcześniejszych wersji MD5. Ma słabość kryptograficzną i nie jest zalecany do użytku od roku 2010.
- SHA-2: ma dwie funkcje skrótu, mianowicie SHA-256 i SHA-512. SHA-256 używa słów 32-bitowych, podczas gdy SHA-512 używa słów 64-bitowych.
- SHA-3: algorytm ten był formalnie znany jako Keccak.
- RC4– Do tworzenia szyfrów strumieniowych używany jest algorytm Brute Force RC4. Jest najczęściej używany w protokołach takich jak Secure Socket Layer (SSL) do szyfrowania komunikacji internetowej i Równoważna prywatność przewodowa (WEP) do zabezpieczania sieci bezprzewodowych.
- ROZDYSZKA– ten algorytm służy do tworzenia szyfrów blokowanych symetrycznie i z kluczem. Może być używany do szyfrowania haseł i innych danych.
Teraz w tej serii tutoriali o kryptografii dowiemy się, jak złamać RC4 i utworzyć szyfr za pomocą CrypTool.
Działalność hakerska: jak stworzyć szyfr za pomocą CrypTool
W tym praktycznym samouczku Cryptool utworzymy prosty szyfr za pomocą narzędzia brute-force RC4. Następnie spróbujemy go odszyfrować za pomocą ataku brute-force. W tym ćwiczeniu załóżmy, że znamy szyfrowanie tajny klucz ma 24 bity. Wykorzystamy te informacje do złamania szyfru.
Tworzenie szyfru strumieniowego RC4
Krok 1) Pobierz i zainstaluj CryptTool
Będziemy używać CrypTool 1 jako naszego narzędzia kryptologicznego. CrypTool 1 to narzędzie edukacyjne typu open source do badań kryptologicznych. Można go pobrać z https://www.cryptool.org/en/ct1/
Krok 2) Otwórz CryptTool i zamień tekst
Zaszyfrujemy następującą frazę
Nigdy nie lekceważ determinacji dzieciaka, który ma mnóstwo czasu i brakuje pieniędzy
Jako klucza szyfrowania użyjemy 00 00 00.
- Otwórz CrypTool 1
- Zamień tekst na „Nigdy nie lekceważ determinacji dzieciaka, który jest bogaty w czas i biedny w gotówkę”.
Krok 3) Zaszyfruj tekst
- Kliknij menu Szyfruj/Odszyfruj
- Wskaż opcję Symmetric (modern), a następnie wybierz RC4, jak pokazano powyżej
- Wyświetli się następujące okno
Krok 4) Wybierz klucz szyfrowania
- Wybierz 24 bity jako klucz szyfrowania
- Ustaw wartość na 00 00 00
- Kliknij przycisk Szyfruj
- Otrzymasz następujący szyfr strumieniowy
Atakowanie szyfru strumieniowego
Krok 5) Rozpocznij analizę
- Kliknij menu Analiza
- Wskaż Szyfrowanie symetryczne (nowoczesne), a następnie wybierz RC4, jak pokazano powyżej
- Pojawi się następujące okno
- Pamiętaj, że przyjęto założenie, że tajny klucz ma 24 bity. Dlatego upewnij się, że jako długość klucza wybrano 24 bity.
- Kliknij przycisk Start. Otrzymasz następujące okno
- Uwaga: czas potrzebny do zakończenia ataku metodą Brute-Force Analysis zależy od mocy obliczeniowej używanej maszyny i długości klucza. Im dłuższa długość klucza, tym dłużej trwa atak.
Krok 6) Przeanalizuj wyniki
- Po zakończeniu analizy otrzymasz następujące wyniki.
- Uwaga: niższa liczba Entropii oznacza, że jest to najbardziej prawdopodobny poprawny wynik. Możliwe, że poprawnym wynikiem będzie wyższa niż najniższa znaleziona wartość Entropii.
- Wybierz linię, która ma największy sens, a następnie kliknij przycisk Zaakceptuj wybór, gdy skończysz
Podsumowanie
- Kryptografia to nauka zajmująca się szyfrowaniem i deszyfrowaniem wiadomości.
- Szyfr to wiadomość przekształcona do formatu nieczytelnego dla człowieka.
- Odszyfrowanie polega na zamianie szyfru na oryginalny tekst.
- Kryptoanaliza to sztuka rozszyfrowania szyfrów bez znajomości klucza użytego do ich szyfrowania.
- Kryptologia łączy w sobie techniki kryptografii i kryptoanalityka.
- Do tworzenia szyfrów strumieniowych używany jest algorytm online RC4 brute force. Jest najczęściej używany w protokołach takich jak Secure Socket Layer (SSL) do szyfrowania komunikacji internetowej i Wired Equivalent Privacy (WEP) do zabezpieczania sieci bezprzewodowych.