数安商用密码
文档首页 / SDK 说明

SDK 说明

C / Java / Go / Python 四种语言 SDK 安装与配置,封装所有 REST API 调用。

版本:2.1.0 · 更新:2025-02-10

密码服务平台提供 C / Java / Go / Python 四种语言原生 SDK,封装了所有 REST API 调用,提供类型安全的接口和自动重试逻辑。

SDK 版本矩阵

语言最新版本最低运行时要求获取方式
Python2.1.0Python 3.8+pip install dscc-sdk
Java2.1.0JDK 8+Maven / Gradle(见下)
Go2.1.0Go 1.18+go get github.com/gzdscc/dscc-sdk-go
C2.0.3GCC 9+ / Clang 12+联系技术支持获取安装包

Python SDK

安装

Shell
pip install dscc-sdk==2.1.0

配置

Python
from dscc import CryptoClient

# 方式1:直接传参
client = CryptoClient(endpoint="https://...", api_key="dscc_ak_...")

# 方式2:环境变量(推荐生产环境)
# DSCC_ENDPOINT=https://...
# DSCC_API_KEY=dscc_ak_...
client = CryptoClient.from_env()

# 连接池配置(高并发场景)
client = CryptoClient(
    endpoint="https://...",
    api_key="dscc_ak_...",
    max_connections=20,   # 最大连接数,默认10
    timeout=5,            # 超时秒数
    retry_times=3         # 失败自动重试次数
)

Java SDK

Maven 依赖

pom.xml
<dependency>
  <groupId>com.gzdscc</groupId>
  <artifactId>dscc-sdk</artifactId>
  <version>2.1.0</version>
</dependency>

使用示例

Java
import com.gzdscc.dscc.CryptoClient;
import com.gzdscc.dscc.model.*;

CryptoClient client = CryptoClient.builder()
    .endpoint("https://crypto.your-domain.com")
    .apiKey("dscc_ak_...")
    .timeout(5000)
    .build();

// SM4 加密
Sm4EncryptResult result = client.sm4Encrypt(
    Sm4EncryptRequest.builder()
        .plaintext("Hello".getBytes())
        .keyId("key-sm4-001")
        .mode(Sm4Mode.CBC)
        .build()
);
System.out.println(result.getCiphertextHex());

Go SDK

Go
package main

import (
    "fmt"
    dscc "github.com/gzdscc/dscc-sdk-go"
)

func main() {
    client, _ := dscc.NewClient(dscc.Config{
        Endpoint: "https://crypto.your-domain.com",
        APIKey:   "dscc_ak_...",
    })

    result, err := client.SM4Encrypt(dscc.SM4EncryptReq{
        Plaintext: []byte("Hello, SM4!"),
        KeyID:     "key-sm4-001",
        Mode:      "CBC",
    })
    if err != nil {
        panic(err)
    }
    fmt.Printf("ciphertext: %s\n", result.CiphertextHex)
}

更新日志

版本日期变更
2.1.02025-02-10新增 Go / Python 原生 SDK;SM4 吞吐提升 40%
2.0.32024-11-15修复 Java SDK 连接池泄漏问题
2.0.02024-08-01API v2 发布,兼容 v1(v1 将于 2026-01 下线)
1.x2023–2024历史版本,不再维护