PSK encryption for Emacs/ERC
Emacs Lisp
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

erc-crypt.el is a minor mode for ERC that enables the use of PSK encryption.

Encryption can be enabled/disabled on a per buffer basis.


  • Use external OpenSSL binary for encrypt/decrypt
  • Visual in-buffer indicator for errors and encrypted messages sent/received
  • Auto splits ciphertext in order to get around IRC message limits. Original formatting is preserved, no information is lost.
  • Messages are padded to constant size


  • Move to GnuPG for symmetric encryption (also customizable key derivation from passphrase)
  • Use OpenSSL for DH key generation
  • Fully automated authenticated DH key exchange


erc-crypt.el should be seen as a proof-of-concept and serve as HOWTO-code in terms of developing similar minor modes for ERC. It does NOT offer strong cryptography, DO NOT use this for anything serious!


;; Move erc-crypt.el to a directory in your load-path

(require 'erc-crypt)

M-x erc-crypt-enable  ; Enable encryption for the current ERC buffer
M-x erc-crypt-disable ; Disable encryption for the current ERC buffer
M-x erc-crypt-set-key ; Set/change key for current ERC buffer


The code comes with a BSD-style license so you can basically do with it whatever you want.


xristos (AT) sdf (DOT) lonestar (DOT) org