Rate this post

Module Crypto Node.js hỗ trợ mật mã. Nó cung cấp chức năng mật mã bao gồm một tập hợp các trình bao bọc cho các hàm băm HMAC, mật mã, giải mã, ký và xác minh của SSL mở.

Các bài viết liên quan:

Hash là gì?

Hàm băm là một chuỗi bit có độ dài cố định, tức là được tạo ra theo thủ tục và xác định từ một số khối dữ liệu nguồn tùy ý.

HMAC là gì

HMAC là viết tắt của Mã xác thực tin nhắn dựa trên băm. Đây là một quá trình áp dụng thuật toán băm cho cả dữ liệu và khóa bí mật dẫn đến một hàm băm cuối cùng duy nhất.

Ví dụ về mã hóa sử dụng Hash và HMAC

File: crypto_example1.js

const crypto = require('crypto');  
  	const secret = 'key';  
 	const hash = crypto.createHmac('sha256', secret)  
 	                   .update('Welcome to nodejs')  
 	                   .digest('hex');  
 	console.log(hash);  

Mở dấu nhắc lệnh Node.js và chạy đoạn mã sau:

node crypto_example1.js  

Ví dụ về mã hóa bằng Cipher

File: crypto_example2.js

const crypto = require('crypto');  
  	const cipher = crypto.createCipher('aes192', 'passwordkey');  
 	var encrypted = cipher.update('Hello nodejs', 'utf8', 'hex');  
 	encrypted += cipher.final('hex');  
	console.log(encrypted);   

Mở dấu nhắc lệnh Node.js và chạy đoạn mã sau:

node crypto_example2.js  

Ví dụ giải mã bằng Decipher

File: crypto_example3.js

const crypto = require('crypto');  
  	const decipher = crypto.createDecipher('aes192', 'passwordkey');  
 	var encrypted = '4ce3b761d58398aed30d5af898a0656a3174d9c7d7502e781e83cf6b9fb836d5';  
 	var decrypted = decipher.update(encrypted, 'hex', 'utf8');  
 	decrypted += decipher.final('utf8');  
 	console.log(decrypted);  

Mở dấu nhắc lệnh Node.js và chạy đoạn mã sau:

node crypto_example3.js  

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Contact Me on Zalo
Call now