Come generare un file hash MD5 in Node.js?

Come Generare Un File Hash Md5 In Node Js



IL ' Hashing MD5 ' svolge un ruolo fondamentale nella protezione dei dati dello sviluppatore mantenendo l'integrità dei dati. È tale che Node.js “ criptovaluta La libreria ' viene utilizzata per calcolare i valori hash per i file, come ' MD5 ' per verificare l'integrità della trasmissione o dell'archiviazione. Questo approccio aiuta a confermare lo sviluppatore delle vulnerabilità o della manomissione dei file, mantenendo così i dati al sicuro.

Panoramica dei contenuti

Che cos'è l'hashing dei file MD5?

MD5 ' è una funzione unidirezionale che accetta dati di qualsiasi tipo come input e li mappa su una stringa di output di dimensione fissa, indipendentemente dalla dimensione della stringa specificata. La funzione hash crea lo stesso/identico hash di output per la stringa fornita.

È tale che questa stringa può essere utilizzata per convalidare file o testo al momento del passaggio attraverso la rete e MD5 verifica se i dati sono validi o meno. Di seguito la dimostrazione:







Valore immesso Valore hash restituito
JavaScript 686155af75a60a0f6e9d80c1f7edd3e9
Liam*88 c9c77fd293a9bb6d172e36a4a04053ea

Prerequisiti per generare un file hash MD5 in JavaScript

Di seguito sono riportati i prerequisiti da considerare prima di generare un file hash MD5:



Passaggio 1: impostare il progetto

Innanzitutto inizializzare il progetto con i valori di default(tramite il pulsante “ -E ' flag) utilizzando il seguente cmdlet:



npm init - E





Suggerimento bonus: Creare un ' modello.cjs ' al posto del ' template.js ' file per evitare il ' modulo ' errori di tipo.

Passaggio 2: crea un file di testo

Crea il file di testo “ filetesto.txt ' per generare il valore hash MD5 dal contenuto del file. Di seguito è riportato il contenuto del file da valutare:



Inoltre, si noti che il “ criptovaluta ' sarà richiesto il modulo. Trattandosi di un modulo integrato di Node.js, quindi, non è necessario installarlo o configurarlo. Di seguito la dimostrazione:

npm installa la crittografia

Qui è evidente che non è necessario installare questo modulo separatamente.

Come generare un file hash MD5 in Node.js?

Un hash MD5 di un file può essere generato con l'aiuto del comando ' criptovaluta ' e i suoi metodi come ' createHash() ' E ' digerire() ”. Questo modulo fornisce i metodi crittografici per rendere sicuri i dati in Node.js.

Metodi comuni utilizzati per generare un file hash MD5 in Node.js

Di seguito sono riportati i metodi comunemente utilizzati per generare un hash md5 del file:

leggiFileSync(): Questo metodo viene utilizzato per leggere i file in modo sincrono.

Sintassi

fs. leggereFileSync ( pt, opz )

Nella sintassi data:

  • punto ' si riferisce al percorso relativo del file di testo.
  • optare ' è un parametro opzionale che comprende la codifica e il flag.

Valore di ritorno

Recupera il contenuto del file.

createHash(): Questo metodo crea un oggetto hash per creare i digest hash.

Sintassi

criptovaluta. createHash ( alg, opt )

In questa sintassi:

  • alg ' indica la dipendenza dagli algoritmi accessibili favoriti dalla versione OpenSSL.
  • optare ' è un parametro facoltativo che controlla il comportamento del flusso.

Valore di ritorno

Recupera l'oggetto Hash.

hash.digest(): Questo metodo crea i dati del digest passati durante la creazione di un hash.

Sintassi

hash. digerire ( [ inc ] )

Qui, ' inc ” indica il tipo di codifica che può essere “ esadecimale ' O ' base64 ”.

Valore di ritorno

Recupera la stringa della codifica passata.

Esempio 1: generazione di un file hash MD5 in Node.js

Questo esempio genera un hash md5 del contenuto del file utilizzando il metodo ' criptovaluta ' E ' fs ' moduli:

cost prendi1 = richiedere ( 'cripto' ) ;

cost get2 = richiedere ( 'fs' ) ;

cost readmd5 = get2. leggereFileSync ( 'filetesto.txt' ) ;

cost fuori = prendi1. createHash ( 'md5' ) . aggiornamento ( readmd5 ) . digerire ( 'esadecimale' ) ;

consolle. tronco d'albero ( 'Hash MD5 di un file -> ' + fuori ) ;

La spiegazione del codice è la seguente:

  • Innanzitutto, importa il ' criptovaluta ' E ' fs ' moduli per generare un hash md5 e lavorare con i file, rispettivamente.
  • Ora applica il ' leggiFileSync() ' per leggere il file specificato in modo sincrono.
  • Successivamente, applicare il ' createHash() ” per creare un oggetto hash md5 riferito al file.
  • Il ' esadecimale ' valore come ' digerire() Il parametro del metodo si riferisce al tipo di codifica.
  • Infine, recupera l'hash md5 del file corrispondente.

Produzione

Esegui il cmdlet seguente per generare un hash del file md5:

modello di nodo. cj

Questo risultato implica che l'hash md5 del file di destinazione venga restituito in modo appropriato.

Esempio 2: generazione di un hash di file MD5 e lettura del file in Node.js

In questa dimostrazione, l'hash md5 di un file può essere recuperato insieme alla lettura del contenuto del file:

var include1 = richiedere ( 'fs' ) ;

era incluso2 = richiedere ( 'cripto' ) ;

var getHash = ( contenuto ) => {

var genHash = includere2. createHash ( 'md5' ) ;

dati = genHash. aggiornamento ( contenuto, 'utf-8' ) ;

fuori = dati. digerire ( 'esadecimale' ) ;

ritorno fuori ;

}

var readFile = includere1. creareReadStream ( 'filetesto.txt' ) ;

conto calce = ''

leggiFile. SU ( 'dati' , funzione ( pezzo ) {

continua += pezzo ;

} ) ;

leggiFile. SU ( 'errore' , funzione ( errare ) {

consolle. tronco d'albero ( errare ) ;

} ) ;

leggiFile. SU ( 'FINE' ,funzione ( ) {

contenuto var = getHash ( continua ) ;

consolle. tronco d'albero ( 'Contenuto del file -> \N ' + continua ) ;

consolle. tronco d'albero ( 'Hash MD5 di un file -> ' + contenuto ) ;

} ) ;

Secondo questo blocco di codice, eseguire i passaggi indicati di seguito:

  • Allo stesso modo, includere i moduli discussi.
  • Ora, passa i dati da sottoporre ad hashing creando un oggetto hash md5 e specificando il ' esadecimale ' formato.
  • Successivamente, crea un flusso di lettura per leggere il contenuto del file specificato.
  • Andando avanti, leggi il contenuto del file e gestisci gli eventuali errori riscontrati.
  • Infine, invoca il “ getHash() ' per calcolare l'hash md5 del contenuto del file.

Produzione

Esegui il codice seguente per recuperare l'hash md5 del contenuto del file:

modello di nodo. cj

Da questo risultato, si può dedurre che il contenuto del file insieme all'hash md5 del file viene visualizzato in modo appropriato.

Approccio alternativo 1: generazione dell'hash MD5 di una stringa in Node.js

La seguente dimostrazione del codice genera un hash md5 di un valore stringa:

era perizoma = 'Linux' ;

la calce include = richiedere ( 'cripto' ) ;

var makeHash = includere. createHash ( 'md5' ) . aggiornamento ( corda ) . digerire ( 'esadecimale' ) ;

consolle. tronco d'albero ( 'Hash MD5 di una stringa -> ' + makeHash ) ;

In questo codice:

  • Inizializza la stringa rispetto alla quale deve essere recuperato il valore hash md5 e includi ' criptovaluta ' modulo.
  • Successivamente, allo stesso modo, applicare il “ createHash() ' E ' digerire() ' metodi per creare un oggetto hash e recuperare la stringa rispetto al tipo di codifica passato, ovvero 'hex'.
  • Infine, restituisci l'hash md5 della stringa definita.

Produzione

modello di nodo. cj

Approccio alternativo 2: generazione dell'hash MD5 di una password in Node.js

In questo esempio, è invece possibile recuperare l'hash MD5 di una password:

era perizoma = '123*adQe&' ;

la calce include = richiedere ( 'cripto' ) ;

var makeHash = includere. createHash ( 'md5' ) . aggiornamento ( corda ) . digerire ( 'esadecimale' ) ;

consolle. tronco d'albero ( 'Hash MD5 di una password -> ' + makeHash ) ;

Qui, specifica la password e ripeti i passaggi discussi per includere il ' criptovaluta ' e applicando il modulo combinato ' aggiornamento() ' E ' digerire() ' metodi per generare un hash md5 della password.

Produzione

L'esecuzione del cmdlet seguente genera l'hash md5 della password:

modello di nodo. cj

Conclusione

L'hash MD5 di un file può essere generato installando e importando il file ' criptovaluta ' e facendo uso dei suoi metodi come ' createHash() ' E ' digerire() ” ecc. Inoltre è possibile generare anche l'hash md5 di una stringa definita o di una password. Questo sostanzialmente protegge i dati crittografandoli in base al formato di codifica passato.