在業務系統中,通常需要對用戶的密碼進行加密,再時行http的請求。加強系統登錄的安全驗證。
常用的加密方式有MD5, Base64, CryptoJS的 AES DES等。下面介紹我常用的幾種加密方法的使用:
MD5加密
1. 安裝模塊 ts-md5
$ npm install ts-md5 --save
2. 使用md5進行加密
import { Md5 } from 'ts-md5';// ...// 密碼password: string = "12345";// 加密方法 - md5加密decode() { const passwordMd5 = Md5.hashStr(this.password).toString(); // 結果:827ccb0eea8a706c4c34a16891f84e7b}Base64加密
1.安裝模塊 js-base64
$ npm install js-base64 --save
2.使用md5進行加密
import { Base64 } from 'js-base64';// ...// 密碼password: string = "12345";// 加密方法 - Base64加密decode() { const passwordBase64 = Base64.encode(password); // 結果:MTIzNDU=}DES加密
DES對稱加密,是一種比較傳統的加密方式,其加密運算、解密運算使用的是同樣的密鑰key,信息的發送者和信息的接收者在進行信息的傳輸與處理時,必須共同持有該密碼(稱為對稱密碼),是一種對稱加密算法。
crypto-js Github: https://github.com/brix/crypto-js
1.安裝模塊 crypto-js
$ npm install crypto-js --save
2.使用DES進行加密
import CryptoJS from 'crypto-js';// ...// 密鑰key: string = "abcdefg";// 密碼password: string = "12345";// 加密方法 - des加密decode() { // key編碼 const keyHex = CryptoJS.enc.Utf8.parse(this.key); console.log(keyHex.toString()); // 結果:61626364656667 // 加密 const passwordDES = CryptoJS.DES.encrypt(this.password, keyHex, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 }).toString(); console.log(passwordDES); // 結果:zYGeIdaZpEM=}3. 使用AES進行加密
加密用法基本與des一致。
import CryptoJS from 'crypto-js';// ...// 密鑰key: string = "abcdefg";// 密碼password: string = "12345";// 加密方法 - des加密decode() { // 加密 const passwordDES = CryptoJS.AES.encrypt(this.password, this.key).toString(); console.log(passwordDES); }以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持錯新站長站。
新聞熱點
疑難解答
圖片精選