Cryptio is a ZNC python module that enhances secure communication by implementing Diffie-Hellman key exchange and AES-256 GCM encryption. It ensures that user messages are encrypted, providing data integrity
- Diffie-Hellman Key Exchange: Securely exchanges keys with other users to establish a shared secret.
- AES-256 GCM Encryption: Encrypts messages using AES-256 in Galois/Counter Mode (GCM) for both confidentiality and data integrity.
- Message Length Limit: Automatically blocks outgoing messages longer than 300 characters to account for encryption overhead.
- sudo apt-get install python3-pycryptodome (required pycryptodome package)
- put the module in ~/.znc/modules/
- /msg *status loadmod modpython
- /msg *status loadmod cryptio
Commands
dhkey <nick>
: Initiates Diffie-Hellman key exchange with the specified user (Obviously both users must have the module loaded)
setkey <base64_key>
: Manually sets an AES-256 key encoded in Base64
Message Length: Messages longer than 300 characters are blocked to avoid issues with encryption overhead. Future versions may implement a more precise calculation.