Closed dvlasits closed 1 year ago
👋 @dvlasits Thanks for your application! We will do a pre-review and let you know if we have any immediate questions. In the mean time please refer to our review schedule here for a detailed timeline and response dates. Best, Will
Hi There!
Can you DM me? My twitter is @btc_albert
I'd like to have a quick chat with you about the potential of your product as well as how it will leverage and integrate with the Stacks blockchain.
Thanks,
Albert CEO of Stacks Web3 Startup Lab No-nonsense bootcamp for entrepreneurs: Go from ideation to investment ready startup.
Website: www.web3startuplab.io Apply to our program: https://www.f6s.com/web3-startup-lab/apply
Hi Albert,
It doesn't look like I can dm you on twitter. Could you try messaging me @DanielVlasits.
Regards, Daniel
Does it make sense to work together with #729?
Hello @dvlasits
Thank you for the application and for your patience with the grant review process. We did a thorough review of all of the applications (each application received an average of 6 reviews from members of the Grants Review Committee). However, after much consideration, we decided not to fund any of the Cohort 19 grant applications as we did not feel they aligned with critical priorities core to the development of the Stacks blockchain.
We invite you to please read this blog post we authored to help elaborate on the reasoning behind this decision and clarify the current mission of the Grants Program.
Thanks in advance, Will Stacks Foundation Grants Program Manager
APPLICANT
Type:                                                                        Direct Application
Email:                                                                    dvlasits@gmail.com
Discord:                                                    Redd#9525
Twitter:                                                        @DanielVlasits
Stacks Forum:          
GRANT BASICS
Grant Name:                                        Private Message
Total Budget:                              25,000
Total Duration:                 1,560
Grant Type:                                               Open Source Dev 1st time Grantees
Grant Track:                                          Cross-Chain & Off-Chain
Grant Goal:                                               Create New Technology
Grant Audience:             End Users (Consumer)
Specific Audience:         Anyone who wants to message in a fully decentralised and anonymised manner.
Grant Team:                                       dvlasits
Previous Grants:                     
Ecosystem Programs:     
GRANT MISSION, IMPACT, RISKS & REFERENCE
Grant Mission:         Project Description Our app allows for people to send messages to each other without revealing who they're talking with. We managed to provide full privacy, which is an ideal solution for users who want a general purpose messaging with full anonymity on the chain.
We facilitate it by setting up this protocol: If you want to send the message to someone, you have to know their public key. Then, you encrypt a message “I want to talk to you, talk to me at this IPNS address XXX”. Then, you wait for the receiver to decrypt your message, and once that’s done, you both move to the IPNS to continue your communication. One might wonder how that could possibly scale?- The network potentially has ~1 trillion edges. We resolved this by making everyone's public keys hash to a number between 1-1000. This way, the receiver of the messages has to attempt to decrypt only one of the 1000 arrays of messages that were sent, which cuts the time to identify a sender to a few seconds (and subsequent communication is fast, as it happens through IPFS).
Our users can use tornado.cash to also hide the topology of the graph from everyone else (without it, the only information compromised in the whole exchange is how many connections did they request).
How it's Made You start by logging in through Metamask. We then generate RSA keys and upload them onto our smart contract which function as our more general purpose public keys. We used solidity to create the smart contract and it is deployed using brownie. We have a javascript front-end that communicates with our python back-end using flask. The interaction with smart contracts is supported by brownie. When I want to communicate with an address I get their RSA public key and encrypt the message "CORRECT" alongside a link to an IPNS store with my initial message. To make sure it scales I must hash the address from 0-999 and I place the encrypted message onto that row in the smart contract. To allow for easy extension my message is stored in the form a serialised python object using pickle and stored as bytes. Whenever you want to receive you check your corresponding array in the smart contract and check to see anything decrypts with your RSA private key. In which case we store the IPNS link corresponding to that wallet. And can access that to see messages which the sender can update. IPNS allows us to have a mutable store. From then on you can communicate over IPFS and IPNS for free.
Grant Impact:               They will be able to track uptake of the messaging protocol by looking at the smart contract.
Grant Risks:                          We believe all problems have been addressed by the technical solution.
Support Link:                                     This is the link to ethglobal where we started this project and won 2 first place prizes. It also contains the GitHub Repo with the code.
GRANT ROADMAP & DELIVERABLES
MILESTONE 1:
Deliverable:                   A fully functioning MVP.
MILESTONE 2:
Deliverable:                   People capable of sending messages to anyone on an app/website.
FINAL DELIVERABLE
Deliverable:                   A fully working app/website where people can send messages