Kategorie
Szyfrowanie, kodowanie i haszowanie – jaka jest różnica?
Wszystkie trzy pojęcia – szyfrowanie, kodowanie i haszowanie – są do pewnego stopnia bliskoznaczne, ale stosuje się je w różnych celach. W tym artykule szczegółowo omawiamy różnice między nimi oraz ich zastosowania.
Szyfrowanie
Szyfrowanie kojarzy się przede wszystkim z komunikatorami i ochroną treści wiadomości. Najpowszechniejszym określeniem jest dziś "szyfrowanie end-to-end". W istocie szyfrowanie to technika przekształcania danych, w której wiadomość zostaje zaszyfrowana takim algorytmem, że dostęp do informacji uzyskują wyłącznie uprawnieni użytkownicy. Szyfrowanie stosuje się wtedy, gdy trzeba przesłać dane poufne, na przykład login wraz z hasłem albo inne informacje wrażliwe.
W szyfrowaniu informacje zabezpiecza się specjalnymi algorytmami – AES (Advanced Encryption Standard, symetryczny algorytm szyfrowania blokowego przyjęty jako standard przez rząd USA, jeden z najpopularniejszych algorytmów szyfrujących) oraz RSA (skrót od nazwisk Rivest, Shamir, Adleman, algorytm kryptograficzny z kluczem publicznym, pierwszy algorytm nadający się zarówno do szyfrowania, jak i do podpisu cyfrowego). Zaszyfrowaną informację nazywa się "szyfrogramem"; można ją z powrotem przekształcić w postać źródłową – "tekst jawny», i odwrotnie – tekst jawny zostaje zaszyfrowany do postaci szyfrogramu. Algorytmy szyfrujące dzielą się na dwa rodzaje – symetryczne i asymetryczne. W szyfrowaniu symetrycznym informacje szyfruje się i odszyfrowuje tym samym kluczem, w szyfrowaniu asymetrycznym używa się dwóch kluczy, na przykład jednego do szyfrowania, a drugiego do odszyfrowania.

Kodowanie
Kodowanie służy do przekształcania informacji z jednej postaci w inną, tak aby była czytelna dla właściwych systemów, wygodna w przechowywaniu i gotowa do automatycznego przetwarzania. Kodowanie nie służy do ochrony danych, a algorytmy kodowania często nie są unikalne. Stosuje się je na przykład wtedy, gdy trzeba zmniejszyć rozmiar pliku audio lub wideo; każdemu formatowi audio i wideo odpowiada określony program kodujący i dekodujący.
Kodowanie obejmuje kilka obszarów: kompresję danych, kodowanie transportowe (dodatkowe kodowanie zapewniające zgodność z protokołami transmisji danych), kryptografię (przekształcanie informacji na potrzeby poufnej transmisji), kodowanie fizyczne (zamianę sygnałów na wielkości fizyczne, takie jak amplituda prądu) oraz wykrywanie i korekcję błędów (kontrolę integralności danych podczas odtwarzania). Przykłady standardów kodowania to ASCII, BASE64, UNICODE i inne.

Haszowanie
W haszowaniu informacja zostaje przekształcona w hash za pomocą funkcji skrótu. Funkcja skrótu zamienia zbiór danych wejściowych na ciąg bitów o zadanej długości, działając według określonego algorytmu. Haszowanie przydaje się więc wtedy, gdy informację o dowolnym rozmiarze trzeba sprowadzić do rozmiaru z góry ustalonego.
Funkcje skrótu wykorzystuje się do tworzenia unikalnych identyfikatorów zbiorów danych, do przechowywania haseł w systemach zabezpieczeń w postaci skrótów, do tworzenia podpisów elektronicznych, do wyszukiwania duplikatów w dużych zbiorach informacji i tak dalej. Dane wejściowe w haszowaniu nazywa się "kluczem", a wynik przekształcenia to "kod skrótu".
Algorytmów haszowania jest wiele, a wybór zależy od specyfiki rozwiązywanego zadania: różnią się między innymi długością skrótu w bitach, złożonością obliczeniową czy odpornością kryptograficzną.

Szyfrowanie i haszowanie w ochronie informacji wrażliwych
Jak już wyjaśniliśmy, kodowanie nie służy do ochrony danych, a jedynie do sprowadzenia zbiorów danych do formatu i rozmiaru czytelnego dla systemów. Za bezpieczeństwo informacji podczas przesyłania i przechowywania odpowiadają natomiast szyfrowanie i haszowanie.
Kiedy mowa o przechowywaniu i przesyłaniu informacji w środowisku firmowym, nie sposób pominąć ogromnej ilości danych przechodzących przez urządzenia pracowników ani ryzyka wycieku informacji wrażliwych. Pracownicy spoza działu bezpieczeństwa informacji nie znają szczegółów takich metod ochrony jak szyfrowanie czy haszowanie, dlatego potrzebują znacznie bardziej uniwersalnego zabezpieczenia. Kompleksową ochronę danych może zapewnić niezawodny system DLP.
Na przykład system DLP Anexet Ultimate analizuje dane według wielu parametrów, w tym według wspomnianych funkcji skrótu. Umożliwia również:
-
analizę zawartości plików i dokumentów;
-
analizę plików tekstowych i wysyłanego tekstu (uwzględnia cechy morfologiczne języka, rozpoznaje tekst z błędami gramatycznymi oraz zapisany transliteracją);
-
analizę obrazów (rozpoznawanie tekstu na obrazach, pieczęci i stempli);
-
analizę wiadomości głosowych i rozmów, rozpoznawanie mowy, analizę według dodanych wzorców i wyrażeń regularnych (wykrywanie przesyłanych zdjęć kart bankowych, paszportów i dokumentów wewnętrznych).
Umożliwia także:
-
analizę powiązań między pracownikami, pozwalającą ustalić drogi rozprzestrzeniania się informacji;
-
analizę cyfrowych odcisków palców;
-
rozpoznawanie plików maskowanych;
-
analizę plików CAD i inne funkcje.
Jeśli po przeanalizowaniu przechwyconych danych okaże się, że naruszono regułę bezpieczeństwa, system automatycznie zgłasza incydent wraz z pełnym kompletem informacji o nim.
Podsumowanie: wszystkie trzy pojęcia – szyfrowanie, kodowanie i haszowanie – oznaczają przekształcanie danych z jednej postaci w inną, po to by bezpiecznie je przesłać albo ułatwić ich rozpoznawanie. Trzeba jednak pamiętać, że dane wrażliwe chroni szyfrowanie lub haszowanie. Dla większej pewności, zwłaszcza w przypadku danych organizacji, warto sięgnąć po dodatkowe zabezpieczenie w postaci rozbudowanego systemu DLP.

















