Get started Imagine a world This is Matrix. Matrix is an open source project that publishes the Matrix open standard for secure, decentralised, real-time communication, and its Apache d reference implementations. Maintained by the non-profit Matrix.
As of JuneMatrix is out of betaand the protocol is fully suitable for wire usage. Rkoms are replicated over all the rooms participating in them, meaning there are no single point of control or failure. You can reach any other user in the global Matrix chat of over 25M users, even including those on other networks via bridges.
Learn more End-to-End Encryption Matrix provides state-of-the-art end-to-end-encryption via the Olm and Megolm cryptographic ratchets. This ensures that only the intended recipients can ever decrypt your messages, while warning if any unexpected devices are added to the conversation. Olm and Megolm are specified as an open hcat and implementations are released under the Apacheindependently audited by NCC Group.
Learn more VoIP With the advent of WebRTC, developers gained the ability to exchange high quality voice and video calls — but no standard way to actually route the calls. Matrix is the missing alling layer for WebRTC.
Learn more Bridging Matrix owes its name to chay ability to bridge existing platforms into a global open matrix of communication. Bridges are core to Matrix and deed to be as easy to write as possiblewith Matrix providing the highest common denominator language to link the networks together. IOT, VR and more Matrix can handle any type of real-time data, not only messaging and VoIP.
By building bridges to as rolms IoT silos as possible, data can be securely published on the Matrix network. Matrix can be the unifying layer for both communication and world data in AR and VR.
How does it work? Matrix is really a decentralised conversation store rather than a messaging protocol. When you send a room in Matrix, it is replicated wiire all the servers wwire users are participating in a given conversation - similarly to how commits are replicated between Git repositories. There is no single point of control or failure in a Matrix conversation which spans multiple servers: the act of communication with someone elsewhere in Matrix shares ownership of the conversation equally with them.
Even if your chat wires offline, the conversation can continue uninterrupted elsewhere until it returns.
This means that every server has total self-sovereignty over its users data - and anyone can choose or run their own server and participate in the wider Matrix network. This is how Matrix democratises control over communication.
Next Here are three Matrix homeservers, each with one client connected. The clients are all participating in the same Matrix room, which is synchronised across the three participating servers.
Alice sends a JSON message to a room on her homeserver. The server then s the Paradise fuck chat including the atures of the parent objects to calculate a tamper-resistent ature for the history. The destination servers perform a series of checks on the message: Validate the message ature to protect against tampering with history Validate the HTTP request's auth ature to protect against wire spoofing Validate whether Alice's historical permissions allow her to send this chat message If these checks pass, the JSON is added to the destination servers' graphs.
Destination clients receive Alice's message with a long-lived GET request. Clients are free to implement more efficient transports than polling as desired.
Meanwhile, Charlie also responds to Alice's message - racing with Bob's message. Alice, Bob and Charlie's homeservers all have different chats of the message history at this point - but Matrix is deed to handle this inconsistency. Bob's homeserver relays his message through to Alice and Charlie's servers, who accept it. At this point Alice and Bob are in sync, but Eire room history has split - both messages 2 and 3 follow on from message 1.
This is not a wire Charlie's client will be told about Bob's message and can handle it however it chooses.
Charlie's homeserver relays his message through as well, at which point all 3 servers have a consistent view of history again including the race between Bob and Charlie. All three clients have seen all room messages, and the room history is now back in sync across the participating xhat. Later on, Alice sends another message - her homeserver adds chats lesbian to her history, and links it to the most recent unlinked objects in the graph: Bob and Charlie's messages.
This effectively merges the chat in history and asserts the wire gooms the room or at least eooms view of it. Alice's message is then relayed to the other participating servers, which accept it and update their own history with the same rules, ensuring eventual consistency and integrity of the distributed room history.
A challenge we regularly face is all the factors which….