ForHosting KIT · Outils pour développeurs

Chiffre scytale

Avec 5 colonnes, HELLOWORLD devient HWEOLRLLOD : le texte s'écrit ligne par ligne dans une grille, comme une bande enroulée autour d'une baguette, puis se lit colonne par colonne. Le même nombre de colonnes l'inverse et aucun caractère ne se perd. 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
HELLOWORLD
Colonnes
5
Mode de calcul
Encrypt
Vous obtenez
Texte
HWEOLRLLOD
Longueur
10

La scytale est un chiffre de transposition classique venu de la Grèce antique : on enroule une bande d'écriture autour d'un bâton de diamètre fixe, on écrit le long du bâton, puis on déroule la bande pour que les lettres se brouillent dans un ordre par colonnes. Cette capacité met en œuvre cette idée sous forme de transposition de colonnes déterministe : vous fournissez le texte, une clé entière de colonnes (le diamètre) et le mode chiffrer ou déchiffrer. Le chiffrement inscrit les caractères dans une grille ligne par ligne et les relit en descendant chaque colonne ; le déchiffrement inverse exactement la même correspondance avec la même clé, de sorte que la longueur et chaque caractère — espaces et ponctuation compris — sont préservés.

Comment fonctionne la transposition scytale

Une scytale n'est pas un chiffre de substitution : chaque lettre reste elle-même ; seul l'ordre change. Voyez la clé comme le nombre de colonnes d'un cylindre. En mode chiffrement, le moteur dispose votre chaîne dans une grille rectangulaire remplie de gauche à droite et de haut en bas, avec autant de colonnes que vous en avez choisi.

Les dernières lignes incomplètes laissent des cellules vides jamais remplies et jamais émises, si bien que la longueur du texte chiffré est toujours égale à celle du texte clair et qu'aucun caractère de remplissage n'est inventé. En lisant la colonne zéro, puis la colonne un, et ainsi de suite, on obtient le texte chiffré — le même brouillage que si vous dérouliez une bande écrite autour d'un bâton de ce diamètre.

Le mode déchiffrement reconstruit cette disposition en colonnes à partir du texte chiffré et la relit de gauche à droite, restituant la chaîne d'origine dès lors que la même valeur de colonnes est employée. Comme la correspondance est une pure permutation d'indices, l'opération est déterministe d'un environnement à l'autre, exempte d'aléa, d'horloge ou de requête réseau, et sûre à tester par valeur de référence.

Choisir une mauvaise clé de colonnes au déchiffrement produit une mauvaise permutation, pas une panne — exactement le comportement attendu par les étudiants qui essaient des diamètres voisins.

Chiffrer un message et lire le résultat

Espaces, sauts de ligne et ponctuation traversent la grille comme n'importe quel autre caractère ; rien n'est supprimé ni mis en minuscules, ce qui préserve l'intégrité des démonstrations de type mot de passe et des chaînes multilignes de cours. Faites l'aller-retour en chiffrant avec une valeur de colonnes donnée et en déchiffrant avec la même valeur ; des clés différentes ne restitueront pas l'original. Un texte vide est autorisé et renvoie un résultat vide de longueur zéro.

Préférez ce point de terminaison lorsque l'intention de recherche vise précisément la scytale ou la transposition classique au bâton ; les outils AEAD modernes servent une intention et un modèle de menace différents.

Usage en cours, en CTF et en produit — et coût

Les cours d'histoire et de cryptographie utilisent la scytale pour introduire la transposition avant la substitution et les chiffres modernes ; les travaux pratiques peuvent montrer que connaître le diamètre restitue le message, tandis que de mauvais diamètres échouent. Les auteurs de capture-the-flag cachent de courts drapeaux sous une clé de colonnes et vérifient les solutions au regard de cette même routine déterministe. Les rédacteurs de documentation intègrent des paires chiffrer/déchiffrer dans les tutoriels sans maintenir un script hors ligne distinct.

Cette parité maintient l'alignement entre les corrigés, les valeurs de référence de CI et les démonstrations de production. Ne considérez pas la scytale comme une confidentialité pour de vrais secrets — c'est un outil pédagogique et ludique — mais traitez bien la clé de colonnes comme le paramètre secret de ce système jouet.

Travaux pratiques de cryptographie en cours

Démontrez la transposition classique : les étudiants chiffrent une phrase avec une clé de colonnes, puis la récupèrent en déchiffrant avec le même diamètre.

Auteurs de CTF et d'énigmes

Cachez de courtes chaînes de défi sous une clé de scytale et vérifiez les soumissions des solveurs au regard de la même paire chiffrer/déchiffrer déterministe.

Documentation et démonstrations de bac à sable

Générez des exemples de texte chiffré stables pour des tutoriels et des bacs à sable de chiffres classiques sans maintenir à la main des tables de permutation.

Qu'est-ce qu'un chiffre scytale ?

Un chiffre de transposition classique : les caractères conservent leur valeur mais changent de position selon une clé de colonnes (diamètre). Cet outil applique le modèle standard écriture par lignes, lecture par colonnes.

Pourquoi columns doit-il valoir au moins 2 ?

Un diamètre d'une seule colonne laisse le texte dans le même ordre, ce n'est donc pas une clé de scytale valable.

Le déchiffrement exige-t-il la même valeur de columns ?

Oui. Le chiffrement et le déchiffrement utilisent la même clé entière. Une valeur de columns différente applique une permutation différente et ne restituera pas le texte d'origine.

Les espaces et la ponctuation sont-ils préservés ?

Oui. Chaque caractère de la chaîne participe à la transposition. Rien n'est supprimé, mis en minuscules ni complété par remplissage.

Quel est le coût ?

La page interactive s'exécute gratuitement dans votre navigateur.

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

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/scytale \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"HELLOWORLD","columns":5,"mode":"encrypt"}'
{
  "text": "HELLOWORLD",
  "columns": 5,
  "mode": "encrypt"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.scytale",
  "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.

Moins de deux colonnes est rejeté par invalid_input, car une seule colonne laisse le message inchangé et ne constitue pas un diamètre de scytale valable. Utilisez l'outil gratuitement sur cette page, ou appelez le même algorithme pur par l'API à $0.002 par requête pour des démonstrations en cours, des aides de CTF et des exemples de documentation qui doivent rester reproductibles.

Comment fonctionne la transposition scytale

Une colonne ou zéro colonne recopierait le texte inchangé ou serait indéfinie en tant que diamètre ; cette API exige donc un entier d'au moins deux et signale invalid_input lorsque cette règle est enfreinte.

Appeler l'API et lire le résultat

Envoyez trois champs : text (la chaîne en clair ou chiffrée), columns (le diamètre entier, minimum deux) et mode (chiffrer ou déchiffrer ; des alias courts tels que enc et dec sont acceptés). Un text manquant, un text non textuel, une valeur columns manquante ou non entière, columns inférieur à deux, ou un mode inconnu échouent tous par invalid_input avec un message qui nomme le problème, afin que formulaires et scripts affichent un retour corrigeable. En cas de succès, le JSON contient text (la chaîne transformée), mode (chiffrer ou déchiffrer sous forme canonique), columns (la clé entière utilisée) et length (le nombre de caractères du résultat, égal à celui de l'entrée).

Usage en cours, en CTF et en produit — et coût

Les équipes produit qui livrent des bacs à sable de chiffres classiques peuvent appeler l'API pour des contrôles côté serveur pendant que les visiteurs expérimentent gratuitement dans le navigateur. Comme le travail est une pure indexation de chaîne au moment de l'analyse, sans service externe, la latence reste basse et le modèle de coût est simple : essayez un nombre illimité de conversions gratuitement sur cette page, puis automatisez des entrées identiques à $0.002 par élément réussi depuis le solde KIT prépayé lorsque vous intégrez depuis des scripts ou des services backend. Reliez les libellés de l'interface à chiffrer et déchiffrer, validez columns côté client avec le même minimum de deux, et affichez les messages invalid_input près du contrôle de diamètre lorsque les utilisateurs saisissent une colonne ou une valeur non entière.

Consulter la documentation complète du KIT →