关于公钥私钥生成的问题

2018-12-17 17:04:22 +08:00
 daijinming

最近在学习 JWT 中的公钥私钥签名的课题,我看到有介绍

ssh-keygen -t rsa -b 2048 -f private.key #生成私钥 openssl rsa -in private.key -pubout -out public.key # 生成公钥

为什么这个撕裂,我看生成私钥的时候,好像还是有个公钥的文件,为什么还要用 openssl 再次生成公钥,而且两次看到的公钥还不一样,这到底是为什么?

2040 次点击
所在节点    程序员
6 条回复
ShineSmile
2018-12-17 17:36:10 +08:00
中了撕裂状态的话 原地蹲五秒钟或者吃星辰肉干或者刺身鱼就好了
zbinlin
2018-12-17 17:51:33 +08:00
公钥格式不一样,你打开 private.key.pub 和 public.key 对比下就知道了。

PS:既然用 openssl 来转公钥,为什么不用 openssl 来生成呢?
PS:既然用 ssh-keygen 生成私钥,不什么不也用 ssh-keygen 来转换公钥呢?
GTim
2018-12-17 17:53:56 +08:00
因为 ssh-keygen 它生成的密钥是用于 ssh 登录的。而 ssh 登录必须要一对密钥对,这是一个单独的命令,和 openssl 没有任何关系 ( 说起来还是有关系的 )
jswh
2018-12-17 18:47:10 +08:00
只是转了一下格式
qwx
2018-12-18 11:19:51 +08:00
@ShineSmile 中了怪猎的邪 2333
kaiser1992
2018-12-18 11:29:57 +08:00
公钥和私钥难道不是同时成对生成的么?

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

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

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

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

© 2021 V2EX