Digitální podpisy v dokumentech vypadají podobně jako papírové podpisy, ale jako elektronické podpisy založené na certifikátu obsahují identitu podepisujícího v zašifrované podobě. Certifikáty vydávají důvěryhodné a autorizované certifikační autority. Tato oprávnění identifikují osobu, které jsou certifikáty vydány. Proto lze digitálně podepsané dokumenty kdykoli ověřit. V tomto článku vám ukážu, jak programově ověřit digitální podpis v dokumentech PDF, Word a Excel pomocí GroupDocs.Signature for .NET API s C#.
Kroky k ověření digitálně podepsaného dokumentu PDF
Pro demonstraci používám dokument PDF pro ověření digitálního podpisu. Stejný kód však bude fungovat pro formáty dokumentů MS Word a Excel.
-
Stáhněte si GroupDocs.Signature for .NET nebo jej nainstalujte pomocí NuGet.
-
Přidejte do svého kódu následující jmenné prostory.
using GroupDocs.Signature;
using GroupDocs.Signature.Domain;
using GroupDocs.Signature.Options;
- Načtěte digitálně podepsaný dokument PDF pomocí instance třídy Signature.
using (Signature signature = new Signature("sample.pdf"))
{
// Váš kód je zde.
}
- Vytvořte instanci objektu DigitalVerifyOptions a zadejte možnosti ověření.
DigitalVerifyOptions options = new DigitalVerifyOptions("certificate.pfx")
{
Comments = "Test comment"
};
- Zavolejte metodu Verify instance třídy Signature a předejte jí DigitalVerifyOptions.
// ověřit podpisy dokumentů
VerificationResult result = signature.Verify(options);
- Zkontrolujte výsledky ověření z objektu VerificationResult.
if (result.IsValid)
{
Console.WriteLine("\nDocument was verified successfully!");
}
else
{
Console.WriteLine("\nDocument failed verification process.");
}
Kompletní kód
using GroupDocs.Signature;
using GroupDocs.Signature.Domain;
using GroupDocs.Signature.Options;
using (Signature signature = new Signature("sample.pdf"))
{
DigitalVerifyOptions options = new DigitalVerifyOptions("certificate.pfx")
{
Comments = "Test comment"
};
// ověřit podpisy dokumentů
VerificationResult result = signature.Verify(options);
if (result.IsValid)
{
Console.WriteLine("\nDocument was verified successfully!");
}
else
{
Console.WriteLine("\nDocument failed verification process.");
}
}
Můžete tak určit, zda digitální podpis v dokumentu PDF splňuje zadaná kritéria či nikoli. Nakonec můžete dokument označit jako platný nebo neplatný. Přečtěte si více o GroupDocs.Signature for .NET API zde.