authenticated data structures, generically
Python OCaml C Makefile
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
data updates Oct 21, 2016
examples updates Oct 21, 2016
.gitignore gitignore Dec 31, 2013
Makefile fixed spurious makefile omission Oct 21, 2016
README updated to use 4.01.0 release Feb 12, 2014
cmerkle.c initial commit Aug 23, 2013
compile.ml Added compiler code Jan 27, 2014
gprof2dot.py initial commit Aug 23, 2013
insdelprf_graphs.py initial commit Aug 23, 2013
mod.ml Added compiler code Jan 27, 2014
optcompile.ml Added compiler code Jan 27, 2014
ttmap.ml Added compiler code Jan 27, 2014

README

λ● (lambda-auth): an OCaml compiler extension for authenticated data structures.
(c) 2013 by Andrew Miller, Michael Hicks, Elaine Shi, Jonathan Katz.
Released under the GPL.
Some of the code is (c) 2009-2012 Jun Furuse (see https://bitbucket.org/camlspotter/compiler-libs-hack)

WARNING: This is an academic research prototype. Although the topic involves secure protocols, this software should be considered unfit for any such purpose.

Examples of authenticated data structure programs written in lambda-auth:
 - bintree.ml, skiplist.ml, redblack.ml, blockchain.ml

Requirements:
- The 4.01.0 release of OCaml head must be installed, and in particular must exist as the directory "../ocaml-4.01.0"
- Additionally, several packages are used (use the OPAM package manager): opam install batteries benchmark cryptokit sha

Build instructions:
- make          # builds the compiler
- make prover   # builds prover version of the examples
- ./driver_prv  # (runs the prover code)
- make verifier # builds the verifier version of the example
- ./driver_vrf  # (runs the verifier code)
- make ideal    # builds the unauthenticated version
- ./driver_idl  # runs the unauthenticated example

optional optimizations:
- STRATEGY=buf  make prover verifier
- STRATEGY=susp make prover verifier