This is something I talked about all the way back on March 3, 2019:
https://peakd.com/steemworld/@edicted/encrypted-memos-are-unreadable
For starters, where are the encrypted chat rooms? Why are we only sending encrypted messages 1 on 1 through the payment channels? Seems like it would be pretty easy to encrypt text and send it out as a custom JSON operation. This would make them not only free, but also costs 4 times less resource credits than a fund transfer.
And back then I was simply assuming that this would all by on the Steem/Hive blockchain. It absolutely doesn't have to be. Once RCs start running out we are going to learn VERY quickly what does and does not belong directly on chain. Priorities will be set. Hierarchies will be made.
update for beem: encrypt / decrypt files with your memo key
@holger80 even figured out a way to encrypt and decrypt entire binary files using the memo key. Pretty clutch stuff if you ask me. And it's all done in Python, which is a great language for onboarding.
Never before has there been so much bullish news for Hive out there yet the price still sits near all time lows. People are being de-platformed left and right. Everyone is calling for crypto social media and Hive somehow gets ignored every damn time. It's truly crazy.
We used to think our use-case was tokens & inflation control, but in the current climate we can appeal to many other communities in the currency of censorship resistance. @taskmaster4450 has been speaking to this lately.
Essentially what we thought was our primary selling point (tokenized communities) can now just be an added bonus on top of all our other features.
Oh, dude: You're a little Bitch...
This is what the legacy economy and institutions think of retail: as the peons that channel value into them. Well, retail is clearly annoyed and gaining some self-awareness these days. If only they had more tools to do what they need to do.
So imagine a Hive onboarding system that allows users to log in and create an account using the Reddit API username/password credentials. Essentially Lite Hive accounts like what LEO is doing with Metamask, Twitter, Facebook, and whatever else. These people aren't going to want to mess around with keys and other stuff while starting out.
So a Reddit users logs into this mystery server, and what tools do they have at their disposal? The ability to set up encrypted chatrooms that can't be monitored by anyone except the users that have been invited. How were they invited? By being given the private key to read the encrypted messages.
How is this private key delivered?
Again, using the memo keys associated with those accounts.
From a user experience (UX) perspective this needs to be seamless without having to actually deal with any of the keys unless the veil gets pulled back on purpose by the end-user.
A user from Reddit would need to be able to log in to Hive using nothing but their Reddit credentials. That user should then be able to invite other accounts from Reddit to an encrypted chatroom. In the background, encryption and memo keys would be used, but the Reddit user does not need so see that on the simplified version of the frontend.
Considering Hive as an abundance of RCs to go around, to the point of their value rounding down to zero, all this could be done on-chain to start, but it doesn't need to stay on chain. Again, the server that facilitates all this could simply store the information locally, as much of the chatter of Wallstreetbets is time-sensitive and doesn't really need to be stored permanently on the blockchain.
There's also the option of doing this all in a peer-to-peer manner. Rather than connecting to a centralized server users connect with each other (like torrenting) to get the job done. This is likely more complicated as possibly less secure (ask yourself how secure your local machine is compared to an AWS server) but it's worth revisiting another time.
Side-note on master keys.
Just a reminder that master keys do not exist on the Hive blockchain. This is an offline tool that combines a username and a password to create all 4 keys (Owner, Active, Posting, Memo).
We can use any combination for the master key and it will pump out keys for us. Our master password could be "password" and the username could be @fakename59277. In order to hack the keys created, one would have to figure out not only the master password of "password", but also the username @fakename59277. If that user name does not yet exist on Hive, the chance of the keys being breached is pretty low.
Back to the UX of encrypted chat, A Reddit user logs in and invites other users to engage in the chatroom. The Reddit user picks a password for that chatroom; anything they desire. On the backend the master key code would be used to generate the four keys using this password and the Reddit username by default.
Theoretically, there is nothing special about the memo key, and any one of the four keys generated could be used to encrypt the chatroom. This is all hidden and the end-user never sees it: they only choose a password and perhaps the name of a channel.
Why doesn't this exist?
Because devs on Hive are thirsty AF. The devs here are poor and looking for income. They do not live in abundance (yet). Once the abundance of this network kicks in, there will be a lot more open-source devs who are willing to do all this stuff for free.
Couldn't we monetize it?
Yep, just airdrop the community in question with "free money" and see what happens. The dev team could airdrop themselves as well and/or premine. But be warned, the greedier a dev team is with the distribution the easier it is for someone else to come along and undercut their entire operation. This is the race to the bottom.
Locked Airdrops Are The Future
The way I envision this going down is that say someone on Hive is looking to target the WallStreetbets community on Reddit. You airdrop prominent members of that community, either by hand or with some algorithm that syncs into the Reddit API. This process is secret so no one can game it (looking at you "Project Blank").
So you have your list of users to be airdropped. The hardest part of giving away free money is convincing people it's not a scam. But once say between 100-1000 users have the airdrop and they are posting & upvoting on Hive without even knowing it, thats when you got em.
Conclusion
Imagine if WallStreetBets actually had their own 'stock' to pump. We could easily design that on Hive. They'd stop messing with the stock market and just pump their own community. That's what it's all about in the end. Investing in ourselves instead of greedy & corrupted corporations/institutions.
This is all a matter of patience and development. Creating systems like this becomes much easier once @blocktrades pumps out RC pool technology. This will allow users to interact on Hive WITHOUT being delegated any actual Hive coins. With RC pools, our bandwidth resource will be separated from our currency in a very valuable way that makes the network have less friction and harder to Sybil Attack.
In the end, I believe that every dapp on Hive will have a module for encrypted chat. It will just be one of those pieces of code that can plug & play on any website. Chat will be encrypted by memo key if given a password, or simply appear in plain-text on-chain should no password be given. It's only a matter of time before stuff like this just starts "developing itself". It's a good time to be in a mega-bubble year. The prospect for funding has never been higher.
Posted Using LeoFinance Beta
Return from Wallstreetbets: It's time for encrypted chat. to edicted's Web3 Blog