关于 openSSL 和 Java 进行签名和验签的问题

2017-05-27 20:53:33 +08:00
 taozhijiangscu

最近在做一个项目,合作方服务端是 Java 的,客户端用 C++开发。
通信过程中涉及到 sha256 摘要计算和 RSA 签名,接收方使用公钥进行验签名。
现在的问题是,Java 自带摘要和签名、验签程序,而 C++使用的 openSSL 库开发的。到了这里,两种方式都可以计算签名,都可以自己对自己验签,但问题是计算出来的签名结果不一致,两方协作就出现问题了。

直接贴出测试代码了,希望有经验的大神能指正一下!小弟感激了!

3533 次点击
所在节点    程序员
6 条回复
taozhijiangscu
2017-05-27 20:56:32 +08:00
代码贴上了,大家也可以研究一下,最好能帮忙看看

https://pan.baidu.com/s/1slnW1nZ
misaka19000
2017-05-27 22:12:16 +08:00
为什么要用百度云。。。下载速度为零
BOYPT
2017-05-27 22:16:25 +08:00
显然是两方的签名参数不对嘛,不用看代码知道(而且这么麻烦
taozhijiangscu
2017-05-27 22:28:59 +08:00
@misaka19000

看来服务器压力大降级了呗 ……
taozhijiangscu
2017-05-27 22:29:21 +08:00
@BOYPT

…… 前辈,给点建设性操作性的方案赛
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

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/364329

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX