49 lines
2.0 KiB
Go
49 lines
2.0 KiB
Go
package sm4
|
|
|
|
import (
|
|
"fmt"
|
|
"strconv"
|
|
"testing"
|
|
)
|
|
|
|
const (
|
|
SELF_PRI = "EA7CB6F907A96264D6763F8C46AB96B476538D2ABC880A459E10BE5A1C30013D"
|
|
|
|
SELF_PUB = "04363DF574D4FE34EE58FB8A3F7CB08E6CA5EBB3B7335CBAE10A2900551F6450AB3AD25DBC0A76EFA9E6D44D2C51E3027483F7BFD09996457888BAFD1AF673817F"
|
|
|
|
PARTY_PRI = "EEB0A34DE1F05154E4B96E50BFC1F8B9750EEAE799F5708C7AFBABB9AFCFA1BF"
|
|
|
|
PARTY_PUB = "0420425DF33945C9D5596A33ED60ABEEFD0165C27BA7D6C95D37344E9223149FEAF4C10CEACD7EC88E8DD1E0BDEA71FD09BE2077A1BDC61BC45587B7CC3613F85A"
|
|
)
|
|
|
|
func TestGenerateKey(t *testing.T) {
|
|
hexPri, publicKeyHex := GenerateKey()
|
|
fmt.Println(hexPri, publicKeyHex)
|
|
}
|
|
|
|
func TestSM4Encrypt(t *testing.T) {
|
|
t.Log(encrypt())
|
|
}
|
|
|
|
func TestSM4Decrypt(t *testing.T) {
|
|
|
|
uid, en := encrypt()
|
|
//uid := "1729382256910270475"
|
|
//en := "{\"accessToken\":\"77F59F157466F309E703F43CFDCFFECF\",\"encryptKey\":\"04237241E4A465C18645985B3C1DAE987B5DDF1C077AA27D677C843C52E833A24711C63F2512D1A4C37E85A5C9CEAC94156C97460CB5E8966CAD2A0C2596A64ED69CF3306D031C4AADAA73D165FB7EEC34E5AAF532A301169847560329F7F1E40E9FD09EB191976BB49ABFE611E05158EF\",\"request\":\"mkuquQ1RB2AtZYzBtWtLPJ3MMULWj7I5RmK3dKENYVW8OgB//I/+MAD/XnjxYYJlRWM8uL/rWL9o\\r\\n0L7W9fSBvOXWwz8reiwcAF/JZ5dnacZtVe0NPujDfeVIJp+9ua7hxQcegcEsIRS9CQqtF/rJN7M9\\r\\nxxCLSzEiJY8bIdRLBsfmB0uVIE2144s2tH7Q8R2fSOVbiSTH1PW3Ye0kkyCcBw==\",\"signature\":\"ed99a2ce827a4d443e2639ccfb78865e913854e2d61d1746dafb640e19cbb4f8#3793b1cac082d9e1cdfc2b7b8387a8c29e44b2f3fb35b352d02f1b2c9321e0a7\"}"
|
|
decrypt, err := Sm4Decrypt(uid, SELF_PRI, PARTY_PUB, en, true)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
t.Log(decrypt)
|
|
}
|
|
|
|
func encrypt() (string, string) {
|
|
uid := strconv.FormatInt(int64(5476377146882523149), 10)
|
|
data := "{\"pay_channel_id\":1729382256910270476,\"out_trade_no\":\"asdadasdas\",\"order_type\":1,\"amount\":1,\"desc\":\"abc\",\"ext_json\":\"\",\"app_id\":5476377146882523149,\"timestamp\":1723096731}"
|
|
en, err := Sm4Encrypt(uid, PARTY_PRI, SELF_PUB, data, "", true)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
return uid, en
|
|
}
|