ForHosting KIT · Strumenti per sviluppatori

Checksum System V

La parola hello dà checksum 532 e 1 blocco, esattamente ciò che stampa sum -s su Unix. Incolli un testo per riprodurre il valore classico di System V, non la variante BSD, in script ereditati, documentazione e lezioni. 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
Checksum
532
Blocchi
1
Numero di byte
5
Algoritmo
System V sum (sum -s)

System V sum è l'algoritmo alternativo di checksum dei file stampato dall'utility Unix classica sum quando si passa l'opzione -s, il percorso usato su molti sistemi derivati da System V e ancora disponibile in GNU coreutils. A differenza degli hash crittografici, produce un residuo compatto di sedici bit più un conteggio di blocchi da cinquecentododici byte, pensato per controlli rapidi di integrità su carichi brevi e script legacy che ancora analizzano l'output di sum. Questa capacità accetta una stringa di testo, la codifica come UTF-8, esegue gli stessi passi di accumulo e piega che sum -s applica ai byte di un file e restituisce il checksum insieme al conteggio dei blocchi e alla lunghezza in byte. L'input vuoto è accettato di proposito e segnalato con chiarezza: checksum zero, zero blocchi e un avviso esplicito di vuoto affinché l'automazione non confonda mai un carico vuoto con un campo assente.

Cos'è System V sum e come differisce da BSD sum e dai digest moderni

L'algoritmo System V accumula ogni byte di input in un totale corrente, poi piega quel totale a sedici bit sommando la metà alta alla metà bassa due volte, così che l'overflow della prima piega sia assorbito dalla seconda. Il risultato è un intero non negativo nell'intervallo da zero a sessantacinquemila cinquecentotrentacinque, storicamente stampato come checksum decimale accanto a un conteggio di blocchi.

I blocchi non sono la dimensione logica di record di un database; sono unità da cinquecentododici byte arrotondate per eccesso, così una stringa di cinque byte conta ancora come un blocco e un file vuoto conta come zero. Questo profilo è esattamente ciò che GNU sum implementa con sum -s e ciò che molti script shell ancora estraggono quando confrontano due copie di un piccolo file su host Unix datati.

È deliberatamente debole secondo gli standard moderni: le collisioni sono facili e non sostituisce SHA-256, CRC-32 né l'autenticazione crittografica dei messaggi. Il suo ruolo è l'interoperabilità con sum -s, con documentazione d'archivio che cita checksum System V e con materiale didattico che contrappone l'algoritmo BSD di rotazione e somma alla somma semplice System V.

Quando il checksum System V serve ancora

I team embedded e industriali che hanno ereditato controlli di integrità in stile System V nelle note di protocollo possono verificare stringhe di comando brevi senza installare coreutils completo su ogni immagine di build.

Educatori e siti di documentazione che si posizionano per System V sum o checksum sum -s ottengono un calcolatore live il cui percorso gratuito del browser coincide byte per byte con quello di automazione, incluso il caso limite del file vuoto che confonde gli studenti la prima volta che eseguono sum -s su /dev/null o un file touch vuoto.

Gli autori di contenuti su algoritmi BSD versus System V possono mostrare entrambi i residui affiancati abbinando questa capacità a un percorso BSD separato quando disponibile, senza pretendere che alcuno sia un hash crittografico. La validazione fallita non consuma saldo. Fissi hello uguale a cinquecentotrentadue con un blocco e vuoto uguale a zero con zero blocchi nelle suite di regressione e ottiene checksum legacy riproducibili per script, demo LMS e worker edge senza erigere uno userspace Unix solo per invocare sum.

Verifica legacy di sum -s

Ricalcoli checksum System V e conteggi di blocchi da 512 byte per carichi di testo brevi, così gli strumenti moderni coincidono con l'output storico di sum -s in script di migrazione e audit.

Goldens CI per input vuoti e brevi

Affermi checksum 0 e blocks 0 per testo vuoto e fissi vettori noti come hello → 532 / 1 blocco, così i refactor non alterano silenziosamente l'algoritmo.

Insegnare BSD versus System V sum

Mostri agli studenti il residuo System V e il conteggio blocchi accanto alla documentazione dell'algoritmo alternativo di sum, con un avviso chiaro di input vuoto per il caso a lunghezza zero.

È lo stesso di sum -s?

Sì. Implementa l'algoritmo alternativo System V usato da sum -s: somma di byte, due pieghe a 16 bit e blocchi ceil(length/512). Non è l'algoritmo BSD predefinito di sum.

System V sum è un hash sicuro?

No. È un checksum legacy a 16 bit per interoperare con sum -s e per la didattica. Usi digest crittografici come SHA-256 quando serve resistenza alle collisioni.

Come si calcola il checksum System V?

Ogni byte del testo si somma a un totale progressivo. Poi il totale viene ripiegato a 16 bit sommando la metà alta a quella bassa due volte, così l'eccedenza del primo ripiegamento viene assorbita dal secondo. Il risultato va da 0 a 65535.

Che cosa indica il numero di blocchi?

È il numero di unità da 512 byte occupate dal testo, arrotondato per eccesso. Una parola di cinque lettere come hello conta 1 blocco, e un testo vuoto dà 0 blocchi e checksum 0.

Come vengono contate lettere accentate ed emoji?

Il testo viene prima trasformato in byte UTF-8 e ogni byte entra nel totale. Un carattere che occupa più byte, come una lettera accentata o un'emoji, aggiunge quindi più di un valore alla somma.

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/sysv-sum

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

Cos'è System V sum e come differisce da BSD sum e dai digest moderni

Usi questo endpoint quando le serve quel residuo specifico, non quando serve resistenza alle collisioni. Quando arriva testo vuoto, il residuo è zero e il conteggio blocchi è zero, in accordo con sum -s su un file vuoto, ed è esposto con il campo empty_notice affinché i client mostrino uno stato leggibile senza inventare una propria formulazione.

Contratto di input, campi di risposta e testo vuoto versus testo assente

La stringa è codificata come UTF-8 e ogni byte risultante entra nell'accumulatore System V; i caratteri Unicode multi-byte contribuiscono ogni unità di codice UTF-8, non un singolo code point. Esempio: le cinque lettere ASCII hello producono checksum cinquecentotrentadue, un blocco e cinque byte, in accordo con sum -s. Mantenga carichi modesti nel browser; l'algoritmo è lineare nella lunghezza in byte e interamente in memoria, senza rete né file system. Invii con POST un corpo JSON con il campo stringa obbligatorio text. Le chiavi alias data, payload, value, input e content sono accettate per lo stesso carico così generatori e form possono riusare nomi di campo esistenti. Un campo text del tutto assente, un valore null o un oggetto non stringa fallisce con invalid_input e un messaggio che nomina il campo assente o non valido; tali fallimenti non sono fatturati e non vanno confusi con il percorso di successo su input vuoto. In caso di successo il corpo include sempre checksum come residuo a sedici bit, blocks come conteggio di blocchi da cinquecentododici byte, byte_count della codifica UTF-8, empty come booleano, algorithm con l'etichetta fissa System V sum (sum -s) e block_size cinquecentododici. L'empty_notice opzionale compare solo quando empty è true, seguendo la regola di omettere i campi opzionali anziché impostarli a null.

Dove un'API di checksum System V sum crea valore

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.

Come si calcola un checksum System V sum?

Invii un campo stringa JSON text (UTF-8). L'API restituisce checksum (0–65535), blocks da 512 byte, byte_count, empty e algorithm System V sum (sum -s).

Cosa succede con input vuoto?

La stringa vuota è valida. Ottiene checksum 0, blocks 0, byte_count 0, empty true e empty_notice che descrive l'input vuoto. text assente è invalid_input e non è fatturato.

Quanto costa lo strumento di checksum System V sum?

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

Leggi la documentazione completa del KIT →