sgcCrypto: Moderne Kryptographiebibliothek für Delphi & C++ Builder
Ab sgcWebSockets Standard enthalten Auch eigenständig erhältlich

sgcCrypto — eine moderne Kryptographiebibliothek für Delphi & C++ Builder

43 reine Object-Pascal-Units, keine Komponenten, kein Design-Time-Footprint: TBytes rein, TBytes raus. AES-GCM und ChaCha20-Poly1305 für Verschlüsselung, SHA-3/BLAKE2/Argon2 für Hashing, Ed25519/X25519/RSA für Signaturen und Schlüsselaustausch, X.509-Zertifikatsparsing und -erstellung, sowie Post-Quanten-ML-KEM, ML-DSA und SLH-DSA. Jede Primitive ist direkt in der Unit implementiert, die du in deine uses-Klausel aufnimmst: keine externe DLL, keine OpenSSL-Anbindung, und derselbe Quellcode kompiliert unverändert von Delphi 7 bis RAD Studio 13. sgcCrypto ist bei sgcWebSockets Standard, Professional und Enterprise kostenlos dabei, und wird auch eigenständig verkauft (mit gebündelter sgcWebSockets-Core-Runtime) für Kunden, die nur Core besitzen.

Vollständiger Quellcode
Win32, Win64, Linux64, macOS, iOS & Android
Delphi 7 → 13, unverändert
Keine externen Abhängigkeiten
43 reine Funktionen sgcCrypto_*.pas Keine Komponenten. Eine Funktion aufrufen, Bytes zurückbekommen.
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
43 Reine Funktions-Units sgcCrypto_*.pas, null Komponenten
6 Fähigkeitsfamilien Symmetrisch, Hashing, Signaturen, PKI, PQC, OTP
6 Zielplattformen Win32, Win64, Linux64, macOS, iOS, Android
3 Post-Quanten-FIPS-Standards ML-KEM (203), ML-DSA (204), SLH-DSA (205)
2 Wege, es zu besitzen In einer Edition enthalten, oder eigenständig

Drei Dinge, die du vorher wissen solltest

Was sgcCrypto ist, ob du es bereits besitzt, und wo es läuft. Alle drei Antworten sind kurz.

sgcCrypto besteht aus reinen Funktionen, keinen Komponenten

Jede der 43 Units exportiert einfache Funktionen und Prozeduren. Es gibt keine Tsgc*-Klasse, nichts wird per RegisterComponents registriert, und es gibt keine sgcCrypto_Reg.pas. Du rufst sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) genauso auf, wie du jede RTL-Funktion aufrufen würdest, aus einem Formular, einem Dienst, einer Konsolenanwendung oder einem Thread.

Vollständiger Quellcode ist bei jeder Lizenz dabei, sodass sich die Primitiven in deinem eigenen Debugger durchsteppen lassen, statt in einer Binärdatei oder DLL zu verschwinden.

Edition-Überschneidung

Besitzt du bereits eine sgcWebSockets-Edition?

sgcCrypto ist in sgcWebSockets Standard, Professional und Enterprise sowie in All-Access ohne Aufpreis enthalten. Wenn du bereits eine Editionslizenz ab Standard besitzt, hast du bereits alle 43 Units, nichts weiter zu kaufen.

sgcCrypto existiert eigenständig für den umgekehrten Fall: Du besitzt nur sgcWebSockets Core, oder überhaupt keine sgcWebSockets-Lizenz, und möchtest die Krypto-Units ohne den Kauf einer vollständigen Edition.

Plattformumfang

sgcCrypto trägt keine Plattformsperre

Anders als die KI- oder Sprachpakete schränkt nichts in sgcVer.inc sgcCrypto auf Windows ein. Die Units sind gewöhnliche Object-Pascal-Arithmetik, kompilieren also aus demselben Quellcode für Win32, Win64, Linux64, macOS, iOS und Android.

Die eine plattformbewusste Unit, sgcCrypto_Random, wählt pro Ziel ein CSPRNG-Backend (Windows CryptoAPI, oder /dev/urandom anderswo) hinter demselben sgcRandomBytes-Aufruf, sodass dein Code nie nach Plattform verzweigt.

43 Units, sechs Fähigkeitsfamilien

Jede Unit ist kompiliertes Object Pascal, aufrufbar aus jedem Delphi-7-bis-13- oder C++-Builder-Projekt. Es gibt keine externe DLL, keine OpenSSL-Anbindung und keinen Codegenerator: Die Primitiven sind direkt in der Unit implementiert, die du in deine uses-Klausel aufnimmst.

Symmetrisch5 Units

AES, ChaCha20 und die AEAD-Konstruktionen darauf

sgcCrypto_AES deckt CBC, GCM und CTR ab; sgcCrypto_Modes ergänzt ECB, OFB, CFB, Ciphertext-Stealing CTS sowie AES Key Wrap / Key Wrap with Padding (RFC 3394 / 5649); sgcCrypto_CMAC ist AES-CMAC. sgcCrypto_ChaCha implementiert ChaCha20, XChaCha20, Salsa20 und XSalsa20, und sgcCrypto_Poly1305 kombiniert Poly1305 damit zu den AEAD-Chiffren ChaCha20-Poly1305 und XChaCha20-Poly1305 aus RFC 8439. sgcAES_GCM_Decrypt und die Poly1305-Verifizierer vergleichen den Authentifizierungs-Tag in konstanter Zeit und verweigern die Rückgabe von Klartext bei einem fehlgeschlagenen Vergleich.

Hashing & KDF11 Units

SHA-2, SHA-3, BLAKE2 und jede gängige KDF

sgcCrypto_SHA2 und sgcCrypto_Keccak decken SHA-1/2, SHA-3, SHAKE, cSHAKE und KMAC ab; sgcCrypto_Blake2b und sgcCrypto_Blake2s ergänzen BLAKE2. sgcCrypto_HMAC ist Keyed Message Authentication. Um ein Passwort in einen Schlüssel zu verwandeln: sgcCrypto_KDF (PBKDF2), sgcCrypto_HKDF, sgcCrypto_Scrypt und sgcCrypto_Argon2, das alle drei Argon2-Varianten implementiert, d, i und id, den Gewinner der Password Hashing Competition. sgcCrypto_SipHash liefert dir einen schnellen Keyed Hash für Hashtable-Schlüssel, und sgcCrypto_TLSH ist ein Fuzzy Hash mit einer Ähnlichkeits-Distanzfunktion, kein kryptographischer Digest, nützlich zur Erkennung von Near-Duplicates.

Signaturen & Schlüsselaustausch10 Units

Ed25519/Ed448, X25519/X448, secp256k1, Brainpool und RSA

sgcCrypto_Ed25519/Ed448 signieren und verifizieren; sgcCrypto_X25519/X448 übernehmen den passenden Diffie-Hellman-Austausch. sgcCrypto_ECCurves ergänzt ECDSA und ECDH über secp256k1 und die drei Brainpool-Kurven mit deterministischen RFC-6979-Nonces, und sgcCrypto_EC ist das JOSE-orientierte Gegenstück: Signiere und verifiziere ein JWS direkt, ES256/384/512. sgcCrypto_RSA verifiziert PKCS#1-v1.5- und PSS-Signaturen direkt aus einem PEM-Schlüssel, und sgcCrypto_RSA_Keys geht weiter, mit Schlüsselerzeugung beliebiger Bitlänge, OAEP-Verschlüsselung und DER/PEM-Export. sgcCrypto_ECIES rundet es mit hybrider Seal/Open-Verschlüsselung an einen X25519-Public-Key ab.

sgcCrypto_Ed25519 sgcCrypto_ECCurves sgcCrypto_RSA_Keys RFC 8032 · RFC 7748 · RFC 8017
PKI5 Units

X.509-Zertifikate lesen, verifizieren und erzeugen

sgcCrypto_ASN1 liest DER und PEM und parst PKCS#1/SEC-1-Schlüssel; sgcCrypto_DER schreibt jeden Tag, den ein Zertifikat oder ein CSR braucht. sgcCrypto_X509 parst ein Zertifikat, verifiziert, dass es von einem gegebenen Aussteller signiert wurde, durchläuft und verifiziert eine Kette, und parst eine CRL, um Widerruf zu prüfen. sgcCrypto_X509_Gen erzeugt ein selbstsigniertes Zertifikat oder einen PKCS#10-CSR von Grund auf: vollständiger Subject- und Issuer-Distinguished-Name, Gültigkeitsfenster, CA-Flag mit Pfadlängenbeschränkung, Key-Usage-Flags, Extended-Key-Usage-OIDs und Subject Alternative Names, einschließlich IP-Adress-SANs.

Post-Quanten6 Units

ML-KEM, ML-DSA und SLH-DSA, plus ein Hybrid-Combiner

sgcCrypto_MLKEM ist FIPS-203-Schlüsselkapselung, drei Parametersätze (ML-KEM-512/768/1024), mit impliziter Zurückweisung bei einem fehlerhaften Chiffretext. sgcCrypto_MLDSA ist FIPS-204-Signierung, ML-DSA-44/65/87. sgcCrypto_SLHDSA ist FIPS 205, alle sechs SHAKE-Parametersätze: 128s, 128f, 192s, 192f, 256s, 256f. Weil ML-KEM allein alles auf eine Gitter-Annahme setzt, die jünger ist als elliptische Kurven, kombiniert sgcCrypto_MLKEM_Hybrid ein X25519-Geheimnis und ein ML-KEM-Geheimnis zu einem gemeinsamen Schlüssel, sodass das Ergebnis nie schwächer ist als die klassische Hälfte, das Migrationsmuster, auf das sich die Branche gerade einigt.

sgcCrypto_MLKEM sgcCrypto_MLDSA sgcCrypto_SLHDSA FIPS 203 · FIPS 204 · FIPS 205
OTP & Sonstiges6 Units

Einmalpasswörter, Kodierung und verschlüsselte ZIP-Einträge

sgcCrypto_OTP erzeugt und verifiziert HOTP- und TOTP-Codes, dieselben sechsstelligen Codes, die eine Authenticator-App anzeigt, mit einem konstantzeitigen Verifikationsfenster, das Uhrabweichung ausgleicht. sgcCrypto_Encoding hält die Hilfsfunktionen, die sich der Rest der Bibliothek teilt: konstantzeitiger Vergleich, sicheres Nullsetzen von Puffern, Hex, Base64url und Base32. sgcCrypto_Zip_AE2 implementiert die WinZip-AES-Verschlüsselung, AE-1 und AE-2, zum Verschlüsseln einzelner ZIP-Einträge. sgcCrypto_Random ist der plattformübergreifende CSPRNG hinter jedem Schlüssel und Nonce, der anderswo in der Bibliothek erzeugt wird, und sgcCrypto_Legacy hält MD4/MD5/HMAC-MD5/DES-ECB für die Interoperabilität mit älteren Formaten verfügbar, nicht für neue Designs.

Keine Komponente, kein Objektinspektor

Füge eine Unit zu uses hinzu und rufe eine Funktion auf. Jeder Aufruf unten kommt aus einer anderen der 43 Units, quer über symmetrische Verschlüsselung, Hashing, Signaturen und Post-Quanten.

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);
Konstante Zeit, wo es zählt

GCM- und Poly1305-Tag-Prüfungen, HOTP-/TOTP-Verifikation und sgcConstantTimeEquals vergleichen alle in konstanter Zeit, sodass eine fehlgeschlagene Prüfung keine Timing-Informationen darüber preisgibt, wie nah der Versuch war.

Dekapselung schlägt nie fehl

Ein fehlerhafter ML-KEM-Chiffretext erzeugt ein pseudozufälliges Geheimnis statt eines Fehlers, implizite Zurückweisung gemäß FIPS 203, sodass ein Angreifer nichts daraus lernt, ob ein Chiffretext wohlgeformt war.

Delphi 7 bis 13, unverändert

Es wird kein nativer 64-Bit-Integer-Typ vorausgesetzt. sgcCrypto_Int64 und TsgcBigInt emulieren die Arithmetik, die die Hashes, Kurven und Post-Quanten-Units brauchen, sodass derselbe Quellcode auf jeder unterstützten Version kompiliert.

Nichts verlässt deinen Prozess

Jede Funktion läuft in-process mit Daten, die du übergibst. Es gibt keinen Netzwerkaufruf, keine Telemetrie und kein eSeGeCe-Relay irgendwo in der Bibliothek.

Enthalten, oder als eigenständiges Paket

sgcCrypto ist bei sgcWebSockets Standard, Professional und Enterprise kostenlos dabei. Wenn du nur sgcWebSockets Core besitzt, wird es auch als eigenes Paket verkauft, ab €149 für einen Entwickler. Alle Lizenzen enthalten vollständigen Quellcode, 1 Jahr Updates und 50% bis 70% Verlängerungsrabatt: 50% bei Verlängerung eines Pakets, 60% bei zweien, 70% bei drei oder mehr.

sgcCrypto

€149

Eigenständiges Paket. Single-, Team- und Site-Lizenzen verfügbar. Kostenlos, wenn du bereits sgcWebSockets Standard, Professional oder Enterprise besitzt.

  • Alle 43 sgcCrypto_*.pas-Units
  • sgcWebSockets-Core-Runtime enthalten
  • Delphi & C++ Builder, alle sechs Plattformen
  • Vollständiger Quellcode
  • 1 Jahr Updates

Bereits auf sgcWebSockets Standard, Professional oder Enterprise? sgcCrypto ist bereits in deinem Installer, keine Bestellung nötig.

Preise ansehen & bestellen
3,000+Developers
20+Years
761+Components
30+API Integrations
5Platforms
30 Tage Geld-zurück-GarantieNicht zufrieden? Fordern Sie innerhalb von 30 Tagen nach dem Kauf eine vollständige Rückerstattung an. Rückerstattungsrichtlinie ansehen

Kryptographie ohne Komponenten-Overhead

43 reine Funktionen für Verschlüsselung, Hashing, Signaturen, PKI und Post-Quanten-Schlüsselaustausch, einsatzbereit überall dort, wo dein Delphi- oder C++-Builder-Code bereits läuft. Vollständiger Quellcode, kein Relay, keine DLL.

Weitere Produkte von eSeGeCe

Kombiniere sgcCrypto mit unseren anderen Komponentenbibliotheken für Delphi und C++ Builder.

sgcWebSockets

Enterprise-WebSocket-, HTTP/2-, MQTT-, AMQP- und WebRTC-Komponenten. Standard, Professional und Enterprise enthalten alle sgcCrypto.

Mehr erfahren →

sgcSign

Digitale Signaturen für Unternehmen. XAdES, PAdES, CAdES und ASiC mit 10 Schlüsselanbietern und 21 EU-Länderprofilen.

Mehr erfahren →

sgcAuth

OAuth2-Client- und JWT-Client-Komponenten, plus WebAuthn-Passkey-Anmeldung. Eigenständig, die sgcWebSockets Core Runtime ist enthalten.

Mehr erfahren →

sgcQUIC

QUIC- (RFC 9000) und HTTP/3-Client- und -Serverkomponenten (RFC 9114) auf der nativen OpenSSL-3.5-QUIC-Engine.

Mehr erfahren →

sgcAI

KI-, LLM- und MCP-Komponenten. Eine Chat-Komponente erreicht OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok und Mistral.

Mehr erfahren →

sgcMQ

Native MQTT-3.1.1/5.0-, AMQP-0.9.1-, AMQP-1.0-, Apache-Kafka- und STOMP-Clientkomponenten, mit gebündelter Core Runtime.

Mehr erfahren →

sgcOpenAPI

OpenAPI-3.0-Parser und SDK-Generator. Verwandle jede OpenAPI-Spezifikation in Sekunden in einen stark typisierten Delphi-Client.

Mehr erfahren →