sgcCrypto: Biblioteca de Criptografia Moderna para Delphi & C++ BuilderPular para o conteúdo
Incluído a partir do sgcWebSockets StandardTambém vendido separadamente
sgcCrypto — uma Biblioteca de Criptografia Moderna para Delphi & C++ Builder
43 unidades Object Pascal puras, sem componentes, sem pegada em tempo de design: passe TBytes, receba TBytes de volta. AES-GCM e ChaCha20-Poly1305 para criptografia, SHA-3/BLAKE2/Argon2 para hash, Ed25519/X25519/RSA para assinaturas e troca de chaves, análise e geração de certificados X.509, e os padrões pós-quânticos ML-KEM, ML-DSA e SLH-DSA. Cada primitiva é implementada diretamente na unidade que você adiciona à sua cláusula uses: sem DLL externa, sem vinculação com OpenSSL, e o mesmo código-fonte compila sem alterações do Delphi 7 até o RAD Studio 13. O sgcCrypto vem gratuito com o sgcWebSockets Standard, Professional e Enterprise, e também é vendido separadamente (com o runtime sgcWebSockets Core embutido) para clientes que possuem apenas o Core.
43 funções purassgcCrypto_*.pasSem componentes. Chame uma função, receba bytes de volta.
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 funções purassgcCrypto_*.pas, zero componentes
6Famílias de capacidadesSimétrica, hash, assinaturas, PKI, PQC, OTP
6Plataformas de destinoWin32, Win64, Linux64, macOS, iOS, Android
3Padrões FIPS pós-quânticosML-KEM (203), ML-DSA (204), SLH-DSA (205)
2Formas de obtê-loIncluído em uma edição, ou separado
ANTES DE COMPRAR
Três Coisas Que Vale a Pena Saber Antes
O que é o sgcCrypto, se você já o possui, e onde ele roda. As três respostas são curtas.
O sgcCrypto é funções puras, não componentes
Cada uma das 43 unidades exporta funções e procedimentos comuns. Não há classe Tsgc*, nada é registrado com RegisterComponents, e não existe um sgcCrypto_Reg.pas. Você chama sgcAES_GCM_Encrypt(aKey, aIV, aPlain, aAAD, aTag) da mesma forma que chamaria qualquer função da RTL, a partir de um formulário, um serviço, uma aplicação console ou uma thread.
O código-fonte completo acompanha toda licença, então as primitivas são depuradas passo a passo no seu próprio debugger, em vez de desaparecer dentro de um binário ou de uma DLL.
Sobreposição de edição
Já possui uma edição do sgcWebSockets?
O sgcCrypto vem incluído no sgcWebSockets Standard, Professional e Enterprise, e também no All-Access, sem custo adicional. Se você já possui uma licença de qualquer edição a partir da Standard, já tem as 43 unidades, nada mais para comprar.
O sgcCrypto existe separadamente para o caso oposto: você possui apenas o sgcWebSockets Core, ou nenhuma licença do sgcWebSockets, e quer as unidades de criptografia sem licenciar uma edição completa.
Abrangência de plataforma
O sgcCrypto não tem nenhuma restrição de plataforma
Diferente dos pacotes de IA ou de voz, nada no sgcVer.inc restringe o sgcCrypto ao Windows. As unidades são aritmética Object Pascal comum, portanto compilam para Win32, Win64, Linux64, macOS, iOS e Android a partir do mesmo código-fonte.
A única unidade sensível à plataforma, sgcCrypto_Random, seleciona um backend CSPRNG conforme o alvo (Windows CryptoAPI, ou /dev/urandom nos demais) por trás da mesma chamada sgcRandomBytes, então o seu código nunca precisa ramificar por plataforma.
O QUE VEM NA CAIXA
43 Unidades, Seis Famílias de Capacidades
Cada unidade é Object Pascal compilado, chamável a partir de qualquer projeto Delphi 7 a 13 ou C++ Builder. Não há DLL externa, nenhuma vinculação com OpenSSL e nenhum gerador de código: as primitivas são implementadas diretamente na unidade que você adiciona à sua cláusula uses.
Simétrica5 unidades
AES, ChaCha20 e as construções AEAD sobre eles
sgcCrypto_AES cobre CBC, GCM e CTR; sgcCrypto_Modes acrescenta ECB, OFB, CFB, 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 combina Poly1305 com eles nas cifras AEAD ChaCha20-Poly1305 e XChaCha20-Poly1305 da RFC 8439. sgcAES_GCM_Decrypt e os verificadores de Poly1305 comparam a tag de autenticação em tempo constante e se recusam a devolver o texto plano quando a verificação falha.
sgcCrypto_SHA2 e sgcCrypto_Keccak cobrem SHA-1/2, SHA-3, SHAKE, cSHAKE e KMAC; sgcCrypto_Blake2b e sgcCrypto_Blake2s acrescentam BLAKE2. sgcCrypto_HMAC é autenticação de mensagem com chave. Para transformar uma senha em uma chave: sgcCrypto_KDF (PBKDF2), sgcCrypto_HKDF, sgcCrypto_Scrypt e sgcCrypto_Argon2, que implementa as três variantes do Argon2, d, i e id, a vencedora da Password Hashing Competition. sgcCrypto_SipHash oferece um hash rápido com chave para chaves de tabela hash, e sgcCrypto_TLSH é um hash difuso com uma função de distância de similaridade, não um digest criptográfico, útil para detecção de quase-duplicatas.
Ed25519/Ed448, X25519/X448, secp256k1, Brainpool e RSA
sgcCrypto_Ed25519/Ed448 assinam e verificam; sgcCrypto_X25519/X448 fazem o Diffie-Hellman correspondente. sgcCrypto_ECCurves acrescenta ECDSA e ECDH sobre secp256k1 e as três curvas Brainpool com nonces determinísticos RFC 6979, e sgcCrypto_EC é a irmã voltada para JOSE: assina e verifica um JWS diretamente, ES256/384/512. sgcCrypto_RSA verifica assinaturas PKCS#1 v1.5 e PSS diretamente a partir de uma chave PEM, e sgcCrypto_RSA_Keys vai além, com geração de chaves em qualquer comprimento de bits, criptografia OAEP e exportação DER/PEM. sgcCrypto_ECIES completa o conjunto com criptografia híbrida seal/open para uma chave pública X25519.
sgcCrypto_ASN1 lê DER e PEM e analisa chaves PKCS#1/SEC 1; sgcCrypto_DER escreve toda tag que um certificado ou CSR precisa. sgcCrypto_X509 analisa um certificado, verifica se foi assinado por um emissor determinado, percorre e verifica uma cadeia, e analisa uma CRL para checar revogação. sgcCrypto_X509_Gen gera um certificado autoassinado ou um CSR PKCS#10 do zero: nome distinto completo de subject e issuer, janela de validade, flag de CA com restrição de comprimento de caminho, flags de uso de chave, OIDs de uso estendido de chave e nomes alternativos do subject, incluindo SANs de endereço IP.
ML-KEM, ML-DSA e SLH-DSA, mais um combinador híbrido
sgcCrypto_MLKEM é encapsulamento de chave FIPS 203, três conjuntos de parâmetros (ML-KEM-512/768/1024), com rejeição implícita em caso de ciphertext malformado. sgcCrypto_MLDSA é assinatura FIPS 204, ML-DSA-44/65/87. sgcCrypto_SLHDSA é FIPS 205, todos os seis conjuntos de parâmetros SHAKE: 128s, 128f, 192s, 192f, 256s, 256f. Como o ML-KEM sozinho aposta tudo em uma suposição de reticulado mais jovem que as curvas elípticas, sgcCrypto_MLKEM_Hybrid combina um segredo X25519 e um segredo ML-KEM em uma única chave compartilhada, de modo que o resultado nunca é mais fraco que a metade clássica, o padrão de migração para o qual o setor está convergindo.
Senhas de uso único, codificação e entradas ZIP criptografadas
sgcCrypto_OTP gera e verifica códigos HOTP e TOTP, os mesmos códigos de seis dígitos que um aplicativo autenticador exibe, com uma janela de verificação em tempo constante que absorve desvios de relógio. sgcCrypto_Encoding reúne as funções utilitárias que o restante da biblioteca compartilha: comparação em tempo constante, zeragem segura de buffer, hex, Base64url e Base32. sgcCrypto_Zip_AE2 implementa a criptografia WinZip AES, AE-1 e AE-2, para criptografar entradas individuais de um ZIP. sgcCrypto_Random é o CSPRNG multiplataforma por trás de toda chave e nonce gerados no restante da biblioteca, e sgcCrypto_Legacy mantém MD4/MD5/HMAC-MD5/DES-ECB disponíveis para interoperabilidade com formatos mais antigos, não para novos projetos.
Adicione uma unidade ao uses e chame uma função. Cada chamada abaixo vem de uma unidade diferente das 43, abrangendo simétrica, hash, assinaturas e pós-quântica.
As verificações de tag do GCM e do Poly1305, a verificação de HOTP/TOTP e sgcConstantTimeEquals comparam tudo em tempo constante, então uma verificação com falha não vaza informação de tempo sobre o quão perto a tentativa estava.
A decapsulação nunca falha
Um ciphertext ML-KEM malformado produz um segredo pseudoaleatório em vez de um erro, rejeição implícita conforme a FIPS 203, então um atacante não aprende nada sobre se um ciphertext estava bem formado.
Delphi 7 a 13, sem alterações
Nenhum tipo inteiro nativo de 64 bits é assumido. sgcCrypto_Int64 e TsgcBigInt emulam a aritmética de que os hashes, as curvas e as unidades pós-quânticas precisam, então o mesmo código-fonte compila em toda versão suportada.
Nada sai do seu processo
Cada função roda no próprio processo, sobre os dados que você passa. Não há chamada de rede, nenhuma telemetria e nenhum relé da eSeGeCe em nenhum lugar da biblioteca.
PREÇOS
Incluído, ou um Pacote Separado
O sgcCrypto vem gratuito com o sgcWebSockets Standard, Professional e Enterprise. Se você possui apenas o sgcWebSockets Core, ele também é vendido como pacote próprio, a partir de €149 para um único desenvolvedor. Todas as licenças incluem código-fonte completo, 1 ano de atualizações e um desconto de renovação de 50% a 70%: 50% ao renovar um pacote, 60% para dois, 70% para três ou mais.
sgcCrypto
€149
Pacote separado. Licenças Single, Team e Site disponíveis. Gratuito se você já possui o sgcWebSockets Standard, Professional ou Enterprise.
Todas as 43 unidades sgcCrypto_*.pas
Runtime sgcWebSockets Core incluído
Delphi & C++ Builder, nas seis plataformas
Código-fonte completo
1 ano de atualizações
Já está no sgcWebSockets Standard, Professional ou Enterprise? O sgcCrypto já está no seu instalador, nenhum pedido necessário.
Garantia de reembolso de 30 diasNão ficou satisfeito? Solicite o reembolso total em até 30 dias após a compra. Ver política de reembolso
Criptografia Sem a Sobrecarga de Componentes
43 funções puras cobrindo criptografia, hash, assinaturas, PKI e troca de chaves pós-quântica, prontas onde quer que o seu código Delphi ou C++ Builder já rode. Código-fonte completo, sem intermediário, sem DLL.