sgcCrypto: moderne cryptografiebibliotheek voor Delphi & C++ Builder
Inbegrepen vanaf sgcWebSockets Standard Ook standalone verkrijgbaar

sgcCrypto — een moderne cryptografiebibliotheek voor Delphi & C++ Builder

43 pure Object Pascal-units, geen componenten, geen design-time footprint: geef TBytes mee, krijg TBytes terug. AES-GCM en ChaCha20-Poly1305 voor versleuteling, SHA-3/BLAKE2/Argon2 voor hashing, Ed25519/X25519/RSA voor handtekeningen en sleuteluitwisseling, X.509-certificaatparsing en -generatie, en post-quantum ML-KEM, ML-DSA en SLH-DSA. Elke primitief is rechtstreeks geïmplementeerd in de unit die je aan je uses-clausule toevoegt: geen externe DLL, geen OpenSSL-binding, en dezelfde broncode compileert ongewijzigd van Delphi 7 tot en met RAD Studio 13. sgcCrypto wordt gratis meegeleverd met sgcWebSockets Standard, Professional en Enterprise, en wordt ook standalone verkocht (met de sgcWebSockets Core runtime inbegrepen) voor klanten die alleen Core bezitten.

Volledige broncode
Win32, Win64, Linux64, macOS, iOS & Android
Delphi 7 → 13, ongewijzigd
Zonder externe dependencies
43 pure functies sgcCrypto_*.pas Geen componenten. Roep een functie aan, krijg bytes terug.
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 Pure-function units sgcCrypto_*.pas, geen componenten
6 Functiefamilies Symmetrisch, hashing, handtekeningen, PKI, PQC, OTP
6 Doelplatforms Win32, Win64, Linux64, macOS, iOS, Android
3 Post-quantum FIPS-standaarden ML-KEM (203), ML-DSA (204), SLH-DSA (205)
2 Manieren om het te bezitten Inbegrepen in een editie, of standalone

Drie dingen die je eerst moet weten

Wat sgcCrypto is, of je het al bezit, en waar het draait. Alle drie antwoorden zijn kort.

sgcCrypto is puur functies, geen componenten

Elk van de 43 units exporteert gewone functies en procedures. Er is geen Tsgc*-klasse, niets wordt met RegisterComponents geregistreerd, en er is geen sgcCrypto_Reg.pas. Je roept sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) aan zoals je elke RTL-functie zou aanroepen, vanuit een formulier, een service, een console-app of een thread.

Volledige broncode zit bij elke licentie, zodat de primitieven doorlopen in je eigen debugger in plaats van te verdwijnen in een binary of een DLL.

Editie-overlap

Bezit je al een sgcWebSockets-editie?

sgcCrypto wordt meegeleverd met sgcWebSockets Standard, Professional en Enterprise, en met All-Access, zonder extra kosten. Als je al een licentie hebt voor een editie vanaf Standard, heb je alle 43 units al, niets extra te kopen.

sgcCrypto bestaat standalone voor het omgekeerde geval: je bezit alleen sgcWebSockets Core, of geen sgcWebSockets-licentie, en wilt de crypto-units zonder een volledige editie te licentiëren.

Platformbereik

sgcCrypto heeft geen platformbeveiliging

In tegenstelling tot de AI- of spraakpakketten beperkt niets in sgcVer.inc sgcCrypto tot Windows. De units zijn gewone Object Pascal-rekenkunde, dus ze compileren voor Win32, Win64, Linux64, macOS, iOS en Android vanuit dezelfde broncode.

De ene platformbewuste unit, sgcCrypto_Random, kiest een CSPRNG-backend per doelplatform (Windows CryptoAPI, of /dev/urandom elders) achter dezelfde aanroep sgcRandomBytes, zodat je code nooit vertakt op platform.

43 units, zes functiefamilies

Elke unit is gecompileerde Object Pascal, aanroepbaar vanuit elk Delphi 7 tot 13- of C++ Builder-project. Er is geen externe DLL, geen OpenSSL-binding en geen codegenerator: de primitieven zijn rechtstreeks geïmplementeerd in de unit die je aan je uses-clausule toevoegt.

Symmetrisch5 units

AES, ChaCha20 en de AEAD-constructies erbovenop

sgcCrypto_AES dekt CBC, GCM en CTR; sgcCrypto_Modes voegt ECB, OFB, CFB, ciphertext-stealing CTS, en AES Key Wrap / Key Wrap with Padding (RFC 3394 / 5649) toe. sgcCrypto_CMAC is AES-CMAC. sgcCrypto_ChaCha implementeert ChaCha20, XChaCha20, Salsa20 en XSalsa20, en sgcCrypto_Poly1305 combineert Poly1305 ermee tot de AEAD-ciphers ChaCha20-Poly1305 en XChaCha20-Poly1305 uit RFC 8439. sgcAES_GCM_Decrypt en de Poly1305-verifiers vergelijken de authenticatietag in constante tijd en weigeren plaintext terug te geven wanneer die faalt.

Hashing & KDF11 units

SHA-2, SHA-3, BLAKE2, en elke gangbare KDF

sgcCrypto_SHA2 en sgcCrypto_Keccak dekken SHA-1/2, SHA-3, SHAKE, cSHAKE en KMAC; sgcCrypto_Blake2b en sgcCrypto_Blake2s voegen BLAKE2 toe. sgcCrypto_HMAC is keyed message authentication. Om een wachtwoord om te zetten in een sleutel: sgcCrypto_KDF (PBKDF2), sgcCrypto_HKDF, sgcCrypto_Scrypt en sgcCrypto_Argon2, dat alle drie Argon2-varianten implementeert, d, i en id, de winnaar van de Password Hashing Competition. sgcCrypto_SipHash geeft je een snelle keyed hash voor hashtabelsleutels, en sgcCrypto_TLSH is een fuzzy hash met een gelijkenisafstandfunctie, geen cryptografische digest, nuttig voor het detecteren van bijna-duplicaten.

Handtekeningen & sleuteluitwisseling10 units

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

sgcCrypto_Ed25519/Ed448 ondertekenen en verifiëren; sgcCrypto_X25519/X448 doen de bijbehorende Diffie-Hellman. sgcCrypto_ECCurves voegt ECDSA en ECDH toe over secp256k1 en de drie Brainpool-curves met deterministische RFC 6979-nonces, en sgcCrypto_EC is de JOSE-georiënteerde tegenhanger: onderteken en verifieer een JWS rechtstreeks, ES256/384/512. sgcCrypto_RSA verifieert PKCS#1 v1.5- en PSS-handtekeningen direct vanuit een PEM-sleutel, en sgcCrypto_RSA_Keys gaat verder met sleutelgeneratie op elke bitlengte, OAEP-versleuteling en DER/PEM-export. sgcCrypto_ECIES maakt het compleet met hybride seal/open-versleuteling naar een X25519-publieke sleutel.

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

Lees, verifieer en genereer X.509-certificaten

sgcCrypto_ASN1 leest DER en PEM en parseert PKCS#1/SEC 1-sleutels; sgcCrypto_DER schrijft elke tag die een certificaat of CSR nodig heeft. sgcCrypto_X509 parseert een certificaat, verifieert dat het door een gegeven issuer ondertekend is, doorloopt en verifieert een keten, en parseert een CRL om intrekking te controleren. sgcCrypto_X509_Gen genereert een self-signed certificaat of een PKCS#10-CSR vanaf nul: volledige subject- en issuer-distinguished-name, geldigheidsvenster, CA-vlag met een path-length-beperking, key-usage-vlaggen, extended-key-usage-OID's en subject-alternative-names, inclusief IP-adres-SAN's.

Post-quantum6 units

ML-KEM, ML-DSA en SLH-DSA, plus een hybride combiner

sgcCrypto_MLKEM is FIPS 203-sleutelencapsulatie, drie parametersets (ML-KEM-512/768/1024), met impliciete afwijzing bij een misvormde ciphertext. sgcCrypto_MLDSA is FIPS 204-ondertekening, ML-DSA-44/65/87. sgcCrypto_SLHDSA is FIPS 205, alle zes SHAKE-parametersets: 128s, 128f, 192s, 192f, 256s, 256f. Omdat ML-KEM alleen alles inzet op een jongere lattice-aanname dan elliptische curves, combineert sgcCrypto_MLKEM_Hybrid een X25519-geheim en een ML-KEM-geheim tot één gedeelde sleutel, zodat het resultaat nooit zwakker is dan de klassieke helft, het migratiepatroon waar de industrie naartoe convergeert.

sgcCrypto_MLKEM sgcCrypto_MLDSA sgcCrypto_SLHDSA FIPS 203 · FIPS 204 · FIPS 205
OTP & overig6 units

Eenmalige wachtwoorden, encoding en versleutelde ZIP-entries

sgcCrypto_OTP genereert en verifieert HOTP- en TOTP-codes, dezelfde zescijferige codes die een authenticator-app toont, met een verificatievenster in constante tijd dat klokdrift opvangt. sgcCrypto_Encoding bevat de hulpfuncties die de rest van de bibliotheek deelt: vergelijking in constante tijd, veilig buffer wissen, hex, Base64url en Base32. sgcCrypto_Zip_AE2 implementeert WinZip AES-versleuteling, AE-1 en AE-2, voor het versleutelen van individuele ZIP-entries. sgcCrypto_Random is de platformonafhankelijke CSPRNG achter elke sleutel en nonce die elders in de bibliotheek wordt gegenereerd, en sgcCrypto_Legacy houdt MD4/MD5/HMAC-MD5/DES-ECB beschikbaar voor interoperabiliteit met oudere formaten, niet voor nieuwe ontwerpen.

Geen component, geen Object Inspector

Voeg een unit toe aan uses en roep een functie aan. Elke onderstaande aanroep komt uit een andere van de 43 units, over symmetrisch, hashing, handtekeningen en post-quantum heen.

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);
Constante tijd waar het ertoe doet

GCM- en Poly1305-tagcontroles, HOTP/TOTP-verificatie en sgcConstantTimeEquals vergelijken allemaal in constante tijd, zodat een mislukte controle geen timinginformatie lekt over hoe dicht de gok was.

Decapsulatie faalt nooit

Een misvormde ML-KEM-ciphertext levert een pseudorandom geheim op in plaats van een fout, impliciete afwijzing volgens FIPS 203, zodat een aanvaller niets leert over of een ciphertext correct gevormd was.

Delphi 7 tot en met 13, ongewijzigd

Er wordt nergens een native 64-bit integertype verondersteld. sgcCrypto_Int64 en TsgcBigInt emuleren de rekenkunde die de hashes, curves en post-quantum-units nodig hebben, zodat dezelfde broncode op elke ondersteunde versie compileert.

Niets verlaat je proces

Elke functie draait in-process op data die jij meegeeft. Er is geen netwerkaanroep, geen telemetrie en nergens een eSeGeCe-relais in de bibliotheek.

Inbegrepen, of een standalone pakket

sgcCrypto wordt gratis meegeleverd met sgcWebSockets Standard, Professional en Enterprise. Als je alleen sgcWebSockets Core bezit, is het ook als eigen pakket verkrijgbaar, vanaf €149 voor één ontwikkelaar. Alle licenties bevatten volledige broncode, 1 jaar updates en 50% tot 70% verlengingskorting: 50% wanneer je één pakket verlengt, 60% bij twee, 70% bij drie of meer.

sgcCrypto

€149

Standalone pakket. Single-, Team- en Site-licenties beschikbaar. Gratis als je al sgcWebSockets Standard, Professional of Enterprise bezit.

  • Alle 43 sgcCrypto_*.pas-units
  • sgcWebSockets Core runtime inbegrepen
  • Delphi & C++ Builder, alle zes platforms
  • Volledige broncode
  • 1 jaar updates

Al op sgcWebSockets Standard, Professional of Enterprise? sgcCrypto zit al in je installer, geen bestelling nodig.

Bekijk prijzen en bestel
3,000+Developers
20+Years
761+Components
30+API Integrations
5Platforms
Niet-goed-geld-terug-garantie van 30 dagenNiet tevreden? Vraag binnen 30 dagen na aankoop een volledige terugbetaling aan. Bekijk het terugbetalingsbeleid

Cryptografie zonder componentoverhead

43 pure functies voor versleuteling, hashing, handtekeningen, PKI en post-quantum sleuteluitwisseling, klaar waar je Delphi- of C++ Builder-code al draait. Volledige broncode, geen relais, geen DLL.

Andere producten van eSeGeCe

Combineer sgcCrypto met onze andere componentbibliotheken voor Delphi en C++ Builder.

sgcWebSockets

Enterprise WebSocket-, HTTP/2-, MQTT-, AMQP- en WebRTC-componenten. Standard, Professional en Enterprise bevatten allemaal sgcCrypto.

Meer informatie →

sgcSign

Enterprise digitale handtekeningen. XAdES, PAdES, CAdES en ASiC met 10 sleutelproviders en 21 EU-landprofielen.

Meer informatie →

sgcAuth

OAuth2-client en JWT-clientcomponenten, plus WebAuthn-passkey-aanmelding. Standalone, de sgcWebSockets Core runtime is inbegrepen.

Meer informatie →

sgcQUIC

QUIC- (RFC 9000) en HTTP/3- (RFC 9114) client- en servercomponenten op de native OpenSSL 3.5 QUIC-engine.

Meer informatie →

sgcAI

AI-, LLM- en MCP-componenten. Eén chatcomponent bereikt OpenAI, Anthropic, Gemini, DeepSeek, Ollama, Grok en Mistral.

Meer informatie →

sgcMQ

Native MQTT 3.1.1/5.0-, AMQP 0.9.1-, AMQP 1.0-, Apache Kafka- en STOMP-clientcomponenten, met de Core runtime inbegrepen.

Meer informatie →

sgcOpenAPI

OpenAPI 3.0-parser en SDK-generator. Zet elke OpenAPI-specificatie in seconden om in een sterk getypeerde Delphi-client.

Meer informatie →