Domande
Dove codifico o decodifico?
Lo strumento Base64 gestisce testo e file in entrambe le direzioni, compreso l’input URL-safe e senza padding, e mostra i byte decodificati in hex.
Tutto ciò che vale la pena consultare su Base64, comprese le righe singole per ogni linguaggio.
| 0 A | 1 B | 2 C | 3 D | 4 E | 5 F | 6 G | 7 H |
| 8 I | 9 J | 10 K | 11 L | 12 M | 13 N | 14 O | 15 P |
| 16 Q | 17 R | 18 S | 19 T | 20 U | 21 V | 22 W | 23 X |
| 24 Y | 25 Z | 26 a | 27 b | 28 c | 29 d | 30 e | 31 f |
| 32 g | 33 h | 34 i | 35 j | 36 k | 37 l | 38 m | 39 n |
| 40 o | 41 p | 42 q | 43 r | 44 s | 45 t | 46 u | 47 v |
| 48 w | 49 x | 50 y | 51 z | 52 0 | 53 1 | 54 2 | 55 3 |
| 56 4 | 57 5 | 58 6 | 59 7 | 60 8 | 61 9 | 62 + | 63 / |
URL-safe (RFC 4648 §5): 62 = -, 63 = _, di solito senza padding. Carattere di padding: =.
byte: 01001000 01101001 00100001 "Hi!" 6 bit: 010010 000110 100100 100001 char: S G k h "SGkh" "Hi" → 01001000 01101001 (16 bit) → 010010 000110 1001(00) → "SGk" + "=" "H" → 8 bit → 010010 00(0000) → "SA" + "=="
| Lunghezza input mod 3 = 0 | nessun padding |
| = 1 | 2 caratteri + == |
| = 2 | 3 caratteri + = |
| Dimensione output | ⌈n / 3⌉ × 4 (≈ +33 %) |
| Dimensione input dall’output | len × 3 / 4 − padding |
| MIME (RFC 2045) | righe di 76 caratteri, CRLF |
| PEM | righe di 64 caratteri |
| Base64 | A–Z a–z 0–9 + /; email, JSON, URL data: |
| Base64URL | - e _ al posto di + /; JWT, OAuth, nomi di file |
| Base32 | A–Z 2–7; segreti TOTP, senza distinzione di maiuscole, +60 % |
| Base32hex | 0–9 A–V; ordina numericamente (DNSSEC NSEC3) |
| Hex (Base16) | 0–9 a–f; +100 %, banale da leggere |
| Base58 | senza 0 O I l; indirizzi Bitcoin |
| Base85 / Ascii85 | +25 %; PDF, diff binari di git |
| base64 di bcrypt | ./A–Z a–z 0–9, ordine diverso; solo dentro gli hash bcrypt |
| base64 file; base64 -d | GNU coreutils (-w0 per non andare a capo) |
| openssl base64 -A | OpenSSL (-A = riga singola) |
| echo -n 'testo' | base64 | -n: nessun a capo finale nell’input |
| base64.b64encode(b), b64decode(s) | Python; urlsafe_b64encode per URL-safe |
| btoa(s), atob(s) | JS, solo stringhe Latin-1; per UTF-8 usa TextEncoder + fromCharCode, o Buffer in Node |
| Buffer.from(s).toString('base64'); Buffer.from(b64, 'base64') | Node.js (anche 'base64url') |
| base64.StdEncoding.EncodeToString(b) | Go; RawURLEncoding per URL-safe senza padding |
| base64_encode(), base64_decode() | PHP |
| Base64.strict_encode64(s) | Ruby (encode64 spezza le righe) |
| [Convert]::ToBase64String($bytes) | PowerShell |
| SELECT TO_BASE64('x'); encode('x','base64') | MySQL; PostgreSQL |
= mancante, una stringa URL-safe data a un decodificatore rigoroso, o degli a capo.data: è data:<mime>;base64,<dati>.I risultati e i messaggi di questo strumento sono mostrati in inglese.
Lo strumento Base64 gestisce testo e file in entrambe le direzioni, compreso l’input URL-safe e senza padding, e mostra i byte decodificati in hex.