Encoder et décoder en Base32
Encodez du texte en Base32 ou décodez-le avec l'alphabet standard de A à Z et de 2 à 7 : « Hello, Base32! » devient JBSWY3DPFQQEEYLTMUZTEII=. Accents et emojis sont gérés, et une entrée abîmée est refusée au lieu d'être à moitié décodée. 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, Base32!
- Mode de calcul
- Encode
- Production
- JBSWY3DPFQQEEYLTMUZTEII=
Cet encodeur-décodeur Base32 convertit du texte Unicode avec l’alphabet standard RFC 4648, composé des lettres majuscules A à Z et des chiffres 2 à 7. Choisissez l’encodage pour transformer du texte UTF-8 en Base32 avec un remplissage standard, ou le décodage pour retrouver le texte d’origine. Le décodage contrôle l’alphabet, le remplissage, la longueur, les bits finaux inutilisés et le résultat UTF-8 au lieu de produire silencieusement un contenu endommagé. La conversion est déterministe, ne nécessite aucun accès réseau et fournit un résultat facile à copier.
Comment le Base32 RFC 4648 représente le texte
Base32 est un encodage de données binaires sous forme de texte : il ne chiffre, ne compresse et ne dissimule aucune information. En mode encodage, le convertisseur représente d’abord la chaîne fournie par ses octets UTF-8. Il lit ensuite ces octets comme un flux continu de bits, découpé en groupes de cinq.
Chaque valeur sur cinq bits sélectionne un symbole de l’alphabet RFC 4648, constitué des lettres majuscules A à Z puis des chiffres 2 à 7. Cinq octets contiennent quarante bits et correspondent exactement à huit symboles Base32. Si le dernier bloc est plus court, des bits nuls complètent le dernier symbole et des signes égal prolongent le résultat jusqu’à une limite de huit caractères.
Le convertisseur produit toujours l’alphabet standard avec un remplissage canonique ; vous pouvez donc comparer directement son résultat à celui des bibliothèques compatibles. Unicode est converti avant le traitement des bits, si bien que les lettres accentuées, les écritures non latines et les emoji gardent une représentation stable. Une entrée et un mode identiques donnent toujours une sortie identique.
Validation et gestion des erreurs au décodage
Le mode décodage interprète l’entrée comme du Base32 RFC 4648, et non comme un jeton vaguement similaire. Les lettres majuscules et minuscules sont admises, mais chaque symbole de données doit appartenir à A-Z ou 2-7. Le signe égal n’est autorisé qu’en remplissage final, et son nombre doit correspondre aux symboles du dernier bloc.
Les longueurs incapables de représenter des octets entiers sont également refusées. Le convertisseur vérifie en outre les bits finaux inutilisés : un encodeur conforme les met à zéro, tandis que tolérer d’autres valeurs autoriserait plusieurs écritures pour les mêmes octets. Après récupération, un décodeur UTF-8 strict confirme que les octets forment bien du texte, puisque cette capacité renvoie une chaîne et non un fichier binaire quelconque.
Caractère interdit, remplissage mal placé, longueur impossible, bit résiduel non nul ou séquence UTF-8 incorrecte provoquent une erreur d’entrée invalide, sans résultat partiel. Ce contrôle strict convient aux secrets, aux configurations copiées et aux tests d’interopérabilité. Le Base32 sans remplissage reste accepté lorsque sa structure est valide.
Utilisation dans les outils et les automatisations
Pour effectuer une conversion, fournissez le texte et choisissez encoder ou décoder. L’encodage place une chaîne Base32 complétée dans le champ de sortie ; le décodage place dans le même champ la chaîne Unicode retrouvée. Base32 est utile lorsqu’une valeur doit traverser des systèmes au jeu de caractères limité, notamment les registres de provisionnement, les supports de configuration lisibles et les stockages insensibles à la casse.
On le rencontre souvent avec les secrets d’authentification, mais encoder un secret ne le protège pas : des contrôles d’accès restent indispensables. Vous pouvez aussi créer des vecteurs de référence pour un autre langage, vérifier des données copiées dans une documentation ou examiner une valeur avant importation. L’algorithme n’utilise ni réseau, ni hasard, ni horloge, ni état de compte, ni service externe ; il convient donc aux builds et tests reproductibles.
Cas d’usage
Préparer des valeurs de configuration interopérables
Encodez du texte Unicode avec l’alphabet et le remplissage standard avant de l’insérer dans une configuration textuelle ou de l’échanger avec un système compatible.
Valider une valeur Base32 copiée
Décodez une valeur collée et obtenez une erreur claire si un symbole, le remplissage, un bit final ou le résultat UTF-8 est incorrect.
Créer des vecteurs de test multilangages
Produisez des entrées et sorties stables pour comparer des implémentations Base32 dans le navigateur, sur le serveur et en ligne de commande.
Questions fréquentes
Quel alphabet Base32 ce convertisseur utilise-t-il ?
Il utilise l’alphabet Base32 standard RFC 4648 : lettres majuscules A à Z et chiffres 2 à 7, avec des signes égal pour le remplissage de sortie.
Le décodage accepte-t-il les minuscules ?
Oui. Les lettres sont converties en majuscules avant le décodage ; les caractères étrangers à l’alphabet RFC 4648 sont refusés.
Base32 est-il un chiffrement ?
Non. Base32 est une représentation réversible d’octets, et non un chiffrement ou un hachage. Toute personne possédant la valeur peut la décoder.
Que se passe-t-il avec un caractère invalide ?
La requête échoue avec une erreur d’entrée invalide indiquant le caractère et sa position ; aucun texte partiellement décodé n’est renvoyé.
Pourquoi le résultat se termine-t-il par des signes égal ?
C'est le remplissage. Le Base32 fonctionne par blocs de huit symboles, car cinq octets en remplissent exactement huit ; quand le dernier bloc est plus court, des signes égal le complètent, comme dans l'exemple qui finit par EII=.
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/web/base32-convert \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"text":"Hello, Base32!","mode":"encode"}'const res = await fetch("https://api.kit.forhosting.com/web/base32-convert", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"text": "Hello, Base32!",
"mode": "encode"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/web/base32-convert",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"text": "Hello, Base32!",
"mode": "encode"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/web/base32-convert", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"text":"Hello, Base32!","mode":"encode"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"text":"Hello, Base32!","mode":"encode"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/web/base32-convert", 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, Base32!",
"mode": "encode"
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "web.base32_convert",
"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.
Limites
timeout_sec | 30 |
max_crawl_pages | 25 |
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
Utilisation dans les outils et les automatisations
La conversion interactive fonctionne dans le navigateur, tandis que chaque élément automatisé par API coûte $0.002.
Questions techniques
Combien coûte une conversion par API ?
Chaque élément traité avec succès par API utilise le tarif de base publié de $0.002. La conversion interactive reste disponible dans le navigateur.