-
Notifications
You must be signed in to change notification settings - Fork 57
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
Add Support For Encrypted Private Keys #339
Comments
Hi @ajh-, thanks for submitting this issue! This is certainly something that we need to fix with a degree of priority, as keys with passwords is a use case that we should support. The only thing I am questioning at the moment is whether we should: I would like to know your thoughts @ajh-, please let me know if this prompts any thoughts of how good / bad the user experience would be for each option. |
This is another one that I think we might want to solve via go-securesystemslib (it's also something that comes up in gittuf for example: gittuf/gittuf#276). IIRC python-securesystemslib supports encrypted keys, though we should double check with the new signer interface. I wonder if we can look at that to see what the options are for submitting the passphrase for consistency + security. |
@ChaosInTheCRD I think prioritizing a solution for option A (adding a flag) is sufficient (at least initially). From a user experience perspective, flags provide a level of explicitness that can sometimes be lost when defining just an environment variable behind the scenes. Using a new flag to reference a file or an environment variable seems like a good compromise. |
We actually just removed support for encrypted file-based keys from the relevant API for the following reasons:
|
Problem:
When attempting to generate an attestation with an encrypted private key, witness throws an error stating it failed to open the key file. When using an unencrypted private key, witness works as intended.
Recommendation:
Add a password option/flag to prompt for user input or include within command. This would be like the
-P, --password
option included with in-toto-run or the-p, --prompt
option with in-toto-sign.I could also be overlooking this functionality within witness so please let me know if this is already possible.
The text was updated successfully, but these errors were encountered: