Bitcoin Core team’s website has announced the first successful zero-knowledge contingent payment. Unveiled by Gregory Maxwell, the protocol ZKCP was first proposed in 2011 on Bitcoin Wiki. The ZKCP transaction platform enables buyers and sellers to purchase data in a trustless way.
Core Introduces Zero-Knowledge System ZKCP
The Core developer explains if one accepts the existence of the zero-knowledge system, “the rest of the ZKCP protocol is quite simple.” Buyers create a program that acts as the arbitrator of input the buyer wants to purchase.
“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,” Maxwell explains. “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.” He adds:
Using a ZKCP avoids the significant transactional costs involved in a sale which can otherwise easily go wrong.
The platform Maxwell says can only verify the data but not produce it. The buyer then sends the “trusted setup for the proof system” to the seller who, in turn, picks a “random encryption key and encrypts the information the buyer wishes to buy.” The ZKCP protocol enables the seller to prove the composite statement. Maxwell continues:
The buyer’s program can be arbitrarily long and complex without adding any additional burden to Bitcoin’s blockchain–the only impact would be the increased time required for setup and proving, which all happens external to Bitcoin. No one outside of the buyer or seller learns anything about the buyer’s program (that is, they do not learn the nature of the information being sold).
Maxwell claims the system is more scalable and private than implementing smart contracts within the Bitcoin blockchain. However, the developer says there’s a few limitations such as users cannot make a broadcast offer without prior communication. He also says the ZKCP system is fast but not super fast.
“For example, in our demo the ZKCP system proves 5 executions of SHA256 and the Sudoku constraints, and takes about 20 seconds to execute on a laptop,” he says.
As well as some limitations, the developer also says there are alternatives such as Peter Todd’s “paypub” protocol created in 2014. Paypub does not deal with the complexity of zero-knowledge according to Maxwell and he believes trustless applications like ZKCP will have value in the future.
Zero-Knowledge is a popular subject in the eyes of privacy advocates and has been researched for quite some time. As Bitcoin and blockchain technology continue to mature, expect these types of potential solutions regarding privacy, securing, speed etc. to also develop in tandem. Bitcoin.com will keep our readers up to date with regards to the ZKCP protocol.
What do you think about Gregory Maxwell’s ZKCP protocol? Let us know in the comments below.
Images courtesy of Shutterstock, Github, and Pixbay