【问题标题】:Can't create a new OpenSSL key [duplicate]无法创建新的 OpenSSL 密钥 [重复]
【发布时间】:2013-01-03 13:16:45
【问题描述】:

我想学习 OpenSSL,但当我尝试使用此代码时却收到了 boolean false

$config = array('private_key_bits' => 512);
$privKey = openssl_pkey_new($config);

var_dump($privKey);

OpenSSL 扩展已在我的服务器上激活。我错过了什么吗?

【问题讨论】:

    标签: php windows openssl xampp


    【解决方案1】:

    在你的 openssl_* 函数被调用后使用openssl_error_string()

    while($e = openssl_error_string() ) {
        print_r($e."\n");
    }
    

    在我的 Windows 上它输出:

    error:02001003:system library:fopen:No such process
    error:2006D080:BIO routines:BIO_new_file:no such file
    error:0E064002:configuration file routines:CONF_load:system lib
    error:02001003:system library:fopen:No such process
    error:2006D080:BIO routines:BIO_new_file:no such file
    error:0E064002:configuration file routines:CONF_load:system lib
    

    查看此函数openssl_pkey_new()的第一个注释:

    注意:您需要为此功能安装有效的 openssl.cnf 才能正确操作。请参阅安装部分下的说明 更多信息。

    【讨论】:

    • 啊!所以这就是我收到这些错误消息的原因。谢谢:)
    • 好的,但是现在呢?我得到了这个错误,我停止了......
    猜你喜欢
    • 2016-10-28
    • 1970-01-01
    • 2013-06-14
    • 2022-12-04
    • 2014-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-14
    相关资源
    最近更新 更多