Na czym polega Symetryczna Kryptografia Kluczy?
Strona G艂贸wna
Artyku艂y
Na czym polega Symetryczna Kryptografia Kluczy?

Na czym polega Symetryczna Kryptografia Kluczy?

艢rednio zaawansowany
Opublikowane Apr 8, 2019Zaktualizowane Dec 11, 2023
5m

Symetryczna Kryptografia Klucza (inaczej szyfrowanie symetryczne) jest rodzajem algorytmu szyfrowania, w kt贸rym ten sam klucz jest u偶ywany zar贸wno do szyfrowania, jak i deszyfrowania wiadomo艣ci. Taki spos贸b kodowania informacji zosta艂 ju偶 w du偶ej mierze wykorzystany w ostatnich dziesi臋cioleciach w celu u艂atwienia i zabezpieczenia tajnej komunikacji mi臋dzy rz膮dami, a ich si艂ami zbrojnymi. Obecnie algorytmy klucza symetrycznego s膮 szeroko stosowane w r贸偶nych typach system贸w komputerowych w celu zwi臋kszenia bezpiecze艅stwa przechowywanych w nich danych.


Jak dzia艂a Szyfrowanie Symetryczne?

Algorytmy szyfrowania symetrycznego opieraj膮 si臋 na jednym kluczu, kt贸ry jest wsp贸艂dzielony przez dw贸ch lub wi臋cej u偶ytkownik贸w. Ten sam klucz jest u偶ywany do szyfrowania i deszyfrowania tak zwanego tekstu jawnego (ang. plaintext), kt贸ry reprezentuje wiadomo艣膰 lub dane, kt贸re s膮 kodowane. Proces szyfrowania polega na dos艂ownym przepuszczeniu zwyk艂ego tekstu (dane wej艣ciowe) za pomoc膮 algorytmu szyfrowania zwanego szyfrem, kt贸ry z kolei generuje zaszyfrowany tekst (dane wyj艣ciowe).

Je艣li algorytm szyfrowania jest wystarczaj膮co silny, jedyn膮 mo偶liwo艣ci膮 odczytania wiadomo艣ci lub uzyskania dost臋pu do informacji zawartych w zaszyfrowanym tek艣cie jest u偶ycie odpowiedniego klucza odszyfrowuj膮cego. Proces deszyfrowania zasadniczo polega na konwersji zaszyfrowanego tekstu z powrotem na jawny tekst.

Bezpiecze艅stwo algorytm贸w symetrycznego szyfrowania zwi膮zane jest bezpo艣rednio z tym, jak trudno jest losowo odgadn膮膰 odpowiadaj膮cy im klucz. Dla przyk艂adu, w przypadku 128-bitowego klucza, aby m贸c go poprawnie odgadn膮膰 (wykorzystuj膮c wspo艂cze艣nie dost臋pny sprz臋t komputerowy) potrzeba 聽milard贸w lat. 聽Generalnie rzecz ujmuj膮c Im d艂u偶szy jest klucz, tym trudniej go z艂ama膰. Klucze o d艂ugo艣ci 256 bit贸w s膮 og贸lnie uwa偶ane za wysoce bezpieczne i teoretycznie odporne na ataki si艂owe wykonywane przy u偶yciu komputera kwantowego.

Dwa najcz臋艣ciej stosowane obecnie schematy szyfrowania symetrycznego oparte s膮 na tzw. mechanizmach szyfr贸w blokowych i strumieniowych. W szyfrze blokowym dane grupowane s膮 w tzw. bloki o okre艣lonym rozmiarze, a nast臋pnie ka偶dy z tak powsta艂ych blok贸w jest szyfrowany przy u偶yciu odpowiedniego klucza i algorytmu szyfrowania (np. 128-bitowy tekst jest szyfrowany w 128-bitowym szyfr). Z kolei w przypadku szyfr贸w strumieniowych, tekst kodowany jest w ?? (1 bitowe dane wej艣ciowe s膮 szyfrowane w 1 bitowy szyfr).

On the other hand, stream ciphers do not encrypt plaintext data by blocks, but rather by 1-bit increments (1-bit plaintext is encrypted into 1-bit ciphertext at a time).


Szyfrowanie symetryczne vs. asymetryczne

Szyfrowanie symetryczne jest obecnie jednym z dw贸ch najpopularniejszych metod szyfrowania danych w nowoczesnych systemach komputerowych. Drug膮 metod膮 jest szyfrowanie asymetryczne, czasami nazywane r贸wnie偶聽kryptografi膮 klucza publicznego. G艂贸wn膮 r贸偶nic膮 pomi臋dzy tymi dwoma metodami jest fakt, i偶 w do szyfrowania symetrycznego wykorzystywany jest tylko jeden klucz, a dane zaszyfrowane asymetrycznie odkodowuje si臋 innym kluczem ni偶 zosta艂y one pierwotnie zaszyfrowane. Jeden z tych kluczy mo偶e zosta膰 publicznie udost臋pniony (klucz publiczny - ang. public key), a z kolei drugi z nich pozostaje nieudost臋pniony i prywatny (klucz prywatny - ang. Private key).

Wykorzystanie dw贸ch kluczy zamiast jednego powoduje r贸wnie偶, 偶e pomi臋dzy tymi obiema metodami wyst臋puj膮 znacz膮ce funkcjonalne r贸偶nice. Algorytmy asymetrycznego szyfrowania s膮 zdecydowanie bardziej skomplikowane i wolniejsze od swoich symetrycznych odpowiednik贸w. Co wi臋cej, z uwagi na fakt i偶 klucz publiczny i klucz prywatny s膮 ze sob膮 matematycznie powi膮zane, klucze te aby zapewnia膰 taki sam poziom bezpiecze艅stwa jak klucze asymetryczne musz膮 r贸wnie偶 by膰 odpowiednio d艂u偶sze od kr贸tszego klucza symetrycznego.


Przyk艂ady zastosowania w nowoczesnych systemach komputerowych

Algorytmy symetrycznego szyfrowania danych s膮 obecnie wykorzystywane w wielu nowoczesnych systemach komputerowych w celu zwi臋kszenia bezpiecze艅stwa danych w nich przechowywanych i zwi臋kszenia bezpiecze艅stwa ich u偶ytkownik贸w. Algorytm AES jest jednym z najpopularniejszych przyk艂ad贸w szyfru symetrycznego, kt贸ry jest stosowany zar贸wno w wielu bezpiecznych komunikatorach tesktowych jak i rozwi膮zaniach typu dysk w chmurze.

AES poza mo偶liwo艣ci膮 zaimplementowania go w oprogramowaniu mo偶na r贸wnie偶 zaimplementowa膰 bezpo艣rednio do poszczeg贸lnych komponent贸w systemu komputerowego (ang. hardware). Sprz臋towe mechanizmy szyfrowania zazwyczaj wykorzystuj膮 algorytm AES 256, kt贸ry jest specyficzn膮 odmian膮 AES w kt贸rej klucz ma d艂ugo艣膰 256 bit贸w.聽

Przy tej okazji warto zauwa偶y膰, 偶e sie膰聽blockchain Bitcoina tak na prawd臋 nie wykorzystuje algorytm贸w szyfrowania, jak by wielu mog艂o si臋 wydawa膰. Zamiast tego, sie膰 oparta jest o algorytm cyfrowych sygnatur (DSA) znany pod nazw膮 Elliptic Curve Signature Algorithm (ECDSA) kt贸ry generuje cyfrowe sygnatury bez zaanga偶owania do tego szyfrowania. Prze艣wiadczenie o szeroko obecnym szyfrowaniu w sieci blockchain Bitcoina podchodzi z faktu i偶 ECDSA opiera si臋 na eliptycznej kryptografii (ECC), kt贸r膮 mo偶na zastosowa膰 do wielu zada艅 jak np. Szyfrowania, sygnatur cyfrowych i tzw. Generator贸w pseudolosowych danych. ECDSA nie da si臋 jednak wykorzysta膰 do przeprowadzenia szyfrowania. 聽


Wady i zalety

Algorytmy symetryczne zapewniaj膮 stosunkowo wysoki poziom bezpiecze艅stwa przy jednoczesnej mo偶liwo艣ci szybkiego zaszyfrowania i odszyfrowania wiadomo艣ci. Co wi臋cej, wymagaj膮 one znacznie mniej mocy obliczeniowej od swoich asymetrycznych odpowiednik贸w. Samo bezpiecze艅stwo ka偶dego z kluczy wygenerowanych przy pomocy symetrycznego algorytmu szyfrowania mo偶e zosta膰 zwi臋kszone poprzez wygenerowanie d艂u偶szego klucza. Z ka偶dym kolejnym dodanym bajtem do d艂ugo艣ci klucza, trudno艣膰 zwi膮zana z jego z艂amaniem ro艣nie wyk艂adniczo.

Chocia偶 szyfrowanie symetryczne dostarcza szerok膮 gam臋 plus贸w, z t膮 technik膮 szyfrowania wi膮偶e si臋 jednak jeden du偶y minus: odwieczny problem bezpiecznego przekazywania (transferu) kluczy s艂u偶膮cych do odkodowania danych. W momencie kiedy klucz deszyfruj膮cy zostanie przes艂any do odbiorcy za po艣rednictwem niezabezpieczonej sieci (czyt. po艂膮czenia), to wysoce prawdopodobnym staje si臋 mo偶liwo艣膰 jego przechwycenia przez osoby trzecie. W momencie uzyskania nieautoryzowanego dost臋pu do takiego klucza, dane zaszyfrowane za jego pomoc膮 przestaj膮 by膰 bezpieczne. Wiele protoko艂贸w sieciowych wykorzystuje obecnie miks algorytm贸w symetrycznych jak i asymetrycznych aby zapewni膰 bezpieczne po艂膮czenie. Najbardziej znanym przyk艂adem takiego hybrydowego systemu jest protok贸艂 TLS - Transport Layer Security - protok贸艂聽kryptograficzny na kt贸rym oparta jest zdecydowana wi臋kszo艣膰 sieci Internet. 聽
Z tego miejsca warto jednak podkre艣li膰 fakt, i偶 wszystkie istniej膮ce rodzaje szyfr贸w komputerowych s膮 podatne na niebezpiecze艅stwa wynikaj膮ce z ich b艂臋dnej implementacji do systemu. Chocia偶 wystarczaj膮co d艂ugi klucz mo偶e skutecznie uniemo偶liwi膰 przeprowadzenie ataku typu brute-force, b艂臋dy zwi膮zane z implementacj膮聽szyfru, kt贸rych autorami s膮 programi艣ci bardzo cz臋sto otwieraj膮 szeroko drzwi do danego systemu dla cyber przest臋pc贸w.


Zako艅czenie

Szyfrowanie symetryczne bior膮c pod uwag臋 jego szybko艣膰, prostot臋 i wysoki poziom bezpiecze艅stwa jest stosowane w wielu r贸偶nych ga艂臋ziach nowoczesnego Internetu i system贸w komputerowch. Pocz膮wszy od serwer贸w przetwarzaj膮cych dane, po dane przechowywane w serwerach typu cloud. Pomimo tego, 偶e algorytmy szyfrowania symetrycznego s膮 obecnie coraz cz臋艣ciej wykorzystywane w po艂膮czeniu z ich asymetrycznymi odpowiednikami, to w dalszym ci膮gu s膮 one jednymi z podstawowych element贸w odpowiadaj膮cych za聽bezpiecze艅stwo nowoczesnych system贸w komputerowch.聽
Udost臋pnij Posty
Zarejestruj konto
Wykorzystaj swoj膮 wiedz臋 w praktyce, otwieraj膮c konto Binance ju偶 dzi艣.