Chiffre autokey
Chiffrez ou déchiffrez avec l'autokey, où une courte clé d'amorce se poursuit avec le message lui-même : avec la clé KEY, Hello, World! devient Rijss, Hzfhr!, car la clé courante est KEYHELLOWO. Espaces et ponctuation restent en place. 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!
- Clé
- KEY
- Mode de calcul
- Encrypt
- Résultat
- Rijss, Hzfhr!
- Lettres de la clé
- KEY
- Longueur de la clé
- 3
- Lettres de la clé courante
- KEYHELLOWO
Le chiffre autokey est un chiffre polyalphabétique classique de la famille de Vigenère, dans lequel le court mot-clé d'amorce est prolongé par le message lui-même au lieu de se répéter indéfiniment. Vous collez le texte, une clé d'amorce contenant au moins une lettre latine et un mode encrypt ou decrypt ; les lettres de A à Z et de a à z se déplacent par addition ou soustraction modulaire, tandis que chiffres, espaces, ponctuation et autres caractères restent en place afin de préserver la structure lisible. Au chiffrement, la clé courante est l'amorce suivie des lettres successives du texte clair ; au déchiffrement, la même amorce est suivie des lettres déjà récupérées — c'est ainsi que le destinataire reconstruit le flux sans stocker à l'avance tout le texte clair.
Comment le chiffre autokey construit une clé courante à partir du message
L'autokey améliore le Vigenère à mot-clé répété en enchaînant le message dans le flux de clé après une courte amorce. Chaque lettre latine de l'amorce et du message est associée à un indice de zéro à vingt-cinq. Pour le chiffrement, les premières lettres de la clé courante sont celles de l'amorce ; une fois celles-ci épuisées, chaque lettre de clé suivante est la lettre précédente du texte clair qui vient d'être chiffrée.
Le texte chiffré de chaque caractère alphabétique est l'indice du texte clair plus l'indice de la clé, modulo vingt-six, réécrit avec la même casse, de sorte que les majuscules restent majuscules et les minuscules minuscules. Les caractères hors de A–Z et a–z — y compris espaces, virgules, chiffres, emoji et lettres accentuées hors du bloc latin de base — sont copiés sans changement et n'avancent pas le pointeur de clé, conformément aux tables des manuels où seul le squelette alphabétique d'une phrase est brouillé.
Le déchiffrement inverse l'addition : chaque lettre du texte chiffré moins la lettre courante de la clé, modulo vingt-six, donne une lettre de texte clair, et cette lettre récupérée est ajoutée à la clé courante pour l'étape alphabétique suivante. Mathématiquement, chaque étape est une arithmétique modulaire entière sur un alphabet fixe de vingt-six lettres : aucun arrondi flottant de la clé, aucun appel réseau, aucune graine aléatoire, aucun horodatage.
Cette page implémente uniquement l'autokey classique — ni chiffre de César à décalage fixe, ni soustraction de Beaufort, ni AES, ni craqueur automatique de récupération de clé. Ce sont des outils et des intentions de recherche distincts, avec leurs propres pages.
Où les outils de chiffre autokey apparaissent dans le travail réel
Les cours d'initiation à la cryptographie présentent l'autokey après César et le Vigenère à mot-clé répété, pour que les étudiants voient comment une courte amorce peut ensemencer un long flux de clé non répété sans inventer les chiffres par blocs modernes. Les échauffements de capture-the-flag et les chasses aux énigmes cachent encore des messages en autokey ou en variantes, et les solveurs veulent une transformation rapide et prévisible amorce plus message, pas une suite générale de cryptanalyse.
Les équipes support et contenu masquent parfois légèrement spoilers, réponses de quiz ou étiquettes internes avec un chiffre classique à amorce et ont besoin du chemin inverse sans installer de bibliothèque cryptographique propre à un langage. Si vous avez besoin d'un décalage de César fixe d'une lettre, d'une correspondance réciproque de Beaufort, d'un chiffrement authentifié fort, d'un encodage Base32 ou Base64, ou d'une récupération automatique de clé par analyse de fréquences, traitez-les comme des intentions de recherche et des pages séparées plutôt que de surcharger cette page d'autokey classique.
Cas d’usage
Démonstrations d'autokey en classe
Chiffrez et déchiffrez des phrases d'exemple avec une amorce connue pour que les cours de cryptographie montrent des flux de clé amorce plus texte clair sans écrire de scripts ponctuels.
Défis autokey en énigmes et CTF
Appliquez ou inversez une amorce autokey sur des chaînes de défi pour des correcteurs de devoirs et des échauffements de CTF qui attendent un comportement polyalphabétique classique.
Questions fréquentes
Qu'est-ce que le chiffre autokey ?
Un chiffre polyalphabétique classique qui utilise un court mot-clé d'amorce prolongé par le message lui-même. Le chiffrement utilise C = (P + K) mod 26 ; le déchiffrement utilise P = (C - K) mod 26 avec le texte clair récupéré qui prolonge la clé.
Comment déchiffrer un texte chiffré autokey ?
Appelez la même capacité avec mode decrypt, le texte chiffré comme text et l'amorce d'origine comme key. La clé courante est reconstruite à partir de l'amorce plus chaque lettre de texte clair récupérée.
Que se passe-t-il si la clé est vide ?
Le mot-clé d'amorce doit contenir au moins une lettre latine A–Z ou a–z ; les clés vides ou sans lettre sont rejetées et non facturées.
Les espaces et la ponctuation sont-ils chiffrés ?
Non. Seules les lettres A–Z et a–z sont transformées. Espaces, chiffres, ponctuation et autres caractères passent sans changement et n'avancent pas la clé courante.
Combien cela coûte-t-il ?
L'outil du navigateur est gratuit et s'exécute localement.
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/autokey \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, World!","key":"KEY"}'const res = await fetch("https://api.kit.forhosting.com/enc/autokey", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, World!",
"key": "KEY"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/autokey",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, World!",
"key": "KEY"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/autokey", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, World!","key":"KEY"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, World!","key":"KEY"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/autokey", 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!",
"key": "KEY"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.autokey",
"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
Une clé vide ou sans caractère alphabétique est rejetée immédiatement avec invalid_input, de sorte que les correcteurs de devoirs et les scripts ne retombent jamais silencieusement sur un mot-clé par défaut.
Comment le chiffre autokey construit une clé courante à partir du message
L'amorce doit contenir au moins une lettre latine ; les clés vides, composées d'espaces ou de chiffres uniquement échouent avec invalid_input au lieu de se comporter comme une transformation identité. Même texte, même clé et même mode produisent toujours le même JSON.
Ce que vous envoyez et ce que vous recevez
Envoyez un champ chaîne obligatoire nommé text, un champ chaîne obligatoire nommé key et un mode facultatif qui vaut encrypt par défaut. Les échecs de validation ne consomment pas de solde prépayé. Les vérifications classiques consistent à chiffrer Hello, World! avec l'amorce KEY, à déchiffrer le texte chiffré avec la même clé jusqu'à la phrase d'origine et à confirmer qu'une clé vide est rejetée plutôt que traitée comme une non-opération. Les valeurs de mode acceptées sont encrypt et decrypt, plus des alias courants comme enc, dec, encode et decode. Le text peut être vide si vous voulez seulement une vérification d'identité triviale, mais la key ne doit pas être vide après le filtre alphabétique : les chaînes d'espaces et les clés ne contenant que des chiffres ou des symboles échouent avec invalid_input et un message clair en anglais mentionnant l'exigence de clé non vide. En cas de succès, la réponse renvoie mode, le text et la key d'origine, key_letters avec le flux d'amorce en majuscules A–Z réellement utilisé, key_length avec le nombre de positions alphabétiques de cette amorce, running_key_letters avec le flux de clé complet en majuscules consommé pour ce message, la chaîne result transformée, length de ce résultat, letters_transformed avec le décompte des caractères alphabétiques déplacés, plus les étiquettes alphabet et cipher et une chaîne formula permettant aux clients de vérifier le profil appliqué. L'absence de text ou de key, des objets non chaîne pour l'un ou l'autre champ, un mode inconnu et des chaînes dépassant le maximum documenté échouent avec invalid_input.
Où les outils de chiffre autokey apparaissent dans le travail réel
Comme cette capacité est un moteur de parse pur, le tarif API est la base publiée de $0.002 par élément réussi et la validation échouée ne consomme pas de solde.
Cas d'intégration
Masquage léger de spoilers et d'étiquettes
Brouillez des réponses de quiz ou des étiquettes internes avec une amorce classique et restaurez-les ensuite avec le même contrat dans le navigateur ou l'API.