Office 2010 中的數字簽名

大家好,可信計算安全團隊向各位介紹 Office 2010 中數字簽名的一些新增功能。首先,我將簡要說明什麼是數字簽名以及如何使用數字簽名,然後將詳細介紹數字簽名在 Office 2010 中的工作原理。

什麼是數字簽名?

現在,越來越多的商業交易以電子方式開展。因此,爲了從法律上保證信賴方履行交易義務,數字簽名的使用越來越廣泛。數字簽名用於驗證簽署文檔的用戶的身份,並確認將數字簽名應用於文檔後內容未經修改。數字簽名提供基於加密技術的安全性,並幫助緩解與電子業務交易相關的風險。通過對數字簽名的改進,Office 可以滿足全球企業和公共部門實體的信息安全需要。
要創建數字簽名,必須具有數字證書,數字證書用於向信賴方證明您的身份,您應該從可信的證書頒發機構 (CA) 獲得該證書。如果您還沒有數字證書,可在 Office 市場中獲得 Microsoft 合作伙伴提供的數字證書以及集成到 Office 中的其他高級簽名服務。

插入數字簽名

在 Word、Excel 和 PowerPoint 2010 中,可以通過轉到 Office Backstage 視圖添加數字簽名:
圖像
在 Word、Excel 和 InfoPath 中,可以通過轉到“插入”(Insert) 選項卡添加簽名行或簽名圖章:
圖像
簽名行的外觀如下:
圖像
簽名圖章(通常在東亞地區使用)的外觀如下:
圖像

簽名在 Office 中的工作原理

Office 2007 及其更高版本使用稱爲 XML-DSig 的開放式簽名標準,它取代了 Office 2003 以及更早版本中不太完善的二進制簽名。符合 XML-DSig 標準的簽名採用用戶通常可讀的 XML 格式。有關 XML-DSig 的詳細信息,請參閱 http://www.w3.org/Signature
Office 2010 數字簽名可以使用 Windows Vista 以及更高版本中支持的高級算法(如橢圓曲線公鑰算法)。所有受支持的操作系統還允許使用更可靠的哈希算法,如 SHA-512。
數字簽名的最緊迫問題是您使用的證書將過期(通常在一年之內)。證書過期後,任何人都不會信任該簽名。如果希望能在更長的時間段內信任簽名,必須保存驗證證書所需的信息的副本。可能還需要考慮加密過時的問題。
幸運的是,對 XML-DSig 標準的擴展 ( XAdES) 中提供了這些問題的解決方案。

什麼是 XAdES?

XAdES(XML 高級電子簽名)是 XML-DSig 的一組分層擴展,它分爲多個級別,每個級別都在上一級別的基礎上構建以提供越來越可靠的數字簽名。
通過實施 XAdES,Office 將符合 1999/93/EC 指令中的歐盟高級電子簽名標準,以及將 XAdES 定義爲巴西公認數字簽名標準的一項巴西政府新指令。
Office 2010 可在 XML-DSig 簽名基礎上創建不同級別的 XAdES 簽名:
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至
Office 2010 Beta 只能創建 XAdES-T 簽名以及更低級別的簽名,但是 Office 2010 RTM 能夠創建上表中的所有簽名。
時間戳數字簽名(XAdES-T 簽名)是 Office 2010 中着重考慮的重要方案。爲了創建時間戳簽名,您將需要:
  • 設置符合 RFC 3161 的時間戳服務器。
  • 配置簽名策略以使客戶端系統瞭解時間戳服務器的位置。您還需要將時間戳服務器的根證書添加到根證書存儲中。
配置完成後,即可按照通常使用的方式創建簽名。受信任時間戳服務器中的時間戳可以延長簽名的有效期,這是因爲即使證書過期,時間戳仍可以證明在簽署時證書未過期。因此,時間戳有效解決了證書過期問題,即使應用簽名後證書被吊銷,簽名仍然有效。

在 Office 2010 RTM 中創建 XAdES 簽名

默認情況下,Office 2010 創建 XAdES-EPES 簽名,並使用註冊表設置指定要創建的簽名的級別。有兩個用於控制 Office 創建的簽名類型的註冊表設置:XAdESLevel 和 MinXAdESLevel。
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至
通過 MinXAdESLevel 設置,您可以確保創建的簽名符合所需的 XAdES 級別。如果時間戳服務器不可用,XAdES-T 或更高級別的簽名將失敗;如果吊銷信息不可用,XAdES-C 或更高級別的簽名將失敗。如果具有最低設置,您就可以嘗試創建 XAdES-X-L 簽名,但如果時間戳服務器停機,則將回退到 XAdES-EPES。
要創建 XAdES-T 簽名以及更高級別的簽名,需要爲 Office 提供時間戳服務器以便查詢時間戳:
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至

有關 XAdES 簽名的建議

如果要創建 XAdES 簽名,建議使用下列三種級別之一:
  • XAdES-EPES — 此設置爲默認設置,因爲創建這種簽名的要求與創建普通 XML-DSig 簽名的要求相同,沒有其他要求。
  • XAdES-T — 此設置要求提供符合 RFC 3161 的時間戳服務器,並且將 Office 配置爲使用該服務器。如果具有時間戳服務器,應該將 XAdES-T 配置爲默認設置。
  • XAdES-X-L — 如果具有時間戳服務器並且需要包含完整的吊銷和證書鏈信息的簽名,請使用此設置。
示例:
Sam 要創建 XAdES-X-L 簽名。如果無法實現,他可以接受的簽名級別最低爲 XAdES-T。他進行了如下設置:
  • XAdESLevel = 5(他請求建立 XAdES-X-L)
  • MinXAdESLevel = 2(他可以接受的簽名類型最低爲 XAdES-T 簽名)
在本示例中,Office 會嘗試創建 –X-L 級別的簽名。如果 Office 無法創建 XAdES-X-L 簽名,Office 會回退到上次成功創建的 XAdES 級別,條件是該級別不低於 MinXAdESLevel。在本示例中,如果 Office 無法創建 XAdES-X-L 簽名,XAdES-T、XAdES-C 和 XAdES-X 簽名也是可以接受的。否則,Office 不能添加簽名。

在 Office 2010 Beta 中創建 XAdES 簽名

如前所述,Office 2010 Beta 只能創建 XAdES-T 及更低級別的簽名,這是因爲我們在 Beta 之後的版本中才添加了其餘的 XAdES 簽名。上面介紹的 XAdESLevel 註冊表設置仍然適用,但是最高級別爲 2 (XAdES-T)。MinXAdESLevel 設置不存在,但是隻能創建兩種類型的 XAdES 簽名 — 包含時間戳的簽名和不包含時間戳的簽名,具體由 TimestampRequired 設置(該設置在 RTM 版本中不存在)控制。
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至
要創建 XAdES-T 簽名,您還需要設置 TimestampRequired(請參閱下面的說明)和 TSALocation(請參閱上面的說明):
包含不同類型的數字簽名級別的表。如果您看不到該圖像中的信息,請發送電子郵件至
XAdES 功能是 Office 2010 中的衆多安全增強功能之一。感謝您閱讀這篇文章,我們期待着您的反饋!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章