Ik wil beter begrijpen hoe het product werkt

Dit artikel geeft de achtergrondinformatie die nodig is om het product te gebruiken, inclusief informatie over de modules waaruit de software bestaat en hoe die tot elkaar verhouden. Voor elke module wordt toegelicht hoe die gebruikt kan worden.

Softwaremodules

Het VDL bestaat uit drie verschillende modules: het versleutelingssysteem op de achtergrond, dat verantwoordelijk is voor de daadwerkelijke versleuteling en verwerking van de data, en twee gebruikersmodules die daarmee in contact staan. Hieronder worden ze alle drie in detail beschreven.

Figuur 1: Roseman Labs softwaremodules

MPC servers

Een berekening onder MPC is afhankelijk van een aantal MPC servers. Om een analyse onder MPC te kunnen voltooien, zullen gebruikers dan ook eerst hun data moeten versleutelen/"secret-sharen" en verdelen over die verschillende servers. De servers gaan tevens na of de goedkeuringen voor scripts correct zijn, en voeren dat script vervolgens uit op de data die ze opgeslagen hebben. 

De MPC servers kunnen door Roseman Labs worden beheerd, of ze worden ondergebracht bij een gebruiker. In het eerste geval is toegang tot de servers strikt gescheiden binnen de organisatie en wordt elke server bij een andere clouddienst geplaatst. Dit waarborgt de veiligheid van de versleutelde data.

Web portaal

Deze online interface draait in de browser. Het kan gebruikt worden om rollen en de bijbehorende gebruikersrechten toe te wijzen aan personen die bij de analyse betrokken zijn. Ook kunnen via het portaal databronnen worden geupload, en kunnen analyses worden aangevraagd en goedgekeurd danwel afgekeurd. Voor een exacte toelichting van alle rollen in het web portaal verwijzen we naar deze pagina in de knowledge base.

    Voor meer informatie over het portaal en hoe het gebruikt kan worden, verwijzen we je graag naar de web portaal documentatie in de knowledge base.

    Crandas

    Om een analysescript te schrijven en data of instructies uit te wisselen met de MPC servers, heeft Roseman Labs een Python package ontwikkeld genaamd crandas. crandas gebruikt grofweg dezelfde syntax als het populaire pandas, maar het daadwerkelijk uitvoeren van de operaties wordt uitbesteed aan de MPC servers zodat ze versleuteld worden uitgevoerd.

    Voor uitgebreidere informatie over crandas en hoe het te installeren en gebruiken, verwijzen we naar de crandas-documentatie.

    Figuur 2: datastroom