New Ethereum talks, every Monday. The week's conference uploads by event, in your inbox.

Loading player…

dm3 - Decentralized Secure and Open Messaging Protocol

DevconMon, Oct 9, 2023, 12:00 AM

Visit the https://archive.devcon.org/ to gain access to the entire library of Devcon talks with the ease of filtering, playlists, personalized suggestions, decentralized access on Swarm, IPFS and more. https://archive.devcon.org/archive/watch/6/dm3-decentralized-secure-and-open-messaging-protocol/ dm3 is a protocol enabling decentralized, open, and secure messaging based on established web3 services like ENS and IPFS. It doesn't rely on any central service. The user has complete control over where their messaging data is stored. By using ENS names and ENS text records as the registry for public keys, the user owns the identity linked to their messages. dm3 comes with a reference implementation for a standalone web application, a widget, and a delivery service. Speaker(s): Heiko Burkhardt Track: Developer Infrastructure Keywords: Messaging,open protocol,live demo Follow us: https://twitter.com/efdevcon, https://twitter.com/ethereum Learn more about devcon: https://www.devcon.org/ Learn more about ethereum: https://ethereum.org/ Devcon is the Ethereum conference for developers, researchers, thinkers, and makers. Devcon 6 was held in Bogotá, Colombia on Oct 11 - 14, 2022. Devcon is organized and presented by the Ethereum Foundation, with the support of our sponsors. To find out more, please visit https://ethereum.foundation/

Transcript

foreign [Music] I'm a developer at Corpus Ventures and I'll present you now dm3 what is Team three team three is a simple protocol for messaging it's decentralized it's open and it's secure to achieve these people built dm3 on established we have three protocols like ens the properties I just mentioned make it sensor help resistant we designed it so that there is no single point of failure and with game three users are in control of the data everyone can write an own implementation of team 3. the basis for dim 3 is the record registry where users can install their profiles and we used in as text records for that and on the middle layer we have the delivery service delivery services um buffer the messages until they are delivered to the messaging app and on top you can see the messaging app since the registry is the core of the protocol I'll now explain a little bit deeper how it works as you can see we have the public encryption key in the text record for the profile and also the signing public signing key and also important is the delivery service name so there must be at least one name of a delivery service okay um the delivery service text record also contains uh public keys and it also and it contains the URL this URL is pointing to the delivery service instant where messages can be sent to it's also possible to store data off chain or on layer 2 by using ccip this allows the creation of Team three profiles without a high transaction fees or if it's completely off chain you don't have any and it also makes it possible to include external public key databases this slide shows how a message would be delivered from Alice to Bob so at first um Alice types a message into the app then the app will retrieve the team 3 profile of Bob which contains the delivery service name he is using in The Next Step the app will retrieve the delivery service text record where there is the URL of Bob's delivery service then the message is signed and encrypted and sent to Bob's delivery service the delivery service will push the message um to the app that will be decrypted and the app will um look for the profile of Alice and that's needed because um the signature needs to be checked and if it's the signature is fine um the Bob can then read the message besides the protocol definition we also have a reference implementation um the reference implementation consists of four different packages we have the dm3 web app as you can see the screenshot here on the left side um it's also online available on the app.gm3.chat besides the web app we have the react package this can be used um to include which set of dm3 into other apps and then we have the backend package this contains the delivery service and finally we have the dim three lip which contains basic protocol services so um we are working also on protocol extensions which takes care of things like group messaging these extensions are optional um if you want to write a team 3 implementation you only need to follow the dm3 message transfer protocol so that's our roadmap until now we are published the protocol draft and the reference implementation a critical goal of Team three is to enable interoperability between uh currently isolated web history Messengers we are now talking with many of those messenger teams to understand their needs and yeah please let us know if you want to join the discussion after we finish that process we'll publish the specification and adapt the reference Implement implementation yeah um if you want to uh include team 3 into your app let us know um we'll try to support you that's it thank you [Applause]

Automatic transcript — names and jargon may be misspelled.