我有一个der格式的证书,从这个命令我生成一个公钥:
openssl x509 -inform der -in ejbcacert.cer -noout -pubkey > pub1key.pub
Run Code Online (Sandbox Code Playgroud)
结果如下:
-----BEGIN PUBLIC KEY-----
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7vbqajDw4o6gJy8UtmIbkcpnk
O3Kwc4qsEnSZp/TR+fQi62F79RHWmwKOtFmwteURgLbj7D/WGuNLGOfa/2vse3G2
eHnHl5CB8ruRX9fBl/KgwCVr2JaEuUm66bBQeP5XeBotdR4cvX38uPYivCDdPjJ1
QWPdspTBKcxeFbccDwIDAQAB
-----END PUBLIC KEY-----
Run Code Online (Sandbox Code Playgroud)
我怎样才能获得这样的公钥?来自证书还是来自这个公钥?
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAgQC7vbqajDw4o6gJy8UtmIbkcpnkO3Kwc4qsEnSZp/TR+fQi62F79RHWmwKOtFmwteURgLbj7D/WGuNLGOfa/2vse3G2eHnHl5CB8ruRX9fBl/KgwCVr2JaEuUm66bBQeP5XeBotdR4cvX38uPYivCDdPjJ1QWPdspTBKcxeFbccDw==
Run Code Online (Sandbox Code Playgroud)
这是通过以下命令获得的:
ssh-keygen -y -f private_key1.pem > public_key1.pub
Run Code Online (Sandbox Code Playgroud) 我想从php生成ssh keypair任何人都可以指导我如何做到这一点?我已经尝试了shell_exec,但是shell会询问问题,因此命令不起作用.我想指定生成后放置密钥的文件名和路径.
ssh-keygen和openssl是否可以从同一私钥生成两个不同的公钥?Command ssh-keygen -y -f ./my.key会给(ssh-rsa同一行之后的内容)与使用command 生成的一个(在-----BEGIN PUBLIC KEY-----和之间的内容)不同的公共密钥。-----END PUBLIC KEY-----openssl rsa -in my.key -pubout