Мал. 2. Функція перетворення f(R,X) в алгоритмі ГОСТ 28147-89.
Додаток Б. Символи кирилиці (альтернативна кодова таблиця ASCII)
Сим-л | Дес. | Двійк. | Сим-л | Дес. | Двійк. |
А | б | ||||
Б | в | ||||
В | г | ||||
Г | д | ||||
Д | е | ||||
Е | ж | ||||
Ж | з | ||||
З | и | ||||
И | й | ||||
Й | к | ||||
К | л | ||||
Л | м | ||||
М | н | ||||
Н | о | ||||
О | п | ||||
П | р | ||||
Р | с | ||||
С | т | ||||
Т | у | ||||
У | ф | ||||
Ф | х | ||||
Х | ц | ||||
Ц | ч | ||||
Ч | ш | ||||
Ш | щ | ||||
Щ | ъ | ||||
Ъ | ы | ||||
Ы | ь | ||||
Ь | э | ||||
Э | ю | ||||
Ю | я | ||||
Я | пробіл | ||||
а |
Додаток В. Блок підстановки в алгоритмі шифрування ГОСТ 28147-89
|
|
Приклад. Нехай 32-бітна послідовність має вигляд
Розіб`ємо вхідну послідовність на 8 блоків по 4 біти. Шостий блок 1100 пропускаємо через 6-ий вузол підстановки за наступним правилом: перетворюємо двійкове число 1100 до десяткового вигляду – 12. Вміст 12-го рядка для 6-го вузла підстановки дорівнює 9, що у двійковому вигляді є 1001. Таким чином, 4-бітный блок 1100 замінюєтся на 1001. Всі інші блоки замінюються аналогічно.
номер вузла | ||||||||
вхід | ||||||||
адреса | ||||||||
вміст | ||||||||
результат |
Вихідна послідовність має вигляд
Додаток Г. Алгоритм шифрування RSA
Алгоритм шифрування RSA відноситься до криптографічних систем із відкритим ключем. Криптосистеми з відкритим ключем (асиметричні криптосистеми) були розроблені в другій половині семидесятих років. В асиметричних криптосистемах процедури прямого і зворотнього криптоперетворення виконуються на різних ключах і не мають між собою очевидних і легковідсліджуваних зв`язків, що дозволяють за одним ключем визначити інший. В такій схемі знання тільки ключа зашифрування не дозволяє розшифрувати повідомлення, тому він не є секретним елементом шифру і зазвичай публікується учасником обміну для того, щоб будь-хто бажаючий міг послати йому зашифроване повідомлення.
|
|
Принцип функціонування асиметричної криптосистеми полягає в наступному:
· користувач А генерує два ключі - відкритий (незасекречений) і секретний - і передає відкритий ключ по незахищеному каналу користувачу Б;
· користувач Б шифрує повідомлення, використовуючи відкритий ключ шифрування користувача А;
· користувач Б посилає зашифроване повідомлення користувачу А по незахищеному каналу;
· користувач А отримує зашифроване повідомлення і дешифрує його, використовуючи свій секретний ключ.
Пари {відкритий ключ; секретний ключ} обчислюються за допомогою спеціальних алгоритмів, причому жоден ключ не може бути виведений з другого.