Шифрование текста
Разработка и испытание программы шифрующей и дешифрующей текст пятью различными методами. Код символа в Паскале, определение с помощью функции Ord. Написание текста программы реализующей шифрование. Составление блок-схемы, описывающую её работу.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | реферат |
Язык | русский |
Дата добавления | 13.12.2013 |
Размер файла | 23,6 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
МИНОБРНАУКИ РОССИИ
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Чувашский государственный университет имени И.Н. Ульянова»
(ФГБОУ ВПО «ЧГУ им. И.Н. Ульянова»)
Факультет прикладной математики,
физики и информационных технологий
Кафедра прикладной математики
Реферат
по языкам программирования
«Шифрование текста»
Выполнила: студентка
группы ФМ-11-12
Трофимова Ксения Витальевна
Проверила:
ст. преподаватель Сидорова Е.Б.
Чебоксары 2012
Содержание
Введение
1. Основная часть
1.1 Описание алгоритма решения
1.2 Текст программы
1.3 Блок-схема алгоритма
Выводы
Список литературы
Введение
Чтобы зашифровать текст, записанный с помощью русских букв и знаков препинания, его можно переписать, заменив каждую букву непосредственно следующей за ней по алфавиту (буква я заменяется на а).
а) Зашифровать данный текст.
б) Расшифровать данный текст.
Постановка задачи
То, что информация имеет ценность, люди осознали очень давно. Ведь еще с древних времен переписка правителей была объектом пристального внимания их недругов и друзей. Именно тогда и возникла задача защиты этой переписки от чрезмерно любопытных глаз. Древние пытались использовать для решения этой задачи самые разнообразные методы, и одним из них была тайнопись - умение составлять сообщения таким образом, чтобы его смысл был недоступен никому кроме посвященных в тайну. На протяжении всей своей многовековой истории, вплоть до совсем недавнего времени, это искусство служило немногим, в основном верхушке общества, не выходя за пределы резиденций глав государств, посольств и т.д. И лишь несколько десятилетий назад все изменилось коренным образом - информация приобрела самостоятельную коммерческую ценность и стала широко распространенным, почти обычным товаром. Ее производят, хранят, транспортируют, продают и покупают, а значит, воруют и подделывают и, следовательно, ее необходимо защищать. Современное общество все в большей степени становится информационно-обусловленным, успех любого вида деятельности все сильней зависит от обладания определенными сведениями и от отсутствия их у конкурентов. И чем сильней проявляется этот эффект, тем больше потребность в защите информации. Одним словом, возникновение индустрии обработки информации привело к возникновению индустрии средств защиты информации.
Целью проекта является разработка программы, реализующей шифрование
В проекте были поставлены следующие задачи:
Анализ литературы при разработке программы шифрования
Анализ алгоритмов шифрования;
Разработка программы реализующей алгоритм шифрования;
Разработка руководства пользователя;
Разработка руководства программы.
Объектом в курсовом проекте является - методы шифрования
1. Основная часть
1.1 Описание алгоритма решения
Чтобы зашифровать и расшифровать тест, воспользуемся функциями encrypt и decrypt, где encrypt отвечает за зашифровку, а decrypt-расшифровку. Также нам понадобится формула
k:=ord(a[i])+31,
где k-номер буквы, к коду i-того символа введенной стоки добовляем
a[i]:=chr(k)
31(т. к. в русском алфавите 33 буквы, а буква «а» =«я») и преобразуем обратно в символ.
То есть код символа в Паскале можно определить при помощи функции Ord. Ее формат: Ord(C), где С - либо непосредственно указанный символ, либо переменная символьного типа, либо один символ строковой переменной. Есть и обратная функция, которая возвращает символ по известному коду. Это функция Chr(N), где N - выражение, приводящее к целому числу в интервале от 0 до 255 (возможные значения кода символа).
Объявляем переменные a:string, а- это строка буквенного типа, состоящая из 255 символов.
Создаем условие, что для i - того элемента, который начинается с единицы, я возвращаю длину строковой переменной в символах с помощью функции Length. - Length(а).
Условие продолжается: Если a[i] = А,то тогда выполняется действие
k:=ord(a[i])+31;
a[i]:=chr(k).
или же a[i] in ['Б'..'Я','б'..'я'],то
k:=ord(a[i])-1;
a[i]:=chr(k).
С помощью действия decrypt:=a ,мы получим - результат: текст.
Потом я создаю такое же условие для функции зашифрования, только
k:=ord(a[i])+ 1;
a[i]:=chr(k).
Объявляем переменные определенного типа: a:string; mode:byte;
Вывод на экран приглашения для ввода числа: Begin; Readln(a); Repeat; Write('Выберите режим (1-шифрование, 2-расшифрование): '); Readln(mode). Дальше нам нужен оператор Case (Пока выполняется это условие делай от начала - Case Оператор( группы до конца); Repeat; Повторяет до тех пор пока условие не будет верным).
1.2 Текст программы
Uses
crt;
Function decrypt(a:string):string;
Var i,k:integer;
Begin
For i:=1 to length(a) do
If (a[i] = 'А') or (a[i] = 'а') then Begin
k:=ord(a[i])+31;
a[i]:=chr(k);
End
else
If a[i] in ['Б'..'Я','б'..'я'] then Begin
k:=ord(a[i])-1;
a[i]:=chr(k);
End;
decrypt:=a;
End;
Function encrypt(a:string):string;
Var i,k:integer;
Begin
For i:=1 to length(a) do
If (a[i] = 'Я') or (a[i] = 'я') then Begin
k:=ord(a[i])-31;
a[i]:=chr(k);
End
else
If a[i] in ['А'..'Ю','а'..'ю'] then Begin
k:=ord(a[i])+1;
a[i]:=chr(k);
End;
encrypt:=a;
End;
Var
a:string;
mode:byte;
Begin
Readln(a);
Repeat
Write('Выберите режим (1-шифрование, 2-расшифрование): ');
Readln(mode);
Until (mode = 1) or (mode=2);
Case mode of
1:writeln(encrypt(a));
2:writeln(decrypt(a));
End;
End.
Проверка: шифрующий дешифрующий Паскаль блок-схема
Например введем текст «Я люблю маму»
Выберем режим (1-шифрование, 2-расшифрование): 1
Получим: А мявмя нбнф
Введем «А мявмя нбнф»
Выберем режим (1-шифрование, 2-расшифрование): 2
Я люблю маму
Вывод: зашифрованные и расшифрованные данные полностью совпадают.
1.3 Блок схема
Размещено на http://www.allbest.ru/
Выводы
Я обрела навыки работы в среде программирования Pascal. Результатом моей работы стала программа «Шифрование и дешифрование текста».
Основными результатами работы стали:
1. Изложение материала по теме «шифрование и дешифрование текста».
2. Описание алгоритма программы
3. Описание программы
4. Составление блок-схемы, характеризующей работу программы
5. Составление и испытание программы шифрующей и дешифрующей текст пятью различными методами
Литература
1. Web: <http://www.realcoding.net/article/view/>
2. Web: <http://ru.wikipedia.org/wiki/Шифр_подстановки>
3. Л.Д. Михелев. «Язык программирования паскаль» издательство. Москва, 2007. - 432с.: ил.
4. Web: <http://www.asciitable.com/>
5. Web: <http://pascal-video.ru/help-pascal.php?id=215>
6. Web: <http://www.cyberforum.ru/pascal/thread50710.html>
7. Фарафонов В.В. Турбо Паскаль 7.0. Начальный курс: учеб. пособие. - М.: Кнорус, 2006.
8. Методические указания к лабораторным работам. ГОУВПО «воронежский государственный технический университет»; сост. Р.В. Батищев. Воронеж, 2006. 53с.
http://images.yandex.ru/ блок схемы
http://forum.developing.ru
Размещено на Allbest.ru
...Подобные документы
История появления и развития шифрования текста. Проблема шифрования и дешифрования текстовых сообщений в современности. Создание программы для зашифровки и расшифровки вводимого текста пятью методами: Атбаш, Цезаря, Полибия, Гронсфельда и Винжера.
курсовая работа [923,6 K], добавлен 26.12.2011Разработка алгоритмов на персональном компьютере, среда Турбо Паскаль. Работа программы для шифровки и дешифровки текста. Алгоритм шифрования: с помощью команды ORD. Функция Password а преобразовании символа, введенного пользователем ключа в его числовой
курсовая работа [19,6 K], добавлен 17.10.2008Разработка программы, реализующей процедуры шифрования и расшифрования текста по стандарту DES (Data Encryption Standard). Структура алгоритма шифрования, схема выработки ключевых элементов. Использование криптографического программного средства.
курсовая работа [1,7 M], добавлен 15.06.2013Разработка криптографического алгоритма программы ручного шифра по таблице Виженера. Разработка программы, выполняющей шифрование и расшифрование. Особенности использования в качестве ключа самого открытого текста. Алгоритмы решения "обратных" задач.
курсовая работа [45,0 K], добавлен 13.11.2009Краткая характеристика библиотек: stdio.h, conio.h, string.h, stdafx.h. Шифр Плейфера как подстановка символов из таблицы, основные варианты. Структура программы playfer.exe. Создание таблицы перекодировки. Ввод, шифрование и дешифрование текста.
курсовая работа [216,7 K], добавлен 18.05.2013Создание приложения для шифрования–дешифрования текста тремя алгоритмами (алгоритм "Цезаря","Модифицированного Цезаря", "Скитала"). Исходный текст компонента. Инструкция пользователя, возможность просмотра примерного алгоритма. Исходный текст программы.
курсовая работа [2,8 M], добавлен 27.02.2015Изучение определения, описания и вызова функций, указателей и ссылок на них. Написание функции умножения произвольного столбца двумерного массива на const. Умножение 2 столбцов массива на константы. Составление блок-схемы алгоритма и текста программы.
лабораторная работа [182,3 K], добавлен 09.01.2012Проблема скрытия и защиты информации от несанкционированного использования. История создания шифра. Решения задачи шифрования текста и кодирования данных. Тестирование полученного приложения и анализ работы программы с точки зрения пользователя.
курсовая работа [3,0 M], добавлен 24.11.2013Работа с одномерными и двухмерными массивами: составление функций нахождения заданных элементов, их количества и суммы под и над главной диагональю, поиск среднего арифметического. Составление блок-схемы, написание текста программы, его тестирование.
контрольная работа [52,0 K], добавлен 27.12.2010Разработка приложения для шифрования данных с помощью алгоритма DES5: процесс шифрования, расшифрования, получение ключей. Спецификация программы, процедуры и функции; описание интерфейса пользователя. Реализация задачи в среде программирования DELPHI.
курсовая работа [812,6 K], добавлен 27.03.2012Основные требования к разрабатываемым программам и исходным текстовым файлам. Характеристика шифров замены. Укрупненные структурные схемы и коды программ шифрования и дешифрования, скриншоты их выполнения. Пример зашифрованного текста и его дешифрования.
курсовая работа [556,8 K], добавлен 14.01.2013История возникновения криптографии. Открытый ключ криптосистемы. Шифрование секреторного ключа. Математические методы обеспечения конфиденциальности и аутентичности информации. Преобразование текста на основе секретного алгоритма в шифрованный текст.
презентация [260,8 K], добавлен 11.10.2015Возможности создания и обработки графики. Алгоритм шифрования текста в графику. Изменения цветовых каналов. Инициализация объектов html-сущностей. Формирование декодированной строки. Инструменты для обработки массивов, текстовых данных и графики.
курсовая работа [50,5 K], добавлен 26.11.2013Перевод исходного текста и первого подключа в двоичную последовательность. Логическое сложение с исключением. Открытый и закрытый ключи в алгоритме шифрования RSA. Шифрование и расшифрование. Электронная цифровая подпись. Применение функции хеширования.
контрольная работа [21,9 K], добавлен 28.03.2012Разработка программы шифрования данных с использованием алгоритма DES. Структура алгоритма, режимы его работы. Электронный шифровальный блокнот. Цепочка цифровых блокнотов. Цифровая и внешняя обратная связь. Структура окна: функции основных кнопок.
лабораторная работа [830,3 K], добавлен 28.04.2014Изучение категории типов данных, видов выражений и операций, работа на языке Си. Составление программы вычисления значения функции у(х) при произвольном значении х. Блок-схема алгоритма. Описание текста программы и рассмотрение контрольного примера.
лабораторная работа [124,7 K], добавлен 09.01.2012Описание работы программы, осуществляющей запись команд графического экрана в файл формата BMP. Изучение функции чтения 18-битовых значений из нескольких последовательно расположенных регистров таблицы цветов. Составление блок-схемы и текста программы.
курсовая работа [198,1 K], добавлен 20.11.2012Составление программы-переводчика текста. Обеспечение пословного перевода. Сценарий работы проекта. Главное окно переводчика. Направление перевода. Изменение состояния панелей инструментов с помощью контекстного меню. Окно Tutor. Документация проекта.
курсовая работа [725,6 K], добавлен 11.10.2008Элементы и переменные, используемые для составления записи в Паскале. Основные числовые типы языка Turbo Pascal. Составление блок-схемы приложения, программирование по ней программы для вычисления функции. Последовательность выполнения алгоритма.
лабораторная работа [256,9 K], добавлен 10.11.2015Проектирование пользовательского интерфейса программы, осуществляющей шифрование и дешифрование файлов. Выбор формата представления данных. Список процедур, макросов и их назначение. Описание используемых в программе функций, ее тестирование и отладка.
курсовая работа [29,3 K], добавлен 17.05.2013