|
|
|
Enigma Plugin for Roundcube
|
|
|
|
|
|
|
|
This plugin adds support for viewing and sending of signed and encrypted
|
|
|
|
messages in PGP (RFC 2440) and PGP/MIME (RFC 3156) format.
|
|
|
|
|
|
|
|
The plugin uses gpg binary on the server and stores all keys
|
|
|
|
(including private keys of the users) on the server.
|
|
|
|
Encryption/decryption is done server-side. So, this plugin
|
|
|
|
is for users that trust the server.
|
|
|
|
|
|
|
|
|
|
|
|
Implemented features:
|
|
|
|
---------------------
|
|
|
|
+ PGP: signatures verification
|
|
|
|
+ PGP: messages decryption
|
|
|
|
+ PGP: Sending of encrypted/signed messages
|
|
|
|
+ PGP: keys management UI (key import, export, delete)
|
|
|
|
+ PGP: key generation (client- or server-side)
|
|
|
|
+ Handling of PGP keys attached to incoming messages
|
|
|
|
+ User preferences to disable plugin features
|
|
|
|
+ Attaching public keys to email
|
|
|
|
+ Key server(s) support (search, import)
|
|
|
|
|
|
|
|
|
|
|
|
TODO:
|
|
|
|
-----
|
|
|
|
- Handling of big messages with temp files
|
|
|
|
- Key info in contact details page (optional)
|
|
|
|
- Extended key management:
|
|
|
|
- disable,
|
|
|
|
- revoke,
|
|
|
|
- change expiration date, change passphrase, add photo,
|
|
|
|
- manage user IDs
|
|
|
|
- export private keys
|
|
|
|
- Generate revocation certs
|
|
|
|
- Search filter to see invalid/expired keys
|
|
|
|
- Key server(s) support (upload, refresh)
|
|
|
|
- Mark keys as trusted/untrasted, display appropriate message in verify/decrypt status
|
|
|
|
- Support for multi-server installations (store keys in sql database?)
|
|
|
|
- Performance improvements:
|
|
|
|
- cache decrypted message key id so we can skip decryption if we have no password in session
|
|
|
|
- cache (last or successful only?) sig verification status to not verify on every msg preview (optional)
|
|
|
|
- S/MIME: Certs generation (?)
|
|
|
|
- S/MIME: Certs management
|
|
|
|
- S/MIME: signed messages verification
|
|
|
|
- S/MIME: encrypted messages decryption
|
|
|
|
- S/MIME: Sending signed/encrypted messages
|
|
|
|
- S/MIME: Handling of certs attached to incoming messages
|
|
|
|
- S/MIME: Certificate info in Contacts details page (optional)
|
|
|
|
|
|
|
|
|
|
|
|
KNOWN ISSUES:
|
|
|
|
-------------
|
|
|
|
There are some know issues with accepting key passphrases on various
|
|
|
|
system configurations. This is caused by issues in PinEntry handling.
|
|
|
|
Make sure that vendor/bin/crypt-gpg-pinentry works from command line.
|
|
|
|
Possible reasons:
|
|
|
|
- non-supported GnuPG version, i.e. >= 2.1
|
|
|
|
- non-working loader in shebang (#! /usr/bin/env php)
|