# 导出公钥

导出公钥

# 一、请求说明

  • 请求地址:https://IP:PORT/openapi/ces/v1/keypair/export/publickey
  • 服务接口名称(即公共参数method的值): keypair/export/publickey
  • 请求方式:POST

# 二、请求参数

名称 类型 是否必须 描述
virtualIndex Integer 虚拟索引

# 三、响应参数

data 结果信息 类型 描述
algorithm String 密钥算法
keySize Integer 密钥算法长度
signPublicKey String 签名公钥base64
encPublicKey String 加密公钥base64
cryptogramEngineType String 加密引擎类型
  • 字段解释

  • CryptogramEngineType 加密引擎类型

类型字段 介绍
FILE 文件引擎
FM_CARD 加密卡引擎
  • algorithm 密钥算法
类型字段 介绍
SM2 SM2算法
RSA RSA算法
AES AES算法
SM4 SM4算法

# 四、成功示例

JSON示例

{
    "code": 0,
    "message": "success",
    "requestId":"xxx",
    "data": {
        "cryptoMode": "ASYMMETRIC",
        "algorithm": "SM2",
        "keySize": 256,
        "signPublicKey": "BD/reRBbPiPc1S0laGsMZYjMfMHDSIh5q0Aq7ND04oeV70eIGRKO8fGFqC2qnFUXAdklm6pSVaq89Yx2okYsFo0=",
        "encPublicKey": "BD/reRBbPiPc1S0laGsMZYjMfMHDSIh5q0Aq7ND04oeV70eIGRKO8fGFqC2qnFUXAdklm6pSVaq89Yx2okYsFo0=",
        "cryptogramEngineType": "FILE"
    }
}

# 五、失败示例

JSON示例

{
  "code": 10010,
  "requestId":"xxx",
  "message": "参数错误"
}

# 六、SDK请求示例

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

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

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

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

        KeypairExportPublicKeyRequest request = new KeypairExportPublicKeyRequest();
		
		Integer virtualIndex = 20023;
		
		// 虚拟索引
		request.setVirtualIndex(virtualIndex);
		
        try {
            KeypairExportPublicKeyResponse response = client.execute(request);
            // 后续业务
            if (response.isSuccess()) {
                 KeypairExportPublicKeyResponse.Result result = response.getResult();
                System.out.println("成功:" + result);
                System.out.println("密钥算法: " + result.getAlgorithm());
                System.out.println("密钥算法长度: " + result.getKeySize());
                System.out.println("签名公钥base64: " + result.getSignPublicKey());
                System.out.println("加密公钥base64: " + result.getEncPublicKey());
                // 加密引擎类型: FILE--文件,FM_CARD--加密卡
                System.out.println("加密引擎类型: " + result.getCryptogramEngineType());
            } else {
                System.out.println("失败:" + response.getBody());
            }
        } catch (ApiException e) {
            e.printStackTrace();
        }
最后更新于: 10/13/2022, 11:28:25 AM