Incluido desde sgcWebSockets StandardTambién se vende por separado
sgcCrypto — una biblioteca criptográfica moderna para Delphi y C++ Builder
43 unidades en Object Pascal puro, sin componentes, sin huella en tiempo de diseño: pasas TBytes como entrada y recibes TBytes como salida. AES-GCM y ChaCha20-Poly1305 para cifrado, SHA-3/BLAKE2/Argon2 para hash, Ed25519/X25519/RSA para firmas e intercambio de claves, análisis y generación de certificados X.509, y criptografía poscuántica ML-KEM, ML-DSA y SLH-DSA. Cada primitiva está implementada directamente en la unidad que añades a tu cláusula uses: sin DLL externa, sin enlace a OpenSSL, y el mismo código fuente compila sin cambios desde Delphi 7 hasta RAD Studio 13. sgcCrypto se distribuye gratis con sgcWebSockets Standard, Professional y Enterprise, y también se vende por separado (incluyendo el runtime de sgcWebSockets Core) para los clientes que solo tienen Core.
43 funciones purassgcCrypto_*.pasSin componentes. Llama a una función, recibe bytes.
AES-GCMsgcAES_GCM_Encrypt
ChaCha20-Poly1305sgcChaCha20Poly1305_Encrypt
SHA-3 / SHAKEsgcSHA3_256
Ed25519 / X25519sgcEd25519_Sign
RSA-PSSsgcRSA_PSS_Sign
ML-KEM / ML-DSAsgcMLKEM_Encapsulate
X.509 / CSRsgcX509_CreateSelfSigned
43Unidades de funciones purassgcCrypto_*.pas, cero componentes
6Familias de funcionalidadesSimétrico, hash, firmas, PKI, PQC, OTP
6Plataformas de destinoWin32, Win64, Linux64, macOS, iOS, Android
3Estándares FIPS poscuánticosML-KEM (203), ML-DSA (204), SLH-DSA (205)
2Formas de conseguirloIncluido en una edición, o independiente
ANTES DE COMPRAR
Tres cosas que conviene saber antes
Qué es sgcCrypto, si ya lo tienes incluido, y dónde funciona. Las tres respuestas son breves.
sgcCrypto son funciones puras, no componentes
Cada una de las 43 unidades exporta funciones y procedimientos normales. No hay ninguna clase Tsgc*, nada se registra con RegisterComponents, y no existe un sgcCrypto_Reg.pas. Llamas a sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) igual que llamarías a cualquier función de la RTL, desde un formulario, un servicio, una aplicación de consola o un hilo.
El código fuente completo se incluye en todas las licencias, de modo que las primitivas se pueden depurar paso a paso en tu propio depurador en lugar de desaparecer dentro de un binario o una DLL.
Solapamiento de edición
¿Ya tienes una edición de sgcWebSockets?
sgcCrypto viene incluido dentro de sgcWebSockets Standard, Professional y Enterprise, y dentro de All-Access, sin coste adicional. Si ya tienes una licencia de cualquier edición desde Standard, ya dispones de las 43 unidades, no hay nada más que comprar.
sgcCrypto existe como paquete independiente para el caso contrario: solo tienes sgcWebSockets Core, o ninguna licencia de sgcWebSockets, y quieres las unidades de criptografía sin licenciar una edición completa.
Alcance de plataformas
sgcCrypto no lleva ninguna restricción de plataforma
A diferencia de los paquetes de IA o de voz, nada en sgcVer.inc restringe sgcCrypto a Windows. Las unidades son aritmética Object Pascal corriente, así que compilan para Win32, Win64, Linux64, macOS, iOS y Android a partir del mismo código fuente.
La única unidad que distingue la plataforma, sgcCrypto_Random, selecciona un backend CSPRNG según el destino (Windows CryptoAPI, o /dev/urandom en el resto) detrás de la misma llamada sgcRandomBytes, de modo que tu código nunca tiene que bifurcar según la plataforma.
QUÉ INCLUYE EL PAQUETE
43 unidades, seis familias de funcionalidades
Cada unidad es Object Pascal compilado, invocable desde cualquier proyecto de Delphi 7 a 13 o de C++ Builder. No hay DLL externa, ni enlace a OpenSSL, ni generador de código: las primitivas están implementadas directamente en la unidad que añades a tu cláusula uses.
Simétrico5 unidades
AES, ChaCha20 y las construcciones AEAD que se apoyan en ellos
sgcCrypto_AES cubre CBC, GCM y CTR; sgcCrypto_Modes añade ECB, OFB, CFB, CTS con robo de texto cifrado, y AES Key Wrap / Key Wrap with Padding (RFC 3394 / 5649); sgcCrypto_CMAC es AES-CMAC. sgcCrypto_ChaCha implementa ChaCha20, XChaCha20, Salsa20 y XSalsa20, y sgcCrypto_Poly1305 combina Poly1305 con ellos en los cifrados AEAD ChaCha20-Poly1305 y XChaCha20-Poly1305 de RFC 8439. sgcAES_GCM_Decrypt y los verificadores de Poly1305 comparan la etiqueta de autenticación en tiempo constante y se niegan a devolver el texto plano cuando falla.
sgcCrypto_SHA2 y sgcCrypto_Keccak cubren SHA-1/2, SHA-3, SHAKE, cSHAKE y KMAC; sgcCrypto_Blake2b y sgcCrypto_Blake2s añaden BLAKE2. sgcCrypto_HMAC es autenticación de mensajes con clave. Para convertir una contraseña en una clave: sgcCrypto_KDF (PBKDF2), sgcCrypto_HKDF, sgcCrypto_Scrypt y sgcCrypto_Argon2, que implementa las tres variantes de Argon2, d, i e id, la ganadora de la Password Hashing Competition. sgcCrypto_SipHash ofrece un hash con clave rápido para claves de tablas hash, y sgcCrypto_TLSH es un hash difuso con una función de distancia de similitud, no un resumen criptográfico, útil para detectar casi duplicados.
Ed25519/Ed448, X25519/X448, secp256k1, Brainpool y RSA
sgcCrypto_Ed25519/Ed448 firman y verifican; sgcCrypto_X25519/X448 hacen el Diffie-Hellman correspondiente. sgcCrypto_ECCurves añade ECDSA y ECDH sobre secp256k1 y las tres curvas Brainpool con nonces deterministas RFC 6979, y sgcCrypto_EC es la hermana orientada a JOSE: firma y verifica un JWS directamente, ES256/384/512. sgcCrypto_RSA verifica firmas PKCS#1 v1.5 y PSS directamente desde una clave PEM, y sgcCrypto_RSA_Keys va más allá con generación de claves de cualquier longitud, cifrado OAEP y exportación DER/PEM. sgcCrypto_ECIES lo completa con cifrado híbrido seal/open hacia una clave pública X25519.
sgcCrypto_ASN1 lee DER y PEM y analiza claves PKCS#1/SEC 1; sgcCrypto_DER escribe todas las etiquetas que necesita un certificado o un CSR. sgcCrypto_X509 analiza un certificado, verifica que fue firmado por un emisor dado, recorre y verifica una cadena, y analiza una CRL para comprobar la revocación. sgcCrypto_X509_Gen genera desde cero un certificado autofirmado o un CSR PKCS#10: nombre distintivo completo de sujeto y emisor, ventana de validez, indicador de CA con restricción de longitud de ruta, indicadores de uso de clave, OID de uso extendido de clave y nombres alternativos del sujeto, incluyendo SAN de direcciones IP.
ML-KEM, ML-DSA y SLH-DSA, más un combinador híbrido
sgcCrypto_MLKEM es encapsulación de claves FIPS 203, tres conjuntos de parámetros (ML-KEM-512/768/1024), con rechazo implícito ante un texto cifrado malformado. sgcCrypto_MLDSA es firma FIPS 204, ML-DSA-44/65/87. sgcCrypto_SLHDSA es FIPS 205, los seis conjuntos de parámetros SHAKE: 128s, 128f, 192s, 192f, 256s, 256f. Como ML-KEM por sí solo apuesta todo a una suposición reticular más joven que las curvas elípticas, sgcCrypto_MLKEM_Hybrid combina un secreto X25519 y un secreto ML-KEM en una única clave compartida, de modo que el resultado nunca es más débil que la mitad clásica, el patrón de migración hacia el que converge la industria.
Contraseñas de un solo uso, codificación y entradas ZIP cifradas
sgcCrypto_OTP genera y verifica códigos HOTP y TOTP, los mismos códigos de seis dígitos que muestra una app de autenticación, con una ventana de verificación en tiempo constante que absorbe el desfase de reloj. sgcCrypto_Encoding contiene las funciones de utilidad que comparte el resto de la biblioteca: comparación en tiempo constante, puesta a cero segura de buffers, hex, Base64url y Base32. sgcCrypto_Zip_AE2 implementa el cifrado WinZip AES, AE-1 y AE-2, para cifrar entradas individuales de un ZIP. sgcCrypto_Random es el CSPRNG multiplataforma detrás de cada clave y nonce generados en el resto de la biblioteca, y sgcCrypto_Legacy mantiene disponibles MD4/MD5/HMAC-MD5/DES-ECB para interoperar con formatos antiguos, no para diseños nuevos.
Añade una unidad a uses y llama a una función. Cada llamada de abajo procede de una unidad distinta de las 43, abarcando simétrico, hash, firmas y poscuántica.
Las comprobaciones de etiqueta GCM y Poly1305, la verificación HOTP/TOTP y sgcConstantTimeEquals comparan siempre en tiempo constante, de modo que una comprobación fallida no filtra información de temporización sobre lo cerca que estaba el intento.
La decapsulación nunca falla
Un texto cifrado ML-KEM malformado produce un secreto pseudoaleatorio en lugar de un error, rechazo implícito según FIPS 203, de modo que un atacante no aprende nada de si el texto cifrado estaba bien formado.
Delphi 7 a 13, sin cambios
No se asume ningún tipo entero de 64 bits nativo. sgcCrypto_Int64 y TsgcBigInt emulan la aritmética que necesitan las unidades de hash, curvas y poscuánticas, de modo que el mismo código fuente compila en todas las versiones soportadas.
Nada sale de tu proceso
Cada función se ejecuta dentro de tu proceso sobre los datos que le pasas. No hay ninguna llamada de red, ninguna telemetría ni ningún relé de eSeGeCe en ninguna parte de la biblioteca.
PRECIOS
Incluido, o como paquete independiente
sgcCrypto se distribuye gratis con sgcWebSockets Standard, Professional y Enterprise. Si solo tienes sgcWebSockets Core, también se vende como paquete independiente, desde €149 para un desarrollador individual. Todas las licencias incluyen código fuente completo, 1 año de actualizaciones y un descuento de renovación del 50% al 70%: 50% al renovar un paquete, 60% por dos, 70% por tres o más.
sgcCrypto
€149
Paquete independiente. Licencias Single, Team y Site disponibles. Gratis si ya tienes sgcWebSockets Standard, Professional o Enterprise.
Las 43 unidades sgcCrypto_*.pas
Runtime de sgcWebSockets Core incluido
Delphi y C++ Builder, las seis plataformas
Código fuente completo
1 año de actualizaciones
¿Ya tienes sgcWebSockets Standard, Professional o Enterprise? sgcCrypto ya está en tu instalador, no hace falta pedirlo.
Garantía de devolución de 30 días¿No estás satisfecho? Solicita un reembolso completo en los 30 días posteriores a la compra. Ver política de reembolso
Criptografía sin la sobrecarga de los componentes
43 funciones puras que cubren cifrado, hash, firmas, PKI e intercambio de claves poscuántico, listas allí donde ya se ejecuta tu código Delphi o C++ Builder. Código fuente completo, sin relé, sin DLL.
Componentes cliente OAuth2 y cliente JWT, además de inicio de sesión con passkey WebAuthn. Como paquete independiente, incluye el runtime de sgcWebSockets Core.