Перевод цифр в буквы алфавита

Азбука веры

5 ступеней веры

Алфавитный раздел

Конвертер церковнославянских, греческих, еврейских и римских чисел

Цифры в церковнославянских (а также в греческих, еврейских и латинских) книгах обозначаются буквами. Церковнославянская буква-цифра имеет над собой титло простое и после себя точку. В двузначных и многозначных числах титло ставится на второй букве от конца.

1 2 3 4 5 6 7 8 9
Единицы а҃. в҃. г҃. д҃. є҃. ѕ҃. з҃. и҃. ѳ҃.
Десятки і҃. к҃. л҃. м҃. н҃. ѯ҃. ѻ҃. п҃. ч҃.
Сотни р҃. с҃. т҃. у҃. ф҃. х҃. ѱ҃. ѿ҃. ц҃.

Тысячи записываются теми же буквами, как и единицы, десятки и сотни, но с добавлением перед буквой символа ҂. Числа составляются также как и в современной арабской нотации: сначала пишутся тысячи, затем сотни, затем десятки и единицы, за исключением чисел оканчивающихся на 11…19, где последние два знака переставляются согласно славянскому прочтению (например, один-на-дцать, то есть сперва «один», а потом «дцать» = 10).

Если в многозначной цифре число сотен, десятков или единиц нулевое, то на их место ни какой знак вроде нуля не подставляется, а число становится короче.

Большие числа (десятки и сотни тысяч, миллионы и миллиарды) в разных источниках могут выражаться не через знак ҂, а специальным образом обведенной буквой, использовавшейся для обозначения единиц. Впрочем, для больших чисел эти обозначения были довольно нестабильны.

10 000 000 — (вран)

100 000 000 — (коло́да)

1000 000 000 — (тма тем)

Церковнославянская система чисел является абсолютной калькой греческой системы счисления.

Греческая (ионийская, новогреческая) система счисления — алфавитная запись чисел, в которой в качестве символов для счёта, употребляют буквы классического греческого алфавита и некоторые буквы доклассической эпохи, такие как ϝ (дигамма), ϟ (коппа) и ϡ (сампи).

γʹ — 3 ιδʹ — 14 τμεʹ — 345 ͵ηωπηʹ — 8888 ͵ρ͵κ͵γυνϛʹ — 123456

Еврейская система счисления в качестве цифр использует 22 буквы еврейского алфавита. Алфавитные обозначения чисел были заимствованы евреями у древних греков. Еврейские числа записываются справа налево; перед последней (левой) буквой ставится двойная кавычка — гершаим (״). Если буква всего одна, то после неё ставится одиночная кавычка — гереш (׳). Для обозначения 1-9 тысяч используются первые девять букв, после которых ставится апостроф. Исключения составляют числа оканчивающиеся на 15 и 16, которые представляются как 9+6 и 9+7 соответственно (ибо «Не поминай Имени Божия всуе»).

ג׳ — 3 י״ד — 14 שמ״ה — 345 ח’תתפ״ח — 8888

В отличии от первых трех — в римской системе счисления для представления любого числа используются только 7 букв латинского алфавита I (1), V (5), X (10), L (50), C (100), D (500) и M (1000). В последующем к ним были добавлены ещё 4 символа (от 5 000 до 100 000). Для правильной записи больших чисел римскими цифрами необходимо сначала записать число тысяч, затем сотен, затем десятков и, наконец, единиц. Числа записываются при помощи повторения этих цифр. При этом, если большая цифра стоит перед меньшей, то они добавляются, если же меньшая – перед большей, то меньшая вычитается из большей.

III — 3 XIV — 14 CCCXLV — 345 ↁMMMDCCCLXXXVIII — 8888 ↈↂↂMMMCDLVI — 123456

Источник

Шифр Хилла

Калькулятор позволяет зашифровать и расшифровать текст методом Хилла.

Шифр Хилла — полиграммный шифр подстановки, основанный на линейной алгебре. Лестер С. Хилл изобрел этот шифр в 1929. Калькулятор ниже позволяет зашифровать и расшифровать текст методом Хилла. Подробности о шифре для интересующихся приведены под калькулятором.

Шифр Хилла

Как работает шифр

Для начала символы используемого алфавита (в широком смысле этого слова, например, алфавит может включать в себя пробел и некоторые знаки пунктуации, как в калькуляторе выше) кодируются числами, то есть каждому символу алфавита сопоставляется некоторое число, например, порядковый номер. Выбирается матрица размера n x n, которая будет являться ключом шифра. Весь текст разбивается на блоки из из n букв, числовые значения которых рассматриваются как вектор размерности n. Каждый вектор умножается на матрицу шифрования n × n. Результирующий блок (вектор) размерности n — соответствующий исходному блоку зашифрованный текст. Операции сложения и умножения при этом выполняются в кольце вычетов по модулю m, где m — размерность алфавита. Очевидно, это делается для того, чтобы значения результирующего блока тоже принадлежали исходному алфавиту.

Ключ, в принципе, можно сразу задавать матрицей, но для удобства еще чаще задают кодовой фразой, числовое представление которой трансформируют в матрицу. Понятно, что для того, чтобы получить квадратную матрицу n x n, длина кодовой фразы должна являться квадратом целого числа, то есть, 4, 9, 16, 25, и т. д.

Дополнительные ограничения на ключ шифра накладывает необходимость осуществления расшифровки зашифрованного текста 🙂
Предположим, что мы зашифровали исходный вектор B матрицей шифрования А и получили вектор С — соответствующий зашифрованному тексту. Для того, чтобы восстановить исходный вектор B по вектору C (расшифровать текст), вектор С надо умножить на матрицу, обратную к матрице А.

Таким образом, чтобы операция расшифрования была возможна, матрица шифрования должна быть обратима в — кольце вычетов по модулю m.

Отсюда вытекают два условия: детерминант матрицы не должен быть равен 0, и, дополнительно, детерминант матрицы должен иметь обратный элемент в кольце вычетов по модулю m.
Второе следует из формулы
.
где операция деления на детерминант заменена на операцию умножения на обратный элемент.

Чтобы иметь обратный элемент, детерминант и модуль (длина алфавита) должны быть взаимнопростыми числами. См. Обратный элемент в кольце по модулю. Для того, чтобы повысить вероятность этого, обычно составляют алфавит, длина которого является простым числом. Поэтому русский алфавит в данном примере был расширен пробелом и символами пунктуации до 37 символов.

Не каждая матрица подойдет для шифра Хилла (и не каждое кодовое слово), но тем менее, подходящих более чем достаточно. Кстати, когда я писал калькулятор, я случайно с первого раза выбрал неподходящее кодовое слово — «абыр валг».

Источник

Шпаргалка по Криптографии. Шифры

Настоящая статья описывает некоторые из базовых криптографических шифров + для некоторых расписан способ взлома.

Шифры

блочные: сцепления блоков (CBC), простой замены (ECB)

потоковые: асинхронные, синхронные

Шифр Цезаря

1. Расписываем алфавит (0.а 1.б 2.в и тд)

2. Ключ k = n-1 (для русского алфавита n = 33)

3. Каждой букве открытого текста сопоставляем букву на k порядка больше

— Ищем одно слово и вычитаем поочередно числа начиная с 1, найдя адекватное, расшифровываем весь текст

Шифр простой замены

1. Расписываем алфавит в стандартном порядке

2. Расписываем алфавит в рандомном порядке

3. Каждой букве текста сопоставляем соответствующую букву из второго алфавита

— Атака по маске: анализируем текст, находя маленькие слова или повторяющиеся сочетания букв

— Частотный анализ: находим наиболее используемые буквы и предполагаем, что они соответствуют наиболее используемым буквам в нашем алфавите (о,е,а,и и тд)

Полиалфавитные шифры

1. Расписываем алфавит рандомно в две или более таблицы

2. Например, первую букву шифруем соответствующей ей цифрой из первой таблицы, вторую из второй, потом опять из первой и тд

Шифр Гронсфельда

1. Расписываем алфавит

3. Например k = 134, тогда первая буква увеличивается на 1, вторая на 3, третья на 4, четвертая снова на 1 и тд

Шифр Виженера

1. Составляем квадратную таблицу n*n (по вертикали и горизонтали располагаются буквы алфавита по порядку)

2. Подставляем на рандоме буквы в клетки, по диагонале буквы одинаковые

3. Получаем картину

4. Когда дойдем до «я», то начинаем диагонали заполнять с первой буквы (в нашем случаи это «п», потом «г»)

— Индекс совпадений = 0,0553

Необходимо определить длину ключа, начинаем с двух (далее будем увеличивать на один), выписываем каждую вторую букву начиная с первой. Считаем количество букв l в общем и количество появлений каждой буквы n в отдельности. Далее считаем ИС для каждой буквы, он равен n(n-1)/l(l-1). Складываем все значения и сравниваем с константой. Если сумма

или > константы, то ключ данной длинны.

Например мы получили, что k = 4, тогда формируем 4 группы букв (каждую 4 букву начиная с первой, каждую 4 букву начиная со второй и тд), по методу частотного анализа, находим самую популярную букву (в реальном алфавите это буква «о»), следовательно как в шифре Цезаря находим наш ключ для каждой группы (самая популярная «щ», тогда «щ»-«о»=ключ к данной группе), дешифруем и возвращаем буквы на место.

Шифр RSA

Есть две стороны Alice и Max + хакер Eva

5. У Max есть <899,11>и некое сообщение для Alice m = 60

6. зашифрованное сообщение c = m^e mod n = 308

7. Alice получает c = 308 и находит m = c^d mod n = 60

Протокол Диффи-Хеллмана

Путем выполнения данного алгоритма Alice и Max владеют ключом шифрования через открытые каналы (то есть Eva видит все, что они пересылают)

2. Max получил , придумал случайное натурально число b = 31 и рассчитал открытый ключ B = g^b mod p = 6

3. Alice также придумывает случайное натурально число a = 23 и рассчитывает открытый ключ A = g^a mod p = 11

4. Они обмениваются A и B

5. Далее рассчитывают K = B^a mod p = 14 или K = A^b mod p = 14

6. Тем временем Eva владеет только двумя парами чисел p,g и A,B, и никак не может рассчитать секретный ключ

— Человек по середине: Eva перехватывает вместо A и B отправляет в обе стороны свое полученное число C, тем самым в итоге имея два ключа (один с Alice, другой с Max)

Хеш-функция

Алгоритм, который приводит любое сообщение к новому определенной заранее длины.

Используется для подтверждения пароля: сервер отправляет клиенту некую строку (например номер клиента в списке на основании логина), далее считается хеш функция от (пароль+строка), отправляется серверу и он сравнивает с такой же хеш функцией

MAC (Эм Эй Си)

Проверка целостности сообщений

1. Max и Alice договариваются о секретном ключе заранее

2. Alice в конце сообщения добавляет ключ и хеширует

3. Alice печатает сообщение и добавляет в конце хеш

4. Max получает сообщение добавляет к основной части сообщения ключ

Блочные шифры

Разбиваем весь текст на блоки фиксированной длины и работаем с каждым блоком как с отдельным текстом, шифруя его ключом.

Если длина последнего блока не совпадает с фиксированной длиной, необходимо дополнить его некоторыми символами.

Потоковые шифры

1. Исходный текст переводится в биты (например 800 бит)

2. Ключ переводится в биты подается на ГПСЧ

3. Снимаем с ГПСЧ 800 бит

Шифр Тритемиуса

1. Расписываем алфавит

2. Расписываем порядок символов в сообщение (начиная с 0)

Электронная подпись

Подтверждает личность автора и целостность сообщения

Alice закрытым ключом подписывает сообщение s = m^d mod n

Max получает сообщение m и подпись s, открытым ключом расшифровывать подпись p = s^e mod n и удостоверяется, что m = p

Шифр Вернама

3. складываем сообщение и ключ по модулю 2

4. расшифровка: закрытый текст + ключ по модулю 2

Источник

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
Uchenik.top - научные работы и подготовка
0 0 голоса
Article Rating
Подписаться
Уведомить о
guest
0 Комментарий
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии