otrchat
otrchat copied to clipboard
๐ An end-to-end encrypted chat system based on the OTR protocol
OTR-CHAT
An end-to-end encrypted chat system based on the OTR protocol.
็ฎไฝไธญๆ
Language
- Golang
Features
- [x] UDP protocol
- [x] Communication with Json format between C & S
- [x] Local configuration with Json format
- [x] end-to-end encryption based on OTR protocol
OTR protocol
Off-the-Record Messaging (OTR) is a cryptographic protocol that provides encryption for instant messaging conversations. OTR uses a combination of AES symmetric-key algorithm with 128 bits key length, the DiffieโHellman key exchange with 1536 bits group size, and the SHA-1 hash function. In addition to authentication and encryption, OTR provides forward secrecy and malleable encryption.
For more information, please visit my blog
Snapshots
Client
The client configuration file located at ~\chat-config.json
.
Sample
{
"listen": ":52915",
"remote": "127.0.0.1",
}
The user should set his ID and nickname when running the client.
./client
Server
The client configuration file located at~\chat-config.json
.
Sample
{
"listen": ":52915",
"remote": "", //can be empty
}
./server