# 数字信封拆包

数字信封拆解是使用私钥将加密过的数据解密的过程。

# 一、请求说明

  • 请求地址:http://IP:PORT/openapi/ces/v1/digital-envelope/unpacking
  • 服务接口名称(即公共参数method的值): digital-envelope/unpacking
  • 请求方式:POST

# 二、请求参数

名称 类型 是否必须 描述
encryptType CertSearchEnum 拆包方式
encryptItemValue String 拆包方式的值
data String 待拆包数据
dataType DataType 待拆包数据格式 (base64 、hex)
unpackingDataType DataType 拆包后数据格式(原文、原文base64、原文hex)
  • 字段解释

  • CertSearchEnum 拆包方式

类型字段 介绍
CERT 证书
CERT_ID 证书ID
SN_HEX 证书序列号(十六进制格式)
SN_DEC 证书序列号(十进制格式)
TN_HASH 证书指纹
CERT_CN 证书持有者
CERT_DN 证书主题项
  • DataType 数据类型介绍
字段 类型介绍
BASE64 原文BASE64
HEX 原文Hex
ORIGINAL 原文

# 三、响应参数

data 结果信息 类型 描述
recipient String 收信人
data String 拆包数据

# 四、成功示例

JSON示例

{
  "code": 0,
  "message": "success",
  "requestId":"xxx",
  "data": {
    "recipient": "xxx",
    "data": "123"
  }
}

# 五、失败示例

JSON示例

{
    "code": 10100,
    "requestId":"xxx",
    "message": "未找到证书",
}

# 六、SDK请求示例

        // 提供的URL
        String url = "http://172.16.6.76:20501";

        // 您的appKey
        String appKey = "XXX";

        // 您的appSecret
        String appSecret = "XXX";

        // 1.原客户端
        PkiClient client = new PkiOkhttpClient(url, appKey, appSecret);

        DigitalEnvelopeUnpackingRequest request = new DigitalEnvelopeUnpackingRequest();


        // 通过何种方式进行拆包
        request.setEncryptType(CertSearchEnum.CERT);

        // 拆包项目的值
        request.setEncryptItemValue("");

        // 数据格式
        request.setDataType(DataType.BASE64);

        // 待拆包数据
        request.setData("MIAGCiqBHM9VBgEEQ04xEj......");

        // 拆包后数据格式
        request.setUnpackingDataType(DataType.ORIGINAL);

        try {
            DigitalEnvelopeUnpackingResponse response = client.execute(request);
            // 后续业务
            if (response.isSuccess()) {
                System.out.println("成功:" + response.getBody());
            } else {
                System.out.println("失败:" + response.getBody());
            }
        } catch (ApiException e) {
            e.printStackTrace();
        }
最后更新于: 12/30/2022, 3:33:19 PM