Hogyan lehet MD5 fájl hash-t generálni a Node.js-ben?

Hogyan Lehet Md5 Fajl Hash T Generalni A Node Js Ben



A ' MD5 hash ” létfontosságú szerepet játszik a fejlesztői adatok biztonságában az adatok integritásának megőrzésével. Ez olyan, hogy a Node.js ' kripto ' könyvtár a fájlok hash értékeinek kiszámítására szolgál, mint például ' MD5 ” az átvitel vagy a tárolás sértetlenségének ellenőrzésére. Ez a megközelítés segít megerősíteni a fejlesztőt a sérülékenységről vagy a fájlok manipulációjáról, ezáltal megőrzi az adatok biztonságát.

Tartalom áttekintése

Mi az MD5 fájlkivonatolás?

' MD5 ” egy egyirányú függvény, amely bármilyen típusú adatot bemenetként fogad, és egy fix méretű kimeneti karakterláncra képezi le, függetlenül az adott karakterlánc méretétől. A hash függvény ugyanazt/azonos kimeneti hash-t hoz létre a megadott karakterlánchoz.

Ez olyan, hogy ez a karakterlánc használható fájlok vagy szöveg ellenőrzésére a hálózaton való áthaladáskor, és az MD5 ellenőrzi, hogy az adatok érvényesek-e vagy sem. Alább a bemutató:







Bemeneti érték Visszaadott hash-érték
JavaScript 686155af75a60a0f6e9d80c1f7edd3e9
Liam*88 c9c77fd293a9bb6d172e36a4a04053ea

Előfeltételek MD5 fájl hash generálásához JavaScriptben

Az MD5 fájlkivonat létrehozása előtt figyelembe kell venni a következő előfeltételeket:



1. lépés: Állítsa be a projektet

Először is inicializálja a projektet az alapértelmezett értékekkel (a ' -és ” zászló) a következő parancsmag használatával:



npm init - és





Bónusz tipp: Hozzon létre egy ' sablon.cjs ' fájl helyett a ' template.js ' fájl elkerülése érdekében modult ” típusú hibákat.

2. lépés: Hozzon létre egy szöveges fájlt

Hozzon létre egy szöveges fájlt ' textfile.txt ” az MD5 hash érték létrehozásához a fájltartalomból. A kiértékelendő fájltartalom a következő:



Vegye figyelembe azt is, hogy a „ kripto ” modulra lesz szükség. Mivel ez a Node.js beépített modulja, ezért nem szükséges telepíteni vagy konfigurálni. Alább a bemutató:

npm crypto telepítése

Itt nyilvánvaló, hogy nincs szükség a modul külön telepítésére.

Hogyan lehet MD5 fájl hash-t generálni a Node.js-ben?

Egy fájl MD5 hash-je a „ kripto ' modul és módszerei, mint pl. CreateHash() ” és „ megemészteni() ”. Ez a modul biztosítja a titkosítási módszereket az adatok biztonságossá tételéhez a Node.js-ben.

A Node.js-ben használt MD5-fájl kivonat generálására szolgáló általános módszerek

A következő módszereket szokták használni a fájl md5 hashének generálására:

readFileSync(): Ez a módszer a fájlok szinkron olvasására szolgál.

Szintaxis

fs. readFileSync ( pt, opt )

Az adott szintaxisban:

  • ' pt ” a szövegfájl relatív elérési útjára utal.
  • ' dönt ” egy opcionális paraméter, amely tartalmazza a kódolást és a jelzőt.

Visszatérési érték

Lekéri a fájl tartalmát.

createHash(): Ez a módszer egy hash objektumot hoz létre a hash kivonatok létrehozásához.

Szintaxis

kripto. CreateHash ( alg, opt )

Ebben a szintaxisban:

  • ' alg ” az OpenSSL verzió által kedvelt elérhető algoritmusoktól való függőséget jelzi.
  • ' dönt ” egy opcionális paraméter, amely szabályozza az adatfolyam viselkedését.

Visszatérési érték

Lekéri a Hash objektumot.

hash.digest(): Ez a módszer létrehozza a hash létrehozásakor átadott kivonat adatait.

Szintaxis

hash. megemészteni ( [ enc ] )

Itt, ' enc ” jelzi a kódolás típusát, amely lehet „ hatszögletű ” vagy „ alap64 ”.

Visszatérési érték

Lekéri az átadott kódolás karakterláncát.

1. példa: MD5 fájl hash létrehozása a Node.js-ben

Ez a példa egy md5 hash-t állít elő a fájl tartalmából a ' kripto ” és „ fs ” modulok:

const kap1 = igényelnek ( 'kripto' ) ;

const get2 = igényelnek ( 'fs' ) ;

const readmd5 = get2. readFileSync ( 'szövegfájl.txt' ) ;

const ki = kap1. CreateHash ( 'md5' ) . frissítés ( readmd5 ) . megemészteni ( 'hex' ) ;

konzol. log ( 'MD5 hash egy fájl ->' + ki ) ;

A kód magyarázata a következő:

  • Először importálja a „ kripto ” és „ fs ” modulokat az md5 hash létrehozásához és a fájlokkal való munkavégzéshez.
  • Most alkalmazza a „ readFileSync() ” metódussal a megadott fájl szinkron olvasásához.
  • Ezt követően alkalmazza a „ CreateHash() ” metódussal hozzon létre egy md5 hash objektumot a fájlra hivatkozva.
  • A megadott ' hatszögletű ' érték, mint a ' megemészteni() ” metódus paramétere a kódolás típusára vonatkozik.
  • Végül kérje le a megfelelő fájl md5 hash-jét.

Kimenet

Az md5 fájl hash létrehozásához hajtsa végre a következő parancsmagot:

csomópont sablon. cjs

Ez az eredmény azt jelenti, hogy a célfájl md5 hash-je megfelelően kerül visszaadásra.

2. példa: MD5 fájl hash létrehozása és a fájl beolvasása a Node.js-ben

Ebben a bemutatóban egy fájl md5 hash-je lekérhető a fájl tartalmának elolvasásával együtt:

var include1 = igényelnek ( 'fs' ) ;

volt benne2 = igényelnek ( 'kripto' ) ;

var getHash = ( tartalom ) => {

var genHash = tartalmazza2. CreateHash ( 'md5' ) ;

adat = genHash. frissítés ( tartalom, 'utf-8' ) ;

ki = adat. megemészteni ( 'hex' ) ;

Visszatérés ki ;

}

var readFile = tartalmazza1. CreateReadStream ( 'textfile.txt' ) ;

mészszámla = ''

readFile. tovább ( 'adat' , funkció ( darab ) {

folyt += darab ;

} ) ;

readFile. tovább ( 'hiba' , funkció ( téved ) {

konzol. log ( téved ) ;

} ) ;

readFile. tovább ( 'vége' ,funkció ( ) {

var tartalom = getHash ( folyt ) ;

konzol. log ( 'Fájltartalom -> \n ' + folyt ) ;

konzol. log ( 'MD5 hash of a File ->' + tartalom ) ;

} ) ;

Ennek a kódblokknak megfelelően hajtsa végre az alábbi lépéseket:

  • Hasonlóképpen, tartalmazza a tárgyalt modulokat.
  • Most adja át a kivonatolni kívánt adatokat egy md5 hash objektum létrehozásával, és adja meg a „ hatszögletű ” formátumban.
  • Ezt követően hozzon létre egy olvasási adatfolyamot a megadott fájl tartalmának olvasásához.
  • Továbbhaladva olvassa el a fájl tartalmát, és kezelje a felmerült hibákat, ha vannak.
  • Végül hívja meg a „ getHash() ” módszerrel a fájltartalom md5 kivonatának kiszámításához.

Kimenet

Futtassa az alábbi kódot a fájl tartalmának md5 hashének lekéréséhez:

csomópont sablon. cjs

Ebből az eredményből arra lehet következtetni, hogy a fájl tartalma és a fájl md5 hash-je megfelelően jelenik meg.

1. alternatív megközelítés: Egy karakterlánc MD5-kivonatának generálása a Node.js-ben

A következő kódbemutató egy karakterlánc-érték md5 hash-jét állítja elő:

tanga volt = 'Linux' ;

mész tartalmazza = igényelnek ( 'kripto' ) ;

var makeHash = tartalmazza. CreateHash ( 'md5' ) . frissítés ( húr ) . megemészteni ( 'hex' ) ;

konzol. log ( 'MD5 Hash of a String ->' + makeHash ) ;

Ebben a kódban:

  • Inicializálja azt a karakterláncot, amelyhez képest az md5 hash értéket lekéri, és tartalmazza a ' kripto ” modult.
  • Ezt követően szintén alkalmazza a „ CreateHash() ” és „ megemészteni() ” metódusok egy hash objektum létrehozására és a karakterlánc lekérésére az átadott kódolási típus, azaz a „hex” alapján.
  • Végül adja vissza a meghatározott karakterlánc md5 hash-jét.

Kimenet

csomópont sablon. cjs

2. alternatív megközelítés: Jelszó MD5-kivonatának generálása a Node.js-ben

Ebben a példában a jelszó MD5 hash-je lekérhető helyette:

tanga volt = '123*adQe&' ;

mész tartalmazza = igényelnek ( 'kripto' ) ;

var makeHash = tartalmazza. CreateHash ( 'md5' ) . frissítés ( húr ) . megemészteni ( 'hex' ) ;

konzol. log ( 'MD5 Hash of a Password ->' + makeHash ) ;

Itt adja meg a jelszót, és ismételje meg a tárgyalt lépéseket a „ kripto ' modult és a kombinált ' frissítés() ” és „ megemészteni() ” módszereket a jelszó md5 hash létrehozásához.

Kimenet

A következő parancsmag futtatása létrehozza a jelszó md5 hash-jét:

csomópont sablon. cjs

Következtetés

A fájl MD5-kivonatát a „ kripto ' modult, és olyan metódusait használja, mint a ' CreateHash() ” és „ megemészteni() ” stb. Ezenkívül egy meghatározott karakterlánc vagy jelszó md5 hash-je is előállítható. Ez alapvetően az átadott kódolási formátum alapján titkosítja az adatokat.