引言
要在Windows或Linux上执行以下操作,必须确保系统上已经安装了OpenSSL。
从Linux开始讲起,因为其用途最为广泛,OpenSSL也源自于此。
生成私钥,只需执行以下命令:
openssl genrsa -out rsa.private 1024
如果需要生成长度更短的密钥,可以将1024改为512。不过,理论上可以调整为比512更小的数值,但不建议这样做。仅支持512、758、1024、1536、2048几个固定的长度值,不要随意更改。
俗话说,一寸长一寸强,一寸短一寸险。密钥长度越长,加密强度越大,破解难度也越高。
执行上述命令后,将会在当前目录中生成一个名为rsa.private的文件。这个名字易于记忆,本质上这是一个文本文件。
接下来生成公钥。公钥需要使用刚才生成的私钥来创建。公钥可以在网络上传输而不必担心泄露。就像一把钥匙和一把锁,单独拿走钥匙或锁,找不到另一半,加密的字符串就无法被破解。
openssl rsa -in rsa.private -out rsa.public -pubout -outform PEM
执行上述命令后,将会在当前目录中生成一个名为rsa.public的文件,文件内容即为公钥。
在Windows上,OpenSSL也提供了安装包。同样需要在cmd命令行中执行以下命令。生成步骤和方法与Linux相同,这里不再赘述。以下是两条命令,按顺序执行即可。
openssl.exe genrsa -out rsa.private 1024 openssl.exe rsa -in rsa.private -out rsa.public -pubout -outform PEM
操作实践,光说不练假把式,我们使用上述命令生成一对公钥和私钥。看看它们是什么样子。为了普遍适用,我们使用1024位的加密长度。
以下是生成的私钥:
-----BEGIN RSA PRIVATE KEY-----MIICXgIBAAKBgQDbSmlzll/Wshw06S4DdhwwcWsa+nSibfjwaq888CPNic0/7Xq7VRytNerQeDW8G3todF6fMJSIroFRd0v7Af12P7qXubOqJts/NLA7/W3GhJ8wt2T8L0ThYzb2S8GyRGHsP/iGemVx3UuB1ajRhUBJfsi5yQw8LqT5hEYG4nk0twIDAQABAoGACpjS9bn7kaVzxX7LMXGgtRqWAWy+/CZyVDPjmf9Ey6bwGzm/p5PaWeh0G3Tjq95sHUUaWXkAhIZiS2yHaG7VL63BtBsXa/5NLPIRO7aXeNVRScWGzrxyd3SBscgbKLXId/OvvhrH57MvEjF+Anqk4Gh+2FspfBKOJdwAYucIklECQQD4jE40Vown3pO5l9fBeZu2f1OxDoaONhoJGBSzaFZf7OrAF6DjTviWKVs5XOwpMTdac8nNx/TBTTw+/KxiwklfAkEA4d2LqM6Zxk8ZoyyeIA0cRarj1GqlivlI7jIYqK6nO+eRiE9VGSX0dgkP2ctfckJlXtW3o9FQjt7wv+QoWR5bqQJBAMhK4NbCjA2xCyC74Y2zfy0xLHN5fitqI88CTeRKB5kj5gVIxUmIoUD5MN9oJ5QGalIFDzI6md2QbSVhH1YytUcCQQC8QGop3WC/r6f/n61/q024J1HS9rxZU6LcnTZ+SWurezuKMA0Oc9sIEk96yI4Z7osM+vYffNM28UwZs/GJLctZAkEAu0HGDVmwc8ZZPXi5f6SfKteOS6dBm7jc6ZEUqTtc6XckXhra2gsrMwpbswsSQ/Eh4u3TfeXW9AJXsmhAaXQsuw==-----END RSA PRIVATE KEY-----
以下是使用私钥生成的公钥文件内容:
-----BEGIN PUBLIC KEY-----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDbSmlzll/Wshw06S4DdhwwcWsa+nSibfjwaq888CPNic0/7Xq7VRytNerQeDW8G3todF6fMJSIroFRd0v7Af12P7qXubOqJts/NLA7/W3GhJ8wt2T8L0ThYzb2S8GyRGHsP/iGemVx3UuB1ajRhUBJfsi5yQw8LqT5hEYG4nk0twIDAQAB-----END PUBLIC KEY-----
是不是超级简单快捷,就拥有了一对高强度的加密字符串?
结语
在应用程序中,如果不想将接口数据暴露给外部访问,但又不想使用单向加密,那么RSA的公钥私钥就大有用武之地了。不对称加密就是这么好用。
Happy coding :)
以上就是短文:真够劲儿!openssl生成公钥私钥,加密接口数据!这俩指令的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号