Chiffre des hommes dansants
Passez des lettres aux bonshommes du chiffre des hommes dansants de Conan Doyle, puis revenez au texte : HI devient deux figures, une par lettre, et ce qui n'est pas une lettre vous est signalé au lieu d'être deviné. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- HI
- Mode de calcul
- Encode
- Résultat
- face-R:armL-H:armR-U:legs-A face-L:armL-B:armR-D:legs-T
- Encodage
- dancing_men
- Longueur de l'entrée
- 2
- Longueur de la sortie
- 55
Cet outil du chiffre des hommes dansants encode des lettres latines en descriptions de poses de bonshommes inspirées de l’aventure de Sherlock Holmes d’Arthur Conan Doyle intitulée The Adventure of the Dancing Men, ou décode un flux de ces jetons de figure en texte majuscule. Chaque lettre de A à Z possède un jeton de pose fixe et unique construit à partir de l’orientation du visage, de la position des bras gauche et droit et de l’attitude des jambes, de sorte que la transformation est une table pédagogique réversible plutôt qu’une clé secrète.
Les hommes dansants en classe et dans les énigmes
Développeurs et enseignants rencontrent les hommes dansants dans des modules de littérature qui croisent la cryptographie, des échauffements de capture-the-flag qui utilisent des codes monoalphabétiques classiques, et des démos légères qui montrent qu’une table de poses fixe peut encore porter un texte latin complet, une figure à la fois. Les équipes frontend peuvent afficher encode et decode côte à côte pour que les apprenants voient que deux jetons de pose documentés sont exactement HI sans inventer un alphabet privé.
Les ingénieurs qualité génèrent des paires déterministes d’encode et de decode pour des tests de contrat, afin qu’un middleware prétendant prendre en charge les hommes dansants ne puisse pas basculer en silence vers Atbash ni supprimer le rapport des non mappés. Les organisateurs de concours précalculent des clés de réponse pour de modestes phrases anglaises sans faire confiance à des jouets web opaques qui inventent des lettres pour des bonshommes inconnus.
Associez-le à d’autres aides d’encodage classiques pour constituer un petit laboratoire d’outils de texte gratuits et déterministes, et ne traitez jamais le chiffre des hommes dansants comme un substitut au chiffrement authentifié moderne lorsque de vrais secrets sont en jeu.
Cas d’usage
Chiffre littéraire et leçons Holmes
Encodez et décodez des jetons de poses de bonshommes pour des fiches de cours sur les hommes dansants de Conan Doyle et la substitution monoalphabétique.
Échauffements d’énigmes et CTF
Construisez des flux de figures réversibles pour chasses au trésor et défis capture-the-flag qui enseignent les chiffres classiques sans assets d’image.
Questions fréquentes
Combien coûte l’outil du chiffre des hommes dansants ?
Il est gratuit dans le navigateur sur cette page.
Comment décoder les figures des hommes dansants ?
Envoyez les jetons de pose séparés par des espaces comme text et définissez mode à decode (ou dec, decrypt, d). L’encodage est la valeur par défaut si mode est omis.
Quels caractères sont encodés ?
Uniquement les lettres alphabétiques A–Z dans n’importe quelle casse. Decode accepte les jetons de pose documentés (insensible à la casse) et les séparateurs courants entre figures.
Le chiffre des hommes dansants est-il sûr pour de vrais secrets ?
Non. C’est un chiffre classique d’enseignement littéraire avec une table fixe publique. Utilisez un chiffrement authentifié moderne tel que AES-GCM pour une véritable confidentialité.
Que signifie chaque partie d'une figure des hommes dansants ?
Chaque figure décrit un bonhomme : de quel côté il regarde, où sont ses bras gauche et droit (levé, à l'horizontale, baissé ou plié) et comment se tiennent ses jambes, jointes, écartées ou en marche. Chaque lettre de A à Z a une posture fixe.
Outils associés
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/enc/dancing-men \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"HI"}'const res = await fetch("https://api.kit.forhosting.com/enc/dancing-men", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "HI"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/dancing-men",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "HI"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/dancing-men", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"HI"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"HI"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/dancing-men", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"text": "HI"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.dancing_men",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |
Notes techniques
Le mode encode parcourt l’entrée, conserve les caractères alphabétiques, ignore les espaces, émet des jetons de figure séparés par des espaces et dresse la liste dans unmapped_letters des symboles non alphabétiques afin que vous voyiez ce qui n’est pas entré dans le chiffre. Le mode decode découpe les jetons sur les espaces et séparateurs courants, reconstruit le message à partir des poses connues et signale les jetons inconnus dans unmapped_figures au lieu d’inventer des lettres. Une entrée vide, une chaîne sans lettres A–Z à l’encodage, ou un flux de décodage sans figures reconnues échoue avec invalid_input. Utilisez-le gratuitement dans le navigateur pour des leçons de chiffre littéraire, des fiches d’énigmes Holmes et des démonstrations de figures réversibles, ou appelez l’API à $0.002 par requête réussie lorsque vos pipelines ont besoin de transformations reproductibles des hommes dansants.
Ce qu’est le chiffre des hommes dansants et ce que renvoie cet outil
Le chiffre des hommes dansants est le code monoalphabétique de bonshommes qui apparaît dans l’aventure homonyme de Holmes de Conan Doyle : chaque lettre d’un message secret est dessinée comme un petit homme dans une pose distincte, et Holmes reconstruit l’alphabet par fréquences et cribs comme pour toute substitution simple. Chaque jeton suit une grammaire compacte : visage à gauche ou à droite, bras gauche levé, horizontal, baissé ou plié, bras droit avec les mêmes quatre options, et jambes jointes, écartées, pas-gauche ou pas-droit. Cette grammaire produit bien plus de vingt-six combinaisons ; le endpoint utilise une affectation stable de A à Z pour que H devienne toujours la même chaîne de figure et que cette chaîne renvoie toujours H. Historiquement les hommes étaient des dessins à l’encre sur papier ; ce endpoint n’expose que la carte lettre-description pour que enseignants, auteurs d’énigmes et d’essais travaillent avec les codes sans livrer d’assets d’image. La réponse JSON inclut toujours result pour la chaîne transformée, encoding fixé à dancing_men, mode à encode ou decode, input_length et output_length des chaînes envoyées et reçues, letter_count et figure_count du nombre de lettres A–Z ou de jetons de pose produits ou consommés, les tableaux unmapped_letters et unmapped_figures pour les symboles ou jetons que la table n’a pas pu mapper, et une chaîne formula qui reformule la grammaire de pose pour la documentation et les contrôles automatisés. Il n’y a ni chemin de streaming ni repli silencieux vers le baconien, le Morse ou une clé Vigenère : soit la charge utile est valide pour le mode choisi, soit la requête échoue avec invalid_input. Si vous avez besoin de chiffres polyalphabétiques, de variantes ROT ou d’un chiffrement authentifié moderne, utilisez ces endpoints dédiés ; cette page ne répond qu’au contrat de bonshommes des hommes dansants déjà décrit dans les chapitres de chiffre littéraire.
Comment text et mode sont lus et comment les éléments non mappés sont signalés
produit encore des figures pour H et I tout en signalant le point d’exclamation. En mode decode le flux est découpé sur espaces, tabulations, sauts de ligne, virgules, points-virgules et barres verticales ; chaque jeton non vide est recherché dans la table inverse. Les champs préférés de la charge utile sont text pour le message ou le flux de figures et mode optionnel pour encode ou decode. Text accepte des alias tels que input, value, s, message, plaintext et ciphertext afin que formulaires et clients SDK réutilisent des noms de colonnes existants. Mode vaut encode par défaut s’il est omis et accepte aussi des alias courts tels que enc, encrypt, e pour encoder et dec, decrypt, d pour décoder ; toute autre chaîne échoue à la validation. En mode encode seules les lettres alphabétiques sont conservées et mappées, la casse est ignorée à l’entrée, les espaces sont omis sans être traités comme une erreur, et le résultat est une suite de jetons de pose séparés par des espaces ; les caractères qui ne sont ni lettres ni espaces sont collectés dans l’ordre dans unmapped_letters, de sorte qu’une chaîne comme HI! Si aucune lettre ne reste après le filtrage, le moteur rejette la requête avec invalid_input afin qu’une chaîne de seuls chiffres ne ressemble pas à un chiffre vide réussi. Les jetons connus ajoutent une lettre majuscule ; les inconnus n’ajoutent rien à result et sont listés dans unmapped_figures pour que vous voyiez quelles figures n’ont pas été reconnues. Si tous les jetons sont inconnus, la requête échoue avec invalid_input plutôt que de renvoyer un succès vide. Un text manquant, vide, non chaîne, ainsi que des modes inconnus, lèvent également invalid_input. Associez l’exécution gratuite dans le navigateur de cette page à l’API tarifée lorsque vous avez besoin du même résultat mathématique dans un pipeline automatisé. Les entrées invalides renvoient invalid_input et ne sont pas facturées, ce qui garde la validation peu coûteuse tandis que les transformations réussies restent à un prix fixe par élément.
Où les hommes dansants s’insèrent dans les cours, énigmes et fixtures de test
Les services backend précalculent des chaînes de défi pour des API d’énigmes ou des bacs à sable pédagogiques où l’étudiant doit rassembler des figures reconnues pour débloquer l’étape suivante. Les outils produit et éducation utilisent la transformation lorsqu’un apprenant colle un flux de figures et que l’interface doit afficher à la fois les lettres récupérées et tout unmapped_figures sous la table documentée. Sur cette page le travail s’exécute entièrement dans votre navigateur ; via l’API chaque consultation réussie coûte $0.002, une validation échouée n’est pas facturée et rien n’est stocké après la réponse. Cette répartition — exploration interactive gratuite et API identique tarifée — correspond au reste du catalogue KIT de niveau A et vous permet de passer d’une démo de classe à un pipeline automatisé sans changer le résultat transformé.
Cas d'intégration
Fixtures CI déterministes
Générez des paires reproductibles de texte chiffré et en clair des hommes dansants pour tests unitaires, fichiers golden et contrôles de contrat.
Questions techniques
Que deviennent la ponctuation et les chiffres à l’encodage ?
Ils ne sont pas mappés en figures. Les espaces sont ignorés ; les autres non-lettres apparaissent dans unmapped_letters tandis que les lettres A–Z s’encodent toujours. S’il ne reste aucune lettre, la requête échoue avec invalid_input.