收藏
回答

小程序 同城配送 ,参数加密和签名都有,但是一直在报参数错误,求助如何解决?

接口返回:40097 invalid args rid: 65254d19-7061422e-6c9563ba


golang 签名算法
func GetSign(msg []byte, path string) string {
    privateKey := GetRsaPrivateKey(path)
    bytes := sha256.Sum256(msg)
    opts := &rsa.PSSOptions{SaltLength: 32, Hash: crypto.SHA256}
    sig, e := rsa.SignPSS(rand.Reader, privateKey, crypto.SHA256, bytes[:], opts)
    if e != nil {
       g.Log().Errorf(ctx, "sign error, %v", e)
    }
    return gbase64.EncodeString(string(sig))
}


golang  加密算法
func Encrypt(data interface{}, privateKey string, iv []byte, aad string) []byte {
    key, _ := gbase64.DecodeString(privateKey)
    block, err := aes.NewCipher(gconv.Bytes(key))
    if err != nil {
       panic(err)
    }
    gcm, err := cipher.NewGCMWithNonceSize(block, 16)
    if err != nil {
       panic(err)
    }
    return gcm.Seal(nil, iv, gconv.Bytes(data), gconv.Bytes(aad))
}


最后一次编辑于  2023-10-10
回答关注问题邀请回答
收藏
登录 后发表内容