Skip to content

dmwit/obfuscation

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Implementation of Cryptographic Program Obfuscation

This code presents several implementations of cryptographic program obfuscation, as listed in the following table:

Scheme Authors ePrint Reference
AGIS Ananth, Gupta, Ishai, Sahai 2014/222
SZ Sahai, Zhandry 2014/773
Z Zimmerman 2014/776

For some background on cryptographic program obfuscation, see https://eprint.iacr.org/2013/451.

A discussion of the AGIS implementation appears in the work:

"Implementing Cryptographic Program Obfuscation." Daniel Apon, Yan Huang, Jonathan Katz, Alex J. Malozemoff. Cryptology ePrint Archive 2014/779. https://eprint.iacr.org/2014/779.

All schemes use the graded encoding scheme of Coron et al. (CRYPTO, 2013. https://eprint.iacr.org/2013/183). The implementation is in a mix of Python and C, using Sage, GNU GMP and OpenMP. The code is under active development, and may not be stable! I will try to keep the master branch in a working state (most of the time), though.

Instructions for building and running the code are in code/README.md, and scripts for running experiments and processing the results are in the scripts/ directory. Full traces of all the experiments found in the above paper can be found in the scripts/results/ directory.

For any questions/comments, please e-mail amaloz at cs dot umd dot edu.

Challenges

In order to aid in the cryptanalysis of cryptographic program obfuscation, we plan to release a series of obfuscated point functions (that is, functions that output 0 on all inputs except one), with the goal of the attacker being to learn the hidden point. The following table lists the available/broken challenges.

Challenge Link Approach Date Broken Broken By
14-bit point function; 60-bit security parameter Unavailable (23.96 GB) AGIS 18 Oct 2014 Daniel J. Bernstein, Andreas Huelsing, Tanja Lange, Ruben Niederhagen

About

Implementation of cryptographic program obfuscation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 49.2%
  • C++ 43.0%
  • C 5.1%
  • Shell 2.7%