Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature Request] Support recipient-v1 state machine in Age #426

Open
SlugFiller opened this issue Aug 26, 2023 · 1 comment
Open

[Feature Request] Support recipient-v1 state machine in Age #426

SlugFiller opened this issue Aug 26, 2023 · 1 comment
Assignees
Labels
AGE https://age-encryption.org enhancement help wanted

Comments

@SlugFiller
Copy link
Contributor

Currently, age-plugin-trezor assumes (without checking) the identity-v1 state machine (it should actually verify, and close if an unsupported state machine is passed).

The recipient-v1 state machine is used during encryption, and is an alternative to generating a recipient id. Instead, the plugin receives an identity, and dynamically generates and applies the matching recipient id, or any other encryption method of choice, to the file key.

This method carries a security advantage: An identity file, if generated without the recipient id comments, is simply a link back to the plugin (plus derivation path), and is therefore perfectly secure even if it leaks. The recipient id, on the other hand, can be used to "forge" an encrypted file, that cannot be set apart from files encrypted by the user, unless using a third-party authenticity signature/verification solution.

In addition to implementing the protocol, generating an identity file should, by default, be done without generating the recipient id (also allows doing it without a device connection), so it, by default, generates a "secure" identity file that is safe to leak. An option should exist for generating the recipient id, for when it is specifically intended to share the recipient id with another person (e.g. to receive a file encrypted).

@romanz romanz self-assigned this Aug 27, 2023
@romanz
Copy link
Owner

romanz commented Aug 29, 2023

Thanks for the suggestions!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AGE https://age-encryption.org enhancement help wanted
Projects
None yet
Development

No branches or pull requests

2 participants