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

Proposal: "Recommended" badges #10

Open
3 tasks
tarcieri opened this issue Dec 28, 2020 · 5 comments
Open
3 tasks

Proposal: "Recommended" badges #10

tarcieri opened this issue Dec 28, 2020 · 5 comments
Labels

Comments

@tarcieri
Copy link
Member

tarcieri commented Dec 28, 2020

Edit: this is in-progress. See the following tracking issues:


We have a few open issues about algorithm guidance, such as RustCrypto/password-hashes#48

While we have some precedent for this, such as the "Security" rubric here:

https://github.com/rustcrypto/hashes#supported-algorithms

...we don't have a consistent way of communicating this information across all repos/crates, which I think would be helpful.

I'd like to propose adding a "recommended" badge to each crate which uses the following rubric and links back to documentation (similar to HAZMAT.md) about what the badge means.

Recommended: Yes

Recommended: Yes

Preferred modern algorithms we suggest people embrace in new projects.

Recommended: Neutral

Recommended: Neutral

Algorithms which are still considered secure, but are obscure, uncommonly used, and/or poorly-analyzed.

Recommended: No!

Recommended: No!

Algorithms which are known to be cryptographically broken and should only be used because legacy interop requires it.

@newpavlov
Copy link
Member

Sounds good! But I fear our choices could be controversial. For example, should we use the green badge for argon2 (assuming we had it in this organization), even though some argue that it's worse than scrypt on runtimes smaller than ~1s? What about pbkdf2? Compared to modern alternatives it is weaker to ASIC and GPU based attacks, but using the red badge looks like an overkill and it does not fall under the definition of the grey badge as well.

Also I think the danger sign on such small fonts is not distinguishable enough (and it's with 4K display). so it's probably better to remove it.

@tarcieri
Copy link
Member Author

For password hashes, I'd say:

  • Argon2: recommended
  • scrypt: recommended
  • PBKDF2: neutral

I think hashing out the specific recommendations will need a per-repo issue at least with some discussion.

If specific recommendations wind up being too controversial, we can always change them!

@tarcieri
Copy link
Member Author

tarcieri commented Dec 30, 2020

Also I think the danger sign on such small fonts is not distinguishable enough (and it's with 4K display). so it's probably better to remove it.

How about just an exclamation point instead:

Recommended: No!

@newpavlov
Copy link
Member

Yeah, the exclamation looks good.

@tarcieri
Copy link
Member Author

tarcieri commented Feb 9, 2021

I opened up tracking issues on some of our repos to begin initial discussion. I've linked them from the toplevel description.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants