Co to jest szyfrowanie danych?


Szyfrowanie danych to zbiór technik służących do kodowanie informacji wrażliwych lub osobistych w celu zapewnienia ich poufności.
Szyfrowanie uniemożliwia nieuprawniony dostęp do danych. Pozostają one nieczytelne dla osób nieposiadających klucza deszyfrującego. Dowiedz się, jak działa szyfrowanie i w jaki sposób technologia ta zapewnia skuteczną ochronę przed zagrożeniami online, kradzieżą i ujawnianiem wrażliwych danych.

encryption

Co oznacza szyfrowanie danych

Definicja szyfrowania danych

Szyfrowanie to forma kryptografii polegająca na zakodowaniu danych w taki sposób, aby stały się nieczytelne. Informacje tekstowe napisane w zrozumiałym języku, tzn. możliwym do odczytania przez człowieka, są przekształcane na język zakodowany, w wyniku czego powstaje tekst nieczytelny czyli „zaszyfrowany”.

Dlaczego używamy terminu szyfrowanie?

„Szyfrowanie” to zastępowanie znaków w zrozumiałym tekście symbolami, literami, liczbami lub znakami specjalnymi.

Przykład:

Zrozumiały tekst

>> Operacja szyfrowania >>

Tekst zaszyfrowany

Dzień dobry

6)80!Spyr1

W ten sposób zakodowane dane są zrozumiałe tylko dla uprawnionych osób. W jaki sposób odczytują one szyfr?

Dane nie są szyfrowane losowo: operację wykonuje się przy użyciu algorytmu szyfrowania.

Osoba, która chce odczytać zakodowane dane, musi posiadać odpowiedni klucz umożliwiający ich odszyfrowanie.

Czy wiesz, że...?

Słowo „kryptografia” oznacza „ukryte pismo”. Szyfry zapewniały poufność wiadomości od czasów starożytnych. Najbardziej znany jest z pewnością szyfr Cezara, zwany również szyfrem podstawieniowym. Każda litera tekstu niezaszyfrowanego zastępowana jest inną literą, oddaloną od niej o stałą liczbę pozycji w alfabecie. Zgodnie z tą metodą ABC staje się DEF.

Szyfrowanie może być wykorzystywane:

  • w przypadku przechowywanych danych, czyli „danych w spoczynku” (szyfrowanie dysku twardego)
  • w przypadku przesyłanych danych, czyli „danych w tranzycie” (podczas transmisji danych w Internecie lub w jakiejkolwiek innej sieci).

Co to jest algorytm szyfrujący?

Formułę matematyczną używającą klucza szyfrowania danych nazywa się algorytmem szyfrowania. Przetwarzanie informacji odbywa się w sposób przewidywalny. W ten sposób, nawet jeśli wynik wydaje się całkowicie losowy, znajomość klucza szyfrującego umożliwia wykonanie odwrotnej operacji, a tym samym odszyfrowanie całkowicie niezrozumiałego tekstu.

Klucz kryptograficzny odpowiada łańcuchowi znaków (np. 6846A649B880FCFE1797D67AEAF).

Wyzwanie związane z szyfrowaniem danych: ochrona przed hakerami

Aktualnie chmura i połączone z nią serwery przechowują duże ilości wrażliwych danych i zarządzają nimi. Dane te mogą stać się celem wielu ataków, dlatego konieczne jest wprowadzenie skutecznej ochrony.

Szyfrowanie jest jednym z narzędzi do walki z cyberatakami. Cyberprzestępcy stosują coraz bardziej wyrafinowaną taktykę ofensywną, np ataki typu ransomware czy brute force. Dane dotyczące cyberbezpieczeństwa we Francji w 2021 r. są niepokojące. CESIN (Klub Ekspertów ds. Bezpieczeństwa Informacji i Technologii Cyfrowej) w barometrze z 2022 r. podał, że w roku 2021 r. 54 % francuskich przedsiębiorstw padło ofiarą cyberataków.

W tym kontekście szyfrowanie danych jest bardzo ważnym środkiem bezpieczeństwa i zdecydowanie warto go wprowadzić.

Jakie są modele szyfrowania danych?

Istnieje kilka metod szyfrowania. W odpowiedzi na różne potrzeby w zakresie bezpieczeństwa opracowywane są odpowiednie rozwiązania. Dwa główne modele szyfrowania informacji to szyfrowanie symetryczne i asymetryczne.

Szyfrowanie symetryczne

Szyfrowanie symetryczne polega na użyciu tego samego tajnego klucza zarówno do zaszyfrowania oryginalnej wiadomości, jak i do jej odszyfrowania.

W maszynie Enigma, używanej przez armię niemiecką podczas II wojny światowej, zastosowano właśnie system symetryczny.

Szyfrowanie asymetryczne

Szyfrowanie asymetryczne lub kryptografia z kluczem publicznym wykorzystuje dwa różne klucze kryptograficzne: jeden do zaszyfrowania danych, a drugi do ich odszyfrowania. Pierwszy nazywany jest „kluczem publicznym” dlatego, że jest dostępny dla wszystkich. Drugi, czyli klucz deszyfrujący lub „klucz prywatny”, jest przechowywany wyłącznie przez odbiorcę i tylko on pozwala odszyfrować wiadomość.

Symetryczne i asymetryczne algorytmy szyfrowania

Początkowo algorytmy szyfrowania używały do ochrony danych 56-bitowych kluczy kryptograficznych. Przykładem jest metoda DES (Data Encryption Standard). Klucze te nie są już wystarczająco złożone, aby oprzeć się coraz bardziej wyrafinowanym technikom hakerskim.

Poniższa tabela zawiera wykaz powszechnie stosowanych metod szyfrowania.

Metody symetrycznego szyfrowania

Algorytmy

Opis

3DES lub Triple

Algorytm Triple DES wykorzystuje trzy 56-bitowe klucze.

Następujące po sobie operacje w efekcie spowalniają proces szyfrowania. Ponadto, korzystanie z dłuższych bloków przez nowsze algorytmy powoduje, że Triple DES staje się coraz bardziej przestarzały.
 

AES (Advanced Encryption Standard, zaawansowany standard szyfrowania)

Ten algorytm szyfruje dane w blokach po 128 bitów przy użyciu kluczy o różnej długości (128, 192 lub 256 bitów).
Każdy blok poddawany jest predefiniowanym i odwracalnym permutacjom. Liczba permutacji (zwanych „rundami”) zależy od wielkości użytego klucza:

  • 128 bitów = 10 rund
  • 192 bity = 12 rund
  • 256 bitów = 14 rund.

Jest to algorytm symetryczny, który często wykorzystują instytucje finansowe i rządowe.

Twofish

Twofish również szyfruje dane w blokach po 128 bitów z kluczami od 128 do 256 bitów, a bloki przetwarza w 16 rundach bez względu na ilość danych.

PFS (Perfect Forward Secrecy, doskonałe utajnianie z wyprzedzeniem)

PFS korzysta z tymczasowych kluczy prywatnych, specyficznych dla każdej sesji. Każda nowa sesja generuje nowy klucz, co gwarantuje poufność innych sesji w przypadku naruszenia bezpieczeństwa.

Funkcja PFS jest zawarta w algorytmie Diffie-Hellman.

System ten jest używany przez Google, WhatsApp i Facebook Messenger.

Powszechnie używane symetryczne algorytmy szyfrowania

Metody szyfrowania asymetrycznego

Algorytmy

Opis

RSA (Rivest-Shamir-Adleman)

Algorytm szyfrowania RSA opiera się na faktoryzacji bardzo dużych liczb pierwszych. Ponieważ technologia staje się coraz bardziej zaawansowana, klucze poniżej 2048 bitów nie są już uznawane za wiarygodne. Obecnie zaleca się posiadanie kluczy o długości 4096 bitów.

Jednak w przypadku dużych plików cecha ta wydłuża czas szyfrowania.
 

PKI (Public Key Infrastructure, infrastruktura klucza publicznego)

Jest to architektura składająca się z różnych serwerów, która umożliwia dostarczanie certyfikatów, a także zarządzanie ich cyklem życia. Certyfikat jest podpisanym i zaufanym „dokumentem tożsamości”, którego zadaniem jest dostarczenie kluczy do szyfrowania. Najczęstszym przypadkiem jest utworzenie tunelu HTTPS.
 

ECC (Elliptic Curve Cryptography, kryptografia krzywych eliptycznych)

Metoda szyfrowania ECC opiera się na obiektach bardziej skomplikowanych niż liczby całkowite, czyli na punktach na krzywych eliptycznych.
Krzywa eliptyczna jest graficznym odzwierciedleniem równania matematycznego. Krzywa ta posiada następującą właściwość: jeśli prosta przecina ją w dwóch punktach, to musi przecinać ją w trzecim punkcie.

Ponieważ rozmiar kluczy jest zmniejszony, proces szyfrowania ulega skróceniu.

Powszechnie stosowane algorytmy szyfrowania asymetrycznego

Różnica między szyfrowaniem w tranzycie a szyfrowaniem „end to end”

Szyfrowanie w tranzycie zapewnia ochronę informacji podczas komunikacji, tzn. podczas przesyłania danych między nadawcą a serwerem. Dane nie są zatem szyfrowane aż do odbiorcy. Serwer odszyfrowuje dane przed ponownym ich zaszyfrowaniem i wysłaniem do odbiorcy. Istnieje więc moment, w którym informacje są podatne na ataki, ponieważ są zapisane zrozumiałym tekstem, a więc mogą być wykorzystane przez osoby trzecie.

W przypadku szyfrowania typu „end to end” dane są szyfrowane bez przerw między nadawcą a odbiorcą. Tylko oni mają klucze do odszyfrowania danych. Serwery występujące po drodze nie mają zatem w żadnym momencie dostępu do wiadomości zapisanych zrozumiałym tekstem. W ten sposób ochrona danych jest w pełni zapewniona podczas całego procesu tranzytu. Ta metoda szyfrowania jest na przykład wykorzystywane przez aplikację Telegram.

Co to jest szyfrowanie homomorficzne?

Jest to metoda stosowana do systemów szyfrowania asymetrycznego. Osoba trzecia posiadająca klucz publiczny może wykonywać dowolne obliczenia na wiadomościach zaszyfrowanych przez właściciela danych. Osoba trzecia nie ma zatem dostępu do wiadomości zapisanych zrozumiałym tekstem i przekazuje właścicielowi wynik swoich obliczeń, czyli nowe zaszyfrowane wiadomości. Właściciel może następnie odszyfrować wynik obliczeń kluczem prywatnym i uzyskać wiadomość zapisaną zrozumiałym tekstem.

Metodę tę można wykorzystać do bezpiecznego przechowywania danych wrażliwych w chmurze u zewnętrznego dostawcy. Dzięki temu można outsource’ować złożone, czasochłonne i wymagające dużych zasobów operacje.

Pięć powodów, dla których szyfrowanie danych jest w dzisiejszych czasach niezbędne

Poufność

Szyfrowanie informacji zapewnia poufność danych w tranzycie. Jedynie właściciel danych i/lub ich odbiorca mogą je odczytać. W przypadku przechwycenia wiadomości przez osoby niepowołane odczytanie danych wrażliwych jest niemożliwe.

Bezpieczeństwo

Szyfrowanie pozwala zabezpieczyć dane przed niepowołanym dostępem. W przypadku kradzieży komputera służbowego przechowywane na nim zaszyfrowane dane pozostają niedostępne. Wrażliwe dane firmowe nie zostaną dzięki temu ujawnione.

Icons/concept/Padlock/Padlock Transit Created with Sketch.

Integralność danych

Wiadomości przesyłane przez Internet mogą być przechwytywane i modyfikowane bez wiedzy nadawcy i odbiorcy. Szyfrowanie jest narzędziem gwarantującym integralność danych i zapobiega ich modyfikacji w trakcie przesyłu.
Nie wszystkie algorytmy zapewniają, tak jak TLS 1.3, integralność. Na przykład atak o nazwie „Man In The Middle” umożliwia włączenie się do zaszyfrowanej komunikacji i modyfikację w locie przesyłanych wiadomości, bez weryfikacji integralności.

Icons/concept/Page/Page Certificate Created with Sketch.

Autoryzacja

Szyfrowanie jest częścią niektórych mechanizmów kontroli dostępu do systemu. Autoryzacja żądania dostępu jest tożsama z weryfikacją legalności żądania.

Icons/concept/Book/Book Open Created with Sketch.

Podstawy prawne

Obecnie, aby przeciwdziałać złośliwym działaniom i ryzyku utraty lub ujawnienia danych wrażliwych, wprowadzono kilka regulacji. Niektóre podmioty, np. przedsiębiorstwa o kluczowym znaczeniu lub instytucje rządowe, wymagają od firm szyfrowania danych użytkowników przed ich zapisaniem na przestrzeni dyskowej. Przykładem jest standard HIPAA (Health Insurance Portability and Accountability Act) dotyczący przesyłania drogą elektroniczną danych, standard PCI DSS dotyczący bezpieczeństwa danych bankowych oraz dyrektywa RODO dotycząca danych osobowych w Unii Europejskiej.