Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

На тему - Изучение алгоритмов RS генерации секретного и открытого ключа По дисциплине- ldquo; Основы защит

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

Министерство образования и науки Украины

Севастопольский национальный технический университет

Кафедра КИБЕРЕНЕТИКИ И ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

ОТЧЕТ

по Лабораторной работе № 3

На тему :

«Изучение алгоритмов RSA - генерации секретного и открытого ключа»

По дисциплине: “ Основы защиты информации

Выполнил:

студент группы М-52д

Мирошниченко С.В.

Принял:

Севастополь

5


Цель работы:

Освоить механизм шифрования и дешифрования данных в криптографической системе с открытыми ключами RSA.

Теоретические сведения.

RSA-система с открытым ключом.

Криптографические системы с открытым ключом позволят создать в 90-х годах новую защищенную систему телефонной связи  с  числом абонентов до 3 миллионов. Компании АТ&Т, Motorola, RCA производят аппараты, допускающие совместную работу;  компания GTE разрабатывает систему управления ключами.  Поставки первых 75000 телефонов начались в 1987 году. Разработана специализированная интегральная схема IDS-P2 (МВ8763), реализующая алгоритм DH и вычисляющая секретный ключ за 0,9 с.  Программная реализация алгоритма RSA  осуществлена компанией RSA Data Security, аппаратная реализация того же алгоритма и специализированная  интегральная  схема  выполнены фирмой Sandia.  Фирма  Cylink выпустила специализированную интегральную схему CY1024,  реализующую алгоритм RSA и  обеспечивающую скорость шифрования 1000 бит/с.

Алгоритм шифрования и дешифрования RSA.

Выберем два очень больших простых  p и q.

Определим n=p*q.

Выберем большое случайное число, которое назовем d. Это число должно быть взаимно простым с результатом (p-1)*(q-1).

Определим такое число е, для которого является истинным соотношение (e*d) mod((p-1)*(q-1))=1.

Назовем открытым ключом числа e и n, а секретным ключом  -числа d и n.

После произведенного выбора открытого и секретного ключей по вышеизложенному алгоритму для шифрования данных необходимо выполнить следующие действия:

разбить шифруемый текст на блоки, каждый из которых может быть представлен в виде числа М(i)= 0,1,...,n-1;

зашифровать текст, рассматриваемый как последовательность чисел M(i)  по формуле:

C(i) = (M(i)e)*mod n;

Чтобы расшифровать эти данные, используется секретный ключ {d,n}  и выполняются следующие вычисления:

M(i) = (C(i)d) *mod n.

В результате получают исходный текст M(i).

Вывод:

В ходе выполнения лабораторной работы ознакомился с механизмом шифрования и дешифрования данных в криптографической системе с открытыми ключами RSA. Написана программа шифрующая/дешифрующая данные по алгоритму RSA.

ТЕКСТ  ПРОГРАММЫ.

var

Form1: TForm1;

flof:boolean;

alf1:string;

p,q,n,m,d,e:longword;

f1,f3,f2:TextFile;

s:real;

mi:char;

mc:byte;

implementation

{$R *.dfm}

procedure TForm1.N1Click(Sender: TObject);

begin

alf1:=('.,абвгдежзийклмнопрстуфхцчшщьъыэюя АБВГДЕЖЗИКЛМНОПРСТУФХЦЧШЩЬЪЫЭЮЯ');

flof:=false;

if OpenDialog1.Execute then

begin

flof:=true;

end; end;

procedure TForm1.N3Click(Sender: TObject);

begin

if (P_par.Text>'0')and(Q_par.Text>'0')then

begin

if flof then

begin

GetKey;

Code;

end

else ShowMessage('Файл не выбран');

end

else ShowMessage('Заданы не все параметры');

end;

procedure TForm1.GetKey;

label l;

var i:integer;

begin

p:=StrToInt(P_par.Text);

q:=StrToInt(Q_par.Text);

n:=p*q;

m:=(p-1)*(q-1);

randomize();

l:  d:=random(50)+1;

for i:=2 to d do if(d mod i = 0)and(M mod i=0) then goto l;

e:=1;

while (((e*d)mod(m)<>1)) or(e=d)do inc(e);

D_par.Text:=IntToStr(d);

N_par.Text:=IntToStr(n);

N1_par.Text:=IntToStr(n);

E_par.Text:=IntToStr(e);

end;

procedure TForm1.Code;

var j,k:integer;

mj,s:Int64;

begin

assignFile(f1,OpenDialog1.FileName);

assignFile(f2,'c:\code.cod');

rewrite(f2);

reset(f1);

while not eof(f1) do

begin

read(f1,mi);

k:=1;

while mi<>alf1[k] do inc(k);

mj:=k;s:=k;

for j:=1 to e-1 do begin s:=s*mj;s:=s mod(n);end;

mc:=s;

write(f2,alf1[mc]);

end;

Closefile(f2);

CloseFile(f1);

end;

procedure TForm1.N5Click(Sender: TObject);

begin

if (D_par.Text>'0')and(N_par.Text>'0')then

begin

if flof then

begin

d:=StrToInt(D_par.Text);

n:=StrToInt(N_par.Text);

Decode;

end

else ShowMessage('Error read file !');

end

else ShowMessage('Параметры заданы неверно !');

end;

procedure TForm1.Decode;

var j,k,mr:integer;

s:Int64;

c,mj:char;

begin

assignFile(f2,OpenDialog1.FileName);

assignFile(f3,'c:\decode.txt');

rewrite(f3);

reset(f2);

while not eof(f2) do

begin

read(f2,mj);

k:=1;

while mj<>alf1[k] do inc(k);

s:=k;mr:=k;

for j:=1 to d-1 do begin s:=s*mr;s:=s mod(n);end;

c:=alf1[s];

write(f3,c);

end;

Closefile(f3);

Closefile(f2);

end;

end.




1. тематичних дисциплін Протокол від 2012 р2
2. тематизированные дневниковые записи не могут рассматриваться в качестве научных работ по психологии а служ
3. Отношение к рекламе
4. Реферат- Совершенствование организации труда в учреждениях здравоохранения на основе принципов НОТ
5. 2013г
6. Могилянська Академіяrdquo; Агресія та її зовнішні детермінанти
7. Черная легенда об Испании в русской культур
8. Friedrich Durrenmatt (Фридрих Дюренматт)
9. Зоопсихология и сравнительная психология Формы контроля
10. Географічне положення
11. реферат дисертації на здобуття наукового ступеня кандидата економічних наук5
12. Альбрехт Дюрер
13. Підозрюваний у кримінальному процесі
14. Малый бизнес
15. белгісі бар меню командасы ~андай ~ызмет ат~арады К~мек беретін аны~тамалы~ м~ліметтерді экран~а ша~ыру.
16. Тема 9. Функциональные и операционные стратегии
17.  Принципиальное отличие компилятора от интерпретатора заключается в том что компилятор Семантические
18. Тема-Интернеттехнологии в маркетинге Иваново 2004 УДК 681
19. 1~~ ~ ~ ~~ ~~ ~~ ~~ ~~ ~ ~~ ~~ ~~ ~
20. Перспективные методы сварки