openssl linux 和 windows 下 密钥签名结果不一致

发布于 2022-09-05 02:18:33 字数 305 浏览 11 评论 0

Q1: linux 下使用

echo aaaaa | openssl rsautl -sign -inkey xxxx.pem | openssl enc -base64 

得到的值与
windows 下相同的操作得出来的值 不同

Q2:上面 linux 下的命令,用 python 处理的话怎么写?

ps : 尝试了多种方法,得出来的签名后的值都与 linux 下的不同。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

素年丶 2022-09-12 02:18:33

"echo aaaaa"输出的结果带回车,即“aaaaa\n”,要输出纯字符串“aaaaa”的话需要使用"echo -n aaaaa",不确定是不是这个原因,仅供参考

心是晴朗的。 2022-09-12 02:18:33

实际上问题出在linux和windows输出时字符时的问题,在Linux上会追加\n,而在Windows上会追加\r\n。对于这种情况,可以使用python来进行兼容:

import base64
data = 'aaaaa'
base64.b64encode(data)
>>> 'YWFhYWE='

而你中间还有1个加密的过程,这里会不展示了。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文