sgcCrypto: libreria di crittografia moderna per Delphi e C++ BuilderVai al contenuto
Incluso da sgcWebSockets StandardDisponibile anche in versione autonoma
sgcCrypto — una libreria di crittografia moderna per Delphi e C++ Builder
43 unità Object Pascal pure, nessun componente, nessuna impronta a design-time: passi TBytes in ingresso, ricevi TBytes in uscita. AES-GCM e ChaCha20-Poly1305 per la crittografia, SHA-3/BLAKE2/Argon2 per l'hashing, Ed25519/X25519/RSA per firme e scambio di chiavi, analisi e generazione di certificati X.509, e i post-quantum ML-KEM, ML-DSA e SLH-DSA. Ogni primitiva è implementata direttamente nell'unità che aggiungi alla tua clausola uses: nessuna DLL esterna, nessun binding OpenSSL, e lo stesso sorgente compila invariato da Delphi 7 a RAD Studio 13. sgcCrypto viene distribuito gratuitamente con sgcWebSockets Standard, Professional ed Enterprise, ed è venduto anche in autonomo (con il runtime sgcWebSockets Core incluso) per i clienti che possiedono solo Core.
43 funzioni puresgcCrypto_*.pasNessun componente. Chiama una funzione, ricevi byte in cambio.
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
43Unità a funzioni puresgcCrypto_*.pas, zero componenti
6Famiglie di capacitàSimmetrica, hashing, firme, PKI, PQC, OTP
6Piattaforme di destinazioneWin32, Win64, Linux64, macOS, iOS, Android
3Standard FIPS post-quantumML-KEM (203), ML-DSA (204), SLH-DSA (205)
2Modi per possederloIncluso in un'edizione, oppure autonomo
PRIMA DI ACQUISTARE
Tre cose che vale la pena sapere subito
Cosa sia sgcCrypto, se lo possiedi già, e dove funziona. Tutte e tre le risposte sono brevi.
sgcCrypto è fatto di funzioni pure, non di componenti
Ognuna delle 43 unità esporta semplici funzioni e procedure. Non esiste una classe Tsgc*, niente viene registrato con RegisterComponents, e non esiste un sgcCrypto_Reg.pas. Chiami sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) allo stesso modo in cui chiameresti qualsiasi funzione della RTL, da una form, un servizio, un'app console o un thread.
Il codice sorgente completo è incluso in ogni licenza, così le primitive si possono seguire passo passo nel tuo debugger invece di sparire dentro un binario o una DLL.
Sovrapposizione con le edizioni
Possiedi già un'edizione di sgcWebSockets?
sgcCrypto è incluso in sgcWebSockets Standard, Professional ed Enterprise, e in All-Access, senza costi aggiuntivi. Se possiedi già una licenza di qualsiasi edizione da Standard in su, hai già tutte le 43 unità, niente altro da acquistare.
sgcCrypto esiste in versione autonoma per il caso opposto: possiedi solo sgcWebSockets Core, o nessuna licenza sgcWebSockets, e vuoi le unità di crittografia senza acquistare la licenza di un'intera edizione.
Ambito delle piattaforme
sgcCrypto non ha alcuna restrizione di piattaforma
A differenza dei pacchetti AI o speech, niente in sgcVer.inc limita sgcCrypto a Windows. Le unità sono ordinaria aritmetica Object Pascal, quindi compilano per Win32, Win64, Linux64, macOS, iOS e Android dallo stesso sorgente.
L'unica unità sensibile alla piattaforma, sgcCrypto_Random, seleziona un backend CSPRNG per ogni target (CryptoAPI di Windows, oppure /dev/urandom altrove) dietro la stessa chiamata sgcRandomBytes, così il tuo codice non deve mai diramarsi in base alla piattaforma.
COSA C'È NELLA CONFEZIONE
43 unità, sei famiglie di capacità
Ogni unità è Object Pascal compilato, richiamabile da qualsiasi progetto Delphi 7-13 o C++ Builder. Non c'è nessuna DLL esterna, nessun binding OpenSSL e nessun generatore di codice: le primitive sono implementate direttamente nell'unità che aggiungi alla tua clausola uses.
Simmetrica5 unità
AES, ChaCha20 e le costruzioni AEAD sopra di essi
sgcCrypto_AES copre CBC, GCM e CTR; sgcCrypto_Modes aggiunge ECB, OFB, CFB, il ciphertext stealing CTS, e AES Key Wrap / Key Wrap with Padding (RFC 3394 / 5649); sgcCrypto_CMAC è AES-CMAC. sgcCrypto_ChaCha implementa ChaCha20, XChaCha20, Salsa20 e XSalsa20, e sgcCrypto_Poly1305 li abbina a Poly1305 nei cifrari AEAD ChaCha20-Poly1305 e XChaCha20-Poly1305 di RFC 8439. sgcAES_GCM_Decrypt e i verificatori Poly1305 confrontano il tag di autenticazione in tempo costante e rifiutano di restituire il testo in chiaro quando il controllo fallisce.
sgcCrypto_SHA2 e sgcCrypto_Keccak coprono SHA-1/2, SHA-3, SHAKE, cSHAKE e KMAC; sgcCrypto_Blake2b e sgcCrypto_Blake2s aggiungono BLAKE2. sgcCrypto_HMAC è l'autenticazione dei messaggi con chiave. Per trasformare una password in una chiave: sgcCrypto_KDF (PBKDF2), sgcCrypto_HKDF, sgcCrypto_Scrypt e sgcCrypto_Argon2, che implementa tutte e tre le varianti di Argon2, d, i e id, vincitore della Password Hashing Competition. sgcCrypto_SipHash offre un hash veloce con chiave per le chiavi di hash-table, e sgcCrypto_TLSH è un fuzzy hash con una funzione di distanza di similarità, non un digest crittografico, utile per il rilevamento di quasi-duplicati.
Ed25519/Ed448, X25519/X448, secp256k1, Brainpool e RSA
sgcCrypto_Ed25519/Ed448 firmano e verificano; sgcCrypto_X25519/X448 eseguono il corrispondente Diffie-Hellman. sgcCrypto_ECCurves aggiunge ECDSA ed ECDH su secp256k1 e le tre curve Brainpool con nonce deterministici RFC 6979, e sgcCrypto_EC è la sorella orientata a JOSE: firma e verifica direttamente un JWS, ES256/384/512. sgcCrypto_RSA verifica firme PKCS#1 v1.5 e PSS direttamente da una chiave PEM, e sgcCrypto_RSA_Keys va oltre con la generazione di chiavi a qualsiasi lunghezza in bit, crittografia OAEP ed esportazione DER/PEM. sgcCrypto_ECIES completa il quadro con crittografia ibrida seal/open verso una chiave pubblica X25519.
sgcCrypto_ASN1 legge DER e PEM e analizza chiavi PKCS#1/SEC 1; sgcCrypto_DER scrive ogni tag di cui un certificato o una CSR hanno bisogno. sgcCrypto_X509 analizza un certificato, verifica che sia stato firmato da un dato emittente, percorre e verifica una catena, e analizza una CRL per controllare la revoca. sgcCrypto_X509_Gen genera da zero un certificato autofirmato o una CSR PKCS#10: distinguished name completo di soggetto ed emittente, finestra di validità, flag CA con vincolo di lunghezza del percorso, flag di key usage, OID di extended key usage e subject alternative name, inclusi i SAN di indirizzo IP.
ML-KEM, ML-DSA e SLH-DSA, più un combinatore ibrido
sgcCrypto_MLKEM è l'incapsulamento di chiavi FIPS 203, tre parameter set (ML-KEM-512/768/1024), con rifiuto implicito su un ciphertext malformato. sgcCrypto_MLDSA è la firma FIPS 204, ML-DSA-44/65/87. sgcCrypto_SLHDSA è FIPS 205, tutti e sei i parameter set SHAKE: 128s, 128f, 192s, 192f, 256s, 256f. Poiché ML-KEM da solo punta tutto su un'ipotesi reticolare più giovane delle curve ellittiche, sgcCrypto_MLKEM_Hybrid combina un segreto X25519 e un segreto ML-KEM in un'unica chiave condivisa, così il risultato non è mai più debole della metà classica, lo schema di migrazione verso cui l'industria sta convergendo.
Password monouso, codifica, e voci ZIP crittografate
sgcCrypto_OTP genera e verifica codici HOTP e TOTP, gli stessi codici a sei cifre che mostra un'app di autenticazione, con una finestra di verifica in tempo costante che assorbe lo sfasamento dell'orologio. sgcCrypto_Encoding contiene le funzioni di utilità condivise dal resto della libreria: confronto in tempo costante, azzeramento sicuro dei buffer, hex, Base64url e Base32. sgcCrypto_Zip_AE2 implementa la crittografia AES di WinZip, AE-1 e AE-2, per crittografare singole voci ZIP. sgcCrypto_Random è il CSPRNG multipiattaforma dietro ogni chiave e nonce generati altrove nella libreria, e sgcCrypto_Legacy mantiene disponibili MD4/MD5/HMAC-MD5/DES-ECB per l'interoperabilità con formati più vecchi, non per nuovi progetti.
Aggiungi un'unità a uses e chiama una funzione. Ogni chiamata qui sotto proviene da una diversa delle 43 unità, spaziando tra simmetrica, hashing, firme e post-quantum.
I controlli del tag GCM e Poly1305, la verifica HOTP/TOTP e sgcConstantTimeEquals confrontano tutti in tempo costante, così un controllo fallito non rivela informazioni di tempistica su quanto il tentativo fosse vicino.
La decapsulazione non fallisce mai
Un ciphertext ML-KEM malformato produce un segreto pseudocasuale invece di un errore, il rifiuto implicito richiesto da FIPS 203, così un aggressore non apprende nulla dal fatto che un ciphertext fosse ben formato.
Delphi 7-13, invariato
Non si assume alcun tipo intero nativo a 64 bit. sgcCrypto_Int64 e TsgcBigInt emulano l'aritmetica di cui hanno bisogno gli hash, le curve e le unità post-quantum, così lo stesso sorgente compila su ogni versione supportata.
Niente esce dal tuo processo
Ogni funzione viene eseguita in-process sui dati che passi. Non c'è nessuna chiamata di rete, nessuna telemetria e nessun relay eSeGeCe da nessuna parte nella libreria.
PREZZI
Incluso, oppure un pacchetto autonomo
sgcCrypto viene distribuito gratuitamente con sgcWebSockets Standard, Professional ed Enterprise. Se possiedi solo sgcWebSockets Core, è venduto anche come pacchetto a sé, a partire da €149 per un singolo sviluppatore. Tutte le licenze includono codice sorgente completo, 1 anno di aggiornamenti e uno sconto di rinnovo dal 50% al 70%: il 50% se rinnovi un pacchetto, il 60% per due, il 70% per tre o più.
sgcCrypto
€149
Pacchetto autonomo. Licenze Single, Team e Site disponibili. Gratuito se possiedi già sgcWebSockets Standard, Professional o Enterprise.
Tutte le 43 unità sgcCrypto_*.pas
Runtime sgcWebSockets Core incluso
Delphi e C++ Builder, tutte e sei le piattaforme
Codice sorgente completo
1 anno di aggiornamenti
Sei già su sgcWebSockets Standard, Professional o Enterprise? sgcCrypto è già nel tuo installer, nessun ordine necessario.
Garanzia soddisfatti o rimborsati di 30 giorniNon sei soddisfatto? Richiedi un rimborso completo entro 30 giorni dall'acquisto. Vedi la politica di rimborso
Crittografia senza il sovraccarico dei componenti
43 funzioni pure che coprono crittografia, hashing, firme, PKI e scambio di chiavi post-quantum, pronte ovunque giri già il tuo codice Delphi o C++ Builder. Codice sorgente completo, nessun relay, nessuna DLL.