zyliutw / HIBP-IPFE

The code implementation of Hierarchical Identity-based Puncturable Inner-product Functional Encryption

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HIBP-IPFE

This project provides PoC implementations to evaluate the performance of the following schemes:

  1. SDH+21 - Information Science - Hierarchical identity-based inner product functional encryption

The code implemention of Hierarchical identity-based puncturable inner product functional encryption

For the bilinear-pairing schemes (SDH+21 and ours), we implement them by using PBC library with Type-A pairing (160, 512) for 80-bit security.

Required library

Perform code

  1. For Song et al. scheme (SDH+21):

    python3 HIB-IPFE.py
    
  2. For our HIBP-IPFE scheme:

    python3 HIBP-IPFE.py
    

To execute the time cost of scheme for 500 times: we add cal_time() in each algorithm, you can perform which operations or algorithm for simple test.

Test performance

To generate the performance for each algorithm, we provide the result code in the below folder.

## For key generation algorithm
python3 ./Test performance/keygen.py

## For encryption algorithm
python3 ./Test performance/enc.py

## For decryption algorithm
python3  ./Test performance/dec.py

## For key delegation algorithm
python3  ./Test performance/keydel.py

## For key puncture algorithm
python3  ./Test performance/keypun.py

Results

Key Generation Encryption Decryption
keygen enc dec
Key Delegation Key Puncture
keydel keypun

About

The code implementation of Hierarchical Identity-based Puncturable Inner-product Functional Encryption

License:MIT License


Languages

Language:Python 100.0%