Skip to content

moscowchill/pqTox

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

pqTox

Post-Quantum Tox Client - A fork of qTox with ML-KEM-768 hybrid encryption support.

pqTox


GPLv3+


pqTox is a quantum-resistant chat, voice, video, and file transfer client using the Tox protocol with ML-KEM-768 + X25519 hybrid key exchange.

What's Different from qTox?

pqTox adds post-quantum cryptography to protect against future quantum computer attacks:

Feature qTox pqTox
Key Exchange X25519 ML-KEM-768 + X25519 hybrid
Address Size 38 bytes (76 hex) 46 bytes (92 hex)
Identity Verification None ML-KEM commitment
Quantum Resistance No Yes

Security Model

Connection Identity Status

Status Icon Description
PQ Verified Green Shield Hybrid encryption + identity verified
PQ Unverified Blue Shield Hybrid encryption, no commitment check
Classical Yellow Shield X25519 only (legacy peer)

Backwards Compatibility

pqTox is fully backwards compatible with classical Tox clients:

  • Can add friends using 76-char classical addresses
  • Falls back to X25519 when peer doesn't support PQ
  • Shows security status so users know their protection level

Building

Prerequisites

pqTox requires PQ-enabled toxcore from c-toxcore-pq.

# Build PQ-enabled toxcore first
git clone https://github.com/moscowchill/c-toxcore-pq.git
cd c-toxcore-pq
mkdir _build && cd _build
cmake .. -DBUILD_TOXAV=ON
make -j$(nproc)
sudo make install
sudo ldconfig

Build pqTox

git clone https://github.com/moscowchill/pqTox.git
cd pqTox
mkdir build && cd build
cmake .. -DCMAKE_PREFIX_PATH=/usr/local
make -j$(nproc)

Dependencies

  • Qt 6.4+
  • PQ-enabled toxcore (c-toxcore-pq)
  • libsodium (with ML-KEM support)
  • FFmpeg, Opus, VPX
  • SQLCipher

See docs/pq-integration/04-BUILD-GUIDE.md for detailed instructions.

Documentation

Document Description
Architecture How pqTox integrates with toxcore
Required Changes Code modifications for PQ support
Implementation Guide Step-by-step implementation
Build Guide Build instructions

Credits

pqTox is based on qTox by the TokTok team, which was originally developed by:

Post-quantum cryptography implementation by moscowchill.

License

GPLv3+ - See LICENSE for details.

Related Projects

About

Powerful Tox chat client that follows the Tox design guidelines.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 93.6%
  • CMake 2.4%
  • Python 1.4%
  • Shell 1.1%
  • Starlark 0.7%
  • NSIS 0.5%
  • Other 0.3%