gpt4 book ai didi

php - 如何在 php 中使用 openssl 以正确的格式提取公钥?

转载 作者:行者123 更新时间:2023-12-02 05:43:09 24 4
gpt4 key购买 nike

我用不同的方法做了很多尝试,在 php 中使用 openssl 以可显示的格式提取公钥。例如

print_r(openssl_pkey_get_details(openssl_csr_get_public_key(\path to csr)));

var_dump(openssl_get_publickey(file_get_contents('\\path to cert'))); 

还有更多。但我所能得到的是这样的:

-----开始公钥-----MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQClNami19DpcxlYAaZNxHV27r2V gDQbkZhiayaDfcwjYStRaU8Hk1yg76gfhgayssIa6Y7Cek4uH5fV PE6Nj/s9QAkcvpzZDJasdYmj8BGyVwVbRelToMNvXTc eNaH93Dm+OA4TE9yoQIDAQAB

-----结束公钥-----

如何按照下面给出的格式提取它:

95 ae 9a 4e db f1 6d 15 55 9f 86 52 28 54 21 3f88 1b 21 81 2a 01 e3 35 dd 21 51 44 f4 18 bf 85fb f0 6a 9a 9c 15 7f 46 83 b8 1e 05 b7 b9 1a9d fd 58 0b fa 45 01 f2 3b 3b bc 1b f6 a3 20 7b96 3e f7 5d d6 c2 a7 56 29 02 94 ba 0c 29 da 51

谢谢。

最佳答案

浏览器列出的公钥只是模数的十六进制编码。在 openssl_pkey_get_details 返回的数据结构中,这由 n 表示。 (如果您想知道为什么,请查看 RSA 算法。)要在 PHP 中获取它,只需执行以下操作:

$pkey_details = openssl_pkey_get_details(openssl_pkey_get_public(file_get_contents("test.pem")));
echo bin2hex($pkey_details["rsa"]["n"]);

关于php - 如何在 php 中使用 openssl 以正确的格式提取公钥?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10678622/

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