Skip to content

Krossodden fort #8 RSA Mystery Cache

Hidden : 10/18/2017
Difficulty:
3.5 out of 5
Terrain:
2 out of 5

Size: Size:   small (small)

Join now to view geocache location details. It's free!

Watch

How Geocaching Works

Please note Use of geocaching.com services is subject to the terms and conditions in our disclaimer.

Geocache Description:

Krossodden fort er eit tidlegare kystfort. I dag er det eit friområde  vestsiden av Flekkerøya, innenfor gårdane Andås og Berge.


Nattskyting med 10,5 cm kanon.

 Ved Krossodden er det lagt ut ein fortsettelse av dei fem kryptografi-cachane ved Belteviga fort, tre cacher som tar for seg sider ved moderne kryptografi. Sidan dette er ein oppfølgar av ein serie med 5 cacher, startar me på nummer 6.

Områder er ein del av Oksøy-Ryvingen Landskapsvernområde, og eg oppfordrar alle geocachere til å følga opp verneforskrifta sine ord om at "All ferdsel skal skje varsomt og ta hensyn til vegetasjon, dyreliv og kulturminner." 

Dagens nerde-humor:

 (Henta frå xkcd under lisens Creative Commons Attribution-NonCommercial 2.5 License (Forklaring av xkcd-stripe))

Public key kryptografi - RSA

Eit alternativ til å bruka Diffie-Hellman for nøkkelutveksling er Public key-kryptografi. 

Her er ideen at nøkkelen for kryptering er forskjellig frå nøkkelen for dekryptering. Så viss Alice lager ein privat nøkkel og ein offentleg nøkkel, så kan ho senda den offentlege nøkkelen til Bob, og Bob kan bruka den til å kryptera meldingar til Alice. Og Alice kan bruka den private nøkkelen til å dechiffrera meldinga. Det geniale er at sjølv om Eve skulle få tak i nøkkelen Alice sendte til Bob så vil ho ikkje kunna lesa meldingar kryptert med den nøkkelen.

Det var Ron RivestAdi Shamir, and Leonard Adleman som først publiserte ein metode for å gjera dette, derfor vert metoden kalla RSA.

Det heile bygger på at det er mogleg å plukka tal slik at ein til dømes får:


221 mod 55 = 2
321 mod 55 = 3
    :
5421 mod 55 = 54

Meir generelt, det er mogleg å finna tal n og f slik at

mf mod n = m    for alle positive m < n 

Dersom f = d∙e

så kan meldinga m krypterast som

M = me mod n

og dechiffrerast som

m = Md mod n

I vårt døme er

f =21 = 3∙7

Derfor, så er

mf = m21 = (m3)7

Viss meldinga vår er til dømes m = 26, så kan den krypterast som

M = m3 mod 55 = 263 mod 55 = 31

og mottaker kan dekoda den med å rekna ut

m = M7 mod 55 = 317 mod 55 = 26

I dette dømet er n=55 og e = 3 til saman den offentlige nøkkelen (public key), som kan brukast til å kryptera meldinga, mens d = 7 kombinert med n er den private nøkkelen som vert brukt til å tolka meldinga. 

Så det Alice må gjera er å finna n, e og d slik at dette fungerer, senda n og e til Bob og holda d strengt hemmeleg. Dermed kan Bob senda meldingar til Alice som Eve ikkje kan lesa.

 

For å finna d og e slik at dette fungerer tar ein utgangspunkt i n = p∙q der p og q er primtal. Sikkerheten i systemet ligg i at det er svært vanskeleg å finna p og q frå n viss n er stor nok.

Binær koding av meldingar

I ein datamaskin er alt lagra og overført som binære tall. Tekst er ofte overført i ASCII eller eit format avleda frå ASCII. 

I slike system er ofte kvart tegn representert som ein byte, det vil seia eit binært tal med 8 bits

Nokre døme

Tegn ASCII
A 0100 0001
B 0100 0010
1 0011 0001
2 0011 0010

 

Dermed, mens tallverdien 12 er representert som 1100 så er teksten "12" representert som  0011 0001 0011 0010. Den er denne verdien som vanlegvis vert overført når du overfører ein tekst som inneheld talet "12".

For å kortare bitstrenger å arbeida med i øvelses-døma våre, så vel me eit mindre realistisk, men enklare system, BCD til å representera meldinga, sidan meldinga vår berre skal innehalda tal. Kvart siffer vil verta representert med ein halv byte, ein nibble

 0  0000
 1  0001
 2  0010
 3  0011
 4  0100
 5  0101
 6  0110
 7  0111
 8  1000
 9  1001 

 

I dette systemet vert teksten "12" representert som 0001 0010. 

Døme

Vi skal representera koordinater som 7+7 desimale (Det vil seia vanlege) siffer.

Sørsmålsteiknet til denne cacher er plassert på:

N 58° 04.400' E 07° 58.800'

Me fjerner alle skilleteikn osv og skriv det som:  

58044000758800

Med kvart siffer koda som ein nibble vert dette:

0101 1000 0000 0100 0100 0000 0000 0000 0111 0101 1000 1000 0000 0000

Viss me tek heile den strengen av bits og tolkar som eit tal,  så vert det

24 774 470 882 658 304

og det er det talet som skal overførast som ei melding.

Viss Alice har gjeve oss den offentlege nøkkelen

n = 36 893 484 611 587 282 961

og

e = 65537  (Dette er ein mykkje brukt verdi for e)

kan me kryptera denne meldinga som

M = 24 774 470 882 658 304 65537 mod 36 893 484 611 587 282 961 = 5 690 774 574 811 972 589

og dette er det tallet me sender til Alice som medinga vår.

Oppgåve

Den private nøkkelen Alice har som passer med den offentlege nøkkelen me såg over, er

d = 4 646 517 565 521 361 817

Bob har sendt Alice posisjonen til sjølve boksen, og Alice har mottatt tallet 

M = 34 295 444 216 849 656 815

som chiffertekst, og så kan dei møtast ved cachen.

NB Når me skal konvertera den dekrypterte meldinga tilbake til ein streng av nibbles, så skal me ha 4∙14 =56 bits. Viss me får færre en det, og det får me, så fyll inn ein eller fleire 0-er først i strengen. 

Sluttkomentar

I praksis vert RSA ikkje brukt til å senda meldingar, det vert brukt til å senda ein nøkkel slik at ein kan bruka til dømes AES for den eigentlege komunikasjonen.

Dette vert til dømes brukt av SSH til å setta opp ein sikker kanal. SSH-Serveren har på eit tidspunkt fått ein offentleg nøkkel frå klienten, og kan sidan vita at den klienten som prøver å kopla seg opp er den samme som sendte inn den offentlege nøkkelen, for forbindelsen vil berre kunna settast opp viss klienten har den private nøkkelen.

 

Kryptograficachane på Flekkerøya

Første serie, klassisk kryptografi

Belteviga fort #1 Cæsar-chiffer

Belteviga fort #2 Enkelt substitusjonchiffer

Belteviga fort #3 Vigenèrechiffer

Belteviga fort #4 Vigenèrechiffer 2

Belteviga fort #5 Enigma (Bonus)

Andre serie, moderne kryptografi, nøkkelutveksling

Krossodden fort #6 Modulær aritmetikk

Krossodden fort #7 Diffie–Hellman utveksling

Krossodden fort #8 RSA

Tredje serie, moderne kryptografi, Symmetriske chiffer

Laksevika fort #9 XOR

Laksevika fort #10 AES

1.april spesial, på fastlandet.

Batterie Vara #11 Desinformasjon

Additional Hints (Decrypt)

Finerg fxny vxxwr raqn cå ahyy. Ivff qrg twre qrg, fwrxx bz qh oehxne rva xnyxhyngbe zrq sbe så fvssre.

Decryption Key

A|B|C|D|E|F|G|H|I|J|K|L|M
-------------------------
N|O|P|Q|R|S|T|U|V|W|X|Y|Z

(letter above equals below, and vice versa)