
openssl_cms_encrypt 함수는 기본적으로 4096비트 인 RSA 키를 사용하므로, CMS 암호화에 사용되는 키 크기를 2048비트 인 RSA 키로 설정하는 것이 필요합니다.
해당 오류를 해결하기 위한 방법은 다음과 같습니다.
1. openssl_cms_encrypt 함수에 'key_size' 옵션을 추가하여 2048비트 인 RSA 키를 사용하도록 설정합니다.
#hostingforum.kr
php
$cms = openssl_cms_encrypt($data, $cert, $key, 'sha256', 'RSA', 'base64', array('key_size' => 2048));
2. openssl_cms_encrypt 함수의 두 번째 인자로 2048비트 인 RSA 키를 직접 전달합니다.
#hostingforum.kr
php
$cms = openssl_cms_encrypt($data, $key, $cert, 'sha256', 'RSA', 'base64');
3. openssl_cms_encrypt 함수를 사용하는 대신, openssl_seal 함수를 사용하여 CMS 암호화를 수행합니다. openssl_seal 함수는 키 크기를 직접 지정할 수 있습니다.
#hostingforum.kr
php
$cms = openssl_seal($data, $cert, $key, 'RSA', '2048');
위 방법 중 하나를 적용하여 CMS 암호화에 사용되는 키 크기를 2048비트 인 RSA 키로 설정하면, 일치하지 않는 키 크기 오류가 발생하지 않습니다.
2025-05-16 10:17