Kuinka luoda MD5-tiedostotiiviste Node.js:ssä?

Kuinka Luoda Md5 Tiedostotiiviste Node Js Ssa



' MD5 hajautus ” on tärkeä rooli kehittäjän tietojen turvaamisessa säilyttämällä tietojen eheyden. Se on sellainen, että Node.js ' krypto ' -kirjastoa käytetään tiedostojen hajautusarvojen laskemiseen, kuten ' MD5 ” tarkistaaksesi lähetyksen tai tallennustilan eheyden. Tämä lähestymistapa auttaa vahvistamaan haavoittuvuuksien tai tiedostojen peukaloinnin kehittäjän ja pitämään tiedot turvassa.

Sisällön yleiskatsaus

Mikä on MD5-tiedostojen hajautus?

' MD5 ” on yksisuuntainen funktio, joka ottaa minkä tahansa tyyppiset tiedot syötteensä ja kartoittaa ne kiinteän kokoiseksi tulostejonoksi, riippumatta annetusta merkkijonosta. Hajautusfunktio luo saman/identtisen tulostehajasteen annetulle merkkijonolle.

Se on sellainen, että tätä merkkijonoa voidaan käyttää tiedostojen tai tekstin tarkistamiseen verkon läpi kulkevana, ja MD5 tarkistaa, ovatko tiedot kelvollisia vai eivät. Alla esittely:







Syöttöarvo Palautettu hash-arvo
JavaScript 686155af75a60a0f6e9d80c1f7edd3e9
Liam*88 c9c77fd293a9bb6d172e36a4a04053ea

Edellytykset MD5-tiedoston tiivisteen luomiseen JavaScriptissä

Seuraavat ovat ehtoja, jotka on otettava huomioon ennen MD5-tiedoston hajautusarvon luomista:



Vaihe 1: Määritä projekti

Ensinnäkin, alusta projekti oletusarvoilla (' -ja ” -lippu) käyttämällä seuraavaa cmdlet-komentoa:



npm init - ja





Bonusvinkki: Luo ' template.cjs '-tiedosto '' template.js '-tiedosto välttääksesi ' moduuli ”tyyppivirheitä.

Vaihe 2: Luo tekstitiedosto

Luo tekstitiedosto ' tekstitiedosto.txt ' luodaksesi MD5-hajautusarvon tiedoston sisällöstä. Seuraava on arvioitavan tiedoston sisältö:



Huomaa myös, että ' krypto ”-moduuli tarvitaan. Koska se on Node.js:n sisäänrakennettu moduuli, sitä ei tarvitse asentaa tai määrittää. Alla esittely:

npm asenna krypto

Tässä on selvää, että tätä moduulia ei tarvitse asentaa erikseen.

Kuinka luoda MD5-tiedostotiiviste Node.js:ssä?

Tiedoston MD5-tiiviste voidaan luoda ' krypto '-moduuli ja sen menetelmät, kuten ' createHash() ' ja ' sulattaa() ”. Tämä moduuli tarjoaa salausmenetelmät tietojen suojaamiseksi Node.js:ssä.

Käytettiin yleisiä menetelmiä MD5-tiedoston tiivisteen luomiseen Node.js:ssä

Seuraavia menetelmiä käytetään yleisesti md5-tiivisteen luomiseen tiedostosta:

readFileSync(): Tätä menetelmää käytetään tiedostojen lukemiseen synkronisesti.

Syntaksi

fs. lue FileSync ( pt, opt )

Annetussa syntaksissa:

  • ' pt ' viittaa tekstitiedoston suhteelliseen polkuun.
  • ' valita ” on valinnainen parametri, joka sisältää koodauksen ja lipun.

Palautusarvo

Se hakee tiedoston sisällön.

createHash(): Tämä menetelmä luo hajautusobjektin tiivisteiden luomiseksi.

Syntaksi

krypto. luodaHash ( alg, opt )

Tässä syntaksissa:

  • ' alg ” osoittaa riippuvuuden OpenSSL-version suosimista saavutettavista algoritmeista.
  • ' valita ” on valinnainen parametri, joka ohjaa streamin toimintaa.

Palautusarvo

Se hakee Hash-objektin.

hash.digest(): Tämä menetelmä luo yhteenvedon tiedot, jotka välitetään tiivistettä luotaessa.

Syntaksi

hash. sulattaa ( [ enc ] )

Täällä, ' enc ' osoittaa koodaustyypin, joka voi olla ' hex ' tai ' base64 ”.

Palautusarvo

Se hakee hyväksytyn koodauksen merkkijonon.

Esimerkki 1: MD5-tiedoston tiivisteen luominen Node.js:ssä

Tämä esimerkki luo md5-tiivisteen tiedoston sisällöstä käyttämällä ' krypto ' ja ' fs ' moduulit:

konst saada1 = vaatia ( 'crypto' ) ;

konst saada 2 = vaatia ( 'fs' ) ;

konst readmd5 = saada 2. lue FileSync ( 'tekstitiedosto.txt' ) ;

konst ulos = saada1. luodaHash ( 'md5' ) . päivittää ( readmd5 ) . sulattaa ( 'heksa' ) ;

konsoli. Hirsi ( 'MD5 Hash of a File ->' + ulos ) ;

Koodin selitys on seuraava:

  • Tuo ensin ' krypto ' ja ' fs ”-moduuleita md5-tiivisteen luomiseen ja tiedostojen käsittelemiseen.
  • Käytä nyt ' readFileSync() ” -menetelmää lukeaksesi määritetyn tiedoston synkronisesti.
  • Käytä sen jälkeen ' createHash() ” -menetelmää tiedostoon viittaavan md5-hajautusobjektin luomiseen.
  • määritelty ' hex ' arvo ' sulattaa() ” -menetelmän parametri viittaa koodaustyyppiin.
  • Hae lopuksi vastaavan tiedoston md5 hash.

Lähtö

Suorita seuraava cmdlet luodaksesi md5-tiedoston tiivisteen:

solmumalli. cjs

Tämä tulos tarkoittaa, että kohdetiedoston md5-tiiviste palautetaan asianmukaisesti.

Esimerkki 2: MD5-tiedoston tiivisteen luominen ja tiedoston lukeminen Node.js:ssä

Tässä esittelyssä tiedoston md5-hash voidaan hakea tiedoston sisällön lukemisen yhteydessä:

var include1 = vaatia ( 'fs' ) ;

oli mukana 2 = vaatia ( 'crypto' ) ;

var getHash = ( sisältö ) => {

var genHash = sisältää 2. luodaHash ( 'md5' ) ;

tiedot = genHash. päivittää ( sisältö, 'utf-8' ) ;

ulos = tiedot. sulattaa ( 'heksa' ) ;

palata ulos ;

}

var readFile = sisältää1. luodaReadStream ( 'tekstitiedosto.txt' ) ;

lime tili = ''

lue tiedosto. päällä ( 'data' , toiminto ( kimpale ) {

jatk += kimpale ;

} ) ;

lue tiedosto. päällä ( 'virhe' , toiminto ( err ) {

konsoli. Hirsi ( err ) ;

} ) ;

lue tiedosto. päällä ( 'loppu' ,toiminto ( ) {

var sisältöä = getHash ( jatk ) ;

konsoli. Hirsi ( 'Tiedoston sisältö -> \n ' + jatk ) ;

konsoli. Hirsi ( 'MD5 Hash of a File ->' + sisältö ) ;

} ) ;

Suorita alla annetut vaiheet tämän koodilohkon mukaan:

  • Sisällytä myös käsitellyt moduulit.
  • Välitä nyt tiivistettävät tiedot luomalla md5-hajautusobjekti ja määrittämällä ' hex ”-muodossa.
  • Luo sen jälkeen lukuvirta lukeaksesi määritetyn tiedoston sisällön.
  • Jatka eteenpäin, lue tiedoston sisältö ja selvitä mahdollisista virheistä.
  • Lopuksi kutsu ' getHash() ” -menetelmää tiedoston sisällön md5-hajautusarvon laskemiseksi.

Lähtö

Suorita alla oleva koodi noutaaksesi tiedoston sisällön md5-tiiviste:

solmumalli. cjs

Tästä tuloksesta voidaan päätellä, että tiedoston sisältö ja tiedoston md5-hajautus näytetään asianmukaisesti.

Vaihtoehtoinen lähestymistapa 1: MD5-hajajonon luominen Node.js:ssä

Seuraava koodiesittely luo merkkijonoarvon md5-hajautusarvon:

oli remmi = 'Linux' ;

lime sisältää = vaatia ( 'crypto' ) ;

var makeHash = sisältää. luodaHash ( 'md5' ) . päivittää ( merkkijono ) . sulattaa ( 'heksa' ) ;

konsoli. Hirsi ( 'MD5 Hash of a String ->' + teeHash ) ;

Tässä koodissa:

  • Alusta merkkijono, jota vastaan ​​md5-hajautusarvo haetaan ja sisällytä ' krypto ” moduuli.
  • Käytä sen jälkeen myös ' createHash() ' ja ' sulattaa() ” menetelmiä hash-objektin luomiseen ja merkkijonon hakemiseen suhteessa läpäisemään koodaustyyppiin eli 'hex'.
  • Palauta lopuksi määritellyn merkkijonon md5-tiiviste.

Lähtö

solmumalli. cjs

Vaihtoehtoinen lähestymistapa 2: Salasanan MD5-hajautusarvon luominen Node.js:ssä

Tässä esimerkissä salasanan MD5-tiiviste voidaan noutaa sen sijaan:

oli remmi = '123*adQe&' ;

lime sisältää = vaatia ( 'crypto' ) ;

var makeHash = sisältää. luodaHash ( 'md5' ) . päivittää ( merkkijono ) . sulattaa ( 'heksa' ) ;

konsoli. Hirsi ( 'MD5 Hash of a Password ->' + teeHash ) ;

Määritä tässä salasana ja toista käsitellyt vaiheet sisällyttääksesi ' krypto ' moduuli ja yhdistetyn ' päivittää() ' ja ' sulattaa() ' -menetelmiä salasanan md5-tiivisteen luomiseksi.

Lähtö

Seuraavan cmdletin suorittaminen luo salasanan md5-tiivisteen:

solmumalli. cjs

Johtopäätös

Tiedoston MD5-tiiviste voidaan luoda asentamalla ja tuomalla ' krypto '-moduuli ja sen menetelmien, kuten ' createHash() ' ja ' sulattaa() ” jne. Lisäksi voidaan luoda myös määritetyn merkkijonon tai salasanan md5-tiiviste. Tämä periaatteessa suojaa tiedot salaamalla ne hyväksytyn koodausmuodon perusteella.