Jaka jest różnica między kodowaniem a szyfrowaniem?
Jaka jest różnica między kodowaniem a szyfrowaniem?
Odpowiedzi:
Kodowanie przekształca dane do innego formatu przy użyciu schematu, który jest publicznie dostępny, aby można go było łatwo odwrócić.
Szyfrowanie przekształca dane na inny format w taki sposób, że tylko określone osoby mogą odwrócić transformację.
Podsumowanie -
Kodowanie służy do zachowania użyteczności danych i wykorzystuje schematy, które są publicznie dostępne.
Szyfrowanie służy do zachowania poufności danych, a tym samym możliwość odwrócenia transformacji (klucze) jest ograniczona do określonych osób.
Więcej szczegółów w SOURCE
Kodowanie to proces przekształcania danych w taki sposób, aby można je było bez niebezpieczeństwa przesyłać kanałem komunikacyjnym lub bezpiecznie przechowywać na nośniku pamięci. Na przykład sprzęt komputerowy nie manipuluje tekstem, lecz jedynie bajtami, więc kodowanie tekstu jest opisem tego, jak tekst powinien zostać przekształcony w bajty. Podobnie HTTP nie pozwala na bezpieczne przesyłanie wszystkich znaków, więc może być konieczne kodowanie danych za pomocą base64 (używa tylko liter, cyfr i dwóch bezpiecznych znaków).
Podczas kodowania lub dekodowania nacisk kładzie się na to, aby każdy miał ten sam algorytm, a algorytm ten jest zwykle dobrze udokumentowany, szeroko rozpowszechniony i dość łatwy w implementacji. Każdy może w końcu zdekodować zakodowane dane .
Z drugiej strony szyfrowanie polega na przekształceniu fragmentu danych, który można cofnąć tylko przy użyciu określonej (i tajnej) wiedzy na temat sposobu ich odszyfrowania. Nacisk kładzie się na utrudnienie odczytania oryginalnych danych każdemu poza zamierzonym odbiorcą. Algorytm kodowania, który jest utrzymywany w tajemnicy, jest formą szyfrowania, ale jest dość podatny na ataki (wymyślenie dowolnego rodzaju szyfrowania wymaga umiejętności i czasu, az definicji nie można kazać nikomu stworzyć takiego algorytmu kodowania za Ciebie - w przeciwnym razie trzeba ich zabić). Zamiast tego najczęściej stosowana metoda szyfrowania wykorzystuje tajne klucze: algorytm jest dobrze znany, ale proces szyfrowania i deszyfrowania wymaga posiadania tego samego klucza do obu operacji, a następnie klucz jest utrzymywany w tajemnicy. Odszyfrowanie zaszyfrowanych danych jest możliwe tylko za pomocą odpowiedniego klucza .
Kodowanie:
Cel: Celem kodowania jest transformacja danych, tak aby mogły być prawidłowo (i bezpiecznie) wykorzystane przez inny typ systemu.
Służy do: utrzymywania użyteczności danych, tj. Zapewnienia możliwości prawidłowego wykorzystania danych.
Mechanizm pobierania danych: brak klucza i można go łatwo odwrócić, pod warunkiem, że wiemy, jaki algorytm został użyty do kodowania.
Zastosowane algorytmy: ASCII, Unicode, kodowanie URL, Base64.
Przykład: dane binarne wysyłane pocztą e-mail lub wyświetlanie znaków specjalnych na stronie internetowej.
Szyfrowanie:
Cel: Celem szyfrowania jest przekształcenie danych w celu zachowania ich w tajemnicy przed innymi.
Używany do: Zachowania poufności danych, tj. Zapewnienia, że dane nie mogą być wykorzystane przez nikogo innego niż zamierzony odbiorca (y).
Mechanizm wyszukiwania danych: oryginalne dane można uzyskać, jeśli znamy używany klucz i algorytm szyfrowania.
Zastosowane algorytmy: AES, Blowfish, RSA.
Przykład: wysłanie komuś tajnego listu, który tylko on powinien mieć możliwość odczytania, lub bezpieczne przesłanie hasła przez Internet.
Referencyjny adres URL: http://danielmiessler.com/study/encoding_vs_encryption/
Kodowanie to proces umieszczania ciągu znaków w specjalnym formacie do celów transmisji lub przechowywania
Szyfrowanie to proces tłumaczenia danych na tajny kod. Szyfrowanie to najskuteczniejszy sposób na zapewnienie bezpieczeństwa danych. Aby odczytać zaszyfrowany plik, musisz mieć dostęp do tajnego klucza lub hasła, które umożliwiają jego odszyfrowanie. Niezaszyfrowane dane nazywane są zwykłym tekstem; zaszyfrowane dane są określane jako zaszyfrowany tekst
Potraktuj kodowanie jako sposób przechowywania lub przesyłania danych między różnymi systemami. Na przykład, jeśli chcesz przechowywać tekst na dysku twardym, będziesz musiał znaleźć sposób na konwersję znaków na bity. Alternatywnie, jeśli wszystko, co masz, to latarka, możesz chcieć zakodować tekst za pomocą Morse'a. Wynik jest zawsze „czytelny”, pod warunkiem, że wiesz, jak jest przechowywany.
Szyfrowanie oznacza, że chcesz uczynić swoje dane nieczytelnymi, szyfrując je za pomocą algorytmu. Na przykład Cezar zrobił to, zastępując każdą literę inną. Wynik jest nieczytelny, chyba że znasz tajny „klucz”, którym został zaszyfrowany.
Powiedziałbym, że obie operacje przekształcają informacje z jednej postaci w drugą, z tą różnicą, że:
Tak więc, jeśli obejmuje klucze (symetryczne lub asymetryczne) (inaczej „sekret”), jest to szyfrowanie, w przeciwnym razie jest to kodowanie.
Kodowanie -》 przykładowe dane to 16
Następnie kodowanie to 10000 oznacza, że jest to format binarny, ASCII lub UNCODED itp. Który może być odczytany przez dowolny system łatwo i łatwo, aby zrozumieć jego prawdziwe znaczenie
Szyfrowanie -》 przykładowe dane to 16 Następnie szyfrowanie to 3t57 lub może to być cokolwiek, w zależności od tego, który algorytm jest używany do szyfrowania Który może być łatwo odczytany przez każdy system, ALE tylko ten kto może zrozumieć to prawdziwe znaczenie, kto ma jego klucz deszyfrujący
Kodowanie służy zachowaniu użyteczności danych i można je odwrócić, stosując ten sam algorytm, który zakodował treść, tj. Nie jest używany żaden klucz.
Szyfrowanie służy do zachowania poufności danych i wymaga użycia klucza (utrzymywanego w tajemnicy) w celu powrotu do zwykłego tekstu.
Istnieją również dwa główne terminy, które wprowadzają zamieszanie w świecie haszowania i zaciemniania bezpieczeństwa
Haszowanie służy do sprawdzania integralności treści poprzez wykrywanie wszystkich jej modyfikacji poprzez oczywiste zmiany w wyniku skrótu.
Maskowanie jest używane, aby uniemożliwić ludziom zrozumienie znaczenia czegoś i często jest używane z kodem komputerowym, aby pomóc w zapobieganiu pomyślnej inżynierii wstecznej i / lub kradzieży funkcjonalności produktu.
Przeczytaj więcej w artykule Danielmiessler
Szyfrowanie konwertuje dane na nieczytelny format (może zawierać specjalne nieczytelne znaki).
Kodowanie pomaga przekonwertować te dane na czytelny format (znaki), tak aby można je było przechowywać do wykorzystania w przyszłości, np. Podczas deszyfrowania.