Matematik

Endnu et RSA spørgsmål

16. december 2008 af Bowkat (Slettet)

Heya jeg har som så mange andre valgt at skrive om RSA-kryptosystemet. og der kører da også fint  Men! jeg har et lille problem...jeg skal konstruere mit eget RSA nøglepar ud fra tallene 17 og 19 og herefter kryptere en meddelelse

Hvis vi tager det helt basale så:

n = 17*19 = 323

φ(n) = (17-1)*(19-1) = 288

jeg vælger i al enkelhed e til at være e= 23

nu kommer der jeg sidder fast. for jeg er ikke så ferm med talteorien, så er der nogen der kan hjælpe mig med at finde d med lidt tilhørende udregning? jeg synes ikke rigtig jeg kan få det til at hænge sammen?

på forhånd tak :)


Brugbart svar (0)

Svar #1
16. december 2008 af fluen på væggen (Slettet)

Prøv evt. at kigge her og se, om du kan efterligne eksemplet:

https://www.studieportalen.dk/Forums/Thread.aspx?id=612426#615415

Ellers så prøv at spørge:

https://www.studieportalen.dk/Medlemmer/Member.aspx?id=124415

som er hende, jeg hjælper i linket - så kan hun også få lidt træning i at bruge sin viden...


Svar #2
16. december 2008 af Bowkat (Slettet)

Hej jeg har godt set din tidligere post og den var da også til stor hjælp. men jeg forstår godt begrebet i at enkryptere og dekryptere med RSA systemet, jeg fatter virkelig bare hat af euklids algoritme.

Kunne du ikke have lyst til at hjælpe mig med det, med de tal jeg har?


Brugbart svar (1)

Svar #3
17. december 2008 af fluen på væggen (Slettet)

Ok, så giver jeg en alternativ beskrivelse af udregningerne, der måske kaster lys over det. Bemærk at jeg har udregnet et d vha. Euklids algoritme i #5 i linket, så dette kommer til at ligne i sin essens. Målet er at finde et d, så ed=k·φ(n)+1.

Vi har de indbyrdes primiske tal a=288 og b=23 og ønsker en ligning på formen λ·a+μ·b=1, hvilket vi netop kan få, da de to tal er indbyrdes primiske. Derfor udfører vi division med rest (Euklids algoritme):

Det største hele tal, man kan gange 23 med uden at resultatet overstiger 288 er 12, og det giver 286 og dermed 2 til rest.

Nu lader vi de 288 ligge og kigger på b=23 og r1=2, hvor r1 betyder den første rest, vi fik. Det største hele tal man kan gange 2 med uden at overstige 23 er 11, hvilket giver 22. Dermed bliver resten r2=1. Målet er at nå en rest på 1, så vi er færdige, men med andre tal, kan processen vare væsentligt flere gentagelser...

Nu skal vi have optrevlet systemet, så vi kan få den søgte ligning. Vi skriver nu udregningerne på en lidt kortere form:

2=288-12·23

1=23-11·2

Nu bruger vi den første ligning til at erstattet 2-tallet i den sidste med en kombination af 288 og 23:

1=23-11·(288-12·23)

Vi ganger nu ind i parentesen og samler led, der vedrører 288, og led, der vedrører 23, hver for sig:

1=-11·288+13·23

Ved nu at lægge 11·288 til på begge sider, ser vi at 23·13=11·288+1, så d=13 løser opgaven, da vi med e=23, d=13, k=11 og φ(n)=288 nu har ligningen ed=k·φ(n)+1 opfyldt.
 


Svar #4
17. december 2008 af Bowkat (Slettet)

Tusind Tusind tak, jeg står i evig gæld til dig!!!


Brugbart svar (0)

Svar #5
17. december 2008 af fluen på væggen (Slettet)

Det er noteret ;P (en meget syg smiley, der forsøger at aktivere hele sin mimik)


Brugbart svar (0)

Svar #6
17. december 2008 af School-Girl (Slettet)

Slettet

Svar #7
17. december 2008 af Bowkat (Slettet)

Satans jeg kan ikke få det til at passe når jeg dekrypterer.

Jeg skal både kryptere tallet 12 og ordet YES (ikke i samme opgave)

Jeg har formlen m→me (mod n) = c

dvs: 1223 (mod 323) = 160

når jeg så vil dekryptere det pæne tal

får jeg med formlen c = cd (mod n)

 16013(mod 323) = 312 ????

tallet skulle jo gerne give 12 igen? Jeg kender godt den manuelle omskrivning til udregning men jeg har kigget efter i maple og det giver det samme?


Brugbart svar (0)

Svar #8
17. december 2008 af fluen på væggen (Slettet)

Det er fordi jeg har lavet en klokkeklar udregningsfejl:

23-11·(288-12·23) giver -11·288+133·23, så d skal være 133...


Svar #9
17. december 2008 af Bowkat (Slettet)

Hmm nu får jeg

jeg skulle jo gerne få 12 når jeg dekrypterer men

jeg får 160133 (mod 323) =198.....


Svar #10
17. december 2008 af Bowkat (Slettet)

bumb, hvad fanden gøres der galt?


Svar #11
17. december 2008 af Bowkat (Slettet)

Okay....wow....det var jo helt latterligt nemt...

jeg brugte istedet

a-1(mod n) = a φ(n)-1(mod n)⇔ e-1(mod φ(n)) = e φ (φ (n)) -1(mod φ(n))
⇔ 23-1(mod 288) = 263
altså er d= 263
 

Og det passer i forhold til kryptering/dekryptering.


Skriv et svar til: Endnu et RSA spørgsmål

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.