КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Теоретическая часть. «криптоанализ шифра RSA»
ПРИ ВЫЧИСЛЕНИИ АРИФМЕТИЧЕСКИХ ВЫРАЖЕНИЙ ОПРЕДЕЛЕНИЕ ПОРЯДКА ВЫПОЛНЕНИЯ ОПЕРАЦИЙ Лабораторная работа № 1 Лабораторная работа №7 «Криптоанализ шифра RSA» Задание к лабораторной работе. В таблице дан открытый ключ шифрования RSA и зашифрованное сообщение. Напишите программу, которая: 1. Проводит факторизацию N. 2. Определяет закрытый ключ. 3. Расшифровывает сообщение.
Варианты.
Цель работы: ознакомление с польской записью арифметических выражений и стековой организацией данных, которые широко применяются в процессе трансляции языков программирования; изучение, анализ и программная реализация алгоритма вычисления арифметических выражений, представленных в польской записи.
Арифметические выражения являются важным элементом языков программирования высокого уровня, а их трансляция входит в функции языковых процессоров. Поскольку эти выражения являются неотъемлемой частью фактически всех вычислительных программ САПР, в составе языковых процессоров необходимо иметь алгоритмы, распознающие арифметические выражения в тексте программы и вычисляющие их как можно быстрее и эффективнее. В процессе трансляции арифметические выражения преобразуются в некоторую внутреннюю форму. Наиболее часто используется такое внутреннее представление арифметических выражений, как польская запись. Все формы внутреннего представления выражений, в том числе польская запись, содержат элементы двух видов - операторы и операнды. В простейшем случае операторы задаются знаками арифметических операций, такими как сложение "+", вычитание "-", умножение "*", деление "/", возведение в степень "^" и т.п. Операндами являются имена переменных и константы, над которыми выполняются указанные операции. Любому арифметическому выражению можно поставить в соответствие бинарное дерево, все конечные вершины (листья) которого соответствуют операндам, а внутренние вершины и корень - операторам. Например, дерево, описывающее арифметическое выражение (a - b) * с + d / (e ^ f), (1) имеет вид, показанный на рис. 1.
Рис. 1. Бинарное дерево для выражения (a - b) * с + d / (e ^ f) Очевидно, что при представлении арифметического выражения в виде дерева не требуются скобки, так как приоритет соответствующих операций учитывается структурой дерева. Однако бинарное дерево не позволяет однозначно задать порядок выполнения некоторых промежуточных вычислений, необходимых для получения значения всего выражения. В частности, вычитание a - b можно выполнять раньше возведения в степень e ^ f, но допустимо и обратное.
Дата добавления: 2015-06-28; Просмотров: 509; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |