sgcCrypto Cryptographie, en Pascal pur. Aucune DLL à livrer.

43 unités, aucun composant, aucune empreinte à la conception : passe TBytes en entrée, récupère TBytes en sortie. AES-GCM et ChaCha20-Poly1305 pour le chiffrement, SHA-3, BLAKE2 et Argon2 pour le hachage et la dérivation de clés, Ed25519, X25519 et RSA pour les signatures et l’échange de clés, analyse et génération X.509, et la cryptographie post-quantique ML-KEM, ML-DSA et SLH-DSA. Aucune DLL externe, aucune liaison OpenSSL, et le même code source se compile sans modification de Delphi 7 à RAD Studio 13.

  • Delphi 7 à 13
  • C++ Builder
  • Win32, Win64, Linux64
  • macOS, iOS, Android
  • Post-quantique
  • Code source complet
Démarrage rapide de sgcCrypto : sgcAES_GCM_Encrypt et sgcAES_GCM_Decrypt en Delphi, avec le nonce, le texte chiffré et le tag, et un message altéré rejeté au déchiffrement
  • 43Unités Object Pascal de fonctions simples
  • 6Familles de fonctionnalités, de l’AEAD au post-quantique
  • 6Cibles : Win32, Win64, Linux64, macOS, iOS et Android
  • 100%Code source inclus avec chaque licence
  • 0Dépendances externes, pas d’OpenSSL à faire correspondre en version
Vois-le en action

Découvre sgcCrypto en deux minutes.

Hachage, chiffrement authentifié, stockage de mots de passe, signatures et encapsulation de clés post-quantique, un appel de fonction à la fois. Avec narration et sous-titres. Rien n’est téléchargé tant que tu n’appuies pas sur lecture.

Six familles de fonctionnalités

Chiffre, hache, signe, certifie, et passe le cap de la question quantique.

Les familles sont découpées selon la tâche que tu réalises plutôt que selon les mathématiques sous-jacentes, de sorte que l’unité à utiliser est celle qui porte le nom de ce que tu veux construire.

Symétrique · 5 unités

sgcCrypto_AES couvre CBC, GCM et CTR, sgcCrypto_Modes ajoute ECB, OFB, CFB, le ciphertext stealing, AES-CCM et AES Key Wrap. ChaCha20, XChaCha20, Salsa20 et XSalsa20 s’associent à Poly1305 pour former les chiffrements AEAD de la RFC 8439. Le déchiffrement compare le tag en temps constant et refuse de renvoyer le texte en clair en cas d’échec.

Les unités symétriques →

Hachage et KDF · 11 unités

SHA-1, SHA-2, SHA-3, SHAKE, cSHAKE et KMAC, avec BLAKE2b et BLAKE2s en complément. PBKDF2, HKDF, scrypt et sgcCrypto_Argon2 avec les trois variantes, d, i et id. sgcCrypto_SipHash pour les clés de table de hachage et sgcCrypto_HMAC au-dessus de n’importe lequel des condensats.

Les unités de hachage →

Signatures et échange de clés · 10 unités

Ed25519 et Ed448 signent, X25519 et X448 assurent le Diffie-Hellman correspondant, et sgcCrypto_ECCurves ajoute ECDSA et ECDH sur sept courbes avec des nonces déterministes RFC 6979 et la signature Schnorr BIP-340. Clés RSA de n’importe quelle longueur en bits, exportées en DER ou PEM au format PKCS#1 et PKCS#8.

Vois ce qu’elle sait faire →

PKI · 5 unités

sgcCrypto_X509 analyse un certificat, vérifie son émetteur, parcourt une chaîne et lit une CRL. sgcCrypto_X509_Gen génère un certificat auto-signé ou une CSR PKCS#10 avec le nom distinctif complet, la validité, l’indicateur d’AC, l’usage de la clé, l’usage étendu de la clé et les noms alternatifs du sujet.

Tout sur les certificats →

Post-quantique · 6 unités

Encapsulation de clés FIPS 203 dans les trois jeux de paramètres, signature FIPS 204 en ML-DSA-44, 65 et 87, et FIPS 205 dans les six jeux de paramètres SHAKE. sgcCrypto_MLKEM_Hybrid combine un secret X25519 avec un secret ML-KEM, de sorte que la clé partagée n’est jamais plus faible que la moitié classique.

Les unités post-quantiques →

OTP et divers · 6 unités

sgcCrypto_OTP génère et vérifie des codes HOTP et TOTP avec une fenêtre en temps constant qui absorbe le décalage d’horloge. Comparaison en temps constant, effacement sécurisé des tampons, hex, Base64url et Base32, WinZip AES AE-1 et AE-2 pour les entrées ZIP, et le CSPRNG multiplateforme derrière chaque clé.

OTP et utilitaires →
Le code

Appelle une fonction, récupère des octets.

Aucun objet à construire, aucun contexte à libérer, aucun handle à garder ouvert. Les deux extraits se compilent à l’identique de Delphi 7 à 13 et en C++ Builder, sur toutes les plateformes cibles.

uses
  sgcCrypto_Random, sgcCrypto_AES, sgcCrypto_Keccak;
var
  vKey, vIV, vPlain, vAAD, vTag, vCipher, vDigest: 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);

  // Decryption checks the tag in constant time and fails closed
  vPlain  := sgcAES_GCM_Decrypt(vKey, vIV, vCipher, vAAD, vTag);
end;
uses
  sgcCrypto_Random, sgcCrypto_Ed25519, sgcCrypto_MLKEM;
var
  vSeed, vMessage, vSignature: TBytes;
  vPublicKey, vPrivateKey, vCiphertext, vSharedSecret: TBytes;
begin
  // Ed25519 signature from a 32-byte seed
  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);

  // The peer recovers the same secret from the ciphertext
  sgcMLKEM_Decapsulate(mlkem768, vPrivateKey, vCiphertext, vSharedSecret);
end;
  1. Ajoute l’unité à ta clause usesAucune unité n’enregistre de composant : rien n’apparaît dans la palette et rien n’est déposé sur une fiche.
  2. Appelle la fonctionLes clés, nonces, textes en clair et résultats sont tous des TBytes. sgcRandomBytes est le même appel sur toutes les plateformes, adossé au bon CSPRNG pour chaque cible.
  3. Fais confiance au chemin d’échecLe déchiffrement AEAD vérifie le tag en temps constant et échoue de façon sûre, si bien que des données altérées ne ressortent jamais en clair.

La même forme en Object Pascal et en C++ Builder. Chaque unité et chaque fonction figure dans la matrice des fonctionnalités.

La matrice complète des fonctionnalités

Avant d’acheter

Des fonctions simples, un runtime inclus, rien entre les deux.

sgcCrypto implémente directement les primitives plutôt que de s’appuyer sur une bibliothèque que tu devrais aussi livrer et faire correspondre en version, si bien qu’une clé, un condensat ou une signature tient en un seul appel de fonction, et le code source complet signifie que rien entre les deux n’est une boîte noire.

Démarrage rapide de sgcCrypto : stockage d’un mot de passe avec sgcArgon2id et comparaison avec sgcConstantTimeEquals

Des mots de passe stockés correctement

Un mot de passe devient une clé avec PBKDF2, scrypt ou Argon2 dans ses trois variantes, d, i et id, puis la comparaison passe par la fonction en temps constant de sgcCrypto_Encoding, afin que la comparaison elle-même ne laisse pas fuir la réponse.

Démarrage rapide de sgcCrypto : l’inventaire complet des fonctions de hachage, MAC, mots de passe et KDF, symétriques, à clé publique, post-quantiques, de certificats et supplémentaires

Six familles, quarante-trois unités

Symétrique (5), hachage et KDF (11), signatures et échange de clés (10), PKI (5), post-quantique (6), et OTP et utilitaires (6). Il n’y a aucune classe Tsgc* et aucun sgcCrypto_Reg.pas: chaque unité exporte de simples fonctions que tu parcours pas à pas dans ton propre débogueur au lieu de disparaître dans un binaire.

Aucune restriction de plateforme

Rien dans sgcVer.inc ne limite sgcCrypto à Windows. Les unités sont de l’arithmétique Object Pascal ordinaire, elles se compilent donc pour Win32, Win64, Linux64, macOS, iOS et Android à partir d’une seule source. sgcCrypto_Random est la seule unité dépendante de la plateforme.

Un moteur TLS 1.3 et TLS 1.2

Le pack inclut aussi une implémentation TLS écrite au-dessus des primitives sgcCrypto, dans les unités sgcSSL_NativeTLS* . Positionne IOHandler := iohNativeTLS sur n’importe quel client ou serveur sgcWebSockets et il n’y a rien à déployer. La liste de groupes par défaut commence par l’hybride X25519MLKEM768.

Comment l’activer →

Vérifié par rapport aux standards

FIPS 197 et 202, RFC 8439, RFC 5280 et FIPS 203, 204 et 205. La génération de clés, la signature et la vérification ML-KEM, ML-DSA et SLH-DSA sont contrôlées avec les vecteurs à réponse connue NIST ACVP dans la suite QA de sgcWebSockets.

Chaque unité et chaque fonction →
Licences

Tu possèdes peut-être déjà sgcCrypto.

Les 43 unités sont incluses dans sgcWebSockets Standard, Professional et Enterprise, ainsi que dans All-Access, sans frais supplémentaires. Tu possèdes uniquement sgcWebSockets Core, ou aucune licence sgcWebSockets ? Le package autonome regroupe le runtime Core et les unités de cryptographie. Chaque licence inclut le code source complet et le déploiement libre de redevances.

Éditions de sgcWebSockets

sgcCrypto est inclus gratuitement à partir de Standard, avec WebSocket, HTTP/2, MQTT et le reste de la bibliothèque. Si tu en possèdes une, il n’y a rien d’autre à acheter.

€380 / développeur

sgcCrypto autonome

Les 43 unités avec le runtime sgcWebSockets Core intégré, pour les développeurs qui ne possèdent que Core ou aucune licence sgcWebSockets. Licences Single, Team et Site.

€149 / développeur

Bundle All-Access

Tous les produits eSeGeCe pendant un an, Delphi et .NET, sgcCrypto inclus, avec le support Premium.

€1,059 / développeur

L’installateur d’essai gratuit est l’essai sgcWebSockets All-Access : les 43 unités peuvent donc être évaluées dès aujourd’hui.

Voir les tarifs de sgcCrypto
Témoignages

Ce que disent les développeurs

Adopté par des développeurs Delphi, C++ Builder, Lazarus et .NET du monde entier.

Votre bibliothèque sgcWebSockets est très utile et facile à configurer. Continuez votre excellent travail !
Simone Moretti Développeur Delphi
sgcWebSockets est incroyable et votre support est le meilleur !
Christian Meyer Fondateur & CTO
Merci beaucoup pour votre aide et votre support, j’adore vos composants.
Mark Steinfeld CTO

Des octets en entrée, des octets en sortie, du code natif.

Chiffrement AEAD, hachage, signatures, X.509 et cryptographie post-quantique en 43 unités, avec le code source complet dans la boîte.

Les derniers articles du blog

Voir tous les articles →

Tu vois la vue Cryptographie d’eSeGeCe.

Montre-moi un autre angle →
Garantie satisfait ou remboursé de 30 joursPas satisfait ? Demandez un remboursement intégral dans les 30 jours suivant l'achat. Voir la politique de remboursement