Abstract
We present hamm, a Haskell library that enables programmers to easily configure authenticated map (key-value store) implementations. We use type level programming techniques to establish an extensible foundation, and provide an example base map and several example “add on” transformers supporting features such as caches, Bloom filters and paging structures. Another add-on enables a prover to provide—and a verifier to verify—a “summary” containing only a small subset of the map’s data, and a verifier to receive and verify additional data only if needed. Preliminary performance results demonstrate significant potential for authenticated maps configured using hamm to support our goal of enabling participants to join blockchain networks faster.
Original language | English |
---|---|
Title of host publication | Proceedings of the 3rd ACM SIGPLAN International Workshop on Type-Driven Development |
Place of Publication | New York |
Publisher | Association for Computing Machinery |
Pages | 1-13 |
ISBN (Print) | 978-1-4503-5825-5 |
DOIs | |
Publication status | Published - 27 Sept 2018 |
Keywords
- Authenticated Datatypes
- Haskell
- Blockchain