Introductie
Deze FAQ geeft duidelijke en beknopte antwoorden op de meest gestelde vragen over MPC en Roseman Labs. Voor verdere vragen kunt u contact opnemen met uw Roseman Labs contactpersoon of een e-mail sturen naar support@rosemanlabs.com.
-
Hoe kan ik 'statistische onthulling' in een analyse voorkomen?
-
Hoe kan de kwaliteit van inputdata worden gewaarborgd, aangezien je die data niet kunt inzien?
-
Wat is het verschil tussen het analyseren van anonieme en versleutelde data?
Wat is Roseman Labs?
Roseman Labs is een Nederlands Deep-Tech bedrijf, opgericht in 2020, met de missie om privacy te beschermen en samenwerking op het gebied van gevoelige gegevens mogelijk te maken om wereldwijde uitdagingen aan te pakken.
Onze software maakt gebruik van gepatenteerde technologie, gebaseerd op multi-party computation, om organisaties in staat te stellen meerdere datasets snel en veilig te versleutelen, te koppelen en te analyseren. Hierbij worden de privacy en commerciële gevoeligheid van de gegevens gewaarborgd zonder de onderliggende informatie bloot te leggen.
De prestaties die onze technologie heeft neergezer hebben ons verschillende prijzen opgeleverd, zoals de CES Innovation Award in Cybersecurity & Privacy en de 2024 Dutch Privacy Award. Verder zijn we onder andere ISO 27001 en NEN7510 gecertificeerd, waarmee we informatiebeveiliging van topniveau garanderen.
Kijk hier voor meer informatie over een aantal van de uitdagingen die we oplossen.
Wat is multi-party computation?
Multi-Party Computation (MPC) is een privacyverbeterende technologie waarmee meerdere partijen samen gegevens kunnen analyseren zonder die gegevens aan elkaar te onthullen. Het maakt geaggegreerde berekeningen mogelijk, zoals gemiddelden en vergelijkingen, tussen verschillende datasets terwijl de individuen in de datasets geheim blijven.
MPC versleutelt en verdeelt gegevens in “secret shares” bij de bron. Deze shares, die op zichzelf niets onthullen, worden vervolgens verdeeld over drie servers die samenwerken als een 'engine'. De servers voeren berekeningen uit op de shares en alleen het eindresultaat wordt ontsleuteld en gedeeld met de analist - ervan uitgaande dat de berekeningen zijn goedgekeurd.
Dit zorgt ervoor dat gevoelige gegevens beschermd blijven tijdens het analyseproces en biedt een veilige manier om inzichten te verkrijgen uit meerdere gegevensbronnen zonder af te doen aan de privacy.
Wat voor soort berekeningen zijn mogelijk in Roseman Labs?
Veel gangbare soorten berekeningen voor gegevensanalyse kunnen worden uitgevoerd in de Roseman Labs engine, waaronder complexere berekeningen zoals logistische en lineaire regressie en K-nearest neighbors. Onze engine vertaalt de Pythoncode die u schrijft zodat die kan worden uitgevoerd op de brondata, zonder de onderliggende gegevens te onthullen. Dit is mogelijk dankzij de expertise van het cryptografieteam van Roseman Labs.
Raadpleeg onze documentatie voor de volledige functionaliteit van ons Python-package 'crandas'.
Hoe kan ik ongewenste stappen in een analyse voorkomen?
Ongewenste queries kunnen worden voorkomen door een robuust goedkeuringsproces voor scripts. Zodra een Roseman Labs omgeving is opgezet, wordt een set goedkeurders uitgenodigd en bevestigd voordat er data kan worden geüpload. Deze goedkeurders beoordelen en keuren alle analyses goed die door analisten worden ingediend, voordat ze worden uitgevoerd op gevoelige gegevens. Ze onderzoeken de Python-scripts zorgvuldig om te valideren dat er alleen informatie wordt vrijgegeven die in lijn is met de afspraken die zijn gemaakt als onderdeel van de samenwerking. Daarnaast controleren ze of 'risk metrics' voldoende zijn geïmplementeerd om ongewenste onthulling van individuele records te voorkomen. Dit garandeert de integriteit en vertrouwelijkheid van de gegevens.
Hoe kan ik 'statistische onthulling' in een analyse voorkomen?
We bieden een handleiding om je te helpen bij het beoordelen en beperken van ongewenste onthulling van gevoelige informatie uit de brongegevens. Hierin wordt beschreven hoe je delen van de code kunt herkennen die mogelijk risicovol zijn. Waar onthullingsrisico's niet kunnen worden gevalideerd door de code te inspecteren, zijn er verschillende 'risk metrics' geïmplementeerd in crandas om zulke risico's tijdens het uitvoeren van het script te herkennen en onthulling te voorkomen. Een script mag alleen worden uitgevoerd na inspectie en expliciete goedkeuring door de goedkeurders.
Wie ziet de resultaten van een analyse?
Analisten voeren de query's uit op gevoelige gegevens na goedkeuring binnen de omgeving. Zodra de query's zijn goedgekeurd voor specifieke analisten, kan het script door die analist(en) worden gedraaid op de gevoelige brondata en kunnen de uitkomsten ervan worden gedeeld.
Waar gaat de data die ik upload naartoe?
De niet-versleutelde gegevens blijven altijd op uw eigen systeem en worden nooit geüpload naar Roseman Labs. Vóór elke interactie met ons platform worden de gegevens direct 'client-side' versleuteld, wat betekent dat het versleutelingsproces volledig op je lokale apparaat plaatsvindt.
Eenmaal versleuteld, worden de gegevens opgedeeld in “secret shares”, die vervolgens worden verdeeld over meerdere servers die gezamenlijk de 'engine' vormen. Deze secret shares zijn cryptografisch beveiligd en kunnen op zichzelf geen informatie over de onderliggende gegevens onthullen. Het resultaat is dat noch Roseman Labs, noch uw samenwerkingspartners uw gegevens kunnen bekijken - u behoudt te allen tijde het volledige eigendom en de volledige controle.
Op welke manier spelen cryptografische sleutels een rol
Ja, sleutels worden gebruikt bij het ondertekenen van scripts en voor communicatie tussen de engine en de python-client (uw lokale pythonomgeving). U downloadt de sleutels via het Roseman Labs platform en deze sleutels worden gebruikt om acties als gebruiker te autoriseren. De sleutels dienen verschillende doelen, afhankelijk van de rol die u heeft als gebruiker. Door een goedkeurder wordt de sleutel gebruikt om de analyse goed te keuren die zal worden uitgevoerd op de gevoelige brondata. Door de analist wordt de sleutel gebruikt om te verifiëren dat de analist die om goedkeuring vraagt ook daadwerkelijk degene is die de analyse uitvoert.
Hoe veilig is Roseman Labs?
De engine draait op drie servers in verschillende clouds (OVHcloud, Fuga en Scaleway), die elk door verschillende cloud-admins worden beheerd. Door het gebruikte Multi-Party Computation protocol zou een meerderheid van deze partijen moeten samenspannen om de onderliggende versleutelde data te onthullen. Het is wiskundig bewezen dat er geen gegevens onthuld kunnen worden zolang de partijen die de servers bedienen niet samenspannen. De beveiliging wordt verder verbeterd door ons goedkeuringsproces voor scripts, dat ervoor zorgt dat alleen goedgekeurde analyses kunnen worden uitgevoerd op de brondata.
Hoe kan de kwaliteit van inputdata worden gewaarborgd, aangezien je die data niet kunt inzien?
Als onderdeel van onze dataverzoek-functionaliteit heeft Roseman Labs robuuste functies voor gegevensvalidatie. Wanneer een dataverzoek wordt aangemaakt, kan de gebruiker validatieregels definiëren, zoals specifieke kolomnamen, datatypen en beperkingen zoals minimum- en maximumwaarden, verplichte tekenreeksen of de optie om een kolom leeg te laten. Deze validatiecontroles worden client-side (lokaal op uw eigen computer) uitgevoerd en zorgen ervoor dat de datasets voldoen aan het vastgelegde schema en de gespecificeerde regels voordat ze worden geüpload naar ons platform.
Kan ik machine-learning modellen trainen in Roseman Labs?
Ja, dit is mogelijk. We ondersteunen verschillende soorten machine-learning functies, waaronder binomial logistic regression, multinomial logistic regression, ordinal logistic regression, linear regression en k-nearest-neighbor. Ons platform waarborgt dat de modellen op een veilige manier worden getraind op de gevoelige data. Hierbij bieden we uitgebreide documentatie en tutorials om u hierbij te helpen.
Welke browsers en schermtypen ondersteunt Roseman Labs?
Op dit moment is Roseman Labs geoptimaliseerd voor desktopgebruik. Ons platform is compitabel met alle gangbare browsers, waaronder de meest recente versies van Safari, Chrome, Brave, Edge en Firefox.
Hoe kan ik data-exploratie doen met Roseman Labs?
Aangezien directe toegang tot de gevoelige data beperkt is, kun je de data verkennen door eerst met dummy data te werken die de structuur van de echte dataset nabootst, inclusief dezelfde datatypes en kolommen. Hoewel je met deze aanpak niet direct echte distributies kunt analyseren of de volledigheid van gegevens kunt beoordelen, kun je wel je scripts ontwikkelen en valideren in een veilige omgeving. Zodra je scripts grondig getest zijn, kunnen ze ter goedkeuring worden ingediend binnen het platform. Na goedkeuring kunnen de scripts worden gedraaid op de gevoelige gegevens.
Wie kan mijn analyse het beste goedkeuren?
Goedkeurders moeten worden geselecteerd op basis van hun vaardigheid in het lezen van Python-code, omdat ze analyses goedkeuren op basis van de beschrijving die de analist geeft en het ingediende Python-script. Daarnaast moeten ze betrouwbaar zijn en kennis hebben van de beoogde analyseresultaten, zoals beschreven in de samenwerkingsovereenkomst.
Hoe analyseer ik de data?
We hebben een Python-package genaamd crandas, dat de functionaliteiten van pandas en scikit-learn combineert. Hierdoor kun je eenvoudig gegevens analyseren met behulp van multi-party computation. Ons team is beschikbaar om je te helpen bij het schrijven en implementeren van je analyse.
Wat is het verschil tussen het analyseren van anonieme en versleutelde data?
Bij anonieme gegevens wordt de informatie meestal ontdaan van identificatoren (naam, adres..), maar heridentificatie is vaak nog steeds mogelijk. Dat geldt al helemaal als je geavanceerde technieken gebruikt, of in gevallen waarin gegevens niet voldoende geaggregeerd zijn. In Roseman Labs daarentegen is de data standaard niet anoniem, maar versleuteld (door MPC). Dit biedt een veel sterkere vorm van bescherming vergeleken met traditionele anonimisering. Met versleutelde gegevens in MPC kunt u gegevens veilig koppelen aan verschillende datasets, een mogelijkheid die meestal niet mogelijk is met volledig anonieme gegevens.
Hoewel ons goedkeuringsproces voor scripts robuust is en ontworpen om statistische onthulling te voorkomen, hangt het bovendien van de manier waarop de analist aggregatiedrempels (thresholds) toepast en de controles door de goedkeurder af of de output echt anoniem is. Om dit proces te ondersteunen, bieden we een Python-handleiding voor goedkeurders om mogelijke risico's op openbaarmaking in de analysescripts te helpen identificeren.
Waarom moeten goedkeurders soms updates goedkeuren?
Het Roseman Labs platform is verbonden met een cryptografische engine die taken uitvoert op versleutelde gegevens. De engine wordt regelmatig verbeterd om de efficiëntie te verbeteren of nieuwe functionaliteit toe te voegen. Deze updates veranderen iets aan de rechten die het platform heeft, en moeten daarom worden geautoriseerd door goedkeurders door middel van hun privésleutel.