mirror of
https://github.com/casdoor/casdoor.git
synced 2025-09-06 18:10:29 +08:00
feat: keep backward compatibility in GetHashedPassword()
This commit is contained in:
@@ -41,9 +41,17 @@ func (cm *Md5UserSaltCredManager) GetHashedPassword(password string, salt string
|
|||||||
if salt == "" {
|
if salt == "" {
|
||||||
return getMd5HexDigest(password)
|
return getMd5HexDigest(password)
|
||||||
}
|
}
|
||||||
|
|
||||||
return getMd5HexDigest(getMd5HexDigest(password) + salt)
|
return getMd5HexDigest(getMd5HexDigest(password) + salt)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (cm *Md5UserSaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
func (cm *Md5UserSaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
||||||
|
// For backward-compatibility
|
||||||
|
if salt == "" {
|
||||||
|
if hashedPwd == cm.GetHashedPassword(getMd5HexDigest(plainPwd), salt) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
||||||
}
|
}
|
||||||
|
@@ -41,9 +41,17 @@ func (cm *Sha256SaltCredManager) GetHashedPassword(password string, salt string)
|
|||||||
if salt == "" {
|
if salt == "" {
|
||||||
return getSha256HexDigest(password)
|
return getSha256HexDigest(password)
|
||||||
}
|
}
|
||||||
|
|
||||||
return getSha256HexDigest(getSha256HexDigest(password) + salt)
|
return getSha256HexDigest(getSha256HexDigest(password) + salt)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (cm *Sha256SaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
func (cm *Sha256SaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
||||||
|
// For backward-compatibility
|
||||||
|
if salt == "" {
|
||||||
|
if hashedPwd == cm.GetHashedPassword(getSha256HexDigest(plainPwd), salt) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
||||||
}
|
}
|
||||||
|
@@ -41,9 +41,17 @@ func (cm *Sha512SaltCredManager) GetHashedPassword(password string, salt string)
|
|||||||
if salt == "" {
|
if salt == "" {
|
||||||
return getSha512HexDigest(password)
|
return getSha512HexDigest(password)
|
||||||
}
|
}
|
||||||
|
|
||||||
return getSha512HexDigest(getSha512HexDigest(password) + salt)
|
return getSha512HexDigest(getSha512HexDigest(password) + salt)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (cm *Sha512SaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
func (cm *Sha512SaltCredManager) IsPasswordCorrect(plainPwd string, hashedPwd string, salt string) bool {
|
||||||
|
// For backward-compatibility
|
||||||
|
if salt == "" {
|
||||||
|
if hashedPwd == cm.GetHashedPassword(getSha512HexDigest(plainPwd), salt) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
return hashedPwd == cm.GetHashedPassword(plainPwd, salt)
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user