Szyfrowanie symetryczne a asymetryczne
Szyfrowanie to kluczowa koncepcja w kryptografii. Jest to proces, w którym można zakodować wiadomość do formatu, którego nie może odczytać podsłuchujący. Jest to starodawna technika, a jeden popularny starożytny przypadek użycia został znaleziony w wiadomościach Cezara, które zostały zaszyfrowane za pomocą szyfru Cezara. Można to traktować jako transformację. Użytkownik ma zwykły tekst, a gdy jest zakodowany w postaci zaszyfrowanej, żaden podsłuchujący nie może ingerować w zwykły tekst. Gdy zostanie odebrany przez zamierzonego odbiorcę, może go odszyfrować, aby uzyskać oryginalny tekst jawny. Szyfrowanie jest używane w prawie wszystkich komunikacji sieciowej w różnym stopniu bez naszej wiedzy. Kiedyś był ograniczony do zastosowań wojskowych i komunikacji rządowej, ale wraz z rozpowszechnieniem się Internetu w ostatnim czasie potrzeba bezpiecznych kanałów informacyjnych stała się najważniejsza, a szyfrowanie stało się głównym rozwiązaniem tego problemu. Istnieją dwa główne typy szyfrowania, znane jako szyfrowanie symetryczne i szyfrowanie asymetryczne. Będziemy dziś porównywać je obok siebie.
Szyfrowanie symetryczne
To najprostszy rodzaj szyfrowania, który wymaga użycia jednego tajnego klucza. Jest to najstarsza znana metoda szyfrowania i do tej kategorii należy szyfr Cezara. Tajny klucz może być tak prosty jak liczba lub ciąg liter itp. Spójrzmy na przykład na szyfr przesuwny, który jest prostą techniką szyfrowania symetrycznego, którą można elegancko zademonstrować. Mamy w rękach zwykły tekst „Chcę wysłać tajną wiadomość”, a naszym tajnym kluczem jest przesunięcie każdej litery o trzy pozycje. Więc jeśli masz „A” w tekście jawnym, stanie się ono „D” w tekście zaszyfrowanym. Jest to tak zwany szyfr Cezara, a twój tekst szyfru będzie wyglądał tak: „L zdqw wr vhqg d vhfuhw phvvdjh”. Na pierwszy rzut oka jest to niezrozumiałe, ale po odszyfrowaniu go za pomocą tajnego klucza ponownie staje się zwykłym tekstem. Obecnie w użyciu jest wiele algorytmów szyfrowania klucza symetrycznego, w tym szyfry strumieniowe, takie jak RC4, FISH, Py, QUAD, SNOW itp. oraz szyfry blokowe, takie jak AES, Blowfish, DES, Serpent, Camellia itp.
Szyfrowanie asymetryczne
Szyfrowanie asymetryczne jest również znane jako kryptografia klucza publicznego, co jest stosunkowo nowym obszarem w porównaniu z szyfrowaniem symetrycznym. Szyfrowanie asymetryczne wykorzystuje dwa klucze do szyfrowania zwykłego tekstu. Pojawiło się to na arenie, aby rozwiązać nieodłączny problem z szyfrem symetrycznym. Jeśli podsłuchujący w jakiś sposób zdobędzie symetryczny tajny klucz, cały punkt szyfrowania zostanie unieważniony. Jest to bardzo prawdopodobne, ponieważ tajny klucz może być przesłany przez niezabezpieczone kanały komunikacyjne. Jako rozwiązanie, szyfrowanie asymetryczne wykorzystuje dwa klucze, z których jeden jest publicznie dostępny, a drugi jest prywatny i znany tylko Tobie. Wyobraź sobie, że ktoś chce wysłać ci wiadomość; w tym scenariuszu będziesz mieć prywatny tajny klucz, a odpowiadający mu klucz publiczny będzie dostępny dla każdego, kto może chcieć wysłać ci zaszyfrowaną wiadomość. Tak więc nadawca szyfruje wiadomość za pomocą klucza publicznego i przekształca zwykły tekst na tekst zaszyfrowany, a to można odszyfrować tylko za pomocą odpowiedniego klucza prywatnego, który umożliwia każdemu wysłanie wiadomości bez konieczności udostępniania Ci tajnego klucza. Jeśli wiadomość jest zaszyfrowana tajnym kluczem, można ją również odszyfrować za pomocą klucza publicznego. W rzeczywistości szyfrowanie asymetryczne jest najczęściej używane w codziennych kanałach komunikacyjnych, zwłaszcza w Internecie. Popularne algorytmy szyfrowania klucza asymetrycznego obejmują ElGamal, RSA, techniki krzywej eliptycznej, PGP, SSH itp.
Jaka jest różnica między szyfrowaniem symetrycznym a szyfrowaniem asymetrycznym?
• Szyfrowanie symetryczne wykorzystuje pojedynczy tajny klucz, który musi być udostępniony osobom, które muszą otrzymać wiadomość, podczas gdy szyfrowanie asymetryczne wykorzystuje parę kluczy publicznych i klucz prywatny do szyfrowania i odszyfrowywania wiadomości podczas komunikacji.
• Szyfrowanie symetryczne to stara technika, podczas gdy szyfrowanie asymetryczne jest stosunkowo nowe.
• Szyfrowanie asymetryczne zostało wprowadzone w celu uzupełnienia nieodłącznego problemu konieczności współdzielenia klucza w modelu szyfrowania symetrycznego, eliminując potrzebę współdzielenia klucza za pomocą pary kluczy publiczno-prywatnych.
Szyfrowanie symetryczne a szyfrowanie asymetryczne
Mogę przedstawić wyczerpujący przegląd, czy wybrać szyfrowanie symetryczne, czy asymetryczne, ale prawda jest taka, że jest bardzo mało prawdopodobne, abyś miał możliwość wyboru, jeśli nie jesteś programistą lub inżynier oprogramowania. Dzieje się tak, ponieważ wszystkie te szyfrowania mają miejsce w warstwie aplikacji i poniżej w modelu sieciowym OSI, a laik nie musiałby w to ingerować. W zależności od programów, z których korzystają, będą mieli w różnym stopniu gwarancje dotyczące prywatności. Dlatego ważne jest, aby pamiętać, że nigdy nie należy przekazywać tajnego klucza przez sieć publiczną, jeśli używasz algorytmu klucza symetrycznego, a szyfrowanie asymetryczne pozwala uniknąć tego kłopotu. Jednak zwykle szyfrowanie asymetryczne zajmuje stosunkowo więcej czasu i jako takie, większość prawdziwych systemów używa hybrydy tych dwóch metod szyfrowania, w których tajny klucz używany w szyfrowaniu symetrycznym jest szyfrowany przy użyciu szyfrowania asymetrycznego, które ma być wysyłane przez niezabezpieczony kanał, podczas gdy reszta dane są szyfrowane przy użyciu szyfrowania symetrycznego i wysyłane przez niezabezpieczony kanał. Gdy odbiorca otrzyma klucz zaszyfrowany asymetrycznie, używa swojego klucza prywatnego do jego odszyfrowania, a gdy pozna sekret, może łatwo odszyfrować symetrycznie zaszyfrowaną wiadomość.