Transposition Myszkowski
Avec la clé TOMATO, WEAREDISCOVEREDFLEEATONCE devient ROFOACDTEDSEEEACWEIVRLENE, et la même clé restitue le texte d'origine. Les lettres répétées de la clé sont lues ensemble, ligne par ligne : c'est ce qui distingue Myszkowski de la transposition colonnaire simple. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- WEAREDISCOVEREDFLEEATONCE
- Key
- TOMATO
- Mode de calcul
- encrypt
- Résultat
- ROFOACDTEDSEEEACWEIVRLENE
- Encodage
- myszkowski
- Longueur de la clé
- 6
- Rangs de la clé
- 4, 3, 2, 1, 4, 3
Cet outil de transposition Myszkowski chiffre ou déchiffre un texte en réordonnant les caractères sous un mot-clé qui utilise volontairement des lettres répétées. Contrairement à la transposition colonnaire simple, où les caractères égaux de la clé sont départagés par un index de gauche à droite, Myszkowski attribue le même rang à chaque copie d'une lettre et lit ces colonnes ensemble ligne par ligne. Vous saisissez un message, un mot-clé non vide et un mode optionnel ; le moteur construit une grille dont la largeur égale la longueur de la clé, écrit le texte de gauche à droite et de haut en bas, classe les lettres de la clé par ordre Unicode avec des rangs partagés pour les répétitions, puis émet le chiffré en parcourant les rangs en ordre croissant. Le déchiffrement inverse ce placement afin que le même mot-clé restaure la chaîne d'origine bit à bit. Tous les caractères se déplacent ensemble : espaces, chiffres et ponctuation gardent leur place et ne sont jamais retirés, ce qui conserve la fidélité des feuilles de cours et des charges CTF. Un contrôle classique est WEAREDISCOVEREDFLEEATONCE sous la clé TOMATO, qui chiffre vers le chiffré Myszkowski bien connu et se déchiffre avec le même mot-clé.
Ce qu'est la transposition Myszkowski et ce que renvoie cet outil
La transposition Myszkowski est un chiffre classique de réordonnancement proposé par Émile Victor Théodore Myszkowski en 1902 comme variante de la transposition colonnaire. Le secret reste l'ordre des colonnes, mais le mot-clé est censé contenir des lettres répétées afin que plusieurs colonnes partagent un même rang. Les rangs uniques sont transcrits de haut en bas dans la colonne ; les rangs partagés sont transcrits de gauche à droite sur ces colonnes à chaque ligne, puis vers la ligne suivante.
Les caractères du clair sont écrits dans la grille ligne par ligne ; lorsque la dernière ligne est incomplète, les colonnes de gauche contiennent simplement un caractère de plus que celles de droite, selon la règle usuelle des manuels qui préserve la longueur, sans caractères de bourrage forcés sauf si vous les placez vous-même dans l'entrée.
Le chiffrement concatène le matériel en ordre de rang croissant sous cette règle de rang partagé ; le déchiffrement écrit le chiffré dans ces positions avec les mêmes hauteurs dérivées de la longueur totale et de la largeur de la clé, puis lit la grille ligne par ligne pour retrouver l'original. Cette page applique toujours ce contrat Myszkowski fixe et ne bascule jamais en silence vers une colonnaire simple à égalités stables, une transposition par routes, un rail fence ou un chiffre de substitution.
Où l'utiliser : cours, énigmes et exercices
Les développeurs et les enseignants rencontrent la transposition Myszkowski dans les échauffements capture-the-flag, les chapitres de manuels sur la cryptologie classique et les démos qui montrent comment les lettres répétées du mot-clé changent le chemin de lecture par rapport à la transposition colonnaire simple. Les équipes frontend peuvent brouiller des phrases d'exemple pour des captures d'écran sans inventer un alphabet maison, puis les récupérer avec decrypt sous la même clé.
Les ingénieurs qualité génèrent des paires encrypt/decrypt déterministes pour des tests de contrat, afin qu'un middleware affirmant le support Myszkowski ne bascule pas en silence vers un motif colonnaire à égalités stables ni ne supprime les espaces. Les organisateurs de concours précalculent des clés de réponse pour de modestes phrases anglaises sans se fier à des jouets web opaques qui forcent une sortie en majuscules seulement ou insèrent des caractères X de bourrage que vous n'avez jamais demandés.
Les outils produit et éducation utilisent la transformation lorsqu'un apprenant colle un chiffré et que l'interface doit afficher le clair récupéré sous le mot-clé documenté. Associez-la à d'autres aides d'encodage classique lorsque vous construisez un petit laboratoire d'outils texte gratuits et déterministes, et ne traitez jamais la transposition Myszkowski comme un substitut au chiffrement moderne authentifié.
Cas d’usage
Pratique CTF et chiffre classique
Chiffrez et déchiffrez des phrases Myszkowski avec des lettres répétées dans le mot-clé pour des énigmes, des salles de classe et des échauffements capture-the-flag.
Leçons d'histoire de la cryptographie
Montrez les groupes de colonnes à rang partagé, les lectures de ligne de gauche à droite pour les répétitions, et les grilles qui préservent la longueur sans bourrage forcé.
Questions fréquentes
Combien coûte l'outil de transposition Myszkowski ?
Il est gratuit dans votre navigateur sur cette page.
Comment déchiffrer un chiffré Myszkowski ?
Envoyez le chiffré comme text, le même mot-clé comme key, et définissez mode à decrypt (ou dec, decode, d). Le chiffrement est la valeur par défaut lorsque mode est omis.
Que se passe-t-il si la clé est vide ou absente ?
Le mot-clé doit être une chaîne non vide pour que le moteur attribue les rangs de colonnes Myszkowski.
En quoi Myszkowski diffère-t-il de la transposition colonnaire simple ?
En Myszkowski, les lettres répétées de la clé partagent un rang et ces colonnes sont lues de gauche à droite à chaque ligne. La colonnaire simple départage souvent par l'index gauche et lit chaque colonne entièrement de haut en bas.
La transposition Myszkowski est-elle sûre pour de vrais secrets ?
Non. C'est un chiffre classique d'enseignement de 1902. Utilisez un chiffrement moderne authentifié tel que AES-GCM pour une confidentialité réelle.
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/myszkowski \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}'const res = await fetch("https://api.kit.forhosting.com/enc/myszkowski", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/myszkowski",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/myszkowski", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"WEAREDISCOVEREDFLEEATONCE","key":"TOMATO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/myszkowski", 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": "WEAREDISCOVEREDFLEEATONCE",
"key": "TOMATO"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.myszkowski",
"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
Utilisez-le gratuitement dans le navigateur pour des leçons d'histoire de la cryptographie, la conception d'énigmes et des démos de laboratoire réversibles, ou appelez l'API à $0.002 par requête réussie lorsque les pipelines ont besoin de transformations Myszkowski reproductibles.
Ce qu'est la transposition Myszkowski et ce que renvoie cet outil
La réponse JSON inclut result pour la chaîne réordonnée, encoding fixé à myszkowski, mode à encrypt ou decrypt, key qui reprend le mot-clé fourni, key_length, key_ranks comme le rang base un de chaque position de la clé, read_groups comme les groupes d'indices de colonne base zéro dans l'ordre de lecture, input_length et output_length qui coïncident toujours car la transformation ne fait que permuter, et une chaîne formula qui reformule le contrat des groupes de rang partagé pour la documentation et les tests. Il n'y a ni flux en streaming ni repli silencieux vers Vigenère ou Base64 : soit vous fournissez un texte non vide et une clé non vide, soit la requête échoue avec invalid_input. Si vous avez besoin d'une colonnaire simple, de décalages polyalphabétiques ou d'un chiffrement moderne, utilisez ces endpoints dédiés ; cette page ne répond qu'au contrat de mot-clé Myszkowski déjà décrit dans les chapitres d'histoire de la cryptographie et les échauffements CTF.
Comment le texte, la clé et le mode sont lus et comment les résultats restent reproductibles
Les champs de charge préférés sont text pour le message, key pour le mot-clé et mode optionnel pour encrypt ou decrypt. Les rangs de la clé et les groupes de lecture sont calculés une fois à partir de la clé, puis la même formule de hauteurs sert au chiffrement et au déchiffrement, de sorte qu'un aller-retour restaure toujours la charge d'origine pour toute chaîne non vide sous ce mot-clé. L'exemple classique TOMATO produit les rangs quatre trois deux un quatre trois pour les six colonnes, des rangs uniques pour A et M, et des rangs partagés pour les deux colonnes O et les deux colonnes T. 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 sans renommer chaque point d'appel. Key accepte keyword, k, password et passphrase ; toute la chaîne non vide définit les colonnes, y compris chiffres et symboles si vous les incluez, car le classement utilise la comparaison de caractères Unicode plutôt qu'une réduction à A–Z seulement. Une clé vide ou absente est rejetée avec invalid_input et un message clair indiquant qu'un mot-clé non vide est requis pour les rangs de colonnes Myszkowski. Mode vaut encrypt par défaut s'il est omis et accepte aussi des alias courts tels que enc, encode, e pour encrypt et dec, decode, d pour decrypt ; toute autre chaîne échoue à la validation. Texte manquant, texte vide, types non chaîne et modes inconnus lèvent tous invalid_input, afin qu'un formulaire vide ne ressemble pas à une opération réussie sans effet. Associez l'exécution gratuite dans le navigateur de cette page à l'API tarifée lorsque vous avez besoin de la même permutation dans un pipeline automatisé sans réimplémenter vous-même l'empaquetage de grille à rang partagé. Les entrées invalides renvoient invalid_input et ne sont pas facturées, ce qui maintient la validation peu coûteuse tandis que les transformations réussies restent à un prix fixe par élément.
Où la transposition Myszkowski s'inscrit dans les leçons, énigmes et fixtures de test
Les services backend encodent de courtes chaînes de défi pour des API d'énigmes ou des bacs à sable pédagogiques où les étudiants doivent reconstruire les groupes de rang partagé pour débloquer l'étape suivante. 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 division — exploration interactive gratuite et API tarifée identique — correspond au reste du catalogue tier A du KIT et vous permet de passer d'une démo en classe à un pipeline automatisé sans changer le résultat réordonné.
Cas d'intégration
Fixtures CI déterministes
Générez des paires reproductibles de chiffré et de clair Myszkowski pour tests unitaires, fichiers golden et contrôles de contrat.