2016-06-05 32 views
6

Mi piacerebbe conoscere un tipo di checksum del file (come l'hash SHA-256 o qualsiasi altra cosa) quando avvio il download del file dal server HTTP. Potrebbe essere trasferito come una delle intestazioni di risposta HTTP.checksum nell'intestazione della risposta HTTP - perché no?

Http etag Http etag è qualcosa di simile, ma è utilizzato solo per invalidare la cache del browser e, da quello che ho notato, ogni sito lo sta calcolando in modo diverso e non sembra un hash che conosco.

Alcuni siti di download di software forniscono vari file di checksum come file separati da scaricare (ad esempio, gli ultimi hash di Ubuntu 16.04 SHA1: http://releases.ubuntu.com/16.04/SHA1SUMS). Non sarà più semplice includerli nell'intestazione della risposta HTTP e forzare il browser a calcolarlo quando termina il download (e non forzare l'utente a farlo manualmente).

Immagino che l'intera Internet basata su HTTP funzioni, perché stiamo usando il protocollo TCP, che è affidabile e garantisce che i byte ricevuti siano esattamente come quelli inviati dal server. Ma se TCP è così "cool", perché controlliamo manualmente gli hash dei file (vedi esempio di Ubuntu)? E molte cose possono andare storte durante il download dei file (danneggiamento del disco client/server, modifica dei file sul lato server, ecc.). E se ho ragione, tutto potrebbe essere risolto semplicemente passando hash di file all'avvio di download ...

risposta

0

Gli hash su ubuntu.com e siti simili ci sono per due scopi:

  • controllare l'integrità del file (sì, ipoteticamente il browser potrebbe controllarlo per te)
  • controlla la correttezza del file, per evitare manomissioni (ad esempio un utente malintenzionato potrebbe intercettare la tua richiesta di download e offrirti un file malevolo. lato https del browser, questo non sarebbe vero per i dati a riposo, ad esempio un disco esterno USB, e si potrebbe voler verificare la sua correttezza confrontando gli hash)
+1

La domanda è: perché il checksum non viene consegnato nella stessa risposta HTTP dei dati. – CodeCaster

+0

La parte su SHA1SUMS nella domanda implica che potremmo semplicemente rimuovere quel tipo di file, che mi ha portato a parlare di sicurezza. Probabilmente dovrei semplicemente scrivere un commento, invece: - / –

Problemi correlati