Chiffre par substitution à mot-clé
Avec le mot-clé CRYPTO, Hello World devient Btggj Vjmgp : le mot-clé ouvre l'alphabet chiffré, les lettres restantes suivent dans l'ordre et chaque lettre est remplacée par sa partenaire. Déchiffrez avec le même mot-clé pour retrouver le message. Gratuit dans votre navigateur.
- Gratuit
- Fonctionne dans votre navigateur
- Sans inscription
- Vos données restent sur votre appareil
Lancer gratuitement
Exemple résolu
- Texte
- Hello World
- Mot-clé
- CRYPTO
- Action
- Encrypt
- Résultat
- Btggj Vjmgp
- Alphabet
- CRYPTOABDEFGHIJKLMNQSUVWXZ
- Lettres associées
- 10
Besoin d'un classique chiffre à mot-clé pour des démonstrations en classe, la conception d'énigmes, des échauffements de CTF ou l'obscurcissement réversible de courtes notes ? Saisissez votre message et un mot-clé formé de lettres A–Z uniques. L'outil construit un alphabet mixte en plaçant d'abord le mot-clé, puis en complétant les lettres restantes dans l'ordre, avant de substituer chaque lettre tout en préservant la casse et en laissant intacts ponctuation, espaces et chiffres. Choisissez chiffrer ou déchiffrer avec le même mot-clé pour que les allers-retours restent exacts.
Comment se construit un alphabet de substitution à mot-clé
Un chiffre par substitution monoalphabétique remplace chaque lettre de l'alphabet par exactement une autre lettre et conserve cette correspondance fixe pour tout le message. Lorsque la correspondance est amorcée par un mot-clé, les lettres du mot-clé apparaissent en premier dans l'alphabet chiffré (chaque lettre une seule fois), et les lettres restantes de A à Z suivent dans leur ordre naturel. Par exemple, le mot-clé CRYPTO produit l'alphabet de vingt-six caractères CRYPTOABDEFGHIJKLMNQSUVWXZ.
Le A en clair correspond à C, le B à R, le C à Y, et ainsi de suite jusqu'à Z. Le déchiffrement inverse la même table : chaque lettre du texte chiffré est recherchée dans l'alphabet mixte et remplacée par la lettre en clair au même indice. Les caractères non alphabétiques n'entrent jamais dans la table ; ils sont recopiés tels quels, de sorte que dates, codes et ponctuation restent lisibles.
Comme le mot-clé doit utiliser chaque lettre au plus une fois, la construction est sans ambiguïté : il n'y a pas de déduplication silencieuse susceptible de surprendre un étudiant comparant ses tables faites à la main avec la sortie machine. Les formes majuscule et minuscule d'une même lettre partagent une seule entrée de table ; le moteur préserve la casse de chaque caractère source, si bien que HELLO et hello se chiffrent de manière cohérente par rapport au même alphabet.
Cette construction classique est plus faible que la cryptographie moderne et est destinée à l'enseignement, aux énigmes et à un obscurcissement léger, non à la protection de secrets au repos ou en transit.
Chiffrer, déchiffrer et valider le mot-clé
Le mot-clé est débarrassé de ses espaces de bordure et ne doit contenir que des lettres A à Z, sans espaces, chiffres ni symboles. Si une lettre apparaît plus d'une fois, l'appel échoue en nommant la lettre répétée, afin que vous corrigiez la clé au lieu de recevoir un alphabet silencieusement altéré. En cas de succès, la réponse renvoie le texte d'origine, le mot-clé normalisé en majuscules, l'action utilisée, l'alphabet mixte complet de vingt-six lettres, la chaîne de résultat transformée, et un décompte des caractères alphabétiques mis en correspondance.
Le chiffrement fait passer les lettres du texte en clair, à travers l'alphabet clair, vers l'alphabet mixte ; le déchiffrement parcourt le sens inverse. Un aller-retour chiffrement puis déchiffrement avec le même mot-clé restitue exactement la casse d'origine des lettres et les caractères non alphabétiques. Le statut est en bêta le temps que la surface publique se stabilise, mais les règles de substitution suivent cette construction classique fixe et ne changeront pas pour des entrées identiques.
Conseils pratiques pour le chiffre à mot-clé
Appelez la capacité avec text et keyword comme champs obligatoires. Utilisez action decrypt lorsque le texte est déjà un texte chiffré produit par ce même alphabet à mot-clé. Privilégiez des mots-clés courts et mémorisables à lettres uniques pour enseigner la méthode, et des clés à lettres uniques plus longues quand vous voulez un brouillage plus dense pour des énigmes récréatives.
Ne considérez jamais ce chiffre comme un substitut d'AES ou d'un chiffrement authentifié : l'analyse de fréquence casse les tables monoalphabétiques sur un texte anglais un peu long. Associez l'outil à vos notes de cours ou à votre énoncé d'énigme pour que les étudiants vérifient leur travail manuel contre une référence stable.
Cas d’usage
Démonstrations de crypto en classe
Montrez aux étudiants comment un mot-clé construit un alphabet mixte et comment chiffrer et déchiffrer inversent la même table monoalphabétique.
Énigmes et échauffements de CTF
Générez un texte chiffré réversible pour chasses au trésor, escape games et défis d'introduction à la crypto avec un mot-clé connu.
Obscurcissement réversible léger
Brouillez de courtes étiquettes ou notes avec un mot-clé partagé quand il vous faut une correspondance aller-retour rapide plutôt qu'une vraie cryptographie.
Questions fréquentes
Quelles entrées le chiffre par substitution à mot-clé demande-t-il ?
text et keyword obligatoires. Le paramètre facultatif action vaut encrypt (par défaut) ou decrypt. Le mot-clé doit être formé uniquement de lettres A–Z uniques.
Que se passe-t-il si le mot-clé contient une lettre répétée ?
Les mots-clés manquants ou vides échouent de la même façon. Une entrée invalide n'est pas facturée.
Le chiffre est-il déterministe et sûr ?
Il est entièrement déterministe pour les mêmes texte, mot-clé et action. C'est un chiffre monoalphabétique classique pour l'enseignement et les énigmes, non une sécurité cryptographique moderne.
Comment l'alphabet chiffré est-il construit à partir du mot-clé ?
Les lettres du mot-clé viennent d'abord, chacune une seule fois, puis les lettres inutilisées de A à Z dans leur ordre habituel. CRYPTO donne CRYPTOABDEFGHIJKLMNQSUVWXZ : le A devient C, le B devient R et le C devient Y.
Les espaces, chiffres et signes de ponctuation sont-ils modifiés ?
Non. Seules les lettres passent par la substitution ; espaces, chiffres et ponctuation sont recopiés tels quels, donc dates et codes restent lisibles. Chaque lettre garde aussi sa casse, c'est pourquoi Hello devient Btggj.
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/keyword-cipher \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello World","keyword":"CRYPTO"}'const res = await fetch("https://api.kit.forhosting.com/enc/keyword-cipher", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello World",
"keyword": "CRYPTO"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/keyword-cipher",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello World",
"keyword": "CRYPTO"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/keyword-cipher", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello World","keyword":"CRYPTO"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello World","keyword":"CRYPTO"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/keyword-cipher", 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": "Hello World",
"keyword": "CRYPTO"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.keyword_cipher",
"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
Les mots-clés manquants et les clés à lettres répétées échouent aussitôt avec invalid_input, afin qu'un matériel erroné ne ressemble jamais à un chiffrement réussi. Exécutez-le gratuitement dans le navigateur ou appelez la même logique déterministe via l'API, $0.002 par requête réussie.
Chiffrer, déchiffrer et valider le mot-clé
Envoyez une chaîne text obligatoire et un keyword obligatoire, et définissez éventuellement action à encrypt ou decrypt (encrypt par défaut). S'il est manquant ou vide après nettoyage, l'appel échoue avec invalid_input en nommant le mot-clé absent. Il n'y a aucun appel réseau, aucune graine aléatoire ni dépendance à l'horloge, si bien que tests de référence et widgets de navigateur concordent toujours avec l'API pour la même entrée.
Utiliser l'API, tarification et conseils pratiques
La tarification de l'API hébergée est un forfait de $0.002 par requête réussie ; les échecs de validation, tels qu'un mot-clé manquant ou une lettre répétée, ne consomment pas de solde. Pour les pipelines, soumettez chaque message comme sa propre tâche et récupérez les résultats via votre flux habituel de webhook ou de lien signé. Gardez des noms de champs explicites plutôt que d'empaqueter une prose libre : le contrat reste aligné avec OpenAPI, les types du SDK et les contrôles de formulaire, et évite toute analyse ambiguë entre clé et message.
Questions techniques
Que contient une réponse réussie ?
Le texte d'origine, le mot-clé normalisé, l'action, l'alphabet mixte complet, la chaîne de résultat et letters_mapped (nombre de caractères A–Z substitués).
Combien coûte l'API du chiffre à mot-clé ?
Chaque appel réussi à l'API coûte $0.002. Le même moteur s'exécute gratuitement dans votre navigateur, sans compte requis.