牛牛在线工具

openssl_dh_compute_key()

收录 8868 个 PHP 函数,含用途说明与用法示例。

openssl_dh_compute_key()

使用Diffie-Hellman密钥交换协议计算共享密钥

函数名称:openssl_dh_compute_key() 函数描述:该函数使用Diffie-Hellman密钥交换协议计算共享密钥。 参数: $pub_key: 公钥字符串。 $dh_key: Diffie-Hellman密钥资源。 返回值:成功时返回共享密钥的字符串,失败时返回false。 适用版本:PHP 5 >= 5.3.0, PHP 7 示例: // 创建Diffie-Hellman密钥对 $dh_config = [ "private_key_bits" => 2048, "private_key_type" => OPENSSL_KEYTYPE_DH, ]; $dh_res = openssl_pkey_new($dh_config); openssl_pkey_export($dh_res, $dh_priv_key); $dh_details = openssl_pkey_get_details($dh_res); $pub_key = $dh_details['dh']['pub_key']; // 计算共享密钥 $shared_key = openssl_dh_compute_key($pub_key, $dh_res); echo "共享密钥: " . bin2hex($shared_key) . "\n"; 在上面的示例中,我们首先使用openssl_pkey_new()函数创建了一个Diffie-Hellman密钥对,并使用openssl_pkey_export()导出私钥。然后,我们使用openssl_pkey_get_details()函数获取公钥。接下来,我们使用openssl_dh_compute_key()函数计算共享密钥。最后,我们将共享密钥以十六进制字符串的形式打印出来。 请注意,为了运行此示例,您的PHP版本必须为5.3.0或更高,并且必须启用OpenSSL扩展。