Majik Message Desktop v1.4.6
Majik Message 1.4.6 — What's New
New Features
Encrypted Voice Messaging
Added support for voice message attachments
Constraints:
- Max duration: 60 seconds
- Encoding: ~64 kbps (OGG container)
- Pipeline:
Recorded locally → encrypted client-side → uploaded as ciphertext
Download Options:
- .mjkb → raw encrypted payload
- .ogg → decrypted audio
Retention:
- Messages expire after 24 hours
Infrastructure Improvements
Durable Objects WebSocket Optimization
- Refactored realtime layer for Cloudflare Durable Objects
- Removed ping/pong heartbeat mechanism
- Not required due to DO hibernation model
- Reduces unnecessary network chatter
Improved:
- Connection efficiency
- Resource utilization
- Stability during idle periods
Recap (v1.4.5)
Backup System Overhaul
Introduced ZIP-based export:
- backup.png (SHA3-512 verified payload carrier)
- backup.json (raw data)
- README.txt (handling + recovery guide)
- Enforced strict integrity validation during decode
Contact Card PNG Transport
- PNG-based contact export/import system
- Supports both self and directory contacts
- Compatible with legacy invite key flow
Encrypted Attachments
Up to 25MB, all formats supported
Client-side scanning:
- YARA (malware detection)
- Magika (file type validation)
- Server only receives encrypted blobs
- 24h retention with dual download modes
Improvements (1.4.x Series)
- Contact grouping system with metadata support
- Replayable onboarding with persistence fix
- Real-time notification system
Calling enhancements:
- Notification-based answering
- Ring duration indicators
- E2EE P2P calling
- Custom ringtones/dial tones
Roadmap
SFU-based group calling (in progress)