English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP Grundanleitung

PHP Fortgeschrittene Anleitung

PHP & MySQL

PHP Referenzhandbuch

PHP openssl_pkey_get_private() Funktionssyntax und Beispiel

PHP OpenSSL Function Manual

Die openssl_pkey_get_private() Funktion wird verwendet, um den Private Key zu erhalten.

Definition und Verwendung

openssl_pkey_get_private()Die Funktion gibt Ihren Private Key zurück.

Die Funktion openssl_pkey_get_private() gibt den gegebenen öffentlichen Schlüssel/Das Private Key gibt den Private Key zurück. Zum Beispiel der Inhalt einer .pem-Datei.

Syntax

   openssl_pkey_get_private ( mixed $key [, string $passphrase = "" ] ) : resource

Parameter

NummerParameterBeschreibung
1

key

Sie können den Schlüssel aus einer .pem-Datei abrufen oder den Private Key verwenden, der durch openssl_pkey_new() generiert wurde.

2

passphrase

 Wenn der angegebene Schlüssel verschlüsselt wurde (passwortgeschützt), ist der optionale Parameter passphrase obligatorisch

Rückgabewert

Wird kein Fehler aufgetreten, gibt die PHP openssl_pkey_get_private() Funktion einen Ressourcenbezeichner zurück. Fails die Schlüsselgenerierung, gibt sie false zurück.

PHP-Version

Diese Funktion wird von PHP-Versionen größer als5ab PHP-Version 0.0.0 arbeitet.

Beispiel1

openssl_pkey_get_private() Funktion

<?php
       //Erstellen Sie neue Private- und Öffentliche-Schlüsselpaare
	$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);
	}
?>

Dies ergibt das folgende Ergebnis:

resource(3) von Typ (OpenSSL Schlüssel)

Beispiel2

openssl_pkey_get_private() und openssl_pkey_get_details() Funktion-

<?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);	
	}
?>

Dies ergibt das folgende Ergebnis:

Array
(
    [bits] => 2048
    [key] => -----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAnO1F0Gt03mgxLcDpRxlm
VEh8sfIfan5o11EcoLaEwaTyKgMNm7A4Rs9LcG3fwkNjXo8XNRQv6OSrhl8y00AX
+cPUb78Qp/K3INmyXr8UUVWy0BT+Rxq5kez1TmZhpITxUYLScEL8DPcghFyfstRa
5hP8hc0cwYM6N4ieOlXIxrdmbzTn92MeyiTstTvHxt8aGKbSdpmksWyNeqke22kM
9pBfEsf98XFh5HoQBQaQF6GXL5y00PWIdki7DTzYtXXPRGcQl/53M5HrGGdP0kGS
uD4YOFXRWYtQR1ZYLa4Ej+BP0eOpfxXiME0aaH1/2iWqyi+bsvkdgFbu92j5ptsr
yQIDAQAB
-----END PUBLIC KEY-----
    [rsa] => Array
        (
            [n] => ��E�kt�h1-��GfTH|��j~h�Q������*
��8F�Kpm��Cc^�5/�䫆_2�@���o��� ٲ^�QU���G����Nfa���Q��pB�� �\���Z������:7��:U�Ʒfo4��c�$�;�����v���l�z��i��_���qa�z���/�����vH�
<صu�Dg��w3��gO�A��>8U�Y�PGVX-���O���0Mh}�%��/����V��h���+�
            ��r�@�ⱗ���? 
            [d] => MK��C|��Y5��5}Z�R0;�S�I�V������M��0�Lw�r�����R��|��C���d�W�}�#����v�[9iZI��1��&!���A�;8K�%}��`@
����������}��n	b�]K�L#�~Sg�' 81!��2R]������`�vl�&�Z�@-q���7u�#����.���d������]�*Z-�'�|�ܳ ?M
j������Å
            [p] => �*&5IXM�U�$u�'����d,�$x��iR�1�ᙯ���A�Cxi`%�FR�5�
��!�a��C��֧t�^����f�$���V�+�ү��]v"�+=��I�w��RN��<�P�e��
3-�"���^����|_�-�l��lD,���=�26�ۗXGg5�@}q��T.�j����A��#��m,>#YN}��,pk}g
            [dmp1] => ��
�l5��]5L������ޅh)I�+��D�n�J!��ycP���1
=u>&��h-HT����K��j;�um
无法翻译
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
)

Beispiel3

Die openssl_pkey_get_private() mit Passwort funktioniert:

<?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);	
	}
?>

Dies ergibt das folgende Ergebnis:

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+5sein
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
)

Beispiel4

Verarbeitung mit .pem-Datei von openssl_pkey_get_private():

<?php
        //Private Schlüssel erstellen
	$privkey = openssl_pkey_new();
	openssl_pkey_export_to_file($privkey, 'C:/xampp/htdocs/modules/openssl/fortesting.pem');
	//Verwenden Sie die .pem-Datei mit dem Privatschlüssel.
	$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);	
	}
?>

Dies ergibt das folgende Ergebnis:

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]
无法翻译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
)

PHP OpenSSL Function Manual