ГОСТ 28147-89 - вітчизняний стандарт шифрування даних.
В алгоритмі ГОСТ 28147-89 використовується порівняно нескладна функція шифрування, що складається з адитивною операції комбінування вхідного напівблоки з ключовим елементом раунду (складання їх по модулю 232, підстановки, виконуваної незалежно в восьми 4-бітових групах, і бітової перестановки) обертання на 11 біт в сторону старших розрядів. Схема раунду шифрування по ГОСТ показана на рис. 1.
Мал. 1. Схема перетворення даних для одного раунду шифрування по алгоритмам ГОСТ 28147-89 (а) і AES (б)
AES має принципово іншу архітектуру, що отримала назву "Квадрат" (Square). Вона базується на прямих перетвореннях шифруемого блоку. Процес зашифрування також складається з серії однотипних раундів, але на кожній ітерації блок перетвориться як єдине ціле і незмінних частин не залишається. Кожен раунд полягає в побітового складання по модулю 2 поточного стану шифруемого блоку і ключового елемента раунду, за яким слід складне нелінійне перетворення. Схема алгоритму AES приведена на рис. 2 б.
Мал. 2. Схема перетворення даних при шифруванні по алгоритмам ГОСТ 28147-89 (а) і AES (б)
Алгоритм RSA працює наступним чином: беруться два досить великих простих числа p і q і обчислюється їх добуток n = p * q; n називається модулем.Потім вибирається число e, що задовольняє умові
1
- e - відкритий (public) показник
- d - приватний (private) показник.
- (N; e) - відкритий (public) ключ
- (N; d). - приватний (private) ключ.
Подільники (фактори) p і q можна або знищити або зберегти разом з приватним (private) ключем.
Алгоритм Data Encryption Standard. (DES)
Цей алгоритм є типовим представником блокових шифрів. Він може бути реалізований як програмно так і апаратно. Алгоритм Des використовує в якості вхідних блоків 64 бітні блоки.
Загальну схему можна представити в наступному вигляді:
Алгоритм Des являє собою комбінацію двох основних методів шифрування - підстановки і перестановки. Основним комбінаційною блоком алгоритму Des є застосування до тесту одиничної комбінації цих двох методів. Ця операція носить назву раунд. Таких раундів в алгоритмі 16.