라이브러리
[PHP] openssl_pkcs12_read - PKCS#12 인증서 저장소를 배열로 구문 분석
openssl_pkcs12_read란?
`openssl_pkcs12_read`는 PHP의 OpenSSL 확장 함수 중 하나로, PKCS#12 파일을 읽는 함수입니다. PKCS#12 파일은 보통 SSL/TLS 인증서와 개인 키를 포함하는 파일입니다. 이 함수는 PKCS#12 파일을 읽어 인증서와 개인 키를 추출하고, 인증서를 검증하는 등의 작업을 수행할 수 있습니다.
openssl_pkcs12_read 사용 예제
#hostingforum.kr
php
<?php
// PKCS#12 파일 경로
$p12_file = 'example.p12';
// PKCS#12 파일 비밀번호
$p12_password = 'example_password';
// PKCS#12 파일을 읽어 인증서와 개인 키를 추출
$data = openssl_pkcs12_read($p12_file, $p12_password);
// 인증서 정보 추출
$cert_info = $data['x509_info'];
$cert_subject = $cert_info['subject'];
$cert_issuer = $cert_info['issuer'];
$cert_serial_number = $cert_info['serialNumber'];
$cert_not_before = $cert_info['notBefore'];
$cert_not_after = $cert_info['notAfter'];
// 개인 키 정보 추출
$priv_key = $data['privatekey'];
// 인증서를 검증
$verify_result = openssl_verify('example_data', $data['x509_info']['subject']);
// 결과 출력
echo "인증서 정보:
";
echo " 주체: " . $cert_subject . "
";
echo " 발급자: " . $cert_issuer . "
";
echo " 시리얼 넘버: " . $cert_serial_number . "
";
echo " 유효 시작일: " . $cert_not_before . "
";
echo " 유효 종료일: " . $cert_not_after . "
";
echo "개인 키:
";
echo $priv_key . "
";
echo "인증서 검증 결과: " . ($verify_result ? '성공' : '실패') . "
";
?>
openssl_pkcs12_read 함수의 파라미터
- `$p12_file`: PKCS#12 파일 경로
- `$p12_password`: PKCS#12 파일 비밀번호
- `$cert_info`: 인증서 정보 (배열)
- `$priv_key`: 개인 키 (문자열)
- `$data`: PKCS#12 파일 데이터 (배열)
openssl_pkcs12_read 함수의 반환값
- `bool`: 함수의 성공 여부
- `array`: PKCS#12 파일 데이터 (인증서 정보, 개인 키 포함)
참고
- OpenSSL 확장 함수는 PHP 5.3.3 이상에서 사용할 수 있습니다.
- PKCS#12 파일은 보통 SSL/TLS 인증서와 개인 키를 포함하는 파일입니다.
- 인증서 정보는 `openssl_x509_parse` 함수를 사용하여 추출할 수 있습니다.
- 개인 키는 `openssl_private_decrypt` 함수를 사용하여 암호화할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.