vue和.net後臺接口通訊des加密解密方法

1、npm下載

npm install crypto-js

2、創建一個des.js文件,內容如下:

import CryptoJS from 'crypto-js'

export const encryptCBC = (text, textKey) => {
  // 密鑰轉成16進制的字符串
  var key = CryptoJS.enc.Utf8.parse(textKey);
  // 加密過程
  var encrypted = CryptoJS.DES.encrypt(text, key, {
    // iv偏移量爲key值
    iv: key,
    // 模式爲CBC
    mode: CryptoJS.mode.CBC,
    // DES加密padding爲Pkcs7
    padding: CryptoJS.pad.Pkcs7
  });
  // 加密返回爲字符串密文(加密經過一次base64加密,結果可看結果)
  return encrypted.toString();
}

// 解密
export const decryptCBC = (cipherText, textKey) => {
  var key = CryptoJS.enc.Utf8.parse(textKey);
  var decrypt = CryptoJS.DES.decrypt(cipherText, key, {
    iv: key,
    mode: CryptoJS.mode.CBC,
    padding: CryptoJS.pad.Pkcs7
  });
  // 解密返回轉爲UTF-8明文(解密也經過一次base64解密)
  return decrypt.toString(CryptoJS.enc.Utf8);
}

3、具體使用

<script>
//引入封裝好的des加密解密js文件
import { encryptCBC, decryptCBC } from '../../des.js'
export default {
  name: 'MapTree',
    buildInterface() {
      const sintxt = "A0042222222222222";
      this.signInVal = encryptCBC(sintxt,12345678); //第一個爲要加密的值,第二個爲雙方約定的加密密碼
    }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章