MIT och Harvard University forskare har utvecklat en plattform, kallas Riverbed, som säkerställer att webbtjänster följer användarnas preferenser för hur deras data lagras och delas i molnet. Upphovsman:Chelsea Turner, MIT
En ny plattform som utvecklats av MIT och Harvard University forskare säkerställer att webbtjänster följer användarnas preferenser för hur deras data lagras och delas i molnet.
I dagens värld av molndatorer, användare av mobilappar och webbtjänster lagrar personuppgifter på fjärrdatacenterservrar. Dessa uppgifter kan inkludera foton, profiler på sociala medier, mejladresser, och även fitnessdata från bärbara enheter. Tjänster sammanställer ofta flera användares data över servrar för att få insikter om, säga, konsumenthandelsmönster för att rekommendera nya varor till specifika användare, eller kan dela data med annonsörer. Traditionellt, dock, användare har inte haft befogenhet att begränsa hur deras data behandlas och delas.
I ett papper som presenterades vid veckans USENIX Networked Systems Design and Implementation -konferens, forskarna beskriver en plattform, kallas Riverbed, som tvingar datacenterservrar att endast använda data på sätt som användare uttryckligen godkänner.
I flodbädden, en användares webbläsare eller smartphone -app kommunicerar inte direkt med molnet. Istället, en Riverbed -proxy körs på en användares enhet för att förmedla kommunikation. När tjänsten försöker ladda upp användardata till en fjärrtjänst, proxyn taggar data med en uppsättning tillåtna användningsområden för deras data, kallas en "policy".
Användare kan välja valfritt antal fördefinierade begränsningar - t.ex. "lagra inte mina data på ihållande lagring" eller "mina data får endast delas med den externa tjänsten x.com." Proxyn taggar all data med den valda policyn.
I datacenteret, Riverbed tilldelar uppladdade data till ett isolerat kluster av programvarukomponenter, med varje kluster bearbetning endast data taggade med samma principer. Till exempel, ett kluster kan innehålla data som inte kan delas med andra tjänster, medan en annan kan innehålla data som inte kan skrivas till hårddisken. Riverbed övervakar koden på serversidan för att säkerställa att den följer en användares policyer. Om det inte gör det, Riverbed avslutar tjänsten.
Riverbed syftar till att tillämpa preferenser för användardata, samtidigt som fördelarna med molndatorer bibehålls, som att utföra storskaliga beräkningar på outsourcade servrar. "Användare ger mycket data till webbappar för tjänster, men tappar kontrollen över hur data används eller vart de går, "säger författaren Frank Wang SM '16, Ph.D. '18, en nyutexaminerad avdelning för elektroteknik och datavetenskap och datavetenskap och artificiell intelligenslaboratorium. "Vi ger användarna kontroll att berätta för webbappar, 'Så här kan du använda mina data.' "
På den tråden, en extra förmån för apputvecklare, Wang tillägger, skapar mer förtroende för användarna. "Det är en stor grej nu, "Wang säger." En försäljningsargument för din app skulle vara att säga, 'Min apps mål är att skydda användardata.' "
Ansluta Wang på pappret är Ph.D. student Ronny Ko och docent i datavetenskap James Mickens, båda Harvard.
Skapa "universum"
2016, Europeiska unionen antog den allmänna dataskyddsförordningen (GDPR), som säger att användare måste godkänna att deras data ska komma åt, att de har rätt att begära att deras data raderas, och att företag måste genomföra lämpliga säkerhetsåtgärder. För webbutvecklare, dock, dessa lagar ger lite teknisk vägledning för att skriva sofistikerade appar som behöver utnyttja användardata.
Förr, datavetare har utformat "informationsflödeskontroll" (IFC) system som gör det möjligt för programmerare att märka programvariabler med datapolicyer. Men med så många variabler och många möjliga interaktioner mellan variabler, dessa system är svåra att programmera. Således, inga storskaliga webbtjänster använder IFC-tekniker.
Först och främst, Riverbed utnyttjar det faktum att koden på serversidan för en app kan köras ovanpå ett speciellt "monitor" -program-program som spårar, reglera, och verifiera hur andra program manipulerar data. Monitorn skapar en separat kopia av appens kod för varje unik policy som tilldelas data. Varje kopia kallas ett "universum". Monitorn säkerställer att användare som delar samma policy har sin data uppladdad till, och manipuleras av, samma universum. Denna metod gör det möjligt för monitorn att avsluta ett universums kod, om den koden försöker bryta mot universums datapolicy.
Denna process innehåller en anpassad tolk, ett program som sammanställer programmeringsspråk till kod som förstås av en dator. Tolkar används också för att hjälpa runtime-program att implementera kommandon på låg nivå i ett originalprogram när det körs. Forskarna modifierade en traditionell tolk för att extrahera definierade policyer från inkommande användardata och märker vissa variabler med specifik policyriktning. Etiketter kommer, till exempel, beteckna vitlistade webbtjänster för datadelning eller begränsa beständig lagring - vilket innebär att data inte kan lagras när användaren slutar använda webbtjänsten.
"Säg att jag vill att mina data ska aggregeras med andra användare. Den data sätts in i sitt eget universum med andra användardata med samma policy, "Säger Wang." Om en användare inte vill dela data med någon, då har användaren sitt eget hela universum. Den här vägen, du har ingen korsbestämning av data. "
För utvecklare, detta gör det mycket lättare att följa GDPR och andra integritetslagar, Wang säger, eftersom användare har gett uttryckligt samtycke till datatillgång. "Alla användare i varje universum har samma policyer, så att du kan utföra alla dina operationer och inte oroa dig för vilken data som läggs in i en algoritm, eftersom alla har samma policy för data i det universum, "Säger Wang.
Effektiv kopiering
I värsta fall, Wang säger, varje användare av varje tjänst skulle ha ett separat universum. Rent generellt, detta kan orsaka betydande beräkningskostnader och sakta ner tjänsten. Men forskarna utnyttjade en relativt ny teknik, kallas "containerbaserad virtualisering, "vilket gör att Riverbed -monitorn mer effektivt kan skapa flera universum av samma program. Som ett resultat, universums hantering är snabb, även om en tjänst har hundratals eller tusentals universum.
I deras papper, forskarnas utvärderade Riverbed på flera appar, demonstrera plattformen håller data säkra med lite overhead. Resultaten visar att mer än 1, 000 universum kan klämma på en enda server, med extra beräkning som saktar ner tjänsten med cirka 10 procent. Det är tillräckligt snabbt och effektivt för verklig användning, Säger Wang.
Forskarna ser att policyn är skriven av förespråkargrupper, som Electronic Frontier Foundation (EFF), en internationell ideell grupp för digitala rättigheter. Ny policy kan när som helst "släppas in" på en flodbäddsdriven tjänst, vilket innebär att utvecklare inte behöver skriva om kod.