Web3 Magic Journal & Podcast
Web3 Magic Podcast
Future of Messaging Explored with DM3's Stefan Kux
0:00
-35:10

Future of Messaging Explored with DM3's Stefan Kux

Privacy and Decentralization Should Play Major Role

Episode Summary

I've met Steffen from DM3 Network at Istanbul during networking breakfast organized by BABs.xyz and The Phoenix Guild - so shoutout to them! We agree back then that we'll talk about dm3 protocol but it took us some time to get it recorded.Takeaways

  • DM3 Network is a decentralized messaging protocol that aims to connect various messaging solutions in the Web3 ecosystem and potentially even outside Web3.

  • The protocol focuses on a decentralized registry for communication information and is built no decentralized system of nodes to deliver messages.

  • DM3 aims to provide interoperability with other messaging protocols and solutions, allowing users to connect and communicate across different platforms.

  • The team behind DM3 is working on cross-chain compatibility and integrations to expand the reach and functionality of the protocol.

  • The team also started Messaging Interoperability Initiative which you should join if you have anything to do with messaging in the world.


Video Episode player

Chapters

00:00 Introduction and Background

04:25 The Journey to DM3

06:23 Building a Decentralized Messaging Protocol

12:12 Interoperability and Integration

19:16 Connecting Centralized and Decentralized Messaging

24:56 Current State and Future Milestones

27:56 Connecting Messaging to Decentralized Social Media

29:16 Cross-Chain Compatibility and Integrations

31:11 Next Milestones and Success

33:24 Invitation to the Community

Thank you for reading Web3 Magic Journal & Podcast. This post is public so feel free to share it.

Share


Transcript

BFG (aka Pete): 0:23

Hello everyone, Welcome to the next episode of X3 Magic Podcast. Today I'm sitting here with Stefan Kukz. We are going to talk about the whole new project which he's running, called DM3 Network. It's about messaging and privacy. So you guys know it's my area of interest. I'm happy I met Stefan in Istanbul during the pub's breakfast. Hi, Stefan.

Steffen (dm3): 0:54

Thank you for having me.

BFG (aka Pete): 0:56

Wonderful. Let's start like usual. What is your journey that got you to crypto? Then we can talk about how you got to DM3.

Steffen (dm3): 1:08

I started my career as a mathematician. I worked for a long time in the automotive industry. I was doing a lot of software development, a lot of interesting stuff, big data, simulation and so on. In 2017, I joined a startup from two of my friends, Christoph Jens and Simon Jens. Christoph was, in the very early days, strongly connected to Ethereum, was chief tester of Ethereum and they founded Slogged and I joined Slogged. In the very beginning, we did a lot of interesting stuff building applications, using blockchain for IoT, working together with a lot of companies in the energy market and so on. In this year's, we did a lot of research and development in the web-stream space. Now we started a new company, Corpus, which is an venture studio and focused on web-free applications. We try to build applications which are missing building blocks in web-free to become mainstream enables.

BFG (aka Pete): 2:20

You choose which applications you build right.

Steffen (dm3): 2:24

Yes, we are four founders. We together have a lot of ideas and a lot of interesting projects. We decide to start what we are interested in and after a short time, normally between three to six months, we have MVP and then we present it to the community and see if there is a potential and interest in this project. If so, we continue. If not, then we start new projects.

BFG (aka Pete): 2:55

I see Maybe a little bit of digress so early on. Do you guys fund the projects yourself or do you use the retroactive funding like Gitcoin?

Steffen (dm3): 3:09

Both of it. In the beginning, when we start projects in our venture studio, we fund it completely by ourselves so that we are completely independent. We don't need anyone to fund these projects. But after a while, when we see that there is a potential, then we build companies or organizations. We have a lot of different models already tested. We have some projects which became commercial companies for profit companies. We have also projects like DM3 which are becoming non-profit organizations and public goods. It depends really on the project. What is the best solution to bring it to life in your own company or organization?

BFG (aka Pete): 3:56

Okay, very cool.

Steffen (dm3): 3:59

When we start with these organizations or companies, then of course we also try to get funding from outside so that others can join these projects investors, vcs and also in the public goods area, when we are also looking for grants.

BFG (aka Pete): 4:17

That makes sense. How old is the venture studio? You said?

Steffen (dm3): 4:22

The venture studio was founded at the beginning of 2002.

BFG (aka Pete): 4:27

Okay. It is more than two years now, nice, it makes it pretty cool. Okay, so now take us to the journey to DM3. How it started? Why exactly the protocol there? Are other messaging protocols right.

Steffen (dm3): 4:48

Let's start from the very beginning. Actually, it is one of the projects we started in the very first days of our venture studio. The event which brought us to the point that we should start such a project was we tried to get some NS names. So we found these NS names. They were not used and we wanted to have them. So we tried in OVC to contact these people but it was almost impossible to send messages to these people. Then we said normally in our space and web3 space we have the keys. It should be very easy to build a solution to send an encrypted message to anyone where I have the address. So this was actually the beginning of the DM3 journey. We started to build in the beginning an email like client. Then we switched a little bit more to messaging so that we could use our keys from the wallet to create our communication keys and with this have the ability to send encrypted messages to any other wallet or address. It took about five to six months to build a prototype to show that it works. Then we presented it to the public and the feedback was really strong, not so much on the messaging solution this was only a prototype but more on the protocol. A lot of feedback, especially from the ENS community, and with this feedback we started on the protocol. Our main focus is not to build another messenger. We have a reference implementation to show that everything works as we have defined it. But our focus now is especially on the protocol side. So we have a lot of different web3 messaging solutions which came to operation in the last years. We have a lot of interesting solutions, but when we look at these solutions, actually we see the same problem as we have in the web2 world they are siloed. All of these solutions have their own ecosystem and they are not interoperable with each other. That means for the users if they decide to use one tool, the communication partner needs to use the same tool, otherwise it's not working. So, and when we started with Team3, we looked what is really needed to make a secure Web3-based messaging and we came to the conclusion that there are only three things which are really important. So the first thing is we need a central registry of the communication information Central, but decentralized, so we all know it from email, so we can send encrypted emails. There are these PGP initiatives. It is possible, but if you tried it, so I tried it for a long time. I always did send my public here with my mares. I never received a single encrypted email back. And why is encrypted email not working. We don't have a registry where we find the public keys from the receivers, so that's why it will not work. In a Web2 world, such a registry would be hosted by one single company and with this it's not used by others, because then they are dependent of this single partner or the single intermediate. So, and now with Web3, we have the chance to build a central but decentralized registry, and we decided to use ENS for this, because a lot of people are already using ENS names as a kind of identity, and it is quite easy to see that when I publish my communication profile directly on my ENS name, then it's easy for others to find this information and to send encrypted messages. So this is the first point. What is really?

BFG (aka Pete): 9:31

essential.

Steffen (dm3): 9:32

And the second point which is essential we need a decentralized system of nodes to deliver the message. So when we look in the Web3 messaging ecosystems we see different approaches. We have some who are using still centralized intermediates, only using the keys for encryption and so on. I call them the 2.5 messaging. So they are using a lot of interesting Web3 technologies, but it is not yet fully decentralized. Then we have other protocols. They are based on a broadcast network, so, like in the beginning, whisper, and now we have the successors of this, vaku and others, which are using the same approach that they have. They are using a decentralized network of nodes which these nodes are connected. I checked a message into this network. It is broadcasted in this network and the receiver just connects to one of the nodes and receives the message. We also tested this approach. It is quite a nice approach. If it is fully decentralized, then it works nice. For privacy it is a great solution. But from the standpoint of scalability it is quite complicated Because when I broadcast all messages in the network, when we look at messages like WhatsApp, we are broadcasting hundreds of millions, even billions of messages per day with attachments, a lot of data. We came to the conclusion that to do this in such a network is really nice for special use cases, but for a general protocol which can connect other protocols as well. It is too complicated, it is too heavyweight. Then we decided to build a decentralized network of not connected nodes which act as relays for the messages. So that means the user decides which nodes he is connected to and publishes these nodes in his profile, and then I want to send a message to this receiver. I just get his profile from the registry in E&S. And then I see which nodes he is connected to and then I pick one or more nodes he is publishing and send the message to these nodes and then the receiver picks up the message. It's deleted from the network and it is the responsibility of the application to store the message. This could be in a cloud storage. This could be a decentralized storage. This could be completely locally. It depends on the application From protocol level. We don't care how it is stored.

BFG (aka Pete): 12:37

It's basically like ephemeral messages on protocol level.

Steffen (dm3): 12:41

So the base protocol from Dm3 is only for transmitting messages. How can I transmit messages? And the third point which is important is interoperability. So we have already a lot of interesting applications and, to be honest, it is not meaningful to try to replace all these protocols and solutions. But this will work and that's why we are looking. How can we build such a we call it Layer Zero messaging protocol which can connect all these protocols? in an easy and simple way and with this delivery service relay approach it is quite easy possible these other solutions. They can operate delivery services and these services receive the messages which are meant for this network and then inject the messages into the other network. And with this it's very easy to use such delivery services as gateways to any other solution. This could be decentralized solutions like broadcast networks. I have some delivery services which are connected to these networks. These could be also centralized applications. So web2 messengers can also be integrated very easily. They just need to operate some delivery services to receive the messages and then inject these messages into their own solution. And with this we did build a very lean base protocol for messaging DM3. And on top of this we also are developing a lot of extensions for other things which might be needed in the messaging world. This, the base protocol, is peer to peer messaging only, but then we have extensions for more privacy, for group chat, for public feeds and so on A lot of different extensions which can be used, but are only extensions to the very lean base protocol.

BFG (aka Pete): 14:49

That's super interesting actually because, as you said, there is a flood of applications now on different chains, different levels of chains, and sometimes it's just confusing to put it all together and know where you are messaging whom.

Steffen (dm3): 15:11

Yeah, so you mentioned one important thing, and this is a question we are asked a lot of times. So we are focusing on ENS as the center registry, but there are a lot of other EVM chains or even layer tools or even other chains, so how can they be integrated into DM3? And for this we also have a very interesting and well-working solution. So we did a lot of development in solvers which can connect other data sources to ENS. And with these resolvers we can, for instance, add all layer tools which are connected to Ethereum, so that the storage of the information is not on layer one, which might be quite expensive, but on any other layer tool, like Optimism or other layer tools. We also can integrate other chains, so, for instance, at the moment we are working with Moses so that Moses name service is connected, also using these resolvers, to ENS, so that all the information which is on this other name service is then linked as well to a subdomain in ENS and with this we have this one source of information. We have these ENS names and subdomains which have all this information, but the information could be stored on any other chain as well, and that means to integrate another chain. Another solution maybe also a centralized service is very easy Just the information, the register information needs to be linked to a subdomain of ENS and then we have a top-level IaaS system where we can store the information which top level is connected to which subdomain in.

BFG (aka Pete): 17:14

ENS.

Steffen (dm3): 17:15

So then, for instance for Moses, they have the top level on GNO. And in the top-level IaaS API. We know that GNO is linked to a kmosiseath and with this, if we want to connect to a name on this other name service, we just can link it to the connected ENS name and have all the information on one place, which is a decentralized solution. Everyone can connect to it and everyone can access this information.

BFG (aka Pete): 17:52

It's actually very cool, because I just recently was part of some discussion on Twitter or maybe it was Farcaster, can't remember Somebody asked like okay, apart from nice name, like what's the point of ENS? You know? Like, what else do I get? And this would be, I think, super nice proposition that you know, if you have your ENS name, you can suddenly send messages across different blockchains to basically people with ENS names, basically anyone.

Steffen (dm3): 18:27

Exactly, and also it is not dependent on the application. So every application which is supporting the DM3 standard can be integrated into this network. Also, I can publish a profile from any application which supports the base protocol of DM3. And with this they can be connected to any other application which is using the DM3 protocol, and this without changing their base solution, their base architecture. They simply need to have this delivery service, which injects the messages as gateway into their solution. And then we have encoding, which provides all the decryption and decoding algorithms which are needed to yeah, to encode the DM3 message. And same way, when they send a message, then they use the encoder, the DM3 encoder, and then send it over there deliver service auto-directly to the delivery service of the receiver and can inject the message to any other DM3 compatible application.

BFG (aka Pete): 19:41

I see so would that from what you said, it would be possible to integrate centralized email service which would work with the ENS name, right?

Steffen (dm3): 19:53

Yes, so technically you could. Every communication system can you integrate into the DM3 network by providing a registry, so that we know how to deliver the message and how to encrypt the messages, and also we have keys included to have signatures for verification. This is also something which is really important in messaging that you really know who is the sender.

BFG (aka Pete): 20:27

Sure.

Steffen (dm3): 20:27

We know this from email. Sometimes we receive emails from persons which look like someone who is well-known, but it is sent from someone else and it's really hard to discover. Is this really the original sender or not? And with DM3, this cannot happen. I have always the encryption and I have the signatures that I can really verify. Okay, this is the sender and nobody else can create the signatures and send a fake message in the name of another one Got you Very cool, and so what's the current state of DM3?

BFG (aka Pete): 21:12

Are you guys in beta alpha or is it fully functional protocol and now you are basically doing the apps so you could show how it works to the world.

Steffen (dm3): 21:23

Yes, so we have released the base protocol. This was done beginning of this year, so we have a long, better two phase to show that it works. So the base protocol, as I said, is finished and is usable, and we are right now working on integrations into other ecosystems, especially these cross chain functionality is something we are working on. We are also providing components so that applications which need messaging can use these components. Now, for instance, if you are developing a game and you want to have a secure in-app messaging, or you are developing a wallet and you want to enable your wallet to wallet messaging, you just can use the DM3 embedded components and with this you have full featured, full secured messaging included in your application, which is already connected to the DM3 ecosystem, and with DM3, we can actually do something very cool. So when you use this component on your application, for instance, we have some partners which will use these components inside their website to have a direct contact to some persons in the company. They just add a messaging window in this website and when I go to this website, I can use my wallet, sign in with my wallet and directly send a message. Only one signature is needed and I can start so, but at this time I can stay fully anonymous. I don't need to share what is my main inbox. So, but what I can do if I see this is an important conversation, I can link this conversation to my main inbox. This is simply a service message with a send and then I can connect these local messaging solution to my inbox. Now, for instance, this could be a support channel, and sometimes I use support channels, but it's really hard to follow the conversation. So I have always to go back to this website and if I forget to do an update regularly, then maybe I get an answer. But I don't see it so. And with DM3, it would be very easy to say OK, this is an important information or the important conversation. I link it to my inbox and then it is mirrored automatically to my inbox and then when I receive a message in this external application, I have it as well in my inbox. And completely independent what DM3 compatible app I'm using, it doesn't need to be our DM3 messenger. It could be any other messenger which is DM3 compatible, because it is completely based on the base protocol of DM3. And with this, it's very easy to include messaging solutions into other applications and link it to the main inbox and with this, people are in full control of their conversations and they don't need to remember what sites I have to visit again to maybe collect some information which is what I'm saying.

BFG (aka Pete): 25:03

Got you. It sounds great, so it should spread like wildfire. When is it going to be in the state that you believe others will start connecting to it and will see first apps using it?

Steffen (dm3): 25:19

So actually at the moment we are working with a lot of ecosystems to integrate these cross-chain functionalities so that they are enabled to use their networks to connect it to our DM3. We are also working with several applications which will use these components to integrate it in their applications, and we also started an initiative we call it the messaging interoperability initiative which means we are connecting to all web-free messaging solutions. All is a big word to a lot of them and everyone is, of course, invited to join and we are discussing with them what is the need in their point of view, so that they can join this initiative and may become interoperable in the future. Of course, it's a long way. A lot of the web-free messaging teams are very small teams, to be honest. A lot of these applications don't have many users for now, and so that's why it's not the one priority for them to become interoperable, because they have to serve a lot of other problems as well. But we have a very good feedback from a lot of these solutions that they are interested to cooperate in this way. As I said in the beginning, the aim of DM3 is not to replace all these other solutions. The aim is to connect, to help them, that they can be connected to other applications very easily. And of course if someone is building a new application, they also can use DM3 protocol as the layer one protocol and use it directly. But if they already have something, they can use it as layer zero protocol and connect the system into the ecosystem.

BFG (aka Pete): 27:25

Yeah, that's what I was thinking when you talk. It seems to me that, especially if you are new app and you know you don't have many users, so your network effect is basically zero, connecting to something like DM3, which might have already ecosystem of people using it, might be very beneficial for you and it might kind of help you. It might help DM3, of course, because you know you bring something new, probably ideally, and it may help you because they DM3 can bring some potential users. Is there a way? So I know that you know we talked about messaging and stuff. It looks a lot like the attempts for decentralized social media, right? Would it be possible to connect my messaging from, say, farcaster to DM3?

Steffen (dm3): 28:16

Yes, actually there is a protocol extension we are building. It is not yet implemented, so we are working on the specification of this. So we call it a public feed extension. So, just in social media, it's not that you send a message to someone, to a single person, but you send a message to the public. And the DM3 public feed extension is exactly this, so that I can publish messages which are shown in other applications. And so, as I said, we are working on the specification on this of this at the moment. And then, yes, this should be, of course, connected to other web3 social media applications, connected to Lens, connected to a Farcaster and so on, so that people can publish content and then it is published in these social media applications.

BFG (aka Pete): 29:28

Okay, wonderful, good. So what's the next biggest milestone and what would you, you know, consider success next year?

Steffen (dm3): 29:39

So the next, the biggest milestones for us from the development side is to specify and also to implement all these protocol extensions, but in the same priority is also the integrations in other systems. We right now are working together with several ecosystems to connect them to the DM3 world. We are providing these components. Actually, it's a good time to talk about this right now, because this week we will publish the new components, the new user interface components, which can be used in other applications as well. So, and yeah, with this it is easy for, as I said, for other applications to use it, and yeah, so one of our goals is now, to you know, to provide these solutions so that other applications can use it, and also to talk to increase our interoperability initiative so that we, yeah, find and build connections to other networks, to other messaging services and so on.

BFG (aka Pete): 30:54

So what's the timeline on? You know some announcements of, you know, cross-chain compatibility.

Steffen (dm3): 31:03

So as soon as the Gnosis name services, the genome, the GNO domains will be available. This will be in some weeks. There will be also the connection to the DM3 network available, so this will be the first cross-chain application which is available. Yeah, we are working on other networks as well, so that this will be the next steps in the next weeks.

BFG (aka Pete): 31:35

Okay, so it doesn't mean you say next weeks doesn't mean before new years or next year.

Steffen (dm3): 31:43

It depends when Gnosis is starting their name. Got you almost ready for this?

BFG (aka Pete): 31:52

I see, I see got you and how how big is the team now?

Steffen (dm3): 31:58

So right now we are six pros in the team, so six pros directly working on DM3. The one good thing of the venture studio is that we also have some shared resources. So even if we are now our own company or own organization, we also can share some services from the venture studio, which makes it easier to start a new company. I don't need a person for for all things I only have developers and community people directly in the team and all the other things we have to share services from the entire studio.

BFG (aka Pete): 32:41

Very neat. So, yeah, just a little advertising for a possible future. I hope I'm going to talk with one more project from the venture studio Stefan is part of, but we'll see about that. Is there anything else you would like to advertise before Christmas?

Steffen (dm3): 33:01

Yeah, I want to invite everyone who is working with messaging to get in contact with us if we not already are in contact, and to see how DM3 can be useful for their product. Dm3 is a public good. We publish everything in the DM3 network as open source, so everyone can use it. Everyone can participate and, yeah, we don't want to set or to define all things on ourselves Now. We want to connect to the community and we are doing this already and see what is needed and how we need to build the DM3 protocol that all participants have the biggest benefit out of it.

BFG (aka Pete): 33:46

Cool, great. So I assume we'll exchange links and I'll really include the links to the DM3 protocol and your community and stuff like that in the show notes, and thank you very much for taking the time. I knew that DM3 is going to be a very cool thing, so it sounds even better than I remember it from the breakfast. It was great having you.

Steffen (dm3): 34:12

Yeah, thank you very much. It was nice to be here, to talk about this interesting topic.

BFG (aka Pete): 34:18

I am sure we will hear more about this very soon.

I don't want to miss next cool episode


Links To My Guest

Here are the links to Steffen's and dm3's Twitter accounts and websites.

I recommend you also take a long look at the Interoperability Initiative, and if you work in the messaging space (or know someone who does), please join them in making messaging apps interoperable and a pleasure to build!


COLLECT THIS EPISODE

FOLLOW US:


OFFER:

Want to get help with launching your bespoke podcast to reach new audiences for your project or company: check out our MagicPod Guy service: http://tinyurl.com/MagicPodGuy

That's it, friends. I hope you enjoyed the episode, and let me know what you think on Twitter (X) or Farcaster. Till next time … keep it colorful!