science >> Wetenschap >  >> Elektronica

Nieuw platform fungeert als poortwachter om ervoor te zorgen dat webservices voldoen aan de aangepaste gegevensbeperkingen van gebruikers

Onderzoekers van MIT en Harvard University hebben een platform ontwikkeld, genaamd Rivierbedding, die ervoor zorgt dat webservices voldoen aan de voorkeuren van gebruikers over hoe hun gegevens worden opgeslagen en gedeeld in de cloud. Krediet:Chelsea Turner, MIT

Een nieuw platform dat is ontwikkeld door onderzoekers van MIT en Harvard University zorgt ervoor dat webservices voldoen aan de voorkeuren van gebruikers over hoe hun gegevens worden opgeslagen en gedeeld in de cloud.

In de huidige wereld van cloudcomputing, gebruikers van mobiele apps en webservices slaan persoonlijke gegevens op op externe datacenterservers. Deze gegevens kunnen foto's, sociale media profielen, e-mailadressen, en zelfs fitnessgegevens van draagbare apparaten. Services voegen vaak de gegevens van meerdere gebruikers over servers samen om inzicht te krijgen in, zeggen, winkelpatronen van consumenten om nieuwe artikelen aan te bevelen aan specifieke gebruikers, of kan gegevens delen met adverteerders. traditioneel, echter, gebruikers hebben niet de macht gehad om te beperken hoe hun gegevens worden verwerkt en gedeeld.

In een paper die deze week wordt gepresenteerd op de USENIX Networked Systems Design and Implementation-conferentie, de onderzoekers beschrijven een platform, genaamd Rivierbedding, dat dwingt datacenterservers om gegevens alleen te gebruiken op manieren die gebruikers expliciet goedkeuren.

in rivierbedding, de webbrowser of smartphone-app van een gebruiker communiceert niet rechtstreeks met de cloud. In plaats daarvan, een Riverbed-proxy draait op het apparaat van een gebruiker om de communicatie te bemiddelen. Wanneer de service gebruikersgegevens probeert te uploaden naar een externe service, de proxy tagt de gegevens met een reeks toegestane toepassingen voor hun gegevens, een "beleid" genoemd.

Gebruikers kunnen een willekeurig aantal vooraf gedefinieerde beperkingen selecteren, zoals "mijn gegevens niet opslaan op permanente opslag" of "mijn gegevens mogen alleen worden gedeeld met de externe service x.com." De proxy tagt alle gegevens met het geselecteerde beleid.

In het datacentrum, Riverbed wijst de geüploade gegevens toe aan een geïsoleerd cluster van softwarecomponenten, waarbij elk cluster alleen gegevens verwerkt die zijn getagd met hetzelfde beleid. Bijvoorbeeld, één cluster kan gegevens bevatten die niet kunnen worden gedeeld met andere services, terwijl een andere gegevens kan bevatten die niet naar schijf kunnen worden geschreven. Riverbed bewaakt de code aan de serverzijde om ervoor te zorgen dat deze voldoet aan het beleid van een gebruiker. Als dat niet zo is, Riverbed beëindigt de dienst.

Riverbed streeft ernaar de voorkeuren van gebruikersgegevens af te dwingen, met behoud van de voordelen van cloud computing, zoals het uitvoeren van grootschalige berekeningen op uitbestede servers. "Gebruikers geven veel data aan webapps voor diensten, maar de controle verliezen over hoe de gegevens worden gebruikt of waar ze naartoe gaan, " zegt eerste auteur Frank Wang SM '16, doctoraat '18, recent afgestudeerd aan de faculteit Elektrotechniek en Informatica en het Laboratorium voor Computerwetenschappen en Kunstmatige Intelligentie. "We geven gebruikers controle om webapps te vertellen, 'Dit is precies hoe je mijn gegevens kunt gebruiken.'"

Op dat draadje, een extra voordeel voor app-ontwikkelaars, Wang voegt toe, creëert meer vertrouwen bij gebruikers. "Dat is nu een groot ding, ", zegt Wang. "Een verkoopargument voor je app zou zijn:'Het doel van mijn app is om gebruikersgegevens te beschermen.'"

Deelnemen aan Wang op het papier zijn Ph.D. student Ronny Ko en universitair hoofddocent informatica James Mickens, beide van Harvard.

"universums" creëren

in 2016, de Europese Unie heeft de Algemene Verordening Gegevensbescherming (AVG) aangenomen, waarin staat dat gebruikers toestemming moeten geven voor toegang tot hun gegevens, dat zij het recht hebben om te verzoeken dat hun gegevens worden gewist, en dat bedrijven passende beveiligingsmaatregelen moeten nemen. Voor webontwikkelaars, echter, deze wetten bieden weinig technische richtlijnen voor het schrijven van geavanceerde apps die gebruik moeten maken van gebruikersgegevens.

Vroeger, computerwetenschappers hebben "information flow control" (IFC) -systemen ontworpen waarmee programmeurs programmavariabelen kunnen labelen met gegevensbeleid. Maar met zoveel variabelen en veel mogelijke interacties tussen variabelen, deze systemen zijn moeilijk te programmeren. Dus, geen grootschalige webservices gebruiken IFC-technieken.

voornamelijk, Riverbed maakt gebruik van het feit dat de code aan de serverzijde van een app kan worden uitgevoerd bovenop een speciaal 'monitor'-programma - programma's die volgen, reguleren, en controleer hoe andere programma's gegevens manipuleren. De monitor maakt een afzonderlijke kopie van de app-code voor elk uniek beleid dat aan gegevens is toegewezen. Elk exemplaar wordt een 'universum' genoemd. De monitor zorgt ervoor dat gebruikers die hetzelfde beleid delen, hun gegevens hebben geüpload naar, en gemanipuleerd door hetzelfde universum. Met deze methode kan de monitor de code van een universe beëindigen, als die code het gegevensbeleid van de universe probeert te schenden.

Dit proces omvat een aangepaste tolk, een programma dat programmeertaal compileert tot code die door een computer wordt begrepen. Tolken worden ook gebruikt om runtime-programma's te helpen bij het implementeren van opdrachten op laag niveau in een origineel programma terwijl het wordt uitgevoerd. De onderzoekers hebben een traditionele interpreter aangepast om gedefinieerd beleid te extraheren uit inkomende gebruikersgegevens en bepaalde variabelen te labelen met specifieke beleidsrichtingen. Etiketten zullen, bijvoorbeeld, duiden op de witte lijst geplaatste webservices voor het delen van gegevens of beperk permanente opslag, wat betekent dat de gegevens niet kunnen worden opgeslagen wanneer de gebruiker stopt met het gebruik van de webservice.

"Stel dat ik wil dat mijn gegevens worden samengevoegd met andere gebruikers. Die gegevens worden in een eigen universum geplaatst met andere gebruikersgegevens met hetzelfde beleid, ", zegt Wang. "Als een gebruiker met niemand gegevens wil delen, dan heeft die gebruiker zijn eigen hele universum. Op deze manier, je hebt geen kruisbestuiving van gegevens."

Voor ontwikkelaars, dit maakt het veel gemakkelijker om te voldoen aan de AVG en andere privacywetten, Wang zegt, omdat gebruikers expliciet toestemming hebben gegeven voor toegang tot gegevens. "Alle gebruikers in elke universe hebben hetzelfde beleid, zodat u al uw bewerkingen kunt uitvoeren en u zich geen zorgen hoeft te maken over welke gegevens in een algoritme worden gestopt, omdat iedereen hetzelfde beleid heeft ten aanzien van gegevens in dat universum, "zegt Wang.

Efficiënt kopiëren

In het ergste geval, Wang zegt, elke gebruiker van elke service zou een afzonderlijk universum hebben. Over het algemeen, dit kan aanzienlijke rekenkosten veroorzaken en de service vertragen. Maar de onderzoekers gebruikten een relatief nieuwe techniek, genaamd "containergebaseerde virtualisatie, " waardoor de Riverbed-monitor efficiënter meerdere universums van hetzelfde programma kan creëren. universumbeheer is snel, zelfs als een service honderden of duizenden universums heeft.

In hun krant de onderzoekers evalueerden Riverbed op verschillende apps, door te demonstreren dat het platform gegevens veilig houdt met weinig overhead. De resultaten laten zien dat meer dan 1, 000 universums kunnen samenpersen op een enkele server, met toegevoegde berekening die de service met ongeveer 10 procent vertraagt. Dat is snel en efficiënt genoeg voor gebruik in de echte wereld, zegt Wang.

De onderzoekers stellen zich voor dat het beleid is geschreven door belangengroepen, zoals Electronic Frontier Foundation (EFF), een internationale non-profitorganisatie voor digitale rechten. Nieuwe polissen kunnen op elk moment worden 'ingebracht' bij een door Riverbed gerunde service, wat betekent dat ontwikkelaars geen code hoeven te herschrijven.