2012-12-20 155 views
0

我正在使用iText在PDF中應用數字簽名。數字簽名的PDF顯示如下信息:「文檔證書的有效性未知,作者無法驗證,至少有一個籤​​名有問題。」在頂部。簽名PDF顯示消息「文檔的有效性未知」,iText

當我將證書添加到用於創建簽名PDF的信任身份時,生成的簽名PDF將顯示「已簽名且所有簽名均有效」。

是否可以通過不向可信身份添加證書來解決此問題?

在此先感謝。

+0

不幸的是,您沒有提供PDF示例來演示該問題。但要相信某些證書,您顯然必須明確信任它或某些父母,父母,...證書並提供中間證書。有問題的簽名者證書是否自簽名或屬於某個私人CA? – mkl

+0

而不是手動信任證書,它應該自動信任,它不應該顯示有效性錯誤。簽名者證書從verisign Inc.獲得。 – Ramasamy

+0

如上所述,短語提供樣本PDF。 – mkl

回答

1

顯示消息有兩個原因。

首先,它是您使用自簽名證書或其他證書,其證書鏈不以根證書結尾,由驗證應用程序信任的證書。

其次是簽名參數設置不正確,Reader不知道它需要在Windows證書存儲中查找證書。我不知道如何在iText中指定我的意思 - 在我們的SecureBlackbox中有一個屬性。

+0

其實iText不是顯示該消息的程序; iText本身並不提供UI。我假設顯示該消息的組件是Adobe Reader。 'Orn是否指簽名創建組件中的參數? – mkl

+0

@mkl是,驗證時使用的存儲類型實際上是在簽名創建時指定的。以下是我們常見問題解答中的一篇文章,其中介紹了詳細信息:http://www.eldos.com/security/articles/2992.php –

+0

經過Google搜索,看起來像嚴格執行Adobe Acrobat/Reader版本6。雖然我沒有測試過。但是如果缺少中間證書確實是問題,那麼原始海報最好考慮嵌入整個證書鏈。這不僅有助於Windows的Adobe程序版本,而且實際上還有任何體面的驗證工具。不幸的是,他還沒有提供樣品簽名來檢查... – mkl

2

請仔細閱讀http://itextpdf.com/book/digitalsignatures

第3.4節名爲「如何獲得一個綠色的對勾。」

簡短版本:如果您希望顯示綠色複選標記而不必手動安裝根證書的PDF,則至少需要一個存儲在物理設備上的私鑰,例如硬件安全模塊,硬件安全模塊USB令牌或智能卡。

你有這樣的鑰匙嗎?您是否要求您的CA獲得CDS或AATL證書?

+0

感謝您的回覆。 是的,我正在嘗試使用由GlobalSign提供的CDS證書。 在下面的網址試圖說明: https://www.globalsign.com/resources/installation-guide/pdf-signing-installation-guide.pdf – Ramasamy

+0

我的情況是,用戶將簽署的文件從任何地方。 使用從CA獲得的iText和CDS證書在服務器端生成簽名的PDF。 在這種情況下, 1.哪一個我需要使用USB token/HSM? 2.我在以下文章中紅色 如果我使用USB令牌(SafeNet iKey4000)創建數字簽名,每次簽名時是否會要求輸入密碼? 頁碼88,http://itextpdf.com/book/digitalsignatures20121017.pdf 請指教。 – Ramasamy

+0

如果用戶必須以自己的名字在各處簽名,他們都需要擁有自己的私鑰的自己的USB令牌。在這種情況下,純粹的服務器端簽名是不可能的。您始終需要使用簽名者個人私鑰的客戶端軟件。將私鑰發送到服務器是不可能的(也是荒謬的)。 –

1

回覆:有沒有可能通過不向可信身份添加證書來解決這個問題?

答案:否,除非您切換到由Adobe信任的證書頒發機構授予的數字簽名證書。

由於Adobe Reader不信任操作系統中的CA,因此這是Adobe的一個持續問題。 - 相反,Adobe有their own list

因此,要麼:

  1. 你得到從Adobe名單上的公司之一,個人證書。
  2. 您在您的網站上發佈貴組織的根證書,並向收件人提供如何讓Adobe信任您的說明。 (如果您願意,您的組織可以只有一個成員。)有關詳細信息,請參閱下面的內容。
  3. 您告訴收件人如何單擊Adobe簽名工具欄以檢查簽名證書的詳細信息(並忽略來自Adobe的可怕默認警告)。

在潮溼的簽名世界,還有,你需要提供政府頒發的身份證明文件的複印件情況下,您只需登錄的東西,和其他案件。不幸的是,在當前的數字簽名領域,每簽名需要附上您的駕駛執照副本。這根本不是現實。

一個常見而成功的答案是發佈組織的所有組織簽名者的根證書。請參閱AppleWells Fargo示例。

您可以使用來自受信任的CA的證書在SSL保護的頁面上發佈您的根證書。這將使業務合作伙伴對於相信組織的根證書確實來自您的組織感到放心。