라이브러리
[PHP] openssl_spki_export - 유효한 PEM 형식의 공개 키, 서명된 공개 키 및 챌린지를 내보냅니다.
openssl_spki_export 함수 소개
`openssl_spki_export` 함수는 공개 키 인프라 (PKI) 인증서를 생성하는 데 사용됩니다. 이 함수는 공개 키와 인증서의 개인 키를 기반으로 인증서를 생성합니다. 인증서에는 공개 키와 인증서의 개인 키가 포함됩니다.
함수 구조
`openssl_spki_export` 함수의 구조는 다음과 같습니다.
#hostingforum.kr
php
openssl_spki_export($privatekey, $spkicert, $spkisig, $digest, $digestalg, $certinfo, $fullname, $serial, $subject, $issuer, $notbefore, $notafter, $extensions, $configargs)
함수 매개 변수
* `$privatekey`: 개인 키를 포함하는 리소스입니다.
* `$spkicert`: 인증서를 포함하는 리소스입니다.
* `$spkisig`: 인증서의 서명이 포함된 리소스입니다.
* `$digest`: 인증서의 해시 알고리즘입니다.
* `$digestalg`: 인증서의 해시 알고리즘을 지정하는 문자열입니다.
* `$certinfo`: 인증서에 포함할 정보입니다.
* `$fullname`: 인증서의 이름입니다.
* `$serial`: 인증서의 시리얼 번호입니다.
* `$subject`: 인증서의 주체입니다.
* `$issuer`: 인증서의 발급자입니다.
* `$notbefore`: 인증서의 유효 시작 날짜입니다.
* `$notafter`: 인증서의 유효 종료 날짜입니다.
* `$extensions`: 인증서에 포함할 확장입니다.
* `$configargs`: 인증서 생성에 사용할 구성 매개 변수입니다.
예제
다음 예제는 `openssl_spki_export` 함수를 사용하여 인증서를 생성하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 개인 키 생성
$privatekey = openssl_pkey_new();
openssl_pkey_export($privatekey, $privatekey);
// 인증서 생성
$spkicert = openssl_spki_export($privatekey, 'sha256', 'sha256', 'sha256', 'sha256', array(
'subject' => 'CN=example.com',
'issuer' => 'CN=example.com',
'notbefore' => '2022-01-01 00:00:00',
'notafter' => '2023-01-01 00:00:00',
), 'example.com', 'example.com', 'example.com', array(
'keyUsage' => 'keyEncipherment, digitalSignature',
'extendedKeyUsage' => 'serverAuth, clientAuth',
));
// 인증서 서명
$spkisig = openssl_sign($spkicert, $signature, $privatekey, 'sha256');
// 인증서 출력
echo $spkicert;
?>
이 예제에서는 `openssl_spki_export` 함수를 사용하여 인증서를 생성하고, 인증서의 서명이 포함된 리소스를 생성합니다. 인증서의 정보는 `certinfo` 매개 변수를 통해 지정됩니다. 인증서의 이름, 주체, 발급자, 유효 시작 날짜, 유효 종료 날짜, 확장 등이 포함됩니다.
주의
`openssl_spki_export` 함수는 공개 키 인프라 (PKI) 인증서를 생성하는 데 사용됩니다. 이 함수는 인증서의 개인 키를 기반으로 인증서를 생성하므로, 인증서의 개인 키를 안전하게 보관해야 합니다. 인증서의 개인 키를 노출하면 인증서의 보안이 취약해질 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.