|
Table des matières
CX. OpenSSLIntroductionCette extension utilise les fonctions de OpenSSL pour générer et vérifier les signatures, ainsi que pour sceller (chiffrer) et ouvrir (déchiffrer) les données. OpenSSL offre beaucoup de fonctionnalités que ce module n’offre pas actuellement. Quelques-unes pourront être ajoutées dans le futur. Pré-requisAfin de pouvoir utiliser les fonctions OpenSSL, vous devez installer les fonctions OpenSSL. PHP depuis les version 4.0.5 et 4.3.1 fonctionnent avec openSSL >= 0.9.5. Les autres versions (PHP <=4.0.4pl1 et >= 4.3.2) nécessitent OpenSSL >= 0.9.6.
InstallationPour utiliser le support OpenSSL de PHP, vous devez aussi compiler PHP avec l’option de configuration “–with-openssl[=DIR]”.
* La variable d’environnement “OPENSSL_CONF”, si elle est définie, sera utilisée comme chemin (comprenant le fichier) vers le fichier de configuration. * La variable d’environnement “SSLEAY_CONF”, si elle est définie, sera utilisée comme chemin (comprenant le fichier) vers le fichier de configuration. * Le fichier “openssl.cnf” sera supposé se trouver dans le dossier des certificats, tel que configuré lors de la compilation de la bibliothèque openssl. Cela signifie généralement “c:\usr\local\ssl\openssl.cnf”.
Configuration à l'exécutionCette extension ne définit aucune directive de configuration. Types de ressourcesParamètres clés/certificatsUn bon nombre de fonctions OpenSSL demandent une clé et un certificat comme paramètres. PHP 4.0.5 et plus récent utilisait des clés ou certificats sous forme de ressource, retournée par l’une des fonctions openssl_get_xxx(). Les versions ultérieures utilisent l’une des méthodes suivantes :
Vérification de certificatsLorsque vous appelez une fonction qui va vérifier une signature ou un certificat, le paramètre “cainfo” doit être un tableau contenant les noms d’un dossier et d’un fichier indiquant les tiers de confiance. Si un dossier est spécifié, il doit être correct, car openssl va l’utiliser. Constantes pré-définiesCes constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l’exécution. Options de validations générales“X509_PURPOSE_SSL_CLIENT” (entier) “X509_PURPOSE_SSL_SERVER” (entier) “X509_PURPOSE_NS_SSL_SERVER” (entier) “X509_PURPOSE_SMIME_SIGN” (entier) “X509_PURPOSE_SMIME_ENCRYPT” (entier) “X509_PURPOSE_CRL_SIGN” (entier) “X509_PURPOSE_ANY” (entier) Options de remplissage ("Padding")“OPENSSL_PKCS1_PADDING” (entier) “OPENSSL_SSLV23_PADDING” (entier) “OPENSSL_NO_PADDING” (entier) “OPENSSL_PKCS1_OAEP_PADDING” (entier) Types de clésConstantes/options PKCS7Les fonctions S/MIME utilisent des options qui sont spécifiées par un champ de bits. Les valeurs valides sont : Tableau 1. Constantes PKCS7
Algorithme de signature“OPENSSL_ALGO_SHA1” (entier) Utilisé comme algorithme par défaut pour les fonctions openssl_sign() et openssl_verify(). “OPENSSL_ALGO_MD5” (entier) “OPENSSL_ALGO_MD4” (entier) “OPENSSL_ALGO_MD2” (entier)
Ciphers“OPENSSL_CIPHER_RC2_40” (entier) “OPENSSL_CIPHER_RC2_128” (entier) “OPENSSL_CIPHER_RC2_64” (entier) “OPENSSL_CIPHER_DES” (entier) “OPENSSL_CIPHER_3DES” (entier)
Constantes de version“OPENSSL_VERSION_TEXT” (entier) “OPENSSL_VERSION_NUMBER” (entier)
Table des matières
openssl_csr_export_to_file – Exporte une CSR vers un fichieropenssl_csr_export – Exporte un CSR vers un fichier ou une variableopenssl_csr_get_public_key – Retourne la clé publique d’un CERTopenssl_csr_get_subject – Retourne le sujet d’un CERTopenssl_csr_new – Génère une CSRopenssl_csr_sign – Signe un CSR avec un autre certificatopenssl_error_string – Retourne le message d’erreur OpenSSLopenssl_free_key – Libère les ressourcesopenssl_get_privatekey – Alias de openssl_pkey_get_private() Travail collaboratifContribuez, en ajjoutant des elements a cette page de manuel : Merci de votre aide |