阅读量:0
在PHP中,你可以使用openssl_pkey_new
和openssl_pkey_export
函数来创建一个密钥对并将其导出为PEM格式。以下是一个简单的示例:
<?php // 生成RSA密钥对 $privateKey = openssl_pkey_new([ "digest_alg" => "sha256", "private_key_bits" => 2048, ]); // 导出私钥为PEM格式 $privateKeyPem = openssl_pkey_export($privateKey, $privateKeyPem, null, [ "openssl_key_algorithm" => "RSA", "openssl_key_type" => "private", ]); if ($privateKeyPem === false) { die("无法生成私钥\n"); } echo "私钥:\n" . $privateKeyPem . "\n"; // 导出公钥为PEM格式 $publicKeyPem = openssl_pkey_export($privateKey, $publicKeyPem, null, [ "openssl_key_algorithm" => "RSA", "openssl_key_type" => "public", ]); if ($publicKeyPem === false) { die("无法生成公钥\n"); } echo "公钥:\n" . $publicKeyPem . "\n"; ?>
这个示例将生成一个2048位的RSA密钥对,并将私钥和公钥分别导出为PEM格式的字符串。你可以将这些PEM格式的密钥文件保存到磁盘上,以便在其他地方使用。
请注意,这个示例仅用于演示目的。在实际应用中,你可能需要考虑更多的安全因素,例如密钥管理、加密和解密等。