更新记录

1.0.3(2026-07-08) 下载此版本

1.0.3修改已知问题;

1.0.2(2026-07-08) 下载此版本

1.0.2修复解密失败问题;

1.0.1(2026-07-08) 下载此版本

1.0.1修复解密不成功和处理解密字符问题;

查看更多

平台兼容性

uni-app x(4.87)

Chrome Safari Android iOS 鸿蒙 微信小程序

wp-encrypt

加解密UTS插件,支持RSA/AES/Base64/MD5/SHA系列,适用于uni-app x项目。

引入

import { WpCrypto } from "@/uni_modules/wp-encrypt"

RSA 非对称加解密

// 设置公钥
WpCrypto.rsa.setPublicKey("-----BEGIN PUBLIC KEY-----...-----END PUBLIC KEY-----")

// 同步加密(返回Base64编码密文)
const encrypted = WpCrypto.rsa.encryptAsync("hello world")

// 设置私钥
WpCrypto.rsa.setPrivateKey("-----BEGIN PRIVATE KEY-----...-----END PRIVATE KEY-----")

// 同步解密
const decrypted = WpCrypto.rsa.decryptAsync(encrypted)

// 异步加密(返回Promise)
const encryptedAsync = await WpCrypto.rsa.encrypt("hello world")

// 异步解密
const decryptedAsync = await WpCrypto.rsa.decrypt(encryptedAsync)

RSA 配置项

参数 类型 默认值 说明
default_key_size number 1024 密钥长度
default_public_exponent string "010001" 公钥指数

AES 对称加解密

// 加密(默认CBC模式 + Pkcs7填充)
const encrypted = WpCrypto.aes.encrypt("hello world", "1234567890123456")

// 解密
const decrypted = WpCrypto.aes.decrypt(encrypted, "1234567890123456")

// 自定义配置
const cfg = {
  mode: "ECB",
  padding: "Pkcs7",
  iv: ""
}
const encryptedCustom = WpCrypto.aes.encrypt("hello world", "1234567890123456", cfg)

AES 配置项(_cfg)

参数 类型 默认值 说明
mode string "CBC" 加密模式,支持:CBC/ECB/CTR/OFB/CFB/CTRGladman
padding string "Pkcs7" 填充方式,支持:Pkcs7/AnsiX923/Iso10126/Iso97971/NoPadding/ZeroPadding
iv string "" 初始化向量

Base64 编解码

// 编码
const encoded = WpCrypto.base64.encrypt("hello world")

// 解码
const decoded = WpCrypto.base64.decrypt(encoded)

哈希摘要计算

MD5

const hash = WpCrypto.sha.md5("hello world")
const hmacHash = WpCrypto.sha.HmacMD5("hello world", "secret_key")

SHA1

const hash = WpCrypto.sha.sha1("hello world")
const hmacHash = WpCrypto.sha.HmacSHA1("hello world", "secret_key")

SHA256

const hash = WpCrypto.sha.sha256("hello world")
const hmacHash = WpCrypto.sha.HmacSHA256("hello world", "secret_key")

SHA512

const hash = WpCrypto.sha.sha512("hello world")
const hmacHash = WpCrypto.sha.HmacSHA512("hello world", "secret_key")

错误码

错误码 说明
9010001 RSA密钥未设置
9010002 RSA密钥格式错误
9010003 AES密钥为空
9010004 AES密文损坏
9010005 Base64解码输入非法

支持平台

  • Android
  • iOS
  • HarmonyOS

开发文档

UTS 语法

UTS API插件

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

许可协议

MIT协议

暂无用户评论。