DZWONEK

Są tacy, którzy czytają te wiadomości przed tobą.
Subskrybuj, aby otrzymywać świeże artykuły.
E-mail
Imię
Nazwisko
Jak chcesz przeczytać Dzwon
Bez spamu

Semantyka  (fr. sémantique z innych greckich. σημαντικός - denoting) - nauka rozumienia pewnych znaków, sekwencji symboli i innych symboli. Ta nauka jest wykorzystywana w wielu branżach: językoznawstwo, proksemika, pragmatyka, etymologia itp. Nie mogę sobie wyobrazić, co oznaczają te słowa i co robią te wszystkie nauki. I to nie ma znaczenia, interesuje mnie kwestia użycia semantyki w układzie strony.

Notatka

Nie będę dotykać terminu Sieć semantyczna. Na pierwszy rzut oka może się wydawać, że tematy Semantic Web i semantycznego kodu HTML są prawie takie same. Ale tak naprawdę koncepcja sieci semantycznej, dość filozoficzna i obecna rzeczywistość, nie ma wiele wspólnego.

Układ semantyczny - co to jest?

W języku każde słowo ma określone znaczenie, cel. Kiedy mówisz „kiełbasa”, masz na myśli produkt spożywczy, którym jest mięso mielone (zwykle mięso) w podłużnej skorupce. Krótko mówiąc, masz na myśli kiełbasę, a nie mleko lub zielony groszek.

HTML jest także językiem, jego „słowa”, zwane znacznikami, mają również pewne logiczne znaczenie i cel. W tym przede wszystkim semantyczny kod HTML to układ z prawidłowym użyciem znaczników HTML, wykorzystując je zgodnie z ich przeznaczeniem, ponieważ zostały opracowane przez programistów języka HTML i standardów internetowych.

microformats.org to społeczność, która działa na rzecz realizacji idealistycznych idei Semantic Web, przybliżając układ strony do tych semantycznych ideałów.

Dlaczego i kto w ogóle potrzebuje układu semantycznego?

Jeśli informacje na mojej stronie są wyświetlane tak jak w projekcie, dlaczego miałbym nadal łamać sobie głowę i myśleć o jakiejś semantyce ?! To dodatkowa praca! Kto tego potrzebuje? Kto to doceni, z wyjątkiem innego składu?

Często słyszałem takie pytania. Wymyślmy to.

Semantyczny HTML dla twórców stron internetowych

Kod semantyczny dla użytkowników

Zwiększa dostępność informacji na stronie. Przede wszystkim ma to znaczenie dla agentów alternatywnych, takich jak:

  • kod semantyczny wpływa bezpośrednio na objętość kodu HTML. Mniejszy kod -\u003e lżejszy niż strona -\u003e szybsze ładowanie, mniej pamięci RAM po stronie użytkownika, mniejszy ruch, mniejszy rozmiar bazy danych. Strona staje się szybsza i tańsza.
  • przeglądarki głosowe  dla których tagi i ich atrybuty są ważne dla poprawnego wymowy treści i właściwej intonacji lub odwrotnie, żeby nie powiedzieć zbyt wiele.
  • urządzenia mobilne  które nie w pełni obsługują CSS i dlatego koncentrują się głównie na kodzie HTML, wyświetlając go na ekranie zgodnie z użytymi tagami.
  • urządzenia drukujące  nawet bez dodatkowego CSS będą drukować informacje lepiej (bliżej projektu), a stworzenie idealnej wersji do drukowania zamieni się w kilka łatwych manipulacji z CSS.
  • ponadto istnieją urządzenia i wtyczki, które pozwalają szybko poruszać się po dokumencie - na przykład nagłówki Opery.

Semantyczny HTML dla maszyn

Wyszukiwarki stale ulepszają metody wyszukiwania, aby wyniki zawierały informacje, które naprawdę wyglądam  użytkownik. Semantyczny HTML przyczynia się do tego, ponieważ nadaje się do znacznie lepszej analizy - kod jest bardziej przejrzysty, kod jest logiczny (wyraźnie widać gdzie nagłówki, gdzie nawigacja, gdzie treść).

Dobra zawartość plus wysokiej jakości układ semantyczny - jest to poważna aplikacja dobre pozycje w wynikach wyszukiwania.

Projektanci i programiści stron internetowych lubią rzucać żargon i zawstydzać frazy, które czasami są dla nas trudne do zrozumienia. W tym artykule skupimy się na kodzie semantycznym. Zobaczmy co to jest!

Co to jest kod semantyczny?

Nawet jeśli nie jesteś projektantem stron internetowych, prawdopodobnie wiesz, że Twoja witryna została napisana w języku HTML. HTML był pierwotnie przeznaczony do opisywania zawartości dokumentu, a nie jako sposób na uatrakcyjnienie wyglądu. Kod semantyczny wraca do tej oryginalnej koncepcji i zachęca projektantów stron internetowych do pisania kodu, który opisuje treść, a nie jej wygląd. Na przykład tytuł strony można zaprogramować w następujący sposób:

To jest tytuł strony.

Dzięki temu tytuł byłby duży i pogrubiony, nadając mu wygląd tytułu strony, ale nie ma w nim nic, co by opisywało go jako „tytuł” \u200b\u200bw kodzie. Oznacza to, że komputer nie może określić tego jako tytułu strony.

Podczas semantycznego wpisywania nazwy, aby komputer mógł rozpoznać ją jako „nagłówek”, musimy użyć następującego kodu:

To jest tytuł.

Wygląd nagłówka można zdefiniować w osobnym pliku o nazwie „kaskadowe arkusze stylów” (CSS), bez ingerencji w opisowy (semantyczny) kod HTML.

Dlaczego kod semantyczny jest ważny?

Zdolność komputera do prawidłowego rozpoznawania treści jest ważna z kilku powodów:

  • Wiele osób niedowidzących korzysta z przeglądarek mowy do czytania stron. Takie programy nie będą w stanie dokładnie zinterpretować stron, jeśli nie zostaną jasno wyjaśnione. Innymi słowy, kod semantyczny służy jako środek dostępu.
  • Wyszukiwarki muszą zrozumieć, o czym są Twoje treści, aby poprawnie pozycjonować Cię w wyszukiwarkach. Kod semantyczny ma reputację ulepszania miejsc docelowych w wyszukiwarkach, ponieważ jest łatwy do zrozumienia przez „roboty wyszukiwania”.

Kod semantyczny ma również inne zalety:

  • Jak widać z powyższego przykładu, kod semantyczny jest krótszy, a ładowanie szybsze.
  • Kod semantyczny ułatwia aktualizację witryny, ponieważ można stosować style do nagłówków w całej witrynie, a nie strona po stronie.
  • Kod semantyczny jest łatwy do zrozumienia, dlatego jeśli nowy projektant stron internetowych przejmie ten kod, łatwo będzie go przeanalizować.
  • Ponieważ kod semantyczny nie zawiera elementów projektu, możesz zmienić wygląd witryny bez przekodowywania całego kodu HTML.
  • Ponownie, ponieważ projekt jest przeprowadzany osobno od treści, kod semantyczny pozwala każdemu dodawać lub edytować strony bez potrzeby dbania o projekt. Po prostu opisujesz zawartość, a CSS określa jej wygląd.

Jak upewnić się, że strona internetowa używa kodu semantycznego?

Obecnie nie ma narzędzia, które może sprawdzić kod semantyczny. Wszystko sprowadza się do sprawdzania kolorów, czcionek lub układów w kodzie, zamiast opisywania zawartości. Jeśli analiza kodu brzmi przerażająco, to świetnym punktem wyjścia byłoby pytanie dla projektanta stron internetowych - czy koduje on według semantyki? Jeśli spojrzy na ciebie głupio lub zacznie śmiesznie mówić, możesz być pewien, że nie koduje w ten sposób. W tym momencie musisz zdecydować, czy dać mu nowy kierunek w swojej pracy, czy też znajdziesz nowego projektanta ?!

MATEMATYKA

Vestn. Om. nie-to. 2016. Nr 3. S. 7-9.

UDC 512.4 V.A. Romankov

OPCJA SZYBKIEGO SZYBKIEGO SZYFROWANIA NA PODSTAWIE RSA *

Głównym celem artykułu jest zaproponowanie innego sposobu wyboru jednego z głównych parametrów schematu szyfrowania opartego na systemie kryptograficznym RSA, zaproponowanego przez autora we wcześniejszych pracach. Oryginalna wersja opiera się na złożoności obliczeniowej określania kolejności elementów w multiplikatywnych grupach pierścieni modułowych. Proponowana metoda zmienia tę podstawę na inne trudne zadanie ustalenia, czy elementy multiplikatywnych grup pierścieni modułowych należą do potęg tych grup. Szczególnym przypadkiem takiego problemu jest klasyczny problem określania kwadratowości pozostałości, który uważa się za trudny obliczeniowo. To zadanie określa siłę semantyczną znanego systemu szyfrowania Goldwasser-Mikali. W proponowanej wersji siła semantyczna schematu szyfrowania opiera się na złożoności obliczeniowej problemu ustalenia, czy elementy multiplikatywnych grup pierścieni modularnych należą do mocy tych grup.

Słowa kluczowe: system kryptograficzny RSA, szyfrowanie kluczem publicznym, pierścień modułowy, pozostałość kwadratowa, siła semantyczna.

1. Wstęp

Celem tej pracy jest wprowadzenie nowych elementów do schematu szyfrowania opartego na RSA wprowadzonego przez autora w. Mianowicie: proponowana jest inna metoda określania podgrup biorących udział w tym schemacie. Ta metoda prowadzi do zastąpienia leżącego u podstaw obliczeniowego złożonego problemu określania rzędów elementów multiplikatywnych grup pierścieni modułowych trudnym obliczeniowo problemem wejścia w dane moce tych grup. Szczególnym przypadkiem tego ostatniego problemu jest klasyczny problem wyznaczania kwadratowej reszty elementu multiplikatywnej grupy pierścienia modułowego.

System szyfrowania klucza publicznego RSA został wprowadzony do obrotu przez Rivest, Shamir i Adleman w 1977 roku. Jest szeroko stosowany na całym świecie i jest zawarty w prawie wszystkich podręcznikach kryptografii. Jeśli chodzi o ten system i jego siłę kryptograficzną, patrz na przykład.

Podstawowa wersja systemu jest deterministyczna i z tego powodu nie ma właściwości tajemnicy semantycznej, najważniejszego wskaźnika siły kryptograficznej systemu szyfrowania klucza publicznego. Dlatego w praktyce stosuje się warianty systemu, których celem jest wprowadzenie do niego elementu probabilistycznego, a tym samym zapewnienie, że właściwość tajemnicy semantycznej jest spełniona.

Instalacja: platforma szyfrująca

Niech n będzie iloczynem dwóch dużych odrębnych liczb pierwszych p i q. Jako platforma dla systemu szyfrowania wybierany jest pierścień pozostałości Zn. Moduł n i platforma Zn są otwartymi elementami systemu, liczby p i q są tajne.

* Badanie było wspierane przez Rosyjską Fundację Badań Podstawowych (projekt 15-41-04312).

© Romankov V.A., 2016

Romankov V.A.

Przez φ: N ^ N oznaczamy funkcję Eulera, w tym przypadku przyjmując wartość φ (n) \u003d (p-1) (q-1). Zatem kolejność multiplikatywnej grupy Z * n w pierścieniu Zn wynosi (p-1) (q-1). Odnośnie tych pojęć zobacz na przykład.

Następnie wybiera się odpowiednio dwie podgrupy M i H grupy Z * n okresów kopiowania r i t. Proponuje się zdefiniowanie tych podgrup poprzez ich elementy generujące M \u003d gr (g1, ..., gk), H \u003d gr (g1, ..., hl). Przypomnijmy, że okres t (G) w grupie G jest najmniejszą liczbą t taką, że g \u003d 1 dla dowolnego elementu geG. Okres w grupie Z * n jest liczbą t (n), równą najmniejszej wspólnej wielokrotności liczb p-1 i q-1. Podgrupy M i H mogą być cykliczne i mogą być zdefiniowane przez pojedynczy element generujący. Elementy generujące podgrupy M i H są uważane za otwarte, podczas gdy okresy podgrup r i t są tajne.

W i wyjaśniono, jak skutecznie dokonać wskazanego wyboru podgrup M i H, znając tajne parametry p i q. Co więcej, możemy najpierw określić r i t, a następnie wybrać p i q, a dopiero potem wykonać dalsze działania. Zwróć uwagę, że konstrukcja elementów danych zleceń w skończonych polach odbywa się na przykład zgodnie ze standardową opisaną efektywną procedurą. Przejście do konstrukcji elementów danych rzędów w multiplikatywnych grupach Z * n pierścieni modułowych Zn odbywa się w oczywisty sposób przy użyciu twierdzenia o chińskiej reszcie lub. Instalacja: wybór kluczy Klucz szyfrowania e - dowolny koprime dodatniej liczby całkowitej do g. Klucz deszyfrowania d \u003d ^ jest obliczany na podstawie równości

(te) d1 \u003d 1 (modr). (1)

Klucz d istnieje, ponieważ parametr d1 jest obliczany ze względu na wzajemną prostotę te i r. Klucz e jest publiczny, klucz d i parametr d1 są tajne.

Algorytm szyfrowania Aby przesłać przez otwartą sieć wiadomość - m elementów podgrupy M, Alicja wybiera losowy element h podgrupy H i oblicza element hm. Transmisja ma formę

c \u003d (hm) e (modn). (2)

Algorytm deszyfrowania

Bob odszyfrowuje otrzymaną wiadomość c w następujący sposób:

cd \u003d m (modn). (3)

Objaśnienie deszyfrowania

Ponieważ ed \u003d 1 (modr), istnieje liczba całkowita k taka, że \u200b\u200bed \u003d 1 + rk. Następnie

cd \u003d (hm) ed \u003d (ht) edi m (mr) k \u003d m (mod n). (4) Tak więc element h jest zapisywany jako element podgrupy H w postaci wartości słowa grupowego u (x1,., Xl) z elementów generujących h1t ..., hl podgrupy H. W rzeczywistości

wybieramy słowo u (x1,., xl), a następnie obliczamy jego wartość h \u003d u (h1t ..., hl). W szczególności oznacza to, że elementy generujące h1t ..., hl są otwarte.

Odporność kryptograficzna obwodu

Siła kryptograficzna schematu polega na trudności w określeniu na podstawie danych generatorów podgrupy H grupy Z * n okresu lub kolejności tej podgrupy. Jeśli porządek elementów można obliczyć za pomocą wydajnego algorytmu, to zliczając rzędy (h1), ..., ord (hl) elementów generujących podgrupę H, możemy znaleźć jego okres t \u003d t (H) równy ich najmniejszej wspólnej wielokrotności . Umożliwiłoby to usunięcie współczynnika zacienienia h z danej opcji szyfrowania poprzez konwersję c1 \u003d met (modri), redukując procedurę deszyfrowania do klasycznego systemu RSA z kluczem publicznym szyfrowania i in.

3. Inny sposób zdefiniowania podgrupy H

W tym artykule proponujemy inną opcję definiowania podgrupy H w rozważanym schemacie szyfrowania. Po pierwsze, rozważamy jego szczególny przypadek związany z rozpoznanym nierozwiązywalnym problemem określania kwadratowej reszty grupy Z * n. Przypomnij sobie, że reszta aeZ ^ jest nazywana kwadratową, jeśli istnieje element xeZ * n taki, że x2 \u003d a (modn). Wszystkie reszty kwadratowe tworzą podgrupę QZ * n z grupy Z * n. Problem określania kwadratowości arbitralnej reszty grupy jest uważany za nierozpuszczalny obliczeniowo. Dobrze znany semantycznie silny system szyfrowania Goldwasser-Mikali opiera się na tej właściwości. Jego stabilność semantyczna jest całkowicie zdeterminowana przez trudność z określeniem kwadratu pozostałości.

Załóżmy, że parametry p i q są wybrane z warunkiem p, q \u003d 3 (mod 4), tj. P \u003d 4k +3, q \u003d 41 +3. Na schematach związanych z kwadratowym charakterem pozostałości założenie to wygląda naturalnie i występuje dość często. Jeśli jest spełniony, mapowanie p: QZ * n ^ QZ * n, p: x ^ x2, jest bijectją.

Podgrupa kwadratowych reszt grupy QZ * n ma indeks 4 * w Z * n; patrz na przykład. Jego kolejność σ (^^ 2 ^) jest równa φ (n) / 4 \u003d (4k + 2) (41 + 2) / 4 \u003d 4kl + 2k + 21 + 1, tzn. Jest liczbą nieparzystą.

Zakładamy w powyższym schemacie szyfrowania H \u003d QZ * n. Każdy element podgrupy H ma nieparzysty porządek, ponieważ okres t (Z * n), równy najmniejszej wspólnej wielokrotności p - 1 \u003d 4k +2 i q - 1 \u003d 41 + 2, jest podzielny przez 2, ale nie podzielny przez 4. Maksymalnie możliwym wyborem dla M jest podgrupa rzędu 4, której elementy mają parzyste rzędy 2 lub 4. Jeśli istnieje skuteczny sposób obliczenia kolejności (lub przynajmniej jej parzystości) dowolnego elementu

Semantycznie silna opcja szyfrowania oparta na RSA

grupy 2 * n, to problem rozwiązywania kwadratowości pozostałości jest również skutecznie rozwiązany. Wadą tego wyboru jest niska moc przestrzeni tekstowej podgrupy M. W rzeczywistości schemat ten powiela już wspomniany dobrze znany schemat Gol-dvisser-Mikali.

Otrzymujemy świetne możliwości przy kolejnym wyborze. Bądźmy liczbą pierwszą, którą można uznać za wystarczająco dużą. Niech p i q będą liczbami takimi, że co najmniej jedna z liczb p - 1 lub q - 1 jest podzielna przez s. W i wyjaśniono, że można wybrać s, a następnie skutecznie znaleźć p lub q za pomocą tej właściwości. Powiedzmy, że liczba p jest szukana w postaci 2sx + 1. X zmienia się i sprawdzana jest prostota wynikowego p, aż okaże się, że jest proste.

Definiujemy podgrupę \u003d \u003d składającą się ze stopni s elementów grupy 2 * n (dla s \u003d 2 jest to podgrupa QZ * n). Jeśli p \u003d 52k + su + 1 i q \u003d 521 + sv + 1 (lub q \u003d sl + V + 1), gdzie liczby u i V nie są podzielne przez s, to kolejność σ ^ () podgrupy име z grupy 2 * n indeks b2 (lub indeks s, jeśli q \u003d sl + V + 1), jest równy B2k1 + Bku + b1n + w\u003e. To zamówienie jest chronione prawem autorskim przez s. W szczególności oznacza to, że elementy podgrupy имеют mają zamówienia niepodzielne przez s. Jeśli element znajduje się poza podgrupą H, wówczas jego kolejność jest dzielona przez s, ponieważ s dzieli kolejność grupy. Jeśli problem obliczania kolejności elementu z grupy 2 * n (lub określenia jego podzielności przez s) jest skutecznie rozwiązany w grupie 2 * n, to skutecznie rozwiązuje również problem dołączenia do podgrupy

Wybierając w ten sposób podgrupę Í, mamy możliwość wybrania jako M cyklicznej podgrupy rzędu r \u003d 52 (lub rzędu). Taka podgrupa istnieje, ponieważ rząd grupy 2 * n, równy (p-1) ^ - 1) \u003d (52k + vi) ^ 21 + sv) (lub (52k + vi) ^ 1 + V)), jest podzielony przez 52 (na s). Aby podać H, wystarczy wskazać s. Co więcej, dla każdego wyboru podgrupy mamy M * 2 \u003d 1. Jeśli podczas dekodowania wiadomości m możliwe jest uzyskanie elementu w postaci teL, w którym ed jest koprime ze s, to znalezienie liczb całkowitych y i z takich, że edy + s2z \u003d 1, możemy obliczyć teLu \u003d m.

Jednak elementy generujące podgrupy при nie są określone przy określaniu formy, dlatego jeśli istnieje algorytm do obliczania rzędów elementów grupy 2

H, co byłoby możliwe w oryginalnej wersji.

Siła kryptograficzna wersji obwodu opiera się na trudności zadania polegającego na ustaleniu kolejności elementu z grupy 2 * n. W proponowanej wersji opiera się na trudności w określeniu okresu podgrupy Z * s. Siła semantyczna Poinformuj, że c \u003d (hm ") e (modn) to zaszyfrowana wiadomość w formie (2), gdzie heH, m" \u003d m1 lub m "\u003d m2. Szyfrowanie jest uważane za semantycznie silne, jeśli niemożliwe jest skuteczne ustalenie, dlaczego -so odpowiada C. Prawidłowa odpowiedź mt (i \u003d 1 lub 2) jest uzyskiwana wtedy i tylko wtedy, gdy cmje należy do H. Dlatego szyfrowanie jest semantycznie silne wtedy i tylko wtedy, gdy problem wprowadzenia H jest skutecznie nierozwiązywalny. W przypadku rozważanym w tym artykule jest problem wchodzenia w podgrupę reszt s Z * s. W szczególnym przypadku s \u003d 2 otrzymujemy dobrze znaną liczbę utrzymujący się trudny do rozwiązania problem wejścia do Q2 * n, na którym opiera się siła semantyczna systemu szyfrowania Goldwasser-Mikali i szeregu innych systemów szyfrowania.

LITERATURA

Romankov V.A. Nowy semantycznie solidny system szyfrowania klucza publicznego oparty na RSA // Applied Discrete Mathematics. 2015. nr 3 (29). S. 32–40.

Rivest R., Shamir A., \u200b\u200bAdleman L. Metoda uzyskiwania podpisów cyfrowych i kryptosystemów z kluczem publicznym // Comm. ACM 1978. Vol. 21, nr 2. str. 120126.

Hinek M. Cryptanalysis RSA i jego wariantów. Boca Raton: Chapman & Hall / CRC, 2010.

Piosenka Y. Y. Cryptanalitic ataki na RSA. Berlin: Springer, 2008.

Pieczęć M., Low R.M. Zastosowana kryptoanaliza. Łamanie szyfrów w prawdziwym świecie. Hoboken: JohnWiley & Sons, 2007.

Roman "kov V.A. Nowe probabilistyczne szyfrowanie klucza publicznego oparte na kryptosystemie RAS // Croups, Complexity, Cryptology. 2015. Vol. 7, No. 2. P. 153156.

Romankov V.A. Wprowadzenie do kryptografii. M .: Forum, 2012.

Menezes A., Ojrschot P.C., Vanstone S.A. Podręcznik stosowanej kryptografii. Boca Raton: CRC Press, 1996.

Goldwasser S., Micali S. Szyfrowanie probabilistyczne i jak grać w mentalnego pokera zachowując w tajemnicy wszystkie częściowe informacje // Proc. 14. sympozjum na temat teorii obliczeń, 1982. P. 365-377.

(zamiany). W podstawieniach szyfrów litery są zamieniane na inne litery z tego samego alfabetu, podczas kodowania litery są zamieniane na coś zupełnie innego - obrazy, symbole innych alfabetów, sekwencje różnych znaków itp. Kompilowana jest unikalna tabela korespondencji alfabetu tekstu źródłowego i symboli kodowych i zgodnie z tą tabelą odbywa się kodowanie jeden na jeden. Aby dekodować, musisz znać tabelę kodów.

Istnieje wiele kodów używanych w różnych obszarach życia ludzkiego. Dobrze znane kody są używane w przeważającej części dla wygody przesyłania informacji w taki czy inny sposób. Jeśli tablica kodów jest znana tylko dla nadawania i odbierania, to uzyskuje się raczej prymitywny szyfr, który łatwo poddaje się analizie częstotliwości. Ale jeśli ktoś jest daleki od teorii kodowania i nie jest zaznajomiony z analizą częstotliwości tekstu, wówczas rozszyfrowanie takich szyfrów jest dość problematyczne.

A1Z26

Najprostszy szyfr. Nazywa się A1Z26 lub w rosyjskiej wersji A1Y33. Litery alfabetu są zastępowane ich numerami seryjnymi.

NoZDR może być szyfrowany jako 14-15-26-4-18 lub 1415260418.

Kod Morse'a

Zestaw kropek i myślników jest porównywany z literami, cyframi i niektórymi znakami, które mogą być przesyłane drogą radiową, dźwiękową, pukającą, świetlnym telegrafem i flagami odbierania sygnału. Ponieważ marynarze mają również odpowiednią flagę związaną z każdą literą, możliwe jest przesłanie wiadomości z flagami.

Brajl

Brajl to dotykowy system czytania dla niewidomych, składający się z sześciopunktowych znaków zwanych komórkami. Komórka składa się z trzech kropek o wysokości i dwóch kropek o szerokości.

Różne znaki brajlowskie powstają przez umieszczenie kropek w różnych pozycjach wewnątrz komórki.

Dla wygody punkty opisano podczas czytania w następujący sposób: 1, 2, 3 od góry do dołu z lewej strony oraz 4, 5, 6 od góry do dołu z prawej strony.

Podczas kompilowania tekstu przestrzegane są następujące zasady:

    jedna komórka (spacja) jest pomijana między słowami;

    po średniku i średniku komórka nie jest pomijana;

    myślnik jest zapisywany razem z poprzednim słowem;

    liczba jest poprzedzona cyfrowym znakiem.

Strony kodowe

W komputerowych zadaniach i zagadkach litery mogą być kodowane zgodnie z ich kodami na różnych stronach kodowych - tabelach używanych na komputerach. W przypadku tekstów cyrylicy najlepiej używać najpopularniejszych kodowań: Windows-1251, KOI8, CP866, MacCyrillic. Chociaż w przypadku złożonego szyfrowania możesz wybrać coś bardziej egzotycznego.

Możesz kodować liczbami szesnastkowymi lub tłumaczyć je na dziesiętne. Na przykład litera ё w KOI8-R ma kod B3 (179), w CP866 - F0 (240), a w Windows-1251 - A8 (168). Możliwe jest wyszukiwanie liter w odpowiednich tabelach pod kątem korespondencji po lewej stronie, a następnie tekst zostanie napisany przez „krakozyabrami” typu èαᬫº∩íαδ   (866 → 437) lub Êðàêîçÿáðû   (1251 → Latin-1).

I możesz zmienić górną połowę znaków na dolną wewnątrz jednego stołu. Następnie dla Windows-1251 zamiast „krakozyabra” dostajesz „jp” jng ap (”, zamiast„ HELICOPTER ”-„ BEPRNK (R ”). Takie przesunięcie strony kodowej jest klasyczną utratą najbardziej znaczącego bitu podczas awarii na serwerach pocztowych. może być zakodowany z przesunięciem w dół o 128 znaków, a takie kodowanie będzie odmianą szyfru - ROT128, nie tylko dla zwykłego alfabetu, ale dla wybranej strony kodowej.

Dokładny czas powstania szyfru jest nieznany, ale niektóre zapisy znalezione w tym systemie pochodzą z XVIII wieku. Odmiany tego szyfru były używane przez Zakon Różokrzyżowców i Masonów. Ten ostatni dość często używał go w swoich tajnych dokumentach i korespondencji, więc szyfr zaczął być nazywany szyfrem masonów. Nawet na nagrobkach masonów można zobaczyć napisy wykorzystujące ten kod. Podobny system szyfrowania był używany podczas amerykańskiej wojny domowej przez armię Jerzego Waszyngtona, a także więźniów w federalnych więzieniach Konfederacji Stanów Zjednoczonych.

Poniżej znajdują się dwie (niebieska i czerwona) opcje wypełniania siatki takich szyfrów. Litery są ułożone w pary, druga litera pary jest narysowana symbolem kropki:

Szyfry autorskie

Szyfry, w których jeden symbol alfabetu (litera, cyfra, znak interpunkcyjny) odpowiada jednemu (rzadko więcej) symbolowi graficznemu, wymyślono wiele. Większość z nich została zaprojektowana do użytku w filmach science fiction, kreskówkach i grach komputerowych. Tutaj jest kilka z nich:

Tańczący ludzie

Jednym z najbardziej znanych szyfrów zastępczych autora jest „”. Został wynaleziony i opisany przez angielskiego pisarza Arthura Conana Doyle'a w jednym z jego dzieł o Sherlocku Holmesie. Litery alfabetu są zastępowane znakami podobnymi do małych ludzi w różnych pozach. W książce wymyślono małych ludzi nie dla wszystkich liter alfabetu, więc fani twórczo sfinalizowali i przerobili symbole, a to jest szyfr:

Thomas More Alphabet

Ale taki alfabet został opisany w swoim traktacie „Utopia” Thomasa Morea w 1516 r .:

Szyfry z animowanego serialu Gravity Falls

Bill szyfr

Stanford Pines (autor pamiętników)

Alfabet Jedi Star Wars

Alien Alphabet from Futurama

Alfabet Kryptona Supermana

Alfabety Bionicle

4.1 Podstawy szyfrowania

Istota szyfrowania metodą zastępczą jest następująca. Niech wiadomości w języku rosyjskim zostaną zaszyfrowane, a każda litera tych wiadomości powinna zostać zastąpiona. Następnie list I  alfabet źródłowy pasuje do określonego zestawu znaków (podstawienie szyfru) M A, B - M B, ..., I - M I. Podstawienia szyfrów są wybierane tak, aby dowolne dwa zestawy ( M I  i M j, ja) nie zawierał tych samych elementów ( M I ∩ M J \u003d Ø).

Tabela na rysunku 4.1 to zamienny klucz szyfrujący. Znając to, możesz wdrożyć zarówno szyfrowanie, jak i deszyfrowanie.

Ib... JESTEM
MAM B.... M I

Ryc. 4.1. Tabela szyfrów

Podczas szyfrowania każdej litery I  otwarta wiadomość zostaje zastąpiona dowolnym znakiem z zestawu MA. Jeśli wiadomość zawiera kilka liter I, następnie każdy z nich jest zastępowany dowolną postacią z MA. Z tego powodu za pomocą jednego klucza można uzyskać różne opcje programu szyfrującego dla tej samej otwartej wiadomości. Od zestawów M A, M B, ..., M I.  nie przecinają się parami, wówczas dla każdego znaku programu szyfrującego można jednoznacznie określić, do którego zestawu należy, a zatem jaką literę otwartej wiadomości zastępuje. Dlatego odszyfrowanie jest możliwe, a otwarta wiadomość jest jednoznacznie określona.

Powyższy opis charakteru zamiennych szyfrów dotyczy wszystkich ich odmian, z wyjątkiem faktu, że do szyfrowania różnych znaków oryginalnego alfabetu można użyć identycznych podstawień szyfrowania (tj. M I ∩ M J ≠ Ø, ja).

Metoda zastępowania jest często wdrażana przez wielu użytkowników podczas pracy na komputerze. Jeśli, dla zapomnienia, nie zmienisz zestawu znaków z łacińskiego na cyrylicę na klawiaturze, wówczas zamiast liter alfabetu rosyjskiego, podczas wprowadzania tekstu zostaną wydrukowane litery alfabetu łacińskiego („podstawienia szyfru”).

Ściśle określone alfabety służą do rejestrowania wiadomości źródłowych i zaszyfrowanych. Alfabety do nagrywania źródła i zaszyfrowanych wiadomości mogą się różnić. Symbole obu alfabetów mogą być reprezentowane przez litery, ich kombinacje, cyfry, cyfry, dźwięki, gesty itp. Przykładem są tańczący ludzie z historii A. Conana Doyle'a () i rękopis litery runicznej () z powieści J. Verne'a „Podróż do centrum ziemi”.

Szyfry zamienne można podzielić na następujące podklasy  (odmiany).

Rycina 4.2. Klasyfikacja szyfrów zamiennych

I. Regularne szyfry. Podstawienia szyfrów składają się z tej samej liczby znaków lub są oddzielone od siebie separatorem (spacja, kropka, myślnik itp.).

Szyfr hasła.  W przypadku tego szyfru konstrukcja tablicy podstawiania szyfrów oparta jest na sloganie (kluczu) - łatwym do zapamiętania słowie. Drugi rząd tabeli tekstu zaszyfrowanego jest wypełniany najpierw słowem hasłem (a powtarzane litery są odrzucane), a następnie resztą liter, które nie są zawarte w tym słowie, w kolejności alfabetycznej. Na przykład, jeśli wybrane zostanie hasło „Dyadina”, tabela ma następującą postać.

IbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEM
reJESTEMIN.IbWsolmiSiemafa3)ThDOL.M.OP.RZT.WfaXTsH.W.UbS.bmiYU

Rycina 4.4. Tabela szyfrów dla hasła szyfru

Podczas szyfrowania początkowego komunikatu „ABRAMOV” powyższym kluczem program szyfrujący będzie wyglądał jak „DYAPDKMI”.

Kwadrat Polybian.  Kod został wynaleziony przez greckiego męża stanu, dowódcę i historyka Polybiusa (203-120 pne). W odniesieniu do rosyjskiego alfabetu i liczb indyjskich (arabskich) istota szyfrowania była następująca. Litery są zapisywane w kwadracie 6 x 6 (opcjonalnie w kolejności alfabetycznej).


1 2 3 4 5 6
1 IbWsolremi
2 Siemafa3)IThDO
3 L.M.N.OP.R
4 ZT.WfaXTs
5 H.W.UbS.b
6 miYUJESTEM- - -

Ryc. 4.5. Szyfrowany stół do kwadratu polybian

Zaszyfrowana litera jest zastępowana współrzędnymi kwadratu (wiersz-kolumna), w którym jest zapisana. Na przykład, jeśli początkowy komunikat to „ABRAMOV”, to program szyfrujący to „11 12 36 11 32 34 13”. W starożytnej Grecji wiadomości były przesyłane za pomocą telegrafu optycznego (za pomocą pochodni). Dla każdej litery wiadomości najpierw podnoszona była liczba pochodni odpowiadająca numerowi linii litery, a następnie numerowi kolumny.

Tabela 4.1 Częstotliwość występowania liter tekstu rosyjskiego w tekstach

Nie, p / pListCzęstotliwość%Nie, p / pListCzęstotliwość%
1 O10.97 18 b1.74
2 mi8.45 19 sol1.70
3 I8.01 20 3)1.65
4 I7.35 21 b1.59
5 N.6.70 22 H.1.44
6 T.6.26 23 Th1.21
7 Z5.47 24 X0.97
8 R4.73 25 fa0.94
9 W4.54 26 W.0.73
10 L.4.40 27 YU0.64
11 DO3.49 28 Ts0.48
12 M.3.21 29 U0.36
13 re2.98 30 mi0.32
14 P.2.81 31 fa0.26
15 W2.62 32 b0.04
16 JESTEM2.01 33 Siema0.04
17 S.1.90

Istnieją podobne tabele dla par liter (bigrams). Na przykład często spotykane bigramy to „to”, „ale”, „sztuka”, „po”, „en” itp. Kolejna sztuczka otwierania szyfrów polega na wykluczeniu możliwych kombinacji liter. Na przykład w tekstach (jeśli są napisane bez błędów ortograficznych), nie można znaleźć kombinacji „ch”, „sch”, „b” itp.

Aby skomplikować zadanie otwierania szyfrów, jednoznaczne zastąpienie nawet w starożytności, przed szyfrowaniem, spacjami i / lub samogłosek zostały wyłączone z oryginalnych wiadomości. Kolejną sztuczką w manipulowaniu jest szyfrowanie bigramy  (parami liter).

4.3 Szyfry Polygram

Zamienne szyfry Polygram  - są to szyfry, w których jeden zamiennik szyfru odpowiada kilku znakom tekstu źródłowego.

Porty szyfrów Bigram . Szyfr Porta, przedstawiony mu w formie tabeli, jest pierwszym znanym szyfrem bigram. Wielkość jego stołu wynosiła 20 x 20 komórek; standardowy alfabet został napisany poziomo i pionowo u góry (nie było w nim liter J, K, U, W, X i Z). Wszelkie cyfry, litery lub symbole mogą być zapisane w komórkach tabeli - sam Giovanni Porta używał symboli - pod warunkiem, że zawartość żadnej z komórek nie zostanie powtórzona. W odniesieniu do języka rosyjskiego tabela zmiany szyfru może wyglądać następująco.


IbWsolremi
(Siema)
fa3)I
(Th)
DOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEM
I001 002 003 004 005 006 007 008 009 010 011 012 013 014 015 016 017 018 019 020 021 022 023 024 025 026 027 028 029 030 031
b032 033 034 035 036 037 038 039 040 041 042 043 044 045 046 047 048 049 050 051 052 053 054 055 056 057 058 059 060 061 062
W063 064 065 066 067 068 069 070 071 072 073 074 075 076 077 078 079 080 081 082 083 084 085 086 087 088 089 090 091 092 093
sol094 095 096 097 098 099 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124
re125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155
JEJ)156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186
fa187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217
3)218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248
I (y)249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279
DO280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310
L.311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341
M.342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372
N.373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403
O404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434
P.435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465
R466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496
Z497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527
T.528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558
W559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589
fa590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620
X621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651
Ts652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682
H.683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713
W.714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744
U745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775
b776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806
S.807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837
b838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868
mi869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899
YU900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930
JESTEM931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961

Rysunek 4.10. Tabela szyfrów dla portów szyfrów

Szyfrowanie odbywa się za pomocą par liter oryginalnej wiadomości. Pierwsza litera pary wskazuje ciąg podstawień szyfru, druga - kolumnę. W przypadku nieparzystej liczby liter w oryginalnej wiadomości dodaje się do niej znak pomocniczy („pusty znak”). Na przykład oryginalna wiadomość „AB RA MO B”, zaszyfrowana - „002 466 355 093”. Litera „I” jest używana jako symbol pomocniczy.

Cipher Playfair (inż. „Fair play”).  Na początku lat 50. XIX wieku. Charles Wheatstone wynalazł tak zwany „prostokątny szyfr”. Leon Playfer, bliski przyjaciel Wheatstone, rozmawiał o tym kodzie podczas oficjalnej kolacji w 1854 r. Z sekretarzem domu Lordem Palmerstonem i księciem Albertem. A ponieważ Pleifer był dobrze znany w kręgach wojskowych i dyplomatycznych, nazwa „Kod Playfer” była na zawsze zakorzeniona w twórczości Whitstona.

Szyfr ten stał się pierwszym szyfrem alfanumerycznym (w portach zastosowano symbole tabeli cigram, a nie litery). Został zaprojektowany w celu zapewnienia tajemnicy łączności telegraficznej i był używany przez wojska brytyjskie w Burie i I wojnie światowej. Był również używany przez Australijską Straż Przybrzeżną wysp podczas II wojny światowej.

Szyfr umożliwia szyfrowanie par znaków (bigrams). Dlatego ten szyfr jest bardziej odporny na hakowanie w porównaniu do prostego szyfru zastępczego, ponieważ analiza częstotliwości jest trudna. Można to zrobić, ale nie dla 26 możliwych znaków (alfabet łaciński), ale dla 26 x 26 \u003d 676 możliwych bigramów. Analiza częstotliwości bigramów jest możliwa, ale jest o wiele trudniejsza i wymaga znacznie większej ilości zaszyfrowanego tekstu.

Aby zaszyfrować wiadomość, konieczne jest podzielenie jej na bigramy (grupy dwóch znaków), a jeśli w bigramie zostaną znalezione dwa identyczne znaki, to między nimi dodawana jest wcześniej uzgodniona postać pomocnicza (w oryginale - X, dla rosyjskiego alfabetu - JESTEM) Na przykład „zaszyfrowana wiadomość” staje się „dla JESTEM  generał JESTEM„. Aby utworzyć tabelę kluczy, wybiera się hasło, a następnie wypełnia się je zgodnie z zasadami systemu szyfrowania Trisemus. Na przykład w przypadku hasła „DYADINA” tabela kluczy jest następująca.

reJESTEMIN.Ib
WsolmiSiemafa3)
ThDOL.M.OP.
RZT.WfaX
TsH.W.UbS.
bmiYU- 1 2

Rysunek 4.11. Tabela kluczy do szyfru Playfair

Następnie, kierując się następującymi regułami, wykonuje się szyfrowanie par znaków w tekście źródłowym:

1. Jeśli znaki bigrama tekstu źródłowego pojawiają się w tym samym wierszu, wówczas znaki te są zastępowane znakami znajdującymi się w najbliższych kolumnach po prawej stronie odpowiednich znaków. Jeśli znak jest ostatnim w linii, to jest zastępowany pierwszym znakiem w tej samej linii.

2. Jeśli symbole bigramu tekstu źródłowego znajdują się w jednej kolumnie, są one konwertowane na symbole tej samej kolumny, znajdujące się bezpośrednio pod nimi. Jeśli znak znajduje się na dole kolumny, wówczas jest zastępowany pierwszym znakiem tej samej kolumny.

3. Jeśli znaki bigramu tekstu źródłowego znajdują się w różnych kolumnach i różnych wierszach, wówczas są one zastępowane znakami, które znajdują się w tych samych wierszach, ale odpowiadają innym rogom prostokąta.

Przykład szyfrowania.

Bigram „for” tworzy prostokąt - zastępuje się go „zhb”;

Bigram „shi” znajduje się w jednej kolumnie - zastępuje się „yue”;

Bigram „fr” znajduje się w tej samej linii - zastąpiony przez „xc”;

Bigram „o” tworzy prostokąt - jest zastąpiony przez „yd”;

Bigram „en” znajduje się w tej samej linii - zastąpiony przez „ba”;

Bigram „ale” tworzy prostokąt - zastępuje go „am”;

Bigram „ec” tworzy prostokąt - zostaje zastąpiony przez „gt”;

Bigram „oya” tworzy prostokąt - zastępuje się go „ka”;

Bigram „about” tworzy prostokąt - zastępuje go „pa”;

Bigram „shche” tworzy prostokąt - jest zastąpiony przez „sh”;

Bigi „ni” tworzy prostokąt - jest zastąpiony przez „an”;

„Jej” bigram tworzy prostokąt - zastępuje go „gi”.

Program szyfrujący to „jb yue xs yzh ba am gt ka pa she an gi”.

Aby odszyfrować, musisz użyć odwrotności tych zasad, rozkładając postacie JESTEM  (lub X), jeśli nie mają sensu w oryginalnej wiadomości.

Składał się on z dwóch dysków - zewnętrznego stałego i wewnętrznego ruchomego dysku, na którym naniesiono litery alfabetu. Proces szyfrowania polegał na znalezieniu litery na zwykłym tekście na dysku zewnętrznym i zastąpienia jej literą z dysku wewnętrznego pod spodem. Następnie dysk wewnętrzny został przesunięty o jedną pozycję, a druga litera została zaszyfrowana przy użyciu nowego alfabetu szyfru. Kluczem do tego szyfru była kolejność liter na dyskach i początkowa pozycja dysku wewnętrznego względem zewnętrznego.

Stół Trisemus.  Jednym z szyfrów wymyślonych przez niemieckiego opata Trisemusa był wieloliterowy kod oparty na tak zwanej „tabeli Trisemus” - tabeli o równych bokach ngdzie n  - liczba znaków w alfabecie. Litery w pierwszym rzędzie macierzy są zapisywane w kolejności alfabetycznej, w drugim - ta sama sekwencja liter, ale z cyklicznym przesunięciem o jedną pozycję w lewo, w trzecim - z cyklicznym przesunięciem o dwie pozycje w lewo itp.

IbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEM
bWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMI
WsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIb
solremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbW
remiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsol
miSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolre
Siemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremi
fa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiema
3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa
IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)
ThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)I
DOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)ITh
L.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDO
M.N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.
N.OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.
OP.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.
P.RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.O
RZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.
ZT.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.R
T.WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZ
WfaXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.
faXTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.W
XTsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.Wfa
TsH.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaX
H.W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTs
W.UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.
UbS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.
bS.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.U
S.bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.Ub
bmiYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.
miYUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.b
YUJESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmi
JESTEMIbWsolremiSiemafa3)IThDOL.M.N.OP.RZT.WfaXTsH.W.UbS.bmiYU

Rysunek 4.17. Stół Trisemus

Pierwszy wiersz jest jednocześnie alfabetem dla liter czystego tekstu. Pierwsza litera tekstu jest szyfrowana w pierwszym wierszu, druga litera w drugiej itd. Po użyciu ostatniego wiersza ponownie wracają do pierwszego. Zatem komunikat „ABRAMOV” przybierze postać „AUTO LOAD”.

System szyfrowania Vigenere.  W 1586 r. Francuski dyplomata Blaise Vizhener przedstawił komisji Henryka III opis prostego, ale dość mocnego szyfru, opartego na stole Trisemusa.

Przed szyfrowaniem klucz jest wybierany spośród znaków alfabetu. Sama procedura szyfrowania jest następująca. Kolumna jest określana przez i-ty znak otwartej wiadomości w pierwszym rzędzie, a wiersz przez i-ty znak klucza w lewej kolumnie. Na przecięciu wiersza i kolumny będzie i-ty znak umieszczony w kryptogramie. Jeśli długość klucza jest mniejsza niż wiadomość, jest ona ponownie używana. Na przykład początkowy komunikat to „ABRAMOV”, klucz to „DYAIN”, program szyfrujący to „DAFYOYO”.

Należy uczciwie zauważyć, że autorstwo tego szyfru należy do włoskiego Giovanniego Batisty Bellazo, który opisał go w 1553 roku. Historia „zignorowała ważny fakt i nadała szyfrowi imię Vigenere, mimo że nic nie zrobił, aby go stworzyć”. Bellazo zaproponowała tajne słowo lub frazę hasło  (it. hasło; francuski warunek - słowo).

W 1863 r. Friedrich Kasiski opublikował algorytm atakowania tego szyfru, chociaż znane są przypadki jego złamania przez niektórych doświadczonych kryptoanalityków. W szczególności w 1854 r. Szyfr został złamany przez Charlesa Babbage'a, wynalazcę pierwszego komputera analitycznego, chociaż fakt ten stał się znany dopiero w XX wieku, kiedy grupa naukowców zbadała obliczenia i osobiste notatki Babbage'a. Mimo to szyfr Vigenere był przez długi czas niezwykle odporny na „ręczne” hakowanie. Tak więc słynny pisarz i matematyk Charles Lutwich Dodgson (Lewis Carroll) w swoim artykule „Kod alfabetyczny”, opublikowanym w czasopiśmie dla dzieci w 1868 r., Nazwał szyfr Vigenere niezniszczalnym. W 1917 r. Popularny magazyn naukowy Scientific American również skomentował szyfr Vigenere jako podatny na pękanie.

Maszyny rotacyjne.  Pomysły Albertiego i Bellazo zostały wykorzystane do stworzenia elektromechanicznych maszyn rotacyjnych pierwszej połowy XX wieku. Niektóre z nich były używane w różnych krajach do lat 80. Większość z nich używała wirników (kół mechanicznych), których wzajemne rozmieszczenie określa aktualny alfabet podstawienia szyfru użytego do wykonania zamiany. Najbardziej znaną maszyną rotacyjną jest niemiecka maszyna Enigmy z II wojny światowej.

Styki wyjściowe jednego rotora są podłączone do styków wejściowych następnego rotora, a po naciśnięciu symbolu komunikatu źródłowego na klawiaturze zamykają obwód elektryczny, w wyniku czego świeci się żarówka z symbolem wymiany szyfru.

Ryc. 4.19. Enigma Rotary System [www.cryptomuseum.com]

Działanie szyfrowania Enigmy pokazano dla dwóch kolejno naciskanych klawiszy - prąd przepływa przez wirniki, jest „odbijany” od reflektora, a następnie ponownie przez wirniki.

Rycina 4.20. Schemat szyfrowania

Uwaga. Szare linie pokazują inne możliwe obwody elektryczne wewnątrz każdego wirnika. List ZA  szyfrowane inaczej przez kolejne naciśnięcia klawiszy, najpierw w solpotem w do. Sygnał płynie inną drogą ze względu na obrót jednego z wirników po naciśnięciu poprzedniej litery oryginalnej wiadomości.

3. Opisz odmiany szyfrów zamiennych.

DZWONEK

Są tacy, którzy czytają te wiadomości przed tobą.
Subskrybuj, aby otrzymywać świeże artykuły.
E-mail
Imię
Nazwisko
Jak chcesz przeczytać Dzwon
Bez spamu