Alexandra Instituttet A/S // Om os // Faglige labs // Security Lab // Secure Multiparty Computation – regn på data uden at kigge

Secure Multiparty Computation – regn på data uden at kigge

 

Secure Multiparty Computation (SMC) er en teknologi, der gør det muligt at foretage beregninger på krypterede tal. Det kan umiddelbart lyde umuligt, men ved at anvende de rigtige kryptografiske teknikker, kan det lade sig gøre alligevel. Det gør det bl.a. muligt for virksomheder at samarbejde på helt nye måder – fx i forbindelse med benchmarking eller online auktioner.

Med SMC kan to eller flere servere i fælleskab beregne resultatet af en vilkårlig funktion uden at lære inputtet til funktionen. Fx kan serverne beregne resultatet af en auktion uden at kende de indkomne bud. Det sker ved, at hver server kun modtager krypteret information om hvert enkelt bud. Den krypterede information, der sendes til den enkelte server (i nogle tilfælde til flere servere), afslører ikke noget om selve buddet. Ved brug af de rigtige kryptografiske værktøjer, kan serverne alligevel arbejde sammen om at beregne et resultat.

Det giver parter der ikke umiddelbart stoler på hinanden mulighed for samarbejde omkring konfidentiel information. SMC anses som sikrere, end hvis beregningen var foretaget på en traditionel PC, da en hacker skal bryde ind i flere computere for at afsløre input.

SÅDAN FUNGERER SMC

Sikker deling af data åbner nye døre

Et centralt punkt i SMC-teknologien er, at ideen om deling af hemmeligheder vil kunne udvides til beregning af en hvilken som helst funktion, som en traditionel computer kan udføre. Prisen man betaler er en langsommere beregning. Beregningen svarer nogenlunde til en computer fra starten af 90’erne. Det er endda muligt at hemmeligholde selve den funktion, der beregnes, som ellers normalt er kendt. Teknologien åbner mange døre, man før slet ikke vidste kunne åbnes.  

Et eksempel på et teknik fra den kryptografiske værktøjskasse i SMC er secret sharing. Lad os forestille os, at en hemmelighed x = 42 skal deles mellem to servere. Hvis vi vælger to vilkårlige tal, x1 og x2, således at x = x1+x2 (fx x1 = 50 og x2 = -8) og giver x1 til den første server og x2 til den anden, så vil ingen af dem kende hemmeligheden x. Faktisk kender den første server kun tallet 50, og ud fra den information, kan det andet tal være et hvilket som helst helt tal. Naturligvis kan 50 + hvad som helst være lig med hvad som helst.

Ligeledes kan vi hemmeligt dele et andet tal y = 23 mellem to servere (fx y1 = 20 og y2 = 3). De to servere kan nu beregne x+y, uden at nogen af dem kender hverken x eller y. Den første server beregner ganske enkelt x1+y1 = z1 og sender resultatet z1 til den anden server, der herefter kan beregne z1+x2+y2=x+y – alt sammen uden at nogen af serverne får kendskab til x eller y, men kun det endelige resultat: summen af x og y.

SMC giver højt sikkerhedsniveau og enkel administration

Hemmeligholdelse af inputs til en beregning – som fx en auktion – sikres traditionelt (dvs. uden SMC) i to af hinanden uafhængige trin: 1) buddene krypteres undervejs fra byder til auktionsholder men dekrypteres ved ankomst til auktionsholder og 2) det sikres, at auktionsholderen behandler buddene fortroligt. Dette håndhæves normalt ved at indføre sikkerhedspolitikker, der begrænser, hvilke af auktionsholders medarbejdere, der har adgang til buddene. Dette skridt er desværre også det vanskeligste, hvorfor den realiserede løsning kun giver shallow confidentiality.

Med SMC kan man helt undgå det sidste. Buddene bliver aldrig dekrypteret. Komplekse sikkerhedspolitikker er ikke nødvendige. Dette kaldes deep confidentiality, dvs. at data til enhver tid forbliver krypterede, aldrig lagres eller på anden måde er tilgængelige i ikke-krypteret form. Det er essensen af SMC. Teknologien giver et højt sikkerhedsniveau, enkel administration og er dermed effektiv til løsninger, hvor der kræves konfidentiel datahåndtering. 

SMC I FORSKNING OG PRAKSIS

I Alexandra Instituttet har vi arbejdet med SMC i mange projekter og har opbygget stor viden og erfaring på området. 

Et af de mest kendte SMC-projekter globalt er SIMAP, som var et forskningsprojekt, vi gennemførte i samarbejde med bl.a. Aarhus Universitet, Københavns Universitet, CBS og Danisco. Projektet blev finansieret af Det Strategiske Forskningsråd og havde til formål at bringe SMC i kommerciel anvendelse. Projektet førte til dannelsen af spinoff-virksomheden Partisia, der har udviklet en sikkerhedsløsning til den danske sukkerroebørs baseret på SMC. 

Vi har desuden anvendt SMC i praksis i udviklingen af Energiauktion.dk og virksomheden Sepior, der arbejder med at beskytte virksomheders data i skyen.

I projektet COBE – Confidential Benchmarking arbejder vi med at anvende SMC, så fx banker i samarbejde med SEGES kan beregne landmænds økonomiske performance, uden at den enkelte landmands følsomme økonomiske tal afsløres, og uden at banken afslører, hvilke kunder den har. Læs også: Kryptografisk teknologi kan bidrage til økonomisk vækst i landbruget.

PRACTICE er et stort EU FP7-projekt hvor vi bla. har videreudviklet prototypen fra COBE. Alexandra Instituttets rolle i projektet er at designe arkitekturen og implementere en platform for secure computing, herunder at implementere relevante protokoller udviklet af andre partnere.

I projektet Big Data by Security arbejder vi med SMC i to forskellige cases. Den ene handler om at udvikle sikre kreditvurderingmetoder, mens den anden handler om at udvikle et benchmarkingsystem for virksomheders elforbrug. Begge cases er anvendelige i bred forstand, og derfor er det afgørende, at danske virksomheder får gavn af de konkrete løsninger til eksempelvis at få bedre adgang til finansiering eller minimere energiomkostninger.

Scalable Oblivious Data Analytics (SODA) er et innovationsprojekt, hvor vi undersøger mulighederne for at anvende SMC i forbindelse med dataanalyse og big data. Med SMC er det muligt at trække essentielle værdiskabende oplysninger ud af datasæt, samtidig med at enkeltpersoners følsomme data er beskyttet. Projektet undersøger også SMC i forhold til persondataforordningen (GDPR), hvor SMC-teknologien kan løse mange af de problemer, der måtte opstå i kølvandet på GDPR.

Alexandra Instituttet har gennem flere år arbejdet på at udvikle open source frameworket FRESCO i samarbejde med vores spin-off virksomhed Partisia. FRESCO har været anvendt i de fleste af vores SMC-projekter. Frameworket gør det nemt og overskueligt for almindelige udviklere uden erfaring indenfor kryptologi at udvikle SMC-applikationer uden at skulle bekymre sig om, præcist hvad der sker ’nede i maven’. På samme måde er det nemt og overskueligt at implementere nye SMC-protokoller, som er magien bag teknologien. Trods en brugervenlig tilgang, opfordrer vi dog stadig til, at man allierer sig med en af Alexandra Instituttets eksperter, da der er mange faldgruber, når man arbejder med SMC.

 

Kontakt
Head of Security Lab, PhD
+45 24 26 99 11
Åbogade 34, 8200 Aarhus N
Nygaard bygningen, 3. etage lokale 380
.