31
1 DAUGAVPILS UNIVERSIT ¯ ATE Dabaszin¯at¸ nuunmatem¯atikasfakult¯ate Matem¯atikaskatedra Studiju kurss Veselo skaitl ¸u teorija 10.lekcija (datorik ¸iem) Doc¯ et¯ajs: Dr. P. Daugulis 2008./2009.studiju gads Saturs akums Beigas J I Atpakal ¸ Aizv¯ ert Pilns ekr¯ ans

Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

1

DAUGAVPILS UNIVERSITATEDabaszinatnu un matematikas fakultate

Matematikas katedra

Studiju kurss

Veselo skaitlu teorija

10.lekcija (datorikiem)Docetajs: Dr. P. Daugulis

2008./2009.studiju gads

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 2: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

2

Saturs

1. Skaitlu teorijas pielietojumi informacijas aizsardzıba 31.1. Vispareja informacija par sifresanu un informacijas aiz-

sardzıbu . . . . . . . . . . . . . . . . . . . . . . . . . . 31.1.1. Kriptografijas pamatjedzieni . . . . . . . . . . 31.1.2. Kriptografijas vesture . . . . . . . . . . . . . . 71.1.3. Simetriskas atslegas kriptosistemas . . . . . . . 131.1.4. Publiskas atslegas kriptosistemas . . . . . . . . 141.1.5. Steganografija . . . . . . . . . . . . . . . . . . . 18

1.2. Publisko atslegu kriptosistemu konkretas realizacijas . 191.2.1. Rivest-Shamir-Adleman (RSA) kriptosistema . 201.2.2. El Gamala kriptosistema . . . . . . . . . . . . 261.2.3. Diffie-Hellman atslegu apmainas algoritms . . . 29

2. 10.majasdarbs 31

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 3: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

3

1. Skaitlu teorijas pielietojumi informaci-jas aizsardzıba

1.1. Vispareja informacija par sifresanu un infor-macijas aizsardzıbu

1.1.1. Kriptografijas pamatjedzieni

Ka aizsargat datus no nesankcionetas pieejas?• fiziska barjera- fiziski izolet informaciju no ienaidniekiem;

• logiska barjera- uzstadıt sistemu, kas parbauda lietotaja pieejastiesıbas un kontrole vai tas tiek pareizi izmantotas;

• sifresana- uzglabat un parsutıt datus ta, lai ienaidnieki nevaretutos izmantot, pat ja vinu tiem pieklust.

Kriptografija (kriptologija) - macıba par informacijas slepsanu,tiek pielietota saistıba ar informacijas drosıbu (interneta sakari, in-terneta komercija, militarie sakari u.c.).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 4: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

4

Kriptografijas pamatjedzieni:• sifresana - atklatas informacijas (atklata teksta) parversana ne-

saprotama forma (sifretaja teksta);

• desifresana - operacija, kas ir inversa attiecıba uz sifresanu:sifreta teksta parversana atklataja teksta;

• sifri - sifresanas un desifresanas algoritmi;

• sifra atslega - sifra parametri, kas parasti ir slepeni un tiek biezimainıti (svarıgos gadıjumos tiek izmantoti tikai vienu reizi);

Sifresana ir funkcija

E : A×KE → S,

kur• A ir atklato tekstu kopa,

• KE ir sifresanas atslegu kopa,

• S ir sifreto tekstu kopa.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 5: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

5

Desifresana ir funkcija

D : S ×KD → A,

kur KD ir desifresanas atslegu kopa.

Desifresanai bez informacijas par atslegu (sifra uzlausanai) ir jabutloti grutai problemai, ko nav iespejams atrisinat reala laika.

Ka noteikt sifra vertıbu? Ja sifra uzlausanas izmaksa ir mazakaka sifretas informacijas vertıba, tad sifru var uzskatıt par labu.

Sifresanas metode var tikt uzskatıta par drosu, ja izpildas sadinosacıjumi:

• ir pieradıts vai tiek uzskatıts, ka desifresana nav iespejama beznoteiktas matematiskas problemas P atrisinasanas,

• ir pieradıts vai tiek uzskatıts, ka problemas P atrisinasana naviespejama ısa laika.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 6: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

6

Pirms datoru paradısanas kriptografija nodarbojas galvenokartar informacijas slepenıbas nodrosinasanu militariem, diplomatiskiem,ekonomiskiem vai personiskiem merkiem.

Lıdz ar datoru eras sakumu un ar to saistıto informacijas plusmaspalielinasanos kriptografija nodrosina sadas papildus funkcijas:

• sutıjuma integritates parbaude;

• sutıtaja un sanemeja autentificesana;

• digitala paraksta nodrosinasana;

• slepenas informacijas dalıta glabasana (kada personu grupa kat-ra persona zina dalu no informacijas, katra k personu grupavar rekonstruet informaciju, bet grupa, kura ir mazak neka kpersonu - nevar).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 7: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

7

1.1.2. Kriptografijas vesture

Vesturiski viens no pirmajiem aprakstıtajiem sifresanas izmanto-sanas gadıjumiem - Julija Cezara sifri (ap 50BC).

Senos laikos lielaka dala cilveku neprata lasıt, tapec tika izmantotisadi vienkarsakie sifresanas veidi:

• burtu kartıbas maina vardos;

• burtu aizvietosana ar citiem burtiem (piemeram, Cezara sifrs,kura katrs burts tika aizvietots ar to burtu, kas atrodas n pozı-cijas talak alfabeta, saja gadıjuma atslega ir skaitlis n).

Ieverosim, ka Cezara sifresana tiek veikta neatkarıgi katram bur-tam ar formulu

E(x) = x + n (mod 26)un desifresana - ar formulu

D(x) = x− n (mod 26)

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 8: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

8

(burtiem atbilst skaitli no 0 lıdz 26 vai atlikumu klases, burts x tiekaizvietots ar burtu E(x)).

Katru sakotneja teksta burtu x var interpretet arı ka viendimen-sionalu vektoru −→x = (x), un tad Cezara sifresanu var interpretet arıka vektoru parveidojumu

E(−→x ) = −→x +−→n ,

kur −→n = (n).

Aizvietosanas sifri ir viegli uzlauzami, ja izmanto statistisko in-formaciju par burtu biezumu dotaja valoda. Lai atrastu nobıdi, irjaatrod simbols x, kas sifretaja teksta atkartojas visbiezak. Ja dotajavaloda visbiezak atkartojas burts y, tad nobıde ir vienada ar soluskaitu no y lıdz x.

Ap 1467.gadu tika izgudrota polialfabetiska aizvietosana, kuraburti tika aizvietoti ar dazadiem burtiem atkarıba no to atrasanas vie-tas teksta. Popularakais polialfabetiskas aizvietosanas sifrs - Vigeneresifrs, kas darbojas saskana ar sadu algoritmu:

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 9: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

9

• tiek fiksets atslegas vards K = k1k2...km - parasti vards vaiteikums taja pasa valoda, kura tiek rakstıts teksts;

• K tiek savienots pats ar sevi tik ilgi, kamer savienojums parsniedzsifrejama teksta garumu, tiek ieguts vards K = KK...K;

• K tiek rakstıts tiesi zem sifrejama teksta;

• sifrejama teksta burts τ , zem kura atrodas burts κ tiek aizvietotsar to burtu, kas ir nobıdıts no τ par tadu pasu attalumu, parkuru κ ir nobıdıts no burta a.

Ieverosim, ka Vigenere sifresana tiek veikta neatkarıgi katram bur-tam ar formulu

E(xi) = xi + ki mod |K| (mod 26)

un desifresana - ar formulu

D(xi) = xi − ki mod |K| (mod 26)

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 10: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

10

Vigenere sifresana var tikt interpreteta ka vektoru jeb linearastelpas elementu parveidojums sada veida:

• sakotnejais sifrejamais teksts X = x1x2... tiek sadalıts virknes

X1 = (x1, ..., xm),X2 = (xm+1, ..., x2m),...

• katra virkne Xi tiek interpreteta ka m-dimensionals vektors−→X i,

• atslegas vards K tiek interpretets ka m-dimensionals vektors−→K ,

• ar katru vektoru−→X i tiek veikts sifresanas parveidojums

E(−→X i) =

−→X i +

−→K.

19.gs vidu tika atklatas metodes Vigenere sifra atsifresanai, kasbalstıjas uz sifreta teksta aritmetisko progresiju apaksvirknu (forma(xi, xi+d, xi+2d, ...)) statistisko analızi - lai uzlauztu sifru, ir jaatrod

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 11: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

11

tada aritmetiskas progresijas apaksvirkne, kura simbolu biezuma sa-dalıjums ir tuvs burtu biezuma sadalıjumam dotaja valoda.

19.gs beigas kriptografija tika pienemts Kerkhofa princips - laisifresanas metode butu drosa, tai ir jabalstas tikai uz atslegas slepenıbu(ir japienem, ka ienaidnieks zina metodi).

Ap 1930.gadu tika izgudrota grutak uzlauzama polialfabetiskassifresanas metode - Hilla metode, kura sifresana atskirıba no Vigeneresifresanas tiek veikta ar afıno parveidojumu

E(−→X i) = A−→X i +

−→K ,

kur A ir invertejama matrica.

Uz Otra pasaules kara beigu laiku polialfabetiska sifresana ar elek-tromehaniskam ierıcem sasniedza augstu lımeni (piemeram, vacu Enig-ma sifresanas masına). Sifresanas tika veikta ar Vigenere vai Hilla tipametodem un garam (sifrejama teksta garuma) vienu reizi izmantoja-mam atslegam.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 12: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

12

Desifresana bija motivejoss faktors elektronisko skaitlosanas ierıcuattıstıbai. Alans Tjurings kara laika bija viens no Lielbritanijas desif-resanas darba aktıviem dalıbniekiem.

Pec Otra pasaules kara lıdz ar datoru attıstıbu tika izgudrotassarezgıtakas sifresanas metodes:

• tiek sifreti dazada formata teksti (piemeram, binaras virknes);• sifresanas tiek veikta simbolu grupam - blokiem;• tiek intensıvi pielietoti matematikas (skaitlu teorijas, varbutıbu

teorijas) sasniegumi.

Datori tika izmantoti arı desifresana.

Ja abas atslegas ir slepenas, tadu sifresanas metodi sauc par si-metriskas atslegas kriptosistemu.

70.gadu vidu Lielbritanija (Ellis-Cocks-Williamson) un ASV (Diffie-Hellman) tika izgudrotas vairakas publiskas atslegas kriptosistemas,kuras viena no divam atslegam ir zinama visiem, bet otra ir slepena.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 13: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

13

80.-90.gados tika izgudrotas vairakas kriptosistemas (piemeram,Imai-Matsumoto vai Patarin kriptosistemas), kuru desifresana balstasvienlaicıgi uz vairakam matematikas sadalam (veselo skaitlu teoriju,polinomu teoriju u.c.) Musdienas kriptografijas attıstıba turpinas, jotai ir liels pieprasıjums (militarie un drosıbas pielietojumi, internetadrosıba un komercija u.c.)

1.1.3. Simetriskas atslegas kriptosistemas

Simetriskas atslegas kriptosistema (SAK) ir kriptosistema, kurasutıtajam un sanemejam ir kopıga informacija par atslegu. Lıdz 1976.gadam bija tikai tadas sifresanas metodes.

Ir divu veidu simetriskas atslegas kriptosistemas:• plusmas sifresana;

• bloku sifresana.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 14: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

14

Plusmas sifresana ir lıdzıga Vigenere sifresanai, kura atslega tiekgenereta ar slepenu algoritmu palıdzıbu izmantojot nejausos skaitlus.

Bloku sifresana ir sifresanas metode, kura teksts tiek dalıts apaks-virknes - blokos (parasti bloka ir 64 vai 128 biti) un katrs bloks tieksifrets ar slepenas atslegas palıdzıbu.

Kriptografiska hash-funkcija ir parveidojums, kas sutamo tekstuparveido par daudz ısaku sifretu tekstu.

1.1.4. Publiskas atslegas kriptosistemas

Publiskas atslegas jeb asimetriska kriptosistema (PAK) ir relatıvijauna metode, kura viena no sifresanas/desifresanas operacijam iratklata, bet otra - slepena.

Sı metode tika izstradata, lai mazinatu grutıbas, kas ir saistıtas arslepeno atslegu nodosanu visam pusem, kas piedalas sakaros. Ar sı

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 15: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

15

tipa sifresanas metozu palıdzıbu var vieglak parraidıt informaciju paneaizsargatiem sakaru kanaliem.

Precızak, katram lietotajam ir divas atslegas:• publiska atslega (publiski pieejama visiem) un

• privata atslega (slepena, zinama tikai noteiktam lietotaju lokam).

Abas atslegas ir saistıtas ar noteiktiem matematiskiem algorit-miem, bet zinot publisko atslegu, ir praktiski neiespejami atrast pri-vato atslegu.

Tadejadi, katram lietotajam X ir definetas divas savstarpeji inver-sas funkcijas EX un DX = E−1

X tadas, ka

EX ◦DX = id un DX ◦ EX = id.

Funkcija EX katram X ir publiski zinama.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 16: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

16

Sada kriptosistema ir iespejamas divas operacijas:• (sifresana ar publisko atslegu) lai nosutıtu lietotajam X slepe-

nu sutıjumu M , sis sutıjums ir jaaizsifre ar funkciju EX , sadagadıjuma tikai X vares izlasıt sutıjumu EX(M), pielietojot tamsavu slepeno funkciju DX :

DX(EX(M)) = M.

• (digitala paraksta nodrosinasana) lai lietotajs X varetu pieradıtsavu identitati, vins/vina aizsifre kadu noteiktu tekstu N (pie-meram, savu vardu) ar savu slepeno funkciju DX , jebkurs sutı-juma DX(N) sanemejs var pielietot sim sutıjumam publisko fun-kciju EX , izlasıt rezultatu EX(DX(N) = N un parliecinaties, kasutıtajs ir bijis X (vai vismaz kads, kas zina X slepeno atslegu).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 17: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

17

1.1. piezıme. Viena no lielakajam PAK problemam - rupeties par to,ka ienaidnieki nerada kludas publiskajas atslegas. PAK ir darbietilpı-gakas no skaitlosanas viedokla salıdzinajuma ar SAK.

1.2. piezıme. PAK var tikt lietota kombinacija ar SAK. Piemeram,sutıtajs aizsifre sutıjumu M ar slepenu sifresanas funkciju A, aizsifreA ar sanemeja X publisko atslegu, un nosuta X pari (EX(A), A(M)).

1.3. piezıme. PAK megina uzlauzt, provocejot X aizsifret vienu vaivairakus tekstus ar noteiktam ıpasıbam, ka atvieglo desifresanu.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 18: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

18

1.1.5. Steganografija

Steganografija ir macıba par slepenas informacijas slepsanu kadaaptverosa informacijas vide, ta lai ienaidnieks nebutu informets parslepenas informacijas esamıbu.

Senos laikos pielietotas steganografijas metodes piemers - vergamnoskuva galvu, uztetoveja sutıjumu un, kad mati atauga, nosutıjavergu sanemejam. Viduslaikos tika izgudrotas neredzamas tintes.

Steganografisks sutıjums parasti izskatas ka nevainıgs informacijaskopums - attels, raksts avıze, muzikas gabals.

Steganografija tiek biezi izmantota musdienu datortehnologijas:• teksta parametru (pieturzımju, fontu) izmantosana;

• neredzamo fontu izmantosana;

• interneta sutıjumu aiztures laika variesana;

• informacijas iekodesana troksna veida muzikas failos;

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 19: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

19

1.2. Publisko atslegu kriptosistemu konkretas re-alizacijas

PAK balstas uz matematikiem zinamu noverojumu, ka ir funkci-jas/algoritmi, kuriem ir gruti atrast inversas funkcijas/algoritmus.

Piemeri:1. reizinat ir vieglak neka dalıt;

2. kapinat kvadrata ir vieglak neka atrast kvadratsakni;

3. reizinat pirmskaitlus ir vieglak neka atrast skaitla sadalıjumupirmskaitlu reizinajuma;

4. atrast ab (mod m) ir vieglak neka atrast inda(ab);

5. ievietot polinomos konkretas argumentu vertıbas ir vieglak nekaatrisinat polinomialu vienadojumu sistemu (invertet polinomusistemu);

6. izjaukt puzli ir vieglak neka salikt;

7. nolobıt olu ir vieglak neka salikt atpakal caumalu.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 20: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

20

PAKa viegla funkcija tiek izmantota ka publiski pieejama funkcija,gruta (inversa) funkcija tiek izmantota ka slepena privata funkcija.

1.2.1. Rivest-Shamir-Adleman (RSA) kriptosistema

RSA kriptosistemas atslegu generesanas algoritms:1. Izveleties divus lielus pirmskaitlus p un q.

2. Atrast n = pq, n tiek lietots ka palıginformacija (modulis) abasatslegas.

3. Atrast ϕ(n) = (p− 1)(q − 1).

4. Atrast invertejamu elementu e ∈ Uϕ(n) tadu, ka 1 < e < ϕ(n)(LKD(e, ϕ(n)) = 1), e ir publiska atslega.

5. Atrast d ≡ e−1 (mod ϕ(n)), piemeram, izmantojot Eiklıda al-goritmu, d ir privata (slepena) atslega.

Publiski pieejama informacija - n un e. Slepena informacija - p, q,d.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 21: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

21

RSA sifresanas algoritms (funkcija EX):1. Sadalıt sutamo tekstu M dalas m1m2...mk ta, lai katra dala mi

pec iekodesanas decimalaja vai binaraja pieraksta ar publiskizinamu algoritmu butu mazaka neka n.

2. Katru teksta dalu mi parveidot par ci = mei (mod n). Sifresanas

rezultats ir virkne c1c2...ck.

Ieverosim, ka inversa funkcija ir saistıta ar e-tas kartas saknesaprekinasanu mod n.

RSA desifresanas algoritms (funkcija DX):1. Katram i atrast mi = cd

i (mod n).

2. Savienot atsifretas dalas mi viena virkne.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 22: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

22

1.1. teorema. (RSA desifresanas algoritma pamatojums) Ja

c ≡ me (mod n),

tadm ≡ cd (mod n).

PIERADIJUMS ed ≡ 1 (mod ϕ(n)) =⇒ed = 1 + lϕ(n) = 1 + l(p− 1)(q − 1)

uncd ≡ (me)d ≡ med ≡ m1+lϕ(n) ≡ m · (mϕ(n))l (mod n).

m ∈ Un =⇒ mϕ(n) ≡ 1 (mod n)(Eilera teorema) =⇒cd ≡ m (mod n).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 23: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

23

m 6∈ Un =⇒ m ≡ 0 (mod p) ∨m ≡ 0 (mod q).

Apskatısim gadıjumu m ≡ 0 (mod p).

m ≡ 0 (mod p) =⇒ med ≡ 0 ≡ m (mod p) =⇒med ≡ m1+l(p−1)(q−1) ≡ m · (mq−1)p−1 ≡ m (mod q).

Attiecıba uz med esam ieguvusi sistemu{med ≡ m (mod p)med ≡ m (mod q).

Saskana ar kıniesu atlikumu teoremu iegustam, ka med ≡ m (mod pq).Esam pieradıjusi, ka m ≡ 0 (mod p) =⇒ cd ≡ m (mod n).

Lıdzıgi tiek pieradıts gadıjums, kad m ≡ 0 (mod q). ¥

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 24: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

24

1.1. piemers. Atradısim RSA kriptosistemas atslegas un algoritmus,ja p = 17 un q = 19:

1. Ir izveleti divi pirmskaitli p = 17 un q = 19.

2. Atrast n = pq = 323, n tiek lietots ka palıginformacija (modulis)abas atslegas.

3. Atrast ϕ(n) = (p− 1)(q − 1) = 288.

4. Atrast invertejamu elementu e ∈ U288 tadu, ka 1 < e < 288(LKD(e, 288) = 1): izvelesimies e = 5, e ir publiska atslega.

5. Atrast d ≡ e−1 (mod ϕ(n)): d ≡ 173 (mod 288), d ir privata(slepena) atslega.

Sifrejosa funkcija ir E(m) ≡ m5 (mod 323), desifrejosa funkcijaD(c) ≡ c173 (mod 323). Ja m = 300, tad

E(300) ≡ 3005 ≡ 78 (mod 323)

unD(E(300)) = D(78) ≡ 78173 ≡ 300 (mod 323).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 25: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

25

Atradısim RSA kriptosistemas atslegas un algoritmus, ja p = 911un q = 919:

1. Izveleties divus pirmskaitlus p = 911 un q = 919.

2. Atrast n = pq = 837209, n tiek lietots ka palıginformacija (mo-dulis) abas atslegas.

3. Atrast ϕ(n) = (p− 1)(q − 1) = 835380.

4. Atrast invertejamu elementu e ∈ U288 tadu, ka 1 < e < 835380(LKD(e, 835380) = 1): izvelesimies e = 11, e ir publiska atslega.

5. Atrast d ≡ e−1 (mod ϕ(n)): d ≡ 227831 (mod 835380), d irprivata (slepena) atslega.

Sifrejosa funkcija ir E(m) ≡ m11 (mod 837209), desifrejosa fun-kcija D(c) ≡ c227831 (mod 837209). Ja m = 830000, tad

E(830000) ≡ 83000011 ≡ 456579 (mod 837209)

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 26: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

26

un

D(E(830000)) = D(456579) ≡ 154392227831 ≡ 300 (mod 837209).

1.2.2. El Gamala kriptosistema

El Gamala kriptosistemas atslegu generesanas algoritms:1. Izveleties lielu pirmskaitli p un grupas Up generatoru (primitıvo

sakni) g.

2. Izveleties nejausu skaitli a, 1 < a < p − 1 (slepeno atslegu) unaprekinat t = ga (mod p).

Publiski pieejama informacija - p, g un t. Slepena informacija - a.Ieverosim, ka slepeno informaciju a var uzzinat, ja atrod indg(t).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 27: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

27

El Gamala sifresanas algoritms (funkcija EX):1. Sadalıt sutamo tekstu M dalas m1m2...mk ta, lai katra dala mi

butu mazaka ka p saskana ar publiski zinamu algoritmu.

2. Izveleties skaitli k, 1 ≤ k < p− 1.

3. Katrai teksta dalu mi parveidot par ci = mi · tk (mod p). Sif-resanas rezultats ir paris (gk, c1c2...ck).

El Gamala desifresanas algoritms (funkcija DX):1. Atrast tk = (gk)a.

2. Atrast t−k.

3. Atrast mi = cit−k

4. Savienot atsifretas dalas mi viena virkne.

1.4. piezıme. Var uzskatıt, ka p, q, t ir lietotaja X publiska atslega,a ir X slepena atslega. Sifresanu veic tas, kurs suta zinojumu X-amkopa ar papildus informaciju (gk). X veic desifresanu ar savu slepenoatslegu un papildus informaciju no sutıtaja.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 28: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

28

1.2. piemers. Aprakstısim El Gamala sistemu, ja p = 19. Atslegugeneresanas algoritms:

1. p = 19 un primitıva sakne ir g = 2.

2. Izvelamies nejausu skaitli a, 1 < a < 18 (slepeno atslegu), a = 7un aprekinam t = 27 ≡ 14 (mod 19).

Publiski pieejama informacija - p = 19, g = 2 un t = 14. Slepenainformacija - a = 7.

Sifresanas algoritms (funkcija EX):1. Sifresim tekstu (11, 12, 13).

2. Izveleties skaitli k, 1 ≤ k < 18, k = 3.

3. Katrai teksta dalu mi parveidot par

ci = mi · 143 ≡ mi · 8 (mod p).

Sifresanas rezultats ir paris (gk, c1c2...ck) = (8, (12, 1, 9)).

Desifresanas algoritms (funkcija DX):

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 29: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

29

1. Atrast tk = (gk)a = 87 ≡ 8 (mod 19).

2. Atrast t−k ≡ 12 (mod 19).

3. Atrast mi = cit−k: m1 = 12 · 12 = 11, m2 = 1 · 12 = 12,

m3 = 9 · 12 = 13.

4. Savienot atsifretas dalas mi viena virkne.

1.2.3. Diffie-Hellman atslegu apmainas algoritms

Vesturiski pirmais algoritms, kura tika izmantota funkcija ar grutiaprekinamu inverso funkciju, bija Diffie-Hellmana atslegu apmainasalgoritms.

Ar so algoritmu divi subjekti, kas velas apmainıties ar slepenuinformaciju, var publiski (pa neaizsargatu sakaru kanalu) nodot viensotram informaciju, ar kuras palıdzıbu var aprekinat tikai siem diviemsubjektiem zinamu slepenu atslegu vai informaciju.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 30: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

30

Diffie-Hellmana atslegu apmainas algoritms:1. X un Y izvelas pirmskaitli p un primitıvo sakni g (mod p).

2. X izvelas savu slepeno atslegu n < p, Y izvelas savu slepenoatslegu m < p.

3. X aprekina gn (mod p) un suta to Y ka savu publisko atslegu.

4. Y aprekina gm (mod p) un suta to X ka savu publisko atslegu.

5. X un Y aprekina kopıgo slepeno atslegu

s = gnm ≡ (gn)m ≡ (gm)n (mod p).

Izmantojot s ka sifresanas atslegu, X un Y var sutıt viens otramslepenus zinojumus. Lai tresais subjekts atrastu s, vinam/vinai irjaatrod indg(gn) vai indg(gm), kas ir gruti.

1.3. piemers. Izvelesimies p = 19, g = 2, n = 6, m = 10. Tad 2n ≡7 (mod p), 2m ≡ 17 (mod p) un s ≡ (2n)m ≡ (2m)n ≡ 7 (mod p).

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans

Page 31: Studiju kurss Veselo skaitl¸u teorija 10.lekcija (datorik¸iem)Diffie-Hellman atsl¯egu apmainas¸ algoritms . . . 29 2. 10.m¯ajasdarbs 31 Saturs S¯akums Beigas J I Atpakal¸ Aizv¯ert

31

2. 10.majasdarbs

10.1 Izmantojot Cezara sifru ar nobıdi 11 aizsifrejiet tekstu ”ienaid-nieks mus ir ielencis” izmantojot latviesu alfabeta standartakartıbu.

10.2 Izmantojot Vigenere sifru ar atslegas vardu ”livonija” atsifrejiettekstu ”igtohi” izmantojot latviesu alfabeta standarta kartıbu.

10.3 Atrodiet atslegas un aprakstiet sifresanas/desifresanas algorit-mus RSA sistema ar pirmskaitliem 11 un 13.

10.4 Atrodiet atslegas un aprakstiet sifresanas/desifresanas algorit-mus El Gamala sistema ar pirmskaitli 23.

Saturs Sakums Beigas J I Atpakal Aizvert Pilns ekrans