Money grows on (proof-)trees: the formal FA1.2 ledger standard
Murdoch Gabbay, Arvid Jakobsson, Kristina Sojakova

TL;DR
This paper formalizes the FA1.2 ledger standard for Tezos blockchain in Coq, verifying three compliant smart contracts to ensure correctness, resolve ambiguities, and provide a precise, mathematically verified specification.
Contribution
It provides the first formal Coq specification of the FA1.2 standard and verifies multiple implementations against it, enhancing reliability and clarity.
Findings
Errors in implementations were identified and corrected.
Ambiguities in the standard were clarified through formalization.
A rigorous, mathematically precise standard now exists for FA1.2.
Abstract
Once you have invented digital money, you may need a ledger to track who owns what -- and an interface to that ledger so that users of your money can transact. On the Tezos blockchain this implies: a smart contract (distributed program), storing in its state a ledger to map owner addresses to token quantities, and standardised entrypoints to transact on accounts. A bank does a similar job -- it maps account numbers to account quantities and permits users to transact -- but in return the bank demands trust, it incurs expense to maintain a centralised server and staff, it uses a proprietary interface ... and it may speculate using your money and/or display rent-seeking behaviour. A blockchain ledger is by design decentralised, inexpensive, open, and it won't just bet your tokens on risky derivatives (unless you ask). The FA1.2 standard is an open standard for ledger-keeping smart…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
