check-certificat.com / chkcert_V1R1M1.py / Documentation Documentation Documentación
chkcert_V1R1M1_Documentation.html MAJ 17.07.2026 Updated 2026-07-17 Act. 17.07.2026
syntaxe généralegeneral syntaxsintaxis general
python chkcert_V1R1M1.py [--file FILE [FILE ...] | --dir DIR | --cacerts [FILE]] [OPTIONS]
# — ou, en binaire compilé (Nuitka onefile) —— or, as a compiled binary (Nuitka onefile) —— o, como binario compilado (Nuitka onefile) —
./chkcert [--file FILE [FILE ...] | --dir DIR | --cacerts [FILE]] [OPTIONS]
--file, --dir et --cacerts sont mutuellement exclusifs — un seul suffit à désigner la source à analyser. Sans aucun des trois, chkcert affiche l'aide. --file, --dir and --cacerts are mutually exclusive — exactly one designates the source to analyse. With none of the three, chkcert shows the help. --file, --dir y --cacerts son mutuamente excluyentes — basta uno solo para indicar la fuente a analizar. Sin ninguno de los tres, chkcert muestra la ayuda.
formats supportéssupported formatsformatos soportados
.pem.cer.cert.crt.arm.der .p12.pfx.pkcs12.kdb.jks.jck.jceks .p7b.cms.csr

Les alias --ext certificate / --ext keystore / --ext request regroupent respectivement les 3 familles ci-dessus (bleu clair / bleu / vert) — voir exemples. The --ext certificate / --ext keystore / --ext request aliases group the 3 families above (light blue / blue / green) respectively — see examples. Los alias --ext certificate / --ext keystore / --ext request agrupan respectivamente las 3 familias anteriores (azul claro / azul / verde) — ver ejemplos.

options principalesmain optionsopciones principales
-h, --help
Affiche l'aide complète.
--version
Affiche la version de l'outil.
--examples
Affiche des exemples d'usage intégrés.
--file FILE [FILE ...]
Fichier(s) à analyser. Jokers et listes supportés.
--dir DIR
Analyse récursive d'un répertoire.
--cacerts [FILE]
Truststore Java — auto-détection ou chemin explicite.
--ext EXT [EXT ...]
Filtre par extension ou alias (keystore/certificate/request).
--alias PATTERN
Filtre sur alias/CN/subject/issuer (insensible à la casse).
--password / --stashed
Mot de passe explicite, ou mot de passe stashé — exclusifs.
--chaining alias|serial|both
Mode d'affichage des chaînes de confiance.
--output json|html|both
Export vers fichier(s).
--report
Rapport de remédiation priorisé (P1/P2/P3).
--cmd
Ajoute les commandes de renouvellement (requiert --report).
--date YYYY-MM-DD|+N|-N
Date de référence simulée pour les expirations.
--no-color
Désactive les couleurs ANSI.
--quiet
Supprime la sortie console (jobs planifiés).
--remote HOST [...]
Récupération SFTP distante — voir section dédiée.
-h, --help
Shows the full help.
--version
Shows the tool's version.
--examples
Shows built-in usage examples.
--file FILE [FILE ...]
File(s) to analyse. Wildcards and lists supported.
--dir DIR
Recursive analysis of a directory.
--cacerts [FILE]
Java truststore — auto-detect or explicit path.
--ext EXT [EXT ...]
Filter by extension or alias (keystore/certificate/request).
--alias PATTERN
Filter on alias/CN/subject/issuer (case-insensitive).
--password / --stashed
Explicit password, or stashed password — mutually exclusive.
--chaining alias|serial|both
Trust chain display mode.
--output json|html|both
Export to file(s).
--report
Prioritised remediation report (P1/P2/P3).
--cmd
Adds renewal commands (requires --report).
--date YYYY-MM-DD|+N|-N
Simulated reference date for expirations.
--no-color
Disables ANSI colours.
--quiet
Suppresses console output (scheduled jobs).
--remote HOST [...]
Remote SFTP retrieval — see dedicated section.
-h, --help
Muestra la ayuda completa.
--version
Muestra la versión de la herramienta.
--examples
Muestra ejemplos de uso integrados.
--file FILE [FILE ...]
Fichero(s) a analizar. Comodines y listas admitidos.
--dir DIR
Análisis recursivo de un directorio.
--cacerts [FILE]
Almacén Java — autodetección o ruta explícita.
--ext EXT [EXT ...]
Filtro por extensión o alias (keystore/certificate/request).
--alias PATTERN
Filtro sobre alias/CN/subject/issuer (sin distinguir mayúsculas).
--password / --stashed
Contraseña explícita, o contraseña stashed — excluyentes.
--chaining alias|serial|both
Modo de visualización de las cadenas de confianza.
--output json|html|both
Exportación a fichero(s).
--report
Informe de remediación priorizado (P1/P2/P3).
--cmd
Añade los comandos de renovación (requiere --report).
--date YYYY-MM-DD|+N|-N
Fecha de referencia simulada para las expiraciones.
--no-color
Desactiva los colores ANSI.
--quiet
Suprime la salida de consola (tareas planificadas).
--remote HOST [...]
Recuperación SFTP remota — ver sección dedicada.
exemples d'usageusage examplesejemplos de uso

Fichier uniqueSingle fileFichero único

./chkcert --file certificate/ca_sub_on_ch.cer
./chkcert --file keyrepos/EHAQMGRNSL01/key.kdb --stashed mot de passe stashé (.sth)stashed password (.sth)contraseña stashed (.sth)

Répertoire (récursif)Directory (recursive)Directorio (recursivo)

./chkcert --dir keyrepos/ --stashed --chaining both

Filtrage par extensionExtension filteringFiltrado por extensión

./chkcert --dir mixed/ --ext keystore csr pem alias + extensions individuelles combinésalias + individual extensions combinedalias + extensiones individuales combinados

Truststore Java cacertsJava cacerts truststoreAlmacén Java cacerts

./chkcert --cacerts auto-détection JDK activeauto-detects the active JDKautodetecta la JDK activa
./chkcert --cacerts jks/digicert_truststore.jks --alias digicert --chaining both

Filtrage par motifPattern filteringFiltrado por patrón

./chkcert --dir keyrepos/ --stashed --alias stelink --chaining serial

Rapport de remédiation avec commandesRemediation report with commandsInforme de remediación con comandos

./chkcert --file store.p12 --password changeit --report --cmd --output both

Simulation de date de référenceReference date simulationSimulación de fecha de referencia

./chkcert --dir keyrepos/ --stashed --date +90 échéances à 90 joursdeadlines 90 days outvencimientos a 90 días

Mode silencieux (jobs planifiés)Silent mode (scheduled jobs)Modo silencioso (tareas planificadas)

./chkcert --dir keyrepos/ --stashed --output json --quiet

Analyse distante SSH/SFTPRemote SSH/SFTP analysisAnálisis remoto SSH/SFTP

./chkcert --remote prod-server.example.com --remote-user mqadmin --remote-key ~/.ssh/id_rsa --file /var/mqm/ssl/qmgr.kdb --stashed --report --output html
formats de sortieoutput formatsformatos de salida
Structure des répertoires de sortieOutput directory structureEstructura de directorios de salida
<output_root>/
html/<YYYYMMDD>/<ext>/ — rapports HTML par fichier— per-file HTML reports— informes HTML por fichero
html/<YYYYMMDD>/summary/ — résumé multi-fichiers HTML— multi-file HTML summary— resumen HTML multi-fichero
json/<YYYYMMDD>/<ext>/ — exports JSON par fichier— per-file JSON exports— exportaciones JSON por fichero
json/<YYYYMMDD>/summary/ — résumé multi-fichiers JSON— multi-file JSON summary— resumen JSON multi-fichero
Le répertoire racine est configurable viaThe root directory is configurable viaEl directorio raíz es configurable mediante W_FLD_TARGET_ANA_CER (Windows) / U_FLD_TARGET_ANA_CER (Unix) dansinen constantes_V1R1M1.properties. Par défaut : répertoire du script. Sans --output explicite, un run --quiet retombe sur OUTPUT_FORMAT_DFT (défaut html).Default: script directory. Without an explicit --output, a --quiet run falls back to OUTPUT_FORMAT_DFT (default html).Por defecto: directorio del script. Sin --output explícito, una ejecución --quiet recae en OUTPUT_FORMAT_DFT (por defecto html). Avec --date, le YYYYMMDD reflète la date simulée.With --date, YYYYMMDD reflects the simulated date.Con --date, el YYYYMMDD refleja la fecha simulada.
analyse distante SSHremote SSH analysisanálisis remoto SSH
Nécessite une licence Team, Pro ou Enterprise (palier signé dans licence.key) — non disponible sous licence Solo. Voir tarifs. Aide chkcertchkcert helpAyuda chkcert Requires a Team, Pro or Enterprise licence (tier signed inside licence.key) — not available under a Solo licence. See pricing. Aide chkcertchkcert helpAyuda chkcert Requiere una licencia Team, Pro o Enterprise (nivel firmado dentro de licence.key) — no disponible con licencia Solo. Ver precios. Aide chkcertchkcert helpAyuda chkcert
Le mode --remote télécharge le keystore via SFTP, l'analyse localement, puis supprime le fichier temporaire.The --remote mode downloads the keystore via SFTP, analyses it locally, then deletes the temporary file.El modo --remote descarga el almacén vía SFTP, lo analiza localmente y luego elimina el fichero temporal. Requiert paramikoRequires paramikoRequiere paramiko (pip install paramiko). Supporte l'authentification par clé (--remote-key, recommandé) ou par mot de passe (--remote-pass), un port et un timeout personnalisables (--remote-port, --remote-timeout), et l'acceptation d'un nouvel hôte SSH inconnu (--trust-new-host, à la première connexion uniquement). Supports key-based authentication (--remote-key, recommended) or password (--remote-pass), a customisable port and timeout (--remote-port, --remote-timeout), and accepting an unknown SSH host (--trust-new-host, first connection only). Admite autenticación por clave (--remote-key, recomendado) o por contraseña (--remote-pass), un puerto y un timeout personalizables (--remote-port, --remote-timeout), y la aceptación de un host SSH desconocido (--trust-new-host, solo en la primera conexión). Compatible avec les KDB stashés : le fichier .sth est automatiquement récupéré si présent.Compatible with stashed KDBs: the .sth file is automatically retrieved if present.Compatible con KDB stashed: el fichero .sth se recupera automáticamente si está presente.
fichier de configurationconfiguration filefichero de configuración
constantes_V1R1M1.properties est optionnel, chargé au démarrage — aucune clé n'est obligatoire, toute clé absente ou invalide retombe silencieusement sur sa valeur par défaut. Voir le rapport fonctionnel pour le détail complet. constantes_V1R1M1.properties is optional, loaded at startup — no key is mandatory, any missing or invalid key silently falls back to its default. See the functional report for full detail. constantes_V1R1M1.properties es opcional, se carga al inicio — ninguna clave es obligatoria, cualquier clave ausente o inválida recae silenciosamente en su valor por defecto. Ver el informe funcional para el detalle completo.
CléRôleDéfaut
PASSWORD_DFTMot de passe par défaut pour les keystores chiffrés.changeit
MIN_RSA_KEY_SIZETaille RSA minimale acceptée (plancher absolu : 2048).2048
CMD_RSA_KEY_SIZETaille RSA des commandes CSR suggérées (--cmd).4096
W_FLD_TARGET_ANA_CER / U_FLD_TARGET_ANA_CERDossier racine de sortie (Windows / Unix), avec placeholder utilisateur.<script_dir>
INDEX_ALIAS_SERIAL / INDEX_SERIAL_ALIASAffichage croisé alias/serial dans les vues de chaînage.true
OUTPUT_FORMAT_DFTFormat d'export utilisé quand --quiet est actif sans --output.html
KeyRoleDefault
PASSWORD_DFTDefault password for encrypted keystores.changeit
MIN_RSA_KEY_SIZEMinimum accepted RSA size (absolute floor: 2048).2048
CMD_RSA_KEY_SIZERSA size for suggested CSR commands (--cmd).4096
W_FLD_TARGET_ANA_CER / U_FLD_TARGET_ANA_CEROutput root folder (Windows / Unix), with a per-user placeholder.<script_dir>
INDEX_ALIAS_SERIAL / INDEX_SERIAL_ALIASCross alias/serial display in chaining views.true
OUTPUT_FORMAT_DFTExport format used when --quiet is active without --output.html
ClaveFunciónPor defecto
PASSWORD_DFTContraseña por defecto para almacenes cifrados.changeit
MIN_RSA_KEY_SIZETamaño RSA mínimo aceptado (límite absoluto: 2048).2048
CMD_RSA_KEY_SIZETamaño RSA de los comandos CSR sugeridos (--cmd).4096
W_FLD_TARGET_ANA_CER / U_FLD_TARGET_ANA_CERCarpeta raíz de salida (Windows / Unix), con placeholder de usuario.<script_dir>
INDEX_ALIAS_SERIAL / INDEX_SERIAL_ALIASVisualización cruzada alias/serial en las vistas de encadenamiento.true
OUTPUT_FORMAT_DFTFormato de exportación usado cuando --quiet está activo sin --output.html
limites trialtrial limitslímites trial
LimiteValeurComportement à l'expiration
Durée30 jours depuis le 1er lancementBlocage immédiat au démarrage (code sortie 2)
Fichiers50 fichiers analysésBlocage irréversible avant le 51ème fichier — rotation immédiate de la clé interne
Stockage étatEnregistrements de contrôle redondants et vérifiésToute altération invalide la protection → blocage
Licence Enterpriseproperties/licence.keyDésactive intégralement les contrôles trial ci-dessus
LimitValueBehaviour at expiry
Duration30 days from first launchImmediate block at startup (exit code 2)
Files50 files analysedIrreversible block before the 51st file — immediate internal key rotation
State storageRedundant, verified control recordsAny tampering invalidates the protection → block
Enterprise licenceproperties/licence.keyFully disables the trial controls above
LímiteValorComportamiento al expirar
Duración30 días desde el primer lanzamientoBloqueo inmediato al arrancar (código de salida 2)
Ficheros50 ficheros analizadosBloqueo irreversible antes del fichero 51 — rotación inmediata de la clave interna
Almacenamiento de estadoRegistros de control redundantes y verificadosCualquier manipulación invalida la protección → bloqueo
Licencia Enterpriseproperties/licence.keyDesactiva por completo los controles trial anteriores

Détail complet de l'architecture de protection : bilan de protection. Full protection architecture detail: protection overview. Detalle completo de la arquitectura de protección: balance de protección.

prérequisprerequisitesrequisitos previos
ComposantVersionUsage
Python3.9+Exécution du script source
cryptographyrécenteParsing PEM/DER/P7B/CSR
keytoolJava 8+ (JDK 25 : flag --cacerts requis)JKS, JCK, JCEKS, P12, PKCS12
runmqakm / gsk8capicmd_64IBM MQ 9+ / GSKitKDB, CMS
paramiko3+ (optionnel)Analyse distante SSH/SFTP (--remote)
ComponentVersionUsage
Python3.9+Running the source script
cryptographyrecentPEM/DER/P7B/CSR parsing
keytoolJava 8+ (JDK 25: --cacerts flag required)JKS, JCK, JCEKS, P12, PKCS12
runmqakm / gsk8capicmd_64IBM MQ 9+ / GSKitKDB, CMS
paramiko3+ (optional)Remote SSH/SFTP analysis (--remote)
ComponenteVersiónUso
Python3.9+Ejecución del script fuente
cryptographyrecienteParseo PEM/DER/P7B/CSR
keytoolJava 8+ (JDK 25: flag --cacerts requerido)JKS, JCK, JCEKS, P12, PKCS12
runmqakm / gsk8capicmd_64IBM MQ 9+ / GSKitKDB, CMS
paramiko3+ (opcional)Análisis remoto SSH/SFTP (--remote)