验证和解密用pvk生成的签名.key和BouncyCastle加密api



我有一个使用"foo "的applet。使用BouncyCastle api生成privateKey对象。然后使用privateKey对象和字符串(如"MYNAMEHERE")创建签名。我只知道用来生成这个签名的算法是RSA。

我想做的是在PHP中解密(或验证)这个签名。我有两个文件publicKey (file.cer)和privateKey (file.key),用于在Java中生成privateKey对象。

我尝试使用openssl_verify函数在PHP中,传递值:
openssl_verify("MYNAMEHERE", $signature, "file.cer"),其中$signature包含Java中生成的签名对象的字符串表示:new String (signature).

我不知道这个过程是否正确来验证签名,或者在使用这个函数之前我必须做什么样的编码/解码过程。

我希望有人给我指出正确的方向!

提前感谢!

您没有提供足够的信息,例如实际的签名或它是如何编码的。通常RSA指的是使用SHA-1的pkcs# 1 1.5模式下的RSA, SHA-1或多或少是目前使用的默认签名生成/验证算法。在这种情况下,验证应该按照您所描述的进行。不再需要密码,它可能只是用于解密私钥。您仍然可以使用私钥来查看PHP/openssl中的签名是否创建了相同的数据。如果没有,则可能使用了不同的散列或pkcs# 1 v2.1签名。

最新更新