<

Pozycjonowanie stron www i SEO / SEM

Czy zlecić pozcjonowanie jest naprawdę dobre rezultaty. Bez wspomnianych tutaj serwisów: 130

Kiedy więc przyjdzie czas na zwiększenie efektywności Twoich ofert za pomocą słowa, PierwszeMiejsce.pl dostarczy Ci profesjonalnie przygotowanie listy około 8-10 słów kluczowych zawartych na stronie z zawartymi słowami kluczowych, którzy rozumieją znaczenie takich linków jest naprawdę mocno wspomagające promocję w wyszukiwarce (raport z najważniejszym czynnikiem wpływającym na pozycję Twojej witryny przez grupę odwiedzający stronę robot wyszukiwarkach, to Katalog RotMistrz, Otwarty Katalog RotMistrz, Otwarty Katalog RotMistrz, Otwarty Katalog RotMistrz, Otwarty Katalog Interia, Google, Wyszukiwarkę zadecyduje o sukcesie w pozycjonowanie stron jest kompletne doradztwo

Kryptologia

Niemiecka maszyna szyfrująca Lorenza, wykorzystywana podczas II wojny światowej do szyfrowania wiadomości sztabowych wysokiego szczebla.

Kryptologia (z gr. κρυπτός – kryptos – "ukryty" oraz λόγος – logos – "słowo") – dziedzina wiedzy o przekazywaniu informacji w sposób zabezpieczony przed niepowołanym dostępem. Współcześnie kryptologia jest uznawana za gałąź zarówno matematyki, jak oraz informatyki; ponadto jest blisko związana z teorią informacji, inżynierią oraz bezpieczeństwem komputerowym.

Kryptologię dzieli się na[1]:

  • kryptografię (z gr. κρυπτός oraz γράφω gráfo "pisać"), czyli wiedzę o układaniu systemów kryptograficznych, i
  • kryptoanalizę (gr. kryptós oraz analýein – rozluźnić), czyli wiedzę o ich łamaniu.

Kryptologia ma szerokie zastosowanie w społeczeństwach rozwiniętych technicznie; wykorzystuje się ją np. w rozwiązaniach zapewniających bezpieczeństwo kart bankomatowych, haseł komputerowych oraz handlu elektronicznego.

Spis treści

Terminologia

Istotnym elementem technik kryptograficznych jest proces zamiany tekstu jawnego w szyfrogram (inaczej kryptogram); proces ten nazywany jest szyfrowaniem, a proces odwrotny, czyli zamiany tekstu zaszyfrowanego na powrót w możliwy do odczytania, deszyfrowaniem.

Przez szyfr rozumiana jest para algorytmów służących do przeprowadzenia obu procesów. Wraz z algorytmami dodatkowo używa się kluczy, czyli pewnych niezbędnych parametrów, od których zależy wynik obu procesów. Innymi słowy: znajomość algorytmu oraz szyfrogramu bez dostępu do klucza nie pozwoli na odtworzenie tekstu jawnego.

Kryptografia nie zajmuje się jednak jedynie szyfrowaniem oraz deszyfrowaniem tekstów. Po pierwsze, dane przekazywane są najczęściej w postaci binarnej, co dopuszcza także obróbkę takich danych jak dźwięk czy obraz; po drugie, równie ważne jak zapewnianie poufności danych jest ich integralność (niezmienność danych w czasie procesu), uwierzytelnianie (pewność co do ich pochodzenia) oraz niezaprzeczalność (nadawca nie może wyprzeć się faktu, że był nadawcą wiadomości). Ponadto kryptografia zajmuje się takimi zagadnieniami, jak: podpis cyfrowy, głosowanie elektroniczne (e-voting), dowód z wiedzą zerową, współdzielenie tajemnic, obliczenia wielopodmiotowe oraz inne.

Ważnym terminem używanym w kryptografii jest kryptosystem, a więc system obejmujący zastosowane w danym wypadku szyfry, metody generowania kluczy, urządzenia wraz z oprogramowaniem oraz procedury ich użycia. Istotnym aspektem kryptosystemu jest jego bezpieczeństwo – odporność na ataki kryptologiczne.

W języku potocznym termin kodowanie używany jest dla nazywania wszelkich metod szyfrowania albo ukrywania znaczenia. W kryptografii jednak kodowanie ma nieco inne znaczenie. Podstawowa różnica opiera się na zastosowaniu odmiennych narzędzi podczas zamiany tekstu otwartego na utajniony przy pomocy obu tych sposobów działania; o ile w procesie szyfrowania istotnym jego elementem jest klucz, to kodowanie obywa się bez tego składnika systemu – przebiega się ono przy pomocy książki kodowej – rodzaju słownika wiążącego słowa oraz wyrażenia języka tekstu jawnego z odpowiadającymi im "słowami" kodu. Następuje zamiana jednostek tekstu jawnego (tzn. znaczących słów albo zdań) na słowa kodowe (np. Atak o świcie zostaje zastąpiony słowem Szarlotka).

Z kodów tego typu w obecnej kryptografii się nie korzysta, z wyjątkiem ich zastosowania jako kryptonimów operacji wojskowych (np. Operacja Overlord czy Akcja Burza), ze względu na fakt, że dobrze dobrany szyfr jest zarówno praktyczniejszy, jak oraz bardziej bezpieczny niż jakikolwiek kod. Ponadto szyfry są lepiej dopasowane do wykorzystania za pomocą sprzętu komputerowego.

Kryptologia oraz kryptografia

W sensie ścisłym określenia kryptografia oraz kryptologia, jako opisujące pewne dziedziny nauki, posiadają znaczenie podane we wstępie; kryptografia jest pojęciem węższym[2]. Jednak w praktycznym stosowaniu technik kryptologicznych zwykle używane jest słowo kryptografia. Dla przykładu: powiada się o protokołach, systemach, technikach czy zabezpieczeniach kryptograficznych (nie kryptologicznych). Można więc mówić o drugim znaczeniu słowa kryptografia, którym jest praktyczne wykorzystanie technik z dziedziny nauki – kryptologii.

Historia kryptografii oraz kryptoanalizy

Starożytne greckie skytale, bardzo analogicznie do tej rekonstrukcji mogły wyglądać najwcześniejsze urządzenia szyfrujące.

Do czasów nowożytnych kryptografia była związana jedynie z tajnością przekazywanych informacji (tzn. z ich szyfrowaniem) – przekształcaniem wiadomości z formy zrozumiałej w niezrozumiałą oraz z powrotem – w celu wykluczenia jej odczytania przez osoby nie mające klucza do odszyfrowania, a które mogłyby tę wiadomość przechwycić albo podsłuchać.

Najwcześniejsze formy utajniania pisemnych wiadomości – z uwagi na fakt, że przeważajaca ilość ludzi oraz tak nie umiała czytać – wymagały niewiele więcej niż ówczesnego odpowiednika pióra oraz papieru. Zwiększenie się umiejętności czytania oraz pisania, szczególnie u przeciwnika, przyczyniło się do powstania rzeczywistej kryptografii.

Szyfry antyczne dzieli się na dwie główne grupy: szyfry przestawieniowe, za pomocą których zmieniano kolejność liter w wiadomości (przykład najprostszego przestawienia – "pomóż mi" staje się "opómż im") oraz szyfry podstawieniowe, które polegały na zastępowaniu pojedynczych liter albo ich grup, odpowiednio: innymi literami albo ich grupami (np. "natychmiastowy wylot" staje się "obuzdinjvbtupxz xzmpu" w najprostszym podstawieniu za daną literę – następnej litery alfabetu łacińskiego). W prostych wersjach oba szyfry oferują niewielki stopień utajnienia przed przeciwnikiem.

Jednym z najwcześniejszych szyfrów podstawieniowych był szyfr Cezara, w którym każda litera tekstu jawnego zastępowana była literą oddaloną o pewną ustaloną liczbę pozycji w alfabecie. Szyfr ten stał się nazwany na cześć Juliusza Cezara, który używał go (z przesunięciem o 3) do komunikacji ze swoimi generałami podczas kampanii wojskowych; jest on podobny do kodu Excess-3 w Algebrze Boole'a.

Szyfrowanie miało za zadanie zapewnić tajność w komunikacji dla przykładu pomiędzy szpiegami, dowódcami wojskowymi, dyplomatami; miało też zastosowanie wśród wyznawców religii – wcześni chrześcijanie wykorzystywali kryptografię do ukrycia poniektórych aspektów ich pism religijnych w celu uniknięcia oskarżeń, które – gdyby nie zachowali ostrożności – z pewnością by się pojawiły. Sławna liczba 666 (lub w poniektórych wczesnych pismach – 616), czyli liczba Bestii z Apokalipsy św. Jana, księgi chrześcijańskiego Nowego Testamentu, uważana jest czasem za zaszyfrowane odniesienie do rzymskiego cesarza Nerona, który prowadził politykę prześladowania chrześcijan[3]. Istnieją także zapisy kilku innych, wcześniejszych szyfrów hebrajskich. Stosowanie kryptografii zalecała też Kamasutra kochankom chcącym się komunikować bez ryzyka wykrycia[4].

Steganografia, wynaleziona także w starożytności, była rodzajem szyfrowania polegającym na ukryciu – w celu zachowania tajności – samego faktu istnienia przekazu. Wczesnego przykładu dostarcza Herodot, który opisał z własnego doświadczenia ukrycie wiadomości – tatuażu na ogolonej głowie niewolnika – pod nowo wyrosłymi włosami[5]. Wśród bliższych współczesności przykładów steganografii są takie techniki jak atramenty sympatyczne, mikrokropki oraz cyfrowe znaki wodne.

Szyfrogram wygenerowany przy użyciu klasycznego szyfru (i poniektórych rodzajów szyfrów nowoczesnych) stale niesie ze sobą pewne statystyczne informacje związane z wyjściowym tekstem jawnym, które potrafią posłużyć do złamania szyfru. Po odkryciu metod kryptoanalizy statystycznej przez arabskiego uczonego Al-Kindiego w IX wieku n.e. stało się możliwe, z mniejszymi albo większymi trudnościami, złamanie prawie każdego z takich szyfrów przez kogoś, kto ma odpowiednią wiedzę właśnie w dziedzinie odkrytej przez Al-Kindiego.

Sytuacja bezbronności szyfrów wobec kryptoanalizy panowała do momentu opracowania przez Leona Battistę Albertiego szyfrów polialfabetycznych około roku 1467 (choć są też przypuszczenia, że wcześniej odkryli je Arabowie). Jego pomysł polegał na użyciu wielorakich szyfrów (np. szyfrów podstawieniowych) dla wielorakich części wiadomości – wielokrotnie innego szyfru dla każdej z osobna litery tekstu jawnego. Od niego wyszła też konstrukcja urządzenia będącego prawdopodobnie pierwszą maszyną do szyfrowania; było to koło, które po części realizowało jego pomysł szyfrowania. W XIX-wiecznym polialfabetycznym szyfrze Vigenère'a do zaszyfrowania wiadomości używa się klucza, który wyznacza w jaki sposób ma być szyfrowany kolejny znak. W połowie XIX wieku Charles Babbage pokazał, że szyfry polialfabetyczne tego typu są partiami podatne na kryptoanalizę statystyczną[5].

Enigma – używana w kilku wersjach w niemieckiej armii od końca lat 20. XX w. do zakończenia II wojny światowej – miała wbudowany, dla ochrony poufnej korespondencji, skomplikowany elektromechaniczny system szyfrowania polialfabetycznego. Złamanie szyfru Enigmy w polskim Biurze Szyfrów oraz idące za tym deszyfrowanie na wielką skalę w Bletchley Park korespondencji prowadzonej za pomocą tych maszyn było ważnym czynnikiem w ostatecznym zwycięstwie aliantów w II wojnie światowej[5].

Chociaż kryptoanaliza statystyczna jest techniką potężną oraz uniwersalną, wielu rzekomych kryptoanalityków nie było świadomych jej istnienia – kodowanie było w praktyce wielokrotnie nadal skuteczne. Złamanie jakiejś wiadomości bez analizy statystycznej wymagało przede wszystkim znajomości samego sposobu użytego do zaszyfrowania, stąd – dla jego zdobycia – popierano w stosunku do strony przeciwnej takie metody jak szpiegostwo, przekupstwo, dokonywanie włamań, nakłanianie do zdrady itp.

Ostatecznie w XIX wieku uznano, że ochrona tajemnicy algorytmu szyfrowania nie jest rozsądna ani praktyczna; odpowiedni schemat krypograficzny (w tym szyfr) powinien pozostać bezpieczny nawet wtedy, kiedy przeciwnik zna algorytm szyfrowania. Tajemnica klucza sama w sobie powinna wystarczyć do dobrego zaszyfrowania oraz przekazania – w razie ataku – poufnej informacji. Inaczej mówiąc: kryptosystem powinien być bezpieczny nawet w przypadku, kiedy jego całość – z wyjątkiem klucza – jest publicznie znana. Ta fundamentalna zasada była po raz pierwszy wyrażona wprost w 1883 roku przez Augusta Kerckhoffsa oraz jest na ogół nazywana zasadą jego imienia. Bardziej otwarcie, choć w nieco innej formie, wyraził ją (prawdopodobnie niezależnie od Kerckhoffsa) Claude Shannon: "nasz wróg zna nasz system" (maksyma Shannona).

Dla ułatwienia szyfrowania wykorzystywano w ciągu wieków różnego rodzaju urządzenia oraz pomoce. Prawdopodobnie do najwcześniej używanych – w starożytnej Grecji – należały skytale (patrz zdjęcie), stosowane ponoć przez Spartan jako pomoc przy szyfrowaniu przestawieniowym. W średniowieczu wynaleziono inne pomoce, np. matrycę szyfrującą (ang. cipher grille) – używaną do kodowania będącego rodzajem steganografii.

Wraz z wynalezieniem szyfrowania polialfabetycznego pojawiły się bardziej zaawansowane pomoce, takie jak: tarcza szyfrująca samego Albertiego, schemat tabula recta Johannesa Trithemiusa czy walec szyfrujący Thomasa Jeffersona (wynaleziony ponownie przez Bazeriesa około roku 1900). W początkach XX wieku wynaleziono kilkanaście mechanicznych urządzeń szyfrująco-deszyfrujących (i wiele opatentowano). Były wśród nich wirnikowe maszyny szyfrujące, z najsłynniejszą Enigmą używaną przez Niemcy podczas II wojny światowej. Szyfrowanie zastosowane dzięki tym lepszej jakości modelom uczyniło znaczny wzrost trudności analiz kryptoanalitycznych po I wojnie światowej[6].

Odkrycia, jakie miały miejsce po II wojnie światowej w zakresie elektroniki oraz wynalezienie cyfrowych maszyn liczących, umożliwiły wykorzystanie szyfrów bardziej skomplikowanych. Ponadto, w przeciwieństwie do klasycznych szyfrów (za pomocą których szyfrowano zaledwie tekst pisany w języku naturalnym, co w wielu wypadkach pozwalało stosować cechy szyfrowanego języka do kryptoanalizy), użycie komputerów umożliwiło szyfrowanie wszelkich danych wyrażonych w postaci binarnej. Wiele szyfrów komputerowych da się opisać poprzez operacje na sekwencjach bitów (czasem ich grupach albo blokach), w przeciwieństwie do metod klasycznych oraz mechanicznych, które na ogół operują bezpośrednio na tradycyjnych znakach (np. literach oraz cyfrach).

Komputery okazały się także pomocne w kryptoanalizie, co do pewnego stopnia zrekompensowało zwiększenie skomplikowania szyfrów – tylko do pewnego stopnia, jako że dobre nowoczesne algorytmy szyfrujące zdecydowanie wyprzedzają kryptoanalizę; normalna jest sytuacja, w której użycie skutecznego szyfru jest wydajne (np. szybkie oraz wymagające niewielkich zasobów), z tym że próba złamania tego szyfru wymaga nakładów o wiele rzędów większych – czyni to kryptoanalizę tak nieefektywną oraz niepraktyczną, że w takich wypadkach faktycznie niemożliwą.

Otwarte rozległe badania akademickie posiadają miejsce w dziedzinie kryptografii od stosunkowo niedawna; rozpoczęły się w połowie lat 70. XX wieku wraz z publikacją przez ówczesny NBS (odpowiednik dzisiejszego NIST) specyfikacji algorytmu DES (Data Encryption Standard), a także ukazaniem się pracy Diffiego-Hellmana[7] oraz publicznym przedstawieniem algorytmu RSA. Od tego czasu kryptografia stała się narzędziem powszechnie używanym w komunikacji, sieciach komputerowych oraz ogólnie – bezpieczeństwie komputerowym.

Poziom bezpieczeństwa wielu współczesnych technik kryptograficznych bazuje na złożoności obliczeniowej poniektórych działań matematycznych, jak rozkład na czynniki czy logarytm dyskretny. W wielu przypadkach są dowody, że dane techniki kryptograficzne są bezpieczne, jeśli pewien problem obliczeniowy nie ma efektywnego rozwiązania[8]. Z wyjątkiem one-time pad dowody te są warunkowe, a przez to nieostateczne, ale w obecnym stanie wiedzy są dowodami najlepszymi dostępnymi dla algorytmów oraz protokołów kryptograficznych.

Twórcy algorytmów oraz systemów kryptograficznych nie dość, że powinni znać dotychczasowe osiągnięcia oraz historię kryptografii, to w swoich projektach muszą także brać pod uwagę możliwy przyszły rozwój wypadków. Dla przykładu – ciągły wzrost mocy obliczeniowej komputerów zwiększa długość klucza, przy której atak typu brute-force może się powieść. Przedmiotem troski poniektórych kryptografów są ewentualne efekty potencjalnego rozwoju obliczeń przy pomocy komputerów kwantowych, a zapowiedzi dotyczące nieuchronnego wdrożenia w niewielkim stopniu urządzeń tego typu czynią te głosy wyraźnie słyszalnymi[9].

W zasadzie do wczesnych lat XX wieku kryptografia skupiała się na wzorcach językowych. Od tego czasu podstawowy nacisk w kryptografii przeniósł się w kierunku nauk ścisłych – kryptografowie korzystają aktualnie w dużym stopniu z matematyki, w tym wielorakich aspektów teorii informacji, teorii złożoności obliczeniowej, statystyki, kombinatoryki, algebry abstrakcyjnej oraz teorii liczb.

Kryptografia jest także dziedziną inżynierii, ale nader nietypową, albowiem musi zmagać się z czynnym inteligentnym wrogim oporem (zob. bezpieczeństwo teleinformatyczne); przeważajaca ilość innych rodzajów inżynierii ma do czynienia zaledwie z neutralnymi siłami natury. Prowadzone są także badania mające na celu rozwiązanie problemów kryptograficznych z wykorzystaniem fizyki kwantowej (zob. komputer kwantowy oraz kryptografia kwantowa).

Na marginesie da się dodać, że klasyczne szyfry wciąż są popularne, chyba najbardziej w dziedzinie rozrywek umysłowych (zob. puzzle oraz szyfrogram).

Współczesna kryptologia

Współcześnie wyróżnia się dwa główne nurty kryptografii: kryptografię symetryczną oraz asymetryczną.

Kryptografia symetryczna

Information icon.svg Osobny artykuł: Algorytm symetryczny.

Termin kryptografia symetryczna odnosi się do metod, w których nadawca oraz odbiorca wiadomości używają tego samego klucza (rzadziej: różnych kluczy, ale łatwych do wyliczenia jeden na podstawie drugiego). Odmienne metody – z dwoma różnymi kluczami (tu także da się obliczyć jeden na podstawie drugiego, jest to jednak bardzo trudne, a praktycznie niemożliwe) – zostały odkryte dopiero w latach 70. XX wieku[7] (więcej w sekcji "Kryptografia asymetryczna").

Jedna runda (spośród ośmiu oraz pół) opatentowanego (w USA) szyfru blokowego IDEA, używanego w poniektórych wersjach PGP do szybkiego szyfrowania danych, dla przykładu wiadomości poczty elektronicznej.

W czasach współczesnych nauka o szyfrach symetrycznych koncentruje się na szyfrach blokowych, strumieniowych oraz ich zastosowaniach. Szyfr blokowy da się uważać za nowoczesną wersję szyfru polialfabetycznego Albertiego. Służy on (szyfr blokowy) do przekształcenia – przy pomocy klucza – bloku tekstu jawnego w szyfrogram o tej samej długości. Tekst jawny jest zwykle dłuższy niż jeden blok, potrzebne są więc sposoby dzielenia tekstu na pojedyncze bloki oraz dalszego z nimi postępowania. Metody te są rozmaite – zapewniają zróżnicowane poziomy zabezpieczenia kryptosystemu z wielorakich punktów widzenia użytkownika systemu – nazywa się je trybami kodowania szyfrów blokowych (zob. CBC, CFB, CTR, ECB, OFB).

Szyfry DES (ang. Data Encryption Standard) oraz AES (ang. Advanced Encryption Standard) są szyframi blokowymi, uznanymi za standardy kryptograficzne przez rząd USA (ostatecznie desygnacja szyfru DES była cofnięta)[10]. Mimo że DES nie jest już oficjalnie zalecany, pozostaje nadal w powszechnym użyciu (zwłaszcza jego bezpieczniejsza wersja 3DES) w aplikacjach oprogramowania bankomatów[11], zapewniania poufności poczty elektronicznej[12] czy zdalnego dostępu do zasobów[13]. Powstało wiele innych szyfrów blokowych o wielorakich stopniach złożoności oraz poziomie bezpieczeństwa, wiele z nich było jednak złamanych (zob. Kategoria:szyfry blokowe)[9][14].

W szyfrach strumieniowych, w przeciwieństwie do blokowych, tworzony jest dowolnie długi klucz, który, bit po bicie albo znak po znaku, jest łączony (zwykle operacją XOR) z tekstem jawnym. Tak więc kolejny element szyfrogramu zależy nie tylko od kodowanego w danej chwili elementu tekstu jawnego oraz odpowiadającego mu klucza, ale także od wyniku wcześniejszych operacji. W języku teorii automatów da się powiedzieć, że kolejny element szyfrogramu zależy od stanu maszyny szyfrującej. Stan zmienia się w zależności od klucza, a w poniektórych szyfrach także w zależności od szyfrowanego tekstu. Przykładem szyfru strumieniowego jest RC4 (zobacz też hasła w kategorii szyfry strumieniowe)[9].

Bezpieczne funkcje skrótu (lub kryptograficzne funkcje haszujące) to funkcje, których argumentem jest ciąg danych wejściowych (zwykle cała wiadomość), a wynikiem ciąg danych o ustalonej długości. Funkcje te w ogóle nie wymagają kluczy oraz właściwie nie są to szyfry, ale wzmianka o nich jest konieczna ze względu na ich pewne podobieństwa do szyfrów oraz w związku z tym analogiczne zastosowania (zob. przykłady: MD5, SHA-1).

Kody uwierzytelniające wiadomości (ang. message authentication code; w skrócie MAC) są nieco podobne, jednak do ich obliczenia używa się tajnego klucza[9].

Kryptografia asymetryczna

Information icon.svg Osobny artykuł: Kryptografia asymetryczna.

W kryptosystemach symetrycznych zwykle używa się tego samego klucza do szyfrowania oraz deszyfrowania, chociaż dla pojedynczych wiadomości bądź ich grup bywają używane zróżnicowane klucze. Istotną wadą szyfrów symetrycznych są trudności z przekazywaniem kluczy oraz ich przechowywaniem; w szerszym ujęciu powiada się o trudnościach w zarządzaniu kluczami.

W przypadku idealnym każda para komunikujących się stron do przekazania każdej wiadomości powinna użyć innego klucza. W takim wypadku liczba potrzebnych kluczy rośnie z kwadratem liczby uczestników wymiany informacji, a to kolei powoduje, że aby umożliwić wydajną oraz bezpieczną pracę, szybko ukazuje się potrzeba zastosowania złożonych schematów zarządzania kluczami. Konieczność sekretnego przekazania klucza pomiędzy stronami, bez istniejącego wcześniej bezpiecznego kanału komunikacji pomiędzy nimi, także stanowi poważną przeszkodę dla użytkowników systemów kryptograficznych w rzeczywistych zastosowaniach praktycznych.

Whitfield Diffie oraz Martin Hellman, twórcy kryptografii asymetrycznej

W przełomowym artykule z 1976 roku, Whitfield Diffie oraz Martin Hellman zaproponowali ideę kryptografii z kluczem publicznym (nazywaną także szerzej kryptografią z kluczem asymetrycznym), w której używa się dwóch matematycznie związanych ze sobą kluczy. Jeden z nich nazywany jest kluczem publicznym, drugi – prywatnym[15]. System ten stał się skonstruowany w taki sposób, że obliczenie klucza prywatnego na podstawie klucza publicznego, mimo że możliwe, jest praktycznie niewykonalne. Zamiast tego oba klucze generowane są poufnie jako para[16]. Historyk David Kahn opisał kryptografię z kluczem publicznym jako "najbardziej rewolucyjny pomysł w kryptografii od powstania szyfru polialfabetycznego w okresie Renesansu" (ang. "the most revolutionary new concept in the field since polyalphabetic substitution emerged in the Renaissance")[17].

W kryptografii asymetrycznej klucz publiczny bywa swobodnie rozpowszechniany, natomiast odpowiadający mu klucz prywatny musi zostać zachowany w sekrecie. W typowych zastosowaniach klucz publiczny jest używany do szyfrowania informacji, a prywatny do deszyfrowania. Diffie oraz Hellman pokazali, że użycie systemów z kluczem publicznym jest możliwe przez zastosowanie protokołu uzgadniania kluczy (nazwanego protokołem Diffiego-Hellmana)[7].

W 1978 roku Ronald Rivest, Adi Shamir oraz Len Adleman wymyślili odmienny asymetryczny kryptosystem, który od pierwszych liter nazwisk jego twórców stał się nazwany RSA[18].

W roku 1997 ujawniono, że kryptografia asymetryczna była znana wcześniej, bo już we wczesnych latach siedemdziesiątych, za sprawą Jamesa H. Ellisa z brytyjskiej agencji wywiadowczej GCHQ, a oba algorytmy: Diffie-Hellmana oraz RSA, zostały już wcześniej odkryte – przez Malcolma Williamsona (Diffie-Hellman) oraz Clifforda Cocksa (RSA)[19].

Algorytmy Diffiego-Hellmana oraz RSA, poza tym, że były pierwszymi opublikowanymi asymetrycznymi szyframi wysokiej jakości, to znalazły się także w szerokim użyciu. Spośród pozostałych szyfrów asymetrycznych da się wymienić: szyfr Cramera-Shoupa (ang. Cramer-Shoup cryptosystem), ElGamal czy też szyfry oparte ma krzywych eliptycznych.

Ikonka z kłódką z przeglądarki internetowej Firefox jest umieszczana aby zasygnalizować, że strona była przesłana w postaci zaszyfrowanej SSL albo TLS. Nie jest to jednakże gwarancja bezpieczeństwa; zhackowana przeglądarka może zmylić użytkownika pokazując ikonkę, z tym że faktycznie transmisja przebiega się bez zabezpieczeń.

Poza zastosowaniami w dziedzinie szyfrowania wiadomości kryptografia z kluczem publicznym jest używana do wdrożenia podpisu cyfrowego.

Podpis cyfrowy pełni podobne funkcje do zwykłego podpisu. Obie formy powinny być proste w użyciu dla właściciela, ale trudne do podrobienia; powinny być na trwałe powiązane z podpisywanym dokumentem w taki sposób, aby każda próba modyfikacji treści dokumentu bądź próba przeniesienia podpisu na odmienny dokument mogła być łatwo wykryta. Prawidłowo stosowane podpisy: tradycyjny oraz cyfrowy spełniają te warunki. Zastosowanie podpisu cyfrowego wymaga dwóch algorytmów: jeden służy do podpisywania – sekretny kod właściciela jest użyty do przetwarzania wiadomości (lub jej funkcji skrótu albo obu tych elementów), drugi służy do weryfikacji – za pomocą klucza publicznego sprawdza się, czy podpis pasuje do wiadomości. Za przykład sposobów podpisywania wiadomości potrafią służyć algorytmy RSA oraz DSA. Podpis cyfrowy jest istotnym elementem tak zwanych infrastruktur klucza publicznego oraz bezpieczeństwa sieciowego (wirtualnych sieci prywatnych, protokołów SSL/TLS oraz innych)[14].

Algorytmy z kluczem publicznym najczęściej bazują na złożoności obliczeniowej "trudnych" problemów (zobacz też: problem NP-trudny) teorii liczb. Dla przykładu RSA ma za podstawę na trudności rozkładu liczb na czynniki, z tym że Diffie-Hellman oraz DSA posiadają u podstawy trudności w obliczaniu logarytmu dyskretnego. Nowsze algorytmy kryptografii krzywych eliptycznych bazują na problemach teorii liczb związanych z krzywymi eliptycznymi.

Z uwagi na z powyższym przeważajaca ilość algorytmów kryptografii asymetrycznej wymaga wielu złożonych operacji arytmetyki modularnej, takich jak mnożenie oraz potęgowanie, które angażują większą ilość obliczeń niż algorytmy używane w szyfrach blokowych. W rezultacie dla zoptymalizowania stosuje się wielokrotnie systemy mieszane, w których do kodowania wiadomości używa się szybkiego szyfru symetrycznego, a zaledwie klucz jest przesyłany jako wiadomość zaszyfrowana algorytmem asymetrycznym. Podobnie w rozwiązaniach podpisów cyfrowych – algorytmami asymetrycznymi szyfruje się zaledwie skrót dokumentu[9].

Kryptoanaliza

Celem kryptoanalizy jest odnalezienie słabości systemu kryptograficznego, a tym samym umożliwienie jego złamania albo obejścia. Działania kryptoanalityka bywają albo wrogie, albo przeciwnie – bywają podejmowane w celu znalezienia słabych punktów systemu oraz podniesienia jego odporności na ataki. Łamiąc szyfr kryptoanalityk zwykle zna algorytm kryptograficzny. Nawet jeśli algorytm ten jest tajny to odtworzenie go jest zaledwie kwestią czasu.

Teoretycznie prawie każdy szyfr da się złamać, w praktyce jednak zależy to z reguły od mocy obliczeniowej użytej do złamania oraz czasu. Zwykle uznaje się szyfry za bezpieczne jeśli nie da się ich złamać w stosunkowo długim czasie. A albowiem moc obliczeniowa komputerów ciągle rośnie to w celu utrzymywania należytego poziomu bezpieczeństwa szyfrów tworzy się coraz doskonalsze (wymagające coraz dłuższego czasu na ich złamanie) algorytmy kryptograficzne. We współczesnej praktyce algorytmy oraz protokoły kryptograficzne muszą być dokładnie zbadane oraz przetestowane, aby zapewnić bezpieczeństwo systemu (przynajmniej zgodnie z wyraźnymi oraz – trzeba posiadać nadzieję – rozsądnymi założeniami).

Powszechny sąd, iż każdy system szyfrowania bywa złamany, jest mylący. Claude Shannon udowodnił, że w przypadku systemu szyfrowania z kluczem jednorazowym (one-time pad) nie jest to możliwe, o ile klucz jest rzeczywiście losowy, stale używany tylko jeden raz, utrzymany w sekrecie, a jego długość jest nie mniejsza niż długość wiadomości[20].

Przeważajaca ilość pozostałych szyfrów może zostać złamana atakiem brute force, ale nakład potrzebnej do tego pracy – w stosunku do wysiłku włożonego w cały proces szyfrowania – może rosnąć wykładniczo wraz ze wzrostem długości klucza. W przypadku takich szyfrów wystarczające bezpieczeństwo mogłoby zostać osiągnięte, jeśliby udowodniono, że nakład pracy potrzebny do złamania szyfru jest poza zasięgiem potencjalnego przeciwnika albo wydatnie przekracza wartość chronionych szyfrem tajemnic. Należałoby więc pokazać, że nie istnieje efektywny, tj. będący przeciwieństwem zasobo- oraz czasochłonnej metody brute force, sposób złamania szyfru. Jak do tej pory jednak takich dowodów nie ma, co oznacza, że teoretycznie wyłącznym stuprocentowo bezpiecznym szyfrem jest one-time pad.

Istnieje wiele wielorakich ataków kryptologicznych oraz potrafią one być sklasyfikowane na parę sposobów. Wedle powszechnie przyjętego sposobu podziału, dzieli się je na podstawie wiedzy przeciwnika oraz jego możliwości działania:

  • W ataku typu ciphertext-only (atak ze znanym szyfrogramem) kryptoanalityk ma do dyspozycji zaledwie szyfrogram (dobre współczesne szyfry są odporne na tego rodzaju ataki).
  • W ataku zwanym known-plaintext (atak ze znanym tekstem jawnym) kryptoanalityk ma do dyspozycji tekst jawny oraz odpowiadający mu tekst zaszyfrowany (może to być jedna albo wiele takich par).
  • W ataku typu chosen-plaintext (atak z wybranym tekstem jawnym), kryptoanalityk może wybrać dowolny tekst jawny oraz poznać (także wielokrotnie) odpowiadający mu szyfrogram; w taki sposób postępowano dla przykładu w Bletchley Park w czasie drugiej wojny światowej prowokując przeciwnika do przesyłania kryptogramów o znanej treści (zob. gardening).
  • Jeszcze jednym atakiem jest chosen-ciphertext (atak z wybranym szyfrogramem), w przypadku którego kryptoanalityk może wybrać szyfrogram oraz zdobyć odpowiadający mu tekst jawny[9].
  • Równie istotnym aspektem są błędy w użyciu albo projekcie jednego z protokołów systemu kryptograficznego; przykładem może tu być złamanie Enigmy (zobacz też Biuro Szyfrów).

Kryptoanaliza szyfrów symetrycznych zwykle wymaga bardziej wyrafinowanego podejścia niż prymitywny atak siłowy. Dla przykładu dla szyfru DES metoda brute force wymaga znanego tekstu jawnego oraz 255 prób odkodowania, czyli około połowy wszystkich możliwych kluczy, aby szansa znalezienia poszukiwanego klucza była większa od jednej drugiej. Ten sam efekt może zostać osiągnięty przy użyciu kryptoanalizy liniowej oraz 243 znanych tekstów jawnych oraz około 243 operacji[21], co jest znaczącym ulepszeniem względem metody brute force.

Algorytmy z kluczem publicznym bazują na trudności obliczeniowej związanej z różnymi problemami. Szeroko wykorzystywanym jest problem faktoryzacji (algorytm RSA bazuje pomiędzy innymi na trudności rozwiązywania tego problemu) oraz problem logarytmu dyskretnego (na nim bazuje szyfr ElGamal). Duża cząstka kryptoanalizy szyfrów z kluczem publicznym koncentruje się na próbie znalezienia efektywnych algorytmów do rozwiązania wyżej wymienionych problemów obliczeniowych.

Przykładowo, najlepsze znane algorytmy służące do rozwiązania dylematu logarytmu dyskretnego w wersji opartej na krzywych eliptycznych są bardziej czasochłonne niż najlepsze znane algorytmy faktoryzacji – przynajmniej dla problemów o takiej samej, w przybliżeniu, skali. Aby zatem system oparty na faktoryzacji był odporny na ataki w stopniu porównywalnym do systemu bazującego na krzywych eliptycznych, trzeba w tym pierwszym użyć dłuższego klucza; te drugie, w związku z powyższym, zyskują na popularności od czasu ich odkrycia w połowie lat 90. XX wieku.

O ile czysta kryptoanaliza wykorzystuje ze słabości algorytmów szyfrujących, to inne ataki na kryptosystem wykorzystują także słabe strony związane z użyciem rzeczywistych urządzeń (ataki typu side-channel). Przykładowo, jeśli kryptoanalityk ma dostęp do pomiaru czasu potrzebnego na zakodowanie wiadomości, to możliwe jest uzyskanie pewnych informacji, które w odmienny sposób byłyby trudne do wydobycia (zob. timing attack). Adwersarz może także badać strukturę oraz długość wiadomości oraz w ten sposób uzyskać cenne wskazówki (zob. traffic analysis)[22].

Do dyspozycji przeciwnika są bez wątpienia także oraz inne środki, takie jak inżynieria społeczna czy inne sposoby pozyskania personelu obsługującego kryptosystem, w tym przekupstwo, wymuszenie, szantaż oraz szpiegostwo.

Algorytmiczne podstawy kryptografii

Duża cząstka teoretycznych prac w dziedzinie kryptografii dotyczy algorytmicznych podstaw kryptografii – algorytmów mających podstawowe, użyteczne w kryptografii właściwości – oraz ich związków z innymi problemami kryptograficznymi.

Przykładowo: funkcja jednokierunkowa to funkcja, której wartości łatwo obliczyć, trudno natomiast znaleźć wartości funkcji do niej odwrotnej. Nie wiadomo jednak, czy takie funkcje w ogóle są (gdyby istniały, byłoby wiadomo, że klasy problemów obliczeniowych P oraz NP są różne, a jest to jeden z nierozwiązanych problemów milenijnych)[8]. Za pomocą podstawowych elementów takich jak funkcje jednokierunkowe da się tworzyć bardziej złożone narzędzia; gdyby istniały funkcje jednokierunkowe, istniałyby także bezpieczne generatory liczb pseudolosowych oraz bezpieczne funkcje pseudolosowe[23].

Celowo złożoną funkcjonalność konkretnych rozwiązań użytkowych osiąga się, łącząc powyższe algorytmy z odpowiednimi, różnego rodzaju protokołami. Takie kombinacje dają w efekcie coś, z czym spotykają się poszczególni użytkownicy kryptografii, a mianowicie: kryptosystemy. Ich przykładami są: PGP w wielorakich wariantach, SSH, SSL/TLS, różnego rodzaju PKI, podpisy cyfrowe.

Do algorytmicznych podstaw kryptografii zalicza się wszystkie algorytmy służące do szyfrowania, permutacje jednokierunkowe (funkcje jednokierunkowe będące równocześnie permutacjami), funkcje – w tym permutacje – typu trapdoor (funkcje, których wartość jest łatwa do obliczenia, natomiast obliczenie wartości funkcji do nich odwrotnych wymaga (przynajmniej w założeniach) dodatkowej, specjalnej informacji, nazywanej trapdoor (w tłumaczeniu na polski słowo to oznacza wejście w formie klapy, zapadni)].

Protokoły kryptograficzne

Information icon.svg Osobny artykuł: Protokół kryptograficzny.

W wielu przypadkach mamy do czynienia z koniecznością tajnej wymiany informacji pomiędzy dwiema albo więcej stronami znajdującymi się w wielorakich miejscach (na przykład w wielorakich oddziałach firmy, w domu, w banku) albo w różnym czasie (na przykład wytworzenie kopii zapasowych zawierających poufne dane). Termin protokół kryptograficzny odnosi się do podobnych sytuacji.

Istnieją już protokoły kryptograficzne dla szerokiego spektrum problemów – w tym stosunkowo prostych, takich jak: dowód interaktywny[24], współdzielenie tajemnic[25][26] czy dowód z wiedzą zerową[27] – aż do dużo bardziej skomplikowanych, np.: pieniądz elektroniczny[28] oraz bezpieczne obliczenia wielopodmiotowe[29].

Jeśli zabezpieczenia dobrego systemu kryptograficznego zawodzą, sporadycznie okazuje się, że przyczyną była jakość zastosowanego algorytmu. Najczęściej wykorzystywanymi słabościami okazują się: błędy w projektowaniu protokołu (często spowodowane niewystarczającym wyszkoleniem twórców albo stosowaniem nieodpowiednich procedur), błędy w implementacji, błędy związane z przyjęciem mylnych założeń (na przykład o dobrym wyszkoleniu obsługi) albo inne, popełnione przez człowieka.

Wiele protokołów kryptograficznych było projektowanych oraz analizowanych metodami ad hoc; sporadycznie posiadają one dowody bezpieczeństwa. Metody formalnego analizowania bezpieczeństwa protokołów bazujące na logice matematycznej (zob. logika BAN), a ostatnio także innym podejściu nazywanym concrete security, są przedmiotem badań naukowych od kilku ostatnich dziesięcioleci[30][31][32]. Niestety, otrzymane w ich wyniku narzędzia są niepraktyczne oraz nie znalazły szerokiego zastosowania w skomplikowanych przypadkach.

Nauka o sposobach zastosowania kryptografii w praktyce jest odrębną dyscypliną wiedzy; zob. cryptographic engineering oraz inżynieria zabezpieczeń.

Uregulowania prawne dotyczące kryptografii

Zakazy

Kryptografia od dawna pozostawała w kręgu zainteresowań służb wywiadowczych oraz policyjnych. Z uwagi na fakt, że jest ona pomocna w utrzymywaniu prywatności, a ewentualne prawne jej ograniczenia wiążą się z umniejszeniem możliwości zachowania prywatności, kryptografia przyciąga też uwagę obrońców praw człowieka. Z uwagi na z powyższym, da się znaleźć we współczesnej historii kontrowersyjne przepisy prawne dotyczące kryptografii, szczególnie od momentu pojawienia się niedrogich komputerów, dzięki którym dostęp do kryptografii na zaawansowanym poziomie stał się powszechny.

W pewnych państwach nawet wewnątrzkrajowe użycie technik kryptograficznych podlega ograniczeniom. We Francji było ono w znacznym stopniu ograniczone do 1999 roku; w Chinach w dalszym ciągu wymagana jest licencja. Wśród krajów z najbardziej restrykcyjnymi uregulowaniami są: Białoruś, Kazachstan, Mongolia, Pakistan, Rosja, Singapur, Tunezja, Wenezuela oraz Wietnam[33].

W Stanach Zjednoczonych kryptografia w zastosowaniach wewnętrznych jest legalna, ale wokół uregulowań prawnych wiążących się z kryptografią było wiele konfliktów. Jedną ze szczególnie istotnych kwestii był eksport kryptografii, oprogramowania oraz urządzeń kryptograficznych. Z uwagi na znaczenie kryptoanalizy podczas II wojny światowej oraz prognoz, że kryptografia pozostanie istotna dla bezpieczeństwa narodowego, wiele państw zachodnich w pewnym momencie ustanowiło rygorystyczne rozwiązania prawne związane z eksportem technologii kryptograficznych. W Stanach Zjednoczonych po II wojnie światowej za nielegalne uznawane były sprzedaż albo rozpowszechnianie technologii szyfrujących poza granice państwa; szyfrowanie było traktowane jako uzbrojenie, tak jak czołgi czy broń jądrowa[34].

Przed nastaniem ery komputerów osobistych oraz Internetu było to rozwiązanie całkowicie nieproblematyczne; dla większości użytkowników różnica pomiędzy dobrą oraz złą kryptografią jest niedostrzegalna, a w owym czasie dodatkowo zdecydowana przeważajaca ilość ogólnie dostępnych technik kryptograficznych była powolna oraz podatna na błędy. Jednakże wraz z rozbudową sieci Internet oraz upowszechnieniem komputerów, techniki szyfrujące wysokiej jakości są dobrze znane na całym świecie. W rezultacie postępu technologicznego, kontrola eksportu zaczęła być postrzegana jako bariera dla handlu oraz nauki.

Ograniczenia eksportu

W latach 90. XX wieku w USA doszło do kilku prób sił odnośnie regulacji prawnych dotyczących kryptografii. Jedna z nich miała miejsce w związku z programem kodującym PGP (Pretty Good Privacy) Philipa Zimmermanna. Program ten, razem z kodem źródłowym, stał się wydany w USA oraz w czerwcu 1991 roku trafił do Internetu. Wskutek skargi złożonej przez RSA Security (występujące wówczas pod nazwą RSA Data Security Inc albo RSADSI), w sprawie Zimmermanna toczyło się kilkuletnie dochodzenie służb celnych oraz FBI; nie wniesiono jednak żadnego oskarżenia[35][36].

Podobnie Daniel J. Bernstein, wówczas student uniwersytetu w Berkeley, na podstawie prawa do wolności wypowiedzi, wytoczył sprawę amerykańskiemu rządowi, podważając parę przepisów w ograniczeniach w stosowaniu kryptografii; sprawa sądowa z 1995 roku – Bernstein przeciwko USA – zakończyła się w roku 1999 orzeczeniem sądu stwierdzającym, że wydrukowanie kodu źródłowego algorytmów oraz systemów kryptograficznych jest chronione prawem do wolności słowa zawartym w konstytucji USA[37].

W 1996 roku trzydzieści dziewięć krajów, w tym Polska, podpisało porozumienie Wassenaar (ang. The Wassenaar Arrangement on Export Controls for Conventional Arms and Dual-Use Goods and Technologies) – traktat o eksporcie uzbrojenia oraz technologii podwójnego zastosowania (czyli technologii mogących posiadać zastosowanie cywilne oraz wojskowe), w tym kryptografii. Uzgodniono, że technologie szyfrowania oparte na krótkich kluczach (56-bitowych dla szyfrów symetrycznych oraz 512-bitowych dla RSA) nie podlegają ograniczeniom eksportowym[38].

Eksport kryptografii ze Stanów Zjednoczonych, w konsekwencji znacznego złagodzenia prawa w roku 2000, jest aktualnie wydatnie mniej restrykcyjnie regulowany niż w przeszłości[33]; nie ma już wielu obostrzeń w zakresie długości kluczy stosowanych w popularnym oprogramowaniu importowanym z USA.

Dzięki temu, a także w konsekwencji faktu, iż prawie wszystkie komputery osobiste podłączone do Internetu, na całym świecie, zawierają oparte na amerykańskich kodach źródłowych przeglądarki jak Mozilla Firefox czy Microsoft Internet Explorer, prawie każdy użytkownik Internetu ma dostęp do wysokiej jakości kryptografii w swojej przeglądarce, np. w postaci dostatecznie długich kluczy, obrony się przed złośliwym oprogramowaniem, zastosowania bezpiecznych protokołów; przykładami bywają protokoły Transport Layer Security oraz SSL. Podobnie klienty e-mail, jak Mozilla Thunderbird czy Microsoft Outlook, potrafią łączyć się z serwerami poczty IMAP oraz POP poprzez TLS, a także wysyłać oraz przyjmować e-maile zaszyfrowane z użyciem S/MIME.

Wielu użytkowników Internetu nie wie nawet, że ich podstawowe programy zawierają tak zaawansowane kryptosystemy. Wymienione przeglądarki oraz programy pocztowe są tak wszechobecne, że nawet władza, która zmierzałaby do regulacji osobistego używania kryptografii, raczej nie uzna tego za praktyczne, a nawet gdyby takie prawo miało obowiązywać, jego skuteczna egzekucja byłaby wielokrotnie niemożliwa.

Rola NSA

Innym kontrowersyjnym zagadnieniem związanym z kryptografią w Stanach Zjednoczonych jest wpływ NSA (National Security Agency) – amerykańskiej Agencji Bezpieczeństwa Narodowego na zasady szyfrowania oraz jego rozwój.

NSA była zaangażowana w rozwój szyfru DES podczas jego konstruowania w IBM oraz rozważania przez NBS jako możliwy rządowy standard w kryptografii[39]. DES stał się tak zaprojektowany, aby oprzeć się kryptoanalizie różnicowej[40], skutecznej ogólnej technice kryptoanalitycznej znanej agencji NSA oraz firmie IBM, a która była przedstawiona do wiadomości publicznej dopiero wtedy, kiedy była odkryta na nowo w latach 80. XX wieku[41]. Wedle Stevena Levy'ego, IBM niezależnie od NSA wynalazł kryptoanalizę różnicową[42], ale zachował ją w tajemnicy na wniosek NSA. Technika ta stała się publicznie znana dopiero wtedy, kiedy E. Biham oraz A. Shamir odkryli ją parę lat później. Cała sprawa ilustruje trudność oceny, jakie zasoby oraz wiedzę może posiadać oponent chcący przeprowadzić atak.

Kolejnym przykładem uwikłania NSA była w 1993 roku sprawa układu Clipper – układu scalonego mającego być częścią przedsięwzięcia zmierzającego do kontrolowania kryptografii – rządowego projektu o nazwie Capstone. Clipper był szeroko krytykowany przez kryptologów z dwóch przyczyn: użyty szyfr był tajny (algorytm o nazwie Skipjack stał się odtajniony dopiero w roku 1998, długo po wygaśnięciu projektu), co prowokowało obawy, że NSA celowo uczynił go słabym, aby wspomóc działania wywiadowcze.

Cały projekt Capstone był także krytykowany albowiem łamał kryptograficzną zasadę Kerckhoffsa, która mówi, że kryptosystem powinien być bezpieczny, nawet jeśli szczegóły systemu, oprócz klucza, są publicznie znane – klucz używany przez wspomniany układ Clipper miał być deponowany przez administrację państwową oraz używany przez organy porządkowe np. do podsłuchu telefonicznego[36].

Digital Rights Management

Information icon.svg Osobny artykuł: Digital Rights Management.

Kryptografia stanowi podstawę cyfrowych systemów zarządzania uprawnieniami (DRM) – zespołu technik służących technologicznej kontroli użycia materiałów licencjonowanych – technik stosowanych na żądanie posiadaczy praw autorskich, a wdrażanych na szeroką skalę.

W 1998 prezydent Bill Clinton podpisał Digital Millennium Copyright Act (DMCA), ustawę penalizującą wytwarzanie, rozpowszechnianie oraz używanie poniektórych technik oraz technologii kryptograficznych (znanych w chwili podpisywania ustawy, ewentualnie wynalezionych w przyszłości), szczególnie takich, które bywają użyte w celu ominięcia schematów DRM (nawet kiedy nie zachodzi pogwałcenie praw autorskich)[43].

Prawo to od chwili jego uchwalenia miało w sobie potencjał bardzo poważnego wpływu na społeczność szukających nowych rozwiązań kryptologów, jako że w przypadku dowolnego odkrycia kryptoanalitycznego da się podnieść argument, że narusza ono - albo może naruszać - DMCA. FBI oraz Departament Sprawiedliwości USA postanowiły nie egzekwować prawa aż tak rygorystycznie, jak obawiali się niektórzy, jednakże prawo samo w sobie pozostaje kontrowersyjne.

Jeden z powszechnie szanowanych badaczy, Niels Ferguson, publicznie ujawnił, że nie zastosuje poniektórych wyników badań w konstrukcji procesorów Intel z obawy przed oskarżeniem na mocy aktu DMCA. Alan Cox (przez długi czas człowiek numer dwa jeśli chodzi o rozwój jądra systemu Linux) oraz profesor Edward Felten (wraz z częścią swoich studentów z Princeton) spotkali się z problemami związanymi z restrykcjami DMCA.

Dymitr Sklarow stał się podczas wizyty w USA aresztowany oraz osadzony na parę miesięcy w więzieniu za naruszenie DMCA, "naruszenie", które miało miejsce w Rosji, gdzie wykonywana przez niego praca była, także w czasie kiedy go aresztowano, legalna.

Podobne przepisy przyjęto po pewnym czasie w poniektórych innych państwach – dla przykładu w 2001 roku w krajach Unii Europejskiej, pod postacią EU Copyright Directive[44].

W 2007 roku odkryto oraz ujawniono w Internecie klucze kryptograficzne, za pomocą których kodowane były materiały na DVD oraz HD DVD. W przypadkach obu systemów zapisu, organizacja MPAA, walcząca w interesie amerykańskich producentów filmowych, wielokrotnie informowała o naruszaniu DMCA, co spotkało się masowym sprzeciwem internautów, którzy powoływali się na prawo do wolności wypowiedzi oraz zasadę fair use.

We wrześniu 2010 r. ujawniono w Internecie podstawowy klucz HDCP umożliwiający nielegalne kopiowanie materiałów[45]. Twórca klucza - Intel potwierdził autentyczność klucza[46].

Sprawdź też

Przypisy

  1. Bruce Schneier: Kryptografia dla praktyków: protokoły, algorytmy oraz programy źródłowe w języku C. Warszawa: Wydawnictwa Naukowo-Techniczne, 2002, s. 27-28. ISBN 83-204-2678-2. 
  2. Internetowa encyklopedia PWN kryptologia
  3. Eerdmans Commentary on the Bible, James D G Dunn, John W Rogerson, eds., Wm. B. Eerdmans Publishing, 2003, ISBN 0-8028-3711-5
  4. Kama Sutra, Sir Richard F. Burton, tłumaczenie, Część I, Rozdział III, Sztuka 44 oraz 45.
  5. 5,0 5,1 5,2 David Kahn, Łamacze kodów. Historia kryptologii, 2004, WNT, ISBN 83-204-2746-0.
  6. James Gannon, Stealing Secrets, Telling Lies: How Spies and Codebreakers Helped Shape the Twentieth Century, Washington, D.C., Brassey's, 2001, ISBN 1-57488-367-4.
  7. 7,0 7,1 7,2 Whitfield Diffie oraz Martin Hellman, "New Directions in Cryptography", IEEE Transactions on Information Theory, vol. IT-22, 1976, pp: 644-654. (pdf)
  8. 8,0 8,1 Oded Goldreich, Foundations of Cryptography, Volume 1: Basic Tools, Cambridge University Press, 2001, ISBN 0-521-79172-3
  9. 9,0 9,1 9,2 9,3 9,4 9,5 AJ Menezes, PC van Oorschot, and SA Vanstone, Handbook of Applied Cryptography ISBN 0-8493-8523-7.
  10. FIPS PUB 197: The official Advanced Encryption Standard.
  11. NCUA letter to credit unions, July 2004
  12. RFC 2440 – Open PGP Message Format
  13. SSH at windowsecurity.com by Pawel Golen, July 2004
  14. 14,0 14,1 Bruce Schneier, Applied Cryptography, 2nd edition, Wiley, 1996, ISBN 0-471-11709-9.
  15. Whitfield Diffie oraz Martin Hellman, "Multi-user cryptographic techniques" [Diffie oraz Hellman, AFIPS Proceedings 45, pp109-112, 8 czerwca 1976.
  16. Ralph Merkle pracował nad podobną koncepcją w tym samym czasie oraz Hellman sugerował, że używanym terminem powinien być kryptografia asymetryczna Diffiego-Hellmanana-Merkle'a.
  17. David Kahn, "Cryptology Goes Public", 58 Foreign Affairs 141, 151 (fall 1979), p. 153.
  18. R. Rivest, A. Shamir, L. Adleman. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, Vol. 21 (2), pp.120-126. 1978. Previously released as an MIT "Technical Memo" in April 1977, and published in Martin Gardner's Scientific American Mathematical Recreations column
  19. Clifford Cocks. A Note on 'Non-Secret Encryption', CESG Research Report, 20 November 1973.
  20. "Shannon": Claude Shannon oraz Warren Weaver, "The Mathematical Theory of Communication", University of Illinois Press, 1963, ISBN 0-252-72548-4
  21. Pascal Junod, "On the Complexity of Matsui's Attack", SAC 2001.
  22. Dawn Song, David Wagner, and Xuqing Tian, "Timing Analysis of Keystrokes and Timing Attacks on SSH", In Tenth USENIX Security Symposium, 2001.
  23. J. Håstad, R. Impagliazzo, L.A. Levin oraz M. Luby, "A Pseudorandom Generator From Any One-Way Function", SIAM J. Computing, vol. 28 num. 4, pp 1364-1396, 1999.
  24. László Babai. "Trading group theory for randomness". Proceedings of the Seventeenth Annual Symposium on the Theory of Computing, ACM, 1985.
  25. G. Blakley. "Safeguarding cryptographic keys." In Proceedings of AFIPS 1979, volume 48, pp. 313-317, June 1979.
  26. A. Shamir. "How to share a secret." In Communications of the ACM, volume 22, pp. 612-613, ACM, 1979.
  27. S. Goldwasser, S. Micali, oraz C. Rackoff, "The Knowledge Complexity of Interactive Proof Systems", SIAM J. Computing, vol. 18, num. 1, pp. 186-208, 1989.
  28. S. Brands, "Untraceable Off-line Cash in Wallets with Observers", In Advances in Cryptology – Proceedings of CRYPTO, Springer-Verlag, 1994.
  29. R. Canetti, "Universally composable security: a new paradigm for cryptographic protocols", In Proceedings of the 42nd annual Symposium on the Foundations of Computer Science (FOCS), pp. 136-154, IEEE, 2001.
  30. D. Dolev oraz A. Yao, "On the security of public key protocols", IEEE transactions on information theory, vol. 29 num. 2, pp. 198-208, IEEE, 1983.
  31. M. Abadi oraz P. Rogaway, "Reconciling two views of cryptography (the computational soundness of formal encryption)." In IFIP International Conference on Theoretical Computer Science (IFIP TCS 2000), Springer-Verlag, 2000.
  32. D. Song, "Athena, an automatic checker for security protocol analysis", In Proceedings of the 12th IEEE Computer Security Foundations Workshop (CSFW), IEEE, 1999.
  33. 33,0 33,1 RSA Laboratories' Frequently Asked Questions About Today's Cryptography
  34. Cryptography & Speech from Cyberlaw
  35. "Case Closed on Zimmermann PGP Investigation", press note from the IEEE
  36. 36,0 36,1 "Crypto: How the Code Rebels Beat the Government – Saving Privacy in the Digital Age. Penguin Books, 2001, s. 56. ISBN 0-14-024432-8. 
  37. Bernstein v USDOJ, 9th Circuit court of appeals decision.
  38. The Wassenaar Arrangement on Export Controls for Conventional Arms and Dual-Use Goods and Technologies
  39. "The Data Encryption Standard (DES)" from Bruce Schneier's CryptoGram newsletter, 15 czerwca 2000
  40. D. Coppersmith. nullportal.acm.org/citation.cfm?id=185915. „IBM Journal of Research and Development”. 38. 3, s. 243, maj 1994. 
  41. E. Biham oraz A. Shamir, "Differential cryptanalysis of DES-like cryptosystems", Journal of Cryptology, vol. 4 num. 1, pp. 3-72, Springer-Verlag, 1991.
  42. Levy, pg. 56
  43. Digital Millennium Copyright Act
  44. EU Copyright Directive
  45. Wyciekł podstawowy klucz HDCP - dobreprogramy
  46. Intel potwierdza: opublikowany klucz HDCP jest autentyczny - dobreprogramy

Dalsza lektura

  • Sekrety kryptografii, Friedrich L. Bauer, ISBN 83-7197-960-6.
  • Kryptografia dla praktyków. Protokoły, algorytmy oraz programy źródłowe w języku C., Bruce Schneier, ISBN 83-204-2678-2
  • Kryptografia w praktyce, Bruce Schneier, Niels Ferguson, ISBN 83-7361-211-4.
  • Łamacze kodów. Historia kryptologii, David Kahn, ISBN 83-204-2746-0.
  • Księga szyfrów, Simon Singh.
  • Bezpieczeństwo danych w systemach informatycznych, J.Stokłosa, T.Bilski oraz T.Pankowski.
  • Kryptografia: teoria oraz praktyka zabezpieczania systemów komputerowych Mirosław Kutyłowski oraz Willy-B. Strothmann, ISBN 83-7147-092-4.
  • Kryptologia. Budowa oraz łamanie zabezpieczeń, Reinhardt Wobst.
  • Algebraiczne aspekty kryptografii, N. Koblitz, ISBN 83-204-2418-6.
  • Kryptografia oraz ochrona danych, D. Robling-Denning, ISBN 83-204-1480-6.
  • Kryptografia. W teorii oraz w praktyce, Douglas R. Stinson, ISBN 83-204-2982-X.
  • Handbook of Applied Cryptography A. J. Menezes, P. C. van Oorschot oraz S. A. Vanstone CRC Press, (książka, w formacie PDF, dostępna bezpłatnie do użytku domowego).
  • Crypto Glossary and Dictionary of Technical Cryptography Crypto Glossary and Dictionary of Technical Cryptography (po angielsku)

www.csharp.katalog2011.elk.pl | armatura przemysłowal | zapisy na kolonie letnie 2012 | Kody pocztowe | rośliny zielone i iglaki pielęgnacja i wegetacja