Software

The following software tools have been created as results of our research with the goal to protect the privacy of critical data. The tools can be used as stand-alone solutions but also be embedded as library to existing projects.

Please refer to the referenced publications for background information about the underlying techniques and see the available source code and its documentation for implementation and deployment information.


MobilePSI

Title: Private set intersection for unequal set sizes with mobile applications
Authors: Ágnes Kiss, Jian Liu, Thomas Schneider, N. Asokan, and Benny Pinkas
Published: In Proceedings on Privacy Enhancing Technologies (PoPETs), 2017(4) (undefinedDownload)
Description: We transformed four existing PSI protocols into the so-called precomputation form such that in the setup phase the communication is linear only in the size of the larger input set, while in the online phase the communication is linear in the size of the smaller input set. The implementation contains all four protocols and can be used to run experiments between two PCs and between a PC and a smartphone to create a systematic comparison of their performance.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++/Java
Software Repository: https://github.com/encryptogroup/MobilePSI


OnionPIR

Title: OnionPIR: Effective protection of sensitive metadata in online communication networks 
Authors: Daniel Demmler, Marco Holz, and Thomas Schneider
Published: In 15th International Conference on Applied Cryptography and Network Security (ACNS'17) (undefinedDownload)
Description: We proposed and implemented OnionPIR, an anonymous messaging service as an example application for PIR combined with onion routing that prevents the leakage of communication meta-data. The evaluation of this prototype shows that OnionPIR is usable in practice.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/onionPIR


Universal Circuit (UC) Compiler

Title: Implementation of Valiant's Universal Circuit Construction Optimized for Private Function Evaluation
Authors: Ágnes Kiss and Thomas Schneider
Published: In 35th Advances in Cryptology (EUROCRYPT'16) (undefinedDownload)
Description: Our Universal Circuit Compiler implements the most efficient UC construction, originally proposed by Leslie G. Valiant in STOC'76. It accepts any Boolean circuit as input in SHDL format, provided that the gates have at most two incoming edges, and outputs the topology of the UC along with its programming bits corresponding to the circuit.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/UC


ABY

Title: ABY - A Framework for Efficient Mixed-protocol Secure Two-party Computation
Authors: Daniel Demmler, Thomas Schneider, Michael Zohner
Published: In 21st Network and Distributed System Security Symposium (NDSS'15) (undefinedDownload)
Description: ABY is a framework for implementing secure two-party computation protocols in three different domains that allows to freely and efficiently convert between them. ABY enables the developer to abstract from smaller protocol building blocks in order to realize complex applications.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/ABY


Private Set Intersection (PSI)

Title: PSI
Authors: Benny Pinkas, Thomas Schneider, Michael Zohner
Published: In 23rd USENIX Security Symposium (USENIX'14) (undefinedDownload) and 24th USENIX Security Symposioum (USENIX'15) (undefinedDownload)
Description:  Many actions in the digital world require the user to reveal his complete data. However, often the user does not want all of his data to be disclosed to a third party. For example, when using mobile messaging apps, the app requires access to the user's address book in order to identify the contacts that also use this app. This tool implements Private Set Intersection (PSI) protocols, a cryptographic technique, which allows a secure identification of common contacts, without disclosing any other data. The implemented PSI protocols thereby enable a user-controlled and privacy-preserving comparison of data.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/PSI


RAID-PIR

Title: RAID-PIR - Practical multi-server PIR
Authors: Daniel Demmler, Amir Herzberg, and Thomas Schneider
Published: In 6th ACM Cloud Computing Security Workshop (CCSW'14) (undefinedDownload)
Description: RAID-PIR is an efficient and simple multi-server PIR scheme, which has similar approach to RAID (Redundant Arrays of Inexpensive Disks) systems. Each server stores only a part of the database, its computational complexity depends only on this part, and multiple blocks can be queried efficiently in parallel. RAID-PIR improves efficiency over known PIR protocols, using only very efficient cryptographic primitives (pseudo-random generator).
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/Python
Software Repository: https://github.com/encryptogroup/RAID-PIR


GSHADE

Title: Faster Privacy-Preserving Distance Computation and Biometric Identification
Authors: Julien Bringer, Herve Chabanne, Melanie Favre, Alain Patey, Thomas Schneider, Michael Zohner
Published: In 2nd ACM Workshop on Information Hiding and Multimedia Security (IHMMSEC'14) (undefinedDownload)
Description: GSHADE is a tool for privacy-preserving distance computation which can be used for privacy-preserving biometric identification. GSHADE supports the following distance metrics: Hamming distance, normalized Hamming distance, Euclidean distance, and Scalar product. 
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/GSHADE


Faster Oblivious Transfer (OT) Extensions

Authors: Gilad Asharov, Yehuda Lindell, Thomas Schneider, and Michael Zohner
Published: In 20th ACM Conference on Computer and Communications Security (CCS'13) (undefinedDownload)
Description: This tool implements an OT extension protocol that has less communication and computation complexity than the original OT extension protocol by Ishai et al. (CRYPTO'03) and thereby achieves a runtime improvement of at least factor 3 over existing OT extension implementations. It supports highly parallel architectures by running in a block-wise and multi-threaded fashion. Moreover, it implements the correlated and random OT functionality, which allows several secure computation protocols to further decrease the amount of data that has to be sent over the network. The tool can be applied in a wide range of deployment scenarios by allowing the designer to choose between different levels of security as well as underlying cryptographic assumptions.
This tool can be used for the development of privacy preservingapplications as well as a tool to protect information in applications.
Target Group: Developers
Software Development Phase: Implementation
Application Environment: Secure Computation Protocols
Programming Language: C/C++
Software Repository: https://github.com/encryptogroup/OTExtension


Memory Efficient Secure Function Evaluation (me-sfe)

Authors: Wilko Henecka, Thomas Schneider
Published: In: 8th ACM Symposium on Information, Computer and Communications Security (ASIACCS'13) (undefinedDownload)
Description: The tool is an improved implementation of Yao’s garbled circuit protocol in the semi-honest adversaries setting which is up to 10 times faster than previous implementations. Its improvements include

  • the first multi-threaded implementation of the base oblivious transfers resulting in a speedup of a factor of two
  • techniques for minimizing the memory footprint during oblivious transfer extensions and processing of circuits
  • compilation of sub-circuits into files, and
  • caching of circuit descriptions and network packets.

This tool can be used for the development of privacy preserving applications as well as a tool to protect information in applications.

Target Group: Developers
Software Development Phase: Implementation
Application Environment: Compiler for Memory-Efficient Two-Party Secure Function Evaluation
Programming Language: Java
Software Repository: https://github.com/encryptogroup/me-sfe

A A A | Drucken Print | Impressum Impressum | Sitemap Sitemap | Suche Search | Kontakt Contact | Webseitenanalyse: Mehr Informationen
zum Seitenanfangzum Seitenanfang