Https 重用公钥/私钥

Https 重用公钥/私钥,https,openssl,intranet,Https,Openssl,Intranet,我正在编写一个程序,该程序旨在通过本地wifi网络使用。为了提供一些安全性,我正在考虑让设备通过本地https连接。使用openssl生成一个自签名密钥对,然后分发一个使用完全相同的私钥和公钥的软件包,这被认为是一种常见做法吗?我会说不,因为可以从软件包中提取密钥,并且可以解密数据 您应该在安装包后生成一个密钥,以便它对安装是唯一的。私钥只能由创建它的人使用。如果您将私钥分发给任何其他方,它就会受到危害,并且您无法保证使用此密钥的任何安全性 所以答案是:您应该在每个客户机上生成密钥对,并且只分发

我正在编写一个程序,该程序旨在通过本地wifi网络使用。为了提供一些安全性,我正在考虑让设备通过本地https连接。使用openssl生成一个自签名密钥对,然后分发一个使用完全相同的私钥和公钥的软件包,这被认为是一种常见做法吗?

我会说不,因为可以从软件包中提取密钥,并且可以解密数据


您应该在安装包后生成一个密钥,以便它对安装是唯一的。

私钥只能由创建它的人使用。如果您将私钥分发给任何其他方,它就会受到危害,并且您无法保证使用此密钥的任何安全性


所以答案是:您应该在每个客户机上生成密钥对,并且只分发公钥。即使在这种情况下,您也应该了解存在“中间人”攻击的风险。

那么我应该如何每次生成一个新密钥呢?我应该在安装文件中包含openssl吗?最好的方法是创建一个脚本,该脚本生成密钥对并通过单击将公钥发送到服务器。据我所知,OpenSSL许可证允许您无限制地重新分发它。所以答案是肯定的。您应该在软件中包含openssl发行版,并生成生成密钥对并将公钥发送到服务器的脚本。