Yiannis Markopoulus, Forthnet, Leader WP6
In the first version of the Safe-DEED demonstrator we introduce a web Graphical User Interface (GUI), designed to provide tools for dataset linkage without running the risk of data leakage.
The GUI accommodates three main components:
- Data Valuation Component (DVC),
- De-Anonymization Risk Analysis (RSA) and
- Private Set Intersection (PSI).
Each component is bestowed an interactive web page, capable of data ingestion, parameter tuning and evaluation as well as access to the generated results, in the form of downloadable files or supplementary web pages. Below we briefly summarize the basic structure of our implementation, and provide notations and preliminaries of the setup of the GUI. Furthermore, we describe in depth the web page of each component and elaborate on their functionalities.
Setup
The architecture considered in this work is built upon HyperText Markup Language (HTML) for managing the web pages as well as the general interface and PHP Hypertext Preprocessor (PHP) for implementing various functionalities, such file uploading and incorporating the aforementioned tools. For the purpose of providing a more appealing and user-friendly final product, Cascading Style Sheets (CSS) was also used. At the moment, the web GUI can be accessed only locally. It is powered by Apache Server, an open source extensible server, which provides HTTP services and supports a variety of features, such as authentication schemes.
HTML functionality
HTML was used as the foundation for building our web GUI. More specifically, we used HTML to semantically describe the structure of each web page, such as the number of the required buttons, and the placement of forms that function as means to get user input. The Apache Server sends those HTML documents to a browser, where they are rendered into proper multimedia web pages.
PHP functionality
PHP was used as a medium that handles POST and GET requests, and was thus embedded in HTML code. It is responsible for file uploads and downloads, as well as handling input arguments, and firing up the available tools, upon user request. Apache Server has a built in PHP interpreter and outputs the results of the executed PHP code in the form of downloadable files or generated HTML code.
CSS functionality
CSS describes the presentation of our HTML documents, such as the background color of headers and footers, the position and size of images, and the color and font of text. In order to keep the style of the web pages consistent, we specified the relevant CSS in a separate file which is shared among HTML documents.
Next, we describe the contents of each page of the GUI and present indicative screenshots of our framework.
Safe-Deed Demonstration page
This page serves as an initial point to our web GUI. It presents the available tools and provides a small description for each of them. It contains three buttons, one for each tool, that redirect the user to the corresponding page. Each button is located below the description of its respective tool. The structure of this page can be seen in the images below.
DVC page
This page contains the interface of the DVC tool. The user has to upload two files, the dataset file, which can be a .csv or .xlsx file, and a context .json file. By clicking on the “Run” button, the user calls a PHP script that executes the corresponding code. DVC generates two results, a .txt file that can be downloaded through a popup window, and an HTML file that the user can access by clicking the “Analytics” button. A “Home” button is also pre
sented, that redirects the user to the starting page. A more detailed illustration of the page is presented on the image below.
RSA page
This page presents the interface of the RSA tool. As illustrated from the image below, RSA needs a dataset file and a list of arguments as the input. The .csv file has to be uploaded, just like the DVC case, and the arguments must be put in their corresponding text fields. Above each field a couple of words exist, explaining what each argument is. The presence of an asterisk ‘*’ denotes a mandatory argument. Since RSA is split into two categories, the user has to choose the category of their choice with the help of a radio button. Like the previous tool, the “Run” button executes the corresponding code and produces a .txt file that can be downloaded via a popup window. The “Home” button is also present, with the same functionality as before.
PSI page
The final page demonstrated the interface of the PSI tool. Like the two previous cases the user has to upload a dataset file. They also have to choose a partner to connect to, through a select list. By clicking on the “Run” button, the PSI code is executed which creates a client that sends encrypted data to a server and generates a .txt file which can be downloaded through a popup window. In the current setup this server-client model is implemented only locally, with the server being the PSI run from a terminal with a different dataset and a server argument. The “Home” button is also presented. The web page is depicted in the image below.
First Safe-DEED demonstrator trials
Initial Safe-DEED trials, aim at demonstrating that a wide set of datasets could be introduced in the first version of the project product feeding the three different functionalities presented above.
Forthnet anonymised CRM data were used while trials were executed in the company premises by Forthnet and LSTECH engineers.
A sample of the data used follows:
Next steps
Safe-DEED aims at deploying a fully functional demonstrator in Q2 2020.
Please follow us in order to see how you could participate in the evaluation using your datasets!