Search
Close this search box.
Search
Close this search box.

Exploring How Penumbra Accelerates ZK Proving in Browsers

Exploring How Penumbra Accelerates ZK Proving in Browsers

Discover how Penumbra revolutionizes zero-knowledge proving in web browsers, enhancing performance and user experience for privacy-centric blockchains. Learn about their innovative approach and technical advancements.

Learn more about what Penumbra is?

Penumbra’s Breakthrough in Browser-Based ZK Proving

Privacy-focused blockchains rely on zero-knowledge (ZK) proofs to maintain transaction confidentiality. However, generating these proofs within web browsers has traditionally been slow and resource-intensive. Penumbra, a pioneer in privacy-centric blockchain technology, has tackled this challenge head-on. This article explores how Penumbra has revolutionized ZK proving, making it efficient enough to run seamlessly in web browsers.

The Challenge of Client-Side ZK Proving

Shielded blockchains prioritize user privacy by moving state and execution off-chain, generating proofs of execution locally before submitting them to the chain. This client-side approach mitigates risks of de-anonymization and ensures data privacy. However, traditional methods of ZK proving within web browsers often lead to performance issues, impacting user experience.

Penumbra’s Innovative Solution

In recent months, Penumbra Labs has focused on optimizing its web wallet extension to enhance client-side ZK proving performance. By enabling a higher degree of transaction-level parallelism, Penumbra has significantly improved the efficiency of ZK proving in modern web browsers.

Enhancing Web Performance

Penumbra’s Rust-based prover code is compiled to WebAssembly, which typically results in performance slowdowns compared to native Rust implementations. To address this, Penumbra leverages parallelization techniques and distributes the workload across web worker threads, achieving a threefold improvement in transaction build times.

Technical Design Considerations

Penumbra’s shielded chain architecture tracks state in individual fragments, maintaining privacy by using cryptographic commitments instead of user state. The View Service manages client state, providing users with private views into their relevant on-chain data. Penumbra employs a common interface for the View Service, facilitating seamless integration across different software components.

Parallelizing Transactions with Web Workers

Transactions are modeled using TransactionPlans, which provide a complete description of proposed transactions. Penumbra restructured its transaction-building process to enable parallel processing of individual transaction actions, resulting in significant performance gains. Using the Offscreen API, Penumbra’s web extension effectively utilizes nested web workers for multi-threaded processing.

Optimistic Proving and Groth16 Proving Keys

Penumbra aims to reduce client-side ZK proving time below the time required for user transaction review. By designing the authentication mechanism to allow concurrent proving and signing, Penumbra enhances user experience. Additionally, Penumbra optimized Groth16 proving keys loading times, reducing key loading times by 95%.

Conclusion

Penumbra’s innovative approach to ZK proving in web browsers represents a significant milestone in privacy-centric blockchain technology. By prioritizing performance and user experience, Penumbra is leading the way in making privacy-preserving transactions accessible and efficient for all users. As Penumbra continues to refine its technology, the future of ZK proving looks brighter than ever.

About OriginStake

Originstake is your professional and trusted validator that assists you in your staking activities. We provide full support services, a reward management dashboard, rewards sharing, and much more!

With Originstake, staking is safe, profitable, and extremely cost-effective!

Share the Post:

Subscribe for our insight