Tanda Tangan Digital digunakan untuk mengamankan dokumen PDF sebelum dibagikan dengan pihak ketiga. Menandatangani dokumen PDF secara digital memungkinkan untuk mendeteksi gangguan dengan memverifikasi dokumen menggunakan tanda tangan digital. Untuk mengamankan dokumen PDF secara terprogram menggunakan tanda tangan digital, artikel ini akan menunjukkan cara menambahkan tanda tangan digital dalam file PDF di C#. Anda juga akan mempelajari cara memverifikasi tanda tangan digital dalam file PDF di C#.
- C# API untuk Menandatangani PDF Secara Digital
- Tambahkan tanda tangan digital dalam dokumen PDF menggunakan C#
- Menandatangani dokumen PDF secara digital dengan server Timestamp di C#
- Verifikasi tanda tangan digital dalam PDF menggunakan C#
C# .NET API untuk Menambahkan Tanda Tangan Digital di PDF
Untuk menambah dan memverifikasi tanda tangan digital dalam dokumen PDF, kami akan menggunakan API Aspose.PDF for .NET yang merupakan API manipulasi PDF yang kuat untuk membuat, mengedit, mengonversi, dan menandatangani dokumen PDF secara digital. Anda dapat mengunduh Aspose.PDF for .NET atau menginstalnya menggunakan salah satu cara berikut di Visual Studio:
Manajer Paket NuGet
Konsol Pengelola Paket
PM> Install-Package Aspose.PDF
Tambahkan Tanda Tangan Digital ke PDF di C#
Berikut adalah langkah-langkah untuk menandatangani dokumen PDF menggunakan Aspose.PDF for .NET.
- Buat objek dari kelas Document dan inisialisasi dengan jalur dokumen PDF.
- Buat objek kelas PdfFileSignature dan inisialisasi dengan objek kelas Document.
- Buat objek kelas PKCS7 dan inisialisasi dengan jalur sertifikat dan kata sandi.
- Buat dan inisialisasi objek kelas DocMDPSignature untuk tipe tanda tangan MDP.
- Buat Persegi Panjang untuk penempatan tanda tangan.
- Menandatangani dokumen PDF secara digital menggunakan metode PdfFileSignature.Certify().
- Simpan dokumen menggunakan metode PdfFileSignature.Save().
Contoh kode berikut menunjukkan cara menambahkan tanda tangan digital ke dokumen PDF di C#.
// Muat dokumen PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
PKCS7 pkcs = new PKCS7("certificate.pfx", "1234567890"); // Use PKCS7/PKCS7Detached objects
DocMDPSignature docMdpSignature = new DocMDPSignature(pkcs, DocMDPAccessPermissions.FillingInForms);
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
// Atur tampilan tanda tangan
signature.SignatureAppearance = @"aspose-logo.png";
// Buat salah satu dari tiga jenis tanda tangan
signature.Certify(1, "Signature Reason", "Contact", "Location", true, rect, docMdpSignature);
// Simpan file PDF yang ditandatangani secara digital
signature.Save("Digitally Signed PDF.pdf");
}
}
C# Tambahkan Tanda Tangan Digital ke PDF menggunakan Timestamp Server
Anda juga dapat menambahkan tanda tangan digital ke dokumen PDF dengan server TimeStamp dengan memberikan detailnya menggunakan kelas TimestampSettings. Contoh kode berikut menunjukkan cara menandatangani dokumen PDF secara digital dengan server TimeStamp di C#.
// Muat dokumen PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
PKCS7 pkcs = new PKCS7("certificate.pfx", "WebSales"); // Use PKCS7/PKCS7Detached objects
TimestampSettings timestampSettings = new TimestampSettings("https:\\your_timestamp_settings", "user:password"); // User/Password can be omitted
pkcs.TimestampSettings = timestampSettings;
System.Drawing.Rectangle rect = new System.Drawing.Rectangle(100, 100, 200, 100);
// Buat salah satu dari tiga jenis tanda tangan
signature.Sign(1, "Signature Reason", "Contact", "Location", true, rect, pkcs);
// Simpan file PDF keluaran
signature.Save("Output.pdf");
}
}
Verifikasi PDF yang Ditandatangani Secara Digital di C#
Berikut langkah-langkah verifikasi tanda tangan digital pada dokumen PDF:
- Buat objek dari kelas Document dan inisialisasi dengan jalur dokumen PDF.
- Buat objek kelas PdfFileSignature dan inisialisasi dengan objek kelas Document.
- Akses semua tanda tangan dokumen PDF.
- Verifikasi validitas tanda tangan menggunakan metode PdfFileSignature.VerifySigned().
Contoh kode berikut menunjukkan cara memverifikasi tanda tangan digital di PDF menggunakan C#.
// Muat dokumen PDF
using (Document pdfDocument = new Document("Document.pdf"))
{
using (PdfFileSignature signature = new PdfFileSignature(pdfDocument))
{
IList<string> sigNames = signature.GetSignNames();
if (sigNames.Count > 0) // Any signatures?
{
if (signature.VerifySigned(sigNames[0] as string)) // Verify first one
{
if (signature.IsCertified) // Certified?
{
if (signature.GetAccessPermissions() == DocMDPAccessPermissions.FillingInForms) // Get access permission
{
// Lakukan sesuatu
}
}
}
}
}
}
Coba Aspose.PDF for .NET Gratis
Anda bisa mendapatkan lisensi sementara gratis untuk mencoba dan menggunakan Aspose.PDF for .NET.
Kesimpulan
Pada artikel ini, Anda telah mempelajari cara menambahkan tanda tangan digital ke file PDF di C#.NET. Selain itu, Anda telah melihat cara memverifikasi file PDF yang ditandatangani secara digital secara terprogram dalam C#. Anda cukup menginstal Aspose.PDF for .NET di aplikasi Anda dan menandatangani file PDF Anda secara digital dengan mulus.