examples - age: $ age-keygen -o key.txt Public key: age1ql3z7hjy54pw3hyww5ayyfg7zqgvc7w3j2elw8zmrj2kg5sfn9aqmcac8p $ tar cvz ~/data | age -r ${THAT_PUBKEY} > data.tar.gz.age $ age --decrypt -i key.txt -o data.tar.gz data.tar.gz.age # get pubkey from private key (simply open key.txt it's annotated), or $ age-keygen -y key.txt example-signify: (TODO) terms: receiptions-file -> pubkey identity-file -> private key notes: - there is -a option for armor - for file integrity perhaps encrypt a SHA together with the file - even without authentication, encrypted file has been tempered. age uses AEAD. (the author says "no one can modify an encrypted age file) - AEADs have Message Authentication Codes that ensure that whoever authored the whole message knew the symmetric key that allows decrypting it. - but still, if the file is totally replaced it's a different story.. -- start quotes[2] -- Here's the big reveal: age is already authenticated, sort of. You can't produce an age file that will decrypt with a given identity if you don't know its recipient. [...] This means that if you need to make sure an attacker can't forge age encrypted files for you, you just need to keep the recipient string (age1...) secret from the attacker. For example, if you upload backups to cloud storage, simply make sure you don't upload the recipient string along with them. -- end quotes -- reads: - [1] https://www.latacora.com/blog/2019/07/16/the-pgp-problem/ - [2] https://words.filippo.io/dispatches/age-authentication/