php使用openssl生成公钥私钥

1、确保你的 PHP 环境已经启用了 OpenSSL 扩展

    $config = array(
        "digest_alg" => "sha1",
        "private_key_bits" => 1024,
        "private_key_type" => OPENSSL_KEYTYPE_RSA,
        "config" => 'C:\phpstudy_pro\Extensions\Apache2.4.39\conf\openssl.cnf',
    );
    // 创建一个新的私钥和公钥对
    $res = openssl_pkey_new($config);
    // 检查是否成功生成密钥对
    if ($res === false) {
        die("无法生成密钥对:" . openssl_error_string());
    }

    // 提取私钥
    openssl_pkey_export($res, $privateKey, NULL, $config); // <-- CONFIG ARRAY

    // 生成公钥
    $publicKey = openssl_pkey_get_details($res);
    $publicKey = $publicKey["key"];
    echo "私钥:<br/>" . $privateKey . "<br/>";
    echo "公钥:<br/>" . $publicKey . "<br/>";

    // 释放资源
    openssl_free_key($res);

2、使用 OpenSSL 命令生成 公钥和私钥

1. 生成 1024 位 RSA 私钥
  openssl genpkey -algorithm RSA -out private_key.pem -pkeyopt rsa\_keygen\_bits:1024
2. 从私钥中提取公钥
 openssl rsa -pubout -in private_key.pem -out public\_key.pem
posted @   成文的博客  阅读(363)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示