Byzantium/Byzantium — Issue #88: Configure OpenSSL to prefer cryptosystems with PFS over any other.
Author: virtadpt
Created: 2012-01-28 16:53:27+00:00
State: open
Labels: Feature request, ISO image - v0.2a

Google contributed code to OpenSSL which implements PFS (Perfect Forward Secrecy). We should see if the build of OpenSSL in Porteus Linux has that code (I suspect that it does not), and if not consider what would go into upgrading to a version that does. There does not appear to be any settings in /etc/ssl/openssl.cnf pertaining to cryptosystems used or preferred; traditionally that's in the config files of the apps linked against OpenSSL (e.g., Apache).

For our threat model PFS is a must - it's assumed that attackers will be recording all traffic on the mesh, and as much traffic as feasible will be strongly encrypted by default. However, without PFS an attacker can potentially seize a node, extract keying material, and use it to decrypt the captured traffic. With PFS the attacker won't be able to do that to any but currently active streams; streams that have terminated will be safe because the keying information won't exist anymore. Nodes won't be using swap space on disk by default (nor will most of them even have any) so that isn't a risk.

I/O Error maintains [url=https://github.com/ioerror/duraconf]a repository of configuration files[/url] that are preconfigured for strong crypto with PFS, we should consider making use of those settings.

We should also determine how much extra load that'll put on the node, which will translate under some circumstances into increased battery drain.