XAdES
ETSI EN 319 132. XML signatures in enveloped, detached and enveloping modes. The format behind e-invoicing and EU employment contracts.
XAdES for XML, PAdES for PDF, CAdES for CMS and ASiC containers for the whole bundle. Authenticode, ClickOnce, NuGet and VSIX for what you ship. From a native Delphi, C++ Builder or .NET component, or from sgcSign Server over REST, with the same signing engine behind both.
Centralised signing for your build farm with sgcSign Server →Narrated, captioned recordings of sgcSign at work. Pick one from the list. Nothing downloads until you press play.
Digital signatures for XML, PDF and files from Delphi: XAdES, PAdES, CAdES, ASiC, Authenticode and RFC 3161 timestamps.
sgcSign quickstartDigital signatures for XML, PDF and files from Delphi: XAdES, PAdES, CAdES, ASiC, Authenticode and RFC 3161 timestamps.
Sign a Windows EXE from LinuxA Delphi program on Linux applies an Authenticode signature with an RFC 3161 timestamp. No Windows machine in the build.
Sign an MSI or MSIX installerWindows Installer files and MSIX or APPX packages signed and timestamped from Delphi, so the installer is the first thing that goes right.
Sign a big installer without uploading itHash-only mode: the build agent sends the digest to sgcSign Server and writes the returned signature in. The file stays put.
The same key providers, the same timestamp client and the same validation pipeline sign a Spanish invoice and a Windows installer. Learn the API once, apply it everywhere.
ETSI EN 319 132. XML signatures in enveloped, detached and enveloping modes. The format behind e-invoicing and EU employment contracts.
ETSI EN 319 142. Signatures embedded in the PDF itself, with a visible appearance carrying signer name, reason, location and contact. Compatible with Adobe Acrobat.
ETSI EN 319 122. CMS / PKCS#7 binary signatures over any file or stream, detached or attached.
ETSI EN 319 162. A ZIP container bundling the documents with their XAdES or CAdES signature. Simple for one document, Extended for a manifest plus many.
Windows PE files: .exe, .dll, .sys, .ocx, .cpl and .scr. SHA-256 by default, plus SHA-1, SHA-384 and SHA-512. Nested dual signatures keep legacy verifiers happy.
Sign .application and .manifest files so Windows clients install your app without a trust prompt.
Sign .nupkg packages so the NuGet client can validate publisher identity. Author and repository signatures are both supported.
Sign Visual Studio extension packages so the Marketplace and the IDE accept them as trusted.
Start at B-B and promote to B-LTA when the archive rules demand it. Code signing runs through sgcSign Server, so the private key lives in one place.
Every provider implements the same IsgcKeyProvider interface, so a signer works with any key source without modification. Moving from a PFX file to AWS KMS means changing one component.
Local password-protected key files. Native Windows CNG, no OpenSSL DLL required.
PEM certificates and encrypted PKCS#8 keys, with native PBES2 / PBKDF2 / AES-CBC decryption.
Local machine and current user stores, straight into your Windows PKI and Active Directory setup.
Smart cards and HSMs over the standard PKCS#11 interface, including SafeNet, YubiKey and Nitrokey.
Microsoft's qualified signing service with OAuth2 client credentials. Private keys never leave Azure.
Keys stay in AWS Key Management Service. The document hash goes out, the raw signature comes back.
Service-account authentication against keys hosted in Google Cloud Key Management.
The Vault transit signing engine. Hashes travel over an authenticated REST API, keys stay inside Vault.
Qualified Polish e-signature provider. Cloud remote signing for KSeF, ZUS and other public portals.
Generic Cloud Signature Consortium v2 client for remote QTSPs, including Universign, D-Trust sign-me, A-Trust, FNMT Cl@ve Firma, Evrotrust and Intesi Group.
Swap the provider, keep the signer. All ten providers in detail →
Each profile pre-tunes hash algorithm, canonicalization, signature level, timestamp and OCSP revocation policy to match the target jurisdiction. Switching country is a one-line change.
Czech EET 2.0 sales registration ships as a component of its own, TsgcEETClient. EET 2.0 in detail →
The profiles target the AdES or QES level each member state expects, with the hash, canonicalization, timestamp and revocation policy already set. Germany asks for a qualified signature under § 126a BGB, Spain accepts AdES for SEPE and TGSS, Poland routes through Profil Zaufany or a qualified certificate for ZUS. The profile encodes those differences, your code does not.
TsgcEUTrustList parses the ETSI TS 119 612 List of Trusted Lists and the per-member-state Trusted Lists, so any X.509 certificate can be classified against the live EU registry. TsgcTSAClient adds RFC 3161 timestamps that promote a signature to B-T, B-LT and B-LTA, and every verification emits a standardised ETSI TS 119 102-2 XML validation report.
A self-hosted signing daemon with a REST API, a Bootstrap web admin and a Windows-service installer. Build agents ask for a signature, the key provider does the signing, and the key material never lands on a runner.
POST /api/v1/sign over TLS with a bearer API key and an X-Project header.The same PAdES signature, produced two ways. Pick the component when the app signs, pick the server when the pipeline signs.
// PAdES with a visible signature and an RFC 3161 timestamp
var
vKeyProvider: TsgcPFXKeyProvider;
vSigner: TsgcPAdESSigner;
vTSA: TsgcTSAClient;
begin
vKeyProvider := TsgcPFXKeyProvider.Create(nil);
vSigner := TsgcPAdESSigner.Create(nil);
vTSA := TsgcTSAClient.Create(nil);
try
vKeyProvider.FileName := 'certificate.pfx';
vKeyProvider.Password := 'secret';
vKeyProvider.LoadFromFile;
vTSA.URL := 'https://freetsa.org/tsr';
vSigner.KeyProvider := vKeyProvider;
vSigner.TSAClient := vTSA;
vSigner.Reason := 'Approved';
vSigner.Location := 'Madrid, Spain';
vSigner.VisibleSignature.Enabled := True;
vSigner.SignPDF('contract.pdf', 'contract-signed.pdf');
finally
vTSA.Free;
vSigner.Free;
vKeyProvider.Free;
end;
end;
# PAdES-sign contract.pdf through sgcSign Server
curl -X POST https://sign.example.com/api/v1/sign/pades \
-H "Authorization: Bearer $TOKEN" \
-H "X-Project: production" \
-F "file=@./contract.pdf" \
-o contract-signed.pdf
# Headers returned by the server
# X-Sgcsign-Signer-Subject: CN=ACME Corp, O=ACME, C=US
# X-Sgcsign-Duration-Ms: 312
sgcSign is licensed on its own, for Delphi 7 to RAD Studio 13 and C++ Builder. Every licence includes full source code, 1 year of updates, royalty-free deployment and a 70% renewal discount.
1 developer licence. Use on one machine at a time.
2 developer licences. Use on two machines at a time.
Unlimited developers. All company machines.
sgcSign for .NET has the same signature formats at the same prices, delivered as the esegece.sgcSign NuGet package, from €299.
Compare licences and pricesTrusted by Delphi, C++ Builder, Lazarus and .NET developers around the world.
Thanks so much for your help and support. I love your components.
sgcWebSockets is amazing and your support is the best!
Your sgcWebSockets library is very useful and easy to setup. Keep up the good work!
Add XAdES, PAdES, CAdES and ASiC signing to your Delphi, C++ Builder or .NET application, or stand up a centralised signing service for your build farm.
Quick startFeaturesKey providersCountry profilessgcSign ServerComparison
sgcSign is one of the eSeGeCe component libraries for Delphi, C++ Builder and .NET. They share conventions, they ship with full source, and they deploy royalty-free.
WebSocket, HTTP/2, MQTT, AMQP, WebRTC, AI and 30+ API integrations. Sign WebSocket and MQTT payloads with the same signing engine.
Create, edit, view, sign, redact and validate PDF files in pure Object Pascal, with no DLL to deploy. Licensed on its own.
Server-side HTML and UI components built on Bootstrap 5 and htmx. Give a signing workflow a web front end without a JavaScript stack to maintain.
Raw QUIC transport and an HTTP/3 client and server, with WebTransport. Submit signature and timestamp requests over HTTP/3 for faster handshakes.
AI, LLM and MCP components for Delphi and C++ Builder. Seven LLM providers behind one component, plus MCP, embeddings and speech. Standalone, with the sgcWebSockets Core runtime bundled in.
MQTT, AMQP 0.9.1 and 1.0, Apache Kafka and STOMP client components for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.
OAuth2 client, JWT client and WebAuthn support for Delphi and C++ Builder. Sign in with any OAuth2/OIDC provider, issue and verify JWTs, and add passkey authentication to native apps.
HTTP server, HTTP/2 client, gRPC client and Google Cloud Pub/Sub, Calendar and FCM clients for Delphi and C++ Builder. Standalone, with the sgcWebSockets Core runtime bundled in.
REST server, OpenAPI server and OpenAPI client components. Publish REST APIs from an OpenAPI 3.x contract, or consume any OpenAPI-described API.
OpenAPI 3.x parser, Pascal SDK generator and OpenAPI server, plus 1,195+ pre-built SDKs for AWS, Azure, Google Cloud and Microsoft Graph.
Windows Hello, fingerprint sensors and the Windows Biometric Framework. Unlock a signing key with a fingerprint before the signer runs.
Updated Indy TCP/IP components with modern TLS, IPv6 and HTTP/2 for Delphi 7 through 13. Trusted transport to TSAs, OCSP responders and EU verifiers.
General-purpose cryptography library for Delphi and C++ Builder: symmetric and asymmetric ciphers, hashing and post-quantum algorithms. Ships free from sgcWebSockets Standard up.
WhatsApp Business Cloud API and Telegram TDLib clients. Standalone, the sgcWebSockets Core runtime is included.