Live data from Hacker News

Age is a simple, modern and secure file encryption tool, format, and Go library

github.com

101–110 of 137 posts

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#101
post #12

Age is good at what it does, but note that afaik you probably should almost always pair it with something like signify[1], because age doesn't have integrity/authenticity verification (by design). [1] https://man.openbsd.org/signify.1

Pretty sure age does have integrity and authenticity due to the use of AEAD.

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#102
post #98

Earlier quoted context omitted.

I'm no cryptographer so I might be misunderstanding how all this works (also why I have to rely on whatever signal I can catch instead of just reviewing the code myself like with other more mundane dependencies), but it was my impression that in cryptography things were to be considered with skepticism until at least someone else (emphasis on "someone else") with good enough credentials/skills had attempted to break…

Because the vast majority of new works are not done by one of the few who would be qualified to check it. You can think of the cryptography community as similar to the math community. If some nobody makes a new proof of a big conjecture, it is considered with skepticism until some big name comes around to verify it. If Terence Tao comes out with a new proof in one of his specialities, people are going to assume it's…

Makes sense, I see where I went wrong now, thanks for taking the time to explain.

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#103

Earlier quoted context omitted.

Age is great. I used the rust crate to write an ftp server that encrypts the files before they hit disk (specific use case is having a drop box for my network scanner) and I love the simplicity and composability it provides. One feature request: it would be awesome to have paraphrase encryption for age private keys.

Identity files can be passphrase encrypted and cmd/age will transparently ask for the passphrase before using them. Is that what you meant? https://github.com/FiloSottile/age?tab=readme-ov-file#passph...

Yeah that’s it. Probably just wasn’t supported in the rust age library when I used it. Will double check.

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#104
post #37

Earlier quoted context omitted.

Age is designed for a single purpose: Encryption and decryption of files. To create digital signatures use another specialized tool like minisign instead. Specialized tools are simpler than one do-it-all tool.

Simpler, but not necessarily as capable! From https://words.filippo.io/dispatches/age-authentication/ >: > If you encrypt and then sign, an attacker can strip your signature, replace it with their own, and make it look like they encrypted the file even if they don't actually know the contents. > If you sign and then encrypt, the recipient can decrypt the file, keep your signature, and encrypt it to a different recipi…

> make it look like they encrypted the file even if they don't actually know the contents.

I might as well encrypt a message "add $10000 to my account" with the bank's public key, sign it with my own key and send it...

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#105
post #12

Age is good at what it does, but note that afaik you probably should almost always pair it with something like signify[1], because age doesn't have integrity/authenticity verification (by design). [1] https://man.openbsd.org/signify.1

Pretty sure age does have integrity and authenticity due to the use of AEAD.

its complicated: https://words.filippo.io/dispatches/age-authentication/

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#107

I know there are specialized backup tools like restic or borg, but I like to keep things simple. Is using age like this to encrypt my files before uploading them to untrusted cloud storage not ok? tar > age > cloud Some comments mention signing with minisign. Should I be doing that like this: tar > age > minisign > cloud

It’s obviously not practical except for small data, for many obvious reasons.

You may expect tools such as restic or Borg or rclone should use Age. But they don’t, because they need their own file formats.

Restic is excellent. I can’t recommend it enough.

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#108
post #3

Age (and its rust implementation Rage) combined with agenix[0] and age.el[1] has made my self-hosted deployment and management so, so easy without compromising security. That, when combined with general NixOS conveniences is why I'm able to self-host at all. If not for these, just the anxiety of having to setup new server in case of whatever loss and the associated time/opportunity loss kept me from dong the same for…

I have been using agenix and it is very helpful. I am also looking into writing a system module that makes it easy to generate secrets on the fly. A lot of secrets are just things like, backend and frontend of some service need to be configured with matching keys, but are both running on the same device. In that case you could have a systemd service which just generates a new random key if it doesn't already exist, a…

Check out agenix-rekey[https://github.com/oddlama/agenix-rekey], it has the ability to set up secret generators.

Re: Age is a simple, modern and secure file encryption tool, format, and Go library

#109

https://www.kryptor.co.uk/ is much more secure than age. From their FAQ [0]: >Kryptor uses strong, fast, and modern cryptographic algorithms, offering post-quantum security. It also addresses security limitations of tools like age and Minisign. >Unlike most tools, Kryptor limits metadata by using an indistinguishable from random encrypted file format. Encrypted files have no identifiable headers and are randomly padd…

Thanks for sharing, always happy when my projects inspire alternatives addressing different parts of the design space. Here are a few quick comments based on skimming the documentation, let me know if I misinterpreted anything. - signing support This has always been a non-goal for age. It makes the UX significantly more complex, but it's good if different tools have different goals. I can't quite make out from https:…

Massive fan of age and congrats on its success!! On size padding, I know you've patiently listened to me before on this, but I'll always take a chance to advocate for an approach like PURBs ( https://petsymposium.org/2019/files/papers/issue4/popets-201... ).

Let's say you're in a country that suppresses certain material, like copies of the Bible, or the Hacker Manifesto, or whatever; if the authorities find an encrypted file that closely matches the size of that material; that could do you in. But maybe a more realistic case is how the size of maps tiles alone is enough to figure out where you are looking on a map (https://ioactive.com/ssl-traffic-analysis-on-google-maps/), or the size of streaming video segments (https://www.cs.cornell.edu/~shmat/shmat_usenix17.pdf) gives away what you are watching. Both real-world examples of size side-channels. It's not un-imaginable that someone could use a tool like age to build bigger systems like that, where the leaks creep in.

Post reply on HN