Skip to content

AsmanovLev/Qwitrum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Qwitrum Protocol (QWTRP)

Welcome all my dear researches, we're here to introduce you yet another cool 😎 shiny ✨ fancy 🔮 protocol for exchanging your sincerest messages!

Disclaimer

Please, for the best expirience of using this documentation, download repository and use Obsidian

Feature overview

  • User statuses (in-app/online/offline)
  • Message statuses (in-queue/sent/delivered/read)
  • Message editing (keeping history)
  • Message hiding (just becomes "collapsed" or deleted when both parties "collapsed" message)
  • Message Reactions
  • Independent from Certificate Authorities (SHA224 of server's PK)
  • Server-side message storage (optional)
  • Chunk-based file delivery, file integrity and fixing

Future plans:

  • Post Quantum Diffie Hellman Encryption
  • External Message Archiving options
  • Storage Quotas
  • VoIP and Video Calls
  • Stickers/Emojis
  • S2S (Server To Server) communication

Why some decisions been made so?

Message editing (keeping history) Message hiding (just becomes "collapsed" or deleted when both parties "collapsed" message)

You may think why would we make such decisions, and there's quite simple answer - once in a while, there's going to be some people that will implement message deletion prevention and editing history, so, why wouldn't just make protocol to be friendly to such features? There's no way that open protocol wouldn't get such not really privacy friendly feature

Server-side storage (optional)

In future as you seen we're going to implement storage quotas, so users may choose not to use server storage and just store everything locally

Independent from CA

Well, since Lets Encrypt issues certificates to everyone, and nowadays even for IP addresses, wow, but hey, what if our protocol is going to be used in alternative networks like yggdrasil with a .ygg domains? It's impossible to deploy LE certificates for custom internal domains, so that's why there's going to be another challenge.

Reasons & Comparison

E2EE Max file size Binary Federated Open API History Calls Reactions
IRC
E-mail 25 MB
XMPP 📽️
Matrix 100 MB 📽️
Telegram 4000 MB 📽️
WhatsApp 100 MB 🤖 📽️
VK 2000 MB 📽️
Max 4000 MB 🤖 📽️
Signal 100 MB 📽️
Discord 500 MB 🤖 📽️
Qwitrum 🕑 4000 MB 🕑 🕑
🕑 - Future release

What's wrong with Telegram?

Earlier, telegram seemed to be a great option as a primary option to communicate. Durov said telegram would be always free, super cool, etc. User friendly! Use Telegram as a cloud!

What do we have now?

It's evolved into some kind of ordinary social network rather that messenger Users have walls, stories, feature paywalls, ordinary things like usernames became a trend of crypto industry, anonymous numbers. I'm not telling it's bad, but telling blockchain and stuff meanwhile all of the things are focused around 6 server and one product - not really good trend. Telegram premium, stars, advertisement in channels, at least thanks it's not using user's conversations. Telegram API rules are prohibiting to create clients that implementing ad-free experience or prevention of message deletion, etc.

So to be fair, we're creating limits inside of the protocol, not inside client side. Users and developers should be free to do whatever they want to. That's why for example, Qwitrum have just "collapsed" messages rather than deleted.

Also, seems like noone cares about optimization now.

What's wrong with XMPP? XMPP was introduced in 1999 and was intended to be a open standard of messaging via XML-schemas. Now what we have? Around thousands of XEP's that's really hard to follow in the most. Of course extensibility is great at some point, but it affects compatibility. Everyone should use Full-featured XMPP servers with Full-featured XMPP clients to utilize common things like calls, message editing, multi-user conversations, stickers, etc. So if you send a sticker to your friend with non-full XEP server - they won't be able to get your message. Also XMPP is super segmented. We have separate server for calls, separate server for file uploads, etc.

What's wrong with Signal? Of course, signal is really great messenger, but it lacks a lot of features, and lack of federations makes it easy to be blocked in countries that are trying to violate privacy.

Future target is implementing a native library and native client, rather than power-draining javascript-mess.

Navigation

Authorization Client methods Server Responses Types

About

Newgen protocol for new communications

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published