Категории раздела
Примеры шифрования [8]
Шифрование методом Льюиса, Шифрование методом Атбаш, Шифрование методом Цезаря, Квадрат Полибия, Шифр Вижинера, Шифр Гронсфельда, Шифрование с помощью решетки, Шифр Хилла (с длиной блока = 2),
Статистика Онлайн всего: 1
Гостей: 1
Пользователей: 0
Шифр Гронсфельда
function GronsfeldEncipher(toCode, K: string): string; var i, T, _T: integer; begin for i := 1 to length(toCode) do begin _T := ord(toCode[ i ]); T := (Ord(toCode[ i ]) + (Ord(K[(pred(i) mod length(K)) + 1]) - Ord('0')) ); if T >= 256 then dec(T, 256); toCode[ i ] := Chr(T); end; GronsfeldEncipher := toCode; end; function GronsfeldDecipher(toDecode, K: string): string; var i, T: integer; begin for i := 1 to length(toDecode) do begin T := (Ord(toDecode[i]) - (Ord(K[(pred(i) mod length(K)) + 1]) - Ord('0')) ); if T < 0 then Inc(T, 256); toDecode[ i ] := Chr(T); end; GronsfeldDecipher := toDecode; end; var s: string; begin s := GronsfeldEncipher('INFORMATION', '2178'); writeln(s); writeln('s = ', GronsfeldDecipher(s, '2178')); end.
Категория: Примеры шифрования | Добавил: Student (29.07.2009)
Просмотров: 6554 | Комментарии: 1
| Рейтинг: 1.0 /1 |
- Оценить -
Отлично
Хорошо
Неплохо
Плохо
Ужасно
Добавлять комментарии могут только зарегистрированные пользователи.
[
Регистрация |
Вход ]