This document introduces a new protocol designed for instant messaging (IM) and an architecture for developing decentralized IM applications. The software provides accounts(user identity recognition) and communications between accounts safely by end-to-end encryption.
It includes just TWO extremely simple parts:
- User Identify
- Messaging
Copyright © 2018 Albert Moky
See mkm.Meta for details.
See mkm.ID for details.
A public key (PK) was binded to an ID by the Meta Algorithm.
Entity is the sender/receiver in the network communication.
An entity can be an account or a group. It has an ID, a name, and a number for searching.
An account will have a public key.
A group will have founder, owner and members.
// create account
user = new Account(accountID, accountPK);
// create group
group = new Group(groupID, founderID);
See dkd.Envelope for details.
See dkd.Content for details.
See dkd.InstantMessage for details.
See dkd.ReliableMessage for details.
Version 0.1 by Albert Moky [Sun Nov 11 23:18:08 CST 2018]