라이브러리
[PHP] openssl_cms_decrypt - CMS 메시지 복호화
openssl_cms_decrypt란?
openssl_cms_decrypt는 PHP의 OpenSSL 확장에서 제공하는 함수로, CMS (Cryptographic Message Syntax) 암호화된 메시지를 복호화하는 데 사용됩니다. CMS는 메시지를 암호화하고 인증서를 첨부하여 메시지의 무결성을 보장하는 표준 프로토콜입니다.
openssl_cms_decrypt 사용법
openssl_cms_decrypt 함수는 다음과 같은 형식으로 사용됩니다.
#hostingforum.kr
php
openssl_cms_decrypt($encrypted_data, $recipient_cert, $recipient_key, $output, $flags);
* `$encrypted_data`: 암호화된 메시지를 포함하는 CMS 객체입니다.
* `$recipient_cert`: 메시지를 복호화할 수 있는 수신자의 인증서입니다.
* `$recipient_key`: 메시지를 복호화할 수 있는 수신자의 개인 키입니다.
* `$output`: 복호화된 메시지를 저장할 변수입니다.
* `$flags`: 옵션 플래그입니다. (선택 사항)
예제
다음 예제에서는 openssl_cms_decrypt 함수를 사용하여 CMS 암호화된 메시지를 복호화하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 수신자의 인증서와 개인 키를 생성합니다.
$recipient_cert = openssl_x509_read('path/to/recipient/cert.pem');
$recipient_key = openssl_pkey_get_private('path/to/recipient/key.pem');
// 암호화된 메시지를 생성합니다.
$encrypted_data = openssl_cms_encrypt('Hello, World!', $recipient_cert, $recipient_key);
// 메시지를 복호화합니다.
openssl_cms_decrypt($encrypted_data, $recipient_cert, $recipient_key, $output);
// 복호화된 메시지를 출력합니다.
echo $output;
?>
주의사항
openssl_cms_decrypt 함수를 사용하기 전에, 수신자의 인증서와 개인 키가 올바르게 생성되었는지 확인해야 합니다. 또한, 암호화된 메시지를 복호화할 수 있는 수신자의 인증서와 개인 키가 필요합니다.
openssl_cms_encrypt
openssl_cms_encrypt 함수는 CMS 암호화된 메시지를 생성하는 데 사용됩니다. 함수의 형식은 다음과 같습니다.
#hostingforum.kr
php
openssl_cms_encrypt($data, $cert, $key, $flags);
* `$data`: 암호화할 메시지입니다.
* `$cert`: 메시지를 암호화할 수 있는 인증서입니다.
* `$key`: 메시지를 암호화할 수 있는 개인 키입니다.
* `$flags`: 옵션 플래그입니다. (선택 사항)
예제
다음 예제에서는 openssl_cms_encrypt 함수를 사용하여 CMS 암호화된 메시지를 생성하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 수신자의 인증서와 개인 키를 생성합니다.
$cert = openssl_x509_read('path/to/sender/cert.pem');
$key = openssl_pkey_get_private('path/to/sender/key.pem');
// 암호화할 메시지를 생성합니다.
$data = 'Hello, World!';
// 암호화된 메시지를 생성합니다.
$encrypted_data = openssl_cms_encrypt($data, $cert, $key);
// 암호화된 메시지를 출력합니다.
echo $encrypted_data;
?>
주의사항
openssl_cms_encrypt 함수를 사용하기 전에, 수신자의 인증서와 개인 키가 올바르게 생성되었는지 확인해야 합니다. 또한, 암호화된 메시지를 복호화할 수 있는 수신자의 인증서와 개인 키가 필요합니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.