backend backends Backends Blowfish boolean Changelog ciphertext committer committers crypto cryptographic cryptographically decrypt decrypted decrypting deserialize deserialized Docstrings fernet Fernet hazmat indistinguishability interoperable introspectability invariants iOS pickleable plaintext pseudorandom Schneier scrypt testability unencrypted unpadded unpadding