라이브러리
[PHP] openssl_pkcs7_sign - S/MIME 메시지 서명
PHP에서 openssl_pkcs7_sign 사용하기
`openssl_pkcs7_sign` 함수는 PKCS#7 서명에 사용되는 인증서와 개인키를 사용하여 메시지에 서명합니다. 이 함수는 메시지의 내용을 변경하지 않고 서명만 추가합니다.
# 함수의 매개변수
* `$message`: 서명할 메시지
* `$cert_file`: 서명에 사용되는 인증서 파일 경로
* `$key_file`: 서명에 사용되는 개인키 파일 경로
* `$passphrase`: 개인키의 암호
* `$cert_subject`: 서명에 사용되는 인증서의 주체
* `$signer_cert`: 서명에 사용되는 인증서
* `$signer_key`: 서명에 사용되는 개인키
* `$digest_alg`: 사용할 해시 알고리즘 (예: SHA256)
* `$signing_key`: 서명에 사용되는 개인키
* `$signing_cert`: 서명에 사용되는 인증서
* `$full_path`: 서명된 메시지의 파일 경로
# 예제
#hostingforum.kr
php
<?php
// 서명할 메시지
$message = "Hello, World!";
// 서명에 사용되는 인증서와 개인키 파일 경로
$cert_file = "path/to/cert.pem";
$key_file = "path/to/key.pem";
// 개인키의 암호
$passphrase = "password";
// 서명에 사용되는 인증서의 주체
$cert_subject = "CN=example.com";
// 서명에 사용되는 인증서와 개인키
$signer_cert = "path/to/signer-cert.pem";
$signer_key = "path/to/signer-key.pem";
// 사용할 해시 알고리즘
$digest_alg = "sha256";
// 서명된 메시지의 파일 경로
$full_path = "path/to/signed-message.pem";
// openssl_pkcs7_sign 함수를 사용하여 서명
openssl_pkcs7_sign($message, $full_path, $cert_file, $key_file, $passphrase, $cert_subject, $signer_cert, $signer_key, $digest_alg);
// 서명된 메시지의 내용을 출력
echo file_get_contents($full_path);
?>
# 주의사항
* `openssl_pkcs7_sign` 함수는 PHP 5.6.0 이상에서만 사용할 수 있습니다.
* 서명에 사용되는 인증서와 개인키는 PEM 형식이어야 합니다.
* 개인키의 암호는 필수적으로 입력해야 합니다.
* 서명된 메시지의 파일 경로를 지정해야 합니다.
* 서명된 메시지의 내용은 서명에 사용되는 인증서와 개인키에 따라 달라질 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.