目录
1.安装js-base64库
2. 在Vue组件中引入js-base64库
3.使用js-base64库进行加密
4.Vue中其他加密方式
1.crypto-js
2.jsencrypt
3.bcryptjs
1.安装js-base64
库
npm install js-base64 --save-dev
复制
2. 在Vue组件中引入js-base64
库
import { Base64 } from 'js-base64';
复制
3.使用js-base64
库进行加密
// 加密字符串 const str = 'hello world'; const encodedStr = Base64.encode(str); console.log(encodedStr); // 输出:aGVsbG8gd29ybGQ= // 解密字符串 const decodedStr = Base64.decode(encodedStr); console.log(decodedStr); // 输出:hello world
复制
使用
Base64.encode()
方法对字符串进行加密,并使用Base64.decode()
方法对加密后的字符串进行解密。您可以根据需要使用这些方法来加密和解密字符串。请注意,加密后的字符串可能包含特殊字符,需要进行URL编码或Base64编码后才能在URL中传递。
4.Vue中其他加密方式
crypto-js
crypto-js
是一个JavaScript加密库,支持多种加密算法,包括AES、DES、Triple DES、RC4、SHA-1、SHA-256、MD5等。您可以在Vue项目中使用crypto-js
来实现加密和解密。
jsencrypt
jsencrypt
是一个JavaScript RSA加密库,支持RSA加密和解密操作。您可以在Vue项目中使用jsencrypt
来实现RSA加密和解密。
bcryptjs
bcryptjs
是一个JavaScript加密库,支持bcrypt算法。您可以在Vue项目中使用bcryptjs
来实现密码加密和验证。
1.crypto-js
// 导入crypto-js库 const CryptoJS = require('crypto-js'); // 待加密的数据 const data = 'Hello, world!'; // 加密 const encryptedData = CryptoJS.AES.encrypt(data, 'secret key 123').toString(); console.log('加密后的数据:', encryptedData); // 解密 const decryptedData = CryptoJS.AES.decrypt(encryptedData, 'secret key 123').toString(CryptoJS.enc.Utf8); console.log('解密后的数据:', decryptedData);
复制
2.jsencrypt
// 导入jsencrypt库 const JSEncrypt = require('jsencrypt').default; // 待加密的数据 const data = 'Hello, world!'; // 创建公钥和私钥实例 const encryptKey = new JSEncrypt(); const decryptKey = encryptKey.createDecryptionKey(); // 设置公钥和私钥(在实际使用中需要使用真实密钥) encryptKey.setPublicKey('-----BEGIN PUBLIC KEY-----\n' + PUBLIC_KEY + '\n-----END PUBLIC KEY-----'); decryptKey.setPrivateKey('-----BEGIN RSA PRIVATE KEY-----\n' + PRIVATE_KEY + '\n-----END RSA PRIVATE KEY-----'); // 加密数据 const encryptedData = encryptKey.encrypt(data); console.log('加密后的数据:', encryptedData); // 解密数据 const decryptedData = decryptKey.decrypt(encryptedData); console.log('解密后的数据:', decryptedData);
复制
3.bcryptjs
// 导入bcryptjs库 const bcrypt = require('bcryptjs'); const saltRounds = 10; // 设置盐的迭代次数(建议至少为10) const password = 'password'; // 待加密的密码 const hashedPassword = bcrypt.hashSync(password, saltRounds); // 加密密码(得到散列密码) console.log('散列密码:', hashedPassword); // 输出散列密码的哈希值
复制