ForHosting KIT · Outils pour développeurs

Chiffre multiplicatif

Avec la clé 5, HELLO devient JUDDS : chaque lettre est multipliée par votre clé modulo 26, et le déchiffrement passe par son inverse, 21. Les clés qui partagent un facteur avec 26 sont refusées, pour que le message reste toujours récupérable. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Texte
HELLO
Clé entière multiplicative
5
Mode de calcul
Encrypt
Vous obtenez
Résultat
JUDDS
Entrée
HELLO
Clé mod
5
Inverse de la clé
21

Le chiffre multiplicatif est un système monoalphabétique classique qui multiplie l'indice de chaque lettre par une clé entière secrète modulo vingt-six : le A en clair correspond à zéro, le B à un, et ainsi de suite jusqu'au Z à vingt-cinq ; puis C égale k fois P modulo vingt-six à l'encryptage, et l'inverse modulaire de k restaure l'original au déchiffrement.

Comment fonctionnent la clé coprime et la multiplication modulaire

Le chiffre multiplicatif se comprend le plus facilement comme un chiffre de César où l'addition est remplacée par la multiplication dans l'anneau des entiers modulo vingt-six. Écrivez chaque lettre latine comme un entier de zéro pour A à vingt-cinq pour Z. Le chiffrement multiplie cet indice par votre clé secrète k et réduit modulo vingt-six ; le déchiffrement multiplie par l'inverse modulaire de k, l'unique résidu k inverse tel que k fois k inverse est congruent à un modulo vingt-six.

Cet inverse existe si et seulement si le plus grand commun diviseur de la valeur absolue de k et de vingt-six vaut un —équivalemment, k est impair et n'est pas un multiple de treize. Les résidus positifs valides sont un, trois, cinq, sept, neuf, onze, quinze, dix-sept, dix-neuf, vingt et un, vingt-trois et vingt-cinq ; toute clé paire ou tout multiple de treize partage un facteur avec vingt-six et est rejetée.

La casse est préservée : un H majuscule multiplié par cinq devient J, et un h minuscule devient j, ce qui garde les phrases d'exemple lisibles dans les démos. Les caractères qui ne sont pas des lettres —espaces, virgules, chiffres dans le corps du message, emoji— passent inchangés.

Conseils pratiques, limites et recherches associées

Choisissez une clé parmi les douze résidus valides pour que l'application soit bijective ; la clé un est une application identité valide utile pour les tests unitaires, tandis que cinq, sept et dix-sept produisent des exemples pédagogiques plus mélangés. Les vérifications aller-retour sont le meilleur test de cohérence : chiffrez une phrase, déchiffrez le résultat avec la même clé, et confirmez que le flux de lettres correspond à l'entrée d'origine sensible à la casse.

Cette page vise les personnes cherchant un chiffre multiplicatif, un chiffreur d'inverse modulaire ou un chiffre de lettres à clé coprime en ligne ; ce n'est pas AES, pas RSA, pas le chiffre affine complet avec décalage additif, et pas ROT13. Préférez cette capacité lorsque vous avez besoin d'une cryptographie monoalphabétique classique transparente avec une clé purement multiplicative pour l'éducation ou les puzzles ; si vous avez besoin d'un secret réel, utilisez plutôt un chiffrement authentifié moderne.

Vérification CTF et puzzles

Les auteurs de défis vérifient le chiffrement et le déchiffrement multiplicatifs pour une clé coprime publiée sans maintenir un script hors ligne séparé.

Démos de crypto historique

Musées et démos de blogs montrent pourquoi seules les clés coprimes avec vingt-six donnent des applications réversibles en chiffrant en direct les phrases des visiteurs dans le navigateur.

Qu'est-ce que le chiffre multiplicatif ?

Le déchiffrement multiplie par l'inverse modulaire de k.

Pourquoi la clé doit-elle être coprime avec 26 ?

Seulement lorsque gcd(|key|, 26) = 1 la multiplication par k est bijective mod 26, de sorte que chaque lettre du chiffré correspond exactement à une lettre du clair. Les facteurs partagés collapse l'alphabet.

Quelles clés sont valides ?

Tout entier dont la valeur absolue est coprime avec 26. Résidus positifs mod 26 : 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25. Les clés paires et les multiples de 13 sont rejetés.

Les espaces et la ponctuation sont-ils chiffrés ?

Non. Seuls A–Z et a–z sont multipliés mod 26. Les autres caractères passent inchangés.

Le chiffre multiplicatif est-il gratuit ?

L'outil du navigateur est gratuit et s'exécute localement.

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.

POSThttps://api.kit.forhosting.com/enc/multiplicative

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é.

curl -X POST https://api.kit.forhosting.com/enc/multiplicative \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"HELLO","key":5}'
{
  "text": "HELLO",
  "key": 5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.multiplicative",
  "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.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

max_chars100000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Saisissez le texte que vous souhaitez protéger ou récupérer, une clé entière telle que cinq ou dix-sept, et un mode encrypt ou decrypt ; l'outil multiplie les lettres en préservant la casse, laisse espaces et ponctuation intacts, et rejette toute clé qui partage un facteur avec vingt-six —nombres pairs et multiples de treize— avec une erreur invalid_input claire, afin qu'une application non bijective ne collapse jamais l'alphabet en silence. Comme le mappage est une arithmétique modulaire pure et déterministe —sans réseau, sans graines aléatoires, sans dépendance à l'horloge— l'exécuteur gratuit du navigateur et l'API prépayée renvoient le même JSON, y compris la clé réduite modulo vingt-six et son inverse, à chaque appel pour des feuilles de classe, de la pratique CTF ou des démos de chiffrement historique.

Comment fonctionnent la clé coprime et la multiplication modulaire

Le texte vide et les clés manquantes sont également rejetés afin que l'API ne renvoie jamais une transformation identité qui semble réussie mais n'enseigne rien sur l'arithmétique modulaire.

Comment appeler l'API et ce qui revient

Text doit être une chaîne non vide d'au plus cent mille caractères. Envoyez un corps JSON avec deux champs obligatoires, text comme chaîne non vide et key comme entier, plus un mode optionnel qui vaut encrypt par défaut s'il est omis. Les alias acceptés pour text incluent input, value, data, message, plaintext et ciphertext ; key accepte aussi k, multiplier, a, secret et factor ; mode accepte operation, op, direction et action, et reconnaît des synonymes courants comme encode ou decode. La clé peut être envoyée comme nombre JSON ou comme chaîne d'entier pure ; les nombres fractionnaires et les chaînes non numériques produisent invalid_input et ne sont jamais facturés. En cas de succès, la réponse répète le text d'entrée d'origine, rapporte key comme l'entier que vous avez envoyé, key_mod comme cette clé réduite de zéro à vingt-cinq, key_inverse comme l'inverse modulaire utilisé pour le déchiffrement, mode comme encrypt ou decrypt, result et text comme la chaîne transformée, letters_processed et non_letters comme des comptages, length comme le nombre de caractères de sortie, formula comme un mnémonique modulaire court, et message comme un résumé d'une ligne en anglais. Le tarif est un forfait de $0.002 par requête réussie avec unité item et prix unitaire marginal nul.

Conseils pratiques, limites et recherches associées

Gardez les charges sous le maximum publié de cent mille caractères afin que la mémoire du Worker reste bornée. En enseignant, couplez les exemples : HELLO avec la clé cinq se chiffre en JUDDS ; le même texte chiffré avec mode decrypt et clé cinq récupère HELLO ; et la clé deux ou treize démontre le chemin strict invalid_input lorsque la clé partage un facteur avec vingt-six. Les tâches en échec qui renvoient invalid_input ne consomment pas le solde prépayé, ce qui maintient les scripts exploratoires peu coûteux lorsque les clients testent des clés paires ou des multiples de treize.

Travaux pratiques d'arithmétique modulaire

Les étudiants multiplient les indices de lettres à la main, calculent les inverses modulaires et comparent lettre par lettre avec la sortie déterministe de l'API et le champ key_inverse.

Consulter la documentation complète du KIT →