After years of experience with server-based end-to-end encryption (E2EE), I'm exploring ways to enable true peer-to-peer communication. If we can shift from E2EE to P2PE (Peer-to-Peer Encryption), it could revolutionize messaging protocols and security. The future of secure communication might be serverless.
Why P2PE?
- Full Control: Blockchain and Web3 are not the solution; I don't want my information stored elsewhere. I want my communication to be completely mine and anonymous. This is my personal right.
- True Security: People are discussing whether Telegram is secure. No, none of them are secure. I don't trust any service that stores my messages on its own servers.
- No Need for OTR Messaging: If we truly need to communicate freely, it should happen via P2P, not through servers.
- User Rights: I'm tired of being a product for companies. While anonymous messaging is entirely possible, they've been forcing us to use phone numbers for years.
Technical Challenges and Solutions
I'm aware of all the asynchronous challenges, P2P, ICE, and NAT Traversal problems we might encounter. But there's no insurmountable problem. Technically, a solution can always be found, even if it's a hybrid one.
- Engineering-Focused Approach: Instead of spending millions on servers, we should invest in engineers. Our minds, capable of making AI, can also solve P2P problems.
- Practical Solutions: Platforms like Threema and Session suggest sharing a 64-byte hash to talk to someone. This is not practical at all and prone to errors.
- Redefining Server Roles: Servers should only handle signaling. Instead of the message staying on the server until it reaches the recipient, it should remain with the sender.
Transitioning from E2EE to P2PE
As someone who has been working for a company developing an E2EE messaging application for years, I've personally encountered thousands of different scenarios and technical challenges. Here's a scenario demonstrating how complex E2EE can be:
- Alice registers for the app
- Bob registers for the app
- Alice sends a message to Bob
- Bob turns off his internet before receiving the message
- Bob uninstalls the app from his phone
- Alice deletes the message she sent
- Bob reinstalls the app
- The message comes to Bob from the server
- Bob tells the server he can't decrypt the message
- Alice deletes the app from her phone before receiving information from the server about the undecrypted message
- Alice reinstalls the app
- Alice receives information that there is an undecrypted message
- Alice retrieves Bob's information from the server to understand who this message was sent to
- Alice tells the server that this message is not for her
- This information goes to Bob
- Bob doesn't know who this is because Alice deleted the app
- Bob asks the server who this is
- Bob and Alice switch places. The chain changes and Bob becomes Alice, while Alice becomes Bob
These scenarios occur when there are no authentication mechanisms like HMAC, and any bug in the program's logic can disrupt the entire system.
In my experience, the more complex the server architecture, the more points of failure exist. True security might come from eliminating these points of failure entirely.
Conclusion
P2PE is undoubtedly the future of secure communication. As engineers, we've already conquered the complex challenges of E2EE, demonstrating our capacity to solve intricate problems in digital security. Now, it's time to apply that same ingenuity and determination to P2P communication. The challenges may seem daunting at first glance, but they are far from insurmountable.
What we need is a shift in our approach and resource allocation. Instead of pouring millions of dollars into server infrastructure, we should be investing in the brilliant minds of engineers who can tackle these P2P challenges head-on. By redirecting our focus and resources, we can overcome these obstacles just as we've mastered the intricacies of E2EE.
The potential benefits of P2PE are too significant to ignore. It offers us the promise of true security and privacy — a system where we have full control over our messages and can finally eliminate server dependency. This isn't just about technological advancement; it's about reclaiming our right to private, secure communication in the digital age.
Yes, there are technical hurdles to overcome. But with the right focus, resources, and engineering talent, we can transform these challenges into opportunities for innovation. It's time to empower our engineers to make truly decentralized, secure communication systems that put user privacy first.
In essence, P2PE is more than just a technological shift — it's a paradigm change in how we approach digital communication. By investing in this vision, we're not just solving technical problems; we're paving the way for a future where secure, private communication is a reality for everyone, not just a privileged few. The journey may be complex, but the destination — a world of truly secure, serverless communication — is well worth the effort. P2PE is the key to realizing this vision, and it's time we fully commit to making it a reality.