@xnsk/crypto
v1.2.0
Published
加解密使用前后端交互的方式,具体请详见加密设计文档。
Downloads
2
Keywords
Readme
web加解密通用组件
加解密使用前后端交互的方式,具体请详见加密设计文档。
安装
npm i @xnsk/crypto
yarn add @xnsk/crypto
pnpm add @xnsk/crypto
cnpm i @xnsk/crypto
使用
下面代码为示例代码,其中密钥片断、请求接口和参数为测试数据
import { Crypto } from '@xnsk/crypto'
const crypto = new Crypto({
// 密钥
rsaKey: 'MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCHEJojo33lFegWSRKwcibZgBoKO7oGfMTPGcUzPifl3QLT4Xo9czolYZ1hgaQh+birl9EP0LrRxosA9/QyiEBwHC0kut5GpbBNaJJSHwvYrd/IB12o96ZUoLYhg+Qf+4ejN45fylmAA6fJW2S6YMc8xi8kIc0X5oQIDAQAB',
axios,
onlyData: false // 是否只返回data。false则将接口返回值全部返给前端
})
// 使用加密方式发起请求
const res = await crypto.post('/api/login/xxx', {
username: 'username',
password: 'password',
})
更多示例
const crypto = new Crypto({
rsaKeyFragment: 'aJJSHwvYrd/IB12o96',
axios,
})
// 生成aes key,默认32位
const key = crypto.generateAESKey()
// 使用密钥加密
const cipher = crypto.encrypt('Data String', key);
// 使用密钥解密
const data = crypto.decrypt(cipher, key);