Chiffre coordonnées QWERTY
Sur un clavier QWERTY américain, hello devient 2,6 1,3 2,9 2,9 1,9 : chaque lettre est désignée par sa ligne comptée depuis le haut et sa colonne comptée depuis la gauche. Décoder ces paires redonne HELLO. 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
- Mode de calcul
- Encode
- Résultat
- 2,6 1,3 2,9 2,9 1,9
- Longueur
- 19
- Lettres associées
- 5
- Mise en page
- qwerty
Un chiffre de coordonnées clavier ne fait pas tourner les lettres le long de l'alphabet et ne les glisse pas vers des touches voisines. Il nomme chaque caractère par sa place sur une disposition de lettres QWERTY des États-Unis : un numéro de ligne base un depuis la rangée supérieure de lettres vers le bas, et un numéro de colonne base un de gauche à droite dans cette rangée. La lettre H se trouve sur la rangée de base à la colonne six, donc elle s'encode comme le jeton deux virgule six ; Q est un virgule un ; M est trois virgule sept. L'encodage transforme un mot en une liste de ces jetons séparés par des espaces ; le décodage lit les jetons et reconstruit des lettres majuscules. Les espaces d'une phrase deviennent des marqueurs barre pour qu'un texte multi-mots puisse aller et revenir.
Comment fonctionnent les coordonnées de ligne et de colonne QWERTY
La grille de lettres QWERTY des États-Unis est traitée comme trois rangées indépendantes comptées depuis le haut. La rangée un contient qwertyuiop sur dix colonnes. La rangée deux contient asdfghjkl sur neuf colonnes.
La rangée trois contient zxcvbnm sur sept colonnes. Les colonnes sont numérotées à partir de un au bord gauche de chaque rangée, de sorte que la lettre A de la rangée de base est deux virgule un, F est deux virgule quatre et L est deux virgule neuf.
L'encodage parcourt l'entrée de gauche à droite : chaque lettre latine est recherchée dans une carte fixe et émise comme un jeton compact de la forme ligne virgule colonne ; chaque espace devient un jeton barre pour que les limites de mots survivent ; les jetons sont joints par des espaces simples pour former la chaîne résultat.
Le décodage découpe le texte chiffré sur les blancs, accepte des jetons écrits comme ligne virgule colonne, avec parenthèses optionnelles, ou avec un séparateur tiret ou deux-points, mappe chaque paire valide vers la lettre majuscule de cette touche, et reconvertit les jetons barre en espaces. Chiffres, ponctuation, emoji et lettres hors du bloc latin de base n'apparaissent jamais sur cette grille uniquement alphabétique, donc le moteur échoue immédiatement avec un message hors grille plutôt que d'inventer une coordonnée.
Mathématiquement la transformation est une consultation de table statique sans enroulement modulaire ni agenda de clés : la même lettre mappe toujours vers la même paire et la même paire valide revient toujours à la même lettre. Il n'y a ni appel réseau, ni graine aléatoire, ni horodatage d'horloge dans le chemin. Cette page n'implémente que les coordonnées physiques de clavier — pas les carrés de Polybe alphabétiques, pas les décalages de touches adjacentes, et pas le chiffrement fort.
Ce que vous envoyez et ce que vous recevez
Envoyez un champ chaîne obligatoire nommé text et un champ mode optionnel valant encode ou decode. Lorsque mode est omis, encode est la valeur par défaut afin qu'une charge minimale reste utile. Le mode encode associe chaque lettre à un jeton ligne virgule colonne et chaque espace à une barre ; le mode decode lit ces jetons et reconstruit une chaîne de lettres majuscules.
Les échecs de validation ne consomment pas le solde prépayé. Les contrôles classiques incluent l'encodage de hello en les cinq jetons deux virgule six, un virgule trois, deux virgule neuf, deux virgule neuf et un virgule neuf ; décoder cette chaîne de coordonnées récupère HELLO ; et confirmer que hello avec un point d'exclamation échoue car la ponctuation est hors grille.
Où les chiffres de coordonnées clavier apparaissent dans le travail réel
La cryptographie d'introduction et les énigmes de disposition clavier demandent souvent aux élèves de réécrire un message comme l'adresse de grille de chaque touche au lieu de compter les positions de l'alphabet ; un oracle de confiance qui encode et décode avec des numéros de ligne et de colonne explicites accélère les démonstrations de devoirs et les correcteurs automatiques.
Les échauffements capture-the-flag et les accessoires d'escape room cachent parfois des phrases comme listes de coordonnées sur des notes ou des images, et les solveurs veulent une carte QWERTY rapide et prévisible plutôt qu'une suite générale de cryptanalyse. Les équipes support et contenu peuvent obscurcir légèrement des spoilers ou des réponses de quiz sous forme de listes de coordonnées et ont besoin du chemin inverse sans installer une bibliothèque spécifique au langage.
Si vous avez besoin de décalages de touches adjacentes, de paires de chiffres classiques de Polybe sur un carré alphabétique, de rotation César de l'alphabet ou d'un chiffrement authentifié fort, traitez-les comme des intentions de recherche et des pages d'atterrissage distinctes plutôt que de surcharger cette page de coordonnées clavier.
Cas d’usage
Démonstrations de grille QWERTY en classe
Encodez des mots d'exemple en jetons ligne,colonne pour que les élèves voient les positions physiques du clavier plutôt que l'arithmétique de l'alphabet, puis décodez pour vérifier leurs fiches.
Phrases de coordonnées pour énigmes et CTF
Transformez des chaînes de défi en coordonnées QWERTY ou inversez une liste imprimée de paires sans écrire un script ponctuel pour chaque série de problèmes.
Questions fréquentes
Qu'est-ce qu'un chiffre de coordonnées clavier ?
Un mappage qui remplace chaque lettre par sa ligne et sa colonne sur une disposition de lettres QWERTY américaine, au lieu de faire tourner l'alphabet ou de glisser vers une touche adjacente.
Comment décoder des coordonnées en lettres ?
Réglez mode sur decode et passez des jetons séparés par des espaces tels que 2,6 pour H. Les parenthèses optionnelles et les séparateurs tiret ou deux-points sont acceptés ; la barre marque un espace.
Qu'est-ce qu'une entrée hors grille ?
À l'encodage, tout caractère qui n'est pas une lettre latine A–Z/a–z ou un espace. Au décodage, des jetons mal formés ou des paires ligne,colonne qui n'atterrissent pas sur une touche lettre QWERTY réelle.
Comment les lignes et colonnes sont-elles numérotées ?
Les lignes sont base un depuis la rangée supérieure de lettres (qwertyuiop) vers le bas. Les colonnes sont base un de gauche à droite dans chaque rangée.
Comment les espaces entre les mots sont-ils conservés ?
Chaque espace devient une barre oblique placée entre les paires de coordonnées. Au décodage, chaque barre oblique redevient un espace, si bien qu'une phrase de plusieurs mots revient intacte, en majuscules.
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/keyboard-coords \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"hello"}'const res = await fetch("https://api.kit.forhosting.com/enc/keyboard-coords", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "hello"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/enc/keyboard-coords",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "hello"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/enc/keyboard-coords", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"hello"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"hello"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/enc/keyboard-coords", 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"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "enc.keyboard_coords",
"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
Tout caractère qui n'est ni lettre latine ni espace à l'encodage, et toute coordonnée qui n'atterrit pas sur une touche réelle au décodage, est signalé comme entrée hors grille avec une erreur invalid_input claire.
Comment fonctionnent les coordonnées de ligne et de colonne QWERTY
La casse à l'encodage est ignorée pour la recherche dans la carte car les touches physiques n'ont pas de cellules distinctes ; l'alphabet décodé est toujours en majuscules pour un contrat d'API stable. Comme chaque étape est un travail pur de chaînes et d'entiers sur une disposition fixe, le chiffre est pleinement déterministe : un texte et un mode identiques produisent toujours un JSON identique.
Ce que vous envoyez et ce que vous recevez
En cas de succès la réponse répète mode et le text d'origine, renvoie la chaîne result transformée, length de ce résultat, letters_mapped comme nombre de caractères alphabétiques traités, un tableau pairs avec le détail par jeton lettre, ligne, colonne et token pour déboguer des fiches, plus les libellés layout, rows et cipher pour les clients qui vérifient le profil atteint. Text manquant, objets non chaîne pour text, valeurs de mode non prises en charge, chaînes plus longues que le maximum documenté, tout caractère d'encodage qui n'est pas une lettre latine ou un espace, jetons de décodage mal formés et coordonnées hors des trois rangées de lettres échouent avec invalid_input et un message clair en anglais nommant l'entrée hors grille le cas échéant. Le tarif des appels API réussis est la base publiée de $0.002 par élément.
Où les chiffres de coordonnées clavier apparaissent 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 échouée ne consomme pas le solde.
Cas d'intégration
Obscurcissement léger de spoilers
Stockez des réponses de quiz ou des libellés comme coordonnées clavier et décodez-les plus tard avec le même contrat dans le navigateur ou l'API.
Questions techniques
Quel est le coût ?
L'outil navigateur est gratuit et s'exécute localement. Les requêtes API utilisent le solde prépayé KIT à $0.002 par élément réussi ; une entrée invalide n'est pas facturée.