添加md5流式计算

This commit is contained in:
Yun
2024-03-15 13:49:58 +08:00
parent be8a2f84bd
commit 8b8575566b
3 changed files with 21 additions and 2 deletions
+1 -1
View File
@@ -144,7 +144,7 @@ func AESGCMEncrypt(key, plaintext string) (ciphertext, noncetext string, err err
} }
/* /*
AES CBC 解码 AES GCM 解码
key:解密key key:解密key
ciphertext:加密返回的串 ciphertext:加密返回的串
plaintext:解密后的字符串 plaintext:解密后的字符串
+11
View File
@@ -10,6 +10,10 @@ import (
func TestAes(t *testing.T) { func TestAes(t *testing.T) {
key := "example key 1234" key := "example key 1234"
plaintext := "exampleplaintext" plaintext := "exampleplaintext"
// aesx.AesEncrypt(plaintext,key)
// aesx.AesDecrypt()
ciphertext, err := aesx.AESCBCEncrypt(key, plaintext) ciphertext, err := aesx.AESCBCEncrypt(key, plaintext)
fmt.Println(ciphertext, err) fmt.Println(ciphertext, err)
@@ -23,3 +27,10 @@ func TestAes(t *testing.T) {
plaintext, err = aesx.AESGCMDecrypter(key, ciphertext, noncetext) plaintext, err = aesx.AESGCMDecrypter(key, ciphertext, noncetext)
fmt.Println(plaintext, err) fmt.Println(plaintext, err)
} }
func TestDemo(t *testing.T) {
c := []byte("08I2GfoqfIlUYgteelimxQ")
c := []byte("rRq++jXDMPDVcUkXAZA9kg==:o57DgQ+iQMXpERuShWs/XA==")
a,e := aesx.AesDecrypt(c, k)
fmt.Println(a,e)
}
+9 -1
View File
@@ -22,7 +22,15 @@ func Md5File(path string) (string, error) {
} }
defer file.Close() defer file.Close()
return Md5Stream(file)
}
// 流式的md5
func Md5Stream(reader io.Reader) (string, error) {
hash := md5.New() hash := md5.New()
io.Copy(hash, file) _, err := io.Copy(hash, reader)
if err != nil {
return "", err
}
return hex.EncodeToString(hash.Sum(nil)), nil return hex.EncodeToString(hash.Sum(nil)), nil
} }