Inspiration

The inspiration for Horcrux came from the need for enhanced data privacy and security in blockchain applications. Leveraging the power of Shamir's Secret Sharing, we aimed to create a tool that allows users to securely split and store sensitive information across a blockchain network.

What it does

Horcrux uses Shamir's Secret Sharing algorithm to divide a secret into multiple shares, distributed across the Aleo blockchain. It ensures that the secret can only be reconstructed when a predefined number of shares (threshold) are combined, enhancing security and privacy.

How we built it

We built Horcrux using Aleo's platform, which provided the necessary tools for developing a zk application. The core secret sharing functionality is implemented in Leo, Aleo's programming language, ensuring cryptographic security and privacy. We use Webassembly to generate the proofs, React to build the UI, and Vercel to deploy the application.

Challenges we ran into

Developing on a relatively new platform like Aleo presented unique challenges: dealing with immutable arrays, lack of while loops, and constraints in generating random field elements. We navigated through Leo's limitations like the inability to access outer loop variables in inner loops and issues with the Leo linter for structs.

Accomplishments that we're proud of

We are proud of successfully implementing a complex cryptographic algorithm on a blockchain platform. Despite the challenges, we were able to create a functional, user-friendly application that leverages Aleo's zk tools for enhanced data privacy.

What we learned

This project deepened our understanding of zk tech, particularly Aleo's platform. We gained valuable insights into working with cryptographic primitives and overcame various programming constraints inherent to zk development.

What's next for Horcrux - Shamir Secret Sharing in Aleo

Moving forward, we plan to expand Horcrux's functionality, including adding more user-friendly features and improving its integration with Aleo's evolving ecosystem. We want to support more types of sharing schemes like packed secret sharing, additive secret sharing, etc.

Application link: https://horcrux-8djg7kiu0-saurabhchalke.vercel.app/ Github link: https://github.com/zkHubHQ/horcrux

Built With

Share this project:

Updates