Poradnik dla początkujących dotyczący kryptografii klucza publicznego

Opublikowany: 2022-09-20

Dane są nieocenionym zasobem w dzisiejszym konkurencyjnym środowisku biznesowym. W związku z tym firmy muszą zachować poufność i bezpieczeństwo danych, jednocześnie kontrolując dostęp do danych. Co więcej, w miarę jak cyfryzacja staje się normą, a organizacje automatyzują swoje operacje przetwarzania danych, wzrastają szanse nieuprawnionego dostępu do danych wrażliwych. Dlatego firmy muszą stworzyć bezpieczne środowisko, które chroni cenne dane i łagodzi potencjalne zagrożenia danych.

Kryptografia odgrywa kluczową rolę w bezpieczeństwie danych, aby zachować poufność i integralność. Podtyp kryptografii, szyfrowanie kluczem publicznym lub kryptografia kluczem publicznym, stanowi kluczowy element większości polityk bezpieczeństwa danych na całym świecie.

W tym artykule zbadamy koncepcję klucza publicznego w kryptografii i jego użyteczność w ochronie danych.

Ucz się kursów rozwoju oprogramowania online z najlepszych uniwersytetów na świecie. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Spis treści

Czym jest kryptografia w bezpieczeństwie danych?

Kryptografia odnosi się do zestawu technik ochrony informacji i komunikacji poprzez ukrycie danych, tak aby tylko zamierzony odbiorca mógł przetwarzać i czytać zawartość. Opiera się na algorytmach do szyfrowania danych, które mogą odszyfrować tylko upoważnione osoby. Tak więc kryptografia polega głównie na zaszyfrowaniu zwykłego tekstu lub zwykłego tekstu na tekst zaszyfrowany (szyfrowanie), a następnie przywrócenie (odszyfrowanie).

Słowo kryptografia ma swoje korzenie w greckim słowie „Kryptos”, co oznacza „ukryty”. Niektóre z najwcześniejszych wzmianek o użyciu kryptografii sięgają starożytnych Egipcjan i Rzymian, w tym słynny szyfr Cezara Juliusza Cezara. Chociaż techniki stosowane w dawnych czasach wydają się prymitywne i proste w dzisiejszych czasach i czasach, starożytne szyfry są uderzającym przypomnieniem konieczności ochrony poufnych informacji. Wraz z rozwojem technologii kryptografia ma dziś wiele zastosowań, w tym podpisy cyfrowe, przeglądanie Internetu, komunikatory, wiadomości e-mail, transakcje kartami kredytowymi, weryfikacje online i generowanie kluczy kryptograficznych.

Czym jest klucz w kryptografii?

W kryptografii klucz to ciąg losowych znaków w określonej kolejności, używany do zmiany lub zaszyfrowania danych w algorytmie szyfrowania. Innymi słowy, klucz w kryptografii szyfruje lub blokuje dane tak, że tylko osoba z ważnym kluczem może je odszyfrować lub odblokować. Tekst jawny to oryginalne dane, a tekst zaszyfrowany jest po zaszyfrowaniu klucza.

Kryptografia odgrywa ogromną rolę w systemach bezpieczeństwa danych. Istnieją dwie szerokie klasyfikacje algorytmów kryptograficznych, algorytmy z kluczem symetrycznym (algorytmy z kluczem tajnym) i algorytmy z kluczem asymetrycznym (algorytmy z kluczem publicznym).

Popularne kursy i artykuły na temat inżynierii oprogramowania

Popularne programy
Program Executive PG w tworzeniu oprogramowania - IIIT B Program certyfikacji Blockchain - PURDUE Program Certyfikatów Cyberbezpieczeństwa - PURDUE MSC w informatyce - IIIT B
Inne popularne artykuły
Wynagrodzenie Cloud Engineer w USA 2021-22 Wynagrodzenie architekta rozwiązań AWS w USA Wynagrodzenie programisty zaplecza w USA Wynagrodzenie programisty front-end w USA
Wynagrodzenie programisty w USA Pytania do rozmowy kwalifikacyjnej Scrum Master w 2022 r. Jak rozpocząć karierę w cyberbezpieczeństwie w 2022 roku? Opcje kariery w USA dla studentów inżynierii

Znaczenie kryptografii klucza publicznego

Kryptografia kluczem publicznym lub szyfrowanie kluczem asymetrycznym to proces kryptografii, w którym dane są szyfrowane i odszyfrowywane przy użyciu różnych kluczy. Chociaż klucze są różne, są matematycznie powiązane z ułatwieniem wyszukiwania tekstu jawnego poprzez odszyfrowanie tekstu zaszyfrowanego. Najczęściej stosowana forma szyfrowania kluczem publicznym jest oparta na algorytmie RSA.

W procesie szyfrowania asymetrycznego jeden klucz szyfruje dane, a inny, ale odpowiadający mu klucz, odszyfrowuje dane. Kluczem do szyfrowania danych jest klucz publiczny, natomiast klucz prywatny odszyfrowuje informacje.

Co więcej, klucz publiczny jest powszechnie znany, podczas gdy klucz prywatny jest tajemnicą. Oznacza to, że podczas gdy inne osoby mogą używać Twojego klucza publicznego do wysyłania zaszyfrowanych informacji, tylko Ty masz dostęp do prywatnego lub tajnego klucza do dekodowania tekstu.

Zalety kryptografii klucza publicznego

Kryptografia klucza publicznego ma następujące funkcje:

  • Szyfrowanie i deszyfrowanie: Funkcje szyfrowania i deszyfrowania umożliwiają dwóm stronom komunikowanie się ze sobą poprzez ukrywanie wymienianych przez siebie informacji. Nadawca szyfruje lub szyfruje dane przed ich wysłaniem, a odbiorca odszyfrowuje lub odszyfrowuje dane po ich otrzymaniu. Tymczasem zaszyfrowane dane podczas przesyłania pozostają niezrozumiałe dla osób trzecich.
  • Nonrepudiation: Szyfrowanie z kluczem publicznym ma mechanizm bezpieczeństwa zwany nonrepudiation, który zapobiega zmianie danych i zapewnia, że ​​żadna strona nie może zaprzeczyć, że otrzymała/wysłała wiadomość za pomocą szyfrowania.

Kryptografia klucza publicznego a kryptografia klucza prywatnego

W przeciwieństwie do systemu szyfrowania z kluczem publicznym, kryptografia z kluczem symetrycznym lub prywatnym polega na tym, że nadawca i odbiorca dzielą jeden wspólny klucz, który szyfruje i odszyfrowuje wiadomości. W ten sposób algorytmy szyfrowania kluczem symetrycznym tworzą szyfr blokowy o stałej długości bitów z tajnym kluczem, którego nadawca używa do szyfrowania danych, a odbiorca do ich dekodowania lub odszyfrowywania. Klasycznym przykładem kryptografii klucza prywatnego jest AES lub Advanced Encryption Standard ustanowiony przez Narodowy Instytut Standardów i Technologii (NIST) w listopadzie 2001 roku.

Jakie są więc kluczowe różnice między kryptografią klucza publicznego a kryptografią klucza prywatnego? Poniższa tabela przedstawia różnice.

Kryptografia klucza publicznego Kryptografia klucza prywatnego
System kryptograficzny z kluczem publicznym/dwukluczami zawierający dwa klucze. Sekretny/jednokluczowy system kryptograficzny wykorzystujący tylko jeden klucz.
Każdy może użyć klucza publicznego do szyfrowania danych, podczas gdy tylko odbiorca zna klucz prywatny i używa go do odszyfrowania danych. Zarówno nadawca, jak i odbiorca mają ten sam klucz.
Partie nie są równe, stąd asymetryczne. Symetryczny, ponieważ strony są równe.
Strona, która szyfruje wiadomości, nie może odszyfrować wiadomości. Ponieważ strony są równe, odbiorca może sfałszować wiadomość i fałszywie twierdzić, że została wysłana przez nadawcę.

Algorytm RSA odpowiedzialny za szyfrowanie klucza publicznego

Algorytm RSA jest szeroko stosowanym asymetrycznym algorytmem kryptograficznym, który do szyfrowania i odszyfrowywania wiadomości wykorzystuje klucz publiczny i klucz prywatny. Stworzony w 1978 roku algorytm RSA nosi imię jego wynalazców: Rona Rivesta, Adi Shamira i Leonarda Adlemana.

Oto uproszczone wyjaśnienie działania algorytmu RSA w szyfrowaniu z kluczem publicznym :

1. Generowanie kluczy

  • Wybierz dwie duże liczby pierwsze „p” i „q”.
  • Oblicz n = p*q
  • Znajdź funkcję totientu: Φ(n) = (p-1)(q-1)
  • Teraz wybierz liczbę całkowitą 'e', ​​która jest współpierwsza z Φ(n) i 1 < e < Φ(n).
  • Para (n, e) jest kluczem publicznym.
  • Teraz oblicz 'd' takie, że de = 1 mod Φ(n) lub 1 mod (p-1)(q-1)
  • d. Użyj rozszerzonego algorytmu euklidesowego, aby dowiedzieć się. Klucz prywatny to para (n,d).

2. Szyfrowanie

  • Dany tekst jawny „P” to seria liczb mniejsza niż n. Jeśli zaszyfrowany tekst to „C”, szyfrowanie odbywa się za pomocą następującego kroku matematycznego:

C = P e mod n

3. Deszyfrowanie

  • Zwykły tekst można pobrać za pomocą klucza prywatnego (n,d) w następującym kroku:

P = C d mod n

Poniższy pseudokod jest przykładem działania algorytmu RSA:

int x = 61, int y = 53;

int n = x * y;

// n = 3233.

// oblicz totient, phi

int phi = (x-1)*(y-1);

// fi = 3120.

int e = znajdźCopierwszą(phi);

// znajdź 'e', ​​które jest > 1 i jest liczbą pierwszą od phi.

// e = 17 spełnia aktualne wartości.

// Używając rozszerzonego algorytmu euklidesowego, znajdź 'd', który spełnia

// to równanie:

d = (1 mod(phi))/e;

// d = 2753 dla przykładowych wartości.

klucz_publiczny = (e=17, n=3233);

klucz_prywatny = (d=2753, n=3233);

// Biorąc pod uwagę tekst jawny P=123, zaszyfrowany tekst C to :

C = (123^17) % 3233 = 855;

// Aby odszyfrować zaszyfrowany tekst C:

P = (855^2753) % 3233 = 123;

Wniosek

Kryptografia klucza prywatnego to tradycyjny system szyfrowania. Jednak naraża przesyłane wiadomości na przechwycenie przez osoby trzecie, ponieważ pojedynczy tajny klucz szyfruje i odszyfrowuje dane. W ten sposób kryptolodzy opracowali system kryptografii klucza publicznego , aby rozwiązać ograniczenia konwencjonalnego systemu. W kryptografii klucza publicznego nadawca szyfruje wiadomość za pomocą klucza publicznego, podczas gdy odbiorca może dekodować wiadomość za pomocą klucza prywatnego dostępnego tylko u odbiorcy. W rezultacie osoby trzecie nie mogą odczytać przesyłanej wiadomości, ponieważ tylko klucz prywatny odbiorcy może ją odszyfrować. Systemy kryptograficzne z kluczem publicznym w większości wykorzystują algorytm RSA i odgrywają istotną rolę w nowoczesnych technologiach szyfrowania.

Dołącz do UpGrad w swojej podróży w kierunku zostania profesjonalistą ds. bezpieczeństwa danych

Szukasz kompleksowej platformy do nauki bezpieczeństwa danych? Twoje wyszukiwanie kończy się Programem Certyfikatów Cyberbezpieczeństwa od upGrad we współpracy z Purdue University. 8-miesięczny kurs online jest odpowiedni dla specjalistów IT na poziomie podstawowym i średnim, specjalistów technicznych, specjalistów wsparcia technicznego, analityków, inżynierów i świeżo upieczonych absolwentów.

Najważniejsze punkty programu:

  • Certyfikat uznania z upGrad i Purdue University
  • 300+ godzin nauki, ponad 15 sesji na żywo i cztery projekty
  • Kompleksowy program nauczania obejmujący kryptografię i szyfrowanie
  • Naucz się odpowiednich języków programowania i narzędzi
  • Sieci branżowe i równorzędne
  • Wsparcie w nauce 360 ​​stopni

Co oznacza klucz publiczny?

Klucz publiczny odnosi się do dużej wartości liczbowej do szyfrowania danych w kryptografii. Innymi słowy, klucz publiczny w kryptografii konwertuje dane do nieczytelnego formatu. Następnie dane odszyfrowuje inny, ale matematycznie powiązany prywatny.

Czym różni się klucz tajny od klucza publicznego?

Pojedynczy klucz współdzielony szyfruje i dekoduje wiadomość w szyfrowaniu tajnym kluczem. Wręcz przeciwnie, szyfrowanie kluczem publicznym wykorzystuje dwa różne, ale matematycznie powiązane klucze (publiczny i prywatny) do procesu szyfrowania i deszyfrowania.

Jakie są zastosowania kryptografii klucza publicznego?

Podstawowymi zastosowaniami kryptografii z kluczem publicznym są szyfrowanie danych i podpisy cyfrowe. Kryptografia klucza publicznego zapewnia bezpieczeństwo danych poprzez uwierzytelnianie i niezaprzeczalność.