Заместващи шифри - образователна и научна дейност на анисимов владимир викторович. Разсъждения за семантиката на HTML кода с примери Семантично оформление - какво е това

МАТЕМАТИКА

Вестн. Ом. университет 2016. № 3. С. 7-9.

UDC 512.4 V.A. Романков

ВАРИАНТ НА ​​СЕМАНТИЧНО СИЛНО КРИПТИРАНЕ НА БАЗА НА RSA*

Основната цел на статията е да предложи друг начин за избор на един от основните параметри на схемата за криптиране, базирана на криптографската система RSA, предложена от автора в предишни работи. Оригиналната версия се основава на изчислителната сложност на определяне на реда на елементите в мултипликативни групи от модулни пръстени. Предложеният метод променя тази основа към друг трудноразрешим проблем за определяне дали елементи от мултипликативни групи от модулни пръстени принадлежат към мощностите на тези групи. Частен случай на такъв проблем е класическият проблем за определяне на квадратичността на остатъка, който се счита за труден от изчислителна гледна точка. Този проблем определя семантичната сила на добре известната система за криптиране Goldwasser-Micali. В предложената версия семантичната сигурност на схемата за криптиране се основава на изчислителната сложност на проблема за определяне дали елементи от мултипликативни групи от модулни пръстени принадлежат към мощностите на тези групи.

Ключови думи: криптографска система RSA, криптиране с публичен ключ, модулен пръстен, квадратичен остатък, семантична сигурност.

1. Въведение

Целта на този документ е да представи нови елементи за версията на схемата за криптиране, базирана на RSA, въведена от автора в . А именно, предлага се друг начин за уточняване на подгрупите, фигуриращи в тази схема. Този метод води до замяната на основния изчислително труден проблем за определяне на редовете на елементи от мултипликативни групи от модулни пръстени от изчислително трудния проблем за въвеждане на дадените мощности на тези групи. Частен случай на последния проблем е класическият проблем за определяне на квадратичността на остатъка на елемент от мултипликативна група на модулен пръстен.

Системата за криптиране с публичен ключ RSA е въведена от Rivest, Shamir и Adleman през 1977 г. Той се използва широко в целия свят и е включен в почти всички учебници по криптография. Относно тази система и нейната криптографска сила вижте напр.

Основната версия на системата е детерминирана и поради тази причина не притежава свойството семантична секретност, най-важният индикатор за криптографската сила на система за криптиране с публичен ключ. Ето защо на практика се използват варианти на системата, чиято цел е да въведат в нея вероятностен елемент и по този начин да осигурят изпълнението на свойството семантична тайна.

Инсталация: платформа за криптиране

Нека n е произведението на две големи различни прости числа p и q. Остатъчният пръстен Zn е избран като платформа за системата за криптиране. Модул n и платформа Zn са отворени елементисистеми, числата p и q са секретни.

* Изследването е подкрепено от Руската фондация за фундаментални изследвания (проект 15-41-04312).

© Романков V.A., 2016

Романков В.А.

Функцията на Ойлер се обозначава с φ:N ^ N, в този случай тя приема стойността φ(n)=(p-1)(q-1). Така редът на мултипликативната група Z*n на пръстена Zn е (p-1)(q-1). За тези понятия вижте напр.

След това се избират съответно две подгрупи M и H от групата Z*n на взаимнопрости периоди r и t. Предлага се тези подгрупи да бъдат специфицирани по отношение на техните генериращи елементи M = gr(g1 ,...,gk), H = gr(i1, ..,hl). Спомнете си, че периодът t(G) на група G е най-малкото число t, така че dr = 1 за всеки елемент geG. Периодът на групата Z*n е числото t (n), равно на най-малкото общо кратно на числата p-1 и q-1. Подгрупите M и H могат да бъдат циклични и да бъдат дадени от един генериращ елемент. Пораждащите елементи на подгрупите M и H се считат за открити, докато периодите на подгрупите r и t се считат за секретни.

B и обяснява как ефективно да се извърши определеният избор на подгрупи M и H, като се знаят тайните параметри p и q. Освен това можете първо да зададете g и t, след това да изберете p и q и едва след това да извършите по-нататъшни действия. Обърнете внимание, че конструирането на елементи от дадени поръчки в крайни полета се извършва чрез стандартната ефективна процедура, описана, например, . Преходът към конструиране на елементи от даден ред в мултипликативни групи Z*n на модулни пръстени Zn се извършва по очевиден начин, като се използва китайската теорема за остатъка или . Инсталиране: избор на ключове Ключът за криптиране e е всяко естествено число, взаимнопросто с r. Ключът за декриптиране d = ^ се изчислява от равенството

(te)d1 = 1 (modr). (един)

Ключът d съществува, защото параметърът d1 се изчислява поради факта, че te и r са взаимно прости. Ключът e е публичен, ключът d и параметърът d1 са секретни.

Алгоритъм за криптиране За предаване през отворена мрежасъобщения - m елемент от подгрупата M, Алиса избира произволен елемент h от подгрупата H и изчислява елемента hm. Предаването изглежда така

c = (hm)e (modn). (2)

Алгоритъм за дешифриране

Боб дешифрира полученото съобщение c, както следва:

cd=m(modn). (3)

Обяснение на правилното дешифриране

Тъй като ed=1 (modr), има цяло число k такова, че ed = 1 + rk. Тогава

cd = (hm)ed = (ht)edim (mr)k = m (mod n). (4) Така елементът h се записва като елемент от подгрупата H като стойността на груповата дума u(x1,.,xl) от генериращите елементи h1t...,hl на подгрупата H. Всъщност, ние

изберете дума u(x1,.,xl) и след това изчислете нейната стойност h = u(h1t..., hl). По-специално, това означава, че генериращите елементи h1t...,hl са отворени.

Криптографска сила на схемата

Криптографската сигурност на схемата се основава на трудността да се определи периодът или редът на тази подгрупа от дадените генериращи елементи на подгрупата H на групата Z*n. Ако редът на даден елемент може да бъде изчислен чрез ефективен алгоритъм, тогава чрез преброяване на редовете o rd(h1), ..., ord(hl) на генериращите елементи на подгрупата H, бихме могли да намерим неговия период t = t (H), равно на тяхното най-малко общо кратно. Това би направило възможно премахването тази опциякриптиране на фактора на засенчване h чрез трансформацията с1 = met(modri), редуциране на процедурата за декриптиране до класическата RSA система с публичен криптиращ ключ et.

3. Друг начин за дефиниране на подгрупа H

В тази статия предлагаме друга възможност за уточняване на подгрупата H в разглежданата схема за криптиране. Нека първо разгледаме неговия частен случай, който е свързан с признатия неразрешим проблем за определяне на квадратичността на остатъка на групата Z*n. Спомнете си, че остатък aeZ^ се нарича квадратичен, ако съществува елемент xeZ*n такъв, че x2 = a (modn). Всички квадратични остатъци образуват подгрупа QZ*n на групата Z*n. Проблемът за определяне на квадратичността на произволен групов остатък се счита за трудноразрешим изчислително. Добре известната семантично силна система за криптиране Goldwasser-Micali се основава на това свойство. Неговата семантична устойчивост се определя изцяло от трудноразрешимата задача за определяне на квадратурата на остатъка.

Да предположим, че параметрите p и q са избрани с условието p, q = 3 (mod 4), т.е. p = 4k +3, q = 41 +3. В схемите, свързани с квадратичността на остатъците, това предположение изглежда естествено и се среща доста често. Ако е валидно, картата p:QZ*n ^ QZ*n, p:x^x2, е биекция.

Подгрупата от квадратични остатъци QZ*n на групата има индекс 4 в Z*n, вижте например . Неговият ред o^^2^) е равен на φ(n)/4 = (4k + 2)(41 + 2)/4= 4kl + 2k + 21 + 1, т.е. е нечетно число.

Приемаме в горната схема за криптиране H = QZ*n. Всеки елемент от подгрупата H има нечетен ред, тъй като периодът t(Z*n), равен на най-малкото общо кратно на числата p - 1 = 4k +2 и q - 1 = 41 +2, се дели на 2 , но не се дели на 4. Максималният възможен избор за M е подгрупа от ред 4, чиито елементи имат четни редове 2 или 4. Ако съществува ефективен методизчисляване на реда (или поне неговия паритет) на произволен елемент

Вариант на семантично силно криптиране, базирано на RSA

група 2*n, тогава проблемът за определяне на квадратичността на остатъка също е ефективно решен. Недостатъкът на схемата с такъв избор е ниската кардиналност на пространството от текстове - подгрупата М. Всъщност схемата дублира вече споменатата известна схема на Гол-двасер-Микали.

Получаваме повече възможности със следващия избор. Нека s е просто число, което може да се счита за достатъчно голямо. Нека p и q са прости числа, така че поне едно от числата p - 1 или q - 1 се дели на s. B и обяснява, че човек може да избере s и след това ефективно да намери p или q с даденото свойство. Да кажем, че числото p се търси във формата 2sx + 1. Променете x и тествайте за простота на полученото p, докато се окаже, че е просто.

Нека дефинираме подгрупа H = , състояща се от s-степени на елементи от групата 2*n (за s = 2 това е подгрупа на QZ*n). Ако p = 52k + su + 1 и q = 521 + sv + 1 (или q = sl + V + 1), където числата u и V не се делят на s, тогава редът o^(H) на подгрупата H с 2 в групата *n индекс b2 (или индекс s, ако q = sl + V + 1) е равно на B2k1 + Bku + b1n + w>. Този ред е относително прост към s. По-специално това означава, че елементите на подгрупата H имат порядъци, които не се делят на s. Ако даден елемент е извън подгрупата H, тогава неговият ред се дели на s, тъй като s разделя реда на групата. Ако проблемът за изчисляване на реда на елемент от групата 2*n (или определяне на неговата делимост на s) е ефективно разрешим в групата 2*n, тогава той също ефективно решава проблема с влизането в подгрупата

При избора определен начинподгрупа H, имаме възможността да изберем като M циклична подгрупа от ред r = 52 (или ред s). Такава подгрупа съществува, защото редът на групата 2*n, равен на (p-1)^-1) = (52k + vi)^21 + sv) (или (52k + vi)^1 + V)), се дели на 52 (на s). За да посочите H, е достатъчно да посочите s. Освен това, за всеки избор на подгрупата M, имаме M*2 =1. Ако при дешифрирането на съобщението m е възможно да се получи елемент от формата teL, където ed е относително просто спрямо s, тогава чрез намиране на цели числа y и z, така че edy + s2z = 1, можем да изчислим teLy = m.

Генериращите елементи на подгрупата H обаче не са посочени при определяне на формата, следователно, ако има алгоритъм за изчисляване на поръчките на елементите от групата 2 * n, това не позволява изчисляване на периода на подгрупата

H, което би било възможно в оригиналната версия от .

Криптографската сигурност на версията на схемата от се основава на трудността на задачата за определяне на реда на елемент от групата 2*n. В предложената версия тя се основава на трудността при определяне на периода на подгрупата Z*s. Семантична сигурност Нека се знае, че c = (hm")e (modn) е криптирано съобщение във формата (2), където heH, m" = m1 или m" = m2. Шифроването се счита за семантично сигурно, ако е невъзможно за да се определи ефективно какво всичко съответства на c. Правилният отговор mt (i = 1 или 2) се получава тогава и само ако cmje принадлежи на H. Следователно криптирането е семантично сигурно тогава и само ако проблемът с въвеждането на H е ефективно неразрешим е проблемът за влизане в подгрупата на s-остатъци Z * s. В частния случай s = 2 получаваме добре познатия проблем за въвеждане на Q2 * n, който се счита за неразрешим, на който семантичната сигурност на Системата за криптиране Goldwasser-Micali и редица други системи за криптиране се основават.

ЛИТЕРАТУРА

Романков В. А. Нова семантично защитена система за криптиране с публичен ключ, базирана на RSA // Прикл. Дискретна математика. 2015. № 3 (29). стр. 32-40.

Rivest R., Shamir A., ​​​​Adleman L. Метод за получаване на цифрови подписи и криптосистеми с публичен ключ // Comm. ACM. 1978 том. 21, № 2. С. 120126.

Hinek M. Криптоанализ на RSA и неговите варианти. Бока Ратон: Chapman & Hall/CRC, 2010 г.

Песен Y. Y. Криптоаналитични атаки срещу RSA. Берлин: Springer, 2008.

Печат М., Ниска Р.М. Приложен криптоанализ. Разбиване на шифри в реалния свят. Hoboken: John Wiley & Sons, 2007.

Роман "ков V.A. Ново вероятностно криптиране с публичен ключ, базирано на криптосистемата RAS // Croups, Complexity, Cryptology. 2015. Том 7, № 2. С. 153156.

Романков В.А. Въведение в криптографията. М. : Форум, 2012.

Менезес А., Ojrschot P.C., Vanstone S.A. Наръчник по приложна криптография. Бока Ратон: CRC Press, 1996.

Goldwasser S., Micali S. Вероятностно криптиране и как да играете умствен покер, запазвайки в тайна цялата частична информация // Proc. 14-ти симпозиум по теория на изчисленията, 1982 г., стр. 365-377.

4.1. Основи на криптирането

Същността на криптирането чрез метода на заместване е следната. Нека съобщенията на руски език да бъдат криптирани и всяка буква от тези съобщения да бъде заменена. След това, писмо НОна оригиналната азбука се съпоставя определен набор от знаци (замествания на шифър). M A, B - M B, ..., I - M Z. Шифровите замествания се избират по такъв начин, че всеки два набора ( М Ии М Дж, i ≠ j) не съдържа идентични елементи ( M I ∩ M J = Ø).

Таблицата, показана на Фигура 4.1, е ключът на заместващия шифър. Познавайки го, е възможно да се извърши както криптиране, така и декриптиране.

НОб... аз
М АМ Б... М И

Фиг.4.1. Таблица за заместване на шифри

Когато е криптирана, всяка буква НО отворено съобщениезаменени с произволен знак от набора М А. Ако съобщението съдържа няколко букви НО, тогава всеки от тях се заменя с произволен знак от М А. Поради това, като използвате един ключ, можете да получите различни версии на шифъра за едно и също отворено съобщение. Тъй като комплектите M A, M B, ..., M Zне се пресичат по двойки, тогава за всеки знак от шифрограмата е възможно еднозначно да се определи към кой набор принадлежи и следователно коя буква от отвореното съобщение замества. Следователно дешифрирането е възможно и отвореното съобщение е еднозначно определено.

Горното описание на същността на заместващите шифри се отнася за всичките им разновидности с изключение на , в които едни и същи шифрови замествания могат да се използват за криптиране на различни знаци от изходната азбука (т.е. M I ∩ M J ≠ Ø, i ≠ j).

Методът на подмяна често се прилага от много потребители, когато работят на компютър. Ако поради забравяне не превключите набора от знаци от латиница на кирилица на клавиатурата, тогава вместо букви от руската азбука, когато въвеждате текст, ще бъдат отпечатани букви от латинската азбука („замени на шифри“).

За запис на оригинални и криптирани съобщения се използват строго определени азбуки. Азбуките за писане на оригинални и криптирани съобщения може да се различават. Знаците на двете азбуки могат да бъдат представени чрез букви, техните комбинации, цифри, картинки, звуци, жестове и др. Като пример можем да цитираме танцуващите мъже от историята на А. Конан Дойл () и ръкописа на руническото писмо () от романа на Ж. Верн „Пътуване до центъра на Земята“.

Заместващите шифри могат да бъдат разделени на следните подкласове(сортове).

Фиг.4.2. Класификация на заместващите шифри

I. Редовни шифри.Шифровите замествания се състоят от еднакъв брой знаци или са разделени един от друг с разделител (интервал, точка, тире и т.н.).

Шифър на лозунга.За даден шифър изграждането на таблица за заместване на шифър се основава на слоган (ключ) - лесно запомняща се дума. Вторият ред на таблицата за заместване на шифъра се попълва първо с думата на лозунга (и повтарящите се букви се изхвърлят), а след това с останалите букви, които не са включени в думата на лозунга, по азбучен ред. Например, ако е избрана слоган думата "ЧИЧО", таблицата изглежда така.

НОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮаз
дазИзНОбATЖдЙоИУYДа сеЛМОПРОТTПриЕх° СзУSCHКомерсантСbдЮ

Фиг.4.4. Таблица със замествания на шифъра за шифъра на слогана

Когато шифровате оригиналното съобщение "ABRAMOV" с помощта на горния ключ, шифрограмата ще изглежда като "DYAPDKMI".

Полибийски квадрат.Шифърът е изобретен от гръцкия държавник, командир и историк Полибий (203-120 г. пр. н. е.). По отношение на руската азбука и индийските (арабски) цифри същността на криптирането беше следната. Буквите се изписват в квадрат 6x6 (не е задължително по азбучен ред).


1 2 3 4 5 6
1 НОбATЖдд
2 ЙоИУИYДа се
3 ЛМзОПР
4 ОТTПриЕх° С
5 зУSCHКомерсантСb
6 дЮаз- - -

Фиг.4.5. Таблица на заместванията на шифъра за полибийския квадрат

Шифрираната буква се замества с координатите на квадрата (ред-колона), в който е написана. Например, ако оригиналното съобщение е "ABRAMOV", тогава шифрованият текст е "11 12 36 11 32 34 13". AT Древна Гърциясъобщенията се предават с помощта на оптичен телеграф (с помощта на факли). За всяка буква от съобщението първо се вдигаше броят на факлите, съответстващ на номера на реда на буквата, а след това на номера на колоната.

Таблица 4.1. Честотата на поява на букви на руски език в текстове

№ п / стрПисмоЧестота, %№ п / стрПисмоЧестота, %
1 О10.97 18 b1.74
2 д8.45 19 Ж1.70
3 НО8.01 20 У1.65
4 И7.35 21 б1.59
5 з6.70 22 з1.44
6 T6.26 23 Y1.21
7 ОТ5.47 24 х0.97
8 Р4.73 25 И0.94
9 AT4.54 26 У0.73
10 Л4.40 27 Ю0.64
11 Да се3.49 28 ° С0.48
12 М3.21 29 SCH0.36
13 д2.98 30 д0.32
14 П2.81 31 Е0.26
15 При2.62 32 Комерсант0.04
16 аз2.01 33 Йо0.04
17 С1.90

Има подобни таблици за двойки букви (биграми). Например често срещаните биграми са „това“, „но“, „st“, „by“, „en“ и т.н. Друг метод за отваряне на шифровани текстове се основава на изключването на възможни комбинации от букви. Например в текстовете (ако са написани без правописни грешки) не можете да намерите комбинациите "ча", "срамежлив", "б" и т.н.

За да се усложни задачата за разбиване на недвусмислени заместващи шифри, дори в древни времена, преди криптирането, интервалите и/или гласните са били изключени от оригиналните съобщения. Друг начин да направите кракването по-трудно е криптирането. диграми(по двойки букви).

4.3. Полиграмни шифри

Полиграмни заместващи шифри- това са шифри, в които една замяна на шифър съответства на няколко знака наведнъж програмен код.

Портове за шифър Bigram. Шифърът на Порта, представен от него под формата на таблица, е първият известен диграмен шифър. Размерът на неговата маса беше 20 x 20 клетки; отгоре, хоризонтално и вертикално вляво, беше написана стандартната азбука (тя не съдържаше буквите J, K, U, W, X и Z). Всякакви цифри, букви или символи могат да бъдат написани в клетките на таблицата - самият Джовани Порта използва символи - при условие че съдържанието на никоя от клетките не се повтаря. По отношение на руския език таблицата на заместванията на шифъра може да изглежда по следния начин.


НОбATЖдд
(Йо)
ИУИ
(Y)
Да сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮаз
НО001 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
б032 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
AT063 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
Ж094 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
д125 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
НЕЯ)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
И187 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
У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
аз (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
Да се280 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
Л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
М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
з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
О404 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
П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
Р466 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
ОТ497 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
T528 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
При559 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
Е590 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
х621 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
° С652 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
з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
У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
SCH745 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
Комерсант776 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
С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
д869 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
Ю900 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
аз931 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

Фиг.4.10. Таблица за заместване на шифър за портове за шифър

Криптирането се извършва по двойки букви от оригиналното съобщение. Първата буква на двойката показва линията за заместване на шифъра, втората - колоната. В случай на нечетен брой букви в оригиналното съобщение, към него се добавя спомагателен знак („празен символ“). Например, оригиналното съобщение е "AB RA MO V", криптирано - "002 466 355 093". Буквата "I" се използва като спомагателен символ.

Плейфеър шифър (англ. "Честна игра").В началото на 1850г Чарлз Уитстоун изобретява така наречения "правоъгълен шифър". Леон Плейфеър, близък приятел на Уитстоун, разказа за този шифър по време на официална вечеря през 1854 г. на вътрешния министър лорд Палмерстън и принц Албърт. И тъй като Playfair беше добре известен във военните и дипломатическите кръгове, името "Playfair cipher" беше завинаги прикрепено към творението на Wheatstone.

Този шифър стана първият азбучен биграмен шифър (в таблицата на порта биграмата бяха използвани символи, а не букви). Той е проектиран да гарантира тайната на телеграфните комуникации и е бил използван от британските войски в Бурската и Първата световна война. Използван е и от бреговата охрана на австралийските острови по време на Втората световна война.

Шифърът осигурява криптиране на двойки знаци (биграми). По този начин този шифър е по-устойчив на кракване от простия заместващ шифър, тъй като честотният анализ е по-труден. Може да се направи, но не за 26 възможни знака (латиница), а за 26 x 26 = 676 възможни биграми. Биграмният честотен анализ е възможен, но е много по-труден и изисква много по-голямо количество шифрован текст.

За да шифровате съобщение, е необходимо да го разделите на биграми (групи от два знака), а ако два еднакви знака се срещнат в биграма, тогава между тях се добавя предварително определен спомагателен знак (в оригинала - х, за руската азбука - аз). Например „шифровано съобщение“ става „шифровано anno азкомуникация аз". За формиране на ключова таблица се избира слоган и след това се попълва според правилата на системата за криптиране Trisemus. Например за слогана "ЧИЧО" ключовата таблица изглежда така.

дазИзНОб
ATЖдЙоИУ
YДа сеЛМОП
РОТTПриЕх
° СзУSCHКомерсантС
bдЮ- 1 2

Фиг.4.11. Таблица с ключове за шифър на Playfair

След това, ръководени от следните правила, двойките знаци от изходния текст се криптират:

1. Ако биграмните знаци на изходния текст се срещат в един ред, тогава тези знаци се заменят със знаците, разположени в най-близките колони вдясно от съответните знаци. Ако знакът е последният символ в низа, тогава той се заменя с първия знак от същия низ.

2. Ако биграмните символи на изходния текст се срещат в една колона, тогава те се преобразуват в знаци от същата колона, разположена точно под тях. Ако знакът е най-долният знак в колона, той се заменя с първия знак на същата колона.

3. Ако биграмните символи на изходния текст са в различни колони и различни редове, тогава те се заменят със символи, разположени в същите редове, но съответстващи на други ъгли на правоъгълника.

Пример за криптиране.

Биграмата "за" образува правоъгълник - замества се с "zhb";

Диграмата "ши" е в същата колона - заменена е с "юе";

Биграмата "fr" е на един ред - замества се с "xs";

Биграмата "ov" образува правоъгълник - замества се с "ij";

Диграмата "an" е в същия ред - замества се с "ba";

Биграмата "но" образува правоъгълник - замества се с "съм";

Биграмата "eu" образува правоъгълник - замества се с "gt";

Биграмата "oya" образува правоъгълник - замества се с "ka";

Биграмата "ob" образува правоъгълник - замества се с "pa";

Диграмата "ще" образува правоъгълник - заменя се с "тя";

Биграмата "ni" образува правоъгълник - замества се с "an";

Диграмата "her" образува правоъгълник - замества се с "gi".

Шифрограмата е „zhb yue xs yzh ba am gt ka pa she an gi“.

За дешифриране е необходимо да се използва инверсията на тези правила, като се изхвърлят знаците аз(или х), ако нямат смисъл в оригиналното съобщение.

Състоеше се от два диска - външен неподвижен диск и вътрешен подвижен диск, върху който бяха нанесени буквите от азбуката. Процесът на криптиране се състоеше в намиране на буква в обикновен текст външен диски замяната му с буквата от вътрешното устройство под него. След това вътрешният диск беше изместен с една позиция и втората буква беше криптирана с помощта на новата шифрова азбука. Ключът на този шифър беше редът на буквите на дисковете и първоначалната позиция на вътрешния диск спрямо външния.

Трисемусна маса.Един от шифрите, изобретен от германския абат Трисемус, е полиазбучен шифър, базиран на така наречената „таблица на Трисемус“ – таблица със страна, равна на н, където не броят на знаците в азбуката. В първия ред на матрицата буквите са записани по реда им в азбуката, във втория - същата последователност от букви, но с циклично изместване с една позиция наляво, в третия - с цикличен изместване с две позиции наляво и т.н.

НОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮаз
бATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНО
ATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОб
ЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбAT
ддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖ
дЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖд
ЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖдд
ИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙо
УИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИ
ИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУ
YДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИ
Да сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИY
ЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа се
МзОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛ
зОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМ
ОПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМз
ПРОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзО
РОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОП
ОТTПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПР
TПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТ
ПриЕх° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТT
Ех° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПри
х° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕ
° СзУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх
зУSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° С
УSCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° Сз
SCHКомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУ
КомерсантСbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCH
СbдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсант
bдЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантС
дЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСb
ЮазНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbд
азНОбATЖддЙоИУИYДа сеЛМзОПРОТTПриЕх° СзУSCHКомерсантСbдЮ

Фиг.4.17. Трисемусна маса

Първият ред е и азбуката за буквите в обикновен текст. Първата буква от текста е шифрована на първия ред, втората буква на втория и т.н. След като използват последния ред, те се връщат отново към първия. Така съобщението "АБРАМОВ" ще приеме формата "АВТОКАРГО".

Система за криптиране Vigenère.През 1586 г. френският дипломат Блез Виженер представя пред комисията на Анри III описание на прост, но доста силен шифър, базиран на таблицата на Трисемус.

Преди криптирането се избира ключ от азбучни знаци. Самата процедура за криптиране е следната. Колоната се определя от i-тия знак на отвореното съобщение в първия ред, а редът се определя от i-тия знак от ключа в най-лявата колона. В пресечната точка на ред и колона ще има i-тия знак, поставен в шифрования текст. Ако дължината на ключа е по-малка от съобщението, той се използва повторно. Например, оригиналното съобщение е “ABRAMOV”, ключът е “UNCLE”, шифрограмата е “DAFIOYOЁ”.

Честно казано, трябва да се отбележи, че авторството на този шифър принадлежи на италианеца Джовани Батиста Беласо, който го описва през 1553 г. Историята „пренебрегна важен факт и нарече шифъра на Виженер, въпреки факта, че той не направи нищо, за да го създаде “. Беласо предложи да назове тайна дума или фраза парола(ит. парола; фр. parole - дума).

През 1863 г. Фридрих Касиски публикува алгоритъм за атака за този шифър, въпреки че има известни случаи на неговото разбиване на шифъра от някои опитни криптоаналитици преди. По-специално, през 1854 г. шифърът е разбит от изобретателя на първия аналитичен компютър Чарлз Бабидж, въпреки че този факт става известен едва през 20 век, когато група учени анализират изчисленията и личните бележки на Бабидж. Въпреки това шифърът на Vigenère имаше репутацията на изключително устойчив на „ръчно“ разбиване. за дълго време. Така известният писател и математик Чарлз Лутуидж Доджсън (Луис Карол) в статията си „Азбучният шифър“, публикувана в детско списание през 1868 г., нарече шифъра на Виженер неразбиваем. През 1917 г. научно-популярното списание Scientific American също споменава шифъра на Vigenère като неразбиваем.

Ротационни машини.Идеите на Алберти и Беласо са използвани при създаването на електромеханични ротационни машини през първата половина на 20 век. Някои от тях са били използвани в различни страни до 80-те години на миналия век. Повечето от тях използваха ротори (механични колела), чиято относителна позиция определяше текущата азбука за заместване на шифъра, използвана за извършване на заместването. Най-известната от ротационните машини е немската машина Enigma от Втората световна война.

Изходните щифтове на един ротор са свързани с входните щифтове на следващия ротор и при натискане на символа на оригиналното съобщение на клавиатурата се затваря електрическа верига, в резултат на което лампата със символа за заместване на шифъра светва нагоре.

Фиг.4.19. Enigma Rotor System [www.cryptomuseum.com]

Показано е шифроващото действие на Enigma при два последователно натиснати клавиша - токът протича през роторите, "отразява" се от рефлектора, след това отново през роторите.

Фиг.4.20. Схема за криптиране

Забележка. Сивите линии показват други възможни електрически веригивътре във всеки ротор. Писмо Асе шифрова по различен начин с последователни натискания на един и същ ключ, първо влязло Ж, след това в ° С. Сигналът поема по различен път чрез завъртане на един от роторите след натискане на предишната буква от оригиналното съобщение.

3. Опишете видовете заместващи шифри.

(замени). При заместващите шифри буквите се променят на други букви от същата азбука; при кодиране буквите се променят на нещо съвсем различно - картинки, символи на други азбуки, последователности от различни знаци и др. Съставя се таблица на едно към едно съответствие между азбуката на изходния текст и кодовите символи и в съответствие с тази таблица се извършва кодиране едно към едно. За да декодирате, трябва да знаете кодовата таблица.

Съществува голямо числокодове, използвани в различни области на човешкия живот. Добре познатите кодове се използват в по-голямата си част за удобство при предаване на информация по един или друг начин. Ако кодовата таблица е известна само на предавателя и приемателя, тогава се получава доста примитивен шифър, който лесно се поддава на честотен анализ. Но ако човек е далеч от теорията на кодирането и не е запознат с честотния анализ на текста, тогава за него е доста проблематично да реши такива шифри.

A1Z26

Най-простият шифър. Нарича се A1Z26 или в руската версия A1Ya33. Буквите от азбуката се заменят с поредните им номера.

„NoZDR“ може да бъде шифрован като 14-15-26-4-18 или 1415260418.

морзов код

Букви, цифри и някои знаци са свързани с набор от точки и тирета, които могат да се предават по радио, звук, почукване, светлинен телеграф и флагове. Тъй като моряците също имат съответен флаг, свързан с всяка буква, е възможно да изпратите съобщение с флагове.

Брайл

Брайловото писмо е тактилна система за четене за слепи, състояща се от шест точки, наречени клетки. Клетката е висока три точки и широка две точки.

Различните брайлови знаци се образуват чрез поставяне на точки на различни позиции в клетка.

За удобство точките са описани при четене, както следва: 1, 2, 3 отляво отгоре надолу и 4, 5, 6 отдясно отгоре надолу.

При съставянето на текста се спазват следните правила:

    една клетка (интервал) се пропуска между думите;

    след запетая и точка и запетая клетката не се пропуска;

    тире се пише заедно с предходната дума;

    Номерът се предшества от цифров знак.

Кодови страници

В компютърните куестове и гатанки буквите могат да бъдат кодирани според техните кодове в различни кодови страници - таблици, използвани в компютрите. За текстове на кирилица е най-добре да използвате най-често срещаните кодировки: Windows-1251, KOI8, CP866, MacCyrillic. Въпреки че за сложно криптиране можете да изберете нещо по-екзотично.

Можете да кодирате в шестнадесетични числа или можете да ги конвертирате в десетични. Например буквата Yo в KOI8-R е B3 (179), в CP866 е F0 (240), а в Windows-1251 е A8 (168). И е възможно букви в десните таблици да търсят съвпадение в левите, тогава текстът ще се окаже, че е въведен в "луд" тип èαᬫº∩íαδ (866→437) или Êðàêîçÿáðû (1251→латинска-1).

И можете да промените горната половина на знаците с долната в една таблица. Тогава за Windows-1251 вместо "krakozyabra" получавате "jp" jng ap (), вместо "ХЕЛИКОПТЕР" - "BEPRNK (R). Такава промяна в кодова страницае класическа загуба на най-значимия бит по време на откази на пощенски сървъри. В този случай латинските знаци могат да бъдат кодирани чрез обратно изместване надолу със 128 знака. И такова кодиране ще бъде вариант на шифър - ROT128, но не за обичайната азбука, а за избраната кодова страница.

Точното време на произход на шифъра не е известно, но някои от намерените записи на тази система датират от 18 век. Разновидности на този шифър са използвани от розенкройцерския орден и масоните. Последните го използвали в своите секретни документи и кореспонденция доста често, така че шифърът започнал да се нарича масонски шифър. Дори върху надгробните паметници на масоните можете да видите надписи, използващи този шифър. Подобна система за криптиране е използвана по време на Гражданската война в САЩ от армията на Джордж Вашингтон, както и от затворници във федералните затвори в Конфедеративните щати на Съединените щати.

По-долу има две (сини и червени) опции за попълване на решетката на такива шифри. Буквите са подредени по двойки, като втората буква от двойката е нарисувана като символ с точка:

Авторски шифри

Изобретено е голямо разнообразие от шифри, при които един знак от азбуката (буква, цифра, препинателен знак) съответства на един (по-рядко повече) графичен знак. Повечето от тях са предназначени за използване в научнофантастични филми, анимационни филми и компютърни игри. Ето някои от тях:

танцуващи мъже

Един от най-известните шифри за заместване на автор е "". Той е измислен и описан от английския писател Артър Конан Дойл в едно от произведенията му за Шерлок Холмс. Буквите от азбуката са заменени със символи, които приличат на човечета в различни пози. В книгата малките човечета не са измислени за всички букви от азбуката, така че феновете творчески финализираха и преработиха героите и това е шифърът:

Томас Мор азбука

Но такава азбука е описана в неговия трактат "Утопия" от Томас Мор през 1516 г.:

Шифрове от анимационния сериал "Гравити Фолс"

Бил Шифър

Станфорд Пайнс (автор на дневник)

Джедайска азбука от Междузвездни войни

Извънземна азбука от Футурама

Криптонската азбука на Супермен

Бионикъл азбуки

Семантиката на HTML кода винаги е гореща тема. Някои разработчици се опитват винаги да пишат семантичен код. Други критикуват догматичните привърженици. А някои дори нямат представа какво е и защо е необходимо. Семантиката е дефинирана в HTML в тагове, класове, идентификатори и атрибути, които описват целта, но не уточняват точното съдържание, което съдържат. Тоест, говорим за разделяне на съдържанието и неговия формат.

Да започнем с един очевиден пример.

Лоша семантика на кода

Заглавие на статията
И авторът
Инко Гнито.

Добра семантика на кода

Заглавие на статията

Текстът на статия, написана от някого. Инко Гнито- неговият автор.

Независимо дали смятате, че HTML5 е готов за използване или не, сигурно е, че използването на етикета

в този случай ще бъде по-привлекателна от обикновено
указващ класа. Заглавието на статията става заглавие, съдържанието става параграф, а удебеленият текст става етикет .

Но не всичко е толкова ясно представено от HTML5 тагове. Нека да разгледаме набор от имена на класове и да видим дали отговарят на семантичните изисквания.

Не семантичен код.Това е класически пример. Всеки CSS работен плот за мрежи използва тези типове имена на класове, за да дефинира елементи на мрежата. Независимо дали е "yui-b", "grid-4" или "spanHalf" - такива имена са по-близки до дефинирането на маркиране, отколкото до описание на съдържание. Използването им обаче в повечето случаи е неизбежно при работа с модулни мрежови модели.

семантичен код.Долният колонтитул ( долен колонтитул ) се превърна в трайна ценност в уеб дизайна. Това е долната част на страницата, която съдържа елементи като повтаряща се навигация, права за използване, информация за автора и т.н. Този клас дефинира група за всички тези елементи без тяхното описание.

Ако сте преминали към използване на HTML5, тогава е по-добре да използвате елемента

в такива случаи. Бележката се отнася за всички други части на уеб страницата (заглавката трябва да бъде
, страничен панел -