# dm3 — The web3 messaging protocol. Encrypted. Decentralized. Interoperable. **Published by:** [stkux.eth](https://paragraph.com/@stkux/) **Published on:** 2023-03-31 **URL:** https://paragraph.com/@stkux/dm3-the-web3-messaging-protocol-encrypted-decentralized-interoperable ## Content Messaging has become an essential part of our daily lives in the digital era, with instant messaging applications, social media platforms, and communication tools for businesses and private use being the primary channels for communication and connectivity. But most messaging solutions today are centralized services controlled by single companies, resulting in limited communication on one platform and a lack of interoperability between different platforms. Centralized messaging services also often lack transparency, making it difficult for users to verify the security and privacy of their data. This can lead to privacy violations, censorship, and manipulation, and compromise the security of user information. This results in a fragmented messaging industry that limits users' ability to communicate freely and securely. In addition, privacy and security are often governed by a few large enterprises with competing interests. Web3-based messaging solutions have emerged to address these issues, providing secure communication and data exchange using web3 technology. However, interoperability between different messaging protocols and applications remains a real challenge, with many of these systems operating as closed ecosystems as well. As the web3 space continues to expand and evolve, improving interoperability and facilitating seamless communication between different systems will be critical. This will enable users to communicate freely and securely while ensuring their privacy and data security. The dm3 protocol's mission is to provide cross-platform communication. How exactly? Let's dig a little deeper:Why interoperability mattersIn distributed systems, diversity is essential, and therefore interoperability must be a key requirement for messaging systems in web3 and beyond. Different use cases require different technologies, and messaging applications are often tailored to specific ecosystems with unique features to meet the users' needs. Therefore, it's fundamental that users have the freedom to choose the tool that best matches their preferences, while still being able to collaborate with others, even if they are using different messaging applications. In fact, this is very similar to email clients. Consumers are free to choose which client they prefer. By using the same client (= ecosystem), the users might get additional features. But email can be sent to and received by people regardless of the client they use. Usually, the sender does not even know or care what client the recipient may be using. The closed nature of messaging systems makes it challenging to send messages across different applications, emphasizing the need for interoperability to ensure the long-term success of messaging applications. This becomes even more critical when dealing with relatively small communities - which is often the case with many web3 messaging applications. One potential approach to achieving interoperability is to agree on a common base protocol across all messaging applications and services. However, this is difficult to implement since it may require significant changes to existing applications, services, and underlying protocols that may interfere with specific security and privacy features. Another approach to interoperability is to design a layer-0 protocol that serves as a connector between different ecosystems without replacing existing protocols. This approach allows messaging across different protocols and ensures that security and privacy features of individual applications are not compromised. By connecting different ecosystems, the dm3 approach enables diverse solutions that satisfy different user needs while maintaining interoperability.The dm3 protocolThe dm3 protocol is a messaging protocol based on web3 technology, which is a decentralized architecture built on top of blockchain technology. The protocol is designed to provide secure communication and interoperability with other messaging services or protocols. At its core, the dm3 protocol is built on two foundations:a central registry andindependent delivery service nodes.The central registry, based on the Ethereum Name Service (ENS), is a decentralized system that stores information needed for encrypted communication, including public keys for encryption and signature validation, as well as information about where and how to deliver messages. ENS allows anyone to register their own name, as well as create subdomains (sub names) and store additional information (like the dm3 profiles) in text records. The second pillar of the dm3 protocol is independent, self-sovereign delivery service nodes. These nodes act as relays for delivered messages and also serve as gateways to other services or protocols. The architecture of the dm3 protocol is modular, which means that additional protocol extensions can be built on top of it. Optional features such as enhanced privacy, group chats, public feeds, billboard chats, spam protection, notifications, and storage can be added as needed.The architecture of the dm3 protocolThe dm3 registryThe dm3 registry serves as a central store for public keys used for encryption, public keys used for signature verification, and information about how and where to send messages. It is designed to ensure that this information is available in a decentralized manner and is not controlled by any single entity. To achieve this, the dm3 registry is based on the Ethereum Name Service (ENS), a well-established name service that allows users to register their own names and create subdomains. In many cases, this name is already used as an identity. The resolver of an ENS name or sub-name can manage the information on-chain and off-chain as well. Through the Chainlink Cross Chain Interoperability Protocol (CCIP), information from off-chain sources such as Layer-2s, other chains, or even cloud services can be easily integrated and made verifiable on-chain. This means that users can publish their own dm3 profile and dm3 compliant services can integrate their existing registries.The delivery serviceIn the dm3 protocol, a delivery service caches messages until they're picked up by the recipient. It provides the dm3 delivery service API. Users can run their own delivery service or use an existing one, and connecting to multiple services ensures reliability and prevents censorship.Communication scheme of the dm3 protocolA delivery service can also act as a gateway to other services or protocols enabling seamless integration. Such a gateway can receive the messages and forward or inject them into the associated protocol or service (see figure). Here, the dm3 message is transferred to the accompanying client as a special "encoding" and can be unpacked and displayed.Delivery Service as a gateway to another service, protocol, or appMessages from a client inside another ecosystem can be sent directly to a recipient's delivery service or relayed through the gateway delivery service. The end-to-end encryption of the dm3 protocol ensures that messages are secure and private. The delivery service cannot read or modify them but simply forwards them as a packet to the recipient's client.ConclusionIn the world of messaging, interoperability is critical to ensuring that users have the flexibility to choose the platform that best meets their needs. The dm3 protocol provides an interoperable messaging protocol that offers end-to-end encryption and other security features to protect user privacy. Acting as a delivery service and gateway to other services and protocols, the dm3 protocol provides seamless integration with existing messaging systems without compromising security or confidentiality. This makes it a valuable resource for both web2 and web3 messaging solutions, ensuring that users have access to a secure, flexible messaging system that can be adapted to their needs. The dm3 protocol is a public good and can be integrated freely into any existing protocol, service, or application. The mission of dm3 is not to replace but to connect! Learn more about thedm3 protocol and connect with us on Twitter, Mastodon, or LinkedIn and join our community on Common Ground to stay updated on the latest developments. If you’re interested in integrating dm3 into your messaging application, don’t hesitate to schedule a call with us! ## Publication Information - [stkux.eth](https://paragraph.com/@stkux/): Publication homepage - [All Posts](https://paragraph.com/@stkux/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@stkux): Subscribe to updates