当前位置:  开发笔记 > 后端 > 正文

您如何测试公共/私人DSA密钥对?

如何解决《您如何测试公共/私人DSA密钥对?》经验,为你挑选了6个好方法。

有一种简单的方法可以验证给定的私钥是否与给定的公钥匹配?我有一些*.pub和一些*.key文件,我需要检查哪个与哪个.

同样,这些是发布/密钥文件,DSA.

我真的更喜欢某种单线......



1> Loki..:

我找到了一种似乎对我更有效的方法:

ssh-keygen -y -f 

该命令将输出给定私钥的公钥,因此只需将输出与每个*.pub文件进行比较.


这究竟是做什么的?为什么ssh?
可能是因为他使用密钥对进行ssh身份验证
在我的情况下,一个中央工作服务器有几十个`id_rsa.pub.blahhost`文件,我不知道哪一个匹配孤独的`id_rsa`私钥和我设置无密码scp所以我可以迁移旧网站.制作新的密钥对不是一种选择; 我的钥匙设置得很好而且不会搞砸了.

2> 小智..:

我总是使用这些命令比较模数的MD5哈希值:

Certificate: openssl x509 -noout -modulus -in server.crt | openssl md5
Private Key: openssl rsa -noout -modulus -in server.key | openssl md5
CSR: openssl req -noout -modulus -in server.csr | openssl md5

如果哈希匹配,那么这两个文件会一起出现.



3> Martin v. Lö..:

对于DSA密钥,请使用

 openssl dsa -pubin -in dsa.pub -modulus -noout

然后打印公钥

 openssl dsa -in dsa.key -modulus -noout

显示与私钥对应的公钥,然后比较它们.



4> Martin v. Lö..:

假设您拥有x.509证书中的公钥,并假设它们是RSA密钥,那么对于每个公钥,请执行此操作

    openssl x509 -in certfile -modulus -noout

对于每个私钥,请执行

    openssl rsa -in keyfile -modulus -noout

然后按模数匹配键.



5> John D...:

差异可以通过差异进行检查:

diff <(ssh-keygen -y -f ) 

唯一奇怪的是,如果文件是相同的,diff不会说什么,所以只有当公共和私人匹配时才会被告知.


在文件匹配时获取输出:`diff -s`
这是一个很好的答案。(1)`diff -qs`返回一个简单的“相同/不相同的答案。(2)您应在运行diff之前删除公钥文件中的注释。

6> Bill the Liz..:

删除公钥并从私钥生成新公钥.将它们保存在单独的目录中,或使用命名约定来保持它们的直线.


问题是询问如何验证,我们将验证它的设备可能没有生成新设备的设施.
推荐阅读
个性2402852463
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有