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

Tutoriel PHP de base

Tutoriel PHP avancé

PHP & MySQL

Manuel de référence PHP

Utilisation et exemple de la fonction openssl_pkey_get_public() en PHP

Manuel des fonctions OpenSSL PHP

La fonction openssl_pkey_get_public() est utilisée pour extraire la clé publique à partir du certificat pour l'utilisation.

Définition et utilisation

openssl_pkey_get_public()La fonction retournera votre clé publique.

La fonction openssl_pkey_get_public() retourne la clé publique à partir du certificat donné, ce qui permet d'utiliser d'autres fonctions ensemble.

Syntaxe

openssl_pkey_get_public ( mélange $certificate ) : ressource

Paramètres

NuméroParamètresDescription
1

certificate

Vous pouvez utiliser les certificats suivants :

1. X.509Ressource de certificat

2.Clé publique provenant du fichier, format : file://chemin/à/file.pem.

3. Clé publique au format PEM.

Valeur de retour

Si il n'y a pas d'erreur, la fonction PHP openssl_pkey_get_public() retournera un identificateur de ressource positif. Sinon, il retournera false.

version PHP

Cette fonction retournera une ressource identificateur positive5.0.0 à partir de la version PHP

Exemple1

En utilisant X.509Fonctionnement de openssl_pkey_get_public() pour le certificat-

<?php
   $dn = array(
      "countryName" => "IN",
		"stateOrProvinceName" => "Karnataka",
		"localityName" => "test"1",
		"organizationName" => "test"2",
		"organizationalUnitName" => "test"3",
		"commonName" => "www.test.com",
		"emailAddress" => "[email protected]"
	);
       // Générer une nouvelle clé privée/Paire de clés publiques
	$privkey = openssl_pkey_new();
	// Générer un certificat
	$csr = openssl_csr_new($dn, $privkey, array('digest_alg' => 'sha256'));
	$res_cert = openssl_csr_sign($csr, null, $privkey, 365);
	openssl_x509_export($res_cert, $x_509_certificate);
	echo $res_pubkey = openssl_pkey_get_public($x_509_certificate);
?>

Résultat de la sortie

ID de ressource #5

Exemple2

Fonctionnement de openssl_pkey_get_public() avec le fichier .pem-

<?php
   $dn = array(
      "countryName" => "IN",
      "stateOrProvinceName" => "Karnataka",
      "localityName" => "test"1",
		"organizationName" => "test"2",
		"organizationalUnitName" => "test"3",
		"commonName" => "www.test.com",
		"emailAddress" => "[email protected]"
   );
	//Générer une nouvelle clé privée/Paire de clés publiques
	$privkey = openssl_pkey_new();
	//Générer un certificat
	$csr = openssl_csr_new($dn, $privkey, array('digest_alg' => 'sha256'));
	$res_cert = openssl_csr_sign($csr, null, $privkey, 365);
	openssl_x509_export_to_file($res_cert, 'C:/xampp/htdocs/modules/openssl/x_509.pem');
	echo $res_pubkey = openssl_pkey_get_public(file_get_contents('C:/xampp/htdocs/modules/openssl/x_509.pem'));
?>

Résultat de la sortie

ID de ressource #7

Manuel des fonctions OpenSSL PHP