FENTEC libraries: Share only what you want to share

July 16, 2021 - Words by Miha Stopar, Lucija Korbar

July 16, 2021
Words by Miha Stopar, Lucija Korbar

Sharing is caring, but not everything is meant to be shared. Especially when it comes to sensitive data. Encryption is the answer to secure such data while sharing it with other authorized users over an insecure network or storage server. It is the method by which information is converted into a secret code that hides its true meaning. In other words: if you are not an authorized user, all you get is a bunch of useless data with no value. Encryption is nowadays used to protect data stored on computers and storage devices, as well as data transmitted over networks.

Recently, a lot of new efficient functional encryption schemes emerged. Functional encryption is advanced encryption, removing the limitations of traditional encryption by allowing the user to control the amount of information revealed to the recipient. And this is exactly the area that our FENTEC project focused on for 38 months. 10 partners pursued the same mission – to make the functional encryption paradigm ready for widespread use and to integrate it into ICT technologies as naturally as classical encryption. The goal was to develop efficient and application-oriented functional encryption systems. Did they succeed? Let’s take a look.


What exactly is functional encryption?

First, let’s get to the basics. Traditional encryption works like this – you either have encryption or you don’t, there is no middle ground. Functional encryption, on the other hand, adds flexibility over classical encryption, and serves as a powerful enabler for many emerging security technologies, such as controlled access, search and computation on encrypted data, etc.

It serves great in cases where the user is not concerned about the actual value of the encrypted data, but about getting the output when operation is performed on the data. Functional encryption allows the user to learn a specific function of the encrypted data but not to learn anything else about that data. This makes it a more secure way to protect information. Although functional encryption is still a young field, some important advances have been made in the last decade, also thanks to the FENTEC project, which played an important role in providing solutions ready to be used within the industry.


Discover FENTEC libraries and XLAB’s role

Functional encryption is a broad field with many schemes, serving different purposes. With the goal of reducing the inefficiency of schemes and making functional encryption usable in practice, i.e. in industrial use cases, FENTEC has provided a fully-fledged library where the user can choose between different schemes.

XLAB’s role within the project was to lead the implementation work package, and act as the main implementer of the selected set of existing and new functional encryption schemes. XLAB is thus credited with the development of two libraries, GoFE and CiFEr, both easy to install and run. Both have been tested using multiple static and dynamic security analyses and showed no issues or vulnerabilities.

Now you are probably wondering how to use these two libraries. For inspiration, take a look at three open source showcase applications:

In addition, GoFE and CIFEr libraries were used to develop several applications (e.g., Corona warn app, photo sharing app, etc.) at the FENTEC Hackathon, an event full of functional encryption challenges, use cases and applications.

Go ahead, visit GitHub and start exploring.


Join Alice and Bob on their functional encryption adventures!

Last, but definitely not least, to further promote functional encryption beyond the scope of the project, Alice and Bob website was launched. Alice and Bob are two long-time friends who weren’t really interested in cryptography. Until something strange happened – one day they met a guy who almost died laughing when he heard their names. That made Bob curious, and from then on everything was different. Want to know what happened? Join them on their exciting adventures, learn about cryptography, and discover functional encryption libraries developed by the FENTEC project. Learn how to use the GoFE and CiFEr API through various examples and find out which scheme to choose.

The final review of the FENTEC project took place on the 14 of April 2021. It marked the successful conclusion of the 3-year project, which left an important mark in the development process of the functional encryption paradigm.

Social media

Keep up with what we do on our social media.