diff --git a/cred/md5-user-salt.go b/cred/md5-user-salt.go index 3dbf4e3a..b26fb145 100644 --- a/cred/md5-user-salt.go +++ b/cred/md5-user-salt.go @@ -38,8 +38,10 @@ func NewMd5UserSaltCredManager() *Md5UserSaltCredManager { } func (cm *Md5UserSaltCredManager) GetHashedPassword(password string, userSalt string, organizationSalt string) string { - hash := getMd5HexDigest(password) - res := getMd5HexDigest(hash + userSalt) + res := getMd5HexDigest(password) + if userSalt != "" { + res = getMd5HexDigest(res + userSalt) + } return res } diff --git a/cred/sha256-salt.go b/cred/sha256-salt.go index 9f80fc5a..006e35b7 100644 --- a/cred/sha256-salt.go +++ b/cred/sha256-salt.go @@ -38,8 +38,10 @@ func NewSha256SaltCredManager() *Sha256SaltCredManager { } func (cm *Sha256SaltCredManager) GetHashedPassword(password string, userSalt string, organizationSalt string) string { - hash := getSha256HexDigest(password) - res := getSha256HexDigest(hash + organizationSalt) + res := getSha256HexDigest(password) + if organizationSalt != "" { + res = getSha256HexDigest(res + organizationSalt) + } return res } diff --git a/cred/sha256-salt_test.go b/cred/sha256-salt_test.go index 010be60d..87901e6b 100644 --- a/cred/sha256-salt_test.go +++ b/cred/sha256-salt_test.go @@ -25,3 +25,10 @@ func TestGetSaltedPassword(t *testing.T) { cm := NewSha256SaltCredManager() fmt.Printf("%s -> %s\n", password, cm.GetHashedPassword(password, "", salt)) } + +func TestGetPassword(t *testing.T) { + password := "123456" + cm := NewSha256SaltCredManager() + // https://passwordsgenerator.net/sha256-hash-generator/ + fmt.Printf("%s -> %s\n", "8d969eef6ecad3c29a3a629280e686cf0c3f5d5a86aff3ca12020c923adc6c92", cm.GetHashedPassword(password, "", "")) +}