ForHosting KIT · Strumenti per sviluppatori

Codificatore e decodificatore Base45

«AB» diventa BB8 in Base45, la codifica dell'RFC 9285 che tiene i dati entro i 45 caratteri che un codice QR legge in modalità alfanumerica, come fanno i certificati COVID digitali dell'UE. La decodifica riporta il testo. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Testo
AB
Modalità di calcolo
Encode
Ottiene
Risultato
BB8
Codifica
base45
Byte input
2
Byte output
3

Questo codificatore Base45 converte testo semplice in RFC 9285 Base45 e decodifica stringhe Base45 di nuovo in testo UTF-8 usando l'alfabeto alfanumerico a quarantacinque caratteri dei codici QR. Il motore è completamente deterministico: lo stesso input e la stessa modalità producono sempre lo stesso risultato, senza chiamate di rete, sale casuale o scorciatoie legate alla data. Controlli classici includono la codifica di AB in BB8, Hello!! in una stringa che include uno spazio, e base-45 in UJCLQE7W581.

Cos'è Base45 e cosa restituisce questo strumento

Base45 è la codifica binario-a-testo definita nell'RFC 9285 per i dati che viaggeranno dentro codici QR in modalità alfanumerica. L'alfabeto è il set fisso di quarantacinque caratteri: zero-nove, A-Z, spazio, dollaro, percento, asterisco, più, meno, punto, barra e due punti. La codifica interpreta ogni coppia di byte di input come un intero senza segno a sedici bit n uguale ad a per duecentocinquantasei più b, quindi scrive n come tre cifre in base quarantacinque con la cifra meno significativa a sinistra.

Un byte residuo finale diventa solo due cifre. Questo design si adatta al pacchettamento alfanumerico QR meglio di Base64, che richiede più, barra e il padding scomodi in modalità alfanumerica QR. Questa pagina segue sempre quel contratto: la modalità encode codifica il vostro testo in UTF-8, impacchetta i byte, e restituisce solo caratteri dell'alfabeto; la modalità decode inverte il processo e rifiuta caratteri fuori dall'alfabeto, gruppi incompleti la cui lunghezza modulo tre è uno, e qualsiasi tripletta di tre caratteri il cui valore numerico supera sessantacinquemilacinquecentotrentacinque.

Come vengono letti testo e modalità e come i risultati restano riproducibili

Encode accetta qualsiasi stringa Unicode, la converte con il TextEncoder della piattaforma in byte UTF-8, quindi emette gruppi Base45 come specificato sopra. Decode richiede una stringa Base45 pura: una lunghezza modulo tre uguale a uno viene rifiutata perché non può rappresentare un numero intero di byte, e qualsiasi carattere fuori dall'alfabeto fallisce con un indice e un carattere chiari. Dopo il recupero delle cifre, ogni tripletta viene verificata contro il tetto a sedici bit così stringhe come GGW, che decodificherebbero oltre sessantacinquemilacinquecentotrentacinque, falliscono invece di andare in overflow.

Le code a due caratteri devono decodificare a un singolo byte al massimo duecentocinquantacinque. Una decodifica UTF-8 fatale assicura poi che i dati binari spuri non diventino testo illeggibile.

Dove si usa Base45 nei codici QR

I team frontend decodificano segmenti Base45 scansionati durante il debug di integrazione senza incollare i dati in script ad hoc che usano accidentalmente l'alfabeto sbagliato. I servizi backend codificano piccoli blob binari prima di inserirli in generatori QR che accettano solo la modalità alfanumerica. Gli ingegneri di qualità generano coppie deterministiche di codifica e decodifica per test contrattuali così un middleware che dichiara supporto Base45 non può passare in silenzio a tabelle diverse o accettare triplette sovradimensionate.

Gli educatori usano lo stesso strumento quando insegnano come interagiscono la modalità alfanumerica QR, le coppie di simboli a quindici bit, e Base45, inclusi i classici esempi RFC AB in BB8 e Hello!! con il suo spazio incorporato.

In cosa Base45 è diverso da Base64?

Base45 usa l'alfabeto alfanumerico QR a 45 caratteri e impacchetta due byte in tre caratteri. Non ha padding ed è progettato per i codici QR, non per email o segmenti JWT.

Cos'è una tripletta Base45 non valida?

Un gruppo di tre caratteri il cui valore supera 65535 (per esempio GGW).

Il risultato è deterministico?

Sì. Lo stesso testo e la stessa modalità producono sempre lo stesso risultato senza rete, casualità o comportamenti legati alla data.

Perché il risultato in Base45 contiene degli spazi?

Perché lo spazio è uno dei 45 caratteri di Base45, insieme alle cifre, alle maiuscole e a simboli come $, %, * e +. «Hello!!» produce una stringa con uno spazio, quindi copi il risultato intero, spazi compresi, prima di decodificarlo.

Di quanto si allunga un testo in Base45?

Ogni due byte diventano tre caratteri, e un byte rimasto alla fine ne diventa due. Per questo «AB», che occupa due byte, diventa BB8. Per i codici QR è più compatto di Base64 senza uscire dalla modalità alfanumerica.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

POSThttps://api.kit.forhosting.com/enc/base45

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

curl -X POST https://api.kit.forhosting.com/enc/base45 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"AB"}'
{
  "text": "AB"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.base45",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Base45 impacchetta due byte in tre caratteri e un byte residuo in due caratteri, il che è più compatto per i payload QR rispetto a Base64 pur restando dentro il set di caratteri alfanumerico sicuro per QR che gli scanner già si aspettano. Lo schema alimenta i Certificati COVID Digitali UE e altre credenziali verificabili QR che devono trasportare dichiarazioni binarie senza uscire dal set di caratteri sicuro per QR. Usatelo gratis nel browser per il debug e l'insegnamento delle credenziali, oppure chiamate l'API a $0.002 per richiesta riuscita quando le pipeline hanno bisogno di trasformazioni Base45 riproducibili in CI e servizi backend.

Cos'è Base45 e cosa restituisce questo strumento

La risposta JSON include result per la stringa trasformata, mode che riporta encode o decode, encoding fissato a base45, e input_bytes più output_bytes così potete verificare le dimensioni nei test. Non c'è percorso di streaming e nessun ripiego silenzioso su Base64: o la stringa è testo Base45 valido oppure la richiesta fallisce con invalid_input. Se vi serve il Base64url standard per i JWT, usate un endpoint Base64url dedicato; questa landing è solo per l'alfabeto RFC 9285 usato dalle credenziali verificabili QR.

Come vengono letti testo e modalità e come i risultati restano riproducibili

Il campo preferito del payload è text, con gli alias input, value e s così form, query string e client SDK possono riusare lo stesso contratto senza rinominare colonne. Mode è predefinito su encode e accetta esplicitamente decode; gli alias op, direction e action mappano allo stesso interruttore per script che già usano quei nomi. Abbinate l'esecuzione gratuita nel browser di questa pagina all'API a pagamento quando vi serve lo stesso risultato matematico dentro una pipeline automatizzata senza reimplementare da soli le tabelle Base45. Gli input non validi restituiscono invalid_input e non vengono addebitati, il che mantiene economica la validazione mentre le trasformazioni riuscite restano a un prezzo fisso per elemento di $0.002.

Dove si inserisce Base45 in credenziali QR, API e fixture di test

In questa pagina il lavoro viene svolto interamente nel browser; tramite l'API ogni ricerca riuscita costa $0.002, la convalida fallita non viene addebitata e nulla viene conservato dopo la restituzione della risposta. Questa divisione — esplorazione interattiva gratuita e API a pagamento identica — corrisponde al resto del catalogo tier A del KIT e permette di passare da una dimostrazione in aula a una pipeline automatizzata senza cambiare il risultato codificato. Abbinatelo agli helper CBOR o dei certificati quando vi servono altri passaggi di credenziali correlati, e agli altri endpoint di codifica quando state costruendo un piccolo laboratorio di strumenti di testo gratuiti e deterministici.

Credenziali verificabili QR

Codificate o decodificate payload RFC 9285 Base45 usati dai Certificati COVID Digitali UE e da altre credenziali verificabili trasportate su QR.

Fixture QR alfanumeriche

Trasformate breve testo binary-safe in Base45 così i generatori QR possono usare la modalità alfanumerica senza uscire dall'alfabeto a 45 caratteri.

Fixture CI deterministiche

Generate stringhe Base45 riproducibili per unit test, file golden e controlli contrattuali tra servizi di wallet e scanner.

Quanto costa il codificatore Base45?

È gratuito nel browser su questa pagina. Tramite l'API una richiesta riuscita costa $0.002; gli input non validi non vengono addebitati.

Quali modalità sono supportate?

mode=encode (predefinito) trasforma testo semplice in Base45. mode=decode trasforma una stringa Base45 di nuovo in testo UTF-8.

Leggi la documentazione completa del KIT →