ForHosting KIT · Outils pour développeurs

Chiffre Grandpré

Avec les lignes CODE, ABLE, FISH et TRAP, le mot CAT devient 112141 : chaque lettre est remplacée par le numéro de sa ligne et de sa colonne dans la grille que vous composez. Au déchiffrement, les paires redeviennent des lettres. 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
CAT
Mots
CODE, ABLE, FISH, TRAP
Mode de calcul
Encrypt
Vous obtenez
Résultat
112141
Longueur
6
Lettres associées
3
Paires
3

Le chiffre Grandpré est une substitution homophonique classique qui numérote chaque lettre selon ses coordonnées dans une grille de lignes de mots-clés. Vous fournissez les mots qui remplissent chaque rangée du damier, collez un texte en clair ou un flux de paires de chiffres, puis choisissez chiffrer ou déchiffrer. Le chiffrement parcourt les lettres latines du message et remplace chacune par l’étiquette à deux chiffres ligne-colonne de la première cellule correspondante en ordre ligne-majeure ; le déchiffrement recueille les chiffres, les lit par paires et retrouve chaque paire sur la même grille. Comme la même lettre peut apparaître plusieurs fois parmi les rangées de mots, le système est homophonique en principe — les lettres répétées du clair n’ont pas toujours à partager un même code — tandis que cette implémentation reste entièrement déterministe en prenant toujours la première cellule. Lorsque la liste de mots ne couvre pas l’alphabet entier, la réponse réussit tout de même pour les lettres présentes et signale l’état de grille incomplète avec la liste des lettres manquantes, afin que vous puissiez élargir le carré.

Comment les lignes de mots-clés Grandpré deviennent des paires de coordonnées

Un carré Grandpré se construit avec des mots disposés un par ligne de sorte que chaque cellule contienne une seule lettre latine.

Les descriptions classiques préfèrent un plateau dix par dix dont les dix mots font aussi de la première colonne un onzième mot, mais tout ensemble rectangulaire de lignes de mots-clés de même longueur de lettres fonctionne de la même façon : on retire les non-lettres, on passe en majuscules et on exige que chaque ligne ait la même largeur entre deux et dix colonnes, avec au plus dix lignes.

Les axes sont étiquetés à partir de un ; lorsqu’un côté compte dix cellules, la dixième étiquette est le chiffre zéro, selon la convention 1–9–0 des manuels. Le chiffrement remplace chaque lettre du clair par le code à deux chiffres formé de son étiquette de ligne suivie de celle de colonne.

Si la lettre apparaît plusieurs fois dans la grille, cet outil sélectionne toujours la première correspondance de gauche à droite et de haut en bas, de sorte que des entrées identiques produisent toujours le même flux de chiffres sans aléatoire. Le déchiffrement inverse la consultation de table : les chiffres sont extraits de l’entrée dans l’ordre, puis consommés deux par deux comme étiquette de ligne et de colonne. Un nombre impair de chiffres, une étiquette hors de l’axe actif ou une paire qui n’adresse aucune cellule échouent immédiatement.

Les non-lettres du clair sont ignorées au chiffrement pour que le chiffré ne contienne que des chiffres de coordonnées ; les caractères non numériques au déchiffrement sont ignorés pendant l’assemblage du flux de chiffres. Il n’y a ni décalage modulaire de l’alphabet ni clé additive secondaire — seulement la grille ouverte de mots-clés —, de sorte que le chiffre tient ou tombe selon le soin et la complétude de ces lignes.

Ce que vous envoyez et ce que vous recevez

Envoyez un champ chaîne obligatoire nommé text, un champ tableau obligatoire nommé words avec une chaîne de mot-clé par ligne de grille, et un champ optionnel mode valant encrypt ou decrypt. Lorsque mode est omis, encrypt est la valeur par défaut, de sorte qu’une charge minimale produit encore des paires de coordonnées. Les échecs de validation ne consomment pas le solde prépayé.

Les contrôles classiques incluent de chiffrer CAT sur les mots d’exemple quatre par quatre CODE, ABLE, FISH, TRAP en un flux de six chiffres, de déchiffrer ce flux en CAT, de confirmer que incomplete vaut true lorsque des lettres comme G ou Z manquent, et de rejeter un chiffré de cinq chiffres plutôt que de le tronquer en silence.

Où les outils Grandpré interviennent dans le travail réel

Les cours d’introduction à la cryptographie et les clubs d’énigmes assignent encore des grilles de style Grandpré pour que les élèves pratiquent la substitution homophonique par coordonnées avant les chiffres machines ; un oracle de confiance qui chiffre et déchiffre à partir de lignes de mots explicites accélère démonstrations et correcteurs automatiques.

Les échauffements capture-the-flag et les défis de géocaching cachent des messages en paires de chiffres à côté d’un carré de mots publié, et les résolveurs veulent un encodeur de première correspondance rapide et prévisible plutôt qu’une suite générale de cryptanalyse. Les équipes de contenu et de support encodent parfois légèrement spoilers, réponses de quiz ou libellés internes en paires de coordonnées sur une liste de mots partagée et ont besoin du chemin inverse sans installer une bibliothèque cryptographique par langage.

Si vous avez besoin d’un carré de Polybe fixe cinq par cinq sans mots-clés, d’un carré digramme Playfair, d’une couche additive Nihilist, de décalages Caesar ou Vigenère, ou de la récupération automatique d’un plateau Grandpré inconnu à partir du seul chiffré, traitez-les comme des intentions de recherche et des pages distinctes plutôt que de surcharger cette page du chiffre par coordonnées de lignes de mots-clés.

Démonstrations scolaires de coordonnées homophoniques

Chiffrez et déchiffrez des mots d’exemple sur une grille de lignes de mots-clés publiée afin que les cours d’introduction à la cryptographie partagent un mappage de référence et voient les rapports de couverture de grille incomplète.

Défis d’énigmes et CTF en paires de chiffres

Encodez ou inversez des flux de coordonnées Grandpré contre un carré de mots connu sans écrire un script ponctuel pour chaque jeu d’exercices.

Qu’est-ce que le chiffre Grandpré ?

Un chiffre homophonique classique qui place des lettres dans une grille de lignes de mots-clés et remplace chaque lettre du clair par les coordonnées à deux chiffres ligne-colonne d’une cellule correspondante.

Comment fournir la grille ?

Passez words comme un tableau de chaînes, une ligne de mot-clé par entrée. Toutes les lignes doivent avoir le même nombre de lettres après suppression des non-lettres. Les tailles de 2×2 à 10×10 sont acceptées.

Que signifie grille incomplète ?

Le chiffrement fonctionne encore pour les lettres présentes ; il n’échoue que lorsque le clair a besoin d’une lettre absente.

Quelle coordonnée est choisie si une lettre apparaît plusieurs fois ?

La première cellule en ordre ligne-majeure (de gauche à droite, de haut en bas). Cela garde le chiffrement déterministe et sans aléatoire tout en permettant des homophones sur le plateau.

Quel est le coût ?

L’outil du navigateur est gratuit et s’exécute en local.

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/grandpre

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/grandpre \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"CAT","words":["CODE","ABLE","FISH","TRAP"]}'
{
  "text": "CAT",
  "words": [
    "CODE",
    "ABLE",
    "FISH",
    "TRAP"
  ]
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.grandpre",
  "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.

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.

Comment les lignes de mots-clés Grandpré deviennent des paires de coordonnées

Les lettres absentes des mots fournis ne peuvent pas être chiffrées : la requête échoue avec invalid_input et nomme le trou de grille incomplète plutôt que d’inventer un substitut.

Ce que vous envoyez et ce que vous recevez

En cas de succès la réponse renvoie mode et text, result comme flux de chiffres ou lettres majuscules récupérées, length de ce résultat, letters_mapped et pairs comme nombre de cellules utilisées, digit_count pour le flux de coordonnées, rows et cols pour la taille de la grille, grid comme les lignes de mots en majuscules normalisées, incomplete comme booléen, missing_letters comme les caractères A–Z absents du plateau, alphabet_coverage comme le nombre de lettres distinctes fournies par les mots, row_labels et col_labels comme chaînes compactes d’axes, et cipher égal à grandpre pour les clients qui vérifient le profil. Text manquant, words manquant, moins de deux lignes, plus de dix lignes, une ligne sans lettres latines, longueurs de lignes inégales après suppression des non-lettres, valeurs de mode non prises en charge, chaînes plus longues que le maximum documenté, charges de chiffrement sans lettres, de déchiffrement sans chiffres, nombre impair de chiffres et paires de coordonnées hors des axes étiquetés échouent avec invalid_input et un message clair en anglais. Le tarif des appels API réussis est la base publiée de $0.002 par élément.

Où les outils Grandpré interviennent dans le travail réel

Comme cette capacité est un moteur parse pur, le tarif API est la base publiée de $0.002 par élément réussi et une validation en échec ne consomme pas le solde.

Encodage d’étiquettes sur liste de mots partagée

Transformez réponses de quiz ou libellés internes en paires de chiffres ligne-colonne sur une liste de mots convenue, puis décodez-les plus tard avec le même contrat dans le navigateur ou l’API.

Consulter la documentation complète du KIT →