bowenerchen avatar

CipherHUB Cryptography Toolkit

bowenerchen/cipherhub-mcp-server

This is a production cryptography toolkit that exposes 31 operations over streamable HTTP, from classical algorithms like AES and RSA to post-quantum schemes including ML-KEM and ML-DSA. It covers Chinese national standards (SM2, SM3, SM4, ZUC) and has certified interoperability with AWS KMS and Tencent Cloud KMS. You get hash functions, symmetric and asymmetric encryption, digital signatures, ECDH key exchange, and hybrid X25519+ML-KEM-768 key encapsulation. Reach for this when you need Claude to perform cryptographic operations without rolling your own implementations, or when working across classical and post-quantum cryptography in the same workflow. All tools are stateless JSON-RPC calls.

tools
55
transport
HTTP
last updated
Apr 30, 2026

Install

From registry metadata
$ npx add-mcp https://tools.cipherhub.cloud/cipherhub/mcp --name cipherhub

Run in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.

Review the command, arguments and environment values before installing. MCP servers run with your local permissions.

Other ways

Claude Code

$ claude mcp add --transport http cipherhub https://tools.cipherhub.cloud/cipherhub/mcp

Run in your terminal. Add --scope user to make it available in every project.

Tools

Verified live · 55 tools

Verified live against the running server on Nov 6, 2026.

hello[utility] 健康检查 / 回显接口。客户端传入 client_msg 字符串,服务端原样回显并附加 server_msg,用于验证 MCP 通道连通性。返回字段:client_msg(回显)、server_msg(服务端附加消息)。1 params

[utility] 健康检查 / 回显接口。客户端传入 client_msg 字符串,服务端原样回显并附加 server_msg,用于验证 MCP 通道连通性。返回字段:client_msg(回显)、server_msg(服务端附加消息)。

Parameters* required
client_msg*string
任意字符串,服务端原样回显(原始字符串,非编码格式)
generate_random_data[random] 生成安全随机字节:腾讯云 KMS 随机数种子池 + 本地随机输入,经 HKDF-SHA256 派生;KMS 不可用时自动降级到本地软件种子池。data_length 指定字节数(1-128),返回 data_in_hex 十六进制字符串。返回字段:data_in_hex(随机数据 Hex 编码)、data_length(实际字节数)。1 params

[random] 生成安全随机字节:腾讯云 KMS 随机数种子池 + 本地随机输入,经 HKDF-SHA256 派生;KMS 不可用时自动降级到本地软件种子池。data_length 指定字节数(1-128),返回 data_in_hex 十六进制字符串。返回字段:data_in_hex(随机数据 Hex 编码)、data_length(实际字节数)。

Parameters* required
data_length*integer
随机数据字节数(整数,1~128)
hash_sum[hash_digest] 计算消息摘要(支持多算法批量计算)。 【支持算法】Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3 / Shake128 / Shake256。 【参数】 - plain_in_hex:明文 Hex 字符串(原始数据 1B ~ 16MB) - required_hash_modes:字符串数组,指定需要计算的算法列表,默认计算全部算法 - shake_output_length:SHAKE 系列的输出字节长度(32~256,默认 64),仅在 required_hash_mod...3 params

[hash_digest] 计算消息摘要(支持多算法批量计算)。 【支持算法】Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3 / Shake128 / Shake256。 【参数】 - plain_in_hex:明文 Hex 字符串(原始数据 1B ~ 16MB) - required_hash_modes:字符串数组,指定需要计算的算法列表,默认计算全部算法 - shake_output_length:SHAKE 系列的输出字节长度(32~256,默认 64),仅在 required_hash_mod...

Parameters* required
plain_in_hexstring
原始数据的十六进制字符串(1B~16MB,即 2~33554432 个 hex 字符)default:
required_hash_modesarray
哈希算法名称数组,指定需要计算的算法列表,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3 / Shake128 / Shake256(HMAC 不支持 Shake 系列)one of Sha1 · Sha224 · Sha256 · Sha384 · Sha512 · Sm3
shake_output_lengthinteger
SHAKE 系列输出字节长度(整数,32~256,默认 64)default: 64
hmac_sum[hash_digest] 计算 HMAC(基于哈希的消息认证码)。 【支持算法】Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3(不支持 SHAKE 系列,因 SHAKE 为 XOF 非固定长度哈希)。 【参数】 - key_in_hex:密钥 Hex。SHA 系按 RFC 2104 支持 16~256 字节(超块大小会先哈希);若算法列表含 Sm3,上限为 64 字节(SM3 块大小,即 32~128 个 hex 字符)。 - plain_in_hex:待认证数据 Hex(1B ~ 16MB) - r...3 params

[hash_digest] 计算 HMAC(基于哈希的消息认证码)。 【支持算法】Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3(不支持 SHAKE 系列,因 SHAKE 为 XOF 非固定长度哈希)。 【参数】 - key_in_hex:密钥 Hex。SHA 系按 RFC 2104 支持 16~256 字节(超块大小会先哈希);若算法列表含 Sm3,上限为 64 字节(SM3 块大小,即 32~128 个 hex 字符)。 - plain_in_hex:待认证数据 Hex(1B ~ 16MB) - r...

Parameters* required
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
plain_in_hexstring
原始数据的十六进制字符串(1B~16MB,即 2~33554432 个 hex 字符)default:
required_hash_modesarray
哈希算法名称数组,指定需要计算的算法列表,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512 / Sm3 / Shake128 / Shake256(HMAC 不支持 Shake 系列)one of Sha1 · Sha224 · Sha256 · Sha384 · Sha512 · Sm3
key_derivation[kdf] 执行密钥派生(KDF),从高熵秘密或口令派生对称密钥材料。 【支持算法】 - HKDF(默认):RFC 5869 extract-then-expand,底层哈希 Sha256(默认)/ Sha384 / Sha512 - Sm3Kdf:GB/T 32918 密钥派生,SM3(Z ∥ be32(ct)),ct 从 1 起,适合对 SM2 ECDH 共享秘密派生密钥 - Pbkdf2Sm3:RFC 8018 PBKDF2,PRF 为 HMAC-SM3,用于口令拉伸 【参数】(按算法适用,错配会被拒) - algorithm:HKDF /...8 params

[kdf] 执行密钥派生(KDF),从高熵秘密或口令派生对称密钥材料。 【支持算法】 - HKDF(默认):RFC 5869 extract-then-expand,底层哈希 Sha256(默认)/ Sha384 / Sha512 - Sm3Kdf:GB/T 32918 密钥派生,SM3(Z ∥ be32(ct)),ct 从 1 起,适合对 SM2 ECDH 共享秘密派生密钥 - Pbkdf2Sm3:RFC 8018 PBKDF2,PRF 为 HMAC-SM3,用于口令拉伸 【参数】(按算法适用,错配会被拒) - algorithm:HKDF /...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of HKDF · Sm3Kdf · Pbkdf2Sm3default: HKDF
derived_key_lengthinteger
HKDF/KDF 派生密钥长度(整数,16~1024 字节;KDF Pbkdf2Sm3 上限 256)default: 32
hash_algorithmstring
哈希算法名称,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512(ECC 不支持 Sm3)one of Sha256 · Sha384 · Sha512default: Sha256
info_in_hexstring
HKDF 上下文信息的十六进制字符串(可选,≤256B)default:
input_in_hexstring
输入秘密的十六进制字符串(KDF:HKDF 的 IKM / Sm3Kdf 的共享秘密 Z,1B~16MB)default:
iterationsinteger
PBKDF2 迭代次数(整数;KDF Pbkdf2Sm3 范围 10000~4000000,默认 10000)default: 10000
passwordstring
密码(原始字符串,非编码格式;私钥工具为私钥加密密码,KDF Pbkdf2Sm3 为待拉伸口令)default:
salt_in_hexstring
盐的十六进制字符串(KDF,可选 ≤256B;Pbkdf2Sm3 留空则服务端生成 16B 随机盐并回显)default:
block_cipher[symmetric_cipher] 分组密码 CBC 模式加解密。 【算法】AES128(key=16B) / AES256(key=32B) / SM4(key=16B)。 【参数】 - algorithm:算法名 - process_type:Encrypt 或 Decrypt - input_data_in_hex:明文或密文 Hex(1B~16MB) - key_in_hex:密钥 Hex - iv_in_hex:初始向量 Hex(固定 16 字节 = 32 hex 字符) 【自动行为】加密自动 PKCS7 填充,解密自动去填充。 【输出...5 params

[symmetric_cipher] 分组密码 CBC 模式加解密。 【算法】AES128(key=16B) / AES256(key=32B) / SM4(key=16B)。 【参数】 - algorithm:算法名 - process_type:Encrypt 或 Decrypt - input_data_in_hex:明文或密文 Hex(1B~16MB) - key_in_hex:密钥 Hex - iv_in_hex:初始向量 Hex(固定 16 字节 = 32 hex 字符) 【自动行为】加密自动 PKCS7 填充,解密自动去填充。 【输出...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of AES128 · AES256 · SM4default: AES256
input_data_in_hexstring
输入数据的十六进制字符串(加密时为明文,解密时为密文,1B~16MB)default:
iv_in_hexstring
初始向量的十六进制字符串,固定 32 个 hex 字符(16 字节)default:
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
process_typestring
操作类型,可选值:Encrypt / Decryptone of Encrypt · Decryptdefault: Encrypt
stream_cipher[symmetric_cipher] AEAD 流式加解密(认证加密)。 【算法】AES256GCM(key=32B) / ChaCha20Poly1305(key=32B) / SM4GCM(key=16B)。 【参数】 - algorithm:算法名 - process_type:Encrypt 或 Decrypt - input_data_in_hex:明文或密文 Hex(1B~16MB) - key_in_hex:密钥 Hex - nonce_in_hex:随机数 Hex(固定 12 字节 = 24 hex 字符) - associated...6 params

[symmetric_cipher] AEAD 流式加解密(认证加密)。 【算法】AES256GCM(key=32B) / ChaCha20Poly1305(key=32B) / SM4GCM(key=16B)。 【参数】 - algorithm:算法名 - process_type:Encrypt 或 Decrypt - input_data_in_hex:明文或密文 Hex(1B~16MB) - key_in_hex:密钥 Hex - nonce_in_hex:随机数 Hex(固定 12 字节 = 24 hex 字符) - associated...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of AES256GCM · ChaCha20Poly1305 · SM4GCMdefault: AES256GCM
associated_data_in_hexstring
附加认证数据的十六进制字符串(参与 MAC 计算但不加密,可选)default:
input_data_in_hexstring
输入数据的十六进制字符串(加密时为明文,解密时为密文,1B~16MB)default:
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
nonce_in_hexstring
随机数的十六进制字符串,固定 24 个 hex 字符(12 字节)default:
process_typestring
操作类型,可选值:Encrypt / Decryptone of Encrypt · Decryptdefault: Encrypt
data_padding[symmetric_cipher] PKCS7 填充/去填充工具。 【参数】 - padding_action:DoPadding(填充到 16 字节对齐)或 UnPadding(去填充) - data_in_hex:待处理数据 Hex 【输出】output_data_in_hex、output_length。 【说明】块大小固定 16 字节(AES/SM4 块大小)。通常无需单独调用此工具,block_cipher 内部已自动处理填充。2 params

[symmetric_cipher] PKCS7 填充/去填充工具。 【参数】 - padding_action:DoPadding(填充到 16 字节对齐)或 UnPadding(去填充) - data_in_hex:待处理数据 Hex 【输出】output_data_in_hex、output_length。 【说明】块大小固定 16 字节(AES/SM4 块大小)。通常无需单独调用此工具,block_cipher 内部已自动处理填充。

Parameters* required
data_in_hex*string
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hex
padding_actionstring
填充操作,可选值:DoPadding(填充到 16 字节对齐)/ UnPadding(去填充)one of DoPadding · UnPaddingdefault: DoPadding
generate_rsa[rsa] 生成 RSA 密钥对。 【参数】 - key_size:2048 / 3072 / 4096(位) - private_key_password:可选,设置后私钥 PEM 用 AES-256-CBC 加密保护 【输出】public_key_in_pem、private_key_in_pem、key_size。 【后续操作】公钥用于 rsa_encryption / rsa_verify,私钥用于 rsa_decryption / rsa_sign。2 params

[rsa] 生成 RSA 密钥对。 【参数】 - key_size:2048 / 3072 / 4096(位) - private_key_password:可选,设置后私钥 PEM 用 AES-256-CBC 加密保护 【输出】public_key_in_pem、private_key_in_pem、key_size。 【后续操作】公钥用于 rsa_encryption / rsa_verify,私钥用于 rsa_decryption / rsa_sign。

Parameters* required
key_sizeinteger
RSA 密钥位数,可选值:2048 / 3072 / 4096one of 2048 · 3072 · 4096default: 2048
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
rsa_encryption[rsa] RSA 公钥加密。 【参数】 - rsa_public_key_in_pem:PEM 格式公钥 - plain_data_in_hex:明文 Hex - rsa_padding_mode:RSAES_PKCS1_V1_5 / RSAES_OAEP_SHA_1 / RSAES_OAEP_SHA_224 / RSAES_OAEP_SHA_256 / RSAES_OAEP_SHA_384 / RSAES_OAEP_SHA_512 【明文长度限制】受 key_size 和 padding 约束:PKCS1v1.5 上限 = 模长字节 − 11;...3 params

[rsa] RSA 公钥加密。 【参数】 - rsa_public_key_in_pem:PEM 格式公钥 - plain_data_in_hex:明文 Hex - rsa_padding_mode:RSAES_PKCS1_V1_5 / RSAES_OAEP_SHA_1 / RSAES_OAEP_SHA_224 / RSAES_OAEP_SHA_256 / RSAES_OAEP_SHA_384 / RSAES_OAEP_SHA_512 【明文长度限制】受 key_size 和 padding 约束:PKCS1v1.5 上限 = 模长字节 − 11;...

Parameters* required
plain_data_in_hexstring
明文的十六进制字符串default:
rsa_padding_modestring
RSA 加密填充模式,可选值:RSAES_PKCS1_V1_5 / RSAES_OAEP_SHA_1 / RSAES_OAEP_SHA_224 / RSAES_OAEP_SHA_256 / RSAES_OAEP_SHA_384 / RSAES_OAEP_SHA_512one of RSAES_PKCS1_V1_5 · RSAES_OAEP_SHA_1 · RSAES_OAEP_SHA_224 · RSAES_OAEP_SHA_256 · RSAES_OAEP_SHA_384 · RSAES_OAEP_SHA_512default:
rsa_public_key_in_pemstring
RSA 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
rsa_decryption[rsa] RSA 私钥解密。 【参数】 - rsa_private_key_in_pem:PEM 格式私钥 - cipher_data_in_hex:密文 Hex(长度 = key_size/8 字节) - rsa_padding_mode:必须与加密时一致 - password:若私钥有密码保护则传入 【输出】plain_data_in_hex、plain_length。4 params

[rsa] RSA 私钥解密。 【参数】 - rsa_private_key_in_pem:PEM 格式私钥 - cipher_data_in_hex:密文 Hex(长度 = key_size/8 字节) - rsa_padding_mode:必须与加密时一致 - password:若私钥有密码保护则传入 【输出】plain_data_in_hex、plain_length。

Parameters* required
cipher_data_in_hexstring
密文的十六进制字符串default:
passwordstring
密码(原始字符串,非编码格式;私钥工具为私钥加密密码,KDF Pbkdf2Sm3 为待拉伸口令)default:
rsa_padding_modestring
RSA 加密填充模式,可选值:RSAES_PKCS1_V1_5 / RSAES_OAEP_SHA_1 / RSAES_OAEP_SHA_224 / RSAES_OAEP_SHA_256 / RSAES_OAEP_SHA_384 / RSAES_OAEP_SHA_512one of RSAES_PKCS1_V1_5 · RSAES_OAEP_SHA_1 · RSAES_OAEP_SHA_224 · RSAES_OAEP_SHA_256 · RSAES_OAEP_SHA_384 · RSAES_OAEP_SHA_512default:
rsa_private_key_in_pemstring
RSA 私钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
rsa_sign[rsa] RSA 私钥签名。 【参数】 - rsa_private_key_in_pem:PEM 格式私钥 - data_in_hex:待签数据 Hex - rsa_sign_padding_mode:RSA_SIGN_PKCS1_V1_5_SHA{1,224,256,384,512} 或 RSA_SIGN_PSS_SHA{1,224,256,384,512} - rsa_sign_raw_data_mode:True=对原文签名(内部先哈希),False=data_in_hex 已是摘要值 - password:若私钥有密码保护则传入 【输出】...5 params

[rsa] RSA 私钥签名。 【参数】 - rsa_private_key_in_pem:PEM 格式私钥 - data_in_hex:待签数据 Hex - rsa_sign_padding_mode:RSA_SIGN_PKCS1_V1_5_SHA{1,224,256,384,512} 或 RSA_SIGN_PSS_SHA{1,224,256,384,512} - rsa_sign_raw_data_mode:True=对原文签名(内部先哈希),False=data_in_hex 已是摘要值 - password:若私钥有密码保护则传入 【输出】...

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
passwordstring
密码(原始字符串,非编码格式;私钥工具为私钥加密密码,KDF Pbkdf2Sm3 为待拉伸口令)default:
rsa_private_key_in_pemstring
RSA 私钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
rsa_sign_padding_modestring
RSA 签名填充模式,可选值:RSA_SIGN_PKCS1_V1_5_SHA1 / SHA224 / SHA256 / SHA384 / SHA512 或 RSA_SIGN_PSS_SHA1 / SHA224 / SHA256 / SHA384 / SHA512one of RSA_SIGN_PKCS1_V1_5_SHA1 · RSA_SIGN_PKCS1_V1_5_SHA224 · RSA_SIGN_PKCS1_V1_5_SHA256 · RSA_SIGN_PKCS1_V1_5_SHA384 · RSA_SIGN_PKCS1_V1_5_SHA512 · RSA_SIGN_PSS_SHA1default:
rsa_sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
rsa_verify[rsa] RSA 公钥验签。 【参数】 - rsa_public_key_in_pem:PEM 格式公钥 - data_in_hex:原始数据 Hex - signature_in_hex:签名 Hex - rsa_sign_padding_mode:必须与签名时一致 - rsa_sign_raw_data_mode:必须与签名时一致 【输出】verified(bool,True=验签通过)。5 params

[rsa] RSA 公钥验签。 【参数】 - rsa_public_key_in_pem:PEM 格式公钥 - data_in_hex:原始数据 Hex - signature_in_hex:签名 Hex - rsa_sign_padding_mode:必须与签名时一致 - rsa_sign_raw_data_mode:必须与签名时一致 【输出】verified(bool,True=验签通过)。

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
rsa_public_key_in_pemstring
RSA 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
rsa_sign_padding_modestring
RSA 签名填充模式,可选值:RSA_SIGN_PKCS1_V1_5_SHA1 / SHA224 / SHA256 / SHA384 / SHA512 或 RSA_SIGN_PSS_SHA1 / SHA224 / SHA256 / SHA384 / SHA512one of RSA_SIGN_PKCS1_V1_5_SHA1 · RSA_SIGN_PKCS1_V1_5_SHA224 · RSA_SIGN_PKCS1_V1_5_SHA256 · RSA_SIGN_PKCS1_V1_5_SHA384 · RSA_SIGN_PKCS1_V1_5_SHA512 · RSA_SIGN_PSS_SHA1default:
rsa_sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
signature_in_hexstring
签名的十六进制字符串default:
generate_ecc[ecc] 生成 ECC 密钥对。 【曲线】ECC_SECP_256R1 / ECC_SECP_384R1 / ECC_SECP_521R1 / ECC_SECP256K1 / ECC_ED25519(仅签名)/ ECC_X25519(仅 ECDH)。 【参数】 - curve:曲线名 - private_key_password:可选,私钥 PEM 加密保护 【输出】public_key_in_pem、private_key_in_pem、curve。 【能力矩阵】 - SECP* / SECP256K1 → 签名 + 验签 + ECDH - E...2 params

[ecc] 生成 ECC 密钥对。 【曲线】ECC_SECP_256R1 / ECC_SECP_384R1 / ECC_SECP_521R1 / ECC_SECP256K1 / ECC_ED25519(仅签名)/ ECC_X25519(仅 ECDH)。 【参数】 - curve:曲线名 - private_key_password:可选,私钥 PEM 加密保护 【输出】public_key_in_pem、private_key_in_pem、curve。 【能力矩阵】 - SECP* / SECP256K1 → 签名 + 验签 + ECDH - E...

Parameters* required
curvestring
ECC 曲线名,可选值:ECC_SECP_256R1 / ECC_SECP_384R1 / ECC_SECP_521R1 / ECC_SECP256K1 / ECC_ED25519 / ECC_X25519one of ECC_SECP_256R1 · ECC_SECP_384R1 · ECC_SECP_521R1 · ECC_SECP256K1 · ECC_ED25519 · ECC_X25519default: ECC_SECP_256R1
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
ecc_key_exchange[ecc] ECDH + HKDF 密钥协商,双方各用私钥+对方公钥派生相同对称密钥。 【参数】 - alice_ecc_private_key_in_pem:己方私钥 PEM - bob_ecc_public_key_in_pem:对方公钥 PEM - hash_algorithm:HKDF 底层哈希(Sha256/Sha384/Sha512 等,不支持 Sm3) - salt:HKDF salt Hex(可选) - additional_info:HKDF info Hex(可选) - derived_key_length:派生密钥长度 16~...7 params

[ecc] ECDH + HKDF 密钥协商,双方各用私钥+对方公钥派生相同对称密钥。 【参数】 - alice_ecc_private_key_in_pem:己方私钥 PEM - bob_ecc_public_key_in_pem:对方公钥 PEM - hash_algorithm:HKDF 底层哈希(Sha256/Sha384/Sha512 等,不支持 Sm3) - salt:HKDF salt Hex(可选) - additional_info:HKDF info Hex(可选) - derived_key_length:派生密钥长度 16~...

Parameters* required
additional_infostring
HKDF info 的十六进制字符串(可选)default: 536572696f75732043727970746f6772617068790a20202020437265617469766520536f6c7574696f6e730a202020204d617070696e67204469676974616c205472757374
alice_ecc_private_key_in_pemstring
Alice 侧 ECC 私钥的 PEM 文本default:
alice_ecc_private_key_passwordstring
Alice 侧 ECC 私钥的加密密码(原始字符串,非编码格式)default:
bob_ecc_public_key_in_pemstring
Bob 侧 ECC 公钥的 PEM 文本default:
derived_key_lengthinteger
HKDF/KDF 派生密钥长度(整数,16~1024 字节;KDF Pbkdf2Sm3 上限 256)default: 32
hash_algorithmstring
哈希算法名称,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512(ECC 不支持 Sm3)one of Sha1 · Sha224 · Sha256 · Sha384 · Sha512default: Sha512
saltstring
HKDF salt 的十六进制字符串(可选)default: e5af86e7a081e5ada6e4babae38090436970686572485542e38091
ecc_key_sign[ecc] ECC 私钥签名(SECP* 用 ECDSA,ED25519 用 EdDSA)。 【参数】 - ecc_private_key_in_pem:PEM 私钥 - data_in_hex:待签数据 Hex - sign_raw_data_mode:True=对原文签名(内部先哈希),False=data_in_hex 已是摘要 - hash_algorithm:Sha256/Sha384/Sha512 等(EdDSA 忽略此参数) - ecc_private_key_password:若私钥加密则传入 【输出】signature_in_he...5 params

[ecc] ECC 私钥签名(SECP* 用 ECDSA,ED25519 用 EdDSA)。 【参数】 - ecc_private_key_in_pem:PEM 私钥 - data_in_hex:待签数据 Hex - sign_raw_data_mode:True=对原文签名(内部先哈希),False=data_in_hex 已是摘要 - hash_algorithm:Sha256/Sha384/Sha512 等(EdDSA 忽略此参数) - ecc_private_key_password:若私钥加密则传入 【输出】signature_in_he...

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
ecc_private_key_in_pemstring
ECC 私钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
ecc_private_key_passwordstring
ECC 私钥的加密密码(原始字符串,非编码格式)default:
hash_algorithmstring
哈希算法名称,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512(ECC 不支持 Sm3)one of Sha1 · Sha224 · Sha256 · Sha384 · Sha512default: Sha512
sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
ecc_key_verify[ecc] ECC 公钥验签(SECP* 用 ECDSA,ED25519 用 EdDSA)。 【参数】 - ecc_public_key_in_pem:PEM 公钥 - data_in_hex:原始数据 Hex - signature_in_hex:签名 Hex - sign_raw_data_mode:必须与签名时一致 - hash_algorithm:必须与签名时一致 【输出】verified(bool,True=验签通过)、curve_name。 【曲线限制】X25519 不可用于验签。5 params

[ecc] ECC 公钥验签(SECP* 用 ECDSA,ED25519 用 EdDSA)。 【参数】 - ecc_public_key_in_pem:PEM 公钥 - data_in_hex:原始数据 Hex - signature_in_hex:签名 Hex - sign_raw_data_mode:必须与签名时一致 - hash_algorithm:必须与签名时一致 【输出】verified(bool,True=验签通过)、curve_name。 【曲线限制】X25519 不可用于验签。

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
ecc_public_key_in_pemstring
ECC 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
hash_algorithmstring
哈希算法名称,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512(ECC 不支持 Sm3)one of Sha1 · Sha224 · Sha256 · Sha384 · Sha512default: Sha512
sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
signature_in_hexstring
签名的十六进制字符串default:
generate_sm2[sm2] 生成 SM2(SM2P256V1 / 国密曲线)密钥对。 【参数】 - private_key_password:必填,私钥 PEM 加密口令(1-64 字节;私钥只有加密 PEM 一种导出形态) 【输出】public_key_in_pem、private_key_in_pem、z_in_hex、point_x_in_hex、point_y_in_hex、public_key_in_hex、private_key_in_hex。 【后续操作】公钥用于 sm2_encryption / sm2_verify,私钥用于 sm2_decryp...1 params

[sm2] 生成 SM2(SM2P256V1 / 国密曲线)密钥对。 【参数】 - private_key_password:必填,私钥 PEM 加密口令(1-64 字节;私钥只有加密 PEM 一种导出形态) 【输出】public_key_in_pem、private_key_in_pem、z_in_hex、point_x_in_hex、point_y_in_hex、public_key_in_hex、private_key_in_hex。 【后续操作】公钥用于 sm2_encryption / sm2_verify,私钥用于 sm2_decryp...

Parameters* required
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
sm2_encryption[sm2] SM2 公钥加密。 【参数】 - sm2_public_key_in_pem:PEM 格式公钥 - plain_data_in_hex:明文 Hex 【输出】cipher_in_hex_with_format 字典,同时返回四种编码格式: - C1C3C2_ASN1:ASN.1 DER 编码(推荐,国标 GM/T 0009) - C1C2C3_ASN1:ASN.1 DER 旧格式 - C1C3C2:原始拼接格式 - C1C2C3:原始拼接旧格式 【注意】每次加密因随机 k 不同,密文不同,这是正常行为。2 params

[sm2] SM2 公钥加密。 【参数】 - sm2_public_key_in_pem:PEM 格式公钥 - plain_data_in_hex:明文 Hex 【输出】cipher_in_hex_with_format 字典,同时返回四种编码格式: - C1C3C2_ASN1:ASN.1 DER 编码(推荐,国标 GM/T 0009) - C1C2C3_ASN1:ASN.1 DER 旧格式 - C1C3C2:原始拼接格式 - C1C2C3:原始拼接旧格式 【注意】每次加密因随机 k 不同,密文不同,这是正常行为。

Parameters* required
plain_data_in_hexstring
明文的十六进制字符串default:
sm2_public_key_in_pemstring
SM2 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
sm2_decryption[sm2] SM2 私钥解密。 【参数】 - sm2_private_key_in_pem:PEM 格式私钥 - cipher_data_in_hex:密文 Hex - cipher_format:必须指定 C1C3C2_ASN1 / C1C2C3_ASN1 / C1C3C2 / C1C2C3 - sm2_private_key_password:若私钥加密则传入 【输出】plain_data_in_hex、plain_length。 【注意】cipher_format 必须与加密时的格式对应,否则解密失败。4 params

[sm2] SM2 私钥解密。 【参数】 - sm2_private_key_in_pem:PEM 格式私钥 - cipher_data_in_hex:密文 Hex - cipher_format:必须指定 C1C3C2_ASN1 / C1C2C3_ASN1 / C1C3C2 / C1C2C3 - sm2_private_key_password:若私钥加密则传入 【输出】plain_data_in_hex、plain_length。 【注意】cipher_format 必须与加密时的格式对应,否则解密失败。

Parameters* required
cipher_data_in_hexstring
密文的十六进制字符串default:
cipher_formatstring
SM2 密文编码格式,可选值:C1C3C2_ASN1 / C1C2C3_ASN1 / C1C3C2 / C1C2C3one of C1C3C2_ASN1 · C1C2C3_ASN1 · C1C3C2 · C1C2C3default:
sm2_private_key_in_pemstring
SM2 加密私钥的 PEM 文本(含 BEGIN/END ENCRYPTED PRIVATE KEY 头尾)default:
sm2_private_key_passwordstring
SM2 私钥的加密密码(原始字符串,非编码格式)default:
sm2_sign[sm2] SM2 私钥签名。 【参数】 - sm2_private_key_in_pem:PEM 格式私钥 - data_in_hex:待签数据 Hex。 · RAW 模式(sign_raw_data_mode=True):消息原文 Hex,服务端走标准 SM2 流程,内部计算 e = SM3(ZA || M) 后签名。 · DIGEST 模式(sign_raw_data_mode=False):必须传 32 字节 SM3 摘要 e 的 Hex(64 个 hex 字符),服务端不再做任何隐式 SM3,直接对 e 做裸 SM2 签名,与 KMS /...4 params

[sm2] SM2 私钥签名。 【参数】 - sm2_private_key_in_pem:PEM 格式私钥 - data_in_hex:待签数据 Hex。 · RAW 模式(sign_raw_data_mode=True):消息原文 Hex,服务端走标准 SM2 流程,内部计算 e = SM3(ZA || M) 后签名。 · DIGEST 模式(sign_raw_data_mode=False):必须传 32 字节 SM3 摘要 e 的 Hex(64 个 hex 字符),服务端不再做任何隐式 SM3,直接对 e 做裸 SM2 签名,与 KMS /...

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
sm2_private_key_in_pemstring
SM2 加密私钥的 PEM 文本(含 BEGIN/END ENCRYPTED PRIVATE KEY 头尾)default:
sm2_private_key_passwordstring
SM2 私钥的加密密码(原始字符串,非编码格式)default:
sm2_verify[sm2] SM2 公钥验签。 【参数】 - sm2_public_key_in_pem:PEM 格式公钥 - data_in_hex:待验签数据 Hex。 · RAW 模式(sign_raw_data_mode=True):消息原文 Hex,服务端走标准 SM2 流程,内部计算 e = SM3(ZA || M) 后验签。 · DIGEST 模式(sign_raw_data_mode=False):必须传 32 字节 SM3 摘要 e 的 Hex(64 个 hex 字符),服务端不再做任何隐式 SM3,直接对 e 做裸 SM2 验签,与 KMS /...5 params

[sm2] SM2 公钥验签。 【参数】 - sm2_public_key_in_pem:PEM 格式公钥 - data_in_hex:待验签数据 Hex。 · RAW 模式(sign_raw_data_mode=True):消息原文 Hex,服务端走标准 SM2 流程,内部计算 e = SM3(ZA || M) 后验签。 · DIGEST 模式(sign_raw_data_mode=False):必须传 32 字节 SM3 摘要 e 的 Hex(64 个 hex 字符),服务端不再做任何隐式 SM3,直接对 e 做裸 SM2 验签,与 KMS /...

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
sign_raw_data_modeboolean
True=对原文签名(服务端内部先哈希),False=data_in_hex 已是哈希摘要的 Hexdefault: true
signature_formatstring
SM2 签名编码格式,固定值:RS_ASN1(ASN.1 DER 编码)one of RS_ASN1default: RS_ASN1
signature_in_hexstring
签名的十六进制字符串default:
sm2_public_key_in_pemstring
SM2 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
sm2_private_key_structure_parse[sm2] 解析 SM2 加密私钥(ENCRYPTED PRIVATE KEY PEM)结构,返回 ASN.1 内部字段的 JSON 视图。用于调试与教学,不会解出私钥值。返回字段:structure(ASN.1 结构 JSON,含加密算法 OID、盐、迭代次数等)。1 params

[sm2] 解析 SM2 加密私钥(ENCRYPTED PRIVATE KEY PEM)结构,返回 ASN.1 内部字段的 JSON 视图。用于调试与教学,不会解出私钥值。返回字段:structure(ASN.1 结构 JSON,含加密算法 OID、盐、迭代次数等)。

Parameters* required
private_key_in_pemstring
SM2 加密私钥的 PEM 文本(含 BEGIN/END ENCRYPTED PRIVATE KEY 头尾)default:
sm2_public_key_to_hex[sm2] 将 SM2 PEM 公钥转换为裸 Hex 编码(未压缩点,04 || X || Y)。返回字段:public_key_in_hex(130 个 hex 字符,65 字节)。1 params

[sm2] 将 SM2 PEM 公钥转换为裸 Hex 编码(未压缩点,04 || X || Y)。返回字段:public_key_in_hex(130 个 hex 字符,65 字节)。

Parameters* required
public_key_in_pemstring
SM2 公钥的 PEM 文本(含 BEGIN/END PUBLIC KEY 头尾)default:
zuc_cipher[symmetric_cipher] ZUC-128 流密码(中国商密算法)。由于 ZUC 是对称流密码,加解密为同一操作,传入明文即输出密文,反之亦然。key_in_hex 固定 16 字节(32 hex 字符),iv_in_hex 固定 16 字节(32 hex 字符),input_data_in_hex 原始数据长度 1B ~ 16MB。返回字段:output_data_in_hex(输出 Hex)、output_length(字节数)。3 params

[symmetric_cipher] ZUC-128 流密码(中国商密算法)。由于 ZUC 是对称流密码,加解密为同一操作,传入明文即输出密文,反之亦然。key_in_hex 固定 16 字节(32 hex 字符),iv_in_hex 固定 16 字节(32 hex 字符),input_data_in_hex 原始数据长度 1B ~ 16MB。返回字段:output_data_in_hex(输出 Hex)、output_length(字节数)。

Parameters* required
input_data_in_hexstring
输入数据的十六进制字符串(加密时为明文,解密时为密文,1B~16MB)default:
iv_in_hexstring
初始向量的十六进制字符串,固定 32 个 hex 字符(16 字节)default:
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
ctr_cipher[symmetric_cipher] [symmetric_cipher] CTR 计数器模式加解密(AES-256-CTR / SM4-CTR)。CTR 是把块密码转成密钥流的模式:加解密为同一操作(密钥流 XOR),无填充,密文长度与明文等长,任意长度输入(1B ~ 16MB)。algorithm 可选 AES256CTR(key 32B,cryptography 实现)或 SM4CTR(key 16B,GmSSL C 库实现,与 eet 的 sm4-ctr 同源)。iv_in_hex 为 16 字节初始计数器块(32 hex 字符),同 ke...4 params

[symmetric_cipher] [symmetric_cipher] CTR 计数器模式加解密(AES-256-CTR / SM4-CTR)。CTR 是把块密码转成密钥流的模式:加解密为同一操作(密钥流 XOR),无填充,密文长度与明文等长,任意长度输入(1B ~ 16MB)。algorithm 可选 AES256CTR(key 32B,cryptography 实现)或 SM4CTR(key 16B,GmSSL C 库实现,与 eet 的 sm4-ctr 同源)。iv_in_hex 为 16 字节初始计数器块(32 hex 字符),同 ke...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of AES256CTR · SM4CTRdefault: AES256CTR
input_data_in_hexstring
输入数据的十六进制字符串(加密时为明文,解密时为密文,1B~16MB)default:
iv_in_hexstring
初始向量的十六进制字符串,固定 32 个 hex 字符(16 字节)default:
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
xts_cipher[other] [symmetric_cipher] AES-XTS 可调窄分组模式加解密(IEEE 1619 / NIST SP 800-38E)。algorithm 可选 AES128XTS(key 32B = 数据密钥 16B + 调组密钥 16B)或 AES256XTS(key 64B = 32B + 32B)。tweak_in_hex 为 16 字节调整值,编码数据单元编号/扇区地址,密文与数据单元位置绑定。process_type 可选 Encrypt / Decrypt(两个变换不同,须显式声明)。输入 16B ~ 16MB,无填充,...5 params

[other] [symmetric_cipher] AES-XTS 可调窄分组模式加解密(IEEE 1619 / NIST SP 800-38E)。algorithm 可选 AES128XTS(key 32B = 数据密钥 16B + 调组密钥 16B)或 AES256XTS(key 64B = 32B + 32B)。tweak_in_hex 为 16 字节调整值,编码数据单元编号/扇区地址,密文与数据单元位置绑定。process_type 可选 Encrypt / Decrypt(两个变换不同,须显式声明)。输入 16B ~ 16MB,无填充,...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of AES128XTS · AES256XTSdefault: AES256XTS
input_data_in_hexstring
输入数据的十六进制字符串(加密时为明文,解密时为密文,1B~16MB)default:
key_in_hexstring
密钥的十六进制字符串。长度取决于算法:AES256=64 字符(32B),AES128/SM4=32 字符(16B)default:
process_typestring
操作类型,可选值:Encrypt / Decryptone of Encrypt · Decryptdefault: Encrypt
tweak_in_hexstring
default:
cert_parse[cert] [x509_certificate] 解析 X.509 证书或证书链(国际 / 国密 GM SM2 双路径)。输入 PEM:单张证书,或多张证书的整链(叶子在前,合计≤32KB)。顶层字段始终描述第一张(叶子)证书:证书类型(X.509 (international) / X.509 (GM SM2),按签名算法 OID 是否落在国密分支 1.2.156.10197 自动判定)、版本、序列号 hex、签名算法及 OID、颁发者/主体 DN(dict 与 RFC4514 串)、有效期(UTC ISO-8601)与当前状态(valid/e...1 params

[cert] [x509_certificate] 解析 X.509 证书或证书链(国际 / 国密 GM SM2 双路径)。输入 PEM:单张证书,或多张证书的整链(叶子在前,合计≤32KB)。顶层字段始终描述第一张(叶子)证书:证书类型(X.509 (international) / X.509 (GM SM2),按签名算法 OID 是否落在国密分支 1.2.156.10197 自动判定)、版本、序列号 hex、签名算法及 OID、颁发者/主体 DN(dict 与 RFC4514 串)、有效期(UTC ISO-8601)与当前状态(valid/e...

Parameters* required
certificate_in_pemstring
证书的 PEM 文本(含 BEGIN/END CERTIFICATE 头尾);cert_parse 可传多张证书的整链(叶子在前,合计≤32KB),cert_verify 为单张≤10KBdefault:
cert_verify[cert] [x509_certificate] 用 CA 证书验证终端实体证书(单级直接签发验证)。语义:颁发者 DN 与 CA 主体 DN 匹配 + 签名可由 CA 公钥验证;不做链构建、不做吊销检查。有效期不参与 verified 判定,仅以 time_status 字段(valid/expired/not_yet_valid)信息性回显。GM 证书(签名 OID 落在 1.2.156.10197 国密分支)走 GmSSL C 的 x509_cert_verify_by_ca_cert(SM2withSM3,与 gmssl certveri...3 params

[cert] [x509_certificate] 用 CA 证书验证终端实体证书(单级直接签发验证)。语义:颁发者 DN 与 CA 主体 DN 匹配 + 签名可由 CA 公钥验证;不做链构建、不做吊销检查。有效期不参与 verified 判定,仅以 time_status 字段(valid/expired/not_yet_valid)信息性回显。GM 证书(签名 OID 落在 1.2.156.10197 国密分支)走 GmSSL C 的 x509_cert_verify_by_ca_cert(SM2withSM3,与 gmssl certveri...

Parameters* required
ca_certificate_in_pemstring
CA 证书的 PEM 文本(含 BEGIN/END CERTIFICATE 头尾,≤10KB)default:
certificate_in_pemstring
证书的 PEM 文本(含 BEGIN/END CERTIFICATE 头尾);cert_parse 可传多张证书的整链(叶子在前,合计≤32KB),cert_verify 为单张≤10KBdefault:
sm2_idstring
SM2 签名者 ID(仅 GM 证书验证使用;默认 '1234567812345678',GM/T 0009 与 GmSSL 同源默认值,1~64 字节)default: 1234567812345678
generate_sm9[sm9_ibc] [sm9_ibc] 生成 SM9 标识密码主密钥(GM/T 0044,GmSSL C 实现)。key_kind='Sign' 生成签名主密钥(验签方持主公钥),'Enc' 生成加密主密钥(加密方持主公钥),默认 Enc。输出:master_public_key_in_pem(明文主公钥,分发给所有用户)与 master_private_key_in_pem(ENCRYPTED 口令加密主私钥,KGC 自留)。private_key_password 必填,1-32 UTF-8 字节。SM9 私钥 PEM 只有加密形态(无明文导出)。2 params

[sm9_ibc] [sm9_ibc] 生成 SM9 标识密码主密钥(GM/T 0044,GmSSL C 实现)。key_kind='Sign' 生成签名主密钥(验签方持主公钥),'Enc' 生成加密主密钥(加密方持主公钥),默认 Enc。输出:master_public_key_in_pem(明文主公钥,分发给所有用户)与 master_private_key_in_pem(ENCRYPTED 口令加密主私钥,KGC 自留)。private_key_password 必填,1-32 UTF-8 字节。SM9 私钥 PEM 只有加密形态(无明文导出)。

Parameters* required
key_kindstring
SM9 主密钥类型,可选值:Sign(签名主密钥)/ Enc(加密主密钥)one of Sign · Encdefault: Enc
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
sm9_extract_key[sm9_ibc] [sm9_ibc] KGC 按标识提取 SM9 用户私钥(GM/T 0044)。输入:key_kind(Sign/Enc)、master_private_key_in_pem(GenerateSm9 输出的加密主私钥)、private_key_password(主私钥口令,提取的用户钥也以同一口令加密)、identity(被派发方标识,如邮箱/账号,1-63 UTF-8 字节)。内置 N-1 探针:GmSSL 加密 PEM 导入无口令校验,错口令可能静默解出垃圾主密钥,因此派生后当场完成一次签名验回/加解密往返(probe_ve...4 params

[sm9_ibc] [sm9_ibc] KGC 按标识提取 SM9 用户私钥(GM/T 0044)。输入:key_kind(Sign/Enc)、master_private_key_in_pem(GenerateSm9 输出的加密主私钥)、private_key_password(主私钥口令,提取的用户钥也以同一口令加密)、identity(被派发方标识,如邮箱/账号,1-63 UTF-8 字节)。内置 N-1 探针:GmSSL 加密 PEM 导入无口令校验,错口令可能静默解出垃圾主密钥,因此派生后当场完成一次签名验回/加解密往返(probe_ve...

Parameters* required
identitystring
SM9 用户标识(原始字符串,如邮箱/账号,1-63 UTF-8 字节;签名/加密/解密均与该标识绑定)default:
key_kindstring
SM9 主密钥类型,可选值:Sign(签名主密钥)/ Enc(加密主密钥)one of Sign · Encdefault: Enc
master_private_key_in_pemstring
SM9 加密主私钥的 PEM 文本(含 BEGIN ENCRYPTED SM9 ... MASTER KEY 头尾,KGC 自留)default:
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
sm9_encryption[sm9_ibc] [sm9_ibc] SM9 标识加密(GM/T 0044)。任何人持主公钥即可加密:输入 master_public_key_in_pem(key_kind=Enc 的主公钥)、identity(接收方标识,密文与标识绑定)、plain_data_in_hex(明文 hex,1-255 字节,SM9 单次加密上限受 KDF 块计数器约束)。输出:cipher_in_hex / cipher_in_base64(DER 编码密文,C1/C3/C2 结构,≤367 字节)。3 params

[sm9_ibc] [sm9_ibc] SM9 标识加密(GM/T 0044)。任何人持主公钥即可加密:输入 master_public_key_in_pem(key_kind=Enc 的主公钥)、identity(接收方标识,密文与标识绑定)、plain_data_in_hex(明文 hex,1-255 字节,SM9 单次加密上限受 KDF 块计数器约束)。输出:cipher_in_hex / cipher_in_base64(DER 编码密文,C1/C3/C2 结构,≤367 字节)。

Parameters* required
identitystring
SM9 用户标识(原始字符串,如邮箱/账号,1-63 UTF-8 字节;签名/加密/解密均与该标识绑定)default:
master_public_key_in_pemstring
SM9 主公钥的 PEM 文本(明文形态,验签/加密侧使用;Sign/Enc 两类主密钥的公钥标签不同)default:
plain_data_in_hexstring
明文的十六进制字符串default:
sm9_decryption[sm9_ibc] [sm9_ibc] SM9 标识解密(GM/T 0044)。接收方用 KGC 派发的用户钥解密:输入 user_private_key_in_pem(SM9ExtractKey key_kind=Enc 输出)、private_key_password(用户钥口令,与提取时一致)、identity(接收方标识,必须与加密时一致)、cipher_data_in_hex(DER 密文,≤367 字节)。输出:plain_data_in_hex、plain_length。口令错或标识不符返回 'SM9 decrypt failed'。4 params

[sm9_ibc] [sm9_ibc] SM9 标识解密(GM/T 0044)。接收方用 KGC 派发的用户钥解密:输入 user_private_key_in_pem(SM9ExtractKey key_kind=Enc 输出)、private_key_password(用户钥口令,与提取时一致)、identity(接收方标识,必须与加密时一致)、cipher_data_in_hex(DER 密文,≤367 字节)。输出:plain_data_in_hex、plain_length。口令错或标识不符返回 'SM9 decrypt failed'。

Parameters* required
cipher_data_in_hexstring
密文的十六进制字符串default:
identitystring
SM9 用户标识(原始字符串,如邮箱/账号,1-63 UTF-8 字节;签名/加密/解密均与该标识绑定)default:
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
user_private_key_in_pemstring
SM9 加密用户私钥的 PEM 文本(含 BEGIN ENCRYPTED SM9 ... PRIVATE KEY 头尾,由 SM9ExtractKey 派发)default:
sm9_sign[sm9_ibc] [sm9_ibc] SM9 标识签名(GM/T 0044)。签名者用 KGC 派发的用户钥签名:输入 user_private_key_in_pem(SM9ExtractKey key_kind=Sign 输出)、private_key_password(用户钥口令)、data_in_hex(消息原文 hex,签名前内部先算 SM3 摘要,流式处理,仅支持原文模式)。输出:signature_in_hex / signature_in_base64(DER 编码签名,固定 104 字节)。3 params

[sm9_ibc] [sm9_ibc] SM9 标识签名(GM/T 0044)。签名者用 KGC 派发的用户钥签名:输入 user_private_key_in_pem(SM9ExtractKey key_kind=Sign 输出)、private_key_password(用户钥口令)、data_in_hex(消息原文 hex,签名前内部先算 SM3 摘要,流式处理,仅支持原文模式)。输出:signature_in_hex / signature_in_base64(DER 编码签名,固定 104 字节)。

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
private_key_passwordstring
私钥的加密密码(原始字符串,非编码格式),可选default:
user_private_key_in_pemstring
SM9 加密用户私钥的 PEM 文本(含 BEGIN ENCRYPTED SM9 ... PRIVATE KEY 头尾,由 SM9ExtractKey 派发)default:
sm9_verify[sm9_ibc] [sm9_ibc] SM9 标识验签(GM/T 0044)。验签方只需主公钥与签名者标识:输入 master_public_key_in_pem(key_kind=Sign 的主公钥)、identity(签名者标识)、data_in_hex(消息原文 hex)、signature_in_hex(DER 签名,恰 104 字节 = 208 hex 字符)。verified=false 是成功响应(签名或标识不匹配),仅输入格式非法才返回错误码 'SM9 verify failed'。4 params

[sm9_ibc] [sm9_ibc] SM9 标识验签(GM/T 0044)。验签方只需主公钥与签名者标识:输入 master_public_key_in_pem(key_kind=Sign 的主公钥)、identity(签名者标识)、data_in_hex(消息原文 hex)、signature_in_hex(DER 签名,恰 104 字节 = 208 hex 字符)。verified=false 是成功响应(签名或标识不匹配),仅输入格式非法才返回错误码 'SM9 verify failed'。

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
identitystring
SM9 用户标识(原始字符串,如邮箱/账号,1-63 UTF-8 字节;签名/加密/解密均与该标识绑定)default:
master_public_key_in_pemstring
SM9 主公钥的 PEM 文本(明文形态,验签/加密侧使用;Sign/Enc 两类主密钥的公钥标签不同)default:
signature_in_hexstring
签名的十六进制字符串default:
ml_kem_keygen[pqc_kem] 生成 ML-KEM 密钥对(FIPS 203,后量子密钥封装标准)。 【算法选择】ML-KEM-512(NIST Level 1)/ ML-KEM-768(Level 3,推荐)/ ML-KEM-1024(Level 5)。 【参数】 - algorithm:算法名 - seed_in_hex:可选,64 字节种子 hex(128 字符)。填入时按该种子确定性生成 - use_random_seed:可选。true 强制随机并忽略 seed_in_hex;false 必须提供 seed_in_hex;不传时按 seed_in_h...3 params

[pqc_kem] 生成 ML-KEM 密钥对(FIPS 203,后量子密钥封装标准)。 【算法选择】ML-KEM-512(NIST Level 1)/ ML-KEM-768(Level 3,推荐)/ ML-KEM-1024(Level 5)。 【参数】 - algorithm:算法名 - seed_in_hex:可选,64 字节种子 hex(128 字符)。填入时按该种子确定性生成 - use_random_seed:可选。true 强制随机并忽略 seed_in_hex;false 必须提供 seed_in_hex;不传时按 seed_in_h...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-KEM-512 · ML-KEM-768 · ML-KEM-1024default: ML-KEM-768
seed_in_hexstring
ML-KEM 密钥生成种子的十六进制字符串,可选。留空时由服务端随机生成;填写时必须为 128 个 hex 字符(64 字节)default:
use_random_seedvalue
可选。true 强制随机并忽略 seed_in_hex;false 必须提供 seed_in_hex;不传时按 seed_in_hex 是否为空决定:空则随机,非空则确定性
ml_kem_encap[pqc_kem] 使用 ML-KEM 公钥执行密钥封装(FIPS 203)。 【算法】ML-KEM-512 / ML-KEM-768 / ML-KEM-1024。 【参数】 - algorithm:必须与 keygen 时一致 - public_key_in_hex:ml_kem_keygen 返回的公钥 hex 【输出】ciphertext_in_hex、ciphertext_in_base64、shared_secret_in_hex、shared_secret_in_base64、shared_secret_sha256、ciphertex...2 params

[pqc_kem] 使用 ML-KEM 公钥执行密钥封装(FIPS 203)。 【算法】ML-KEM-512 / ML-KEM-768 / ML-KEM-1024。 【参数】 - algorithm:必须与 keygen 时一致 - public_key_in_hex:ml_kem_keygen 返回的公钥 hex 【输出】ciphertext_in_hex、ciphertext_in_base64、shared_secret_in_hex、shared_secret_in_base64、shared_secret_sha256、ciphertex...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-KEM-512 · ML-KEM-768 · ML-KEM-1024default: ML-KEM-768
public_key_in_hexstring
公钥的十六进制字符串(裸密钥或 DER 编码,取决于算法)default:
ml_kem_decap[pqc_kem] 使用 ML-KEM 私钥执行密钥解封装(FIPS 203)。 【算法】ML-KEM-512 / ML-KEM-768 / ML-KEM-1024。 【参数】 - algorithm:必须与 keygen/encap 一致 - secret_key_in_hex:ml_kem_keygen 返回的私钥 hex - ciphertext_in_hex:ml_kem_encap 返回的密文 hex 【输出】shared_secret_in_hex、shared_secret_in_base64、shared_secret_sha256...3 params

[pqc_kem] 使用 ML-KEM 私钥执行密钥解封装(FIPS 203)。 【算法】ML-KEM-512 / ML-KEM-768 / ML-KEM-1024。 【参数】 - algorithm:必须与 keygen/encap 一致 - secret_key_in_hex:ml_kem_keygen 返回的私钥 hex - ciphertext_in_hex:ml_kem_encap 返回的密文 hex 【输出】shared_secret_in_hex、shared_secret_in_base64、shared_secret_sha256...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-KEM-512 · ML-KEM-768 · ML-KEM-1024default: ML-KEM-768
ciphertext_in_hexstring
ML-KEM 密文的十六进制字符串default:
secret_key_in_hexstring
ML-KEM 私钥的十六进制字符串default:
ml_dsa_keygen[pqc_signature] 生成 ML-DSA 密钥对(FIPS 204,后量子数字签名标准)。 【算法选择】algorithm 支持 ML-DSA-44(NIST Level 2)/ ML-DSA-65(Level 3,默认)/ ML-DSA-87(Level 5)。 【安全等级参考】ML-DSA-44 ≈ AES-128 / ML-DSA-65 ≈ AES-192 / ML-DSA-87 ≈ AES-256。 【输出】public_key_in_hex(SPKI DER hex)、public_key_in_base64、private_k...1 params

[pqc_signature] 生成 ML-DSA 密钥对(FIPS 204,后量子数字签名标准)。 【算法选择】algorithm 支持 ML-DSA-44(NIST Level 2)/ ML-DSA-65(Level 3,默认)/ ML-DSA-87(Level 5)。 【安全等级参考】ML-DSA-44 ≈ AES-128 / ML-DSA-65 ≈ AES-192 / ML-DSA-87 ≈ AES-256。 【输出】public_key_in_hex(SPKI DER hex)、public_key_in_base64、private_k...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-DSA-44 · ML-DSA-65 · ML-DSA-87default: ML-DSA-65
ml_dsa_sign[pqc_signature] 使用 ML-DSA 私钥对消息签名(FIPS 204)。 【双模式】sign_mode 支持 RAW(默认)和 EXTERNAL_MU 两种模式。 - RAW 模式:直接签名原始消息(liboqs,最大 256 字节) - EXTERNAL_MU 模式:先计算 mu = SHAKE-256(tr||M', 64),再通过 OpenSSL 3.5+ mu 模式签名(最大 2048 字节),与 AWS KMS ML-DSA EXTERNAL_MU 语义等价 【消息长度策略】 - RAW:最大 256 字节,空消息合法 -...6 params

[pqc_signature] 使用 ML-DSA 私钥对消息签名(FIPS 204)。 【双模式】sign_mode 支持 RAW(默认)和 EXTERNAL_MU 两种模式。 - RAW 模式:直接签名原始消息(liboqs,最大 256 字节) - EXTERNAL_MU 模式:先计算 mu = SHAKE-256(tr||M', 64),再通过 OpenSSL 3.5+ mu 模式签名(最大 2048 字节),与 AWS KMS ML-DSA EXTERNAL_MU 语义等价 【消息长度策略】 - RAW:最大 256 字节,空消息合法 -...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-DSA-44 · ML-DSA-65 · ML-DSA-87default: ML-DSA-65
context_in_hexstring
ML-DSA 上下文的十六进制字符串(可选,最大 255 字节)default:
message_in_hexstring
消息的十六进制字符串(空字符串表示空消息)default:
private_key_in_hexstring
ML-DSA 私钥的十六进制字符串(PKCS#8 DER 编码)default:
public_key_spki_in_hexstring
ML-DSA 公钥的十六进制字符串(SPKI DER 或裸公钥均可)default:
sign_modestring
ML-DSA 签名模式,可选值:RAW(默认,直接签名原文)/ EXTERNAL_MU(先计算 mu 再签名,与 AWS KMS 语义等价)one of RAW · EXTERNAL_MUdefault: RAW
ml_dsa_verify[pqc_signature] 使用 ML-DSA 公钥验证签名(FIPS 204)。 【双模式】sign_mode 支持 RAW(默认)和 EXTERNAL_MU 两种模式,必须与签名时使用的模式一致。 - RAW 模式:直接验证原始消息签名(liboqs,最大 256 字节,空消息合法) - EXTERNAL_MU 模式:先计算 mu,再通过 OpenSSL 3.5+ mu 模式验签,可验证 AWS KMS EXTERNAL_MU 签名(最大 2048 字节,空消息合法) 【算法】algorithm 支持 ML-DSA-44 / ML-DSA-...6 params

[pqc_signature] 使用 ML-DSA 公钥验证签名(FIPS 204)。 【双模式】sign_mode 支持 RAW(默认)和 EXTERNAL_MU 两种模式,必须与签名时使用的模式一致。 - RAW 模式:直接验证原始消息签名(liboqs,最大 256 字节,空消息合法) - EXTERNAL_MU 模式:先计算 mu,再通过 OpenSSL 3.5+ mu 模式验签,可验证 AWS KMS EXTERNAL_MU 签名(最大 2048 字节,空消息合法) 【算法】algorithm 支持 ML-DSA-44 / ML-DSA-...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-DSA-44 · ML-DSA-65 · ML-DSA-87default: ML-DSA-65
context_in_hexstring
ML-DSA 上下文的十六进制字符串(可选,最大 255 字节)default:
message_in_hexstring
消息的十六进制字符串(空字符串表示空消息)default:
public_key_spki_in_hexstring
ML-DSA 公钥的十六进制字符串(SPKI DER 或裸公钥均可)default:
sign_modestring
ML-DSA 签名模式,可选值:RAW(默认,直接签名原文)/ EXTERNAL_MU(先计算 mu 再签名,与 AWS KMS 语义等价)one of RAW · EXTERNAL_MUdefault: RAW
signature_in_hexstring
签名的十六进制字符串default:
ml_dsa_compute_mu[pqc_signature] 独立计算 ML-DSA 的 64 字节 mu 值(FIPS 204 Section 6.2)。 【用途】用于验证或调试 EXTERNAL_MU 模式的中间值,或与 AWS KMS EXTERNAL_MU 签名流程对接。 【计算公式】 - tr = SHAKE-256(raw_pk, 64) - M' = 0x00 || len(ctx) || ctx || message - mu = SHAKE-256(tr || M', 64) 【参数】 - public_key_spki_in_hex:公钥 hex(SPKI...4 params

[pqc_signature] 独立计算 ML-DSA 的 64 字节 mu 值(FIPS 204 Section 6.2)。 【用途】用于验证或调试 EXTERNAL_MU 模式的中间值,或与 AWS KMS EXTERNAL_MU 签名流程对接。 【计算公式】 - tr = SHAKE-256(raw_pk, 64) - M' = 0x00 || len(ctx) || ctx || message - mu = SHAKE-256(tr || M', 64) 【参数】 - public_key_spki_in_hex:公钥 hex(SPKI...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ML-DSA-44 · ML-DSA-65 · ML-DSA-87default: ML-DSA-65
context_in_hexstring
ML-DSA 上下文的十六进制字符串(可选,最大 255 字节)default:
message_in_hexstring
消息的十六进制字符串(空字符串表示空消息)default:
public_key_spki_in_hexstring
ML-DSA 公钥的十六进制字符串(SPKI DER 或裸公钥均可)default:
hybrid_kex[pqc_kem] 执行 X25519 + ML-KEM-768 混合密钥交换全流程演示。 【设计灵感】参考 IETF X-Wing 草案(draft-connolly-cfrg-xwing-kem)的思路,本工具实现的是通用拼接组合器(ecdh_ss || ml_kem_ss → HKDF-SHA256),并非 X-Wing 规范本身的组合器。 【参数】所有密钥参数均可选: - alice_x25519_private_key_pem / bob_x25519_private_key_pem:X25519 PEM 私钥 - alice_ml_ke...8 params

[pqc_kem] 执行 X25519 + ML-KEM-768 混合密钥交换全流程演示。 【设计灵感】参考 IETF X-Wing 草案(draft-connolly-cfrg-xwing-kem)的思路,本工具实现的是通用拼接组合器(ecdh_ss || ml_kem_ss → HKDF-SHA256),并非 X-Wing 规范本身的组合器。 【参数】所有密钥参数均可选: - alice_x25519_private_key_pem / bob_x25519_private_key_pem:X25519 PEM 私钥 - alice_ml_ke...

Parameters* required
alice_ml_kem_public_key_base64string
Alice 侧 ML-KEM 公钥的 Base64 字符串(raw 或 SPKI DER)default:
alice_ml_kem_secret_key_base64string
Alice 侧 ML-KEM 私钥的 Base64 字符串(raw 或 PKCS#8 DER)default:
alice_x25519_private_key_pemstring
Alice 侧 X25519 私钥的 PEM 文本default:
alice_x25519_public_key_pemstring
default:
bob_ml_kem_public_key_base64string
Bob 侧 ML-KEM 公钥的 Base64 字符串(raw 或 SPKI DER)default:
bob_ml_kem_secret_key_base64string
Bob 侧 ML-KEM 私钥的 Base64 字符串(raw 或 PKCS#8 DER)default:
bob_x25519_private_key_pemstring
Bob 侧 X25519 私钥的 PEM 文本default:
bob_x25519_public_key_pemstring
default:
cbor_encode[structured_message] 把 JSON 载荷编码为 CBOR 字节流(RFC 8949)。 【算法】CBOR 规范编码(RFC 8949 §4.2.1)或不定长教学编码(§3.2.2)。 【参数】 - json_payload:待编码的 JSON 文本(≤65536 字符),支持两类教学标记: {"$bytes": "<hex>"} 渲染为 byte string(major type 2); {"$tag": <n>, "value": …} 渲染为 tagged value(major type 6) - canonical:T...4 params

[structured_message] 把 JSON 载荷编码为 CBOR 字节流(RFC 8949)。 【算法】CBOR 规范编码(RFC 8949 §4.2.1)或不定长教学编码(§3.2.2)。 【参数】 - json_payload:待编码的 JSON 文本(≤65536 字符),支持两类教学标记: {"$bytes": "<hex>"} 渲染为 byte string(major type 2); {"$tag": <n>, "value": …} 渲染为 tagged value(major type 6) - canonical:T...

Parameters* required
canonicalboolean
True=RFC 8949 §4.2.1 规范编码(定长最短、map 键排序);与 prefer_indefinite 互斥default: true
coerce_integer_keysboolean
True 时形如 "-35"/"0" 的十进制字符串键渲染为 CBOR 整数键(如 Nitro protected 头 {1:-35})default: false
json_payloadstring
待编码的结构化消息 JSON 文本(≤65536 字符)。CBOR:{"$bytes":"<hex>"} 渲染 byte string、{"$tag":n,"value":…} 渲染 tagged value;DER:ASN.1 节点 DSL(一节点一主键,如 {"sequence":[{"oid":"1.2…"}]},形态清单见 der_encode 工具描述)default:
prefer_indefiniteboolean
True=不定长教学编码(字符串/数组/map 用 0x5f/0x7f/0x9f/0xbf + 0xff break)default: false
cbor_decode[structured_message] 把 CBOR 字节流解码为 JSON,并给出逐字段结构拆解树(RFC 8949)。 【算法】CBOR 解码,定长(§3.2.1)与不定长(§3.2.2)均容忍; 要求单数据项且逐字节闭合(尾随字节即拒绝)。 【参数】 - cbor_in_hex:CBOR 字节的十六进制字符串(1B~128KB) 【输出】decoded_json(bytes→{"hex":…}、tag→{"tag","value"}、 语义 tag→date_time/uuid 等标注形式)、decoded_type、decoded_len...1 params

[structured_message] 把 CBOR 字节流解码为 JSON,并给出逐字段结构拆解树(RFC 8949)。 【算法】CBOR 解码,定长(§3.2.1)与不定长(§3.2.2)均容忍; 要求单数据项且逐字节闭合(尾随字节即拒绝)。 【参数】 - cbor_in_hex:CBOR 字节的十六进制字符串(1B~128KB) 【输出】decoded_json(bytes→{"hex":…}、tag→{"tag","value"}、 语义 tag→date_time/uuid 等标注形式)、decoded_type、decoded_len...

Parameters* required
cbor_in_hexstring
CBOR 字节的十六进制字符串(1B~128KB,单数据项且逐字节闭合)default:
cose_sign1_sign[cose_sign1] 构造并签名 COSE_Sign1 消息(RFC 9052 §4.2,算法 RFC 9053)。 【算法】ES256(-7, P-256+SHA-256) / ES384(-35, P-384+SHA-384) / ES512(-36, P-521+SHA-512) / EdDSA(-8, Ed25519)。ES 系签名为裸 r||s (坐标左补零到曲线宽度,ES512 坐标 66 字节、r||s 共 132 字节)。 【参数】 - algorithm:ES256 / ES384 / ES512 / EdDSA - ecc_...6 params

[cose_sign1] 构造并签名 COSE_Sign1 消息(RFC 9052 §4.2,算法 RFC 9053)。 【算法】ES256(-7, P-256+SHA-256) / ES384(-35, P-384+SHA-384) / ES512(-36, P-521+SHA-512) / EdDSA(-8, Ed25519)。ES 系签名为裸 r||s (坐标左补零到曲线宽度,ES512 坐标 66 字节、r||s 共 132 字节)。 【参数】 - algorithm:ES256 / ES384 / ES512 / EdDSA - ecc_...

Parameters* required
algorithmstring
密码算法名称(具体可选值因工具而异,见工具描述)one of ES256 · ES384 · ES512 · EdDSAdefault: ES384
detachedboolean
True 时载荷带外(COSE payload 置 null / CMS eContent 缺省),验签必须提供外部内容;默认 Falsedefault: false
ecc_private_key_in_pemstring
ECC 私钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
ecc_private_key_passwordstring
ECC 私钥的加密密码(原始字符串,非编码格式)default:
external_aad_in_hexstring
外部 AAD 的十六进制字符串(可选;参与 Sig_structure 但不出现在消息里)default:
payload_in_hexstring
COSE Sign1 待签 payload 的十六进制字符串(1B~256KB)default:
cose_sign1_verify[cose_sign1] 验证 COSE_Sign1 签名(RFC 9052 §4.4 Sig_structure 重构验签)。 【算法】按 protected 头 alg 声明分派:-7/-35/-36(ES,裸 r||s → DER) 与 -8(Ed25519)。 【参数】 - cose_sign1_in_hex:COSE_Sign1 消息(≤128KB,hex) - ecc_public_key_in_pem:验签公钥 PEM。留空时从 payload 的 certificate 字段提取公钥(复刻 KMS 验 Nitro attestati...4 params

[cose_sign1] 验证 COSE_Sign1 签名(RFC 9052 §4.4 Sig_structure 重构验签)。 【算法】按 protected 头 alg 声明分派:-7/-35/-36(ES,裸 r||s → DER) 与 -8(Ed25519)。 【参数】 - cose_sign1_in_hex:COSE_Sign1 消息(≤128KB,hex) - ecc_public_key_in_pem:验签公钥 PEM。留空时从 payload 的 certificate 字段提取公钥(复刻 KMS 验 Nitro attestati...

Parameters* required
cose_sign1_in_hexstring
COSE_Sign1 消息的十六进制字符串(≤128KB,4 元素数组)default:
detached_payload_in_hexstring
detached 消息的外部载荷十六进制字符串(消息 payload 为 null 时验签必填,1B~256KB)default:
ecc_public_key_in_pemstring
ECC 公钥的 PEM 文本(含 BEGIN/END 头尾的 Base64 编码文本)default:
external_aad_in_hexstring
外部 AAD 的十六进制字符串(可选;参与 Sig_structure 但不出现在消息里)default:
cose_sign1_parse[cose_sign1] 纯拆解 COSE_Sign1 消息,不验签(RFC 9052 §4.2)。 【算法】CBOR 四元素数组 [protected, unprotected, payload, signature] 逐字段拆解;protected 头解码出 alg;payload 尝试嵌套 CBOR 解码。 【参数】 - cose_sign1_in_hex:COSE_Sign1 消息(≤128KB,hex) 【输出】protected_in_hex、protected_header、unprotected_header、 payload_in...1 params

[cose_sign1] 纯拆解 COSE_Sign1 消息,不验签(RFC 9052 §4.2)。 【算法】CBOR 四元素数组 [protected, unprotected, payload, signature] 逐字段拆解;protected 头解码出 alg;payload 尝试嵌套 CBOR 解码。 【参数】 - cose_sign1_in_hex:COSE_Sign1 消息(≤128KB,hex) 【输出】protected_in_hex、protected_header、unprotected_header、 payload_in...

Parameters* required
cose_sign1_in_hexstring
COSE_Sign1 消息的十六进制字符串(≤128KB,4 元素数组)default:
cms_enveloped_encrypt[cms_enveloped] 构造 CMS EnvelopedData 信封(RFC 5652 §6,KeyTransRecipientInfo)。 【算法】密钥封装 RSAES-OAEP(RFC 8017 / RFC 3560 参数:hashFunc + MGF1 同哈希 + 空 pSource)或 RSAES-PKCS1-v1_5;内容加密 AES-128/256-CBC (RFC 3565,PKCS#7 填充)或 AES-128/256-GCM(RFC 5084 只为 authEnvelopedData 定义 GCM:RFC 5083 形态...4 params

[cms_enveloped] 构造 CMS EnvelopedData 信封(RFC 5652 §6,KeyTransRecipientInfo)。 【算法】密钥封装 RSAES-OAEP(RFC 8017 / RFC 3560 参数:hashFunc + MGF1 同哈希 + 空 pSource)或 RSAES-PKCS1-v1_5;内容加密 AES-128/256-CBC (RFC 3565,PKCS#7 填充)或 AES-128/256-GCM(RFC 5084 只为 authEnvelopedData 定义 GCM:RFC 5083 形态...

Parameters* required
content_encryption_algorithmstring
内容加密算法,可选值:AES256_CBC / AES128_CBC(RFC 3565)/ AES256_GCM / AES128_GCM(RFC 5084,产出 authEnvelopedData 形态 RFC 5083)one of AES256_CBC · AES128_CBC · AES256_GCM · AES128_GCMdefault: AES256_CBC
key_wrap_algorithmstring
密钥封装算法,可选值:RSAES_OAEP_SHA_256 / RSAES_OAEP_SHA_1 / RSAES_OAEP_SHA_224 / RSAES_OAEP_SHA_384 / RSAES_OAEP_SHA_512 / RSAES_PKCS1_V1_5one of RSAES_OAEP_SHA_256 · RSAES_OAEP_SHA_1 · RSAES_OAEP_SHA_224 · RSAES_OAEP_SHA_384 · RSAES_OAEP_SHA_512 · RSAES_PKCS1_V1_5default: RSAES_OAEP_SHA_256
plain_data_in_hexstring
明文的十六进制字符串default:
recipient_certificate_in_pemstring
收件人 RSA 证书的 PEM 文本(含 BEGIN/END CERTIFICATE 头尾)default:
cms_enveloped_decrypt[cms_enveloped] 解密 CMS EnvelopedData(RFC 5652 §6)/ authEnvelopedData(RFC 5083), BER/DER 输入均容忍。 【算法】按消息声明还原算法:rsaesOaep 参数(hashFunc/MGF1/pSource, RFC 3560)重建 OAEP padding,内容算法按 OID 分派(CBC 去 PKCS#7 填充 / GCM 取独立 mac 字段验 AEAD,长度必须等于声明的 aes-ICVlen, authAttrs 存在时以 universal SET OF D...3 params

[cms_enveloped] 解密 CMS EnvelopedData(RFC 5652 §6)/ authEnvelopedData(RFC 5083), BER/DER 输入均容忍。 【算法】按消息声明还原算法:rsaesOaep 参数(hashFunc/MGF1/pSource, RFC 3560)重建 OAEP padding,内容算法按 OID 分派(CBC 去 PKCS#7 填充 / GCM 取独立 mac 字段验 AEAD,长度必须等于声明的 aes-ICVlen, authAttrs 存在时以 universal SET OF D...

Parameters* required
cms_in_hexstring
CMS 信封 DER/BER 编码的十六进制字符串(≤16MB;KMS 回包这类 BER 不定长编码可直接输入)default:
recipient_private_key_in_pemstring
收件人 RSA 私钥的 PEM 文本(含 BEGIN/END 头尾)default:
recipient_private_key_passwordstring
收件人私钥的加密密码(原始字符串,未加密则留空)default:
cms_enveloped_parse[cms_enveloped] 纯拆解 CMS EnvelopedData(RFC 5652 §6)/ authEnvelopedData(RFC 5083), 不解密。 【算法】自写 ASN.1 TLV walker(X.690 BER 容忍)出结构树 + asn1crypto 出结构化字段,两层对照。 【参数】 - cms_in_hex:信封 DER/BER 的十六进制(≤16MB) 【输出】content_type_oid(envelopedData = 1.2.840.113549.1.7.3 / authEnvelopedData = 1...1 params

[cms_enveloped] 纯拆解 CMS EnvelopedData(RFC 5652 §6)/ authEnvelopedData(RFC 5083), 不解密。 【算法】自写 ASN.1 TLV walker(X.690 BER 容忍)出结构树 + asn1crypto 出结构化字段,两层对照。 【参数】 - cms_in_hex:信封 DER/BER 的十六进制(≤16MB) 【输出】content_type_oid(envelopedData = 1.2.840.113549.1.7.3 / authEnvelopedData = 1...

Parameters* required
cms_in_hexstring
CMS 信封 DER/BER 编码的十六进制字符串(≤16MB;KMS 回包这类 BER 不定长编码可直接输入)default:
cms_signed_sign[cms_signed] 构造 CMS SignedData 签名消息(RFC 5652 §5)。 【算法】RSA PKCS#1 v1.5 或 ECDSA × SHA224/256/384/512; authenticatedAttributes 自动携带 contentType + messageDigest + signingTime + SMIMECapabilities,签名按 §5.4 计算在 signedAttrs 的 EXPLICIT SET OF(0x31)DER 重编码上(untag 规则)。 【参数】 - signer_cert...6 params

[cms_signed] 构造 CMS SignedData 签名消息(RFC 5652 §5)。 【算法】RSA PKCS#1 v1.5 或 ECDSA × SHA224/256/384/512; authenticatedAttributes 自动携带 contentType + messageDigest + signingTime + SMIMECapabilities,签名按 §5.4 计算在 signedAttrs 的 EXPLICIT SET OF(0x31)DER 重编码上(untag 规则)。 【参数】 - signer_cert...

Parameters* required
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
detachedboolean
True 时载荷带外(COSE payload 置 null / CMS eContent 缺省),验签必须提供外部内容;默认 Falsedefault: false
hash_algorithmstring
哈希算法名称,可选值:Sha1 / Sha224 / Sha256 / Sha384 / Sha512(ECC 不支持 Sm3)one of Sha256 · Sha384 · Sha512 · Sha224 · Sha1default: Sha256
signer_certificate_in_pemstring
签名者证书的 PEM 文本(嵌入 certificates 集,验签方可按 sid 定位)default:
signer_private_key_in_pemstring
签名者私钥的 PEM 文本(含 BEGIN/END 头尾)default:
signer_private_key_passwordstring
签名者私钥的加密密码(原始字符串,未加密则留空)default:
cms_signed_verify[cms_signed] 验签 CMS SignedData(RFC 5652 §5),BER/DER 输入均容忍。 【算法】按消息声明还原 digestAlgorithm / signatureAlgorithm: RSA PKCS#1 v1.5、ECDSA、Ed25519、SHA1 消息均可验;rsassa_pss 按 RFC 8017 A.2.3 参数(hashFunc / MGF1 / saltLength)重建 padding;signedAttrs 验签体是 EXPLICIT SET OF DER 重编码(§5.4), BER 消息先规...3 params

[cms_signed] 验签 CMS SignedData(RFC 5652 §5),BER/DER 输入均容忍。 【算法】按消息声明还原 digestAlgorithm / signatureAlgorithm: RSA PKCS#1 v1.5、ECDSA、Ed25519、SHA1 消息均可验;rsassa_pss 按 RFC 8017 A.2.3 参数(hashFunc / MGF1 / saltLength)重建 padding;signedAttrs 验签体是 EXPLICIT SET OF DER 重编码(§5.4), BER 消息先规...

Parameters* required
cms_in_hexstring
CMS 信封 DER/BER 编码的十六进制字符串(≤16MB;KMS 回包这类 BER 不定长编码可直接输入)default:
data_in_hexstring
数据的十六进制字符串。RAW 模式为消息原文 Hex,DIGEST 模式为哈希摘要 Hexdefault:
signer_certificate_in_pemstring
签名者证书的 PEM 文本(嵌入 certificates 集,验签方可按 sid 定位)default:
asn1_parse[structured_message] 解剖任意 ASN.1/BER 字节的 TLV 结构,给出逐节点拆解树与 DER 判定(X.690)。 【算法】ASN.1 显微镜:定长(§8.1.3.3-5)/不定长 BER(§8.1.3.6,0x80+EOC)/ 分段八位串(§8.7)/高 tag 号(§8.1.2.4)均容忍;要求单根逐字节闭合。 【参数】 - asn1_in_hex:ASN.1/BER 字节的十六进制字符串(1B~128KB) 【输出】der_conformant、ber_features(walker 检出的 BER 特征清单)、...1 params

[structured_message] 解剖任意 ASN.1/BER 字节的 TLV 结构,给出逐节点拆解树与 DER 判定(X.690)。 【算法】ASN.1 显微镜:定长(§8.1.3.3-5)/不定长 BER(§8.1.3.6,0x80+EOC)/ 分段八位串(§8.7)/高 tag 号(§8.1.2.4)均容忍;要求单根逐字节闭合。 【参数】 - asn1_in_hex:ASN.1/BER 字节的十六进制字符串(1B~128KB) 【输出】der_conformant、ber_features(walker 检出的 BER 特征清单)、...

Parameters* required
asn1_in_hexstring
ASN.1/BER 字节的十六进制字符串(1B~128KB,单根且逐字节闭合;BER 不定长/分段八位串/高 tag 号均容忍)default:
der_encode[structured_message] 把 JSON 节点 DSL 编码为 DER 字节(X.690)。 【算法】DER 规范编码(定长最短 + SET OF 排序);或教学 BER 不定长 (构造容器 0x80 + EOC,复刻 AWS KMS 回包形态)。 【参数】 - json_payload:节点 DSL(≤65536 字符),一节点一主键: {"integer": n}/{"enumerated": n}/{"boolean": true}/{"null": true}; {"oid": "1.2.840…"}(首弧 0/1 时次弧≤3...3 params

[structured_message] 把 JSON 节点 DSL 编码为 DER 字节(X.690)。 【算法】DER 规范编码(定长最短 + SET OF 排序);或教学 BER 不定长 (构造容器 0x80 + EOC,复刻 AWS KMS 回包形态)。 【参数】 - json_payload:节点 DSL(≤65536 字符),一节点一主键: {"integer": n}/{"enumerated": n}/{"boolean": true}/{"null": true}; {"oid": "1.2.840…"}(首弧 0/1 时次弧≤3...

Parameters* required
ber_indefiniteboolean
True=构造容器不定长 BER(0x80 + 两字节 EOC 递归,原语保持定长;AWS KMS 回包同款形态)default: false
derboolean
True=规范 DER(X.690 §10 定长最短 + SET OF 按 §11.6 排序);与 ber_indefinite 互斥default: true
json_payloadstring
待编码的结构化消息 JSON 文本(≤65536 字符)。CBOR:{"$bytes":"<hex>"} 渲染 byte string、{"$tag":n,"value":…} 渲染 tagged value;DER:ASN.1 节点 DSL(一节点一主键,如 {"sequence":[{"oid":"1.2…"}]},形态清单见 der_encode 工具描述)default:

Sponsors

Readme

CipherHUB MCP Server

MCP License Tools Blog

CipherHUB Cryptography Toolkit MCP server

Production-grade cryptography toolkit exposing 55 MCP tools drawn from 57 cryptographic operations available through the REST API and Web UI. Built and operated by Yang X. CHEN — the engineering decisions behind this service are written up on the blog at cipherhub.cloud.

Overview

CipherHUB enables AI agents to perform cryptographic operations without implementing algorithms themselves. It covers:


View the full README on GitHub

Details

Repository
github.com/bowenerchen/cipherhub-mcp-server
Transport
HTTP
Registry
MCP registry, active
Resources
8
Prompts
6
Tools verified
Nov 6, 2026