最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【翻譯】PDF中的數(shù)字簽名[2]

2021-04-17 17:33 作者:好藍(lán)的史來姆  | 我要投稿

原文:Digital Signatures in a PDF,https://www.adobe.com/devnet-docs/etk_deprecated/tools/DigSig/Acrobat_DigitalSignatures_in_PDF.pdf


二、公鑰基礎(chǔ)設(shè)施(PKI)

PDF的數(shù)字簽名功能旨在與企業(yè)和政府環(huán)境中部署的與主流公鑰基礎(chǔ)設(shè)施(PKI)相關(guān)的所有標(biāo)準(zhǔn)兼容。PKI是在創(chuàng)建,分發(fā),管理,吊銷以及使用數(shù)字ID時使用的人員,策略,過程,硬件和軟件的集合,這些數(shù)字ID中包含簽署PDF時使用的公鑰/私鑰對。

在PDF簽名工作流的上下文中,“PKI”通常指數(shù)字ID的頒發(fā)者、用戶、管理員以及任何在這些工作流中使用的軟硬件。實現(xiàn)并符合PDF語言標(biāo)準(zhǔn)的PDF閱讀器能夠以無縫且健壯的方式與這些組件交互。

在簽署重要的紙質(zhì)文件時,人們通常需要向公證人或其他受信任的機(jī)構(gòu)提供令人滿意的身份證明,之后在他們面前對文件進(jìn)行簽署。 因為公證人被認(rèn)為是值得信賴的,所以你可以信任公證人見證的簽名。 使用PKI是一種提供類似信任的方法。

與提供信任直接相關(guān)的一些常見PKI組件包括:

  • 證書頒發(fā)機(jī)構(gòu)(CA):最終的信任機(jī)構(gòu),可以出售或發(fā)行數(shù)字ID(例如Verisign或Geotrust)。 CA會簽署自己的證書(自我簽名),并且其證書通常是證書鏈頂部的“根”證書。

  • 中間證書(ICAs):一種CA,在證書鏈中其位于終端用戶和根證書之間。 該證書不是自簽名的,并且ICA通常提供諸如策略,時間戳,吊銷列表等服務(wù)。

  • 終端用戶證書(EE):簽署者的證書,也是簽署鏈上最后的元素。根據(jù)定義,終端用戶證書不包含CA基本約束值。

  • 數(shù)字ID:與個人或?qū)嶓w相關(guān)聯(lián)的基于ITU-T X.509 v3標(biāo)準(zhǔn)的數(shù)據(jù)電子表示形式。 它存儲在計算機(jī)或網(wǎng)絡(luò)上受密碼保護(hù)的文件,USB令牌,智能卡等中。數(shù)字ID包含公鑰證書,私鑰和其他數(shù)據(jù)

  • 公鑰證書:一個包含公鑰/私鑰對的數(shù)字公鑰部分以及用于定義證書所有者,有效期和用法的關(guān)聯(lián)擴(kuò)展和屬性的文件。

  • 私鑰:PKI系統(tǒng)中的密鑰,用于驗證傳入消息和對傳出消息進(jìn)行簽名。在密鑰生成期間,私鑰始終與其公鑰配對。

盡管數(shù)字ID及其發(fā)行實體是任何PKI的核心,但PKI還包括許多其他企業(yè)所有和第三方項目。 PKI管理員通常管理著數(shù)字ID的創(chuàng)建與分發(fā),LDAP(Light Directory Access Portocol)服務(wù)器,時間戳服務(wù)器,吊銷列表和其他項目。PDF語言支持所有與這些組件交互所需的數(shù)據(jù)。

1. PKI,PDF和簽署

PDF支持將簽名嵌入文件自身,而不是作為單獨(dú)的數(shù)據(jù)管理或者添加到現(xiàn)有文件格式中。這意味著查看應(yīng)用程序可以不破壞簽名而進(jìn)行特定類型的修改。對于其它數(shù)字簽名格式,用戶可能需要使用兩個應(yīng)用來處理文件和簽名,或者需要為每個簽名文件管理兩份單獨(dú)的文件。

PDF中的每個簽名都與簽名處理程序關(guān)聯(lián)。簽名被放置在PDF簽名字典中,里面包含用于處理簽名的簽名處理器名字(如圖3)。Adobe Acrobat leverages Public/Private Key(PPK)加密技術(shù)內(nèi)置了簽名處理程序。PPK基于這樣一種思想,即用私鑰加密的值只能使用公鑰解密(反之,在為特定收件人加密文件時也是同樣的,但這不在本文檔的范圍之內(nèi))。

對PDF進(jìn)行簽名后,簽名者的證書將嵌入在PDF文件中。圖3展示了存儲在用戶硬件設(shè)備上的數(shù)字ID與嵌入PDF文件中簽名值的關(guān)系。簽名值可能還包含額外的信息,例如簽名圖片,時間戳和可能特定于用戶,系統(tǒng)或應(yīng)用程序的其他數(shù)據(jù)。

簽署過程如下:

1. 待簽名文件被處理成字節(jié)流。

2. 將整個PDF文件寫入磁盤,并留出適當(dāng)大小的空間用于簽名值以及ByteRange數(shù)組中的最壞情況值。

    • ByteRange數(shù)組由四個數(shù)字組成。每對中的第一個數(shù)字是對于文件的偏移量(從頭開始,起始是0),表示需要被包含在哈希計算中的字節(jié)流的起始。第二個數(shù)字是該流的長度。這兩對定義了兩個字節(jié)序列,這些字節(jié)序列定義了要哈希的內(nèi)容。實際簽名值存儲在第一個序列的末尾與第二個序列的開頭之間的/Contents鍵中。圖4中,哈希是針對字節(jié)0到839和960到1200計算的。

3. 一旦根據(jù)文件中的偏移量知道了簽名值的位置,就可以使用正確的值填充ByteRange數(shù)組。因為字節(jié)偏移禁止修改,所以新數(shù)組語句之后的多余字節(jié)將被零覆蓋。

4. 使用諸如SHA-256之類的哈希算法,由實際ByteRange值指定的字節(jié)來計算整個文件的哈希。Acrobat始終在整個PDF文件中計算文件簽名的哈希值,該哈希值從字節(jié)0開始到物理文件的最后一個字節(jié)結(jié)束,但不包括簽名值字節(jié)。

5. 哈希值由簽署者的私鑰加密,并生成一個十六進(jìn)制編碼的PKCS#7對象簽名對象。

6. 簽名對象放置在磁盤上的文件中,覆蓋占位符/Contents值。 未用于簽名對象的任何空間都將被零覆蓋。

7. 將PDF文件重新加載到Acrobat中,以確保內(nèi)存和磁盤上的版本相同。

提示:?這是一個高層級展示。對于更詳細(xì)的一些應(yīng)用程序級配置選項的快速鍵,請參閱“簽名創(chuàng)建工作流”。

2. PKI,PDF和簽名校驗

由于私鑰和公鑰僅僅是數(shù)字,因此任何人都可以使用任意數(shù)量的工具生成公鑰和私鑰對。 諸如Acrobat之類的應(yīng)用程序提供了一種生成自簽名證書的機(jī)制,該證書將簡單的用戶提供的身份綁定到由應(yīng)用程序生成的公鑰。 然后使用相應(yīng)的私鑰對其進(jìn)行簽名。 顯然,沒有什么可以阻止某人生成使用他人名字的自簽名證書的。 因此,未知的自簽名證書沒有很高的保證水平。

為了解決這種類型的信任問題,組織者使用一種PKI,該P(yáng)KI包括發(fā)布,記錄和跟蹤數(shù)字ID的獨(dú)立權(quán)限。 由于PDF支持將簽名者的公共密鑰作為簽名的一部分進(jìn)行嵌入,因此文件接收者始終可以使用它來進(jìn)行簽名驗證。要驗證簽名,驗證者只需檢索簽名者的證書,并將其與自己的受信任證書列表進(jìn)行比較:

  1. 收件人的應(yīng)用程序使用簽名者使用的相同算法(不包括簽名值)來生成文件的單向哈希。

  2. 使用簽名者的公鑰對文件中加密的哈希值進(jìn)行解密。

  3. 將解密的哈希值與本地生成的哈希值進(jìn)行比較。

  4. 如果它們相同,則將簽名報告為已知。

提示:?簽名是否受信任或有效是單獨(dú)的問題。 簽名信任取決于收件人的應(yīng)用程序配置。 簽名狀態(tài)還取決于文件完整性檢查。


【翻譯】PDF中的數(shù)字簽名[2]的評論 (共 條)

分享到微博請遵守國家法律
遂川县| 慈利县| 石柱| 新安县| 永安市| 吉水县| 平安县| 华容县| 丰都县| 阳谷县| 乾安县| 浑源县| 惠水县| 济阳县| 肃宁县| 合江县| 淮安市| 永善县| 上杭县| 黄大仙区| 永川市| 平昌县| 政和县| 禹城市| 安国市| 高雄市| 赫章县| 永修县| 连州市| 富裕县| 余姚市| 安溪县| 买车| 兴和县| 河津市| 禄劝| 娄底市| 许昌市| 张北县| 嵊州市| 云南省|