24
Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

  • Upload
    thina

  • View
    32

  • Download
    1

Embed Size (px)

DESCRIPTION

Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet. Privat Information PIN koder, en virksomheds kunde-database, patient journaler fra hospitalet,.. - PowerPoint PPT Presentation

Citation preview

Page 1: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Kryptologi og Sikre Beregninger

Ivan Damgård,

Datalogisk Institut, Aarhus Universitet

Page 2: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Privat Information

PIN koder, en virksomheds kunde-database, patient journaler fra hospitalet,..

- Det er værdifuld information, må og skal holdes konfidentielt

- Men ofte er det lige så værdifult at kombinere privat information fra forskellige kilder

Et par eksempler...

Page 3: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Simpel ”first price” Auktion

Et antal deltagere byder på en vare. Hver deltager har private information: en mksimal pris har er villig til at betale – men naturligvis vil alle gerne betale så lidt som muligt.

Mål: find en vinder og en pris på en fair måde.

Page 4: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Dobbelt Auktion – en ”Børs”

Mange sælgere og købere ønsker at handle forskellige mængder af en bestemt vare.

Hver sælger er villig til at sælge forskellige mængder, afhængigt af hvilken pris han kan få. Hver køber vil køber forskellige mænger, igen afhængig af prisen.

Mål: find en fair markedspris, givet udbud og efterspørgsel i markedet.

Klart, at f.eks. den maksimale pris du vil købe til skal være privat..

Page 5: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Benchmarking

Et antal virksomheder arbejder i den samme sektor. Hver virksomhed har data på hvordan forretningen kører, produktionsomkostninger, omsætning, lønudgifter, etc. Mål: hver virksomhed ønsker at finde ud af hvor godt den klarer sig sammenlignet med de andre.

- Men naturligvis uden at afsløre information til konkurrenterne..

Page 6: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Database og Privatlivets fred

Mange forskellige institutioner har databaser med information om bestemte personer.

Mål: udtrække statistiske oplysninger fra alle databaser samtidig.

- Men uden at bryde reglerne om privatlivets fred ved at give en enkelt person adgang til alle databaserne.

Page 7: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Et Fundamentalt Problem

Hvordan beregner vi de resultater vi vil have i disse situationer uden at bryde konfidentialiteten?

En naiv idea: find nogen vi alle stoler ubetinget på, giv ham alle relevante data, og lad ham beregne de resultater vi vil have.

Men hvordan finder vi sådan en betroet 3.-part?? I praksis er det ofte dyrt eller umuligt.

Kan vi klare os uden en betroet 3.-part?

Første ingrediens til en løsning..

Secret-sharing: hvordan man deler en hemmelighed med andre – uden at afsløre den..

Page 8: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Secret Sharing

I stedet for at opbevare et stykke hemmeligt data s ét bestemt sted, kan vi lade n deltagere ”dele” kendskabet til s:

Ejeren af s laver n shares, en for hver deltager. Shares er konstrueret sådan at:

• Hvis du kender tilstrækkelig mange shares, kan du nemt regne dig frem til s.

• Hvis du har for få, ved du intet om s.

Eksempel: s=3. Shares er to tilfældigt valgte tal, som giver s når du lægger dem sammen, f.eks. 5 and -2.

Givet kun ét af tallene: ingen ide om hvad s er.

Page 9: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Mere generelt: (n,t) Secret Sharing

Ud fra hemmeligheden s laver vi n shares, konstrueret så:

• t shares (eller færre) giver ingen information om s

• fra t+1 shares (eller flere) kan s let rekonstrueres.

Du kan nu give de n shares til n deltagere. Hvis du stoler på at højst t af dem er korrupte eller får stjålet deres shares, er din hemmelighed sikker.

Og så længe t+1 af dem er villige til at hjælpe dig, kan du ikke miste din hemmelighed.

Page 10: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Eksistens:

(n,t) secret sharing kan laves for ethvert n og t.

Eksempel- (n,1): shares er punkter på en tilfældig linie, hvor skæringspunktet med y-aksen giver dig s.

··

··

s

1 2 3 4

To punkter er nok til at bestemme en linie, og dermed s.

Givet kun ét punkt kan s være hvad som helst..

s??

Hvad med t>1? ..der skal 3 punkter til at bestemme en 2.-grads kurve, generelt t+1 punkter til en t’te grads kurve..

Page 11: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Det bliver bedre endnu..

Vi kan regne på data mens de er secret-sharet - ”at regne uden at kigge..”

··

··

s

1 2 3 4

s’

···

·

To hemmeligheder, s og s’ er sharede.

Alle adderer deres shares af s og s’.

Vi får shares af s+s’

Vi har beregnet summen, selvom der ikke er nogen der kender hverken s eller s’ !!

Multiplication virker også (mere kompliceret, kræver interaktion), faktisk er enhver beregning på hemmelige data mulig..

····s+s’

Page 12: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Vigtigt resultat fra grundforskningen:

Baseret på input data der er secret sharede, kan deltagerne beregne enhver funktion på input data og få resultatet i shared form, uden at afsløre noget som helst. ”Secure Multiparty Computation”.P1

P2

P3

P5

P4. . .a

. . .b

. . .c

. . .d

. . .3ab/c+d+1

Page 13: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Anvendelse til en Auktion

P1

P2

P3

P5

P4

4. Shares af resultat afsløres

5. ”og resultatet er..”

1

2

3

48

1. Deltagerne secret-sharer deres bud..

2. Og sender shares sikkert til serverne (ved brug af kryptering),,

3. Vi regner på

budene..

Deltagere

”Servere”

. . .Bud1

. . .Bud2

. . .Bud3

. . .Bud48

. . .Resultat

Page 14: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

En Kinesisk Auktion

• En vare er til salg• Hver deltager byder ind med en pris

Du vinder, hvis • Du er den eneste der har budt din pris, og• Din pris er den mindste som kun én har budt

Eksempel4 kr Dan3 kr Ivan, Thomas2 kr Jakob1 kr Rikke, Sigurd

Her vinder Jakob, og får varen for 2 kr.

Page 15: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Kinesisk Auktion, fortsat

• Man kan have lov at byde flere gange

Hvis der ikke findes en vinder efter de normale regler, trækkes der lod mellem dem der • har det laveste bud, og • er dem der er færrest om det.

Eksempel4 kr Dan3 kr Ivan, Thomas2 kr Jakob, Sigurd1 kr Rikke, Dan, Thomas

Her trækkes lod mellem Jakob og Sigurd.

Pas på med strategien: det er ikke nødvendigvis godt at byde så lavt som muligt!

Page 16: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

At gøre det i virkeligheden..

Forskningsprojektet Secure Information Management and Processing (SIMAP). Partnere:

- Kryptologi and Programmingssprog grupperne på Datalogisk Institut

- Økonomer fra KU

- IBM

- Danisco

Hvad vi har lavet:

- Et programmingssprog (SMCL) hvor man nemt kan udtrykke hvilken sikker beregning, man vil have lavet: hvem giver input, hvad skal beregnes, hvem skal vide hvad og hvornår.

- En compiler, der laver SMCL kode om til Java, der kan køre i virkeligheden, baseret på

- Et runtime system der har det nødvendige kryptografi (secret sharing, kryptering, etc...)

Page 17: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Den første anvendelse:

En sikker auktion hvor man kan handle produktionskvoter for sukkerroer.

Danske landmænd har kontrakter, der giver dem ret til at levere sukkerroer til Danisco.

Men EU har reduceret støtten til sukkerroe produktion kraftigt

Produktion kan kun overleve i Denmark hvis den flytter til der hvor den betaler sig bedst.

Produktionskontrakter skal kunne handles på et landsdækkende marked.

Page 18: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Løsning ved brug af en Dobbelt-Auktion

Mange sælgere, mange købere

Et bud fra en sælger er en liste af tal: ”For hver mulig pris per ton vil jeg sælge så og så meget” - noget lignende for købere.

For hver mulig pris, adderer vi budene så vi finder det totale udbud og den totale efterspørgsel i markedet til hver given pris.

pris/ton

mængde

Market clearing pris: mcp

Nu får alle lov at sælge eller købe det de ville til mcp.

Efterspørgsel går ned, udbud går op med stigende pris, så der er en pris hvor udbud er ca. = efterspørgsel, dette er market clearing prisen

udbud

efterspørgsel

Page 19: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

SikkerhedBud er privat information - de afslører ting om en dyrkers økonomi.Danisco har monopol i det Danske sukkermarked dyrkerne har ikke lyst til at Danisco skal være betroet 3.-part

Kunne bruge et konsulenthus som betroet part – alt for dyrt.

I stedet: sikker beregning, med 3 servere, placeret hos• Danisco, • Dyrkernes organisation DKS, og • SIMAP

Vi bruger (3,1) secret sharing, så ingen enkelt part har adgang til følsomme oplysninger.

Page 20: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Første Auktion:14. januar 2008• Tre PC’er forbundet over LAN

beregner børspris udfra ca. 2.400 krypterede bud som aldrig afsløres

• Tilsidst åbnes resultatet – en markedspris og hvor stor kvote hver dyrker skal handle til denne pris

• Herefter skifter produktionsretten (kvoten) til over 25.000 tons sukker hænder

Page 21: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Mere om teknikken i Systemet: Public-key kryptografi

• Sender og modtager har hver deres nøgle, en til at låse og en til at låse op

• Ex: hængelåsalle kan smække låsen (kryptere) kun indehaver af nøgle kan låse op (dekryptere)

Offentlig Nøgle

Privat Nøgle

Page 22: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Arkitektur

DB

budafgivning beregning

SIMAP

DKS

Danisco

LAN LAN

Danisco

SIMAP web-server

dyrker

Java-applet

Krypterede shares

log-in

session

Appletten har offentlige nøgler for hver server med ud

Page 23: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

Arkitektur(fortsat)

DB

DB

DB

DB

budafgivning beregning

SIMAP

DKS

Danisco

LAN LAN

Danisco

SIMAP web-server

dyrker

Java-applet

Krypterede shares

log-in

session

Privat nøgle

Page 24: Kryptologi og Sikre Beregninger Ivan Damgård, Datalogisk Institut, Aarhus Universitet

24

Dyrkernes og Daniscos oplevelse

• Selve beregningen gennemførtes på ca. 30 minutter

• Hvert bud tog op til 1 minut at indsende for de ca. 1.200 bydere (1 købs- og salgsbud pr. dyrker)

• Spørgeskema ifbm. bud (ca. 500 svar)

– 81% meget enig/enig i at børsen gør det lettere at handle kvoter

– 78% meget enig/enig i at det er vigtigt at deres bud holdes hemmeligt

– 86% meget enig/enig i de er tilfredse med den fortrolighed børsen tilbyder

• Danisco: ”Auktionen er gået udmærket. Det nye system har vist sig at kunne fungere, og det har været benyttet af rigtig mange roedyrkere. […] Jeg kan godt forestille mig at vi vil tilbyde samme system igen næste år, […]”

• Danske Sukkerroedyrkere: ”I år har det været meget væsentligt at skabe kontakt mellem køber og sælger, fordi lukningen af fabrikken i Assens har betydet, at mange dyrkere vest for Storebælt har villet sælge, mens dyrkere øst for Storebælt har stået klar til at købe dyrkningsrettighederne. Her har systemet både fungeret godt til at skabe kontakt mellem køber og sælger og til at finde markedsprisen.”