Project Name: Pneumatic Protocol
Project Track: Academy
Team Name: Pneumatic Team
Team Member(s): Ash Ahmed (@Ash), Jeremy Zhang (@jeremyzhang), Charles Ma (@cma)
Project Goal: Pneumatic Protocol is a smart contract based solution for groups to securely interact with other dApps. Through whitelisting users and allowing for one-time secure interactions on behalf of the group (rather than individuals), Pneumatic guarantees that group fund decisions are followed through on.
Project Info: Pneumatic Protocol Slides.pdf (1.2 MB)
Project Website: Site: [main] https://getlockbox.xyz/, [for hackathon] https://trustless-transfer.web.app/
Project Test Instructions: Go to https://trustless-transfer.web.app/! You can also play around with the contracts in Tron IDE, or run the site locally (repo). Note that Lockbox is the original name for the treasury management software we’re building - Pneumatic was building out whitelisting permissions on top of it for the hackathon.
Project Details: Pneumatic Protocol solves the problem of insecure group fund distribution. It is built off of a previous project, Lockbox, which focused on developing a core set of primitives for group fund management (membership changes, votes, etc.). We wanted to allow groups to interact with the broader web3 ecosystem securely.
Existing solutions for groups, like disorganized spreadsheets of Metamask wallet addresses, allow for user wallets to ultimately make transactions. While in some cases, this is unavoidable and secure (if a group wants to send funds to an individual, of course it should be done this way), many actions in web3 are “group to group” rather than “group to individual”; investing on a DEX, donating to a charity, buying NFTs, etc. would be done best if the group contract itself was interacting rather than users. This may seem like a negligible difference (if the group already approved this individual to spend funds on a certain cause, why shouldn’t we trust them), but it fundamentally does not ensure transparency; nothing ensures that the individual receiving funds spends it on what the group approved, since it is in their personal wallet.
Pneumatic Protocol allows for users to 1) be whitelisted and act on behalf of contract funds, with some spending restrictions, and 2) propose automatic, one-time external protocol interactions. Whitelisting enables flexibility while ensuring funds are being used for the correct protocol; anyone in a group can submit a proposal to provide whitelist access/remove whitelist access for a user in the group. When approved by the majority of the admin, this user now has updated whitelist permissions that allow them to interact with external protocols through Pneumatic Protocol. The one-time group interactions are the most rigid regarding fund transactions, where users must specify all details of what the interaction looks like with the external protocol.
For this hackathon, we decided to build out two Tron dApps to test out Pneumatic Protocol interactions, both of which emphasize good use-case areas for secure group fund transactions!
The first is called “GiveDirectly”, a proof-of-concept2 Tron dApp for charities based on the popular charity GiveDirectly (fights poverty globally). Functionality is simple: anyone can donate to the charity. We think that charitable giving is not only a great area to apply blockchain (to ensure transparency and instant fund transfer), but its a perfect example of why Pneumatic Protocol’s secure “group to dApp” interaction is necessary. Imagine that a group wants to donate to GiveDirectly by sending funds to a group member, and then telling them to donate. There’s nothing stopping that member from running off with funds, donating to a different charity, etc. Pneumatic whitelisting and group interactions ensures that whitelisted users (or GiveDirectly one-time proposals) interact with the GiveDirectly dApp on behalf of the group (funds go directly between the group and GiveDirectly, no other parties involved).
The second dApp we built is called “RiskyInvestment”, which you can think of as some dApp (casino, yield farm, etc.) that a group may want to invest in, but finds it a bit risky (our implementation has investments either be doubled or halved at the time of withdrawal, quite risky)! Similar to GiveDirectly, Pneumatic allows for users to deposit funds, but we also enable withdrawals on behalf of the group. All the benefits listed above apply here. The use case of a group wanting to be extra careful with how funds are used for risky investments is perfect for Pneumatic.
We integrated our smart contracts with a frontend built using React. To connect to our smart contracts, we made extensive use of TronWeb, which we found to be very easy to use due to its similarity to web3.js. Contracts were deployed on the Shasta test net for the hackathon.
We decided to name our project Pneumatic Protocol because we were inspired by the pneumatic tube system used by the United States Post Office in New York City in the early 1900s. Mail would be placed in these tubes and transferred securely and quickly to their destination (directly between post offices, no third party involved), much like how Pneumatic Protocol aims to securely and quickly transfer funds to where they need to go.
Project Milestones: Initially built in under 24 hours for the TRON Academy Hackathon at Harvard. Won 1st place! Currently working on developing more features, getting the website polished, and customer outreach. Hoping to integrate with top Tron dApps directly.
Please comment below, email email@example.com, or follow us on Twitter @getLockbox if you’re interested!