Current position

Researcher - Università degli Studi di Bergamo
Topic: Information technology for the protection of data

Education

Software Engineering - Università degli Studi di Bergamo
PhD program in Engineering and Applied Sciences
Sep 1, 2019 - Oct 1, 2021

Software Engineering - Università degli Studi di Bergamo
Master of Science (MSc)
Sep 1, 2016 - Jul 17, 2018
GPA: 4.0/4.0 - Graduated summa cum laude

Software Engineering - Università degli Studi di Bergamo
Bachelor of Science (BSc)
Sep 1, 2013 - Jul 19, 2016

Awards

Univerity of Bergamo Alumni Association
Dept. of Management, Information and Production Engineering
LUBERG - New graduate of the year
Nov 19, 2019
LUBERG new graduate of the year award rewards talent, determination and commitment of graduates who stand out for a particularly brilliant academic record, the results achieved in the degree course, the originality and the scientific rigor of the thesis.

Work Experience

Autonomous collaborations

  • Partner: UniBg
    Extension of a prototype for the management of a language for security policies in a Digital Data Market
    May 3, 2021 - Sep 13, 2021

  • Partner: UniBg
    Development of a prototype for the management of a security policy language in a Digital Data Market
    Jul 20, 2020 - Nov 20, 2020

  • Partner: UniBg
    Development of a prototype for the management of data in a Digital Data Market
    Jul 4, 2019 - Nov 4, 2019

Teaching experience

Teaching assistant, courses at Università degli Studi di Bergamo

  • Introduction to programming in Python
    Year 2018, 2020
    Topics: Basic types, control-flow statements, functions, lists

  • Data Bases I
    Year 2019, 2020, 2021
    Topics: Structured Query Language, Conceptual and Logical database modeling

  • Data Bases II
    Year: 2019, 2020, 2021
    Topics: Concurrency, scheduling, distributed databases, XQUERY

  • Computer Security
    Year: 2021
    Topics: Access Control, DAC, MAC, Capabilities (Linux), Isolation of 3rd-party apps in Android

Other experiences

Programming

  • AlgoExpert - Completed 100 problems in Python (certificate)

Coding competitions

  • Google hash code 2019 Finals - Team: Unibg Seclab, 38th place

Thesis projects

  • Supervised 30+ thesis students - Topics

Software Contributions

  • SEApp: Bringing Mandatory Access Control to Android Apps [link]
    A modification to AOSP to extend the mandatory access control layer to Android apps. SEApp leverages SELinux to restrict access to the internal storage, restrict access to services, and isolate vulnerability prone components. This is achieved executing components on dedicated processes. A dedicated app policy module (written in CIL) regulates the permissions associated to each process. Changes to AOSP are implemented in both Java and C++.

  • ITYT: Practical Time-Locked Secrets using Smart Contracts [link]
    A framework to deploy time-locks using the blockchain. It leverages multi-party computation to split a secret among many parties, each obtaining a share. The parties need to cooperate to recover the secret following a pre-defined protocol. The protocol is programmed using a smart contract. The smart contract is developed in Solidity, while the multi-party computation protocol is developed in Java using the FRESCO programming framework.

  • Spark-based Mondrian [link]
    A Dockerized Apache Spark-based version of Mondrian, a sanitization algorithm to achieve k-anonimity. It is executed on a Spark cluster with a varying number of executors. Docker containers are used to scale the number of executors. The anonymization app is an Apache Spark application implemented in Python.

  • dot-emacs [link]
    A minimal version of my .emacs files useful to anybody that wants to test Emacs with EXWM as its main driver. To use it, you only have to install Emacs, use-package and xorg. The repo collects mostly Elisp code.

  • MOSAICrOWN Policy Engine [link]
    The policy engine is the tool responsible for parsing the MOSAICrOWN policy and checking whether a subject request is permitted or denied. Policies are written in ODRL, while the tool is implemented in Python.

Skills

Software/Programming Languages that I use regularly:

  • Ubuntu, Emacs, git, Python, LaTeX, Make

Policy/Programming Languages and tools that I’ve used occasionally:

  • M4, TE, CIL, Go, Java, C, C++, SPARQL, Bazel, Docker

Personal interest areas (software related):

  • Understanding how Linux (or any other derived OS) works, applied cryptography

Languages:

  • Italian (native), English

Interests

Traveling, reading books and manga ( ⚆ _ ⚆ ), technology

my resume