https://labs.ripe.net/author/aaron_kaplan/better-crypto-applied-cryptography-hardening/