-
Notifications
You must be signed in to change notification settings - Fork 51
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
Documentation: Mention pinning on the Sensitive data page #70
Comments
Hi @samuel-lucas6 ! Thanks for the comment. I know this topic has been discussed previously in the team prior to me joining. I'll bring it to the team and see what comes up. |
Hi @samuel-lucas6! I want to start off by saying that I'm new to the team and Yubico. But based on the discussions regarding your issue/suggestion I can reply that we generally agree with your suggestions. Feel free to add to this discussion. //Dennis |
Thanks for discussing it. I agree, but it's considered good practice and better than doing nothing. It's probably more about preventing secrets getting stored on disk than an attacker performing a memory dump, although the latter has been discussed in the context of password managers. The only trouble is that the library isn't designed for this. For example, I wrote a program supporting challenge-response and noticed that requires using |
Thanks for the issue @samuel-lucas6 |
Hey @DennisDyallo, thanks for updating the documentation and letting me know. I have four pieces of feedback:
Otherwise, I like the bullet point approach and discussion of the different risks. |
I think it's worth mentioning that sensitive byte arrays/spans should be pinned for their lifetime to avoid copies in memory. There are several ways to do this:
Otherwise,
CryptographicOperations.ZeroMemory()
can be useless and give you a false sense of security.It may also be worth explicitly stating that strings should be avoided if possible because they supposedly can't be wiped without a risk of crashing the runtime, although it seems to be doable in a project I'm working on that calls Monocypher.
Overall though, this library has pretty good documentation, so thank you for that.
// MAINTAINER EDIT
Adding links to the specific documentation article the OP is referring to:
https://github.com/Yubico/../docs/../sensitive-data.md
The text was updated successfully, but these errors were encountered: