自 sgcWebSockets Standard 起随附赠送 也可单独购买

sgcCrypto — 面向 Delphi 和 C++ Builder 的现代加密库

43 个纯 Object Pascal 单元,没有组件,没有设计时占用:传入 TBytes,取回 TBytes。AES-GCM 和 ChaCha20-Poly1305 用于加密,SHA-3/BLAKE2/Argon2 用于哈希,Ed25519/X25519/RSA 用于签名和密钥交换,X.509 证书解析与生成,以及后量子 ML-KEM、ML-DSA 和 SLH-DSA,它们的密钥和证书如今写入与其他算法相同的 X.509、PKCS#8 和 PEM 文件。该产品包还带有一个用同样的 Object Pascal 编写的 TLS 1.3 与 TLS 1.2 引擎,通过 iohNativeTLS 选择,默认启用 X25519MLKEM768 混合密钥交换。每个原语都直接在您添加到 uses 子句的单元中实现:没有外部 DLL,没有 OpenSSL 绑定,同一份源代码从 Delphi 7 到 RAD Studio 13 编译不变。sgcCrypto 随 sgcWebSockets Standard、Professional 和 Enterprise 免费提供,也作为独立产品出售(捆绑 sgcWebSockets Core 运行时),供只拥有 Core 的客户使用。

完整源代码
Win32、Win64、Linux64、macOS、iOS 和 Android
Delphi 7 → 13,保持不变
零外部依赖
43 个纯函数 sgcCrypto_*.pas 没有组件。调用函数,取回字节数据。
AES-GCM sgcAES_GCM_Encrypt
ChaCha20-Poly1305 sgcChaCha20Poly1305_Encrypt
SHA-3 / SHAKE sgcSHA3_256
Ed25519 / X25519 sgcEd25519_Sign
RSA-PSS sgcRSA_PSS_Sign
ML-KEM / ML-DSA sgcMLKEM_Encapsulate
X.509 / CSR sgcX509_CreateSelfSigned

两分钟了解 sgcCrypto

面向 Delphi 的现代密码学:AES-GCM、SHA-3、Ed25519、X.509 和后量子 ML-KEM,无需随应用分发 OpenSSL DLL。

43 纯函数单元 sgcCrypto_*.pas,零组件
6 能力分类 对称加密、哈希、签名、PKI、后量子、OTP
6 目标平台 Win32、Win64、Linux64、macOS、iOS、Android
3 后量子 FIPS 标准 ML-KEM (203)、ML-DSA (204)、SLH-DSA (205)
2 拥有方式 包含在某个版本中,或单独购买

购买前值得了解的三件事

sgcCrypto 是什么、您是否已经拥有它、它可以在哪里运行。这三个答案都很简短。

sgcCrypto 是纯函数,不是组件

43 个单元中的每一个都只导出普通的函数和过程。没有 Tsgc* 类,没有任何东西会被 RegisterComponents,也没有 sgcCrypto_Reg.pas。您调用 sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) 的方式,和调用任何 RTL 函数一样,可以来自窗体、服务、控制台程序或线程。

每份许可证都附带完整源代码,因此这些原语可以在您自己的调试器中单步执行,而不会消失在二进制文件或 DLL 里。

版本重叠

已经拥有某个 sgcWebSockets 版本?

sgcCrypto 已包含在 sgcWebSockets Standard、Professional 和 Enterprise 中,以及 All-Access 中,无需额外付费。如果您已经持有 Standard 及以上任意版本的许可证,您已经拥有全部 43 个单元,无需再购买。

sgcCrypto 也以独立产品的形式存在,适用于相反的情况:您只拥有 sgcWebSockets Core,或者根本没有 sgcWebSockets 许可证,但又想要这些加密单元,而不必购买完整版本的许可证。

平台范围

sgcCrypto 不带平台限制

与 AI 或语音相关的包不同,sgcVer.inc 中没有任何设置将 sgcCrypto 限制在 Windows 上。这些单元都是普通的 Object Pascal 运算代码,因此同一份源代码可以为 Win32、Win64、Linux64、macOS、iOS 和 Android 编译。

唯一一个感知平台的单元 sgcCrypto_Random,会根据目标平台选择相应的 CSPRNG 后端(Windows 上是 BCryptGenRandom,其他平台则是 /dev/urandom),但都隐藏在同一个 sgcRandomBytes 调用之后,因此您的代码永远不需要根据平台分支。

43 个单元,六大能力分类

每个单元都是已编译的 Object Pascal 代码,可从任何 Delphi 7 至 13 或 C++ Builder 项目中调用。没有外部 DLL,没有 OpenSSL 绑定,也没有代码生成器:这些原语直接在您添加到 uses 子句的单元中实现。

对称加密5 个单元

AES、ChaCha20 及其上层的 AEAD 构造

sgcCrypto_AES 涵盖 CBC、GCM 和 CTR;sgcCrypto_Modes 增加了 ECB、OFB、CFB、密文窃取 CTS、AES-CCM,以及 AES Key Wrap / 带填充的 Key Wrap(RFC 3394 / 5649);sgcCrypto_CMAC 是 AES-CMAC 和 AES-GMAC。sgcCrypto_ChaCha 实现了 ChaCha20、XChaCha20、Salsa20 和 XSalsa20,sgcCrypto_Poly1305 将 Poly1305 与它们配对,构成 RFC 8439 中的 ChaCha20-Poly1305 和 XChaCha20-Poly1305 AEAD 密码。AES-CCM 是 Zigbee、蓝牙和 TLS CCM 密码套件按名称指定使用的 AEAD,因为它除了分组密码本身之外别无所需;而 CBC 和 ECB 都可以配合您所选择的填充方案使用,PKCS#7、ANSI X9.23、ISO 7816-4 及其余方案,供您在需要读取另一系统所写数据的那天使用。sgcAES_GCM_Decrypt 和 Poly1305 验证函数都以恒定时间比较认证标签,验证失败时拒绝返回明文。

哈希与 KDF11 个单元

SHA-2、SHA-3、BLAKE2,以及所有主流 KDF

sgcCrypto_SHA2 和 sgcCrypto_Keccak 涵盖 SHA-1/2、SHA-3、SHAKE、cSHAKE 和 KMAC;sgcCrypto_Blake2b 和 sgcCrypto_Blake2s 增加了 BLAKE2。sgcCrypto_HMAC 是带密钥的消息认证。用于将密码转换为密钥的有:sgcCrypto_KDF(PBKDF2)、sgcCrypto_HKDF、sgcCrypto_Scrypt,以及实现了全部三种 Argon2 变体(d、i 和 id,密码哈希竞赛的获胜者)的 sgcCrypto_Argon2。sgcCrypto_SipHash 为哈希表键提供快速的带密钥哈希,sgcCrypto_TLSH 则是一种带相似度距离函数的模糊哈希,而非密码学摘要,可用于近似重复检测。

签名与密钥交换10 个单元

Ed25519/Ed448、X25519/X448、secp256k1、Brainpool 和 RSA

sgcCrypto_Ed25519/Ed448 负责签名和验证;sgcCrypto_X25519/X448 完成相应的 Diffie-Hellman 密钥交换。sgcCrypto_ECCurves 增加了基于七条曲线的 ECDSA 与 ECDH:secp256k1、三条 Brainpool 曲线以及 NIST P-256/P-384/P-521,并采用 RFC 6979 确定性 nonce 以及原始或 DER 格式的签名,此外还内置了 BIP-340 Schnorr 签名,提供 Taproot、Nostr 和 Lightning 所需的仅 x 坐标公钥。sgcCrypto_EC 则是面向 JOSE 的姊妹单元:直接对 JWS 进行签名和验证,支持 ES256/384/512。sgcCrypto_RSA 可直接从 PEM 密钥验证 PKCS#1 v1.5 和 PSS 签名,sgcCrypto_RSA_Keys 更进一步,支持任意位长的密钥生成、OAEP 与 PKCS#1 v1.5 加密,以及 PKCS#1 和 PKCS#8 BEGIN PRIVATE KEY 两种形式的 DER/PEM 导出。RSA 和 EC 密钥导入与导出同样便捷,支持 DER 或 PEM 格式,因此生成一次的密钥可以被保存并重新载入,而不必只在进程存活期间存在。sgcCrypto_ECIES 通过对 X25519 公钥进行混合封装/解封加密来补全这一分类。

sgcCrypto_Ed25519 sgcCrypto_ECCurves sgcCrypto_RSA_Keys RFC 8032 · RFC 7748 · RFC 8017
PKI5 个单元

读取、验证和生成 X.509 证书

sgcCrypto_ASN1 读取 DER 和 PEM,并解析 PKCS#1/SEC 1 密钥;sgcCrypto_DER 编写证书或 CSR 所需的每一个标签。sgcCrypto_X509 解析证书,验证它是否由指定颁发者签发,遍历并验证证书链,验证 CSR,还能解析 CRL 以检查吊销状态。sgcCrypto_X509_Gen 可从零生成自签名证书或 PKCS#10 CSR,CA 则通过 sgcX509_CreateSigned 或 sgcX509_CreateSignedFromCSR 签发:完整的主题和颁发者可分辨名称、有效期、带路径长度限制的 CA 标志、密钥用途标志、扩展密钥用途 OID,以及主题备用名称,其中 IP 地址 SAN 现在接受任意 RFC 4291 文本形式的 IPv6,URI SAN 则面向 SPIFFE 风格的服务身份。

签名不再局限于 RSA 和 EC。sgcX509_MLDSAKey 和 sgcX509_SLHDSAKey 为 sgcX509_CreateSelfSignedEx 和 sgcX509_CreateCSREx 包装一个后量子密钥,因此证书或 CSR 可以用 ML-DSA 或 SLH-DSA 签名。CA 还可以为 ML-KEM 公钥签发证书(RFC 9935),但 ML-KEM 无法签名,所以必须用其他方式证明私钥持有。在读取一侧,TsgcX509PublicKeyType 新增了 x509pkMLDSA、x509pkSLHDSA 和 x509pkMLKEM,而 sgcX509_VerifyChain 现在会强制执行 basicConstraints 路径长度以及 nameConstraints 扩展,覆盖 dNSName、iPAddress、rfc822Name、uniformResourceIdentifier 和 directoryName,生成一侧则由 PermittedDNSNames、ExcludedDNSNames、PermittedIPRanges 和 ExcludedIPRanges 写入这些约束。EC 证书的体积依然大约只有 RSA 证书的三分之一,验证速度也快得多,这正是新部署纷纷选择它的原因。

sgcCrypto_X509 sgcCrypto_X509_Gen sgcCrypto_ASN1 RFC 5280 · RFC 2986 · RFC 9881 · RFC 9909 · RFC 9935
后量子6 个单元

ML-KEM、ML-DSA 和 SLH-DSA,外加一个混合组合器

sgcCrypto_MLKEM 是 FIPS 203 密钥封装,提供三种参数集(ML-KEM-512/768/1024),对畸形密文采用隐式拒绝。sgcCrypto_MLDSA 是 FIPS 204 签名,ML-DSA-44/65/87。sgcCrypto_SLHDSA 是 FIPS 205,覆盖全部六种 SHAKE 参数集:128s、128f、192s、192f、256s、256f。由于单独使用 ML-KEM 意味着完全押注在一个比椭圆曲线更年轻的格假设上,sgcCrypto_MLKEM_Hybrid 将 X25519 密钥和 ML-KEM 密钥组合成一个共享密钥,因此结果的安全性永远不会弱于经典的那一半,这也是整个行业正在趋同采用的迁移方案。

同一个单元还实现了 X-Wing(draft-connolly-cfrg-xwing-kem-10),把 X25519 与 ML-KEM-768 合成为一个 KEM:公钥 1216 字节,私钥 32 字节(即种子),密文 1120 字节,共享密钥 32 字节,通过 sgcXWing_GenerateKeyPair、sgcXWing_Encapsulate 和 sgcXWing_Decapsulate 使用。它还为 X25519MLKEM768、SecP256r1MLKEM768 和 SecP384r1MLKEM1024(IANA 代码点 0x11EC、0x11EB 和 0x11ED)构建 RFC 10024 的 TLS 1.3 混合密钥共享。这三者不是独立的 KEM,它们只用于构建 TLS 密钥共享。

三种算法现在都能以 X.509 SubjectPublicKeyInfo、PKCS#8 OneAsymmetricKey 和 PEM 读写密钥,因此后量子密钥与 RSA 或 EC 密钥存放在同样的文件里。ML-DSA 和 ML-KEM 私钥有三种形式,由 TsgcPQCPrivateKeyFormat 选择:pqkfSeed 只写入种子(ML-DSA 为 32 字节,ML-KEM 为 64 字节的 d||z 种子),pqkfExpanded 写入展开后的密钥,pqkfBoth 两者都带。SLH-DSA 只有一种私钥形式。sgcMLDSA_GenerateKeyPairAndSeed 和 sgcMLKEM_GenerateKeyPairAndSeed 在返回密钥对的同时交回种子,因此生成之后就能直接写出种子形式的文件。

sgcCrypto_MLKEM sgcCrypto_MLDSA sgcCrypto_SLHDSA sgcCrypto_MLKEM_Hybrid FIPS 203 · FIPS 204 · FIPS 205 · RFC 10024
OTP 与杂项6 个单元

一次性密码、编码以及加密的 ZIP 条目

sgcCrypto_OTP 生成并验证 HOTP 和 TOTP 验证码,也就是身份验证器应用显示的那种六位数验证码,并使用恒定时间的验证窗口来吸收时钟偏差。sgcCrypto_Encoding 保存了库中其余部分共用的工具函数:恒定时间比较、安全缓冲区清零、十六进制、Base64url 和 Base32。sgcCrypto_Zip_AE2 实现了 WinZip AES 加密(AE-1 和 AE-2),用于加密单个 ZIP 条目。sgcCrypto_Random 是库中其他位置生成的每个密钥和 nonce 背后的跨平台 CSPRNG,sgcCrypto_Legacy 则保留了 MD4/MD5/HMAC-MD5/DES-ECB,仅用于与旧格式互操作,不建议用于新设计。

用同样的 Object Pascal 写成的 TLS 1.3 与 TLS 1.2 引擎

这个产品包还带有一个写在 sgcCrypto 原语之上的 TLS 1.3 与 TLS 1.2 实现。它位于 sgcSSL_NativeTLS* 单元中,而不是 sgcCrypto_*,因此不计入那 43 个单元,但凡是 sgcCrypto 能用的地方它都随之提供。在任意 sgcWebSockets 客户端或服务器上设置一个属性即可选用,任何平台上都无需部署任何东西。

// 客户端:不需要 OpenSSL,不需要 SChannel,也不需要平台 TLS 栈
WSClient.TLS := True;
WSClient.TLSOptions.IOHandler := iohNativeTLS;
// 允许的最低版本:tls1_2 会协商 TLS 1.3 或 TLS 1.2,tls1_3 则只允许 TLS 1.3
WSClient.TLSOptions.Version := tls1_2;
WSClient.TLSOptions.RootCertFile := 'roots.pem';
// Optional: also trust the roots the operating system already trusts
WSClient.TLSOptions.NativeTLS_Options.UseSystemRoots := True;

// 两个列表都是 OpenSSL 风格,用冒号分隔。下面这个分组列表是默认值。
WSClient.TLSOptions.NativeTLS_Options.Groups :=
  'X25519MLKEM768:X25519:secp256r1:secp384r1';
// 这里只写 TLS 1.3 套件就表示仅使用 TLS 1.3。留空则使用默认值,
// 默认值会加上带 AES-GCM 和 ChaCha20-Poly1305 的 TLS 1.2 ECDHE 套件。
WSClient.TLSOptions.NativeTLS_Options.CipherSuites :=
  'TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256';

// 服务器:在 SSLOptions 上用同一个开关,IOCP 和 EPOLL 引擎同样适用
WSServer.SSLOptions.IOHandler := iohNativeTLS;
开箱即用的后量子密钥交换

默认组列表以 X25519MLKEM768 开头,也就是 RFC 10024 中 X25519 与 ML-KEM-768 的混合组,因此只要对端支持,握手无需任何配置就已经是后量子的。同一个列表上还可以使用 SecP256r1MLKEM768 和 SecP384r1MLKEM1024。

任何目标平台都无需部署

没有 libssl,没有 libcrypto,没有 SChannel,也没有平台 TLS 栈,在 Win32、Win64、Linux64、macOS、iOS 和 Android 上都是同一份 Object Pascal。在客户端设置 TLSOptions.IOHandler := iohNativeTLS,在服务器设置 SSLOptions.IOHandler := iohNativeTLS,IOCP 和 EPOLL 服务器引擎同样支持。

本机已经信任的根证书

将 NativeTLS_Options.UseSystemRoots 设为 True,引擎就会把操作系统的信任根加入 RootCertFile:在 Windows 上是 ROOT 存储,在其他所有平台上是在标准位置中找到的第一个 CA 证书包文件。它绝不会读取 macOS 或 iOS 的钥匙串,也不会读取 Android 的证书存储。它默认关闭,因此信任锚点完全由 RootCertFile 决定。在服务器上,同一属性适用于它所验证的客户端证书。

切换之前先了解它的限制

该引擎只支持 TLS 1.3 和 TLS 1.2,不支持 TLS 1.1、TLS 1.0 或 SSL,并且后量子混合分组仅存在于 TLS 1.3 中,因此 TLS 1.2 连接使用 X25519、secp256r1 或 secp384r1。没有会话恢复,也没有 PSK,没有 0-RTT,没有 QUIC。不检查吊销状态和证书策略,并且组件事件 OnSSLVerifyPeer 对它不可用,引擎有自己的验证钩子。如果您需要其中任何一项,请继续使用 OpenSSL 或某个平台后端。

没有组件,没有对象查看器

将一个单元添加到 uses 中,然后调用一个函数。下面的每一次调用都来自 43 个单元中的不同单元,涵盖对称加密、哈希、签名和后量子。

uses
  sgcCrypto_Random, sgcCrypto_AES, sgcCrypto_Keccak, sgcCrypto_Ed25519,
  sgcCrypto_MLKEM;

var
  vKey, vIV, vPlain, vAAD, vTag, vCipher: TBytes;
  vDigest, vSeed, vSignature, vMessage: TBytes;
  vPublicKey, vPrivateKey, vSharedSecret, vCiphertext: TBytes;
begin
  // AES-256-GCM: authenticated encryption in one call
  vKey    := sgcRandomBytes(32);
  vIV     := sgcRandomBytes(12);
  vPlain  := TEncoding.UTF8.GetBytes('confidential payload');
  vCipher := sgcAES_GCM_Encrypt(vKey, vIV, vPlain, vAAD, vTag);

  // SHA-3-256, one call, no context object to manage
  vDigest := sgcSHA3_256(vPlain);

  // Ed25519: sign, then verify
  vSeed      := sgcRandomBytes(32);
  vMessage   := TEncoding.UTF8.GetBytes('sign me');
  vSignature := sgcEd25519_Sign(vSeed, vMessage);

  // ML-KEM-768: post-quantum key encapsulation (FIPS 203)
  sgcMLKEM_GenerateKeyPair(mlkem768, vPublicKey, vPrivateKey);
  sgcMLKEM_Encapsulate(mlkem768, vPublicKey, vCiphertext, vSharedSecret);
end;
// includes: sgcCrypto_Random.hpp, sgcCrypto_AES.hpp, sgcCrypto_Keccak.hpp,
// sgcCrypto_Ed25519.hpp, sgcCrypto_MLKEM.hpp

// AES-256-GCM: authenticated encryption in one call
TBytes vKey    = sgcRandomBytes(32);
TBytes vIV     = sgcRandomBytes(12);
TBytes vAAD, vTag;
TBytes vPlain  = TEncoding::UTF8->GetBytes("confidential payload");
TBytes vCipher = sgcAES_GCM_Encrypt(vKey, vIV, vPlain, vAAD, vTag);

// SHA-3-256, one call, no context object to manage
TBytes vDigest = sgcSHA3_256(vPlain);

// Ed25519: sign, then verify
TBytes vSeed      = sgcRandomBytes(32);
TBytes vMessage   = TEncoding::UTF8->GetBytes("sign me");
TBytes vSignature = sgcEd25519_Sign(vSeed, vMessage);

// ML-KEM-768: post-quantum key encapsulation (FIPS 203)
TBytes vPublicKey, vPrivateKey, vSharedSecret, vCiphertext;
sgcMLKEM_GenerateKeyPair(mlkem768, vPublicKey, vPrivateKey);
sgcMLKEM_Encapsulate(mlkem768, vPublicKey, vCiphertext, vSharedSecret);
在关键之处保持恒定时间

标签检查、HOTP/TOTP 验证以及 sgcConstantTimeEquals 都以恒定时间进行比较,对机密数据的处理也是如此。AES 运行在位切片内核上,从不用机密字节索引内存,也从不依据它分支;GHASH 在掩码下相乘;RSA 私钥操作会先做盲化,并在返回任何结果之前用公钥指数进行检查。ECDSA 签名、ECDH 和 EC 密钥生成使用恒定时间标量乘法,Ed25519 签名则以固定窗口读取标量,并使用完备加法公式。

隐式拒绝,以及先检查输入

长度正确但无法解密的密文会得到一个伪随机密钥,而不是错误,这就是 FIPS 203 所规定的隐式拒绝,因此攻击者无法从中获知任何信息。格式错误的公钥、长度不对的密文或密钥,以及未通过哈希检查的私钥,都会在任何计算之前被拒绝;导入的 ML-KEM、ML-DSA 或 SLH-DSA 私钥也会检查一致性,因此各部分互不匹配的密钥不会被误加载。

Delphi 7 至 13,保持不变

不假设存在原生的 64 位整数类型。sgcCrypto_Int64 和 TsgcBigInt 模拟了哈希、曲线和后量子单元所需的运算,因此同一份源代码可以在每个受支持的版本上编译。

没有任何东西会离开您的进程

每个函数都在进程内对您传入的数据进行运算。库中的任何地方都没有网络调用、没有遥测,也没有 eSeGeCe 中继服务。

包含在版本中,或作为独立产品包

sgcCrypto 随 sgcWebSockets Standard、Professional 和 Enterprise 免费提供。如果您只拥有 sgcWebSockets Core,它也作为独立产品包出售,单个开发者起价为 €149。所有许可证均包含完整源代码、1 年更新,以及 50% 至 70% 的续订折扣:续订一个产品包为 50%,两个为 60%,三个或以上为 70%。

sgcCrypto

€149

独立产品包。提供 Single、Team 和 Site 授权。如果您已经拥有 sgcWebSockets Standard、Professional 或 Enterprise,则免费。

  • 全部 43 个 sgcCrypto_*.pas 单元
  • 包含 sgcWebSockets Core 运行时
  • Delphi 和 C++ Builder,全部六个平台
  • 完整源代码
  • 1 年更新

已经使用 sgcWebSockets Standard、Professional 或 Enterprise?sgcCrypto 已经在您的安装程序中,无需另行订购。

查看价格并订购
3,000+开发者
20+年
761+组件
30+API 集成
5平台
30 天退款保证不满意?可在购买后 30 天内申请全额退款。 查看退款政策

无组件开销的加密能力

43 个纯函数,涵盖加密、哈希、签名、PKI 和后量子密钥交换,另有一个构建在它们之上的 TLS 1.3 与 TLS 1.2 引擎,随时可以在您的 Delphi 或 C++ Builder 代码已经运行的任何地方使用。完整源代码,没有中继,没有 DLL。

eSeGeCe 的其他产品

将 sgcCrypto 与我们的其他 Delphi 和 C++ Builder 组件库搭配使用。

sgcWebSockets

企业级 WebSocket、HTTP/2、MQTT、AMQP 和 WebRTC 组件。Standard、Professional 和 Enterprise 均包含 sgcCrypto。

了解更多 →

sgcSign

企业级数字签名。XAdES、PAdES、CAdES 和 ASiC,支持 10 个密钥提供商和 21 个欧盟国家配置文件。

了解更多 →

sgcAuth

OAuth2 客户端和 JWT 客户端组件,外加 WebAuthn 密钥登录。作为独立产品,已包含 sgcWebSockets Core 运行时。

了解更多 →

sgcQUIC

基于 OpenSSL 3.5 原生 QUIC 引擎构建的 QUIC (RFC 9000) 与 HTTP/3 (RFC 9114) 客户端和服务器组件。

了解更多 →

sgcAI

AI、LLM 和 MCP 组件。一个聊天组件即可连接 OpenAI、Anthropic、Gemini、DeepSeek、Ollama、Grok 和 Mistral。

了解更多 →

sgcMQ

原生 MQTT 3.1.1/5.0、AMQP 0.9.1、AMQP 1.0、Apache Kafka 和 STOMP 客户端组件,捆绑 Core 运行时。

了解更多 →

sgcOpenAPI

OpenAPI 3.0 解析器和 SDK 生成器。几秒钟内将任何 OpenAPI 规范转换为强类型的 Delphi 客户端。

了解更多 →