最近在做一个项目,合作方服务端是 Java 的,客户端用 C++开发。
通信过程中涉及到 sha256 摘要计算和 RSA 签名,接收方使用公钥进行验签名。
现在的问题是,Java 自带摘要和签名、验签程序,而 C++使用的 openSSL 库开发的。到了这里,两种方式都可以计算签名,都可以自己对自己验签,但问题是计算出来的签名结果不一致,两方协作就出现问题了。
直接贴出测试代码了,希望有经验的大神能指正一下!小弟感激了!
1
taozhijiangscu OP |
2
misaka19000 2017-05-27 22:12:16 +08:00
为什么要用百度云。。。下载速度为零
|
3
BOYPT 2017-05-27 22:16:25 +08:00
显然是两方的签名参数不对嘛,不用看代码知道(而且这么麻烦
|
4
taozhijiangscu OP |
5
taozhijiangscu OP |
6
BOYPT 2017-05-27 22:37:32 +08:00
@taozhijiangscu
关键字 openssl java rsa signature 扔到 google 可以找到这个 so 的问题,里面可详细了 https://stackoverflow.com/questions/13419201/why-are-the-rsa-sha256-signatures-i-generate-with-openssl-and-java-different |