English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
openssl_pkey_get_private() 함수는 개인키를 가져오기 위해 사용됩니다.
openssl_pkey_get_private()함수는 귀하의 개인키를 반환합니다.
openssl_pkey_get_private() 함수는 주어진 공개키에서/개인키를 반환합니다. 예를 들어.pem 파일의 내용입니다.
openssl_pkey_get_private(mixed$key[, string$passphrase = ""]) : resource
순번 | 파라미터 | 설명 |
---|---|---|
1 | key | PEM 파일에서 키를 가져올 수 있으며, openssl_pkey_new()로 생성된 개인키를 사용할 수 있습니다. |
2 | passphrase | 지정된 키가 암호화되어 있으면(암호로 보호되어 있으면) 선택적 매개변수 passphrase는 필수입니다 |
에러가 없으면 PHP openssl_pkey_get_private() 함수는 리소스 식별자를 반환합니다. 키 생성이 실패하면 false를 반환합니다.
이 함수는 크게5.0.0의 PHP 버전부터 작업합니다.
openssl_pkey_get_private()의 작업:
<?php //새로운 개인키(공개키와 함께)를 생성하십시오 $privkey = openssl_pkey_new(); openssl_pkey_export($privkey, $yourprivatekey); $testprivatekey = openssl_pkey_get_private($yourprivatekey); if ($testprivatekey === false) { var_dump(openssl_error_string()); } var_dump($testprivatekey); } ?>
이렇게 되면 다음과 같은 결과가 생성됩니다:
resource(3) of type (OpenSSL key)
openssl_pkey_get_private()과openssl_pkey_get_details()의 작업-
<?php $privkey = openssl_pkey_new(); openssl_pkey_export($privkey, $yourprivatekey); $testprivatekey = openssl_pkey_get_private($yourprivatekey); if ($testprivatekey === false) { var_dump(openssl_error_string()); } //var_dump($testprivatekey); $key_details = openssl_pkey_get_details($testprivatekey); print_r($key_details); } ?>
이렇게 되면 다음과 같은 결과가 생성됩니다:
Array ( [bits] => 2048 [key] => -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnO1F0Gt03mgxLcDpRxlm VEh8sfIfan5o11EcoLaEwaTyKgMNm7A4Rs9LcG3fwkNjXo8XNRQv6OSrhl8y00AX +이제 시작해보겠습니다.78이제 시작해보겠습니다./K3이제 시작해보겠습니다.8이제 시작해보겠습니다.+이제 시작해보겠습니다.5이제 시작해보겠습니다.1이제 시작해보겠습니다.8이제 시작해보겠습니다. 5이제 시작해보겠습니다.8이제 시작해보겠습니다.6이제 시작해보겠습니다.4이제 시작해보겠습니다.92이제 시작해보겠습니다.8이제 시작해보겠습니다.22이제 시작해보겠습니다. 9이제 시작해보겠습니다.98이제 시작해보겠습니다.5이제 시작해보겠습니다.6이제 시작해보겠습니다.5이제 시작해보겠습니다.7이제 시작해보겠습니다./53이제 시작해보겠습니다.5이제 시작해보겠습니다. 이제 시작해보겠습니다.4이제 시작해보겠습니다.1이제 시작해보겠습니다.4이제 시작해보겠습니다.+이제 시작해보겠습니다.1/2이제 시작해보겠습니다.+이제 시작해보겠습니다.92이제 시작해보겠습니다.5이제 시작해보겠습니다. 이제 시작해보겠습니다. -----END PUBLIC KEY----- [rsa] => Array ( 이제 시작해보겠습니다.1-이제 시작해보겠습니다.* ��8이제 시작해보겠습니다.5/이제 시작해보겠습니다.2이제 시작해보겠습니다.7이제 시작해보겠습니다.4이제 시작해보겠습니다./이제 시작해보겠습니다. 이제 시작해보겠습니다.3이제 시작해보겠습니다.8이제 시작해보겠습니다.-이제 시작해보겠습니다./이제 시작해보겠습니다.+� ��r�@�ⱗ���? 이제 시작해보겠습니다.5��5이제 시작해보겠습니다.9이제 시작해보겠습니다.1이제 시작해보겠습니다.8이제 시작해보겠습니다. 이제 시작해보겠습니다. 81이제 시작해보겠습니다.2이제 시작해보겠습니다.-이제 시작해보겠습니다.7이제 시작해보겠습니다.*Z-이제 시작해보겠습니다. 이제 시작해보겠습니다. 이제 시작해보겠습니다.*이제 시작해보겠습니다.5이제 시작해보겠습니다.1이제 시작해보겠습니다.5� 이제 시작해보겠습니다.+이제 시작해보겠습니다.+이제 시작해보겠습니다. 3-이제 시작해보겠습니다.-이제 시작해보겠습니다.26이제 시작해보겠습니다.5이제 시작해보겠습니다. [dmp1이제 시작해보겠습니다. 이제 시작해보겠습니다.5��]5이제 시작해보겠습니다.+이제 시작해보겠습니다.1 이제 시작해보겠습니다.-이제 시작해보겠습니다. 이제 시작해보겠습니다. X�%s���ڕ_�|Za3��z$�\n1�N1�u�j)����z� [dmq1] => ��n[������ǣ<��t��^��P���)�F@ni�� �gHꥴ(���@#s�!+$�D��]����{�ّ���I㯽l���[$���>i q|�$�Gء�I'R��^c "����e"k [iqmp] => �Ŗij� ��a6�W#�:��#bS?�Ó��S�r#�C�ױ87])4��Z���`����ݻ����w���.�a�y��@ �ѓ�p���s�XP.{�o9h�Bq��뵘�EU��n ���&S��tE� ) [type] => 0 )
使用密码的openssl_pkey_get_private()工作:
<?php $privkey = openssl_pkey_new(); openssl_pkey_export($privkey, $testkey, 'helloworld'); $testprivatekey = openssl_pkey_get_private($testkey, 'helloworld'); if ($testprivatekey === false) { var_dump(openssl_error_string()); } //var_dump($testprivatekey); $key_details = openssl_pkey_get_details($testprivatekey); print_r($key_details); } ?>
이렇게 되면 다음과 같은 결과가 생성됩니다:
Array ( [bits] => 2048 [key] => -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAs4HV+NM9dQ1ssuxb9PhM 64Yn8RHgv7YKK33nZudmk6SCOr9yRo7immp+bkaA0Lt/9ONJP+UF5VCltpdNdHLb GDTo+TkK5NdTJDalON3L9EhB4cJeQaQQh59uJGf39Et0BJiYiINXsNdlc/pig1/Z XDRyhEtqQ6nZJkOIIWO0gpdj9xj2naq/wy6Oas4p3/A7EvN5nB22xfEVIptKUZzi YWV4Bs5y2OM3GRwVv+jLYKQ49S/ZKq7MpdCxcXC6YxyrlEIz4PL9cWRtybK3BINv JnCWrfWRhUtlAY/CvfXrq2PhXwHVcebsDOPob6A71TcZMirxFZVyqkC+4rGX+5be PwIDAQAB -----END PUBLIC KEY----- [rsa] => Array ( [n] => �����=u l��[��L�'� +}�f�f���:�rF��j~nF�л��I?��P���Mtr�4��9 ��S$6�8���HA��^A���n$g��Kt����W��es�b�_�\4r�KjC��&C�!c���c������.�j�)��;�y����"�JQ��aex�r��7���`�8�/�*���`�3�̥бqp�c��B72*���qdmɲ��o&p�����Ke�½��c�_�q����o�;� ��r�@�ⱗ���? [e] => [d] => ����e���e�$%34sဩQ��EUA�D��Bu��+$�v�#����P�\��uD��(�z�w5�z����aͲ+3���X��������q�Pŵڡ��%O+��]3o�*�FM�/�Z^L��k�/�Ty��5��;�)�sB�Np�8�z2�@�x�, �#�SyM�o�Xċ.���;�����K��� ����qsLLD*^���"j��7=Io{���� `a��{�l�ᛅ�B������#���\�7/[p] => ׳��à�tY�@���[N��n�p�Ƌ��f� ??5\���͡�y<ox�,�(損�i�w�X�P�*�@��s BD�C���⎓�| �/���JH��+�3��|`�����6�X/� ��Ú��+�_�Yh:���59}�D�&כ��Gc [dmp1] => i�*/ �U�̯�6�� ���|�>3�HP�hN��.�G�������9���cxj*�!��0�ؼ��R��:�9E(�Z��$�&�&7>�9.Ih��E�z/�,�QR�"�'�;���^���xq [dmq1] => |�w��`���䛌��� ��3�����b�����AZ�t���.8���Q]��F�iI��2)�{<��G^ܵt��u�Mb��4I�YL�E�S�8a!�6��&Q�(�^��������É��� [iqmp] => \p5��N�� $WC�j�� �|�{>d�������Y f�����9�3�$rF(ON��>��� ����%��`(� &�op� �}=C+����b�˝�#�G"�0T.���G`t�܈��^���\7� ) [type] => 0 )
openssl_pkey_get_private()를 처리하는.pem 파일 사용:
<?php //private 키 생성 $privkey = openssl_pkey_new(); openssl_pkey_export_to_file($privkey, 'C:/xampp/htdocs/modules/openssl/fortesting.pem'); //사용자의 개인 키를 포함한 .pem 파일을 사용합니다. $testprivatekey = openssl_pkey_get_private(file_get_contents('C:/xampp/htdocs/modules/openssl/fortesting.pem)); if ($testprivatekey === false) { var_dump(openssl_error_string()); } //var_dump($testprivatekey); $key_details = openssl_pkey_get_details($testprivatekey); print_r($key_details); } ?>
이렇게 되면 다음과 같은 결과가 생성됩니다:
Array ( [bits] => 2048 [key] => -----BEGIN PUBLIC KEY----- MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAqaka1+sKh3D4HgIDzER6 vr/DI5u6h1QF6Xm1q/nOduTn0vlx4bLv+QEbcElXV1Bss4W7wOZRkMIOwj4xcT+e PGKaN95JUyxC/NQ13+F6K5yUk0ish36BVusrHt0wdZj28f63gHm824D0yDnn+aJr s+vSuMppErUD/i0QUFnO86ypHi/zeb+QBEif4a82RtfwRIVUtE/Sxy08ct+1ogA9 pdBd47elLmcekz/dtSUqpUjLj5SNojS7AJCZ5LNxnLOzN3ryCQXGaAn8KHQ284Xs jlYBjSjXFLY/1fLDYDpQGOApoBj2vK9Io8MxFU3uss79Ezb6LwKZG6CmzlbldBrJ YQIDAQAB -----END PUBLIC KEY----- [rsa] => Array ( [n] => [n] 이렇게 하면 "�p��Dz���#���T�y����v����q���pIWWPl�����Q���>"이라는 텍스트가 생성됩니다.1q?�<b�7�is,b��5��z+���h��~�v�+�0u������y�ۀ��9���k��Ҹ�i��-py�� �y��h��6f��d�t�o��- [d] => �9:������Y����"���*xu�&��gt���� &"���{��!Px�r�hn#��!c%�u �ʻ�꛷x��7z����&��|��ǔv�Ĩѳ�XT?΅��[w"�=e��m�1R_JH�/�hX��.�E����&&'�:�/:������.I�zdx@�6��)��i��1L�z��"X��>�����]�t����Rh��g��!8�Y9�G�rŜ��9z�����z��~�����jo_��� [p] => ٥���+�iy��Ѷm:#`BF���������Bj>�����f�2W%�eIAn� ����۪��.o� v�`tgg��a�L�%ٱ� L[��\6��`��sx]�~�bU�fF�/Oy�6�+~v��7u� [q] => ǎ�Ͱ�u(�.L���l��o�Gc�x�������@4��r� `i�i�X��v��'�33X��c��_��m8��M���5#t"��^�{�j vSLi�X��mhԷI܀8� 1t� [dmp1] => ���6�$5�Eg�Q�1F"��8y��V`��\��A�{����0� ��ym�6�dUI<�8�f���\��"K�Khja5�z �w�'�m�F9�nv�rϑFP]��i�%��߿L�1�m'�Y��4 @lth7� [dmq1] => il5w*�eG�~��z�2�{��*�"Ӟ������`�����y�r��������%@�lq���De��U�z��� �s.��[ ����G�l_äh�����8¢H4N�7$�25��?�L� [iqmp] => 9"l@Ǚ�O�[I)}��K�6A/f5S� ����\�u���>��C���� �z��]�B�-ry/����D��w��H|�g:����8���s̙��◻(�B�Eo�`0 )