jiami.js 969 Bytes
// 文本加密
import { sm4 } from 'sm-crypto';
const DEFAULT_KEY ="cda4442f102f6396cca76902e37ad7cb";
const DEFAULT_IV = "8bd8a83221742166c7532b7275a7fe9c";
export const encrypt = (str) => {
    if(!str) {
        return ''
    }
    const encryptStr = sm4.encrypt(str, DEFAULT_KEY, {
        iv: DEFAULT_IV,
        mode: 'cbc',
        padding: 'pkcs#7'
        })
    return 'ENC(' + encryptStr + ')'
}

// 文本解密
export const decrypt = (str) => {
    if(!str) {
        return ''
    }
    if(str.indexOf('ENC(') === -1) {
        return str
    }
    const str_ = str.replace('ENC(', '').replace(')', '')
    try {        
        const decryptStr = sm4.decrypt(str_, DEFAULT_KEY, {
            iv: DEFAULT_IV,
            mode: 'cbc',
            padding: 'pkcs#7'
        })
        return decryptStr
    } catch (error) {
        return '解密失败!'
    }
}