Private messaging for the Pars Network - Built on pars.network
Pars Messenger is a privacy-focused, end-to-end encrypted messaging application for the Pars Network. It features post-quantum cryptography, decentralized storage, and onion routing for maximum privacy.
┌──────────────────┐ ┌──────────────────┐ ┌──────────────────┐
│ Pars Messenger │ │ Pars SessionVM │ │ Pars Storage │
│ (Desktop) │────▶│ Go VM + API │────▶│ C++ Backend │
│ TypeScript/ │ │ │ │ (GPU-accel) │
│ Electron │ │ Post-Quantum │ │ │
└──────────────────┘ │ Crypto (FIPS) │ │ ML-KEM-768 │
└──────────────────┘ │ ML-DSA-65 │
└──────────────────┘
Copy the example configuration:
cp .env.pars .envOr set environment variables directly:
# Point to Pars seed node
export LOCAL_DEVNET_SEED_URL=http://localhost:22023/
# For Pars testnet
export LOCAL_DEVNET_SEED_URL=https://seed.pars.network:4443/npm installnpm run devnpm run build| Variable | Description | Default |
|---|---|---|
LOCAL_DEVNET_SEED_URL |
Seed node URL for Pars network | (required for Pars) |
PARS_FILE_SERVER |
File server hostname | files.pars.network |
PARS_NETWORK_SERVER |
Network status server | network.pars.network |
NODE_APP_INSTANCE |
testnet for testnet mode |
(production) |
SESSION_DEBUG |
Enable debug logging | (disabled) |
- Start the Pars SessionVM node:
# Clone and run the SessionVM
git clone https://github.com/parsdao/session
cd session
go run ./cmd/node- Configure desktop to connect:
export LOCAL_DEVNET_SEED_URL=http://localhost:22023/
npm run dev| Repository | Description |
|---|---|
| parsdao/pars-desktop | Desktop client (this repo) |
| parsdao/pars-ios | iOS mobile client |
| parsdao/pars-android | Android mobile client |
| parsdao/pars-libsession | Native crypto library |
| parsdao/node | Pars blockchain node |
| parsdao/session | SessionVM implementation |
Pars Messenger uses FIPS-compliant post-quantum cryptography:
| Algorithm | Standard | Purpose |
|---|---|---|
| ML-KEM-768 | FIPS 203 | Key encapsulation |
| ML-DSA-65 | FIPS 204 | Digital signatures |
| XChaCha20-Poly1305 | - | Symmetric encryption (AEAD) |
| Blake2b-256 | - | Session ID derivation |
Session ID format: 07 + hex(Blake2b-256(KEM_pk || DSA_pk)) = 66 characters
- End-to-end encryption - Messages encrypted with post-quantum algorithms
- Decentralized - No central servers, runs on Pars network nodes
- Onion routing - IP address obfuscation through multi-hop routing
- Disappearing messages - Automatic message expiration
- Group chats - Encrypted group messaging
- Voice messages - Encrypted audio messaging
- File sharing - Encrypted file transfers up to 10MB
ts/
├── session/
│ ├── apis/
│ │ ├── seed_node_api/ # Seed node discovery
│ │ ├── snode_api/ # Storage node API
│ │ └── file_server_api/ # File uploads
│ ├── crypto/ # Cryptographic operations
│ └── onions/ # Onion routing
├── state/
│ └── ducks/types/ # Feature flags
└── preload.js # Network configuration
export SESSION_DEBUG=1
export SESSION_DEBUG_SWARM_POLLING=1
export SESSION_DEBUG_SNODE_POOL=1
npm run devnpm test- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Website: pars.network
- Documentation: docs.pars.network
- PIPs (Proposals): github.com/parsdao/pips
GPL-3.0 - See LICENSE
- Fork of Session Desktop
- Built on Lux Network technology