Welcome to the Elastos Blog
Read it here first
Best Article Contest 2nd Prize Submission: Elastos, the Next Step in the Nostr Saga
What is Nostr?
Nostr is an open-source social media protocol alternative to Twitter. Instead of relying on central servers governed by a central company, Nostr uses a decentralized framework where users send messages directly to one another, facilitated by lightweight community-run nodes called relays. It does so mainly by using elements of both P2P networking and public key cryptography. There are clients, which are users using various implementations of the Nostr software to both send and receive messages, and then there are relays, which are nodes that receive, store, and propagate those messages to other clients.
Much like crypto wallets, users who want to begin using Nostr generate a public/private key pairing, with their public key being their main front-facing ID (at least at the protocol level), and their private key being like their password, which is used to sign messages posted to the Nostr network cryptographically. The relays take these messages at face value and then send them to clients/users looking for downstream messages from particular public keys. The receiving user’s client then takes these messages and cryptographically verifies the signature using the public key. If the signature checks out, the message is displayed to the user as an official message from that account. The message will only be displayed to the receiving user if the signature checks out. It’s as simple as that!
What is Elastos?
Elastos is a suite of Web3 technologies that can be leveraged to create Web3 apps. Elastos is not a social media platform/protocol but rather a swiss army knife of Web3 tools, and developers can decide whether they want to use one of those tools for their app, some of them, or all. These tools include the Ethereum EVM smart contract sidechain, DID (decentralized ID), Hive (decentralized storage), and Carrier (decentralized data transmission).
At the base layer of Elastos you have the mainchain, which is core to the security of all its sidechains. The mainchain is merge-mined with Bitcoin, capturing nearly 50% of its hash rate in parallel. Elastos has two sidechains, the Elastos EVM compatible sidechain (ESC), and the Elastos DID sidechain. The EVM sidechain can be used to deploy any app or smart contract that can be deployed to Ethereum, albeit faster and cheaper. The DID sidechain handles and stores DIDs and authenticates users via zero-knowledge proofs. Elastos DIDs are W3C and DIF compliant.
Then there is Hive, the Elastos IPFS-compatible decentralized storage solution. Data that would typically be stored in the cloud can instead be stored in a personal Hive vault owned by the user. The user can take things into their own hands and run their own Hive node or pay an external Hive vault service to store their data. But in lieu of that, a user can use their own device storage as a Hive vault. And, of course, this data is encrypted, and access to this data must be authenticated via DIDs. A user can migrate their Hive vault location at any time, and a user can also selectively permit access to parts of their Hive vault to other parties.
There is still one more piece to complete this Web3 tech stack, and that is Carrier. The greater Web3 movement may have yet to give this part much thought, but truly decentralized apps (DApps) in a truly decentralized web still need to transmit data in a secure and decentralized way. Carrier is the secure P2P communication and data transmission layer for Elastos. And speaking of layers, Carrier has two of them!
The first layer is an open and public DHT protocol based on Tox. The second layer consists of a network of supernodes running the full DHT protocol stack on the first layer. These nodes provide core dedicated services that compensate in areas where a simple public and permissionless DHT network is sorely lacking. Some of these services include a DHT proxy service which allows users and devices to use and interact with this DHT network without them having actually to partake in the DHT network itself. Layer 2 also provides a key/value store service to make key/value retrieval more efficient and redundant to counterbalance the availability problems that some DHT networks face. One more of these services is an IM service that allows instant messages between users natively within Carrier. Lastly, it should be mentioned that because Elastos is a blockchain ecosystem (with its native token ELA), it can leverage this to enable and provide financial incentives to node runners to support the ecosystem.
What Might Nostr on Elastos Look Like?
Having read all this, you may think, “Wow, Elastos sure sounds like a great tool to build a decentralized social media app!”. Well, that’s because it is! So let’s dive into the idea and imagine what Nostr on Elastos might look like.
First, the account creation process would be pretty similar to Nostr, as DIDs share the same public key cryptography roots. The main difference is that the DID you create won’t just be a public key for others to remember you as. Your DID will actually be an entry onto the DID sidechain. That means that certain identifiers or qualifications can be attached to that DID, making it more than “just another public key”. For example, if somebody who happens to be a doctor makes a tweet, people would be able to see that tweet was signed with a DID that holds a doctorate degree given from a major university. Of course, this requires either the university or a trusted credential verification/KYC firm in the space to add these credentials to your DID first, proving that the person indeed holds a doctorate.
As for the users’ connection to the rest of the network, users won’t have to specify which relay nodes to connect to on the network. Carrier layer 2 can do the heavy lifting on this. All user data could be stored and hosted from the user’s own personal Hive vaults. One thing worth noting is that the Elastos tech stack allows for pure decentralized apps and what I might call “hybrid” style apps. In this case, think of a version of Twitter where everyone’s data is sealed in their Hive vault and behind their DID. A user could use this app in a secure and decentralized way that protects their data, OR they could opt to give up access to their data to the company which runs that social media app in exchange for certain benefits, be it monetary or free perks. The fact that a user can deny the company access to their data while still being able to fully use the app gives the user bargaining power. Ultimately, the choice is up to the user.
And let’s remember what ESC could provide for a social media app running the Elastos tech stack. A music artist could tweet out a scarce amount of DRM-protected songs directly to their followers. DRM-NFTs is something that the Elastos DApp Elacity has already been experimenting with. DRM media is encrypted and cannot be played until the user signs with a wallet holding one of the access tokens for that particular piece of media, decrypting the media. Once these media are purchased, they cannot be taken away from the user like they can in the other centralized media marketplaces of today; they are truly owned by the user and can live on forever in Hive.
Nostr is a great lightweight, and elegant social media protocol. Seeing such a grassroots movement getting traction to escape the clutches of centralized power and censorship is awesome. To quote Travis Kling, he has a saying, “How ready is the world for the tech, and how ready is the tech for the world?”. The answer to the first question, as evidenced by Nostr, is that the world has never been more ready than it is today. To answer the second question, I think Nostr is an excellent start to the tech, but I think the space as a whole lacks the punch that it needs to show the world why they should drop centralized social media and hop on over to the decentralized side.
What can they do decentralized that they couldn’t do centralized? They need to be shown something truly transformative. Something revolutionary can be done on Web3, which can’t be done on Web2. To me, I believe Elastos can bridge that gap by giving people the opportunity to own their own data, own their own assets, and own their own digital identity.
This article was created by Dylan McFomo and won 2nd prize in the Best Article Contest.
Didn’t find what you’re
Check out our dedicated technical resources