Kryptografia - Cryptography

Maszyna szyfrująca Lorenza dwanaście wirników z mechanizmem
Niemiecka maszyna szyfrująca Lorenz , używana podczas II wojny światowej do szyfrowania wiadomości od personelu ogólnego wysokiego szczebla

Kryptografia lub kryptologia (od starożytnej greki : κρυπτός , zromanizowanakryptós „ukryte, tajne”; i γράφειν graphein , „pisać” lub odpowiednio -λογία- logia , „studium”), jest praktyką i badaniem technik bezpieczna komunikacja w obecności wrogiego zachowania. Mówiąc bardziej ogólnie, kryptografia polega na konstruowaniu i analizowaniu protokołów, które uniemożliwiają osobom trzecim lub opinii publicznej czytanie prywatnych wiadomości; różne aspekty bezpieczeństwa informacji , takich jak dane dotyczące poufności , integralności danych , uwierzytelniania i niezaprzeczalności są kluczowe dla współczesnej kryptografii. Współczesna kryptografia istnieje na przecięciu dyscyplin matematyki , informatyki , elektrotechniki , komunikacji i fizyki . Zastosowania kryptografii obejmują handel elektroniczny , chipowe karty płatnicze , waluty cyfrowe , hasła komputerowe i komunikację wojskową .

Kryptografia sprzed ery nowożytnej była praktycznie synonimem szyfrowania , przekształcania informacji ze stanu czytelnego w niezrozumiały nonsens . Nadawca zaszyfrowanej wiadomości udostępnia technikę dekodowania tylko zamierzonym odbiorcom, aby uniemożliwić dostęp adwersarzom. W literaturze kryptograficznej często używa się imion Alice („A”) dla nadawcy, Boba („B”) dla zamierzonego odbiorcy i Ewy („ podsłuchujący ”) dla przeciwnika. Od czasu rozwoju maszyn szyfrujących rotorowych w czasie I wojny światowej i pojawienia się komputerów w czasie II wojny światowej , metody kryptograficzne stały się coraz bardziej złożone, a ich zastosowania bardziej zróżnicowane.

Współczesna kryptografia jest mocno oparta na teorii matematycznej i praktyce informatycznej; Algorytmy kryptograficzne są zaprojektowane w oparciu o założenia dotyczące twardości obliczeniowej , co sprawia, że ​​takie algorytmy są trudne do złamania w rzeczywistej praktyce przez jakiegokolwiek przeciwnika. Chociaż teoretycznie możliwe jest włamanie się do dobrze zaprojektowanego systemu, w praktyce jest to niewykonalne. Takie schematy, jeśli są dobrze zaprojektowane, są zatem określane jako „bezpieczne obliczeniowo”; postępy teoretyczne, np. udoskonalenia algorytmów faktoryzacji liczb całkowitych i szybsze technologie obliczeniowe, wymagają ciągłej ponownej oceny tych projektów i, jeśli to konieczne, adaptacji. Istnieją teoretycznie bezpieczne schematy, których dowodem nie da się złamać nawet przy nieograniczonej mocy obliczeniowej, takie jak jednorazowy pad , ale schematy te są znacznie trudniejsze w użyciu w praktyce niż najlepsze teoretycznie możliwe do złamania, ale bezpieczne obliczeniowo schematy.

Rozwój technologii kryptograficznych wywołał szereg problemów prawnych w erze informacji. Potencjał wykorzystania kryptografii jako narzędzia szpiegowskiego i wywrotowego doprowadził wiele rządów do sklasyfikowania jej jako broni i ograniczenia lub nawet zakazania jej używania i eksportu. W niektórych jurysdykcjach, w których korzystanie z kryptografii jest legalne, przepisy zezwalają śledczym na wymuszenie ujawnienia kluczy szyfrowania dokumentów istotnych dla dochodzenia. Kryptografia odgrywa również ważną rolę w zarządzaniu prawami cyfrowymi i sporach o naruszenie praw autorskich w odniesieniu do mediów cyfrowych.

Terminologia

diagram pokazujący przesunięcie trzy litery alfabetu D staje się A i E staje się B
Uważa się, że szyfry z przesunięciem alfabetu były używane przez Juliusza Cezara ponad 2000 lat temu. To jest przykład z k = 3 . Innymi słowy, litery alfabetu są przesunięte o trzy w jednym kierunku, aby zaszyfrować i trzy w drugim kierunku, aby odszyfrować.

Pierwsze użycie terminu kryptograf (w przeciwieństwie do kryptogramu ) datuje się na XIX wiek i wywodzi się z opowiadania Edgara Allana Poe The Gold-Bug .

Do czasów współczesnych kryptografia odnosiła się prawie wyłącznie do szyfrowania , czyli procesu przekształcania zwykłych informacji (tzw. zwykłego tekstu ) w niezrozumiałą formę (zwaną szyfrogramem ). Deszyfrowanie jest odwrotnością, innymi słowy, przejściem z niezrozumiałego zaszyfrowanego tekstu z powrotem do zwykłego tekstu. Szyfrowania (lub cyfra ) jest parą algorytmów, które prowadzą do szyfrowania i deszyfrowania cofania. Dokładne działanie szyfru jest kontrolowane zarówno przez algorytm, jak i każdorazowo za pomocą „ klucza ”. Klucz to sekret (najlepiej znany tylko komunikującym się), zwykle ciąg znaków (najlepiej krótki, aby mógł zostać zapamiętany przez użytkownika), który jest potrzebny do odszyfrowania zaszyfrowanego tekstu. W formalnych terminach matematycznych „ kryptosystem ” jest uporządkowaną listą elementów skończonych możliwych tekstów jawnych, skończonych możliwych zaszyfrowanych tekstów, skończonych możliwych kluczy oraz algorytmów szyfrowania i deszyfrowania, które odpowiadają każdemu kluczowi. Klucze są ważne zarówno formalnie, jak i w praktyce, ponieważ szyfry bez kluczy zmiennych mogą zostać złamane jedynie przy znajomości użytego szyfru, a zatem są bezużyteczne (lub nawet nieproduktywne) dla większości celów.

W przeszłości szyfry były często używane bezpośrednio do szyfrowania lub deszyfrowania bez dodatkowych procedur, takich jak uwierzytelnianie lub sprawdzanie integralności. Generalnie istnieją dwa rodzaje kryptosystemów: symetryczny i asymetryczny . W systemach symetrycznych, jedynych znanych do lat 70., ten sam klucz (klucz tajny) jest używany do szyfrowania i odszyfrowywania wiadomości. Manipulacja danymi w systemach symetrycznych jest szybsza niż w systemach asymetrycznych, po części dlatego, że zazwyczaj używają krótszych kluczy. Systemy asymetryczne używają „klucza publicznego” do szyfrowania wiadomości i powiązanego „klucza prywatnego” do jej odszyfrowania. Zastosowanie systemów asymetrycznych zwiększa bezpieczeństwo komunikacji, głównie dlatego, że związek między dwoma kluczami jest bardzo trudny do wykrycia. Przykłady systemów asymetrycznych obejmują RSA ( Rivest-Shamir-Adleman ) i ECC ( kryptografia krzywej eliptycznej ). Algorytmy symetryczne jakości obejmują powszechnie stosowany AES ( Advanced Encryption Standard ), który zastąpił starszy DES ( Data Encryption Standard ). Nie bardzo wysokiej jakości algorytmów symetrycznych obejmują język urozmaicone dzieci splątania systemów, takich jak Pig łaciny lub innego przechyłki i rzeczywiście skutecznie wszystkich systemów kryptograficznych, jednak poważnie przeznaczone, z dowolnego źródła przed wynalezieniem szyfr z kluczem jednorazowym na początku 20. wieku .

W potocznym użyciu termin „ kod ” jest często używany w znaczeniu dowolnej metody szyfrowania lub ukrywania znaczenia. Jednak w kryptografii kod ma bardziej konkretne znaczenie: zastąpienie jednostki tekstu jawnego (tj. znaczącego słowa lub frazy) słowem kodowym (na przykład „wallaby” zastępuje „atak o świcie”). W przeciwieństwie do tego szyfr to schemat zmiany lub zastąpienia elementu poniżej tego poziomu (litery, sylaby lub pary liter lub ...) w celu utworzenia zaszyfrowanego tekstu.

Kryptoanaliza to termin używany do badania metod uzyskiwania znaczenia zaszyfrowanych informacji bez dostępu do klucza, który zwykle jest do tego wymagany; tj. jest to nauka o tym, jak „złamać” algorytmy szyfrowania lub ich implementacje.

Niektórzy używają terminów kryptografia i kryptologia zamiennie w języku angielskim, podczas gdy inni (w tym ogólnie praktyka wojskowa USA) używają kryptografii w odniesieniu do użycia i praktyki technik kryptograficznych i kryptologii w odniesieniu do połączonego badania kryptografii i kryptoanalizy. Angielski jest bardziej elastyczny niż kilka innych języków, w których kryptologia (wykonana przez kryptologów) jest zawsze używana w drugim znaczeniu powyżej. RFC  2828 informuje, że steganografia jest czasami uwzględniana w kryptologii.

Badanie cech języków, które mają pewne zastosowanie w kryptografii lub kryptologii (np. dane częstotliwościowe, kombinacje liter, wzorce uniwersalne itp.) nazywa się kryptolingwistyką .

Historia kryptografii i kryptoanalizy

Przed erą nowożytną kryptografia koncentrowała się na poufności wiadomości (tj. szyfrowaniu) — konwersji wiadomości ze zrozumiałej formy w niezrozumiałą i z powrotem na drugim końcu, czyniąc ją nieczytelną dla przechwytujących lub podsłuchujących bez tajnej wiedzy (czyli potrzebnego klucza). do odszyfrowania tej wiadomości). Szyfrowanie usiłował zapewnić tajność w komunikacji , takich jak te od szpiegów , dowódców wojskowych i dyplomatów . W ostatnich dziesięcioleciach dziedzina rozszerzyła się poza kwestie poufności, obejmując między innymi techniki sprawdzania integralności wiadomości, uwierzytelniania tożsamości nadawcy/odbiorcy , podpisów cyfrowych , dowodów interaktywnych i bezpiecznych obliczeń .

Klasyczna kryptografia

Skytala kij z paskiem papieru owiniętym w spiralę
Zrekonstruowany starożytny grecki scytale , wczesne urządzenie szyfrujące

Główne typy szyfrów klasycznych to szyfry transpozycyjne , które zmieniają kolejność liter w wiadomości (np. 'hello world' staje się 'ehlol owrdl' w trywialnie prostym schemacie rearanżacji) oraz szyfry podstawieniowe , które systematycznie zastępują litery lub grupy liter z innymi literami lub grupami liter (np. 'fly at raz' staje się 'gmz bu podf' poprzez zastąpienie każdej litery następującą po niej w alfabecie łacińskim ). Proste wersje obu nigdy nie zapewniały dużej poufności przed przedsiębiorczymi przeciwnikami. Wczesnym szyfrem podstawieniowym był szyfr Cezara , w którym każda litera w tekście jawnym została zastąpiona literą o ustalonej liczbie pozycji w dalszej części alfabetu. Swetoniusz donosi, że Juliusz Cezar używał go z przesunięciem o trzy, aby komunikować się ze swoimi generałami. Atbash jest przykładem wczesnego hebrajskiego szyfru. Najwcześniejsze znane zastosowanie kryptografii to wyryty na kamieniu tekst zaszyfrowany w Egipcie (ok. 1900 p.n.e.), ale mogło to być zrobione raczej dla rozrywki piśmiennych obserwatorów niż dla ukrycia informacji.

Do Grecy razy Classical mówi się, że znany z szyfrów (np szyfr Scytale transpozycja twierdził, zostały wykorzystane przez Spartan wojska). Steganografia (tj. ukrywanie nawet istnienia wiadomości, aby zachować jej poufność) również została opracowana w czasach starożytnych. Wczesnym przykładem z Herodota była wiadomość wytatuowana na ogolonej głowie niewolnika i ukryta pod odrośniętymi włosami. Bardziej nowoczesne przykłady steganografii obejmują użycie niewidzialnego atramentu , mikrokropek i cyfrowych znaków wodnych do ukrycia informacji.

W Indiach licząca 2000 lat Kamasutra z Vatsyayany mówi o dwóch różnych rodzajach szyfrów, zwanych Kautiliyam i Mulavediya. W Kautiliyam podstawienia liter w szyfrze opiera się na relacjach fonetycznych, np. samogłoski stają się spółgłoskami. W Mulavediya alfabet szyfrowy składa się z parowania liter i używania odwrotnych liter.

W Sasanidów Persji istniały dwa tajne skrypty, zgodnie z muzułmańskim autora Ibn al-Nadim : the SAH-dabīrīya (dosłownie „skrypt królem”), który został użyty do oficjalnej korespondencji, a RAZ-saharīya , który był używany do komunikowania się grypsy z innymi krajami.

David Kahn zauważa w The Codebreakers, że współczesna kryptologia powstała wśród Arabów , pierwszych ludzi, którzy systematycznie dokumentowali metody kryptoanalityczne. Al-Khalil (717-786) napisał Księgę wiadomości kryptograficznych , która zawiera pierwsze użycie permutacji i kombinacji, aby wymienić wszystkie możliwe słowa arabskie z samogłoskami i bez.

Arabski tekst książki Al-Kindi
Pierwsza strona książki Al-Kindi, która omawia szyfrowanie wiadomości

Szyfrteksty tworzone przez klasyczny szyfr (i niektóre nowoczesne szyfry) ujawniają informacje statystyczne o tekście jawnym, a informacje te często mogą być użyte do złamania szyfru. Po odkryciu analizy częstotliwości , być może przez arabskiego matematyka i politologa Al-Kindi (znanego również jako Alkindus ) w IX wieku, prawie wszystkie takie szyfry mogły zostać złamane przez poinformowanego atakującego. Takie klasyczne szyfry nadal cieszą się popularnością, choć głównie jako łamigłówki (patrz kryptogram ). Al-Kindi napisał książkę o kryptografii zatytułowaną Risalah fi Istikhraj al-Mu'amma ( Rękopis do rozszyfrowania wiadomości kryptograficznych ), w której opisał pierwsze znane użycie technik kryptoanalizy analizy częstotliwości .

metalowa maszyna wielkości książki z dużą tarczą po lewej stronie i dziewiętnastoma małymi tarczami po prawej stronie
XVI-wieczna francuska maszyna szyfrująca w kształcie księgi z ramionami Henryka II z Francji
rękopis Gabriela de Luetz d'Aramona w oprawnym tomie
Zaszyfrowany list Gabriela de Luetz d'Aramona , ambasadora Francji w Imperium Osmańskim , po 1546 roku, z częściowym rozszyfrowaniem

Częstotliwości liter językowych mogą stanowić niewielką pomoc w przypadku niektórych rozszerzonych technik szyfrowania historycznego, takich jak szyfr homofoniczny, które mają tendencję do spłaszczania rozkładu częstotliwości. W przypadku tych szyfrów częstości grupy liter języka (lub n-gramów) mogą stanowić atak.

Zasadniczo wszystkie szyfry pozostawały podatne na kryptoanalizę przy użyciu techniki analizy częstotliwości aż do opracowania szyfru polialfabetycznego, najwyraźniej przez Leona Battistę Albertiego około 1467 roku, chociaż istnieją pewne oznaki, że był on już znany Al-Kindi. Innowacją Albertiego było użycie różnych szyfrów (tj. alfabetów zastępczych) dla różnych części wiadomości (być może dla każdej kolejnej litery tekstu jawnego na granicy). Wynalazł też prawdopodobnie pierwsze automatyczne urządzenie szyfrujące , koło, które częściowo realizowało jego wynalazek. W szyfru Vigenère , A szyfr polialfabetyczny , szyfrowanie używa słowa kluczowego , który steruje list podstawienie w zależności która jest używana litera słowa kluczowego. W połowie XIX wieku Charles Babbage wykazał, że szyfr Vigenère'a był podatny na badanie Kasiskiego , ale po raz pierwszy opublikował je około dziesięć lat później Friedrich Kasiski .

Chociaż analiza częstotliwości może być potężną i ogólną techniką przeciwko wielu szyfrom, szyfrowanie nadal często jest skuteczne w praktyce, ponieważ wielu potencjalnych kryptoanalityków nie było świadomych tej techniki. Łamanie wiadomości bez użycia analizy częstotliwości zasadniczo wymagało znajomości użytego szyfru i być może związanego z nim klucza, co czyniło szpiegostwo, przekupstwo, włamanie, dezercję itp. bardziej atrakcyjnym podejściem do niedoinformowanych kryptoanalitycznie. Ostatecznie w XIX wieku uznano wyraźnie, że tajność algorytmu szyfru nie jest rozsądnym ani praktycznym zabezpieczeniem bezpieczeństwa wiadomości; w rzeczywistości zdano sobie sprawę, że każdy odpowiedni schemat kryptograficzny (w tym szyfry) powinien pozostać bezpieczny, nawet jeśli przeciwnik w pełni rozumie sam algorytm szyfrowania. Samo bezpieczeństwo użytego klucza powinno wystarczyć, aby dobry szyfr zachował poufność w przypadku ataku. Ta fundamentalna zasada została po raz pierwszy wyraźnie sformułowana w 1883 roku przez Auguste Kerckhoffsa i jest ogólnie nazywana Zasadą Kerckhoffsa ; alternatywnie i bardziej dosadnie, Claude Shannon , wynalazca teorii informacji i podstaw teoretycznej kryptografii, przedstawił ją jako Maxim Shannona — „wróg zna system”.

Do pomocy w szyfrowaniu używano różnych fizycznych urządzeń i pomocy. Jednym z najwcześniejszych może być scytale starożytnej Grecji , rózga podobno używana przez Spartan jako pomoc w szyfrze transpozycyjnym. W średniowieczu wynaleziono inne pomoce, takie jak kratka szyfrowa , która była również używana do pewnego rodzaju steganografii. Wraz z wynalezieniem szyfr polialfabetyczny przyszedł bardziej zaawansowanych aparatów takich jak Alberti własnym dysku szyfr , Johannes Trithemiustabula recta programu i Thomas Jefferson ” s koła Cypher (nie publicznie znane, i na nowo niezależnie od Bazeries około 1900 roku). Wiele mechanicznych urządzeń szyfrujących/deszyfrujących zostało wynalezionych na początku XX wieku, a kilka zostało opatentowanych, w tym maszyny wirnikowe – w tym słynna maszyna Enigma używana przez niemiecki rząd i wojsko od końca lat dwudziestych i podczas II wojny światowej . Szyfry zaimplementowane przez lepsze jakościowo przykłady tych konstrukcji maszyn spowodowały znaczny wzrost trudności kryptoanalitycznych po I wojnie światowej.

Era komputera

Przed początkiem XX wieku kryptografia zajmowała się głównie wzorcami językowymi i leksykograficznymi . Od tego czasu nacisk się przesunął, a kryptografia szeroko wykorzystuje matematykę, w tym aspekty teorii informacji , złożoności obliczeniowej , statystyki , kombinatoryki , algebry abstrakcyjnej , teorii liczb i ogólnie matematyki skończonej. Kryptografia to także gałąź inżynierii , ale niezwykła, ponieważ zajmuje się aktywną, inteligentną i złowrogą opozycją; inne rodzaje inżynierii (np. inżynieria lądowa lub chemiczna) muszą zajmować się wyłącznie neutralnymi siłami natury. Prowadzone są również aktywne badania nad związkiem problemów kryptograficznych z fizyką kwantową .

Tak jak rozwój komputerów cyfrowych i elektroniki pomógł w kryptoanalizie, umożliwił znacznie bardziej złożone szyfry. Co więcej, komputery pozwalały na szyfrowanie wszelkiego rodzaju danych, które można przedstawić w dowolnym formacie binarnym, w przeciwieństwie do klasycznych szyfrów, które szyfrują tylko teksty w języku pisanym; to było nowe i znaczące. W ten sposób wykorzystanie komputerów wyparło kryptografię językową, zarówno w przypadku projektowania szyfrów, jak i kryptoanalizy. Wiele szyfrów komputerowych można scharakteryzować przez działanie na binarnych sekwencjach bitów (czasem w grupach lub blokach), w przeciwieństwie do klasycznych i mechanicznych schematów, które zazwyczaj bezpośrednio manipulują tradycyjnymi znakami (tj. literami i cyframi). Jednak komputery wspomagały również kryptoanalizę, która w pewnym stopniu skompensowała zwiększoną złożoność szyfrowania. Niemniej jednak dobre współczesne szyfry wyprzedziły kryptoanalizę; zazwyczaj jest tak, że użycie szyfru wysokiej jakości jest bardzo wydajne (tj. szybkie i wymaga niewielu zasobów, takich jak pamięć lub moc procesora), podczas gdy złamanie go wymaga wysiłku o wiele rzędów wielkości większego i znacznie większego niż ten wymagany do jakikolwiek klasyczny szyfr, czyniąc kryptoanalizę tak nieefektywną i niepraktyczną, że praktycznie niemożliwą.

Pojawienie się nowoczesnej kryptografii

Kryptoanaliza nowych urządzeń mechanicznych okazała się zarówno trudna, jak i pracochłonna. W Wielkiej Brytanii wysiłki kryptoanalityczne w Bletchley Park podczas II wojny światowej stały się bodźcem do opracowania bardziej wydajnych środków do wykonywania powtarzalnych zadań. Kulminacją tego było opracowanie Colossus , pierwszego na świecie w pełni elektronicznego, cyfrowego, programowalnego komputera, który pomagał w deszyfrowaniu szyfrów generowanych przez maszynę Lorenz SZ40/42 armii niemieckiej .

Rozległe, otwarte badania akademickie nad kryptografią są stosunkowo nowe; zaczęło się dopiero w połowie lat siedemdziesiątych. Ostatnio personel IBM zaprojektował algorytm, który stał się federalnym (tj. amerykańskim) standardem szyfrowania danych ; Whitfield Diffie i Martin Hellman opublikowali swój algorytm zgodności klucza ; i RSA algorytm został opublikowany w Martin Gardner „s Scientific American kolumnie. Od tego czasu kryptografia stała się szeroko stosowanym narzędziem w komunikacji, sieciach komputerowych i ogólnie w bezpieczeństwie komputerowym .

Niektóre nowoczesne techniki kryptograficzne mogą utrzymać swoje klucze w tajemnicy tylko wtedy, gdy pewne problemy matematyczne są nie do rozwiązania , takie jak faktoryzacja liczb całkowitych lub problemy z logarytmem dyskretnym , więc istnieją głębokie powiązania z matematyką abstrakcyjną . Istnieje bardzo niewiele kryptosystemów, które są bezwarunkowo bezpieczne. Szyfr z kluczem jednorazowym jest jeden, i był okazały się tak przez Claude Shannon. Istnieje kilka ważnych algorytmów, które okazały się bezpieczne przy pewnych założeniach. Na przykład niewykonalność rozkładania na czynniki bardzo dużych liczb całkowitych jest podstawą do przekonania, że RSA jest bezpieczny, podobnie jak w przypadku niektórych innych systemów, ale mimo to dowód nierozerwalności jest niedostępny, ponieważ podstawowy problem matematyczny pozostaje otwarty. W praktyce są one szeroko stosowane i przez większość kompetentnych obserwatorów są uważane za nie do złamania w praktyce. Istnieją systemy podobne do RSA, takie jak ten autorstwa Michaela O. Rabina, które są co do zasady bezpieczne pod warunkiem, że faktoring n = pq jest niemożliwy; w praktyce jest to zupełnie bezużyteczne. Dyskretny logarytm problemem jest podstawą wierząc inne kryptosystemy są bezpieczne, i znowu, nie są związane, mniej praktycznych systemów, które są provably bezpieczne w stosunku do problemu dziennika dyskretny rozwiązalność lub insolvability.

Oprócz znajomości historii kryptograficznej, projektanci algorytmów kryptograficznych i systemów muszą również rozsądnie rozważyć prawdopodobny przyszły rozwój podczas pracy nad swoimi projektami. Na przykład ciągła poprawa mocy obliczeniowej komputera zwiększyła zakres ataków typu brute-force , więc przy określaniu długości kluczy wymagane długości kluczy rosną w podobny sposób. Potencjalne skutki obliczeń kwantowych są już rozważane przez niektórych projektantów systemów kryptograficznych opracowujących kryptografię post-kwantową ; zapowiedziana bliskość małych implementacji tych maszyn może sprawić, że potrzeba prewencyjnej ostrożności jest bardziej niż tylko spekulacyjna.

Nowoczesna kryptografia

Kryptografia z kluczem symetrycznym

schemat przedstawiający szyfrowanie za pomocą klucza i proces odszyfrowywania
Kryptografia z kluczem symetrycznym, w której do szyfrowania i deszyfrowania używany jest jeden klucz

Kryptografia klucza symetrycznego odnosi się do metod szyfrowania, w których zarówno nadawca, jak i odbiorca współdzielą ten sam klucz (lub, rzadziej, w którym ich klucze są różne, ale powiązane w łatwy do obliczenia sposób). Był to jedyny rodzaj szyfrowania znany publicznie do czerwca 1976 roku.

schemat logiczny przedstawiający proces szyfrowania międzynarodowego algorytmu szyfrowania danych
Jedna runda (z 8,5) szyfru IDEA , używanego w większości wersji oprogramowania zgodnego z PGP i OpenPGP do efektywnego czasowo szyfrowania wiadomości

Szyfry z kluczem symetrycznym są zaimplementowane jako szyfry blokowe lub strumieniowe . Szyfr blokowy szyfruje dane wejściowe w blokach tekstu jawnego, w przeciwieństwie do pojedynczych znaków, co jest formą wejściową używaną przez szyfr strumieniowy.

Encryption Standard danych (DES) i Advanced Encryption Standard (AES) to konstrukcje szyfrów blokowych, które zostały wyznaczone standardy kryptograficzne przez rząd USA (chociaż oznaczenie DES został ostatecznie wycofany po AES została przyjęta). Pomimo wycofania go jako oficjalnego standardu, DES (zwłaszcza jego wciąż zatwierdzony i znacznie bezpieczniejszy wariant potrójnego DES ) pozostaje dość popularny; jest używany w wielu aplikacjach, od szyfrowania bankomatów po prywatność poczty e-mail i bezpieczny zdalny dostęp . Opracowano i wydano wiele innych szyfrów blokowych, różniących się znacznie jakością. Wiele, nawet niektóre zaprojektowane przez zdolnych praktyków, zostało całkowicie zepsutych, jak na przykład FEAL .

Szyfry strumieniowe, w przeciwieństwie do typu „blokowego”, tworzą dowolnie długi strumień materiału klucza, który jest łączony z tekstem jawnym bit po bicie lub znak po znaku, podobnie jak jednorazowa podkładka . W szyfrze strumieniowym strumień wyjściowy jest tworzony na podstawie ukrytego stanu wewnętrznego, który zmienia się w trakcie działania szyfru. Ten stan wewnętrzny jest początkowo konfigurowany przy użyciu materiału klucza tajnego. RC4 to szeroko stosowany szyfr strumieniowy. Szyfry blokowe mogą być używane jako szyfry strumieniowe, generując bloki strumienia klucza (zamiast generatora liczb pseudolosowych ) i stosując operację XOR do każdego bitu tekstu jawnego z każdym bitem strumienia klucza.


Kody uwierzytelniania wiadomości (MAC) są podobne do kryptograficznych funkcji skrótu, z wyjątkiem tego, że do uwierzytelnienia wartości skrótu po otrzymaniu można użyć tajnego klucza; ta dodatkowa komplikacja blokuje schemat ataku na algorytmy zwykłego skrótu , dlatego uznano, że warto podjąć wysiłek. Kryptograficzne funkcje skrótu to trzeci typ algorytmu kryptograficznego. Jako dane wejściowe przyjmują wiadomość o dowolnej długości i wyprowadzają krótki hash o stałej długości , który można wykorzystać (na przykład) w podpisie cyfrowym. W przypadku dobrych funkcji skrótu osoba atakująca nie może znaleźć dwóch wiadomości, które generują ten sam skrót. MD4 to od dawna używana funkcja skrótu, która jest teraz zepsuta; MD5 , wzmocniona odmiana MD4, jest również szeroko stosowana, ale w praktyce łamana. Amerykańska Agencja Bezpieczeństwa Narodowego opracowała serię funkcji mieszających podobnych do algorytmu MD5 Secure Hash Algorithm: SHA-0 był błędnym algorytmem, który agencja wycofała; SHA-1 jest szeroko stosowany i bezpieczniejszy niż MD5, ale kryptoanalitycy zidentyfikowali ataki na niego; SHA-2 rodzina poprawia na SHA-1, ale jest podatny na starć jak w roku 2011; a amerykański urząd normalizacyjny uznał za „rozważne” z punktu widzenia bezpieczeństwa opracowanie nowego standardu, który „znacząco poprawi odporność całego zestawu narzędzi algorytmów mieszających NIST ”. W ten sposób konkurs na projekt funkcji skrótu miał na celu wybór nowego standardu krajowego USA, który miałby się nazywać SHA-3 , do 2012 roku. Konkurs zakończył się 2 października 2012 roku, kiedy NIST ogłosił, że Keccak będzie nowym hashem SHA-3 algorytm. W przeciwieństwie do szyfrów blokowych i strumieniowych, które są odwracalne, kryptograficzne funkcje skrótu generują zaszyfrowane dane wyjściowe, których nie można użyć do pobrania oryginalnych danych wejściowych. Funkcje skrótu kryptograficznego służą do weryfikacji autentyczności danych pobranych z niezaufanego źródła lub do dodania warstwy zabezpieczeń.


Kody uwierzytelniania wiadomości (MAC) są podobne do kryptograficznych funkcji skrótu, z wyjątkiem tego, że do uwierzytelnienia wartości skrótu po otrzymaniu można użyć tajnego klucza; ta dodatkowa komplikacja blokuje schemat ataku na algorytmy zwykłego skrótu , dlatego uznano, że warto podjąć wysiłek.

Kryptografia klucza publicznego

schemat kryptografii klucza publicznego przedstawiający klucz publiczny i klucz prywatny
Kryptografia klucza publicznego, w której do szyfrowania i deszyfrowania używane są różne klucze.
ikona kłódki w linii przeglądarki internetowej obok adresu URL
Ikona kłódki z Firefox przeglądarki internetowej , co oznacza, że TLS , system kryptografii z kluczem publicznym, jest w użyciu.

Kryptosystemy z kluczem symetrycznym używają tego samego klucza do szyfrowania i deszyfrowania wiadomości, chociaż wiadomość lub grupa wiadomości może mieć inny klucz niż inne. Istotną wadą szyfrów symetrycznych jest zarządzanie kluczami niezbędne do bezpiecznego ich używania. Idealnie, każda odrębna para komunikujących się stron musi dzielić inny klucz i być może również dla każdego wymienianego szyfrogramu. Liczba wymaganych kluczy rośnie wraz z kwadratem liczby członków sieci, co bardzo szybko wymaga skomplikowanych schematów zarządzania kluczami, aby wszystkie były spójne i tajne.

headshoty Whitfielda Diffie i Martina Hellmana
Whitfield Diffie i Martin Hellman , autorzy pierwszego opublikowanego artykułu na temat kryptografii z kluczem publicznym.

W przełomowym artykule z 1976 r. Whitfield Diffie i Martin Hellman zaproponowali pojęcie kryptografii z kluczem publicznym (również ogólniej nazywanej kluczem asymetrycznym ), w którym używane są dwa różne, ale matematycznie powiązane klucze — klucz publiczny i klucz prywatny . System klucza publicznego jest tak skonstruowany, że obliczenie jednego klucza („klucza prywatnego”) jest niewykonalne obliczeniowo względem drugiego („klucza publicznego”), mimo że są one z konieczności powiązane. Zamiast tego oba klucze są generowane potajemnie, jako powiązana para. Historyk David Kahn opisał kryptografię klucza publicznego jako „najbardziej rewolucyjną nową koncepcję w tej dziedzinie od czasu pojawienia się zastępowania polialfabetycznego w renesansie”.

W kryptosystemach z kluczem publicznym klucz publiczny może być swobodnie rozpowszechniany, podczas gdy jego sparowany klucz prywatny musi pozostać tajny. W systemie szyfrowania z kluczem publicznym klucz publiczny jest używany do szyfrowania, podczas gdy klucz prywatny lub tajny jest używany do deszyfrowania. Chociaż Diffie i Hellman nie mogli znaleźć takiego systemu, wykazali, że kryptografia klucza publicznego jest rzeczywiście możliwa, przedstawiając protokół wymiany kluczy Diffie-Hellman , rozwiązanie, które jest obecnie szeroko stosowane w bezpiecznej komunikacji, aby umożliwić dwóm stronom potajemne uzgodnienie współdzielony klucz szyfrowania . Standard X.509 definiuje najczęściej używany format certyfikatów klucza publicznego .

Publikacja Diffiego i Hellmana wywołała szeroko zakrojone wysiłki akademickie w celu znalezienia praktycznego systemu szyfrowania z kluczem publicznym. Wyścig ten został ostatecznie wygrany w 1978 roku przez Ronalda Rivesta , Adi Shamira i Len Adlemana , którego rozwiązanie od tego czasu stało się znane jako algorytm RSA .

Algorytmy Diffie-Hellmana i RSA, oprócz tego, że są pierwszymi publicznie znanymi przykładami wysokiej jakości algorytmów z kluczem publicznym, należą do najczęściej stosowanych. Inne algorytmy z kluczem asymetrycznym obejmują kryptosystem Cramer-Shoup , szyfrowanie ElGamal i różne techniki krzywych eliptycznych .

Dokument opublikowany w 1997 roku przez Government Communications Headquarters ( GCHQ ), brytyjską organizację wywiadowczą, ujawnił, że kryptografowie w GCHQ przewidzieli kilka wydarzeń akademickich. Podobno około 1970 roku James H. Ellis wymyślił zasady kryptografii klucza asymetrycznego. W 1973 roku Clifford Cocks wynalazł rozwiązanie, które było bardzo podobne do RSA. W 1974 roku Malcolm J. Williamson twierdzi, że opracował wymianę kluczy Diffie-Hellman.

W tym przykładzie wiadomość jest tylko podpisana, a nie zaszyfrowana. 1) Alicja podpisuje wiadomość swoim kluczem prywatnym. 2) Bob może sprawdzić, czy Alicja wysłała wiadomość i czy wiadomość nie została zmodyfikowana.

Kryptografia klucza publicznego jest również wykorzystywana do implementacji schematów podpisów cyfrowych . Podpis cyfrowy przypomina zwykły podpis ; oba mają tę cechę, że są łatwe do wytworzenia dla użytkownika, ale trudne do podrobienia dla kogokolwiek innego . Podpisy cyfrowe można również na stałe powiązać z treścią podpisywanej wiadomości; nie można ich wtedy „przenieść” z jednego dokumentu do drugiego, ponieważ każda próba będzie wykrywalna. W schematach podpisu cyfrowego istnieją dwa algorytmy: jeden do podpisywania , w którym tajny klucz jest używany do przetwarzania wiadomości (lub skrót wiadomości lub oba) oraz jeden do weryfikacji , w którym używany jest pasujący klucz publiczny z komunikatem, aby sprawdzić ważność podpisu. RSA i DSA to dwa najpopularniejsze schematy podpisów cyfrowych. Podpisy cyfrowe mają kluczowe znaczenie dla działania infrastruktury klucza publicznego i wielu schematów bezpieczeństwa sieci (np. SSL/TLS , wiele sieci VPN itp.).

Algorytmy z kluczem publicznym są najczęściej oparte na złożoności obliczeniowej „trudnych” problemów, często z teorii liczb . Na przykład twardość RSA jest związana z problemem faktoryzacji liczb całkowitych , podczas gdy Diffie-Hellman i DSA są związane z problemem logarytmu dyskretnego . Bezpieczeństwo kryptografii krzywych eliptycznych opiera się na problemach teorii liczb dotyczących krzywych eliptycznych . Ze względu na trudność leżących u podstaw problemów większość algorytmów z kluczem publicznym obejmuje operacje takie jak mnożenie modułowe i potęgowanie, które są znacznie bardziej kosztowne obliczeniowo niż techniki stosowane w większości szyfrów blokowych, zwłaszcza przy typowych rozmiarach kluczy. W rezultacie kryptosystemy z kluczem publicznym są zwykle hybrydowymi systemami kryptograficznymi , w których dla samej wiadomości używany jest szybki, wysokiej jakości algorytm szyfrowania kluczem symetrycznym, podczas gdy odpowiedni klucz symetryczny jest wysyłany wraz z wiadomością, ale zaszyfrowany przy użyciu klucza publicznego algorytm. Podobnie często stosowane są schematy podpisów hybrydowych, w których obliczana jest kryptograficzna funkcja skrótu, a tylko wynikowy skrót jest podpisany cyfrowo.

Kryptograficzne funkcje skrótu

Kryptograficzne funkcje skrótu to algorytmy kryptograficzne, które są sposobami generowania i wykorzystywania określonych kluczy do szyfrowania danych w celu szyfrowania symetrycznego lub asymetrycznego, a takie funkcje mogą być postrzegane jako same klucze. Jako dane wejściowe przyjmują wiadomość o dowolnej długości i wyprowadzają krótki hash o stałej długości , który można wykorzystać (na przykład) w podpisie cyfrowym. W przypadku dobrych funkcji skrótu osoba atakująca nie może znaleźć dwóch wiadomości, które generują ten sam skrót. MD4 to od dawna używana funkcja skrótu, która jest teraz zepsuta; MD5 , wzmocniona odmiana MD4, jest również szeroko stosowana, ale w praktyce łamana. Amerykańska Agencja Bezpieczeństwa Narodowego opracowała serię funkcji mieszających podobnych do algorytmu MD5 Secure Hash Algorithm: SHA-0 był błędnym algorytmem, który agencja wycofała; SHA-1 jest szeroko stosowany i bezpieczniejszy niż MD5, ale kryptoanalitycy zidentyfikowali ataki na niego; SHA-2 rodzina poprawia na SHA-1, ale jest podatny na starć jak w roku 2011; a amerykański urząd normalizacyjny uznał za „rozważne” z punktu widzenia bezpieczeństwa opracowanie nowego standardu, który „znacząco poprawi odporność całego zestawu narzędzi algorytmów mieszających NIST ”. W ten sposób konkurs na projekt funkcji skrótu miał na celu wybór nowego standardu krajowego USA, który miałby się nazywać SHA-3 , do 2012 roku. Konkurs zakończył się 2 października 2012 roku, kiedy NIST ogłosił, że Keccak będzie nowym hashem SHA-3 algorytm. W przeciwieństwie do szyfrów blokowych i strumieniowych, które są odwracalne, kryptograficzne funkcje skrótu generują zaszyfrowane dane wyjściowe, których nie można użyć do pobrania oryginalnych danych wejściowych. Funkcje skrótu kryptograficznego służą do weryfikacji autentyczności danych pobranych z niezaufanego źródła lub do dodania warstwy zabezpieczeń.

Kryptoanaliza

Klawiatura maszyny do pisania Enigma nad wieloma wirnikami w drewnianym pudełku
Warianty maszyny Enigma , używane przez niemieckie władze wojskowe i cywilne od końca lat 20. XX wieku do II wojny światowej , zaimplementowały złożony elektromechaniczny szyfr polialfabetyczny . Złamanie i odczytanie szyfru Enigmy w polskim Biurze Szyfrów przez 7 lat przed wojną, a następnie odszyfrowanie w Bletchley Park było ważne dla zwycięstwa aliantów.

Celem kryptoanalizy jest znalezienie słabości lub niepewności w schemacie kryptograficznym, co pozwoli na jego obalenie lub uniknięcie.

Powszechnym błędem jest przekonanie, że każda metoda szyfrowania może zostać złamana. W związku z jego pracą w Bell Labs w czasie II wojny światowej , Claude Shannon udowodnił, że jednorazowy szyfr jest nie do złamania, pod warunkiem, że kluczowy materiał jest naprawdę losowy , nigdy nie użyty ponownie, utrzymywany w tajemnicy przed wszystkimi możliwymi napastnikami i ma taką samą lub większą długość niż wiadomość . Większość szyfrów , poza jednorazową klawiaturą, można złamać przy wystarczającym wysiłku obliczeniowym przez atak brute force , ale ilość potrzebnego wysiłku może być wykładniczo zależna od rozmiaru klucza, w porównaniu z wysiłkiem potrzebnym do wykorzystania szyfru . W takich przypadkach skuteczne zabezpieczenie można osiągnąć, jeśli zostanie udowodnione, że wymagany wysiłek (tj. „czynnik pracy” w terminologii Shannona) przekracza możliwości jakiegokolwiek przeciwnika. Oznacza to, że należy wykazać, że nie można znaleźć skutecznej metody (w przeciwieństwie do czasochłonnej metody brute force) do złamania szyfru. Ponieważ do tej pory nie znaleziono takiego dowodu, jednorazowa klawiatura pozostaje jedynym teoretycznie niemożliwym do złamania szyfrem. Chociaż dobrze zaimplementowane szyfrowanie jednorazowe nie może zostać złamane, analiza ruchu jest nadal możliwa.

Istnieje wiele różnych ataków kryptoanalitycznych, które można sklasyfikować na kilka sposobów. Wspólne rozróżnienie dotyczy tego, co wie Ewa (atakujący) i jakie możliwości są dostępne. W ataku z samym szyfrogramem Ewa ma dostęp tylko do zaszyfrowanego tekstu (dobre nowoczesne kryptosystemy są zwykle skutecznie odporne na ataki z samym szyfrogramem). W ataku ze znanym tekstem jawnym Ewa ma dostęp do zaszyfrowanego tekstu i odpowiadającego mu tekstu jawnego (lub do wielu takich par). W ataku z wybranym tekstem jawnym Ewa może wybrać tekst jawny i nauczyć się odpowiadającego mu zaszyfrowanego tekstu (być może wielokrotnie); przykładem jest ogrodnictwo , używane przez Brytyjczyków podczas II wojny światowej. W ataku z wybranym szyfrogramem Ewa może być w stanie wybrać szyfrogramy i nauczyć się odpowiadających im tekstów jawnych. Wreszcie w ataku typu man-in-the-middle Ewa wchodzi między Alicję (nadawcę) i Boba (odbiorcę), uzyskuje dostęp do ruchu i modyfikuje go, a następnie przekazuje go odbiorcy. Również ważne, często przytłaczające, są błędy (ogólnie w projektowaniu lub użyciu jednego z zaangażowanych protokołów ).

Numery pomnika Kaiserschloss Kryptologen na steli
Poznański pomnik (w środku ) ku czci polskich kryptoanalityków, których łamanie od 1932 r. niemieckich szyfrów maszynowych Enigmy zmieniło przebieg II wojny światowej

Kryptanaliza szyfrów z kluczem symetrycznym zazwyczaj polega na szukaniu ataków na szyfry blokowe lub szyfry strumieniowe, które są bardziej wydajne niż jakikolwiek atak, który mógłby być skierowany przeciwko szyfrowi doskonałemu. Na przykład prosty atak brute force na DES wymaga jednego znanego tekstu jawnego i 2 55 odszyfrowań, próbując około połowy możliwych kluczy, aby osiągnąć punkt, w którym szanse są większe niż nawet to, że poszukiwany klucz zostanie znaleziony. Ale to może nie wystarczyć; liniowy kryptoanaliza atak na DES wymaga 2 43 znanych plaintexts (z odpowiadającymi im zaszyfrowanych) i około 2 43 operacji DES. Jest to znaczna poprawa w stosunku do ataków brute force.

Algorytmy z kluczem publicznym opierają się na trudności obliczeniowej różnych problemów. Najbardziej znanym z nich jest trudność całkowitej faktoryzacji z Liczba Półpierwsza i trudność obliczenia dyskretnych logarytmów , z których oba nie są jeszcze okazał się rozwiązywalne w czasie wielomianowym używając tylko klasyczny Turinga-kompletny komputer. Duża część kryptoanalizy klucza publicznego dotyczy projektowania algorytmów w P, które mogą rozwiązać te problemy, lub wykorzystania innych technologii, takich jak komputery kwantowe . Na przykład najbardziej znane algorytmy rozwiązywania opartej na krzywych eliptycznych wersji logarytmu dyskretnego są znacznie bardziej czasochłonne niż najbardziej znane algorytmy faktoryzacji, przynajmniej w przypadku problemów o mniej więcej równoważnej wielkości. W związku z tym, przy innych parametrach, aby osiągnąć równoważną siłę odporności na atak, techniki szyfrowania oparte na faktoringu muszą używać większych kluczy niż techniki oparte na krzywej eliptycznej. Z tego powodu kryptosystemy z kluczem publicznym oparte na krzywych eliptycznych stały się popularne od czasu ich wynalezienia w połowie lat 90-tych.

Podczas gdy czysta kryptoanaliza wykorzystuje słabości samych algorytmów, inne ataki na kryptosystemy opierają się na faktycznym wykorzystaniu algorytmów w rzeczywistych urządzeniach i są nazywane atakami bocznymi . Jeśli kryptoanalityk ma dostęp np. do ilości czasu, jaki zajęło urządzeniu zaszyfrowanie pewnej liczby tekstów jawnych lub zgłoszenie błędu w haśle lub znaku PIN, może być w stanie użyć ataku czasowego, aby złamać szyfr, który w przeciwnym razie jest odporny na analizę. Atakujący może również zbadać wzorzec i długość wiadomości, aby uzyskać cenne informacje; jest to znane jako analiza ruchu i może być bardzo przydatne dla przeciwnika ostrzegającego. Słabe administrowanie kryptosystemem, takie jak zezwalanie na zbyt krótkie klucze, sprawi, że każdy system będzie podatny na ataki, niezależnie od innych zalet. Socjotechnika i inne ataki na ludzi (np. przekupstwo , wymuszenia , szantaż , szpiegostwo , tortury ...) są zwykle stosowane ze względu na to, że są bardziej opłacalne i wykonalne w rozsądnym czasie w porównaniu z czystą kryptoanalizą przez wysoka marża.

Prymitywy kryptograficzne

Wiele prac teoretycznych w kryptografii dotyczy prymitywów kryptograficznych — algorytmów o podstawowych właściwościach kryptograficznych — i ich związku z innymi problemami kryptograficznymi. Z tych podstawowych prymitywów budowane są następnie bardziej skomplikowane narzędzia kryptograficzne. Te prymitywy zapewniają podstawowe właściwości, które są wykorzystywane do tworzenia bardziej złożonych narzędzi zwanych kryptosystemami lub protokołami kryptograficznymi , które gwarantują jedną lub więcej właściwości zabezpieczeń wysokiego poziomu. Zauważ jednak, że rozróżnienie między prymitywami kryptograficznymi a kryptosystemami jest dość arbitralne; na przykład algorytm RSA jest czasami uważany za kryptosystem, a czasami za prymitywny. Typowymi przykładami prymitywów kryptograficznych obejmują funkcje pseudolosowych , jednokierunkowe funkcje itd

Kryptosystemy

Jeden lub więcej prymitywów kryptograficznych jest często używanych do opracowania bardziej złożonego algorytmu, zwanego systemem kryptograficznym lub systemem kryptograficznym . Kryptosystemy (np. szyfrowanie El-Gamal ) są zaprojektowane tak, aby zapewnić określoną funkcjonalność (np. szyfrowanie kluczem publicznym) przy jednoczesnym zagwarantowaniu pewnych właściwości bezpieczeństwa (np. bezpieczeństwo ataku na wybrany tekst (CPA) w modelu losowej wyroczni ). Kryptosystemy wykorzystują właściwości podstawowych prymitywów kryptograficznych do obsługi właściwości bezpieczeństwa systemu. Ponieważ rozróżnienie między prymitywami a kryptosystemami jest nieco arbitralne, wyrafinowany kryptosystem można wyprowadzić z kombinacji kilku bardziej prymitywnych kryptosystemów. W wielu przypadkach struktura kryptosystemu obejmuje komunikację tam iz powrotem między dwiema lub większą liczbą stron w przestrzeni (np. między nadawcą bezpiecznej wiadomości a jej odbiorcą) lub w czasie (np. kryptograficznie chronione dane kopii zapasowej ). Takie systemy kryptograficzne są czasami nazywane protokołami kryptograficznymi .

Niektóre powszechnie znane kryptosystemy obejmują szyfrowanie RSA , Schnorr podpis , szyfrowanie El-Gamal , PGP , itp Bardziej złożone kryptosystemy obejmować elektronicznych środków pieniężnych systemy signcryption systemów itd Niektóre bardziej „teoretyczne” kryptosystemy obejmują interaktywne systemy dowód , (jak dowodów zerowej wiedzy ), systemy udostępniania tajnych informacji itp.

Lekka kryptografia

Kryptografia lekka (LWC) dotyczy algorytmów kryptograficznych opracowanych dla ściśle ograniczonego środowiska. Rozwój Internetu Rzeczy (IoT) przyspieszył badania nad rozwojem lekkich algorytmów, które są lepiej dostosowane do środowiska. Środowisko IoT wymaga ścisłych ograniczeń dotyczących zużycia energii, mocy obliczeniowej i bezpieczeństwa. Algorytmy takie jak PRESENT , AES i SPECK to przykłady wielu algorytmów LWC , które zostały opracowane w celu osiągnięcia standardu określonego przez Narodowy Instytut Standardów i Technologii .

Zagadnienia prawne

Zakazy

Kryptografia od dawna jest przedmiotem zainteresowania służb wywiadowczych i organów ścigania . Tajna komunikacja może mieć charakter kryminalny lub nawet zdradzić . Ze względu na ułatwienie prywatności i ograniczenie prywatności związane z jej zakazem, kryptografia jest również przedmiotem zainteresowania zwolenników praw obywatelskich. W związku z tym istnieje historia kontrowersyjnych kwestii prawnych związanych z kryptografią, zwłaszcza od czasu pojawienia się niedrogich komputerów, które umożliwiły powszechny dostęp do wysokiej jakości kryptografii.

W niektórych krajach nawet domowe użycie kryptografii jest lub było ograniczone. Do 1999 r. Francja znacznie ograniczała korzystanie z kryptografii w kraju, chociaż od tego czasu złagodziła wiele z tych zasad. W Chinach i Iranie nadal wymagana jest licencja na korzystanie z kryptografii. Wiele krajów ma ścisłe ograniczenia dotyczące korzystania z kryptografii. Do bardziej restrykcyjnych należą przepisy obowiązujące na Białorusi , Kazachstanie , Mongolii , Pakistanie , Singapurze , Tunezji i Wietnamie .

W Stanach Zjednoczonych kryptografia jest legalna do użytku domowego, ale istnieje wiele konfliktów dotyczących kwestii prawnych związanych z kryptografią. Szczególnie ważną kwestią był eksport oprogramowania i sprzętu kryptograficznego i kryptograficznego. Prawdopodobnie ze względu na znaczenie kryptoanalizy w czasie II wojny światowej i oczekiwanie, że kryptografia nadal będzie ważna dla bezpieczeństwa narodowego, wiele zachodnich rządów w pewnym momencie ściśle uregulowało eksport kryptografii. Po II wojnie światowej sprzedaż lub dystrybucja technologii szyfrowania za granicą była w USA nielegalna; w rzeczywistości szyfrowanie zostało oznaczone jako pomocniczy sprzęt wojskowy i umieszczone na liście uzbrojenia Stanów Zjednoczonych . Do czasu rozwoju komputerów osobistych , algorytmów z kluczem asymetrycznym (tj. technik klucza publicznego) i Internetu nie było to szczególnie problematyczne. Jednak wraz z rozwojem Internetu i upowszechnieniem komputerów, wysokiej jakości techniki szyfrowania stały się dobrze znane na całym świecie.

Kontrola eksportu

W latach 90. istniało kilka wyzwań związanych z amerykańskimi regulacjami eksportowymi kryptografii. Po kodu źródłowego dla Philip Zimmermann „s Pretty Good Privacy (PGP) programu szyfrującego znalazł się na Internecie, w czerwcu 1991 roku, reklamacja przez RSA Security (wówczas nazywane RSA Data Security, Inc.) spowodowało długiego dochodzenia karnego Zimmermann przez Służbę Celną USA i FBI , chociaż nigdy nie wniesiono żadnych zarzutów. Daniel J. Bernstein , wówczas absolwent Uniwersytetu Kalifornijskiego w Berkeley , wniósł pozew przeciwko rządowi Stanów Zjednoczonych, kwestionując niektóre aspekty ograniczeń opartych na zasadach wolności słowa . Sprawa z 1995 r. Bernstein przeciwko Stanom Zjednoczonym ostatecznie zaowocowała decyzją z 1999 r., że wydrukowany kod źródłowy algorytmów i systemów kryptograficznych był chroniony jako wolność słowa przez Konstytucję Stanów Zjednoczonych.

W 1996 roku trzydzieści dziewięć krajów podpisało porozumienie z Wassenaar , traktat o kontroli zbrojeń, który dotyczy eksportu broni i technologii „podwójnego zastosowania”, takich jak kryptografia. Traktat przewidywał, że wykorzystanie kryptografii z krótkimi kluczami (56-bitowe dla szyfrowania symetrycznego, 512-bitowe dla RSA) nie będzie już podlegać kontroli eksportu. Eksport kryptografii z USA stał się mniej rygorystycznie regulowany w wyniku znacznego rozluźnienia w 2000 r.; nie ma już zbyt wielu ograniczeń dotyczących rozmiarów kluczy w oprogramowaniu masowym eksportowanym do USA. Od czasu złagodzenia amerykańskich ograniczeń eksportowych oraz ponieważ większość komputerów osobistych podłączonych do Internetu zawiera przeglądarki internetowe pochodzące z USA, takie jak Firefox lub Internet Explorer , prawie każdy użytkownik Internetu na całym świecie ma potencjalny dostęp do wysokiej jakości kryptografii za pośrednictwem swoich przeglądarek (np. za pośrednictwem warstwy transportowej Bezpieczeństwo ). Mozilla Thunderbird i Microsoft Outlook klient e-mail programy podobnie może wysyłać i odbierać wiadomości e-mail za pośrednictwem protokołu TLS i może wysyłać i odbierać wiadomości e-mail zaszyfrowane z S / MIME . Wielu internautów nie zdaje sobie sprawy, że ich podstawowe oprogramowanie użytkowe zawiera tak rozbudowane kryptosystemy . Te przeglądarki i programy pocztowe są tak wszechobecne, że nawet rządy, których intencją jest uregulowanie cywilnego korzystania z kryptografii, generalnie nie uważają za praktyczne kontrolowanie dystrybucji lub korzystania z kryptografii tej jakości, więc nawet gdy takie przepisy obowiązują, faktyczne wykonanie jest często praktycznie niemożliwe.

Zaangażowanie NSA

Siedziba NSA w Fort Meade, Maryland

Kolejną kontrowersyjną kwestią związaną z kryptografią w Stanach Zjednoczonych jest wpływ Narodowej Agencji Bezpieczeństwa na rozwój i politykę szyfrowania. NSA była zaangażowana w projektowanie DES podczas jego opracowywania w IBM i rozważania przez National Bureau of Standards jako możliwego standardu federalnego dla kryptografii. DES został zaprojektowany tak, aby był odporny na różnicową kryptoanalizę , potężną i ogólną technikę kryptoanalityczną znaną NSA i IBM, która stała się publicznie znana dopiero po ponownym odkryciu pod koniec lat 80-tych. Według Stevena Levy'ego IBM odkrył kryptoanalizę różnicową, ale na prośbę NSA utrzymywał tę technikę w tajemnicy. Technika stała się publicznie znana dopiero, gdy Biham i Shamir odkryli ją na nowo i ogłosili ją kilka lat później. Cała sprawa ilustruje trudność w określeniu, jakie zasoby i wiedzę może faktycznie posiadać atakujący.

Innym przykładem zaangażowania NSA była afera z chipem Clipper z 1993 roku , mikrochipem szyfrującym, który miał być częścią inicjatywy kontroli kryptografii Capstone . Clipper był szeroko krytykowany przez kryptografów z dwóch powodów. Algorytm szyfru (zwany Skipjack ) został następnie sklasyfikowany (odtajniony w 1998 roku, długo po wygaśnięciu inicjatywy Clippera). Utajniony szyfr wywołał obawy, że NSA celowo osłabiła szyfr, aby wspomóc swoje działania wywiadowcze. Cała inicjatywa została również skrytykowana ze względu na naruszenie Zasady Kerckhoffsa , ponieważ program zawierał specjalny klucz depozytowy przechowywany przez rząd do użytku organów ścigania (tj. podsłuch ).

Zarządzanie Prawami Cyfrowymi

Kryptografia ma kluczowe znaczenie dla zarządzania prawami cyfrowymi (DRM), grupy technik służących do technologicznej kontroli wykorzystania materiałów chronionych prawem autorskim , szeroko wdrażanych i wdrażanych na żądanie niektórych właścicieli praw autorskich. W 1998 r. prezydent USA Bill Clinton podpisał ustawę Digital Millennium Copyright Act (DMCA), która kryminalizuje wszelką produkcję, rozpowszechnianie i używanie niektórych technik i technologii kryptoanalitycznych (obecnie znanych lub później odkrytych); w szczególności te, które można wykorzystać do obejścia schematów technologicznych DRM. Miało to zauważalny wpływ na społeczność badaczy kryptografii, ponieważ można argumentować, że jakiekolwiek badania kryptoanalityczne naruszały ustawę DMCA. Podobne ustawy zostały uchwalone w kilku krajach i regionach, w tym implementacja do dyrektywy UE o prawach autorskich . Podobne ograniczenia wymagają traktaty podpisane przez państwa członkowskie Światowej Organizacji Własności Intelektualnej .

Departament Sprawiedliwości Stanów Zjednoczonych i FBI nie egzekwowane DMCA tak rygorystycznie, jak obawiali został przez niektórych, ale prawo, niemniej jednak pozostaje kontrowersyjny. Niels Ferguson , szanowany badacz kryptografii, publicznie oświadczył, że nie opublikuje niektórych swoich badań dotyczących projektu bezpieczeństwa Intela z obawy przed ściganiem na mocy ustawy DMCA. Kryptolog Bruce Schneier twierdzi, że ustawa DMCA zachęca do uzależnienia od dostawcy , jednocześnie hamując faktyczne środki w zakresie bezpieczeństwa cybernetycznego. Zarówno Alan Cox (wieloletni programista jądra Linuksa ), jak i Edward Felten (oraz niektórzy jego studenci z Princeton) napotkali problemy związane z Ustawą. Dmitrij Sklyarov został aresztowany podczas wizyty w USA z Rosji i skazany na pięć miesięcy w oczekiwaniu na proces za rzekome naruszenia DMCA wynikające z pracy, którą wykonywał w Rosji, gdzie praca była legalna. W 2007 roku odkryto i udostępniono w Internecie klucze kryptograficzne odpowiedzialne za szyfrowanie treści Blu-ray i HD DVD . W obu przypadkach Motion Picture Association of America wysłało liczne zawiadomienia o naruszeniu ustawy DMCA i doszło do ogromnego sprzeciwu w Internecie wywołanego postrzeganym wpływem takich zawiadomień na dozwolony użytek i wolność słowa .

Wymuszone ujawnienie kluczy szyfrujących

W Wielkiej Brytanii ustawa o uprawnieniach dochodzeniowych daje policji brytyjskiej uprawnienia do zmuszania podejrzanych do odszyfrowywania plików lub przekazywania haseł chroniących klucze szyfrowania. Niezastosowanie się jest samo w sobie przestępstwem, podlegającym karze dwóch lat pozbawienia wolności lub do pięciu lat w sprawach dotyczących bezpieczeństwa narodowego. Na podstawie ustawy odbyły się zakończone sukcesem postępowania sądowe; pierwszy, w 2009 roku, skutkował karą 13 miesięcy pozbawienia wolności. Podobne przepisy dotyczące przymusowego ujawniania informacji w Australii, Finlandii, Francji i Indiach zmuszają poszczególnych podejrzanych objętych dochodzeniem do przekazania kluczy szyfrowania lub haseł podczas dochodzenia kryminalnego.

W Stanach Zjednoczonych federalna sprawa karna Stany Zjednoczone przeciwko Fricosu dotyczyła kwestii, czy nakaz przeszukania może zmusić osobę do ujawnienia hasła lub hasła szyfrowania . Electronic Frontier Foundation (EFF) twierdził, że jest to naruszenie ochrony przed samooskarżeniem podanej przez piątej poprawki . W 2012 roku sąd orzekł, że zgodnie z ustawą All Writs , pozwany był zobowiązany do przedstawienia dla sądu niezaszyfrowanego dysku twardego.

W wielu jurysdykcjach status prawny przymusowego ujawnienia pozostaje niejasny.

Spór o szyfrowanie FBI–Apple w 2016 r. dotyczy zdolności sądów w Stanach Zjednoczonych do wymuszenia pomocy producentów w odblokowywaniu telefonów komórkowych, których zawartość jest chroniona kryptograficznie.

Jako potencjalny środek zaradczy w celu wymuszenia ujawnienia, niektóre programy kryptograficzne obsługują prawdopodobną możliwość zaprzeczenia , gdzie zaszyfrowanych danych nie da się odróżnić od nieużywanych losowych danych (na przykład takich jak dane dysku, który został bezpiecznie wyczyszczony ).

Zobacz też

Bibliografia

Dalsza lektura

Zewnętrzne linki