diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..e4639099c2cc45d5f595ce42a757c7c4d4a428e8 --- /dev/null +++ b/README.md @@ -0,0 +1,28 @@ +Ce code a pour but la conversion d'une paire « clé privée » et « certificat PEM » en un certificat +format P12 (PKCS12), en gérant les mots de passe. + +# Pourquoi ? + +Parce que les certificats reçus via DigiCert (certificats personnels) sont au format PEM, et que +pour un import dans un navigateur ou un gestionnaire de mail il faut un format P12, et surtout +que la conversion nécessite de lancer des commandes `openssl` dans un terminal (difficile pour les +personnes sous windows, et compliqué pour celles n'ayant pas l'habitude de la ligne de commande). + +Et parce qu'il vaut mieux passer par un outil « corporate » que par un quelconque outil trouvé sur +le WEB, car il faut donner sa clé privée. + +# Comment ? + +L'API WEB est codée en `PHP`. Elle utilise l'extension `openssl` de `PHP`. Les saisies (certificat +à convertir) passent par un _upload_ (petit script `JS`). La récupération passe par un téléchargement. +Afin d'éviter d'avoir à stocker le résultat (certificat P12) sur le serveur le téléchargement +se fait à partir des données du script sans passer par le disque (script `JS`). + +# Contenu + + * `tools.php` : outils. `error()` génère une page WEB d'erreur, avec le message indiqué (et quitte). `entete()` génère une entête HTML. + * `p12.php` : formulaire de saisie des informations. Le formulaire demande le mot de passe, la clé + privée et le certificat, et effectue un `POST` vers `vp12.php` + * `vp12.php` : valide les informations reçues, puis effectue les conversions vers le format P12 en + utilisant l'extension `openssl`. Au final propose de télécharger le résultat +