Inspiration

There’s a misconception out there concerning cryptocurrencies. For some reason, many people have come to believe that blockchain transactions are private and anonymous, but for most blockchains, nothing could be further from the truth. Rather than being anonymous, most (including some of the largest cryptos– Bitcoin, Ethereum, Terra) are simply pseudonymous. They are completely public and visible, and while an individual address isn’t linked to a name publicly, it is often easy enough to determine the owner of a particular wallet address.

The option to have anonymity, if one wished- is crucial, and lines up with the very ethos of blockchain technology.

What it does

Wash Protocol aims to provide this anonymity missing in the Terra blockchain. By utilizing the Secret Network, we are able to wrap the user's LUNA into sLUNA, which turns into a privacy blockchain. Whenever the user requests a withdrawal, the funds are sent to a new Secret address to be unwrapped and transferred to the desired wallet. By doing this, the trace between the depositing and withdrawing address has been severed.

How we built it

Our tech stack consisted of Rust for the smart contract, and JavaScript/React for the website. For the Rust code, we built off of the default scaffolding counter contract, and introduced all of our custom methods. Since we weren't able to get the Terrain app to work, we built our front end using Create-React-App, and then brought the two together on our own.

Challenges we ran into

Since there is not much IBC volume between Terra and Secret Network, there are no nodes that run the IBC relayers on the testnet, which are required to perform the inter-blockchain transfers. Due to this, we were unable to fully test the transferring and wrapping of the LUNA. Another challenge we faced was learning Rust, mainly the CosmWasm packages and integration with Terra. Since the documentation is not very robust, it was difficult to develop our project.

Accomplishments that we're proud of

We are proud of persevering through the 36 hours that was struggling, looking through Terra documentation, and making it out alive. We all came out knowing more about the Terra ecosystem, Rust, CosmWasm, etc. than we did going into this hackathon. Deploying a working, customized smart contract using Terra Station also feels very rewarding. We are also exploring a concept that we have never seen before in DeFi, and while that's hard, its also really rewarding.

What we learned

From Rust itself, to developing smart contracts for the Terra ecosystem, to some last minute TypeScript, our team has learned the basics of web3 development, and plan to keep learning to grow along with the industry. We also learned that some group situations don't always work out, and that you must be adaptable to situations that are thrown at you, especially when you only have a timeframe of 36 hours.

What's next for Wash Protocol

Our team plans to keep building Wash Protocol, hopefully raising funds in order to be able to run tests on the mainnet and fulfil our mission of providing privacy to Terra. We have plans to implement a community validator, which would eliminate fees on the user's end, allowing them to keep all of their funds in LUNA.

Built With

Share this project:

Updates