Шифрлеу алгоритмі

Автор: Пользователь скрыл имя, 28 Февраля 2013 в 14:07, курсовая работа

Описание работы

Бұл курстық жұмыста қазіргі заманғы дәстүрлі шифрлеу әдістері негіздеріне сүйенген қағидаларды қарастырамын. Осы мақсатпен кең қолданыс тауып отырған шифрлеу алгоритмі DES (Data Encrytion Standard) мәліметтерді стандартты шифрлеу деген атқа ие болған. DES әдісін ойлап тапқаннан бері симметриялы шифрлеу схемасын қолдануға негізделген басқада көптеген алгоритмдер шықса да DES бәрінен ерекше орын алады. DES тереңдетіп оқу басқада дәстүрлі шифрлеу әдістерін түсінуге көмектеседі.

Содержание

Кіріспе...........................................................................................................2
Негізгі бөлім:
1. Шифрлеу алгоритмі......................................................................3
2. Жеңілдетілген DES.......................................................................3
3. S-DES кілтін есептеу....................................................................5
4. DES шифрлеу...............................................................................10
4.1 Бастапқы түрлендіру..................................................................12
4.2 Шифрлеу алгоритмінің бөлшектері..........................................12
4.3 Кілттердің есептелуі...................................................................14
4.4 DES-ті дешифрлеу......................................................................16
4.5 DES сенімділігі...........................................................................17
4.6 Сенімділіктің қолдануы.............................................................17
4.7 56-битті кілттерді қолдану.........................................................18
4.8 DES алгоритмінің ішкі құрылымы............................................19
4.9 Кілттің беріктігі..........................................................................20
5. Маскалық жұмыс режимі............................................................21
6. DES Quadruple..............................................................................22
7. DES-ladder....................................................................................22
Қорытынды.................................................. ..............................................25
Қолданылған әдебиеттер........................... ...............................................26
Қосымшалар...............................................................................................27

Работа содержит 1 файл

Шифрлеу алгоритмі.doc

— 285.00 Кб (Скачать)

Maskn =  Ek1/3(Maskn-1),

Cn = Dk3/3(MasknEk2/3(Mn)).

Блейз алгоритміне қарағанда  Джонс алгоритмі 1,5 есе жылдамдығы аз болып келеді, бірақ тура сондай, 258 шифлеуді орындау кезінде алынуы мүмкін Блейз алгоритмін ашу үшін сол негізгі мәліметтер осы алгоритмнің 168-битті кілт болса жеңіл табуға болады. Ішкі жұмыс істеу режимі және маскалық шифрлеу тек DES көпдеңгейлі нұсқаларында ғана қолданылуы мүмкін емес, сондай-ақ басқа да аналогты түрде кез келген алгоритмде қолдануға болады.

 

DES Quadruple

Кейбір әдебиеттерде QDES (Quadruple DES – “төрттік” DES) алгоритмі туралы айтылады. QDES алгоритмі өте баяу жұмыс істейді, сондықтан осы алгоритмнің кең қолданыс тапқаны туралы белгісіз.

 

 

DES-ladder

1994 жылы Терри Риттер (Terry Ritter) Four-Rung Ladder-DES DES (төрт «баспалдақпен») алгоритмін ұсынды. Алгоритм шындығында түрлендіруді орныдайды оның әрқайсысында DES раундағы тәуелсіз кілттердегі қарапайым мәліметтерді шифрлеу блогының жартысы бір рет шифрлеу орындалады. Сонымен, Ladder-DES алгоритм блогының өлшемі 128 битке, ал қолданылатын кілт өлшемі – 224 битке, яғни DES алгоритм кілтінің төрт есе үлкеюне тең. Берілген алгоритм осыған дейін қарастырылған көп рет кілтті шифрлеу кезінде өлшемі үлкейген концепцияны ары қарай қарастыруды жалғастырады. Ladder-DES Triple DES жұмыс істеу жылдамдығынан жеңеді, себебі Triple DES қатысты мәліметтер блогы екі есе өлшемі үш рет шифрлеудің орнына 4 –ден келеді (Ladder-DES жылдамдығы Double DES-на сәйкес келеді). Double DES және Triple DES аналогты Ladder-DES классикалық DES жасайтын аппараттық  немесе программалық қамтама қолданылуы мүмкін. Ladder-DES осалдығы 1997 жылы табылды. Осы алгоритмнің кілтін есептеу үшін 236 блок ашық мәтінін генерирлеу керек, ол келесідей түрге ие: блоктың 64-битті оң жақ бөлігі константа болып табылады, ал сол бөлігі генерирленетін блок бөліктерінде әр түрлі. Ары қарайғы шабуыл логикасы мынадай:

    • а және K1 фикцацияланған болғандықтан DES1 операциясы нәтижесі 236 мәтіннің әрқайсысна константа болып табылады;
    • b әр мәтін үшін, ал с – константа, ср\ондықтан d = b мәні таңдалып алынған 236 мәтінде қайталанбайды;
    • d әр түрлі мәндерге DES2 операциясын щифрлеу К2 фикцацияланған кілттерінде орындалады, ал е мәндері әр түрлі болып табылады.
    • f мәні a, b, g сияқты е аналогты әр түрлі;
    • егер i = DES(K4, h) f болса, онда f = DES(K4, h), ал (h, i) парасы шифрлеу блогын ұсынады.

Жоғарыда айтылғандардың айта кете, криптоталдаушы К4 (n1 0-ден 256-1-ге дейінгі цикл) кілт мәнінің әрқайсысына келесі іс-әрекеттерді орындай алады:

    1. қолда бар шифромәтіннің (n1 0-ден 256-1-ге дейінгі цикл)  әрқайсысына fn1, fn2 = DES(Kn1, hn2) in2 сондай уақыттық мәніне есептеледі және жазылады; егер алдындағы мәндері f мәні Kn1 сол кілтіне есептелген есептелген мәніне сәйкес болса, онда берілген кілт дұрыс болмайды (жоғарыда айтылған логикаға қарама-қарсы келеді), сондықтан K4, яғни Kn1+1 мәніне өту жүзеге асады.
    2. Егер барлық шифромәтіндерде f сәйкестігі табылмаса, онда K4=Kn1 дұрыс кілті табылды деп есептеледі.

К4 тапқаннан кейін  аналогты түрде К3, К2 және К1 есептеледі, 256 нұсқасына толық табумен анықталады. Орташа, коллизияны табу үшін кілттің  әрқайсысына 232 нұсқалы тексерудің жеткілікті бар. 236 пар мәтін дұрыс кілттің табылуына сөз бермейді, бірақ қателесу аз ол 2-129 арасындағыны құрайды. Осындай жағдаймен кілтті есептеу күрделілігі 288 (256 232) операцияны құрайды, ол жылдамырақ толық 2224 кілтті табумен салыстырылмайды. Жоғарыдағы Ladder-DES нұсқасына қарағанда Ladder-DES (2x Four-Rung Ladder-DES) «екі деңгейлі төрт баспалы» алгоритмі блоктың екі деңгейлі өлшеміне ие.

Берілген алгоритмнің  екілік блоктары Ladder-DES сияқты бастапқы бірінші екі «баспалдақта» шифрленеді, одан кейін субблоктардың оңға бір циклдік қозғалуды орындайды, содан кейін Ladder-DES екі баспалдағы орныдалады. Осы алгоритмнің кілті DES кілтінен 8 есе үлкен өлшемді кілтіне ие, алгоритм авторы 448-битті кілтті 224-битті кілттің орнына қолдануды ұсынды: раундтың тақ кілттері негізгі болып табылады, ал жұп кілтері келесі қарапайым формулалармен есептеледі:

K2= K1 K3

K4= K3 K5

K6= K5 K7

K8= K7 K1.

Бұл нұсқа Ladder-DES бір деңгейлі сияқты сондай жылдамдыққа ие. Ladder-DES, 2x Four-Rung Ladder-DES классикалық түрі сияқты кең қолданысқа ие бола алмады.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Қорытынды

Ақпараттық қауіпсіздік  және ақпараттық қорғау пәнінене осы  курстық жұмыс арналды, ал дәлірек  болатын болсам, «DES алгоритмі» тақырыбына байланысты болды.

DES шифрлеу түрі классикалық симметриялы шифрлеуге жатады. Қазіргі көптеген шифрлеу түрлерінің барлығы осы шифрлеу түрінен шығады. Ол АҚШ-да Ұлттық шифрлеу стандарты болып табылады. DES шифрлеуін компьютерлік технологиялардың дамуына байланысты жылдан жылға жақсартып отыруды қажет етеді. DES әдісін ойлап тапқаннан бері симметриялы шифрлеу схемасын қолдануға негізделген басқада көптеген алгоритмдер шықса да DES бәрінен ерекше орын алады. DES тереңдетіп оқу басқада дәстүрлі шифрлеу әдістерін түсінуге көмектеседі.

АҚШ-тың федералды стандарты DES тіркелгеннен кейін оның сенімділігіне деген пікір-сайыстар ылғи да айтылып жатты. Бұл пікірлер негізінен екі сұраққа байланысты болыды: кілт өлшемі және алгоритмнің ішкі табиғаты.

1973 жылы Ұлттық стандарттар  бюросы шифрлеудің ең жақсы жалпымемлекеттік стандартын құру жобасына конкурс жариялады. IBM компаниясы конкурсқа Тачман-Мейер жобасы нәтижесін ұсынды. Олардың алгоритмі шарттсыз ұсынылғандардан ең жақсы және 1977 жылы (DES) мәліметтерді стандартты шифрлеуіне ие болды.

Қорыта келе айтатын болсам DES шифрлеу түрі кең танымал болып үлгерген шифр түрлірінің бірі. Осы курстық жұмысымда DES шифрлеуін толығымен қарастырып өттім. Оны негіздеу үшін төменде программалық жабдықтама құрдым. Онда тексттік файлдарды қолдана отырып жүзеге асырылады және Delphi жоғары деңгейлі программалау тілінде орындалған.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Қолданылған әдебиеттер:

 

  1. Ш. Столлингс. Крифтография и защита сетей.
  2. С. П. Расторгуев. Программные методы защиты информации в компьютерных сетях.
  3. Фарманов ВВ. Практика программирования.
  4. Нечаев ВИ. Элементы криптографии.
  5. ВА. Герасименко. Защита информации в автоматизированных системах обработки данных.
  6. Масленников МЕ. Практическая криптография.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Қосымшалар:

 

 

Программа листингі:

unit Unit1;

 

interface

 

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, StdCtrls, ExtCtrls;

 

type

  TForm1 = class(TForm)

    Panel1: TPanel;

    Panel2: TPanel;

    Button1: TButton;

    Button2: TButton;

    Button3: TButton;

    Edit1: TEdit;

    Edit2: TEdit;

    Button4: TButton;

    Button5: TButton;

    procedure Button4Click(Sender: TObject);

    procedure Button1Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

 

var

  Form1: TForm1;

 

implementation

 

{$R *.dfm}

 

procedure TForm1.Button4Click(Sender: TObject);

var i,s,txt:string;

i,j,m,n,k,kl:integer;

t:TextFile;

begin

AssignFile('txt1', t, 0);

reset(txt1);

txt:=form1.Edit1; s:=txt;

l:=edit2.text;

kl:=l;

for k:=1 to length(l) do

begin

if l[k]<>' ' then degin

ar[kl]:=strtoint(l[k]);

kl:=kl+1;

end; end;

j:=0;

for i:=i to length(txt) do

begin

j:=i*2; n:=ar[j-1]; m:=ar[j];

if n>m then

begin

w:=n; n:=m; m:=w;

end;

s:=copy(s,m+1, length(txt)-m)+copy(s,n+1,m-n)+copy(s,l,n);

end;

edit1.text:=s;

end;

 

procedure TForm1.Button1Click(Sender: TObject);

begin

close;

end;

 

procedure TForm1.Button5Click(Sender: TObject);

var

s,txt:string;

i,j,w:integer;

n,m:longint;

begin

AssignFile('txt2', t, 0);

reset(txt1);

txt:=Form1.edit2.text;

j:=0; s:=txt;

for i:=length(txt) downto l do

begin

j:=i*2;

n:=ar[j-1];

m:=ar[j];

if n>m then begin

w:=n; n:=m; m:=w;

end;

s:=copy(s,length(txt)-n+1,n)+copy(s,length(txt)-m+1,m-n)+copy(s,l,length(txt)-m);

end:

edit1.text:=s;

end;

 

end.




Информация о работе Шифрлеу алгоритмі