crypto-js: JavaScript 加密库的使用详解

16 min read

crypto-js 是一个 JavaScript 加密库,用于进行各种加密和解密操作。它支持多种加密算法,包括AES、DES、3DES、Rabbit等。

使用 crypto-js 进行加密和解密的步骤如下:

  1. 下载和引入 crypto-js 库:

    可以通过 npm 安装 crypto-js,命令如下:

    npm install crypto-js
    

    在项目中引入 crypto-js 的代码如下:

    var CryptoJS = require("crypto-js");
    

    或者可以直接下载 crypto-js.js 文件,并在 HTML 文件中引入:

    <script src="/path/to/crypto-js.js"></script>
    
  2. 进行加密操作:

    var encryptedMessage = CryptoJS.AES.encrypt("Hello, World!", "Secret Passphrase").toString();
    

    在上面的代码中,使用 AES 加密算法对字符串 "Hello, World!" 进行了加密,使用 "Secret Passphrase" 作为密钥。加密的结果通过 toString() 方法将其转换为字符串,并赋值给 encryptedMessage 变量。

  3. 进行解密操作:

    var decryptedBytes = CryptoJS.AES.decrypt(encryptedMessage, "Secret Passphrase");
    var decryptedMessage = decryptedBytes.toString(CryptoJS.enc.Utf8);
    

    在上面的代码中,使用 AES 解密算法对加密后的消息进行了解密,使用相同的密钥 "Secret Passphrase"。解密操作的结果通过 toString() 方法将其转换为字符串,并赋值给 decryptedMessage 变量。

    注意:解密结果是一个字节数组,因此还需要使用 toString() 方法将其转换为字符串,并指定编码格式为 UTF-8。

以上就是使用 crypto-js 进行加密和解密的基本步骤和代码示例。根据不同的加密算法和需求,可以使用 crypto-js 提供的其他加密方法和选项进行相应的加密和解密操作。