Base64
Base64 (Encodage binaire vers texte)
Un schéma d'encodage qui convertit des données binaires en une chaîne de texte utilisant 64 caractères imprimables, permettant un transport sûr des données binaires à travers des systèmes exclusivement textuels.
Détail technique
Le Base64 regroupe chaque 3 octets d'entrée (24 bits) en 4 caractères de sortie (6 bits chacun), mappés vers A-Z, a-z, 0-9, +, /. Un remplissage avec = compense les entrées qui ne sont pas des multiples de 3 octets. Le base64url (RFC 4648) remplace + par - et / par _ pour une utilisation sûre dans les URLs. La surcharge de taille est de 33 % (3 octets deviennent 4 caractères). Les encodages alternatifs incluent Base32 (5 bits/caractère, insensible à la casse) et Base85/Ascii85 (4:5 ratio, utilisé dans PostScript/PDF). Les fonctions JavaScript btoa()/atob() gèrent uniquement le Latin1 ; les données UTF-8 nécessitent un encodage préalable.
Exemple
```javascript
// Encode string to Base64
const encoded = btoa('Hello, World!'); // 'SGVsbG8sIFdvcmxkIQ=='
// Decode Base64 to string
const decoded = atob('SGVsbG8sIFdvcmxkIQ=='); // 'Hello, World!'
// File to Base64 Data URI
const reader = new FileReader();
reader.onload = () => console.log(reader.result);
// → 'data:image/png;base64,iVBORw0KGgo...'
reader.readAsDataURL(file);
```