Skip to content

Latest commit

 

History

History
53 lines (37 loc) · 1.7 KB

README.md

File metadata and controls

53 lines (37 loc) · 1.7 KB

An Implementation of Function-Hiding Inner Product Encryption (FHIPE)

This is an implementation of the function-hiding inner product encryption scheme described here: (link to be posted)

This implementation is a research prototype built for micro-benchmarking purposes, and is not intended to be used in production-level code as it has not been carefully analyzed for potential security flaws.

Authors:

  • Kevin Lewi, Stanford University
  • Sam Kim, Stanford University
  • Avradip Mandal, Fujitsu Laboratories of America
  • Hart Montgomery, Fujitsu Laboratories of America
  • Arnab Roy, Fujitsu Laboratories of America
  • David J. Wu, Stanford University

Contact Kevin Lewi for questions about the code: [email protected]

Prerequisites

Make sure you have the following installed:

Installation

git clone --recursive https://github.com/kevinlewi/fhipe.git
cd fhipe
sudo make install (use `make install-mac` if running on MAC OS X)

Running a Test

python3 tests/test_ipe.py

Modules

This library ships with the following modules:

  • Inner Product Encryption: In fhipe/ipe.py, implements function-hiding inner product encryption
  • Two-input Functional Encryption. In fhipe/mife.py, implements secret-key small-domain two-input functional encryption for arbitrary functions

Submodules

We rely on the following two submodules:

  • FLINT for the C backend
  • Charm for the pairings implementation