Node.js இல் MD5 கோப்பு ஹாஷை எவ்வாறு உருவாக்குவது?

Node Js Il Md5 Koppu Hasai Evvaru Uruvakkuvatu



' MD5 ஹாஷிங் ” தரவு ஒருமைப்பாட்டைப் பேணுவதன் மூலம் டெவலப்பரின் தரவைப் பாதுகாப்பதில் முக்கியப் பங்கு வகிக்கிறது. Node.js ' கிரிப்டோ ” போன்ற கோப்புகளுக்கான ஹாஷ் மதிப்புகளைக் கணக்கிட நூலகம் பயன்படுத்தப்படுகிறது. MD5 ” பரிமாற்றம் அல்லது சேமிப்பகத்தின் ஒருமைப்பாட்டை சரிபார்க்க. இந்த அணுகுமுறை டெவலப்பரின் பாதிப்புகள் அல்லது கோப்புகளை சேதப்படுத்துவதை உறுதிப்படுத்த உதவுகிறது, இதன் மூலம் தரவைப் பாதுகாப்பாக வைத்திருக்கும்.

உள்ளடக்க கண்ணோட்டம்

MD5 File Hashing என்றால் என்ன?

' MD5 ” என்பது ஒரு வழிச் செயல்பாடாகும், இது எந்த வகையின் தரவையும் அதன் உள்ளீடாக எடுத்துக்கொள்கிறது மற்றும் கொடுக்கப்பட்ட சரத்தின் அளவைப் பொருட்படுத்தாமல் நிலையான அளவு வெளியீட்டு சரத்திற்கு வரைபடமாக்குகிறது. வழங்கப்பட்ட சரத்திற்கு ஹாஷ் செயல்பாடு அதே/ஒத்த வெளியீட்டு ஹாஷை உருவாக்குகிறது.

நெட்வொர்க் முழுவதும் கடந்து செல்லும் போது கோப்புகள் அல்லது உரையை சரிபார்க்க இந்த சரம் பயன்படுத்தப்படலாம் மற்றும் தரவு சரியானதா இல்லையா என்பதை MD5 சரிபார்க்கிறது. கீழே உள்ள ஆர்ப்பாட்டம்:







உள்ளீட்டு மதிப்பு ஹாஷ் மதிப்பு திரும்பியது
ஜாவாஸ்கிரிப்ட் 686155af75a60a0f6e9d80c1f7edd3e9
லியாம்*88 c9c77fd293a9bb6d172e36a4a04053ea

ஜாவாஸ்கிரிப்டில் MD5 கோப்பு ஹாஷை உருவாக்குவதற்கான முன்நிபந்தனைகள்

MD5 கோப்பு ஹாஷை உருவாக்கும் முன் கருத்தில் கொள்ள வேண்டிய முன்நிபந்தனைகள் பின்வருமாறு:



படி 1: திட்டத்தை அமைக்கவும்

முதலில், முன்னிருப்பு மதிப்புகளுடன் திட்டத்தை துவக்கவும் (' வழியாக -மற்றும் 'கொடி) பின்வரும் cmdlet ஐப் பயன்படுத்தி:



npm init - மற்றும்





போனஸ் உதவிக்குறிப்பு: உருவாக்கவும் ' template.cjs 'கோப்புக்கு பதிலாக' template.js 'கோப்பைத் தவிர்க்க ' தொகுதி 'வகை பிழைகள்.

படி 2: உரை கோப்பை உருவாக்கவும்

உரை கோப்பை உருவாக்கவும் ' textfile.txt ” கோப்பு உள்ளடக்கத்திலிருந்து MD5 ஹாஷ் மதிப்பை உருவாக்க. மதிப்பீடு செய்யப்பட வேண்டிய கோப்பு உள்ளடக்கம் பின்வருமாறு:



மேலும், ' கிரிப்டோ ” தொகுதி தேவைப்படும். இது Node.js இன் உள்ளமைக்கப்பட்ட தொகுதி என்பதால், அதை நிறுவவோ கட்டமைக்கவோ தேவையில்லை. கீழே உள்ள ஆர்ப்பாட்டம்:

npm கிரிப்டோவை நிறுவவும்

இங்கே, இந்த தொகுதியை தனித்தனியாக நிறுவ வேண்டிய அவசியமில்லை என்பது தெளிவாகிறது.

Node.js இல் MD5 கோப்பு ஹாஷை எவ்வாறு உருவாக்குவது?

ஒரு கோப்பின் MD5 ஹாஷை '' உதவியுடன் உருவாக்க முடியும். கிரிப்டோ 'தொகுதி மற்றும் அதன் முறைகள் போன்ற' createHash() 'மற்றும்' டைஜஸ்ட்() ”. இந்த தொகுதியானது Node.js இல் தரவைப் பாதுகாப்பானதாக்க கிரிப்டோகிராஃபிக் முறைகளை வழங்குகிறது.

Node.js இல் MD5 கோப்பு ஹாஷை உருவாக்குவதற்கான பொதுவான முறைகளைப் பயன்படுத்தியது

கோப்பின் md5 ஹாஷை உருவாக்க பொதுவாகப் பயன்படுத்தப்படும் முறைகள் பின்வருமாறு:

readFileSync(): இந்த முறை கோப்புகளை ஒத்திசைவான முறையில் படிக்க பயன்படுகிறது.

தொடரியல்

fs. readFileSync ( pt, opt )

கொடுக்கப்பட்ட தொடரியல்:

  • ' pt ” என்பது உரை கோப்பின் தொடர்புடைய பாதையைக் குறிக்கிறது.
  • ' தேர்வு ” என்பது குறியாக்கம் மற்றும் கொடியை உள்ளடக்கிய ஒரு விருப்ப அளவுருவாகும்.

வருவாய் மதிப்பு

இது கோப்பின் உள்ளடக்கத்தைப் பெறுகிறது.

createHash(): இந்த முறை ஹாஷ் டைஜஸ்ட்களை உருவாக்க ஹாஷ் பொருளை உருவாக்குகிறது.

தொடரியல்

கிரிப்டோ. ஹாஷ் உருவாக்கவும் ( alg, தேர்வு )

இந்த தொடரியல்:

  • ' alg ” என்பது OpenSSL பதிப்பால் விரும்பப்படும் அணுகக்கூடிய அல்காரிதம்களின் சார்பைக் குறிக்கிறது.
  • ' தேர்வு ” என்பது ஸ்ட்ரீம் நடத்தையை கட்டுப்படுத்தும் விருப்ப அளவுருவாகும்.

வருவாய் மதிப்பு

இது ஹாஷ் பொருளை மீட்டெடுக்கிறது.

hash.digest(): ஹாஷை உருவாக்கும் போது அனுப்பப்பட்ட டைஜஸ்டின் தரவை இந்த முறை உருவாக்குகிறது.

தொடரியல்

ஹாஷ். ஜீரணிக்க ( [ enc ] )

இங்கே,' enc 'என்கோடிங் வகையைக் குறிக்கிறது' ஹெக்ஸ் ' அல்லது ' அடிப்படை64 ”.

வருவாய் மதிப்பு

இது அனுப்பப்பட்ட குறியாக்கத்தின் சரத்தை மீட்டெடுக்கிறது.

எடுத்துக்காட்டு 1: Node.js இல் MD5 கோப்பு ஹாஷை உருவாக்குதல்

இந்த எடுத்துக்காட்டு கோப்பு உள்ளடக்கத்தின் md5 ஹாஷை உருவாக்குகிறது ' கிரிப்டோ 'மற்றும்' fs ”தொகுதிகள்:

நிலையான பெறு1 = தேவை ( 'கிரிப்டோ' ) ;

நிலையான கிடைக்கும்2 = தேவை ( 'fs' ) ;

நிலையான readmd5 = கிடைக்கும்2. readFileSync ( 'textfile.txt' ) ;

நிலையான வெளியே = கிடைக்கும்1. ஹாஷ் உருவாக்கவும் ( 'md5' ) . மேம்படுத்தல் ( readmd5 ) . ஜீரணிக்க ( 'ஹெக்ஸ்' ) ;

பணியகம். பதிவு ( 'MD5 ஹாஷ் ஆஃப் எ கோப்பின் ->' + வெளியே ) ;

குறியீடு விளக்கம் பின்வருமாறு:

  • முதலில், 'இறக்குமதி' கிரிப்டோ 'மற்றும்' fs ” தொகுதிகள் md5 ஹாஷை உருவாக்கி முறையே கோப்புகளுடன் வேலை செய்கின்றன.
  • இப்போது, ​​விண்ணப்பிக்கவும் ' readFileSync() ” குறிப்பிடப்பட்ட கோப்பை ஒத்திசைவாக படிக்கும் முறை.
  • அதன் பிறகு, விண்ணப்பிக்கவும் ' createHash() ”கோப்பைக் குறிக்கும் ஒரு md5 ஹாஷ் பொருளை உருவாக்கும் முறை.
  • குறிப்பிடப்பட்ட ' ஹெக்ஸ் 'மதிப்பு' டைஜஸ்ட்() ” முறையின் அளவுரு குறியாக்க வகையைக் குறிக்கிறது.
  • கடைசியாக, தொடர்புடைய கோப்பின் md5 ஹாஷை மீட்டெடுக்கவும்.

வெளியீடு

md5 கோப்பு ஹாஷை உருவாக்க பின்வரும் cmdlet ஐ இயக்கவும்:

முனை வார்ப்புரு. cjs

இலக்கு கோப்பின் md5 ஹாஷ் சரியான முறையில் திரும்பியதை இந்த முடிவு குறிக்கிறது.

எடுத்துக்காட்டு 2: MD5 கோப்பு ஹாஷை உருவாக்குதல் மற்றும் Node.js இல் கோப்பைப் படித்தல்

இந்த ஆர்ப்பாட்டத்தில், ஒரு கோப்பின் md5 ஹாஷையும் கோப்பு உள்ளடக்கத்தைப் படிப்பதன் மூலம் பெறலாம்:

var அடங்கும்1 = தேவை ( 'fs' ) ;

2 அடங்கும் = தேவை ( 'கிரிப்டோ' ) ;

var getHash = ( உள்ளடக்கம் ) => {

var genHash = அடங்கும் 2. ஹாஷ் உருவாக்கவும் ( 'md5' ) ;

தகவல்கள் = ஜென்ஹாஷ். மேம்படுத்தல் ( உள்ளடக்கம், 'utf-8' ) ;

வெளியே = தகவல்கள். ஜீரணிக்க ( 'ஹெக்ஸ்' ) ;

திரும்ப வெளியே ;

}

var readFile = அடங்கும் 1. ரீட்ஸ்ட்ரீமை உருவாக்கவும் ( 'textfile.txt' ) ;

சுண்ணாம்பு கணக்கு = ''

படிக்க கோப்பு. அன்று ( 'தகவல்கள்' , செயல்பாடு ( துண்டு ) {

தொடர்ந்து += துண்டு ;

} ) ;

படிக்க கோப்பு. அன்று ( 'பிழை' , செயல்பாடு ( தவறு ) {

பணியகம். பதிவு ( தவறு ) ;

} ) ;

படிக்க கோப்பு. அன்று ( 'முடிவு' , செயல்பாடு ( ) {

var உள்ளடக்கம் = getHash ( தொடர்ந்து ) ;

பணியகம். பதிவு ( 'கோப்பு உள்ளடக்கம் -> \n ' + தொடர்ந்து ) ;

பணியகம். பதிவு ( ஒரு கோப்பின் MD5 ஹாஷ் -> ' + உள்ளடக்கம் ) ;

} ) ;

இந்தக் குறியீட்டுத் தொகுதியின்படி, கீழே கொடுக்கப்பட்டுள்ள படிகளைச் செய்யவும்:

  • அதேபோல், விவாதிக்கப்பட்ட தொகுதிகளையும் சேர்க்கவும்.
  • இப்போது, ​​ஹாஷ் செய்யப்பட வேண்டிய தரவை md5 ஹாஷ் பொருளை உருவாக்கி, '' என்று குறிப்பிடுவதன் மூலம் அனுப்பவும். ஹெக்ஸ் ” வடிவம்.
  • அதன் பிறகு, குறிப்பிட்ட கோப்பின் உள்ளடக்கத்தைப் படிக்க வாசிப்பு ஸ்ட்ரீமை உருவாக்கவும்.
  • மேலே சென்று, கோப்பின் உள்ளடக்கத்தைப் படித்து, ஏதேனும் பிழைகள் இருந்தால் அவற்றைச் சமாளிக்கவும்.
  • இறுதியாக, '' getHash() ”கோப்பின் உள்ளடக்கத்தின் md5 ஹாஷைக் கணக்கிடுவதற்கான முறை.

வெளியீடு

கோப்பின் உள்ளடக்கத்தின் md5 ஹாஷை மீட்டெடுக்க கீழே உள்ள குறியீட்டை இயக்கவும்:

முனை வார்ப்புரு. cjs

இந்த விளைவிலிருந்து, கோப்பின் உள்ளடக்கம், கோப்பின் md5 ஹாஷுடன் சரியான முறையில் காட்டப்படும் என்பதைக் குறிக்கலாம்.

மாற்று அணுகுமுறை 1: Node.js இல் ஒரு சரத்தின் MD5 ஹாஷை உருவாக்குதல்

பின்வரும் குறியீடு விளக்கக்காட்சி ஒரு சரம் மதிப்பின் md5 ஹாஷை உருவாக்குகிறது:

தாங் இருந்தது = 'லினக்ஸ்' ;

சுண்ணாம்பு அடங்கும் = தேவை ( 'கிரிப்டோ' ) ;

var makeHash = சேர்க்கிறது. ஹாஷ் உருவாக்கவும் ( 'md5' ) . மேம்படுத்தல் ( லேசான கயிறு ) . ஜீரணிக்க ( 'ஹெக்ஸ்' ) ;

பணியகம். பதிவு ( 'MD5 ஹாஷ் ஆஃப் எ சரம் ->' + ஹாஷ் ) ;

இந்த குறியீட்டில்:

  • md5 ஹாஷ் மதிப்பை மீட்டெடுக்க வேண்டிய சரத்தைத் துவக்கி, ' கிரிப்டோ ” தொகுதி.
  • அதன் பிறகு, அதே போல், '' createHash() 'மற்றும்' டைஜஸ்ட்() 'ஹேஷ் பொருளை உருவாக்குவதற்கான முறைகள் மற்றும் அனுப்பப்பட்ட குறியாக்க வகையைப் பொறுத்து சரத்தை மீட்டெடுக்கவும், அதாவது 'ஹெக்ஸ்'.
  • கடைசியாக, வரையறுக்கப்பட்ட சரத்தின் md5 ஹாஷை திருப்பி அனுப்பவும்.

வெளியீடு

முனை வார்ப்புரு. cjs

மாற்று அணுகுமுறை 2: Node.js இல் கடவுச்சொல்லின் MD5 ஹாஷை உருவாக்குதல்

இந்த எடுத்துக்காட்டில், கடவுச்சொல்லின் MD5 ஹாஷைப் பெறலாம்:

தாங் இருந்தது = '123*adQe&' ;

சுண்ணாம்பு அடங்கும் = தேவை ( 'கிரிப்டோ' ) ;

var makeHash = சேர்க்கிறது. ஹாஷ் உருவாக்கவும் ( 'md5' ) . மேம்படுத்தல் ( லேசான கயிறு ) . ஜீரணிக்க ( 'ஹெக்ஸ்' ) ;

பணியகம். பதிவு ( 'எம்டி 5 கடவுச்சொல்லின் ஹாஷ் -> ' + ஹாஷ் ) ;

இங்கே, கடவுச்சொல்லைக் குறிப்பிட்டு, ''ஐச் சேர்ப்பதற்கான விவாதிக்கப்பட்ட படிகளை மீண்டும் செய்யவும் கிரிப்டோ 'தொகுதி மற்றும் ஒருங்கிணைந்த பயன்படுத்துதல்' புதுப்பி () 'மற்றும்' டைஜஸ்ட்() கடவுச்சொல்லின் md5 ஹாஷை உருவாக்குவதற்கான முறைகள்.

வெளியீடு

பின்வரும் cmdlet ஐ இயக்குவது கடவுச்சொல்லின் md5 ஹாஷை உருவாக்குகிறது:

முனை வார்ப்புரு. cjs

முடிவுரை

ஒரு கோப்பின் MD5 ஹாஷை நிறுவி இறக்குமதி செய்வதன் மூலம் உருவாக்க முடியும். கிரிப்டோ 'தொகுதி மற்றும் அதன் முறைகளைப் பயன்படுத்துதல்' createHash() 'மற்றும்' டைஜஸ்ட்() ” போன்றவை. மேலும், வரையறுக்கப்பட்ட சரத்தின் md5 ஹாஷ் அல்லது கடவுச்சொல்லையும் உருவாக்க முடியும். இது, அனுப்பப்பட்ட குறியாக்க வடிவமைப்பின் அடிப்படையில் குறியாக்கம் செய்வதன் மூலம் தரவைப் பாதுகாக்கிறது.