In the last week, I started working on the last big missing infrastructure piece of the mesh networking peer-to-peer network. A way to send messages between may two nodes in the peer-to-peer network. Each node communicates with at most 20 neighboring nodes, this is useful to form a mesh, but it only gets interesting is you can route messages by hopping from node to node. Now, each node's identifier is a long hash of the nodes public certificate.A key question is how do your route over a peer-to-peer network a message from one node to another with only the hash of the source and target nodes. None of the nodes have a general routing table or a full view of the network topology. Still, we can route the message from hop-to-hop by, at each hop, reducing the "distance" between the message and its destination. The distance is measured not is physical or network distance, but in the difference between a node identifier and the target of the message. In any case, it works quite well.
One great thing about this system is that you can message nodes that are behind a firewall or proxy, and it will still be routed correctly. There are plenty of interesting application, notably you can do lots of outside-in scenarios with you access your home computers from a cellphone anywhere in the world.
This week, I will keep working on this system and add replay-detection and message signing and encryption. Should be fun.
By the way, only one week to go before I take up and head to IDF. Lots of excitement to come.
Ylian
meshcentral.homeip.net
