Browse Source

修改md5和sha256函数

yjp 1 year ago
parent
commit
f37c9c1bf4
2 changed files with 28 additions and 4 deletions
  1. 10 2
      encoding/encoding.go
  2. 18 2
      encoding/encoding_test.go

+ 10 - 2
encoding/encoding.go

@@ -50,11 +50,19 @@ func AESDecrypt(encrypted string, key string) (string, error) {
 	return string(originData), nil
 }
 
-func MD5(origin string) string {
+func MD5(origin string, salt string) string {
+	if salt != "" {
+		origin = origin + salt
+	}
+
 	return fmt.Sprintf("%x", md5.New().Sum([]byte(origin)))
 }
 
-func SHA256(origin string) string {
+func SHA256(origin string, salt string) string {
+	if salt != "" {
+		origin = origin + salt
+	}
+
 	return fmt.Sprintf("%x", sha256.Sum256([]byte(origin)))
 }
 

+ 18 - 2
encoding/encoding_test.go

@@ -29,18 +29,34 @@ func TestAES(t *testing.T) {
 
 func TestMD5(t *testing.T) {
 	origin := "foo"
-	md5Str := MD5(origin)
+	salt := "foo-salt"
+
+	md5Str := MD5(origin, "")
 
 	if md5Str != "666f6fd41d8cd98f00b204e9800998ecf8427e" {
 		t.Fatal("md5字符串不正确")
 	}
+
+	md5WithSaltStr := MD5(origin, salt)
+
+	if md5WithSaltStr != "666f6f666f6f2d73616c74d41d8cd98f00b204e9800998ecf8427e" {
+		t.Fatal("md5字符串不正确")
+	}
 }
 
 func TestSHA256(t *testing.T) {
 	origin := "foo"
-	sha256Str := SHA256(origin)
+	salt := "foo-salt"
+
+	sha256Str := SHA256(origin, "")
 
 	if sha256Str != "2c26b46b68ffc68ff99b453c1d30413413422d706483bfa0f98a5e886266e7ae" {
 		t.Fatal("sha256字符串不正确")
 	}
+
+	sha256WithSaltStr := SHA256(origin, salt)
+
+	if sha256WithSaltStr != "941189487b27649bf72f232b199c9b859d5e7b26f162f2efe201a9c7a12ce5a2" {
+		t.Fatal("sha256字符串不正确")
+	}
 }