增加AES CBC模式工具函数

This commit is contained in:
dushixiang
2021-04-13 23:56:53 +08:00
parent 4f73cd3673
commit 5cee2dd50e
3 changed files with 61 additions and 1 deletions

View File

@ -1,6 +1,7 @@
package utils_test
import (
"encoding/base64"
"net"
"testing"
@ -33,3 +34,20 @@ func TestTcping(t *testing.T) {
_ = conn.Close()
}()
}
func TestAesEncryptCBC(t *testing.T) {
origData := []byte("Hello Next Terminal") // 待加密的数据
key := []byte("qwertyuiopasdfgh") // 加密的密钥
encryptedCBC, err := utils.AesEncryptCBC(origData, key)
assert.NoError(t, err)
assert.Equal(t, "s2xvMRPfZjmttpt+x0MzG9dsWcf1X+h9nt7waLvXpNM=", base64.StdEncoding.EncodeToString(encryptedCBC))
}
func TestAesDecryptCBC(t *testing.T) {
origData, err := base64.StdEncoding.DecodeString("s2xvMRPfZjmttpt+x0MzG9dsWcf1X+h9nt7waLvXpNM=") // 待解密的数据
assert.NoError(t, err)
key := []byte("qwertyuiopasdfgh") // 解密的密钥
decryptCBC, err := utils.AesDecryptCBC(origData, key)
assert.NoError(t, err)
assert.Equal(t, "Hello Next Terminal", string(decryptCBC))
}