From 1e45fdb22217bc88839c335382326d15ff5e44f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=AD=90=E9=93=AD?= Date: Wed, 19 Mar 2025 19:25:36 +0800 Subject: [PATCH] =?UTF-8?q?iv=E9=95=BF=E5=BA=A6=20=E5=88=A4=E5=AE=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- internal/pkg/cmb/sm2.go | 9 ++++----- internal/pkg/cmb/sm2_test.go | 3 ++- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/internal/pkg/cmb/sm2.go b/internal/pkg/cmb/sm2.go index 5cced33..f25bef3 100644 --- a/internal/pkg/cmb/sm2.go +++ b/internal/pkg/cmb/sm2.go @@ -93,13 +93,12 @@ func Decrypt(privateKey, input string) (string, error) { return "", err } - kvArr := strings.Split(string(kvTmp), "|") - if len(tmpDataArr) != 2 { - return "", fmt.Errorf("数据格式错误!") + if len(kvTmp) != 33 { + return "", fmt.Errorf("iv长度不等于33") } - plainKey := []byte(kvArr[0]) - plainIv := []byte(kvArr[1]) + plainKey := kvTmp[0:16] + plainIv := kvTmp[17:33] data2, err := base64.StdEncoding.DecodeString(encryptedBody) if err != nil { diff --git a/internal/pkg/cmb/sm2_test.go b/internal/pkg/cmb/sm2_test.go index 5d53231..0944e0c 100644 --- a/internal/pkg/cmb/sm2_test.go +++ b/internal/pkg/cmb/sm2_test.go @@ -28,7 +28,8 @@ func TestDecrypt(t *testing.T) { priKey := "8d39ff3d2559258c163f4510f082727f51531e1953ab203d5ab1ea4a6d94fd73" //content := "BAdcIauIjNx3LsrplpJiZoljE4hCiGHra6ulhgG1qL0tKcAeenX+Z9VaHfXLSdkji1fYBpdZiiI35R0vFtnXPXJCJdHsGbfbae+PzNznYQS3KM8/90Y/FIWzSoszfUiF6fAuv8I6v9kQuqHUTidHeHyICDoyvJ0nhbNyUyg85bAKd6TmkVX1MgXLQ81m|5KfR/5UkpVBEQv1dx+iJbojOykNRuDV8Gsy3QOIlRI+cZvafRRPUUG6eeixnPMumhOvyZwsSG/OBeg0U/lSlAepg12tXWcQ601wjgyLaKN1iMvb1DCtfnJFAm8EWAc2SLH3NQuyhxGe/jgCXvj0wGphh4vBUzm8la8i8Aij0BI5lfgU5OzglkKDln6zHN3vBHDqOurEh18eU6z1bfvNnDpzdwEcygcEIH/6lGiqVnGH+C2+QpcKeCnj5qKGFiuSC" - content := "BDUuuPClIlUKDJdpHtNBIU6u5JTetrVG53AfKDSrhah9Q0QZWAj3K5pZF8G/HFtzj/KvbrHfP/gnHri0L7L91HaKYYc1vqy/q8Z69v7MEiIWL2LeLOsc2b0cHmnt7Qey5aZzYVbZJJNhus2gvhahGwOPpPL50JFC8IqAlU4+E/kUBgx+RgzAIkLLs8Se|k1WOt2Eb+xkxSobw/1DaLblguznhnsk1ga87sfqrrPATRuTyszzdVrRtCUuUHRKJ+vQwlZAR1ypkBC1vPMdt8zccI/CeNof+4Ap23enbQwTJQ4KRvij4kbJd6ycY97B+vHnI+oSnwfmjK0EWNUeRrCr2Uau7yxmzlFwJHprbgPZpHVuUjAzMIXNixOfxSTdc9dL+j3/tR7+yookvd9W3hNm96XZFPTheI0FqUKkbKWUUcVs4lC1/yEgjwXFcD4NM" + //content := "BDUuuPClIlUKDJdpHtNBIU6u5JTetrVG53AfKDSrhah9Q0QZWAj3K5pZF8G/HFtzj/KvbrHfP/gnHri0L7L91HaKYYc1vqy/q8Z69v7MEiIWL2LeLOsc2b0cHmnt7Qey5aZzYVbZJJNhus2gvhahGwOPpPL50JFC8IqAlU4+E/kUBgx+RgzAIkLLs8Se|k1WOt2Eb+xkxSobw/1DaLblguznhnsk1ga87sfqrrPATRuTyszzdVrRtCUuUHRKJ+vQwlZAR1ypkBC1vPMdt8zccI/CeNof+4Ap23enbQwTJQ4KRvij4kbJd6ycY97B+vHnI+oSnwfmjK0EWNUeRrCr2Uau7yxmzlFwJHprbgPZpHVuUjAzMIXNixOfxSTdc9dL+j3/tR7+yookvd9W3hNm96XZFPTheI0FqUKkbKWUUcVs4lC1/yEgjwXFcD4NM" + content := "BB6AXQSC+ZGUudJrAxUDSzdDRDooDXZkTMZkUQyHjDFI6s/9dwtNS2ZgM68Yj7x2e5d4mjIrnKh58m3ut12glqF34tFM+L3OfaWPUHstybr0MoEqerRVKcQCKFUTmVCaM8z4aVEGCqOWJ2i0BbPSGN/kL0BmRHF6npQwEE2kGDLPAkE6n3h9soCJLzr2|w078/Op8yMsZ3hN9C0s9oWWh8HPrkCte52UTvEBF1KT/wUwDZH8OHtoePQ2SkiikdSnUNz5Sc6VijIjpkaJjEtOCVLx7KZ+lQPu/6GFdyQLdHNpUdRZsA2NDw/6+hzGQOCZ1sAi3CQdIHwRxZkfiXfWMMrtygUD+evUUDoSr1U/YkK4HxC7wRa9Kmxmk/AK8aMcaTi78M5vmUp+CE50TDl40G+//+75cw6IZp1L/nCXbEml+9flMfxoc1RuYSXlj" decryptStr, err := Decrypt(priKey, content) if err != nil {