當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


PHP openssl_pkey_export()用法及代碼示例


openssl_pkey_export()函數是PHP中的內置函數,用於查看和管理私鑰和公鑰。它將鍵的可導出表示形式轉換為字符串。它將 key 導出為PEM編碼的字符串並存儲以通過引用傳遞。

用法:

bool openssl_pkey_export( mixed $key, string $out [, string $passphrase [, array $configargs ]])

參數:該函數接受上述和以下所述的四個參數。

  • $key:該 key 作為PEM編碼的字符串傳遞。
  • $out:此變量通過引用傳遞,該引用在成功執行以上函數時將保持PKCS#12。
  • $passphrase:此參數用於控製對計算機係統,程序或數據的訪問。
  • $configargs:“configargs”參數用於初始化請求。通過將配置 key 值設置為將要使用的文件路徑,開發人員還可以提及替代的openssl配置文件。

返回值:如果成功,此函數將返回TRUE,否則將返回FALSE。

以下示例程序旨在說明PHP中的openssl_pkey_export()函數。



程序:

PHP

<?php  
  
// Create the keypair 
$res = openssl_pkey_new(); 
       
// Get private key 
openssl_pkey_export($res, $privkey,  
                    "PassPhrase number 1");  
{ 
        
    // Get details of public key 
    $pubkey = openssl_pkey_get_details($res); 
    $pubkey = $pubkey["key"]; 
    var_dump($privkey); 
    var_dump($pubkey); 
} 
  
?>  

輸出:

string(1854) "-----BEGIN ENCRYPTED PRIVATE KEY-----
MIIFHDBOBgkqhkiG9w0BBQ0wQTApBgkqhkiG9w0BBQwwHAQIxb/qYev3FEkCAggA
MAwGCCqGSIb3DQIJBQAwFAYIKoZIhvcNAwcECL2Qz46mZsMgBIIEyL0r4vpwOpt9
BtBmsrL8aXNsy8Da8FdwN5Ll3ZtuYnKxUWOyRByuQNxHWiVkkZhZ5R9zS+6yKN1q
DxGqkUo6PBRmIYEHfYJ/oN0FQAPTEEQ2GtUimt2HxFIHL1WfSYM7UfYFUSD5AImM
BwTtnIcSwXv3IfZHu5Bq8mOrRt6UmVXYwLT3jpeW1xX5Y3HjyyepPV13PXbxjGPL
OgtH6J+CaCPvmmUgj8FJAaqJsTPed6vjHftSwp+vZRpeS9teuPXLwK4GVjsPuhDo
nK7CQL+BEtPH1oZ0T0/uG1aRkkms0ul29LSkGoYNt1b7e/ZtjaNU5Wl31yHoDyNB
+IgLJuNQG87aDIPLSQtlB/96NlSlpa334SLoSMmM6XXftimtrz1bsyFOcelgI/ro
JwLZcFMDqAImDkaT52Mf46++eIZyRRx2tdMkfVbYpZpTj0li4fL51D5J1/Vprf89
5+Vbnh2LJPesjhuEsd2nh5fzPaN9bN+DcEQ2RXCKZdpiSWlPkmEor93xsGGKb67k
lPSLlP8VoCbI3VRs31hDv0mCykXt92BexEKW7NZpxXWxe/kcExyovy0Wz4RvCveF
sHhTVuAipEGIpx/63wrjCDVnsPs3rDPuOw4VQZ/i0v0YWEJjzf2imh5BRBO3RavF
HwI2fy33DGGRXxv2uUJgH0n+35uBIqLp+qyfDSzH3dvivCeBLoW4CyRADL1ocWwL
IoL0GaTLCbZDc2XZAaX8SSyDaKZY3HgOeWhHIIsDdPIIkjGu7GbJggdGYH3tfAtL
+SH8cJ1BwVz7hIK789H5i5vkRRmKQL/pRRXaUGUWzgY//W7fEwpdGZzzopj4WIBB
qpaYYG2NA/Y88qTjxi9L19L7ihSlY8B9pDFqfFz76lneo2tWJlCI1DzziO6Beed9
0/K/jHzhH+HUJ/+8lcr+f+GGoDgB4qids3nUR0XgT7r10r3XulnmHJLfz07EhEJ1
n5WlalaQtq+qjPW2t9zX588g4xdB7afdmsyjECpaclDoi8BJTdy/xvxHH89Qsoyq
LLELF4geSwyIhwI5EKi6TEwvW1/kcegb2mLvBVwXwSWis78WjuAaaJeHfOw4AQps
6pyEcDaRm34YBPMGX3jqitcYPdwRlz4eosfkO5OguPOOcpW9NvIB4DaT/5m+3pXb
kPN9N3MX16Ym1oV9VJIcf2fQS2+jDiQI9Q+ocVOU0d5sfpEeKgUwKa5ufkvUdFL5
Y2lRUhlSlF9GA9QPFK+Q+MpuXCzuRjTZsn4E1T02dH9NLZcgUPGXlCeejVkPy2rd
lpleGHLmDb1rz9LgpAlfPHMnZkn5W7lfZ/pgTNDrnk1wupYgd3FouUSoO/tqDfri
3uilWMJbiYP3b+Qg5LWLhU1ZFo5512IaHgpLWsAHcOwrqwZ1TTdwjJCoz5gf8o28
VCxC/EoFLv8nTItebqV9lkrd9NWraXPkfPPqrIi1cPmHQSAwisgfdfSrJaIqX9Sm
aQQ0dxFaVzhXHYqu4MOQa3fQO/Jfr8Q0ZFnX7Eg/FfgatCFQYYMKg2+tWmD/qGgQ
31dKhjo3VgtEubC/o9D+TJq17NH4FdRhhgv6JG6MM1MGY2UPLjkJfgYXfmu5/t65
BnG9JjwWVy3g7skKFqTKpw==
-----END ENCRYPTED PRIVATE KEY-----
"
string(451) "-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAtrfq8MIME9BbbmcLlPiQ
Xdsd4tIAaWU6pJZQdUpipRSdgbBRAxTh/z7yXAeIooSt2w9PdwYEPMYmNNkH596D
bHgezBq0mR7AUGIth2mVSspntfehu+Yyp7GiLm4ZK7Bv7rKqKMo8KSGXrJGSly6l
yOlgVDMRgxBNPxcCqHmU2lIr3RmFb5gAxyxk2cRA3WIok58DltlHn7InX1KQMbGb
QqRttSyuZNgFWA8r8O7Ug15abSs71tAboJZWS/NYQDeY6jxSVxgj3HFX7hQ7VRZp
3hXyAArqjcvcvcWtpWcc3CQ/BjZOTsDXyjuokxGyiTjD2p7VSHFGXwanzE69bwTA
kQIDAQAB
-----END PUBLIC KEY-----
"

參考: https://www.php.net/manual/en/function.openssl-pkey-export.php

相關用法


注:本文由純淨天空篩選整理自shubham_singh大神的英文原創作品 PHP openssl_pkey_export() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。