Zaloguj się cyfrowo w pliku PDF
W tym samouczku przeprowadzimy Cię przez proces cyfrowego podpisywania pliku PDF przy użyciu Aspose.PDF dla .NET. Podpis cyfrowy gwarantuje autentyczność i integralność dokumentu poprzez dodanie unikalnego elektronicznego odcisku palca.
Krok 1: Warunki wstępne
Zanim zaczniesz, upewnij się, że masz następujące wymagania wstępne:
- Podstawowa znajomość języka programowania C#
- Instalowanie programu Visual Studio na komputerze
- Zainstalowana biblioteka Aspose.PDF dla .NET
Krok 2: Konfiguracja środowiska
Aby rozpocząć, wykonaj następujące kroki, aby skonfigurować środowisko programistyczne:
- Otwórz program Visual Studio i utwórz nowy projekt C#.
- Zaimportuj wymagane przestrzenie nazw do pliku kodu:
using Aspose.Pdf;
using Aspose.Pdf.Forms;
using System.Collections.Generic;
Krok 3: Podpis cyfrowy
Pierwszym krokiem jest cyfrowe podpisanie pliku PDF. Dostarczony kod pokazuje, jak wykonać podpis cyfrowy za pomocą Aspose.PDF dla .NET.
string dataDir = "YOUR DOCUMENTS DIRECTORY";
string pbxFile = "";
string inFile = dataDir + @"DigitallySign.pdf";
string outFile = dataDir + @"DigitallySign_out.pdf";
using (Document document = new Document(inFile))
{
using (PdfFileSignature signature = new PdfFileSignature(document))
{
PKCS7 pkcs = new PKCS7(pbxFile, "WebSales");
DocMDPSignature docMdpSignature = new DocMDPSignature(pkcs, DocMDPAccessPermissions.FillingInForms);
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
signature.SignatureAppearance = dataDir + @"aspose-logo.jpg";
signature.Certify(1, "Reason for signing", "Contact", "Location", true, rect, docMdpSignature);
signature.Save(outFile);
}
}
Ten kod ładuje plik PDF, tworzy podpis cyfrowy o określonym wyglądzie, a następnie zapisuje plik PDF z dodanym podpisem.
Krok 4: Weryfikacja podpisu
Po dodaniu podpisu cyfrowego możesz sprawdzić, czy plik PDF zawiera ważny podpis.
using(Document document = new Document(outFile))
{
using (PdfFileSignature signature = new PdfFileSignature(document))
{
IList<string> sigNames = signature. GetSignNames();
if (sigNames.Count > 0)
{
if (signature.VerifySigned(sigNames[0] as string))
{
if (signature.IsCertified)
{
if (signature.GetAccessPermissions() == DocMDPAccessPermissions.FillingInForms)
{
// Zrób coś
}
}
}
}
}
}
Kod ten weryfikuje pierwszy podpis pliku PDF i wykonuje dodatkowe akcje, jeśli podpis jest certyfikowany i ma określone uprawnienia.
Przykładowy kod źródłowy dla Digitally Sign przy użyciu Aspose.PDF dla .NET
try
{
// Ścieżka do katalogu dokumentów.
string dataDir = "YOUR DOCUMENTS DIRECTORY";
string pbxFile = "";
string inFile = dataDir + @"DigitallySign.pdf";
string outFile = dataDir + @"DigitallySign_out.pdf";
using (Document document = new Document(inFile))
{
using (PdfFileSignature signature = new PdfFileSignature(document))
{
PKCS7 pkcs = new PKCS7(pbxFile, "WebSales"); // Użyj obiektów wolnostojących PKCS7/PKCS7
DocMDPSignature docMdpSignature = new DocMDPSignature(pkcs, DocMDPAccessPermissions.FillingInForms);
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
// Ustaw wygląd podpisu
signature.SignatureAppearance = dataDir + @"aspose-logo.jpg";
// Utwórz dowolny z trzech typów podpisów
signature.Certify(1, "Signature Reason", "Contact", "Location", true, rect, docMdpSignature);
// Zapisz wyjściowy plik PDF
signature.Save(outFile);
}
}
using (Document document = new Document(outFile))
{
using (PdfFileSignature signature = new PdfFileSignature(document))
{
IList<string> sigNames = signature.GetSignNames();
if (sigNames.Count > 0) // Jakieś podpisy?
{
if (signature.VerifySigned(sigNames[0] as string)) // Zweryfikuj pierwszy
{
if (signature.IsCertified) // Atestowany?
{
if (signature.GetAccessPermissions() == DocMDPAccessPermissions.FillingInForms) // Uzyskaj pozwolenie na dostęp
{
// Zrób coś
}
}
}
}
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Wniosek
Gratulacje! Pomyślnie wykonałeś podpis cyfrowy na pliku PDF przy użyciu Aspose.PDF dla .NET. W tym samouczku omówiono proces krok po kroku, od dodania podpisu cyfrowego po weryfikację jego ważności. Możesz teraz używać tej funkcji do zabezpieczania plików PDF podpisami cyfrowymi.
Często zadawane pytania
P: Jaki jest cel tego samouczka?
Odp.: Ten samouczek poprowadzi Cię przez proces cyfrowego podpisywania pliku PDF przy użyciu Aspose.PDF dla .NET. Podpisy cyfrowe dodają elektroniczny odcisk palca, aby zapewnić autentyczność i integralność dokumentu.
P: Jakie wymagania wstępne są wymagane przed rozpoczęciem?
O: Zanim zaczniesz, upewnij się, że znasz podstawowy język programowania C#, masz zainstalowany program Visual Studio i bibliotekę Aspose.PDF dla .NET.
P: Jak skonfigurować środowisko programistyczne?
Odp.: Wykonaj podane kroki, aby skonfigurować środowisko programistyczne, w tym utworzyć nowy projekt C# w programie Visual Studio i zaimportować wymagane przestrzenie nazw.
P: Jak dodać podpis cyfrowy do pliku PDF?
Odp.: Dostarczony przykładowy kod demonstruje, jak załadować plik PDF, utworzyć podpis cyfrowy, określić wygląd i zapisać podpisany plik PDF. Podpis cyfrowy jest dodawany za pomocąCertify
metodaPdfFileSignature
obiekt.
P: Jak sprawdzić ważność podpisu cyfrowego?
Odp.: Po dodaniu podpisu cyfrowego możesz użyć przykładowego kodu, aby zweryfikować ważność podpisu. Sprawdza, czy podpis jest certyfikowany i ma określone uprawnienia dostępu.
P: Co oznaczaPKCS7
object represent?
O:PKCS7
obiekt służy do zapewnienia funkcjonalności kryptograficznej podpisów cyfrowych. Służy do tworzenia podpisu cyfrowego w dostarczonym przykładowym kodzie.
P: Czy mogę dostosować wygląd podpisu cyfrowego?
O: Tak, możesz dostosować wygląd podpisu cyfrowego, określając ścieżkę do obrazu w plikuSignatureAppearance
własnośćPdfFileSignature
obiekt.
P: Co się stanie, jeśli podpis będzie nieważny?
Odp.: Jeśli podpis jest nieprawidłowy, proces weryfikacji zakończy się niepowodzeniem i odpowiednie działania w bloku kodu weryfikacyjnego nie zostaną wykonane.
P: Jak mogę zapewnić bezpieczeństwo moich podpisów cyfrowych?
Odp.: Podpisy cyfrowe są bezpieczne z założenia i wykorzystują techniki kryptograficzne w celu zapewnienia autentyczności i integralności. Upewnij się, że Twój klucz prywatny jest bezpieczny i postępuj zgodnie z najlepszymi praktykami dotyczącymi obsługi podpisów cyfrowych.
P: Czy mogę dodać wiele podpisów cyfrowych do pliku PDF?
Odp.: Tak, możesz dodać wiele podpisów cyfrowych do pliku PDF za pomocąPdfFileSignature
obiektSign
LubCertify
metody. Każdy podpis będzie miał swój własny wygląd i konfigurację.