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

x/crypto/bcrypt: API to check hash format #20896

Open
ibukanov opened this issue Jul 3, 2017 · 1 comment
Open

x/crypto/bcrypt: API to check hash format #20896

ibukanov opened this issue Jul 3, 2017 · 1 comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone

Comments

@ibukanov
Copy link

ibukanov commented Jul 3, 2017

golang.org/x/crypto/bcrypt [1] does not provide an official API to verify that the hash format is good one. The current sources indicates [2] that one can use bcrypt.Cost() as that parses and verifies the whole hash string. But the documentation does not reflect that a successful return from the function indicates a valid hash. Also the documentation implies that bcrypt.ErrHashTooShort can only be returned from CompareHashAndPassword when the Cost function can also return it.

It would be nice to have an explicit API to check hash format and perhaps check that it was created by older version so a password change can be scheduled in such case.

[1] - https://godoc.org/golang.org/x/crypto/bcrypt
[2] - https://github.com/golang/crypto/blob/6c586e17d90a7d08bbbc4069984180dce3b04117/bcrypt/bcrypt.go#L118

@mvdan mvdan changed the title bcrypt: API to check hash format x/crypto/bcrypt: API to check hash format Jul 3, 2017
@gopherbot gopherbot added this to the Unreleased milestone Jul 3, 2017
@zhoub
Copy link

zhoub commented May 27, 2023

Yes, this would be very helpful

@seankhliao seankhliao added the NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. label Jul 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Projects
None yet
Development

No branches or pull requests

4 participants