Release v0.2.3
MigChat CLI v0.2.3
Major Encryption Fixes
π Fixed Receiver-Side Session Establishment
- Implemented proper X3DH protocol for receivers to establish sessions from incoming messages
- Receivers now automatically derive matching session keys from sender's ephemeral key
- This fixes the "MAC verification failed" error when receiving encrypted messages
π¨ Fixed Sent Message Display
- Sent messages are now displayed as
[Your encrypted message]instead of attempting decryption - This is correct E2E encryption behavior - you cannot decrypt your own sent messages after the ratchet advances
- Received messages from others decrypt properly using the receiver-side session
πͺ Fixed Windows PowerShell Installer (from v0.2.2)
- Simplified color output for better compatibility
- Better error reporting
How It Works Now
-
Sending a message:
- You establish a session with recipient's key bundle
- Message is encrypted and ratchet advances
- Encrypted message is sent to server
-
Receiving a message:
- If no session exists, receiver automatically establishes one from the encrypted message
- Both parties now have matching session keys
- Message decrypts successfully
-
Viewing conversations:
- Your sent messages show as
[Your encrypted message] - Received messages decrypt and show plaintext
- Your sent messages show as
Installation
Quick Install (Linux/macOS):
```bash
curl -fsSL https://raw.githubusercontent.com/migchat/cli/main/install.sh | bash
```
Quick Install (Windows):
```powershell
irm https://raw.githubusercontent.com/migchat/cli/main/install.ps1 | iex
```
Supported Platforms
- Linux x86_64, aarch64/ARM64
- macOS x86_64 (Intel), aarch64 (Apple Silicon)
- Windows x86_64, aarch64/ARM64
Testing
To test encryption between two accounts:
- Create two accounts
- Send a message from Account A to Account B
- View the conversation on Account B - message should decrypt
- View the conversation on Account A - sent message shows as
[Your encrypted message]