3. Différences d'implémentation
Les differences d'implementation des encodages de base se concentrent surtout sur les retours a la ligne, le bourrage, les caracteres hors alphabet, le choix de l'alphabet et l'encodage canonique.
3.1 Retours a la ligne dans les donnees encodees
Les encodeurs MUST NOT ajouter de retours a la ligne aux donnees encodees, sauf si la specification qui reference RFC 4648 l'exige explicitement. Les limites de 76 caracteres de MIME et de 64 caracteres de PEM appartiennent a ces formats particuliers.
3.2 Bourrage des donnees encodees
En general, les encodeurs MUST ajouter les caracteres de bourrage appropries a la fin des donnees encodees, sauf si la specification appelante indique explicitement le contraire.
3.3 Caracteres hors alphabet
Les decodeurs MUST rejeter les donnees contenant des caracteres hors de l'alphabet choisi, sauf si la specification appelante autorise volontairement ces caracteres, par exemple en ignorant les espaces.
3.4 Choix de l'alphabet
Des environnements differents exigent des alphabets differents. Les caracteres + et / sont peu pratiques dans les URL et les noms de fichier, ce qui motive l'alphabet Base64 sur pour URL et noms de fichier.
3.5 Encodage canonique
Les bits de bourrage MUST etre a zero. Sinon, une meme valeur binaire peut avoir plusieurs representations textuelles, ce qui perturbe les comparaisons canoniques, les signatures et les hachages.