Outil pour identifier/reconnaitre le type de chiffrement/codage appliqué à un message (plus de 200 chiffres/codes sont détectables) afin de le déchiffrer/décoder rapidement.
Reconnaitre un Chiffrement - dCode
Catégorie(s) : Cryptographie, Cryptanalyse, dCode
dCode est gratuit et ses outils sont une aide précieuse dans les jeux, les maths, les énigmes, les géocaches, et les problèmes à résoudre au quotidien !
Une suggestion ? un problème ? une idée ? Écrire à dCode !
Un détecteur de chiffrement est un outil informatique conçu pour reconnaitre un chiffrement/codage à partir d'un message texte. Le détecteur réalise une cryptanalyse, examine diverses caractéristiques du texte, telles que la distribution des lettres, la répétition de caractères, la longueur des mots, etc. afin de déterminer le type de chiffrement et guider les utilisateurs vers les bons outils en fonction du type de code ou chiffrement identifié.
Pour déchiffrer/décrypter un message codé, il est nécessaire de connaître le chiffrement utilisé (ou la méthode de codage, ou le principe cryptographique mis en oeuvre). Sans connaitre la technique choisie par l'émetteur du message, impossible de le déchiffrer (ou décoder). La connaissance du chiffrement (ou codage, ou code) est donc la première étape pour débuter le processus de déchiffrement (ou décodage).
dCode propose donc, sur cette page ci-dessus, un outil d'intelligence artificielle dédié à la reconnaissance/identification automatique de chiffrement et des liens directs vers les outils capables de déchiffrer le message/texte.
Pour reconnaitre/deviner le type de chiffrement/codage utilisé pour chiffrer/encoder un message, dCode utilise plusieurs méthodes de détection/cryptanalyse :
— l'analyse des fréquences : quels caractères du message apparaissent le plus souvent ? dans quelle proportion ? quels caractères n'apparaissent pas ? Cette analyse peut être réalisée pour tous les caractères (mais souvent les lettres A-Z et les chiffres 0-9 permettent d'éliminer de nombreuses méthodes de chiffrements/codage). L'analyse des bigrammes ou trigrammes (ou plus généralement groupe de lettres) permet de raffiner la cryptanalyse, la présence ou l'absence de certains groupes de lettres sont des indices.
— l'indice de coincidence : à quel point les caractères du message sont-ils aléatoires ? Les messages intelligibles (en français) tendent à favoriser certaines lettres et n'utilisent pas de la même façon le E que le X (bien plus rare).
— la recherche de signature : certains chiffrements/encodage ont des marques caractéristiques, une signature qui le rend identifiable.
Exemple : Le code base64 contient tous les chiffres et les lettres (majuscule et minuscule) possibles réparties de manière assez équitables mais 3 fois sur 4, il se termine par le signe =.
Lorsque le message est accompagné d'instructions ou d'indices, certains mots-clés peuvent déclencher plus de résultats grâce à la base de données de dCode. NB: ne pas indiquer de texte clair connu.
Parfois l'identificateur de chiffrement ne trouve peu ou pas de résultat pertinents, plusieurs raisons sont possibles :
— Le message est trop court : un message ne contenant pas assez de caractères ne permet pas d'effectuer une bonne analyse de fréquences. Les possibilités deviennent très nombreuses sans moyen d'identifier précisément le chiffrement.
— Le message est a une faible entropie : il est composé de peu de caractères distincts (un message binaire ne contenant que des 0 et de 1 possède une faible entropie). De plus, presque tous les messages peuvent être stockés en binaire, identifier le chiffrement précisément est difficile.
— Le message comporte des caractères inutiles (comme des espaces entre chaque lettre), ce qui affaibli les analyses de fréquences. Supprimer les espaces ou autres symboles inutiles pour de meilleurs résultats.
— Le message est surchiffré : plusieurs encodage/chiffrements successifs ont été appliqués, le surchiffrement tend à masquer les signatures caractéristiques du chiffrement original.
— Le message est composé de plusieurs messages distincts : la présence de plusieurs chiffrements ayant des propriétés différentes trouble le détecteur qui recherche un chiffrement unique. Merci de découper le message afin de déterminer le codage de chaque portion.
— Le chiffrement utilisé est récent : les techniques modernes de cryptographie sont telles qu'il est impossible de reconnaître un message chiffré d'un message aléatoire, c'est d'ailleurs une qualité pour un bon chiffrement. L'identification est, par essence, difficile.
— Le chiffrement utilisé est très rare : dCode permet de détecter plus de 300 chiffrements différents et continue de s'améliorer grâce à vos retours et messages, mais il n'est pas impossible que certains chiffrements soient encore inconnus/manquants.
Parfois l'algorithme de reconnaissance (basé sur l'intelligence artificielle et le machine learning) trouve des signaux multiples, des signes distinctifs venant de plusieurs types de chiffrements et peut renvoyer des résultats approximatifs. Merci de nous contacter avec votre message chiffré, le message original et la méthode de chiffrement utilisée pour que dCode puisse faire apprendre à l'analyseur ce chiffrement pour les prochaines fois. Plus il y a de données, plus la détection sera précise.
Le programme est basé sur une architecture de type réseau de neurones, plus exactement un perceptron multicouche (multilayer perceptron MLP). La couche d'entrée se compose des messages codés (en ngrammes) et la couche de sortie avec les différents types de chiffrements connus et référencés sur dCode. Régulièrement la base de données est mise à jour et de nouveaux chiffrements sont ajoutés ce qui permet d'affiner les résultats.
dCode se réserve la propriété du code source pour "Reconnaitre un Chiffrement". Sauf code licence open source explicite (indiqué Creative Commons / gratuit), l'algorithme pour "Reconnaitre un Chiffrement", l'applet ou snippet (convertisseur, solveur, chiffrement / déchiffrement, encodage / décodage, encryptage / décryptage, traducteur) ou les fonctions liées à "Reconnaitre un Chiffrement" (calculer, convertir, résoudre, décrypter / encrypter, déchiffrer / chiffrer, décoder / encoder, traduire) codés en langage informatique (Python, Java, C#, PHP, Javascript, Matlab, etc.) ou les données, en téléchargement, script, ou les accès API à "Reconnaitre un Chiffrement" ne sont pas publics, idem pour un usage hors ligne, PC, mobile, tablette, appli iPhone ou Android !
Rappel : dCode est gratuit.
Le copier-coller de la page "Reconnaitre un Chiffrement" ou de ses résultats est autorisée (même pour un usage commercial) tant que vous créditez dCode !
L'exportation des résultats sous forme de fichier .csv ou .txt est gratuite en cliquant sur l'icone export
Citer comme source bibliographique :
Reconnaitre un Chiffrement sur dCode.fr [site web en ligne], consulté le 22/12/2024,