Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Шифрование методами аналитических преобразований

65K
20 декабря 2010 года
eclipseg
1 / / 20.12.2010
Доброе время суток))Помогите пожалуйста написать программку
в голове есть как можно сделать, а на практике не выходит...>_<

Шифрование методами аналитических преобразований основано на понятии односторонней функции. Будем говорить, что функция у=f(х) является односторонней, если она за сравнительно небольшое число операций преобразует элемент открытого текста х в элемент шифр-текста у для всех значений х из области определения, а обратная операция (вычисление x=F**-1(y) при известном шифр-тексте) является вычислительно трудоемкой.
В качестве односторонней функции можно использовать следующие преобразования:
умножение матриц;
решение задачи об укладке ранца;
вычисление значения полинома по модулю;
экспоненциальные преобразования и другие.
Метод умножения матриц использует преобразование вида Y=C*X, где Y=||y1,y2, ...,yn||*Т , С=||Cij|| , X=||x1,x2,...,xn||

Пример 1. Открытый текст: "ПРИКАЗ" ("16 17 09 11 01 08" согласно таблице 1).
Матрица С:
¦1 3 2¦
¦2 1 5¦
¦3 2 1¦

¦1 3 2¦ ¦16¦
¦2 1 5¦ X ¦17¦ =¦85 94 91¦
¦3 2 1¦ ¦09¦

¦1 3 2¦ ¦11¦
¦2 1 5¦ X ¦01¦ = ¦30 63 43¦
¦3 2 1¦ ¦08¦

Шифр-текст: "85 94 91 30 63 43".

Таблица 1
Код Буква Код Буква Код Буква
1 А 12 К 23 Х
2 Б 13 Л 24 Ц
3 В 14 М 25 Ч
4 Г 15 Н 26 Ш
5 Д 16 О 27 Щ
6 Е 17 П 28 Ъ
7 Ё 18 Р 29 Ы
8 Ж 19 С 30 Ь
9 З 20 Т 31 Э
10 И 21 У 32 Ю
11 Й 22 Ф 33 Я

Напишите программу, производящую шифрование произвольного слова из файла text1.txt методом умножения матриц (матрицу С взять из приведенного выше примера). При этом зашифрованный текст должен помещаться в файл text2.txt.
Отчет должен содержать:
1 Порядок шифрования слова вручную (слово выбирается по таблице 2)
2 Текст программы
3 Экранные формы программы, а также скриншоты исходного и зашифрованного файлов

у меня в голове так...

первая матрица алфавит А
вторая та что матрица С

смотрим на букву и ищем её порядковый номер в матрице
его записываем в матрицу В
когда матрица В насчитывает 3 цифры умножаем её на С и записываем в переменную S значение которой присвоим в поле Вывода
продолжаем процесс пока не кончится текст и

конец...

кто мои слова может в код правильно написать..??помогите пожалуйста добрые люди...
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог