gpt4 book ai didi

python - 制作 OpenSSL key 时要为 commonName 添加什么?

转载 作者:太空宇宙 更新时间:2023-11-03 13:19:32 26 4
gpt4 key购买 nike

我有一个应用程序应用程序框架,它在网络上的未命名主机之间以对等方式工作。我想对流量进行加密,所以我使用 M2Crypto 实现了一个设置,但我遇到了麻烦。我不知道在创建证书时要为“commonName”写些什么。它似乎想要一个域名,但运行它的计算机都没有。我只是将“temphost”作为 commonName,但显然这是一个重要参数。我在尝试测试时得到了这个:

M2Crypto.SSL.Checker.WrongHost: Peer certificate commonName does not match host, expected 127.0.0.1, got temphost

有没有办法泛化 commonName?

最佳答案

因此,根据您对我的第一个回答的评论,我决定提供另一种可能适用于您的情况的解决方案。创建您自己的 CA 证书和 key 。然后在您的同行中告诉 M2Crypto 只接受由该 CA 签名的证书(请参阅这个旧的 stackoverflow 问题以了解要使用的 API:What is the difference between M2Crypto's set_client_CA_list_from_file() and load_verify_info() and when would you use each?)。

然后在您的脚本的早期执行此操作:

from M2Crypto import SSL
SSL.Connection.clientPostConnectionCheck = None

或者如果您需要能够建立其他类型的 SSL 连接,请查看您是否可以控制 SSL.Connection 对象的创建并使用合适的检查器调用它们的 set_post_connection_check_callback()。

在此之后,您的对等点应该接受任何其他对等点,只要该对等点的证书仅由您的 CA 签署即可。

如果您能想到任何可以在连接后检查中验证的额外信息,您可以将该信息放入证书中(可能在 commonName 中)并编写您自己的检查器来使用(而不是上面的无)。

关于python - 制作 OpenSSL key 时要为 commonName 添加什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2150048/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com