Szyfr z kluczem jednorazowym

Z Wikipedii, wolnej encyklopedii
Przejdź do nawigacji Przejdź do wyszukiwania

Szyfr z kluczem jednorazowym (ang. one-time pad) – szyfr zaproponowany w 1917 roku przez Gilberta Vernama, którego, przy poprawnym wykorzystaniu, nie można złamać. Szyfr z kluczem jednorazowym jest dużym zbiorem o niepowtarzalnych i przypadkowych sekwencjach znaków. W pierwotnej postaci była to jednorazowa taśma perforowana do dalekopisu. Nadawca używa każdej litery z tego zbioru do zaszyfrowania jednego znaku tekstu jawnego. Szyfrowanie to dodanie modulo 26 jednego znaku tekstu jawnego i znaku jednorazowego klucza.

Arytmetyka modularna, arytmetyka reszt – w matematyce system liczb całkowitych, w którym liczby „zawijają się” po osiągnięciu pewnej wartości nazywanej modułem, często określanej terminem modulo (skracane mod). Pierwszy pełny wykład arytmetyki reszt przedstawił Carl Friedrich Gauss w Disquisitiones Arithmeticae („Badania arytmetyczne”, 1801).Stany Zjednoczone, Stany Zjednoczone Ameryki (ang. United States, US, United States of America, USA) – federacyjne państwo w Ameryce Północnej graniczące z Kanadą od północy, Meksykiem od południa, Oceanem Spokojnym od zachodu, Oceanem Arktycznym od północnego zachodu i Oceanem Atlantyckim od wschodu.

Metoda Vernama zapewniała prawie doskonałe zabezpieczenie treści przekazu, ale wymagała użycia dalekopisu lub maszyny szyfrującej. Trzej kryptolodzy pracujący dla niemieckiego Ministerstwa Spraw Zagranicznych – Werner Kuntze, Rudolf Schauffler i Erich Langlotz – przekształcili metodę Vernama do postaci praktyczniejszych w użyciu tzw. jednorazowych bloczków szyfrowych. Były to łączone w 50-stronicowe bloki tablice, z których każda zawierała po 48 pięciocyfrowych grup. Cyfry we wszystkich grupach na jednej stronie były zapisane w sposób zupełnie przypadkowy, bez powtórzenia żadnej z grup. Podobnie żadna strona nie była duplikatem innej. Po przekształceniu tekstu jawnego depeszy w ciąg cyfr szyfrant według ustalonego systemu wybierał określoną stronę z bloku i wykorzystywał grupy cyfr jako klucz do zaszyfrowania depeszy dodając (modulo 10) cyfry klucza i te powstałe z przekształcenia tekstu jawnego. Odbiorca, dysponując identycznym blokiem odwracał proces szyfrowania. W latach 1921–1923 takie bloki wprowadzono do użytku w niemieckiej korespondencji dyplomatycznej. Potem metoda ta stała się najpowszechniej stosowanym sposobem szyfrowania w sytuacjach, kiedy nie było możliwości użycia maszyn szyfrujących.

Twierdzenie o dzieleniu z resztą – twierdzenie matematyczne mówiące o możliwości przedstawienia danej liczby całkowitej, dzielnej, w postaci sumy iloczynu ilorazu przez (niezerowy) dzielnik oraz reszty. Innymi słowy twierdzenie mówi, ile razy (iloraz) dana liczba (dzielnik) mieści się w całości w innej (dzielna) oraz jaka część (reszta) tej liczby nie została wydzielona. Stosuje się także skróconą wersję nazwy: twierdzenie o dzieleniu.Próba Bernoulliego - eksperyment losowy z dwoma możliwymi wynikami, określanymi zazwyczaj jako sukces oraz porażka. Za przykłady prób Bernoulliego matematycy uważają:

Istniała również wersja jednorazowych bloczków szyfrowych, w której losowe grupy składały się z liter. Używanie tej wersji było bardziej skomplikowane: trzeba było (według ustalonej reguły) zamienić litery tekstu jawnego i litery jednorazowego klucza na dwucyfrowe liczby, a następnie dodać je do siebie (modulo 26). Otrzymane liczby z powrotem przekształcano w litery.

Kodowanie – w kryptografii jest metodą przeobrażenia jawnej formy wiadomości w formę ukrytą w celu uniemożliwienia dostępu do przekazywanych informacji osobom niepowołanym. Zwykle do tego celu używana jest książka kodowa zawierająca listę powszechnych słów lub wyrażeń wraz z odpowiadającymi im słowami kodowymi. Zakodowaną wiadomość określa się czasami mianem tekstu kodowego, podczas gdy pierwotną wiadomość nazywa się zazwyczaj tekstem jawnym.Taśmy dziurkowane (perforowane), znane od połowy XIX wieku, używano jako nośnik do zapisywania danych. Były do tego celu również stosowane obok kart dziurkowanych w pierwszych komputerach. Z czasem zostały zastąpione przez bardziej pojemne media np. taśmy magnetyczne.

Oryginalny szyfr Vernama[ | edytuj kod]

W 1917 Vernam skonstruował urządzenie do łączności telegraficznej korzystającej z 32-znakowego kodu Baudota. Każdy znak kodu jest kombinacją pięciu sygnałów lub ich braku, co odpowiada bitom 1 i 0 w komputerach. Niepowtarzalny, losowy ciąg znaków klucza jest wyperforowany na taśmie papierowej i każdy bit tekstu jawnego jest dodawany modulo 2 do kolejnego bitu klucza.

Klucz – w kryptografii informacja umożliwiająca wykonywanie pewnej czynności kryptograficznej – szyfrowania, deszyfrowania, podpisywania, weryfikacji podpisu itp.Prawdopodobieństwo – ogólne określenie jednego z wielu pojęć służących modelowaniu doświadczenia losowego poprzez przypisanie poszczególnym zdarzeniom losowym liczb, zwykle z przedziału jednostkowego (w zastosowaniach często wyrażanych procentowo), wskazujących szanse ich zajścia. W rozumieniu potocznym wyraz „prawdopodobieństwo” odnosi się do oczekiwania względem rezultatu zdarzenia, którego wynik nie jest znany (niezależnie od tego, czy jest ono w jakimś sensie zdeterminowane, miało miejsce w przeszłości, czy dopiero się wydarzy); w ogólności należy je rozumieć jako pewną miarę nieprzewidywalności.

Polega na tym, że każdy bit wiadomości dodajemy modulo 2 (funkcja XOR) z bitem pochodzącym z idealnego generatora losowego Taki generator można traktować jako ciąg losowy doświadczeń Bernoulliego z prawdopodobieństwem (np. rzut symetryczną monetą). Szyfrogram odczytujemy w analogiczny sposób, wykorzystując ciąg bitów wygenerowany przy szyfrowaniu:

Algorytm siłowy, algorytm brute force (ang. "brutalna siła" tj. niewspomagana umysłem) – określenie algorytmu, który opiera się na sukcesywnym sprawdzeniu wszystkich możliwych kombinacji w poszukiwaniu rozwiązania problemu, zamiast skupiać się na jego szczegółowej analizie.Kod Baudot (od nazwiska jego wynalazcy Émile Baudot) - zestaw znaków używanych w dalekopisach, pierwowzór kodów EBCDIC oraz ASCII.

Na podstawie twierdzenia: jeżeli dwie zmienne losowe i są niezależne i ma rozkład jednostajny nad to ma rozkład jednostajny nad otrzymujemy wiadomość zaszyfrowaną. Idealność szyfru polega na tym, że wnioskowanie o następnym bicie szyfrogramu możliwe jest jedynie z prawdopodobieństwem równym Innymi słowy nie ma żadnej metody, która pozwoliłaby powiększyć szansę zgadnięcia następnego bitu szyfrogramu nad ślepy traf.

Szyfr (inaczej kryptograficzny algorytm szyfrujący) – jest to funkcja matematyczna wykorzystywana do szyfrowania tekstu jawnego lub jego deszyfrowania. Zazwyczaj jedna funkcja wykorzystywana jest do szyfrowania, a inna do deszyfrowania wiadomości. Wiadomość przed zaszyfrowaniem nazywana jest tekstem jawnym, zaś wiadomość zaszyfrowaną nazywamy szyfrogramem. Proces zamiany tekstu jawnego na szyfrogram nazywamy szyfrowaniem.Zmienna losowa – funkcja przypisująca zdarzeniom elementarnym liczby. Intuicyjnie: odwzorowanie przenoszące badania prawdopodobieństwa z niewygodnej przestrzeni probabilistycznej do dobrze znanej przestrzeni euklidesowej. Zmienne losowe to funkcje mierzalne względem przestrzeni probabilistycznych.

Przykład[ | edytuj kod]

Załóżmy, że:

  • Ciąg bitów tekstu jawnego:
  • Ciąg bitów klucza:
  • Wtedy szyfr Vernama generuje ciąg bitów kryptogramu gdzie dla

    Dalekopis to telegraficzny aparat drukujący, służący do przekazywania informacji w postaci alfanumerycznej. W szczególności jest on wykorzystywany jako abonenckie urządzenie końcowe (terminal) do realizacji usług teleksowych.Dane binarne (ang.) binary data – dane zapisane lub przesyłane w postaci takiej jak są reprezentowane w systemie komputerowym, w przeciwieństwie do danych przesyłanych z użyciem systemów kodowania znaków np. alfanumerycznie. Dane binarne zazwyczaj zajmują mniej miejsca niż dane zapisane alfanumerycznie.
  • Litera tekstu jawnego A (11000 w kodzie Baudota)
  • Litera klucza D (10010 w kodzie Baudota)
  • Szyfrowanie polega na dodaniu litery tekstu jawnego do litery klucza

    Moneta – przeważnie metalowy znak pieniężny, o określonej formie, opatrzony znakiem emitenta. Emitent gwarantował umowną wartość monety. Pierwotnie wartość ta zbliżona była do rynkowej wartości kruszców zawartych w monecie.Generator liczb losowych (ang. random number generator; czasem nazywany generatorem zdarzeń losowych (REG - Random Event Generator) lub generatorem przypadków) - program komputerowy lub układ elektroniczny, generujący stacjonarny i ergodyczny, losowy ciąg elementów binarnych, zorganizowanych zwykle jako ciąg liczb losowych. Generator liczb losowych jest urządzeniem, które nie produkuje przypadkowych liczb, lecz stany, które wyrażane są później jako liczby, stąd też określane są często poprawniejszą nazwą "generatora zdarzeń losowych" (REG - Random Event Generator).


    Podstrony: 1 [2] [3] [4]




    Warto wiedzieć że... beta

    Bit (w ang. kawałek, skrót od binary digit, czyli cyfra dwójkowa) – najmniejsza ilość informacji potrzebna do określenia, który z dwóch równie prawdopodobnych stanów przyjął układ. Jednostka logiczna.

    Reklama