PHP8 openssl_spki_export

2024-03-13 11:24 更新

(PHP 5 >= 5.6.0, PHP 7, PHP 8)

openssl_spki_export — 通過簽名公鑰和 challenge 導(dǎo)出一個(gè)可用的 PEM 格式的公鑰

說明

openssl_spki_export(string $spki): string|false

從編碼的簽名公鑰和 challenge 導(dǎo)出 PEM 格式的公鑰。

參數(shù) 

spki

期望一個(gè)有效的簽名公鑰和 challenge 字符串。

返回值 ?

返回關(guān)聯(lián)的 PEM 格式的公鑰,失敗則返回 false。

錯(cuò)誤/異常 

如果傳遞給 spki 參數(shù)是不可用的參數(shù),則會(huì)拋出 E_WARNING 級(jí)別的警告。

示例 

示例 #1 openssl_spki_export() 示例

成功,返回關(guān)聯(lián)的 PEM 格式的公鑰,失敗則返回 NULL.

<?php
$pkey = openssl_pkey_new('secret password');
$spkac = openssl_spki_new($pkey, 'challenge string');
$pubKey = openssl_spki_export(preg_replace('/SPKAC=/', '', $spkac));

if ($pubKey) {
    echo $pubKey;
}
?>

示例 #2 openssl_spki_export() 來自 <keygen> 的示例

通過 <keygen> 元素導(dǎo)出關(guān)聯(lián)的 PEM 格式的公鑰:

<?php
$spkac = openssl_spki_export(preg_replace('/SPKAC=/', '', $_POST['spkac']));
if ($spkac != NULL) {
    echo $spkac;
} else {
    echo "Extraction of pub key failed";
}
?>
<keygen name="spkac" challenge="challenge string" keytype="RSA">

參見 

  • openssl_spki_new() - 生成新的簽名公鑰和 challenge
  • openssl_spki_verify() - 驗(yàn)證簽名公鑰和 challenge
  • openssl_spki_export_challenge() - 導(dǎo)出與簽名公鑰和 challenge 相關(guān)的 challenge
  • openssl_get_md_methods() - 獲取可用的摘要算法
  • openssl_csr_new() - 生成一個(gè) CSR
  • openssl_csr_sign() - 用另一個(gè)證書簽署 CSR(或者本身)并且生成一個(gè)證書


以上內(nèi)容是否對(duì)您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)