ลงชื่อเข้าใช้แบบดิจิทัลในไฟล์ PDF
ในบทช่วยสอนนี้ เราจะแนะนำคุณตลอดขั้นตอนการเซ็นชื่อแบบดิจิทัลในไฟล์ PDF โดยใช้ Aspose.PDF สำหรับ .NET ลายเซ็นดิจิทัลรับประกันความถูกต้องและความสมบูรณ์ของเอกสาร โดยการเพิ่มลายนิ้วมืออิเล็กทรอนิกส์ที่เป็นเอกลักษณ์
ขั้นตอนที่ 1: ข้อกำหนดเบื้องต้น
ก่อนที่คุณจะเริ่มต้น ตรวจสอบให้แน่ใจว่าคุณมีข้อกำหนดเบื้องต้นต่อไปนี้:
- ความรู้พื้นฐานเกี่ยวกับภาษาการเขียนโปรแกรม C#
- การติดตั้ง Visual Studio บนเครื่องของคุณ
- ติดตั้งไลบรารี Aspose.PDF สำหรับ .NET แล้ว
ขั้นตอนที่ 2: การตั้งค่าสภาพแวดล้อม
ในการเริ่มต้น ให้ทำตามขั้นตอนเหล่านี้เพื่อตั้งค่าสภาพแวดล้อมการพัฒนาของคุณ:
- เปิด Visual Studio และสร้างโครงการ C# ใหม่
- นำเข้าเนมสเปซที่จำเป็นลงในไฟล์โค้ดของคุณ:
using Aspose.Pdf;
using Aspose.Pdf.Forms;
using System.Collections.Generic;
ขั้นตอนที่ 3: ลายเซ็นดิจิทัล
ขั้นตอนแรกคือการเซ็นชื่อแบบดิจิทัลในไฟล์ PDF รหัสที่ให้มาจะแสดงวิธีสร้างลายเซ็นดิจิทัลด้วย Aspose.PDF สำหรับ .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);
}
}
โค้ดนี้จะโหลดไฟล์ PDF สร้างลายเซ็นดิจิทัลที่มีลักษณะตามที่ระบุ จากนั้นบันทึกไฟล์ PDF ด้วยลายเซ็นที่เพิ่มเข้าไป
ขั้นตอนที่ 4: การตรวจสอบลายเซ็น
หลังจากเพิ่มลายเซ็นดิจิทัลแล้ว คุณสามารถตรวจสอบว่าไฟล์ PDF มีลายเซ็นที่ถูกต้องหรือไม่
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)
{
// ทำอะไรสักอย่าง
}
}
}
}
}
}
รหัสนี้จะตรวจสอบลายเซ็นแรกของไฟล์ PDF และดำเนินการเพิ่มเติมหากลายเซ็นได้รับการรับรองและมีสิทธิ์เฉพาะ
ตัวอย่างซอร์สโค้ดสำหรับการเซ็นชื่อแบบดิจิทัลโดยใช้ Aspose.PDF สำหรับ .NET
try
{
// เส้นทางไปยังไดเร็กทอรีเอกสาร
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"); // ใช้วัตถุ PKCS7/PKCS7Detached
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, "Signature Reason", "Contact", "Location", true, rect, docMdpSignature);
// บันทึกไฟล์ 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) // มีลายเซ็นบ้างไหม?
{
if (signature.VerifySigned(sigNames[0] as string)) // ยืนยันอันแรก
{
if (signature.IsCertified) // ได้รับการรับรอง?
{
if (signature.GetAccessPermissions() == DocMDPAccessPermissions.FillingInForms) // รับสิทธิ์การเข้าถึง
{
// ทำอะไรสักอย่าง
}
}
}
}
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
บทสรุป
ขอแสดงความยินดี! คุณดำเนินการลายเซ็นดิจิทัลในไฟล์ PDF โดยใช้ Aspose.PDF สำหรับ .NET สำเร็จแล้ว บทช่วยสอนนี้ครอบคลุมกระบวนการทีละขั้นตอน ตั้งแต่การเพิ่มลายเซ็นดิจิทัลไปจนถึงการตรวจสอบความถูกต้อง ตอนนี้คุณสามารถใช้คุณสมบัตินี้เพื่อรักษาความปลอดภัยไฟล์ PDF ของคุณด้วยลายเซ็นดิจิทัล
คำถามที่พบบ่อย
ถาม: จุดประสงค์ของบทช่วยสอนนี้คืออะไร?
ตอบ: บทช่วยสอนนี้จะแนะนำคุณตลอดกระบวนการเซ็นชื่อไฟล์ PDF แบบดิจิทัลโดยใช้ Aspose.PDF สำหรับ .NET ลายเซ็นดิจิทัลจะเพิ่มลายนิ้วมืออิเล็กทรอนิกส์เพื่อรับรองความถูกต้องและความสมบูรณ์ของเอกสาร
ถาม: มีข้อกำหนดเบื้องต้นอะไรบ้างก่อนที่จะเริ่ม?
ตอบ: ก่อนที่คุณจะเริ่มต้น ตรวจสอบให้แน่ใจว่าคุณมีความเข้าใจพื้นฐานเกี่ยวกับภาษาการเขียนโปรแกรม C# ติดตั้ง Visual Studio และติดตั้งไลบรารี Aspose.PDF สำหรับ .NET แล้ว
ถาม: ฉันจะตั้งค่าสภาพแวดล้อมการพัฒนาได้อย่างไร
ตอบ: ทำตามขั้นตอนที่ให้ไว้เพื่อตั้งค่าสภาพแวดล้อมการพัฒนาของคุณ รวมถึงการสร้างโปรเจ็กต์ C# ใหม่ใน Visual Studio และการนำเข้าเนมสเปซที่จำเป็น
ถาม: ฉันจะเพิ่มลายเซ็นดิจิทัลลงในไฟล์ PDF ได้อย่างไร
ตอบ: โค้ดตัวอย่างที่ให้มาจะสาธิตวิธีการโหลดไฟล์ PDF, สร้างลายเซ็นดิจิทัล, ระบุลักษณะที่ปรากฏ และบันทึกไฟล์ PDF ที่ลงนามแล้ว ลายเซ็นดิจิทัลถูกเพิ่มโดยใช้Certify
วิธีการของPdfFileSignature
วัตถุ.
ถาม: ฉันจะตรวจสอบความถูกต้องของลายเซ็นดิจิทัลได้อย่างไร
ตอบ: หลังจากเพิ่มลายเซ็นดิจิทัลแล้ว คุณสามารถใช้โค้ดตัวอย่างเพื่อตรวจสอบความถูกต้องของลายเซ็นได้ จะตรวจสอบว่าลายเซ็นได้รับการรับรองและมีสิทธิ์การเข้าถึงเฉพาะหรือไม่
ถาม: อะไรPKCS7
object represent?
ตอบ:PKCS7
วัตถุถูกใช้เพื่อให้ฟังก์ชันการเข้ารหัสสำหรับลายเซ็นดิจิทัล ใช้เพื่อสร้างลายเซ็นดิจิทัลในโค้ดตัวอย่างที่ให้มา
ถาม: ฉันสามารถปรับแต่งลักษณะที่ปรากฏของลายเซ็นดิจิทัลได้หรือไม่
ตอบ: ได้ คุณสามารถปรับแต่งลักษณะที่ปรากฏของลายเซ็นดิจิทัลได้โดยการระบุเส้นทางไปยังรูปภาพในSignatureAppearance
ทรัพย์สินของPdfFileSignature
วัตถุ.
ถาม: จะเกิดอะไรขึ้นหากลายเซ็นไม่ถูกต้อง
ตอบ: หากลายเซ็นไม่ถูกต้อง กระบวนการตรวจสอบจะล้มเหลว และการดำเนินการที่เกี่ยวข้องภายในบล็อครหัสยืนยันจะไม่ถูกดำเนินการ
ถาม: ฉันจะมั่นใจในความปลอดภัยของลายเซ็นดิจิทัลได้อย่างไร
ตอบ: ลายเซ็นดิจิทัลมีความปลอดภัยโดยการออกแบบและใช้เทคนิคการเข้ารหัสเพื่อให้มั่นใจในความถูกต้องและความสมบูรณ์ ตรวจสอบให้แน่ใจว่าคุณเก็บคีย์ส่วนตัวของคุณไว้อย่างปลอดภัยและปฏิบัติตามแนวทางปฏิบัติที่ดีที่สุดในการจัดการลายเซ็นดิจิทัล
ถาม: ฉันสามารถเพิ่มลายเซ็นดิจิทัลหลายรายการลงใน PDF ได้หรือไม่
ตอบ: ได้ คุณสามารถเพิ่มลายเซ็นดิจิทัลหลายรายการลงในไฟล์ PDF ได้โดยใช้PdfFileSignature
วัตถุSign
หรือCertify
วิธีการ ลายเซ็นแต่ละรายการจะมีลักษณะและการกำหนดค่าของตัวเอง