寻找与Java bouncycastle SHA256withRSA签名等效的C w / openssl

时间:2018-08-07 16:50:23

标签: c openssl rsa bouncycastle

好吧,我已经为此努力了两天。我需要使用openssl库在c语言中进行编码,等效于以下java代码:

    byte[] result = null;
    Signature st = Signature.getInstance(BC_PROV_ALGORITHM_SHA256RSA, "BC");
    st.initSign(privateKey);
    st.update(data);
    result = st.sign();
    return result;

最明显的方法是

RSA_sign( NID_sha256, ( const BYTE* ) pszMessage256Hash, 
strlen( pszMessage256Hash), ( unsigned char *) pSignature, 
&iSignLen, pPrivateMerchantKey )

已经检查了密钥是否相同,并且pszMessage256Hash的内容与Java中的“ data”变量相同。由于填充的原因,每次的结果都不同,但是服务器端验证拒绝了第二个签名。

如我所说,任何帮助将不胜感激,我在此上浪费了太多时间。

0 个答案:

没有答案