定义和用法
这个openssl_pkey_get_public()函数将返回您的公钥。
描述
函数 openssl_pkey_get_public() 从给定的证书返回公钥,以便它可以与其他函数一起使用。
用法
openssl_pkey_get_public ( mixed $certificate ):resource
参数
Sr.No | 参数 | 描述 |
---|---|---|
1 |
certificate |
您可以使用以下证书: 1.一个X.509证书资源 2. 来自文件的公钥,格式为 file://path/to/file.pem。 3. PEM 格式的公钥。 |
返回值
如果没有错误,PHP openssl_pkey_get_public() 函数将返回一个正资源标识符。如果失败,它将返回 false。
PHP版本
此函数适用于 5.0.0 以上的 PHP 版本。
例子1
使用 X.509 证书使用 openssl_pkey_get_public() -
<?php
$dn = array(
"countryName" => "IN",
"stateOrProvinceName" => "Karnataka",
"localityName" => "test1",
"organizationName" => "test2",
"organizationalUnitName" => "test3",
"commonName" => "www.test.com",
"emailAddress" => "xyz@test.com"
);
// Generate a new private /public key pair
$privkey = openssl_pkey_new();
// Generate a certificate
$csr = openssl_csr_new($dn, $privkey, array('digest_alg' => 'sha256'));
$res_cert = openssl_csr_sign($csr, null, $privkey, 365);
openssl_x509_export($res_cert, $x_509_certificate);
echo $res_pubkey = openssl_pkey_get_public($x_509_certificate);
?>
这将产生以下结果 -
Resource id #5
例子2
使用 .pem 文件处理 openssl_pkey_get_public() -
<?php
$dn = array(
"countryName" => "IN",
"stateOrProvinceName" => "Karnataka",
"localityName" => "test1",
"organizationName" => "test2",
"organizationalUnitName" => "test3",
"commonName" => "www.test.com",
"emailAddress" => "xyz@test.com"
);
// Generate a new private /public key pair
$privkey = openssl_pkey_new();
// Generate a certificate
$csr = openssl_csr_new($dn, $privkey, array('digest_alg' => 'sha256'));
$res_cert = openssl_csr_sign($csr, null, $privkey, 365);
openssl_x509_export_to_file($res_cert, 'C:/xampp/htdocs/modules/openssl/x_509.pem');
echo $res_pubkey = openssl_pkey_get_public(file_get_contents('C:/xampp/htdocs/modules/openssl/x_509.pem'));
?>
这将产生以下结果 -
Resource id #7
相关用法
- PHP openssl_pkey_export()用法及代码示例
- PHP openssl_pkey_new()用法及代码示例
- PHP openssl_pkey_export_to_file()用法及代码示例
- PHP openssl_pkcs12_export()用法及代码示例
- PHP openssl_pkcs12_export_to_file()用法及代码示例
- PHP openssl_pkcs12_read()用法及代码示例
- PHP openssl_public_decrypt()用法及代码示例
- PHP openssl_private_encrypt()用法及代码示例
- PHP openssl_public_encrypt()用法及代码示例
- PHP openssl_private_decrypt()用法及代码示例
- PHP openssl_get_cert_locations()用法及代码示例
- PHP openssl_cipher_iv_length()用法及代码示例
- PHP openssl_spki_verify()用法及代码示例
- PHP openssl_get_curve_names()用法及代码示例
- PHP openssl_get_cipher_methods()用法及代码示例
- PHP openssl_spki_export_challenge()用法及代码示例
- PHP opendir()用法及代码示例
- PHP output_add_rewrite_var()用法及代码示例
- PHP octdec( )用法及代码示例
- PHP ord()用法及代码示例
注:本文由纯净天空筛选整理自 PHP - Function openssl_pkey_get_public()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。