Oblivious Algebraic Data Types: POPL22 Artifact
Description
This artifact holds the Coq formalization of Oblivious Algebraic Data Types, a language for writing secure computation with recursive data types whose structures are protected. More specifically, it formalizes the two core calculi, λOADT and λOADT✚, from the POPL22 paper Oblivious Algebraic Data Types, and proves their soundness and obliviousness.
This artifact contains 3 files:
- oadt-pure-popl22.zip: λOADT formalization. It is a snapshot of tag pure-popl22 (commit b34546f).
- oadt-tape-popl22.zip: λOADT✚ formalization. It is a snapshot of tag tape-popl22 (commit 32d8fc4).
- oadt-popl22.ova: virtual machine image.
See https://ccyip.github.io/oadt/popl22 for detailed review instructions, build instructions and paper-to-artifact correspondence.
Quick links:
- Instructions: https://ccyip.github.io/oadt/popl22
- Main repository: https://github.com/ccyip/oadt
- pure branch for λOADT: https://github.com/ccyip/oadt/tree/pure
- tape branch for λOADT✚: https://github.com/ccyip/oadt/tree/tape
- generated CoqDoc documentation: https://ccyip.github.io/oadt/