One of the most prominent Bitcoin Core maintainers, Gregory Maxwell, has completed the first successful Zero-Knowledge Contingent Payment (ZKCP) on the Bitcoin network.
The ZKCP protocol allows a buyer to purchase information from a seller using Bitcoin in a manner which is private, scalable, secure, and does not require trusting anyone. Information is only transmitted if and only if the payment is made. The buyer and seller do not need to trust each other or depend on arbitration by a third party.
Maxwell first proposed the ZKCP protocol in 2011 in an article on the Bitcoin Wiki as an example of the tremendous power of the “existing primitives in Bitcoin Script.”
Imagine a movie-style “briefcase swap” (one party with a briefcase full of cash, another containing secret documents), but without the potential scenario of one of the cases being filled with shredded newspaper and the resulting exciting chase scene.
According to the Core developers, most of the engineering behind the ZKCP implementation was completed by Sean Bowe, a member of the Zcash team, with support from Maxwell, fellow Bitcoin Core maintainer Pieter Wuille, and MIT’s Madars Virza. Maxwell and Wuille are also founders of sidechains technology venture, Blockstream.
Maxwell describes an example use case for the ZKCP protocol:
An example application would be the owners of a particular make of e-book reader cooperating to purchase the DRM master keys from a failing manufacturer, so that they could load their own documents on their readers after the vendor’s servers go offline. This type of sale is inherently irreversible, potentially crosses multiple jurisdictions, and involves parties whose financial stability is uncertain–meaning that both parties either take a great deal of risk or have to make difficult arrangement. Using a ZKCP avoids the significant transactional costs involved in a sale which can otherwise easily go wrong.
Maxwell tested the protocol remotely from California by purchasing a solution to a Sudoku puzzle for 0.10 bitcoin from Bowe as part of a demonstration performed live at Financial Cryptography 2016 in Barbados.