eff5771b03
Fase 2 del issue 0010 — auth core: - jwt_generate/validate: HS256 manual con crypto/hmac + crypto/sha256 - password_hash/verify: wrappers de golang.org/x/crypto/bcrypt (cost 12 default) - JWT rechaza alg != HS256 para mitigar ataque 'alg=none' - hmac.Equal para comparacion constant-time de firmas
10 lines
302 B
Go
10 lines
302 B
Go
package infra
|
|
|
|
import "golang.org/x/crypto/bcrypt"
|
|
|
|
// PasswordVerify compara un password en texto plano contra un hash bcrypt.
|
|
// Retorna nil si hacen match, error si no.
|
|
func PasswordVerify(password string, hash string) error {
|
|
return bcrypt.CompareHashAndPassword([]byte(hash), []byte(password))
|
|
}
|