ForHosting KIT · Outils pour développeurs

Encodeur et décodeur ROT47

Hello devient w6==@ et la même opération le rétablit : chaque caractère imprimable, du point d'exclamation au tilde, avance de 47 rangs sur un anneau de 94, tandis que les espaces et le texte accentué restent intacts. 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 World!
Vous obtenez
Résultat
w6==@ (@C=5P
Encodage
rot47
Longueur d'entrée
12
Longueur de sortie
12

Cet encodeur ROT47 applique un chiffre de César classique sur l'ASCII imprimable qui décale chaque caractère du point d'exclamation au tilde de quarante-sept places dans un anneau de quatre-vingt-quatorze caractères. Comme quarante-sept est la moitié de la taille de cet anneau, la même opération obscurcit et restaure le texte : appliquez-la une fois au texte en clair pour le cacher, appliquez-la à nouveau au texte chiffré pour retrouver l'original. Les espaces, tabulations, sauts de ligne, et l'Unicode non-ASCII passent inchangés afin que les notes multi-lignes et les scripts mixtes restent lisibles autour du noyau brouillé.

Ce qu'est ROT47 et ce que renvoie cet outil

ROT47 est un chiffre de substitution sur les quatre-vingt-quatorze caractères ASCII imprimables du code trente-trois au code cent vingt-six. Chacun de ces symboles est associé au symbole quarante-sept pas plus loin, en s'enroulant autour de l'anneau avec une arithmétique modulaire : le nouveau code est trente-trois plus le reste de code moins trente-trois plus quarante-sept lorsqu'il est divisé par quatre-vingt-quatorze.

Lettres, chiffres, et ponctuation se déplacent tous ensemble, ce qui rend ROT47 plus dense que le ROT13 réservé aux lettres et meilleur pour brouiller des jetons mixtes tels que mots de passe, extraits de configuration, et courtes chaînes de défi. Les caractères hors de cette plage ne changent jamais : l'espace garde les lignes lisibles, et les emoji ou le texte accentué survivent pour des démonstrations multilingues. Cette page utilise toujours cette règle modulaire exacte sans paramètre de décalage facultatif et sans tables d'alphabet qui pourraient diverger entre les langues.

Si vous avez besoin d'une rotation limitée aux lettres, de Base64 sûr pour URL, ou de morse, utilisez ces points de terminaison dédiés ; cette page ne répond qu'au contrat ASCII imprimable ROT47 que les livres de puzzles et les guides d'obscurcissement léger décrivent déjà.

Où ROT47 sert dans les énigmes et les démonstrations

Développeurs et enseignants rencontrent ROT47 dans des échauffements de capture-the-flag, des chapitres de manuels sur les chiffres classiques, et des obscurcissements légers côté client qui doivent s'inverser avec une seule fonction plutôt qu'un calendrier de clés. Les équipes frontend peuvent brouiller des identifiants d'exemple ou des chaînes en forme de jeton pour des captures d'écran sans inventer d'alphabet personnalisé.

Les ingénieurs qualité génèrent des paires d'encodage déterministes pour des tests de contrat afin qu'un middleware qui prétend prendre en charge ROT47 ne puisse pas basculer silencieusement vers ROT13 ou un décalage différent. Les organisateurs de concours précalculent des corrigés pour des phrases ASCII modestes sans faire confiance à des jouets web opaques qui changent les règles d'espacement. Les outils produit et pédagogiques utilisent la transformation lorsqu'un apprenant colle un texte chiffré et que l'interface doit montrer le texte en clair récupéré grâce à la propriété d'involution.

Associez-le aux autres auxiliaires d'encodage pour bâtir un petit laboratoire d'outils de texte gratuits et déterministes.

Échauffements CTF et de chiffres

Obscurcissez et restaurez des phrases ASCII imprimables en une étape réversible pour des puzzles, des classes, et de la pratique de capture-the-flag.

Obscurcissement réversible de démonstration

Cachez des jetons d'exemple ou des extraits de configuration dans des documents et captures d'écran, puis récupérez-les avec le même appel ROT47.

Combien coûte l'encodeur ROT47 ?

Il est gratuit dans votre navigateur sur cette page.

Comment décoder du ROT47 ?

Appliquez à nouveau la même transformation. ROT47 est une involution : encoder et décoder sont des opérations identiques sur l'anneau ASCII imprimable.

Quels caractères sont décalés ?

L'ASCII imprimable de ! à ~ (codes 33-126). Les espaces, caractères de contrôle, et l'Unicode non-ASCII passent inchangés.

Le résultat est-il déterministe ?

Oui. Le même texte produit toujours le même résultat, sans réseau, aléa, ou comportement dépendant de la date.

Quelle différence entre ROT47 et ROT13 ?

ROT13 ne déplace que les lettres, donc chiffres et symboles restent lisibles. ROT47 déplace les 94 caractères ASCII imprimables, chiffres et ponctuation compris, et brouille bien mieux les chaînes mixtes comme des codes ou des mots de passe d'exemple.

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

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/rot47 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"Hello World!"}'
{
  "text": "Hello World!"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.rot47",
  "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.

Parmi les vérifications courantes : Hello World devient w6==@ (@C=5P et cette chaîne se décode en Hello World sous la même requête. Utilisez-le gratuitement dans le navigateur pour des échauffements CTF, des démonstrations d'obscurcissement réversible, et des feuilles d'exercices de puzzle, ou appelez l'API à $0.002 par requête réussie lorsque les pipelines ont besoin de transformations ROT47 reproductibles en CI et dans des services backend.

Ce qu'est ROT47 et ce que renvoie cet outil

La réponse JSON inclut result pour la chaîne transformée, encoding fixé à rot47, input_length et output_length qui correspondent car ROT47 préserve la longueur, shifted_chars comptant combien d'unités de code sont tombées dans l'anneau imprimable, et une chaîne formula qui reformule la correspondance modulaire pour la documentation et les tests. Il n'y a aucun chemin de streaming et aucun repli silencieux vers ROT13 : soit vous fournissez un texte non vide et recevez une transformation complète, soit la requête échoue avec invalid_input.

Comment le texte est lu et comment les résultats restent reproductibles

Chaque unité de code est traitée indépendamment avec la carte modulaire fixe, si bien qu'appliquer la transformation deux fois donne toujours la charge utile originale lorsque chaque caractère se trouve de façon cohérente à l'intérieur ou à l'extérieur de l'anneau. Le champ de charge utile privilégié est text, avec les alias input, value, s et message afin que formulaires, chaînes de requête et clients SDK puissent réutiliser le même contrat sans renommer de colonnes. La chaîne doit être présente et non vide ; les champs manquants, les types non-chaîne, et la chaîne vide déclenchent tous invalid_input avec un message clair afin qu'un formulaire vide ne ressemble pas à une opération sans effet réussie. Associez l'exécution gratuite dans le navigateur de cette page à l'API payante lorsque vous avez besoin du même résultat mathématique au sein d'un pipeline automatisé sans réimplémenter vous-même l'anneau à quatre-vingt-quatorze caractères. Les entrées invalides renvoient invalid_input et ne sont pas facturées, ce qui garde la validation bon marché tandis que les transformations réussies restent à un prix fixe. Les champs de longueur et le compteur shifted_chars aident les tests à vérifier que les espaces ont été préservés et que seul l'ASCII imprimable a bougé, sans redériver l'arithmétique de l'anneau à chaque assertion.

Où ROT47 s'inscrit dans les puzzles, les démonstrations et les fixtures de test

Les services backend encodent de courts fragments de configuration pour des API de puzzles ou des bacs à sable pédagogiques où les étudiants doivent appliquer le même décalage pour débloquer l'étape suivante. Sur cette page, le travail s'exécute entièrement dans votre navigateur ; via l'API, chaque recherche réussie coûte $0.002, une validation échouée n'est pas facturée, et rien n'est conservé après le renvoi de la réponse. Cette séparation — exploration interactive gratuite et API payante identique — s'inscrit dans le reste du catalogue de niveau A du KIT et permet de passer d'une démonstration en classe à un pipeline automatisé sans changer le résultat transformé.

Fixtures CI déterministes

Générez des chaînes ROT47 reproductibles pour tests unitaires, fichiers golden, et vérifications de contrat entre services.

Que se passe-t-il avec une entrée vide ?

Un texte vide ou manquant échoue avec invalid_input et n'est pas facturé. Fournissez une chaîne non vide.

Consulter la documentation complète du KIT →