Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Kryptologi og Sikre Beregninger

Lignende præsentationer


Præsentationer af emnet: "Kryptologi og Sikre Beregninger"— Præsentationens transcript:

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

2 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...

3 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.

4 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..

5 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..

6 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.

7 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..

8 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.

9 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.

10 · · · · 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?? To punkter er nok til at bestemme en linie, og dermed s. Givet kun ét punkt kan s være hvad som helst.. s 1 2 3 4 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..

11 · · · · · · · · · · · · Det bliver bedre endnu..
Vi kan regne på data mens de er secret-sharet - ”at regne uden at kigge..” 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’ !! s+s’ s’ s 1 2 3 4 Multiplication virker også (mere kompliceret, kræver interaktion), faktisk er enhver beregning på hemmelige data mulig..

12 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 P4 . a . 3ab/c+d+1 . b . c P5 P2 . d P3

13 Anvendelse til en Auktion
. Bud1 1 ”Servere” 3. Vi regner på budene.. P1 P2 P3 P5 P4 . Bud2 . Resultat 2 . Bud3 4. Shares af resultat afsløres 3 5. ”og resultatet er..” . Bud48 Deltagerne secret-sharer deres bud.. Og sender shares sikkert til serverne (ved brug af kryptering),, 48 Deltagere

14 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 Eksempel 4 kr Dan 3 kr Ivan, Thomas 2 kr Jakob 1 kr Rikke, Sigurd Her vinder Jakob, og får varen for 2 kr.

15 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. Eksempel 4 kr Dan 3 kr Ivan, Thomas 2 kr Jakob, Sigurd 1 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!

16 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...)

17 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.

18 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. mængde udbud efterspørgsel pris/ton Market clearing pris: 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 Nu får alle lov at sælge eller købe det de ville til mcp.

19 Sikkerhed Bud 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.

20 Første Auktion:14. januar 2008
Tre PC’er forbundet over LAN beregner børspris udfra ca 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 tons sukker hænder

21 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ås alle kan smække låsen (kryptere) kun indehaver af nøgle kan låse op (dekryptere) Privat Nøgle Offentlig Nøgle

22 Arkitektur DB LAN budafgivning beregning SIMAP Danisco
SIMAP web-server DB session LAN log-in Danisco Java-applet Krypterede shares DKS dyrker budafgivning beregning Appletten har offentlige nøgler for hver server med ud

23 Arkitektur(fortsat) DB LAN budafgivning beregning SIMAP Danisco
Privat nøgle SIMAP web-server DB DB session LAN log-in DB Danisco Java-applet Krypterede shares DB DKS dyrker budafgivning beregning

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 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.”


Download ppt "Kryptologi og Sikre Beregninger"

Lignende præsentationer


Annoncer fra Google