LEADTOOLS使用教程:使用LEADTOOLS從PDF檢索數(shù)字簽名信息
LEADTOOLS是一個(gè)綜合性工具包系列,旨在幫助程序員將光柵、文檔、醫(yī)學(xué)、多媒體和矢量圖像集成到其臺(tái)式機(jī)、服務(wù)器、平板電腦和移動(dòng)應(yīng)用程序中。本文主要介紹使用LEADTOOLS從PDF中檢索數(shù)字簽名信息。
LEADTOOLS PDF Pro 具備瀏覽光柵圖與編輯PDF文件所需的所有功能。該產(chǎn)品同時(shí)也包含了許多高級(jí)功能,例如提取文本、圖片、超鏈接、元數(shù)據(jù)以及當(dāng)前PDF文檔的操作頁(yè)面,將PDF/A轉(zhuǎn)換為一個(gè)真正的文檔,線(xiàn)性化,LEADTOOLS PDF優(yōu)化器還能夠減少PDF文件占用的空間。
點(diǎn)擊下載LEADTOOLS PDF Pro正式版
數(shù)字簽名是電子簽名中最先進(jìn)和最安全的類(lèi)型之一。這些簽名提供最高級(jí)別的保證,并用于遵守法律和法規(guī)要求。數(shù)字簽名使用基于證書(shū)的數(shù)字ID來(lái)驗(yàn)證簽名者的身份,并使用加密將每個(gè)簽名綁定到文檔。借助LEADTOOLS SDK,開(kāi)發(fā)人員可以使用LEADTOOLS PDF庫(kù)檢索有關(guān)這些數(shù)字簽名的信息。.NET和Java PDFSignature Class包含PDF數(shù)字簽名的屬性。
對(duì)于電子商務(wù)行業(yè)的人士或接收帶有數(shù)字簽名的合法PDF文檔的任何人來(lái)說(shuō),這都是完美的選擇。您可以檢查這些簽名的有效性,獲取證書(shū)信息,獲取頁(yè)面上的位置等等。所有這些只需幾行代碼即可完成。
在開(kāi)始之前,您必須下載LEAD的OpenSSL-Binaries。該zip文件包含由LEAD Technologies,Inc.編譯和數(shù)字簽名的最新OpenSSL 1.0.2和1.1.0庫(kù)的32/64位版本。這些文件需要添加到項(xiàng)目的輸出目錄中。
編碼
using (PDFDocument document = new PDFDocument(sourceFileName)) { // Parse the signatures for all pages PDFParsePagesOptions options = PDFParsePagesOptions.Signatures; document.ParsePages(options, 1, -1); foreach (PDFDocumentPage page in document.Pages) { // Check PDF for signatures if (page.Signatures != null && page.Signatures.Count > 0) { // Gets the status of digital signature support in the LEADTOOLS PDF toolkit. RasterExceptionCode status = PDFDocument.GetDigitalSignatureSupportStatus(); if (status == RasterExceptionCode.Success) { // Get info of PDF Signature foreach (var pdfSignature in page.Signatures) { Console.WriteLine($"Bounds of signature: {pdfSignature.Bounds}"); Console.WriteLine($"Number of bits of the signature's public key: {pdfSignature.PublicKeyBits}"); Console.WriteLine($"Page number: {pdfSignature.PageNumber}"); Console.WriteLine($"Can signature be validated: {pdfSignature.CanValidate}"); Console.WriteLine($"Valid from: {pdfSignature.ValidFrom}"); Console.WriteLine($"Valid to: {pdfSignature.ValidTo}"); Console.WriteLine($"Signature version: {pdfSignature.Version}"); Console.WriteLine($"Certificate Info:"); foreach (var info in pdfSignature.CertificateInfo) { Console.WriteLine($"\t{info}"); } Console.WriteLine(); } } } } }本文內(nèi)容就是這樣了,希望對(duì)您有所幫助!想要了解更多LEADTOOLS系列產(chǎn)品信息,請(qǐng)點(diǎn)擊這里!
相關(guān)內(nèi)容推薦: