ForHosting KIT · Strumenti per sviluppatori

Calcolatore hash djb2

Incolli una parola e ottenga l'impronta djb2 di Bernstein: hello dà 0f923099, cioè 261238937 come numero, lo stesso risultato del codice dei manuali. Serve per tabelle hash, chiavi di cache e suddivisione stabile in gruppi, mai per le password. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Testo
hello
Ottiene
Hash in esadecimale
0f923099
Hash (intero)
261.238.937
Hash in decimale
261238937
Lunghezza
5

djb2 è l'hash classico di stringa non crittografico progettato da Daniel J. Bernstein: si parte da cinquemila trecentottantuno e, per ogni carattere, si moltiplica l'hash corrente per trentatré e si somma il codice del carattere, conservando solo i trentadue bit bassi. Gli sviluppatori scelgono ancora djb2 quando serve un'impronta rapida e deterministica per tabelle hash, chiavi di cache, mappe di deduplicazione e materiale didattico che deve coincidere con manuali e frammenti di codice noti. Questa capacità accetta una stringa di testo non vuota, esegue esattamente quell'algoritmo sulle unità di codice UTF-16 e restituisce il residuo a trentadue bit come otto cifre esadecimali minuscole più l'intero senza segno corrispondente.

Cos'è djb2 e quando basta un hash di stringa a 32 bit

Gli hash non crittografici scambiano resistenza alle collisioni con velocità e semplicità. djb2 è uno dei compromessi più copiati: il seed cinquemila trecentottantuno e il moltiplicatore trentatré (spesso scritto come spostamento di cinque bit a sinistra più il valore originale) producono un intero a trentadue bit ben disperso per stringhe corte comuni, senza tabelle, segreti o dipendenze di piattaforma.

Bernstein ha pubblicato l'idea nell'era del pubblico dominio delle utilità di stringa in C; compare ancora in runtime di linguaggi, motori di gioco e articoli perché gli studenti possono implementarlo in poche righe e ottenere una distribuzione utile per le mappe hash. Non è un hash per password, né un digest di integrità del contenuto, né un sostituto di SHA-256 o BLAKE quando un avversario potesse scegliere gli input.

Feature flag e bucket di routing

Proietti stringhe di utente o tenant in uno spazio a trentadue bit per bucket A/B coerenti senza overhead crittografico né materiale segreto.

Come si calcola un hash djb2?

Invii una stringa non vuota nel campo text.

Quale algoritmo e seed usa?

djb2 classico di Daniel J. Bernstein: hash iniziale 5381, poi per ogni carattere hash = hash * 33 + charCode, troncato a un valore a 32 bit senza segno.

djb2 è adatto a password o controlli di integrità?

No. djb2 è un'impronta non crittografica rapida per tabelle hash e didattica. Usi un hash crittografico moderno per password, firme e integrità del contenuto.

Perché il mio risultato djb2 è diverso da quello di un altro strumento?

Di solito l'altro strumento salta un passaggio della ricetta classica. Questo parte da 5381, moltiplica per 33, somma il codice di ogni carattere e a ogni passo conserva solo i 32 bit bassi senza segno, ed è così che il codice di riferimento ottiene 0f923099 per hello.

A cosa serve un hash djb2?

A dare a qualsiasi testo un numero rapido e ripetibile. Si usa per collocare chiavi nelle tabelle hash, costruire chiavi di cache, trovare duplicati e dividere gli utenti in gruppi di prova stabili, quando la velocità conta più della resistenza agli attacchi.

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/djb2

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/djb2 \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"hello"}'
{
  "text": "hello"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "enc.djb2",
  "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.

L'input vuoto viene rifiutato con invalid_input affinché chi chiama non confonda un payload di lunghezza zero con un hash reale.

Cos'è djb2 e quando basta un hash di stringa a 32 bit

Questo endpoint fissa l'avvolgimento classico senza segno a trentadue bit in modo che la parola ASCII hello produca il residuo familiare 0f923099 e la stringa test produca 7c9e6865, allineato alle implementazioni di riferimento comuni che troncare con un cast senza segno dopo ogni passo di moltiplicazione e somma.

Contratto di input, rifiuto dell'input vuoto e campi di risposta

La validazione fallita non viene fatturata. L'algoritmo è lineare nella lunghezza della stringa e interamente in memoria; mantenga le demo del browser su stringhe di scala umana e fissi vettori noti come hello uguale a 0f923099 nell'integrazione continua affinché un refactor di una riga non alteri silenziosamente il contratto. Invii con POST un corpo JSON con il campo stringa obbligatorio text. Il valore deve essere una stringa non vuota; text assente, null o una stringa vuota fallisce con invalid_input e un messaggio che segnala esplicitamente input vuoto o mancante così le interfacce dei moduli possono evidenziare il campo senza indovinare. In caso di successo il corpo include hash_hex come otto cifre esadecimali minuscole con zero a sinistra, hash_int come intero senza segno da zero a quattro miliardi duecentonovantaquattro milioni novecentosessantasettemila duecentonovantacinque, hash_dec come lo stesso intero in testo decimale, length come conteggio caratteri della stringa sottoposta ad hash, algorithm fisso a djb2 e seed fisso a cinquemila trecentottantuno che documenta il valore iniziale classico. Sono accettati gli alias data, payload, value, input e string per il payload così i client SDK riutilizzano i nomi di campo esistenti.

Dove un'API di hash djb2 merita il suo posto

Educatori e coach per colloqui usano la stessa uscita deterministica per valutare le implementazioni degli studenti dell'hash moltiplica-per-trentatré senza montare una fattoria di compilatori. I siti di contenuti che competono per calcolatore hash djb2 ottengono uno strumento live il cui percorso gratuito coincide byte per byte con quello di automazione. I team di backend automatizzano l'API in strumenti di messa in servizio che assegnano shard di cache, bucket di feature flag o chiavi di routing dei log e fissano valori dorati hash_hex affinché una migrazione di piattaforma non riordini mai il traffico per incidente. Poiché l'implementazione è parse pura di livello A, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello e senza rete in uscita. Mantenga le richieste deterministiche, rifiuti i payload vuoti al bordo e otterrà riproducibilità da manuale senza incorporare frammenti djb2 in ogni microservizio.

Impronte per tabelle hash e chiavi di cache

Esegua l'hash di identificatori brevi con djb2 e memorizzi hash_hex o hash_int come impronta compatta e indipendente dal linguaggio per mappe, cache e assegnazione di bucket.

Didattica e vettori di test dorati

Verifichi che il codice di studenti o librerie produca hash_hex 0f923099 per hello e 7c9e6865 per test, così i port di djb2 restano allineati tra runtime.

Cosa succede se invio testo vuoto?

Testo vuoto o assente fallisce con invalid_input e un messaggio che segnala input vuoto. Tali errori non vengono fatturati.

Quanto costa lo strumento di hash djb2?

Lo strumento nel browser è gratuito. Le richieste API usano il saldo prepagato KIT a $0.002 per chiamata riuscita; l'input non valido non viene fatturato.

Leggi la documentazione completa del KIT →