Interstellar, a cryptocurrency wallet and decentralized exchange powered by the Stellar network, has launched the pre-release version of our Bulletproofs implementation, an important building block for a range of privacy-preserving protocols, the company announced in a blog post on November 8, 2018.
Stable Interface for Creating and Verifying Range Proofs
Popular online wallet and cryptocurrency exchange Interstellar has announced the pre-release of their new Bulletproofs implementation, aiming to provide users with a better performance and more secure privacy-preserving protocols.
Announced back in April 2018, Interstellar’s implementation is written entirely in Rust, a powerful systems programming language made by Mozilla. Rust provides strong type-safety, prevents the accidental sharing of mutable data, and eliminates an entire class of memory-safety bugs which are endemic to C and C++.
According to Interstellar’s November 8, 2018, blog post, the new implementation is implemented in pure Rust using the Ristretto group, and provides an improved performance, pushing verification performance down to 1040 µs for a 64-bit range proof. The new features make the implementation twice as fast as the libsecp implementation without endomorphisms.
In comparison, the Monero implementation verification process is almost five times slower than the new Bulletproofs update. Bulletproofs are short non-interactive zero-knowledge proofs that require no trusted setup, designed to enable efficient confidential cryptocurrency transactions.
Bulletproofs Will Extend the Existing Proving System
Despite the notable updates in speed and efficiency, Bulletproofs’ current aggregated range proof protocols aren’t extensible to the constraint system case, where the implemented proofs are tied to both the aggregation size as well as the bitsize.
However, Interstellar was able to solve the problem of scalability, at least in part, by extending the proving system from range proofs to arbitrary user-defined statements.
The company said that they’ve been working on an API for building Bulletproof constraint systems directly, inspired by the Bellman API used in Zcash, which allows both the prover and verifier to programmatically define a constraint system and then create a proof or verification.
The Bulletproofs implementation was first announced by Chain, a company acquired by Stellar networks that subsequently became Interstellar, back in April 2014. According to the company’s Github repository, it seems that the implementation has greatly matured and that all of the planned generalizations and improvements were implemented successfully.
And while Chain has said that they had working implementations of the MPC protocol for proof aggregation and of batch verification ready, it’s still unknown whether they were merged into Bulletproofs codebase.