# 云函数AES解密

# 简要描述
  • 云函数使用 AES 对称解密,算法与请求/响应加解密中的 AES/ECB/PKCS5Padding(加密类型 2)完全一致,可解密客户端按同一规则加密的 value,或解密 potato.aesEncrypt 的结果。详见 接口规范 · 加解密规则。
# 算法说明(与接口加解密一致)
项 值
算法 / 模式 / 填充 AES/ECB/PKCS5Padding(AES 块长 16,PKCS5 与 PKCS7 等价)
IV 无(ECB 模式)
密文输入 Base64(无换行)
明文输出编码 UTF-8
密钥编码 UTF-8
密钥处理 长度不足 32 字节时,右侧用字符 0 补齐至 32 字节(AES-256);≥32 则按原字符串取用

对应控制台 / SDK 加密类型:2。不要用类型 4(AES/ECB/NoPadding)的密文直接解密。

# 方法名称
  • aesDecrypt
# 调用参数
参数名 必选 类型 说明
data 是 string Base64 编码的密文(接口加密后的 value,或 aesEncrypt 返回值)
secretKey 是 string 与加密时相同的密钥(通常即控制台加密密钥)
# 调用实例
var cipher = potato.aesEncrypt("hello world", "1234567890123456")
var res = potato.aesDecrypt(cipher, "1234567890123456")
res
1
2
3
# 调用方法返回示例
hello world
1
# 返回参数
参数名 必选 类型 说明
(返回值) 是 string 解密后的 UTF-8 明文
# API调用参数
参数名 必选 类型 说明
name 是 string 函数名称
params 否 json 调用参数
# API调用实例
{
	"name":"testFun"
}
1
2
3
# API调用请求头
参数名 必选 类型 说明
Content-Type 是 string 此参数必传,当请求数据非json时此参数传对应格式如(multipartform-data,application/x-www-form-urlencoded,等)是json请传application/json
askKey 是 string 此参数必传,验证app的令牌
sign 否 string 此参数如果在app设置开启了验签是必传
time 否 string 当开启验签时,此参数为必传
apiUserToken 否 string 用户令牌
nonce 否 string 随机字符串(当开启V3验签此参数必传,且6分钟内不允许重复)
# API调用返回参数说明
参数名 类型 说明
code string 状态码200成功,403权限异常或登录超时,500请求异常,203请求无数据
status int 状态0删除1使用
data object 返回内容,云函数如果没有返回结果则该值为空
res object 执行返回数据
param object 返回执行参数,可以忽略
nonce string 随机字符串(当开启V3验签必返回次参数,且6分钟内不会重复)
sign string 此参数如果在app设置开启了验签是必返
reqSign string 请求签名
time long 当开启验签时,此参数为必返回
# API调用返回示例
{
	"code": "200",
	"message": "",
	"status": true,
	"data": {
		"res": "hello world"
	},
	"pc": null,
	"time": null,
	"nonce": null,
	"sign": null,
	"reqSign": null
}
1
2
3
4
5
6
7
8
9
10
11
12
13
# 备注
  • 数据或密钥为空、密钥不匹配或密文格式错误时会抛出异常
  • 密钥补齐规则与接口一致:不足 32 字节用 0 补齐;必须与加密时使用同一密钥
  • 填充由 PKCS5Padding 在解密时自动去除,无需手动去填充
  • 与 potato.aesEncrypt 成对使用;可直接解密客户端按 AES/ECB/PKCS5Padding 加密的字段
  • 更多返回错误代码请查看 错误代码参考
lastUpdate: 9/3/2026, 5:11:12 PM