Authenticated modular maps in Haskell
Publication date
2018-09-27
Editors
Advisors
Supervisors
Document Type
Part of book
Metadata
Show full item recordCollections
License
taverne
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.
Keywords
Authenticated Datatypes, Haskell, Blockchain, Taverne
Citation
Cacciari Miraldo, V, Carr, H, Moir, M, Kogan, A & Herlihy, M 2018, Authenticated modular maps in Haskell. in Proceedings of the 3rd ACM SIGPLAN International Workshop on Type-Driven Development. Association for Computing Machinery, New York, pp. 1-13. https://doi.org/10.1145/3240719.3241790