Aller au contenu

A–Z a–z 0–9 + / = · base64url

Encodeur et décodeur Base64

Base64 écrit des octets sous forme de texte avec 64 caractères imprimables : les 5 octets de "Hello" deviennent SGVsbG8=. Saisissez du texte ou choisissez un fichier pour l’encoder, ou collez du Base64 pour le retransformer en texte ou en téléchargement.

Tout s’exécute dans cet onglet et rien n’est envoyé. Base64 est un encodage, pas un chiffrement : n’importe qui peut l’inverser.

Scanned by NortonTM Safe Web

En bref

Prix
Sans frais
Compte
Aucun requis
Normes
RFC 4648 (Base64 et Base64url), RFC 2045 (MIME), RFC 2397 (URI de données)
Variation de taille
4 caractères pour 3 octets
Limite
10 Mo pour un texte ou un fichier
Envoi
Aucun — le texte et les fichiers restent dans l’onglet de votre navigateur

Exemples Base64

Chaque valeur ci-dessous est produite par l’encodeur de cette page. Le texte est d’abord encodé en UTF-8.

Texte en Base64 et en Base64url
TexteBase64Base64url sans remplissageTaille en UTF-8
HelloSGVsbG8=SGVsbG85 B
Hello, World!SGVsbG8sIFdvcmxkIQ==SGVsbG8sIFdvcmxkIQ13 B
GrüßeR3LDvMOfZQ==R3LDvMOfZQ7 B
€4oKs4oKs3 B
FB FF+/8=-_82 B
Vecteurs de test de la RFC 4648
EntréeBase64LongueurCaractères de remplissage
fZg==42
foZm8=41
fooZm9v40
foobZm9vYg==82
foobaZm9vYmE=81
foobarZm9vYmFy80

Comment encoder et décoder du Base64

1

Choisissez un sens

Choisissez Encoder pour transformer du texte ou un fichier en Base64, ou Décoder pour retrouver l’original à partir du Base64. Le bouton Inverser place le résultat dans l’autre sens.

2

Saisissez les données

Saisissez ou collez du texte, ou déposez un fichier de 10 Mo maximum. Pour décoder, collez du Base64 en alphabet standard ou URL-safe, avec ou sans remplissage =, ou une URI de données.

3

Copiez le résultat

Copiez ou téléchargez le résultat. Si les octets décodés ne sont pas du texte, la page affiche les premiers octets en hexadécimal, indique le type de fichier quand elle le connaît et vous laisse enregistrer les octets dans un fichier.

Comment fonctionne Base64

Base64 (RFC 4648) découpe l’entrée en groupes de 3 octets, soit 24 bits, et écrit chaque groupe sous la forme de 4 caractères de 6 bits pris dans un alphabet de 64 caractères : A–Z, a–z, 0–9, + et /. La sortie est donc environ un tiers plus grande que l’entrée. Quand l’entrée n’est pas un multiple de 3 octets, des signes = complètent la fin jusqu’à un multiple de 4 caractères : les 5 octets de Hello donnent donc 8 caractères se terminant par un =.

Base64url, défini dans la même RFC, remplace + par - et / par _ pour que le texte puisse figurer dans une URL ou un nom de fichier, et des formats comme JWT suppriment le remplissage =. Cette page lit les deux alphabets, avec ou sans remplissage, et ignore les espaces et les sauts de ligne. Le texte est d’abord converti en UTF-8 : € devient donc les 3 octets E2 82 AC et 4oKs en Base64. La limite est de 10 Mo pour un texte ou un fichier.

Questions sur Base64

Comment encoder du texte en Base64 ?

Saisissez ou collez le texte en mode Encoder. Le Base64 apparaît au fil de la saisie : Hello donne SGVsbG8=. Le texte est d’abord écrit en UTF-8, si bien que les caractères hors ASCII occupent plusieurs octets : € fait 3 octets et donne 4oKs.

Quelle différence entre Base64 et Base64url ?

Base64url échange deux caractères : - remplace + et _ remplace /. Les octets FB FF s’écrivent +/8= en Base64 et -_8= en Base64url. La forme URL-safe est conçue pour les URL, les noms de fichier et JWT, et omet souvent le remplissage =.

Pourquoi le Base64 se termine-t-il par des signes = ?

C’est du remplissage. Base64 travaille par groupes de 3 octets et 4 caractères. Si le dernier groupe n’a qu’1 octet, deux signes = le complètent : f donne Zg==. S’il a 2 octets, un seul = suffit : fo donne Zm8=. Un multiple de 3 octets n’en demande aucun : foo donne Zm9v.

Base64 est-il un chiffrement ?

Non. Base64 est un encodage réversible, sans clé : n’importe qui peut le décoder, et il ne protège pas les données. Il permet de placer des données binaires dans du texte, comme un e-mail, du JSON, du XML ou une URI de données.

De combien Base64 augmente-t-il la taille de mes données ?

D’environ un tiers : tous les 3 octets deviennent 4 caractères, donc 3000 octets donnent 4000 caractères. Les sauts de ligne tous les 76 caractères (MIME, RFC 2045) ou tous les 64 caractères (PEM, RFC 7468) ajoutent un peu plus.

Pourquoi le décodage indique-t-il que les octets ne sont pas du texte UTF-8 valide ?

Le Base64 lui-même est correct, mais les octets qu’il contient ne sont pas du texte. Ce peut être une image, un fichier compressé ou un autre format binaire. La page affiche alors les 64 premiers octets en hexadécimal, indique le type de fichier si elle le connaît et propose les octets en téléchargement.