5

我正在与我们的客户服务器通信。对于 api,我需要用我的私钥签署一个字符串。他们有以下条件要遵循

  1. 使用 SHA 256 算法计算字符串的哈希值
  2. 使用私钥和 RSA (PKCS1_PADDING) 算法对哈希值进行签名。
  3. Base64 编码加密的哈希值

我正在关注

from Crypto.Signature import PKCS1_v1_5
from Crypto.Hash import SHA256
from Crypto.PublicKey import RSA
import base64


pkey = RSA.importKey(keystring)

message = "Hello world"

h = SHA256.new(message.encode())
signature = PKCS1_v1_5.new(pkey).sign(h)
result = base64.b64encode(signature).decode()

在这里,我得到一个字符串作为结果。但在服务器端,我的签名不匹配。

我有什么问题吗?谁可以帮我这个事 ?

4

0 回答 0