專利名稱::電子簽名的生成的制作方法電子簽名的生成背景電子商務(wù)是跨局域網(wǎng)、廣域網(wǎng)和全球網(wǎng)絡(luò)在各方之間進(jìn)行商業(yè)交易的一種新興方法。然而,為了使電子商務(wù)被認(rèn)為是一種進(jìn)行貿(mào)易的安全且可靠的手段,在適當(dāng)?shù)奈恢帽仨氂羞m當(dāng)?shù)目刂苼肀Wo(hù)交易并確保交易中的雙方的信任和信用。例如,重要的是一方可以在提供有效合法保護(hù)的制度下依賴于對另一方在電子進(jìn)行的貿(mào)易中的要約的接受。在這一方面,提供了電子簽名作為保護(hù)交易信息并提供電子商務(wù)中的信任的有效的安全組件。歐洲官方指令將電子簽名定義為"附加到或邏輯上關(guān)聯(lián)于其它電子數(shù)據(jù)并且擔(dān)當(dāng)認(rèn)證方法的電子形式的數(shù)據(jù)",但是也可采用其它定義或該定義的變型。一般而言,電子簽名可以提供關(guān)于一標(biāo)識的簽署者以及可任選地一角色在給定時(shí)刻在一簽名策略下明確地簽署了承諾的證據(jù)。該簽名策略指定了關(guān)于簽名創(chuàng)建和驗(yàn)證的技術(shù)上的和程序上的要求,以滿足特定的商業(yè)需求。給定的合法框架可以認(rèn)可特定的簽名策略為滿足其法定的、規(guī)章的、以及司法的要求。例如,特定的簽名策略可被法庭認(rèn)可為滿足關(guān)于電子商務(wù)的合法要求。因此,在該合法框架內(nèi),電子合同的持有者可以提供關(guān)于該合同是由另一方電子地簽署的并且因此可對該方強(qiáng)制實(shí)行的證據(jù)?;倦娮雍灻纳梢话闵婕澳承┨囟ǖ拿艽a操作。然而,電子簽名的生成在添加了諸如限定特性、時(shí)間戳和聯(lián)署等高級特征時(shí)變?yōu)楦鼜?fù)雜的問題。盡管這些特征有助于長期的簽名有效性以及原始電子簽名的非否認(rèn),但是它們也使電子簽名生成過程變得更復(fù)雜?,F(xiàn)有的方法無法提供用于生成此類高級電子簽名的穩(wěn)健的框架,尤其是在存在多個(gè)時(shí)間戳和聯(lián)署的情況下。概述此處所描述并要求保護(hù)的實(shí)現(xiàn)通過提供一種使用一穩(wěn)健的編程框架來創(chuàng)建與數(shù)據(jù)項(xiàng)相關(guān)聯(lián)的電子簽名的生成器而解決了上述問題,其中該電子簽名包括時(shí)間戳和/或聯(lián)署。該生成器可創(chuàng)建基于數(shù)據(jù)項(xiàng)來計(jì)算電子簽名的簽名值的簽名對象。該生成器還創(chuàng)建一簽名時(shí)間戳對象來獲得該簽名值的時(shí)間戳,其中該時(shí)間戳與該電子簽名相關(guān)聯(lián)。該生成器還可在該簽名對象上調(diào)用一聯(lián)署服務(wù)來基于該簽名對象的簽名值獲得聯(lián)署,其中該聯(lián)署與該電子簽名相關(guān)聯(lián)。在一些實(shí)現(xiàn)中,提供作為計(jì)算機(jī)程序產(chǎn)品的制品。計(jì)算機(jī)程序產(chǎn)品的一個(gè)實(shí)現(xiàn)提供可由計(jì)算機(jī)系統(tǒng)讀取并編碼計(jì)算機(jī)程序的計(jì)算機(jī)程序存儲介質(zhì)。計(jì)算機(jī)程序產(chǎn)品的另一實(shí)現(xiàn)可由計(jì)算系統(tǒng)在載波內(nèi)具體化并編碼計(jì)算機(jī)程序的計(jì)算機(jī)數(shù)據(jù)信號來提供。在此還描述和列舉了其它實(shí)現(xiàn)。提供本概述以便以簡化形式介紹將在以下詳細(xì)描述中進(jìn)一步描述的一些概念。本概述并不旨在標(biāo)識所要求保護(hù)的主題的關(guān)鍵特征或必要特征,也不旨在用于幫助確定所要求保護(hù)的主題的范圍。圖1示出了用于生成并驗(yàn)證電子簽署的數(shù)據(jù)的示例過程。圖2示出了對電子簽署的文檔的示例生成器的輸入。圖3示出了用于在數(shù)據(jù)項(xiàng)上生成時(shí)間戳的示例操作。圖4示出了用于在數(shù)據(jù)項(xiàng)上生成聯(lián)署的示例操作。圖5示出了可用于實(shí)現(xiàn)所描述的技術(shù)的示例系統(tǒng)。詳細(xì)描述圖1示出了用于生成并驗(yàn)證電子簽署的數(shù)據(jù)的示例過程100。使用電子簽名生成器120,簽署者102將電子簽名與電子文檔相關(guān)聯(lián)。電子簽名可用于不論是否加密的各種數(shù)據(jù)(例如,文檔、消息、文件等),來認(rèn)證該數(shù)據(jù)的簽署者的身份并確保該數(shù)據(jù)的原始內(nèi)容自從簽署的時(shí)間以來未改變。從簽署者的觀點(diǎn)來看,高級簽名的創(chuàng)建一般涉及與生成器120的用戶界面的交互。例如,簽署者102可選擇其文字處理或電子郵件程序中的"簽署文檔"菜單選項(xiàng),這執(zhí)行生成器120以實(shí)現(xiàn)簽署。所簽署的文檔然后可被發(fā)送到接收方116或被存儲以供接收方116訪問。一般而言,生成器120采用高級電子簽名框架來生成與該文檔相關(guān)聯(lián)的電子簽名。一個(gè)示例高級電子簽名框架的規(guī)范在JuanCarlosCruellas、GregorCarlinger、DenisPinkas、JohnRoss的XMLAdvancedElectronicSignatures(XAdES)(XML高級電子簽名(XAdES),萬維網(wǎng)聯(lián)盟,注解NOTE-XAdES-20030220,2003年2月中有描述,該文獻(xiàn)對于其描述和教導(dǎo)的所有內(nèi)容通過引用結(jié)合于此。此處所描述的技術(shù)的一個(gè)實(shí)現(xiàn)采用了x^/M&;g""^M類,該類提供了用于創(chuàng)建和驗(yàn)證簽名的高級的、面向簽名的API(應(yīng)用程序編程接口)。laAW/g"Wwre類基于MICROSOFT.NET類的5^stem.&cw〃^.07//ogra;ty.Xw/.S^"ea^m/,該接口被展示給調(diào)用者以啟用至少一種形式的可擴(kuò)展性。然而,應(yīng)當(dāng)理解,也可采用其它實(shí)現(xiàn)。例如,在一個(gè)實(shí)現(xiàn)中,生成器120通過對定義文檔的數(shù)字?jǐn)?shù)據(jù)執(zhí)行散列算法來創(chuàng)建電子簽名。示例散列算法可包括但不限于,安全散列算法(SHA)、消息摘要算法(MDA)、以及RACE完整性原語評估消息摘要(RIPEMD)的各種變型。對數(shù)字?jǐn)?shù)據(jù)執(zhí)行散列算法產(chǎn)生通常被稱為"散列"或摘要的散列結(jié)果。生成器120然后可使用從公鑰一私鑰機(jī)構(gòu)獲得的私鑰來加密該簽名摘要。所加密的簽名摘要表示與該數(shù)據(jù)相關(guān)聯(lián)的電子簽名(作為簽名值)的基本分量。該簽名值可以在與數(shù)字?jǐn)?shù)據(jù)相關(guān)聯(lián)的電子簽名中發(fā)送或儲存。在接收到該數(shù)據(jù)和簽名值后,接收方116然后可使用驗(yàn)證器118來驗(yàn)證所接收的數(shù)字?jǐn)?shù)據(jù)。例如,驗(yàn)證器118可使用簽署者的公鑰(可從簽署者、公鑰一私鑰機(jī)構(gòu)或某一其它源獲得)來解密與文檔相關(guān)聯(lián)的加密的簽名摘要(表面上得到原始的簽名摘要)。驗(yàn)證器118還可生成所接收的數(shù)字?jǐn)?shù)據(jù)的散列。如果所接收到的數(shù)字?jǐn)?shù)據(jù)的散列和所解密的簽名摘要匹配,則認(rèn)為基本電子簽名,以及因此所接收的數(shù)字?jǐn)?shù)據(jù)的有效性至少在基本等級上得到驗(yàn)證。即,如果沒有其它安全問題,則簽名被認(rèn)為是簽署者的簽名并且該文檔從簽署時(shí)間開始沒有改變。因此,通過將文檔與電子簽名相關(guān)聯(lián),簽署者102(通過生成器120)創(chuàng)建可在某一等級上由接收方116或驗(yàn)證器118驗(yàn)證的經(jīng)簽署的文檔104。應(yīng)當(dāng)注意,電子簽名可以用幾種不同的方式與文檔相關(guān)聯(lián),包括將電子簽名嵌入在文檔中、將文檔嵌入在電子簽名中、在電子簽名中引用文檔、在文檔中引用電子簽名、以及將文檔和電子簽名彼此相關(guān)聯(lián)地儲存(例如,儲存在同一文件系統(tǒng)目錄或文件夾中)。然而,該基本等級的驗(yàn)證仍表現(xiàn)出重大的信任問題。例如,驗(yàn)證器118正假設(shè)用于解密所加密的簽名摘要的公鑰實(shí)際上屬于該簽署者其仍是有效的。然而,公鑰可能不再有效(例如,相應(yīng)的私鑰被盜、簽署者不再被授權(quán)來使用私鑰等)。因此,生成器120可通過由一個(gè)或多個(gè)可信方(諸如認(rèn)證機(jī)構(gòu)106或某一其它證書實(shí)體,此處統(tǒng)稱為"證書簽署者")調(diào)用證書服務(wù)來證明該公鑰屬于指定的簽署者來證實(shí)該電子簽名。一般而言,證書使用電子簽名來將公鑰與身份一諸如個(gè)人或組織的名字、公鑰所有者的地址等信息一綁定在一起。一個(gè)示例證書可包括正被簽署的公鑰;個(gè)人、計(jì)算機(jī)或組織的名字或標(biāo)識符;有效時(shí)段;以及撤消中心的地址(例如,URL),然而也可采用其它形式的證書。例如,在典型的公鑰基礎(chǔ)結(jié)構(gòu)(PKI)方案中,數(shù)據(jù)可由可信認(rèn)證機(jī)構(gòu)(CA)來證明。在信任網(wǎng)(weboftrust)方案中,證書可由簽署者(自簽名證書)或其它用戶("背書")來簽署。在任一情況下,證書上的電子簽名是證書簽署者關(guān)于身份信息和公鑰合成整體的證明。證書可用于對公鑰密碼的大規(guī)模使用。在多個(gè)用戶之中安全地交換密鑰在沒有附加保護(hù)的情況下變得不切實(shí)際且不安全。例如,如果第一方希望其他人能夠向其發(fā)送秘密消息,則第一方可以發(fā)布與該第一方相關(guān)聯(lián)的公鑰。處理該公鑰的任何人然后可以向該方發(fā)送安全信息。不幸的是,第二方也可發(fā)布生成該公鑰屬于第一方的公鑰,并且因此可接收目標(biāo)僅針對第一方的秘密消息。然而,如果第一方將其公鑰內(nèi)置到證書中并且由可信的第三方(例如,認(rèn)證機(jī)構(gòu))數(shù)字地簽署該公鑰,則信任該可信第三方的任何人能夠僅僅檢驗(yàn)該證書來看該可信第三方是否證實(shí)嵌入的公鑰屬于該第一方。以此方式,向第一方的秘密信息發(fā)送者可確信僅第一方能夠訪問該秘密消息。類似地,證書能夠允許驗(yàn)證者確信電子簽名實(shí)際屬于簽署者。此外,在大規(guī)模部署中,可采用證書鏈。例如,第一方可能不熟悉第二方的認(rèn)證機(jī)構(gòu),因此第二方的證書也可包括其由"更高級"認(rèn)證機(jī)構(gòu)(例如,商業(yè)認(rèn)證機(jī)構(gòu))簽署的認(rèn)證機(jī)構(gòu)公鑰,該公鑰可能被第一方認(rèn)可。該過程可導(dǎo)致證書鏈,所有證書都由一最終的可信方證明,這共同證明公鑰屬于一指定個(gè)體。然而,證書具有其自己的安全問題。某些證書具有有限的有效時(shí)段,在該有效時(shí)段外,證書被認(rèn)為是過期的。另外,例如如果發(fā)現(xiàn)證書的相關(guān)私鑰被泄密(例如,認(rèn)證機(jī)構(gòu)的系統(tǒng)遭到黑客攻擊),或者如果發(fā)現(xiàn)簽署者和嵌入在證書中的特定公鑰之間的關(guān)系不正確或者已改變(例如,如果個(gè)人改變了工作或名字),則可撤消證書。用于確定證書是否被撤消的一種方法是將證書與證書撤消列表(CRL)—被撤消或取消的證書的列表一進(jìn)行比較。確定證書的有效性的另一種方法是使用在線證書狀態(tài)協(xié)議(OCSP)查詢認(rèn)證機(jī)構(gòu)來獲得特定證書的狀態(tài)。因此,盡管證書提供了關(guān)于與文檔相關(guān)聯(lián)的電子簽名是指定簽署者的簽名的某種確信,但是證書本身在其與電子簽名相關(guān)聯(lián)的時(shí)候有可能已經(jīng)過期或被撤消(統(tǒng)稱為"無效")。例如,假設(shè)簽署者116電子地簽署了文檔并且用已撤消的證書來證實(shí)該電子簽名。由于該證書在證實(shí)簽名的時(shí)候已經(jīng)被撤消,因此驗(yàn)證器118不能出于證據(jù)的目的來充分地證明簽署者116實(shí)際已簽署了該文檔(例如,認(rèn)證機(jī)構(gòu)的黑客可能盜竊了該證書、簽署文檔、并且證實(shí)其自己的簽名是簽署者116的簽名)。為了在這種情況下提供保護(hù),生成器120可以創(chuàng)建時(shí)間戳以增強(qiáng)高級電子簽名的安全性。時(shí)間戳是一種可從可信第三方(例如,時(shí)間戳機(jī)構(gòu)110)獲得以證明電子簽名的證書或證書鏈存在并且在時(shí)間戳中指定的時(shí)刻是有效的電子簽名。在一個(gè)實(shí)現(xiàn)中,時(shí)間戳機(jī)構(gòu)110驗(yàn)證電子簽名和證書鏈。如果這些是有效的,則時(shí)間戳機(jī)構(gòu)110對包括時(shí)間值和電子簽名摘要的時(shí)間戳數(shù)據(jù)的集合求散列,并將該時(shí)間戳散列與電子簽名相關(guān)。在另一實(shí)現(xiàn)中,時(shí)間戳機(jī)構(gòu)接收原始簽名的簽名值的散列并且僅用時(shí)間戳來簽署該散列。時(shí)間戳也可由一個(gè)或多個(gè)可信第三方來證實(shí)。在一個(gè)實(shí)現(xiàn)中,生成器120創(chuàng)建并發(fā)出對實(shí)現(xiàn)采用一個(gè)或多個(gè)時(shí)間戳的電子簽名生成的編程框架內(nèi)的簽名對象和時(shí)間戳對象的調(diào)用。假設(shè)實(shí)現(xiàn)了基本電子簽名,包括相關(guān)聯(lián)的限定特性和證書的驗(yàn)證,則可驗(yàn)證與該電子簽名相關(guān)聯(lián)的一個(gè)或多個(gè)時(shí)間戳以確定該電子簽名和證書在簽署時(shí)是有效的。如果在時(shí)間戳中指定的時(shí)刻沒有一個(gè)電子簽名的證書是無效的,則認(rèn)為該電子簽名的有效性從時(shí)間戳中指定的時(shí)間起得到驗(yàn)證。如果在時(shí)間戳的時(shí)間之后撤消了電子簽名的證書或證書鏈,則電子簽名中的信任未受損害,因?yàn)橛行灾辽僭谝粋€(gè)時(shí)間點(diǎn)得到驗(yàn)證。然而,與時(shí)間戳相關(guān)聯(lián)的證書也可過期或被撤消。這一情況并不意味著電子簽名是無效的,僅僅是電子簽名的時(shí)間戳不能被信任。因此,電子簽署的文檔的處理程序可以隨時(shí)間將該電子簽名提交給一個(gè)或多個(gè)時(shí)間戳機(jī)構(gòu),由此將多個(gè)時(shí)間戳與該電子簽名相關(guān)聯(lián)。例如,公司可以在年度的基礎(chǔ)上將其現(xiàn)有的合同提交給時(shí)間戳機(jī)構(gòu)以加強(qiáng)電子簽署的文檔的有效性。以此方式,該公司獲得關(guān)于在給定時(shí)刻電子簽名有效的多個(gè)證明。如果發(fā)現(xiàn)一個(gè)或多個(gè)時(shí)間戳被撤消,則有可能有另一時(shí)間戳保持有效,由此至少在一個(gè)時(shí)間點(diǎn)保留了電子簽名的有效性。另外,生成器120可以將高級電子簽名中的電子簽名值與來自第三方(例如,聯(lián)署機(jī)構(gòu)或某一其它方,此處統(tǒng)稱為"聯(lián)署實(shí)體")的一個(gè)或多個(gè)電子聯(lián)署相關(guān)聯(lián)。電子聯(lián)署表示另一方對原始簽署者的電子簽名的核定或公證。電子聯(lián)署也可由一個(gè)或多個(gè)證書來證實(shí)。例如,文檔的執(zhí)行在其被認(rèn)為合法地綁定之前可能需要來自兩方或多方的電子簽名。因此,聯(lián)署表示標(biāo)識的第二方的電子簽名,并且與由標(biāo)識的第一方電子地簽署的同一數(shù)據(jù)相關(guān)聯(lián)。聯(lián)署有效地簽署了與數(shù)據(jù)相關(guān)聯(lián)的現(xiàn)有簽名。一個(gè)或多個(gè)聯(lián)署可以與單個(gè)文檔相關(guān)聯(lián)。電子聯(lián)署也可以與其自己的時(shí)間戳和/或聯(lián)署相關(guān)聯(lián)。在一個(gè)實(shí)現(xiàn)中,生成器120創(chuàng)建并發(fā)出對實(shí)現(xiàn)采用一個(gè)或多個(gè)聯(lián)署的電子簽名生成的編程框架內(nèi)的簽名對象的調(diào)用。在另一實(shí)現(xiàn)中,聯(lián)署機(jī)構(gòu)112創(chuàng)建并發(fā)出對實(shí)現(xiàn)基于與簽名對象相關(guān)聯(lián)的簽名值的聯(lián)署計(jì)算的編程框架內(nèi)的聯(lián)署對象的調(diào)用。與電子簽名證書(或證書鏈)、零個(gè)或多個(gè)時(shí)間戳、以及零個(gè)或多個(gè)聯(lián)署相關(guān)聯(lián)的經(jīng)簽署的文檔114然后可被發(fā)送到接收方116。如果接收方116希望驗(yàn)證與經(jīng)簽署的文檔114相關(guān)聯(lián)的電子簽名的有效性,則驗(yàn)證器118(例如,文檔管理器、文件管理器、電子郵件客戶端等的驗(yàn)證模塊)可接收經(jīng)簽署的文檔114,并測試該電子簽名、時(shí)間戳和/或聯(lián)署以驗(yàn)證該電子簽名的有效性。在存在多個(gè)時(shí)間戳和/或多個(gè)聯(lián)署的情況下,驗(yàn)證器118的實(shí)現(xiàn)可將電子簽名聲明為"有效"、"在指定的時(shí)間點(diǎn)有效"或"無效"(即,不可被驗(yàn)證,這暗示該電子簽名不能被信任)。驗(yàn)證器118還可生成關(guān)于電子簽名上的驗(yàn)證狀態(tài)的其它聲明。圖2示出了對電子簽署的文檔202的示例生成器的輸入。生成器221使用編程框架來創(chuàng)建電子簽名204并將其與電子文檔202相關(guān)聯(lián)。這一關(guān)連可以通過如上所述的各種方法來實(shí)現(xiàn),但出于描述的目的,將假設(shè)電子簽名被嵌入在電子文檔202中。電子簽名204包括但不限于,簽名值206(帶有或沒有證書)、零個(gè)或多個(gè)時(shí)間戳210(帶有或沒有證書)、以及零個(gè)或多個(gè)聯(lián)署218(帶有或沒有證書)。在一個(gè)實(shí)現(xiàn)中,簽名值206是通過對定義電子文檔202的數(shù)字?jǐn)?shù)據(jù)求散列以創(chuàng)建電子簽名204的摘要然后使用簽署者的私鑰加密該摘要來生成的。生成器221還可通過證書208來證實(shí)簽名值206。證書208可以是單個(gè)證書或證書鏈。如先前所討論的,與簽名值206相關(guān)聯(lián)的一個(gè)或多個(gè)證書在簽署的時(shí)刻(或驗(yàn)證的時(shí)刻)可能是無效的。電子簽名204還可以如圖2所示與一個(gè)或多個(gè)時(shí)間戳210相關(guān)聯(lián)。生成器221可以通過由時(shí)間戳機(jī)構(gòu)提供的時(shí)間戳服務(wù)來添加時(shí)間戳,該機(jī)構(gòu)可任選地測試電子簽名值206以及與其相關(guān)聯(lián)的證書208。一示例時(shí)間戳在分解圖中的時(shí)間戳212中示出為包括電子簽名值206的摘要214和時(shí)間值216(例如,包括時(shí)間和日期信息)。在時(shí)間戳212中還可組合其它參數(shù),包括但不限于限定特性、散列算法類型等。在一個(gè)實(shí)現(xiàn)中,時(shí)間戳機(jī)構(gòu)接收簽名值206的摘要214,將該摘要214與時(shí)間值216(例如,包括時(shí)間和日期信息)以及可能的其它參數(shù)相組合,對該組合求散列,用時(shí)間戳機(jī)構(gòu)的私鑰加密散列的組合(簽署它),并將經(jīng)簽署的結(jié)果發(fā)送回原始簽署者以便與文檔202相關(guān)聯(lián)。在替換實(shí)現(xiàn)中,時(shí)間戳機(jī)構(gòu)接收電子簽名204,并驗(yàn)證電子簽名值206和證書208。如果這些是有效的,則時(shí)間戳機(jī)構(gòu)對電子簽名值206求散列以獲得新的簽名摘要214。時(shí)間戳機(jī)構(gòu)然后對新的簽名散列214、時(shí)間值216和可能的其它參數(shù)的組合求散列,用時(shí)間戳機(jī)構(gòu)的私鑰加密該散列的組合(簽署它),并將經(jīng)簽署的結(jié)果發(fā)送回原始簽署者以便與文檔202相關(guān)聯(lián)。時(shí)間戳212也可通過一個(gè)或多個(gè)證書218來證實(shí),并且可以與其自己的時(shí)間戳和聯(lián)署相關(guān)聯(lián)。每一時(shí)間戳210證明該電子簽名以其特定形式存在的時(shí)間(例如,日期和時(shí)間值)。稍后,可由驗(yàn)證器221驗(yàn)證一個(gè)或多個(gè)時(shí)間戳210以確定與文檔202相關(guān)聯(lián)的電子簽名有效的最早時(shí)間。例如,公司A與公司B電子地簽署了協(xié)定,并且希望在法庭上強(qiáng)制執(zhí)行該協(xié)定。公司B否認(rèn)該協(xié)定,聲稱該簽名是無效的,并指出電子簽名的證書鏈中的證書之一已被撤消。如果公司A能夠用撤消日期之前的時(shí)間來驗(yàn)證時(shí)間戳,則公司A能夠舉出表明該電子簽名在至少一個(gè)時(shí)間點(diǎn)是有效并且因此可被強(qiáng)制執(zhí)行的可靠的證據(jù)。電子簽名204還可以如圖2所示與一個(gè)或多個(gè)聯(lián)署218相關(guān)聯(lián)。生成器221可以通過由聯(lián)署機(jī)構(gòu)提供的聯(lián)署服務(wù)來添加聯(lián)署,該機(jī)構(gòu)可任選地測試電子簽名值206以及與其相關(guān)聯(lián)的證書208。一個(gè)示例聯(lián)署在分解圖中的聯(lián)署220中示為包括電子簽名值206的摘要224。在聯(lián)署220中還可組合其它參數(shù),包括但不限于限定特性、散列算法類型等。在一個(gè)實(shí)現(xiàn)中,聯(lián)署機(jī)構(gòu)接收簽名值206的摘要224,對該摘要224求散列,用聯(lián)署機(jī)構(gòu)的私鑰加密該散列的摘要,并將加密的結(jié)果(即,聯(lián)署220)發(fā)回簽署者以便與文檔202相關(guān)聯(lián)。在替換實(shí)現(xiàn)中,聯(lián)署機(jī)構(gòu)接收電子簽名204,并驗(yàn)證電子簽名值206和證書208。如果這些是有效的,則聯(lián)署機(jī)構(gòu)對電子簽名值206求散列以獲得新的簽名摘要224。聯(lián)署機(jī)構(gòu)然后對新的簽名摘要224求散列,用聯(lián)署機(jī)構(gòu)的私鑰加密該散列的結(jié)果(簽署它),并將經(jīng)簽署的結(jié)果(聯(lián)署220)發(fā)回原始簽署者以便與文檔202相關(guān)聯(lián)。聯(lián)署220也可通過一個(gè)或多個(gè)證書222來證實(shí),并且可以與其自己的時(shí)間戳和聯(lián)署相關(guān)聯(lián)。每一聯(lián)署220表示對與文檔202相關(guān)聯(lián)的電子簽名204的核定或公證。例如,如果需要與孩子對電子文檔的簽名相關(guān)聯(lián)的父母雙方的簽名,則父母的簽名可作為電子聯(lián)署218來提供。為了使電子簽名204得到驗(yàn)證,驗(yàn)證器221確認(rèn)所有聯(lián)署218。應(yīng)當(dāng)理解,電子簽名204可以不包括一組一個(gè)或多個(gè)時(shí)間戳或一組一個(gè)或多個(gè)聯(lián)署。然而,對電子簽名204的驗(yàn)證可以通過包括這些分量中的一個(gè)或多個(gè)而變得更穩(wěn)健。所描述的技術(shù)的一個(gè)實(shí)現(xiàn),即生成器221使用了J^Ad/gw^we類、QualifyProperties類和LXmlTimeStamp類來生成高級電子簽名,然而構(gòu)想了其它實(shí)現(xiàn)。以下描述一個(gè)示例XadesSignature類,然而可實(shí)現(xiàn)該示例XadesSignature臟的變型而不背離所描述的技術(shù)。為了創(chuàng)建高級電子簽名,生成器221實(shí)例化XadesSignature對象。XadesSignature對象生成并確認(rèn)與一個(gè)或多個(gè)數(shù)據(jù)項(xiàng)相關(guān)聯(lián)的基于XML的電子簽名。然而,應(yīng)當(dāng)理解,在替換實(shí)現(xiàn)中可以實(shí)現(xiàn)其它電子簽名格式。該示例XadesSignature類,展示了一些公有方法和特性<table>tableseeoriginaldocumentpage13</column></row><table>200780007298.7說明書第10/15頁<table>tableseeoriginaldocumentpage14</column></row><table>表1—X。tfey詠"齒re公有方法TimeStampSignatureValue(時(shí)間戳簽名值)方法的回調(diào)輸入?yún)?shù)允許調(diào)用者經(jīng)由作為TimeStampDelegate(時(shí)間戳委托)引用的方法來提供用于對簽名加時(shí)間戳的標(biāo)準(zhǔn)或定制方法。只要生成器221調(diào)用TimeStampSignatureValue方法,該方法回調(diào)作為TimeStampDelegate傳入的方法并返回所計(jì)算的時(shí)間戳。<table>tableseeoriginaldocumentpage14</table表2—Iaafey錄贈we公有特性如下所述的示例QualifyingProperties類可用于支持由先前包含的XAdES規(guī)范指定的部分或全部限定特定以及例如使用XML操縱來支持附加特性。以下描述的^^/辦/wgiVo/eWZes對象的實(shí)現(xiàn)采用了XML持久性,這允許對象保持g^/妙/wg/Vo/^W/^對象本質(zhì)上不支持的活XML的元素和屬性。_<table>tableseeoriginaldocumentpage14</column></row><table><table>tableseeoriginaldocumentpage15</column></row><table>表3—g"o敏/"g/Vo/eW/es公有方法<table>tableseeoriginaldocumentpage15</column></row><table>表4—QualifyingProperties公有特性實(shí)現(xiàn)如下所述的IXmlTimeStamp接口的一個(gè)示例類可用于支持時(shí)間戳,但是也可采用其它時(shí)間戳類或數(shù)據(jù)結(jié)構(gòu)。例如,時(shí)間戳可從基于XML的電子簽名中加載,并且由驗(yàn)證器使用ZYm/77me&接口來檢查。_<table>tableseeoriginaldocumentpage15</column></row><table><table>tableseeoriginaldocumentpage16</column></row><table>圖3示出了用于在數(shù)據(jù)項(xiàng)上生成時(shí)間戳的示例操作。大多數(shù)所示的操作一般是由電子簽名生成器執(zhí)行的,然而其它模塊也可執(zhí)行這些操作。創(chuàng)建操作302創(chuàng)建簽名對象,諸如^^^S/g"Wwe類或某一其它電子簽名類的對象。在一個(gè)實(shí)現(xiàn)中,示例創(chuàng)建操作302啟動J^AW/g"a^M類的構(gòu)造函數(shù)。關(guān)聯(lián)操作304發(fā)出對簽名對象的調(diào)用,該調(diào)用將要簽署的數(shù)據(jù)與簽名對象相關(guān)聯(lián)。在一個(gè)實(shí)現(xiàn)中,創(chuàng)建操作302和關(guān)聯(lián)操作304被組合成對創(chuàng)建操作的單個(gè)調(diào)用,該創(chuàng)建操作既創(chuàng)建對象又將數(shù)據(jù)與該對象相關(guān)聯(lián)。計(jì)算操作306發(fā)出對簽名對象的調(diào)用以基于與簽名對象相關(guān)聯(lián)的數(shù)據(jù)項(xiàng)來計(jì)算簽名值。如果要簽署多個(gè)數(shù)據(jù)項(xiàng),則它們可在通過散列算法求散列并加密以計(jì)算簽名值之前被組合。在一個(gè)實(shí)現(xiàn)中,示例計(jì)算操作306發(fā)出對Xa^y5^""^re對象的ComputeSignature(計(jì)算簽名)方法的調(diào)用。時(shí)間戳操作308發(fā)出對簽名對象的調(diào)用以基于簽名值獲得時(shí)間戳。在一個(gè)實(shí)現(xiàn)中,示例時(shí)間戳操作308發(fā)出對Xades&gw加wre對象的TimeStampSignatureValue方法的調(diào)用,并提供回調(diào)方法作為輸入?yún)?shù)。回調(diào)操作310接收對在時(shí)間戳操作308中提供的回調(diào)方法(例如,TimeStampDelegate)的回調(diào)。回調(diào)方法調(diào)用服務(wù)操作312中的時(shí)間戳服務(wù)。時(shí)間戳服務(wù)計(jì)算時(shí)間戳(例如,日期和時(shí)間值),并將其返回給生成器(在計(jì)算操作314中)。時(shí)間戳然后可被嵌入到簽名中(例如,XML簽名或簽名的其它數(shù)據(jù)表示)以關(guān)聯(lián)時(shí)間戳和簽名值(在關(guān)聯(lián)操作318中)?;蛘?,時(shí)間戳和簽名可以被相關(guān)聯(lián)地儲存(例如,在同一目錄中)以提供所需的關(guān)聯(lián)。還可構(gòu)想其它形式的關(guān)聯(lián)。圖4示出了用于在數(shù)據(jù)項(xiàng)上生成聯(lián)署的示例操作400。大多數(shù)所示的操作一般是由電子簽名生成器執(zhí)行的,然而其它模塊也可執(zhí)行這些操作。創(chuàng)建操作402創(chuàng)建簽名對象,諸如XaAsS!'g打afz^e類或某一其它電子簽名類的對象。在一個(gè)實(shí)現(xiàn)中,示例創(chuàng)建操作402啟動Xflt/^S/g"fl加re類的構(gòu)造函數(shù)。關(guān)聯(lián)操作404發(fā)出對簽名對象的、將要簽署的數(shù)據(jù)與簽名對象相關(guān)聯(lián)的調(diào)用。計(jì)算操作406發(fā)出對簽名對象的調(diào)用以基于與簽名對象相關(guān)聯(lián)的數(shù)據(jù)項(xiàng)來計(jì)算簽名值。如果要簽署多個(gè)數(shù)據(jù)項(xiàng),則它們可在通過散列算法求散列并加密以計(jì)算簽名值之前被組合。在一個(gè)實(shí)現(xiàn)中,示例計(jì)算操作406發(fā)出對Z^/e"/g"W"re對象的ComputeSignature(計(jì)算簽名)方法的調(diào)用。服務(wù)操作408調(diào)用聯(lián)署服務(wù)以獲得聯(lián)署,例如將J^AM/gw^we對象傳遞給聯(lián)署機(jī)構(gòu)。聯(lián)署服務(wù)在驗(yàn)證操作410中發(fā)出對簽名對象的調(diào)用以驗(yàn)證簽名對象中的簽名值,包括其證書(可包括證書鏈)。如果簽名值被成功驗(yàn)證(例如,簽名值,包括其證書都是有效的),則聯(lián)署服務(wù)然后計(jì)算聯(lián)署值并將其返回給生成器(在創(chuàng)建操作412中)。聯(lián)署然后可被嵌入到簽名中(例如,XML簽名或簽名的其它數(shù)據(jù)表示)以關(guān)聯(lián)聯(lián)署和簽名值(在關(guān)聯(lián)操作414中)。或者,聯(lián)署和簽名可以被相關(guān)聯(lián)地儲存(例如,在同一目錄中)以提供所需的關(guān)聯(lián)。用于實(shí)現(xiàn)本發(fā)明的圖5的示例性硬件和操作環(huán)境包括游戲控制臺或計(jì)算機(jī)20形式的通用計(jì)算設(shè)備,包括處理單元21、系統(tǒng)存儲器22、以及將包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件操作性地耦合至處理單元21的系統(tǒng)總線23??梢灾淮嬖谝粋€(gè)或者存在一個(gè)以上處理單元21,使得計(jì)算機(jī)20的處理器包括單個(gè)中央處理單元(CPU),或者多個(gè)處理單元,通常稱為并行處理環(huán)境。計(jì)算機(jī)20可以是常規(guī)計(jì)算機(jī)、分布式計(jì)算機(jī)、或者任何其他類型的計(jì)算機(jī),本發(fā)明不限于此。系統(tǒng)總線23可以是幾種類型的總線結(jié)構(gòu)中的任何一種,包括存儲器總線或存儲控制器、外圍總線、交換光纖、點(diǎn)對點(diǎn)連接、以及使用各種總線體系結(jié)構(gòu)中的任一種的局部總線。系統(tǒng)存儲器可被簡單稱為存儲器,并且包括只讀存儲器(ROM)24和隨機(jī)存取存儲器(RAM)25?;据斎?輸出系統(tǒng)(BIOS)26存儲在ROM20中,它包含幫助在諸如啟動期間在計(jì)算機(jī)24內(nèi)元件之間傳遞信息的基本例程。計(jì)算機(jī)20還包括用于對硬盤(未示出)進(jìn)行讀寫的硬盤驅(qū)動器27、用于對可移動磁盤29進(jìn)行讀寫的磁盤驅(qū)動器28、以及用于對可移動光盤31,如CD-ROM或其它光介質(zhì)進(jìn)行讀寫的光盤驅(qū)動器30。硬盤驅(qū)動器27、磁盤驅(qū)動器28和光盤驅(qū)動器30分別由硬盤驅(qū)動器接口32、磁盤驅(qū)動器接口33和光盤驅(qū)動器接口34連接到系統(tǒng)總線23。驅(qū)動器及其關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)為計(jì)算機(jī)20提供了計(jì)算機(jī)可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲。本領(lǐng)域的技術(shù)人員可以理解,在示例操作環(huán)境中也可使用可儲存可由計(jì)算機(jī)訪問的數(shù)據(jù)的任何類型的計(jì)算機(jī)可讀介質(zhì),如磁帶盒、閃存卡、數(shù)字視頻盤、隨機(jī)存取存儲器(RAM)、只讀存儲器(ROM)等等。多個(gè)程序模塊能存儲在硬盤、磁盤29、光盤31、ROM24或RAM25中,包括操作系統(tǒng)35、一個(gè)或多個(gè)應(yīng)用程序36、其它程序模塊37和程序數(shù)據(jù)38。用戶可通過諸如鍵盤40和定點(diǎn)設(shè)備42等輸入設(shè)備向個(gè)人計(jì)算機(jī)20中輸入命令和信息。其它輸入設(shè)備(未示出)可以包括話筒、操縱桿、游戲手柄、圓盤式衛(wèi)星天線、掃描儀等。這些和其它輸入設(shè)備通常通過耦合到系統(tǒng)總線的串行端口接口46連接到處理單元21,但也可通過其它接口連接,如并行端口、游戲端口和通用串行總線(USB)。監(jiān)視器47或其它類型的顯示設(shè)備也經(jīng)由接口,諸如視頻適配器48連接至系統(tǒng)總線23。除監(jiān)視器之外,計(jì)算機(jī)通常包括其它外圍輸出設(shè)備(未示出),如揚(yáng)聲器或打印機(jī)。計(jì)算機(jī)20可使用至一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),諸如遠(yuǎn)程計(jì)算機(jī)49的邏輯連接在網(wǎng)絡(luò)化環(huán)境中操作。這些邏輯連接由耦合至或者作為計(jì)算機(jī)20—部分的通信設(shè)備來實(shí)現(xiàn),本發(fā)明不限于特定類型的通信設(shè)備。遠(yuǎn)程計(jì)算機(jī)49可以是另一計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、客戶機(jī)、對等設(shè)備或其它常見的網(wǎng)絡(luò)節(jié)點(diǎn),并且通常包括許多或所有以上相對于計(jì)算機(jī)20所描述的元件,盡管在圖5中僅示出了存儲器存儲設(shè)備50。圖5中畫出的邏輯連接包括局域網(wǎng)(LAN)51和廣域網(wǎng)(WAN)52。這樣的網(wǎng)絡(luò)環(huán)境常見于辦公室網(wǎng)絡(luò)、企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng),并且可以是所有類型的網(wǎng)絡(luò)。當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時(shí),計(jì)算機(jī)20通過作為一種通信設(shè)備類型的網(wǎng)絡(luò)接口或適配器53連接到局域網(wǎng)51。當(dāng)在WAN聯(lián)網(wǎng)環(huán)境中使用時(shí),計(jì)算機(jī)20通常包括調(diào)制解調(diào)器54、網(wǎng)絡(luò)適配器、一種類型的通信設(shè)備,或者用于經(jīng)廣域網(wǎng)52建立通信的任何其他類型的通信設(shè)備。或?yàn)閮?nèi)置或?yàn)橥庵玫恼{(diào)制解調(diào)器54經(jīng)由串行端口接口46連接到系統(tǒng)總線23。在網(wǎng)絡(luò)化環(huán)境中,相對于個(gè)人計(jì)算機(jī)20所描述的程序模塊或其部分可以存儲在遠(yuǎn)程存儲器存儲設(shè)備中。可以理解,所示的網(wǎng)絡(luò)連接是示例性的,且可以使用在計(jì)算機(jī)之間建立通信鏈路的其它手段和通信設(shè)備。在一個(gè)示例實(shí)現(xiàn)中,電子簽名生成模塊、電子簽名對象、限定特性對象、時(shí)間戳對象以及其它模塊可由存儲在存儲器22和/或存儲設(shè)備29或31中并由處理單元21處理的指令來具體化。電子簽名、公鑰、私鑰、摘要、證書、時(shí)間戳、聯(lián)署以及其它數(shù)據(jù)可被儲存在存儲器22和/或作為持久數(shù)據(jù)庫的存儲設(shè)備29或31中。此處所描述的技術(shù)在一個(gè)或多個(gè)系統(tǒng)中被實(shí)現(xiàn)為邏輯操作和/或模塊。邏輯操作可被實(shí)現(xiàn)為在一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)中執(zhí)行的處理器實(shí)現(xiàn)的步驟的序列以及在一個(gè)或多個(gè)計(jì)算機(jī)系統(tǒng)中的互連的機(jī)器或電路模塊。同樣地,各組件模塊的描述可以按照由模塊執(zhí)行或?qū)崿F(xiàn)的操作來提供。所得的實(shí)現(xiàn)是取決于實(shí)現(xiàn)所描述的技術(shù)的底層系統(tǒng)的性能要求的選擇問題。從而,組成此處所述的技術(shù)的實(shí)施例的邏輯操作被不同地稱為操作、步驟、對象或模塊。此外,應(yīng)該理解,除非以其他方式明確地要求保護(hù)或權(quán)利要求語言固有地需要一特定的次序,否則邏輯操作可以任何次序來執(zhí)行。以上說明、示例和數(shù)據(jù)提供了對本發(fā)明的各示例性實(shí)施例的結(jié)構(gòu)和使用的全面描述。盡管以上帶著一定程度的特殊性或?qū)σ粋€(gè)或多個(gè)單獨(dú)實(shí)施例的參考描述了本發(fā)明的各實(shí)施例,但是本領(lǐng)域的技術(shù)人員能夠?qū)λ_的實(shí)施例做出多種改變而不背離本發(fā)明的精神或范圍。更具體地,應(yīng)該理解,所描述的技術(shù)可以獨(dú)立于個(gè)人計(jì)算機(jī)采用。因此可構(gòu)想其他實(shí)施例。其目的是以上描述中所包含以及在附圖中所示出的所有一切應(yīng)當(dāng)解釋為僅僅是例示特定實(shí)施例而非限制??梢詫?xì)節(jié)或結(jié)構(gòu)做出更改而不背離如所附權(quán)利要求書中定義的本發(fā)明的基本元素。雖然已經(jīng)用對結(jié)構(gòu)特征和/或方法動作專用的語言對本主題進(jìn)行了描述,但是應(yīng)該理解,在所附權(quán)利要求中定義的該主題不必限于上述具體特征或動作。相反,上述具體特征和動作是作為實(shí)現(xiàn)所要求保護(hù)的主題的示例形式而公開的。權(quán)利要求1.一種用電子簽名電子地簽署數(shù)據(jù)項(xiàng)的方法,所述方法包括發(fā)出(304)對簽名對象的、將所述數(shù)據(jù)項(xiàng)與所述電子簽名相關(guān)聯(lián)的調(diào)用;發(fā)出(306)對所述簽名對象的、基于所述數(shù)據(jù)項(xiàng)來計(jì)算所述電子簽名的簽名值的調(diào)用;發(fā)出(308)對所述簽名對象的、基于所述簽名值從時(shí)間戳機(jī)構(gòu)獲得時(shí)間戳的調(diào)用;將所述時(shí)間戳與所述電子簽名相關(guān)聯(lián)(318)。2.如權(quán)利要求l所述的方法,其特征在于,所述發(fā)出對所述簽名對象的、從時(shí)間戳機(jī)構(gòu)獲得時(shí)間戳的調(diào)用的操作包括-調(diào)用基于所述簽名值來計(jì)算時(shí)間戳的時(shí)間戳服務(wù)。3.如權(quán)利要求l所述的方法,其特征在于,所述發(fā)出對所述簽名對象的、從時(shí)間戳機(jī)構(gòu)獲得時(shí)間戳的調(diào)用的操作包括執(zhí)行對調(diào)用者提供的回調(diào)操作的、基于所述簽名值來獲得時(shí)間戳的回調(diào)。4.如權(quán)利要求l所述的方法,其特征在于,所述關(guān)聯(lián)操作包括發(fā)出對所述簽名對象的、將所述時(shí)間戳嵌入在具有所述簽名值的所述電子簽名中的調(diào)用。5.如權(quán)利要求1所述的方法,其特征在于,所述時(shí)間戳表示可信方對于所述電子簽名在所述時(shí)間戳所指示的時(shí)間以其特定形式存在的證明。6.如權(quán)利要求1所述的方法,其特征在于,所述時(shí)間戳表示可信方對于所述簽名值及其所有證書在所述時(shí)間戳所指示的時(shí)間以其特定形式存在的證明。7.如權(quán)利要求1所述的方法,其特征在于,僅當(dāng)所述簽名值及其所有證書以其特定形式存在時(shí)才從所述時(shí)間戳服務(wù)接收所述時(shí)間戳。8.如權(quán)利要求l所述的方法,其特征在于,還包括在所述發(fā)出對所述簽名對象的、計(jì)算簽名值的調(diào)用的操作之前,發(fā)出對所述簽名對象的、將附加數(shù)據(jù)項(xiàng)與所述數(shù)據(jù)項(xiàng)相組合以用所述電子簽名來簽署的調(diào)用,然后發(fā)出對所述簽名對象的、基于所述數(shù)據(jù)項(xiàng)和所述附加數(shù)據(jù)項(xiàng)來計(jì)算所述簽名值的調(diào)用的操作。9.如權(quán)利要求8所述的方法,其特征在于,所述附加數(shù)據(jù)項(xiàng)被嵌入在所述電子簽名中。10.如權(quán)利要求8所述的方法,其特征在于,所述附加數(shù)據(jù)項(xiàng)與所述電子簽名分離。11.一種具有用于執(zhí)行實(shí)現(xiàn)如權(quán)利要求1所述的操作的計(jì)算機(jī)進(jìn)程的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì)。12.—種用電子簽名來電子地簽署數(shù)據(jù)項(xiàng)的方法,所述方法包括發(fā)出(404)對簽名對象的、將所述數(shù)據(jù)項(xiàng)關(guān)聯(lián)到所述電子簽名的調(diào)用;發(fā)出(406)對所述簽名對象的、基于所述數(shù)據(jù)項(xiàng)來計(jì)算所述電子簽名的簽名值的調(diào)用;在所述簽名對象上調(diào)用(408)聯(lián)署服務(wù);基于所述簽名對象的簽名值從所述聯(lián)署服務(wù)接收(414)聯(lián)署;將所述聯(lián)署與所述電子簽名相關(guān)聯(lián)(414)。13.如權(quán)利要求12所述的方法,其特征在于,所述關(guān)聯(lián)操作包括發(fā)出對所述簽名對象的、將所述聯(lián)署嵌入在具有所述簽名值的所述電子簽名中的調(diào)用。14.如權(quán)利要求12所述的方法,其特征在于,從所述聯(lián)署服務(wù)接收到的所述聯(lián)署是使用由傳遞給所述聯(lián)署服務(wù)的、所述簽名對象的方法創(chuàng)建的聯(lián)署對象來創(chuàng)建的。15.如權(quán)利要求12所述的方法,其特征在于,還包括在所述發(fā)出對所述簽名對象的、計(jì)算簽名值的調(diào)用的操作之前,發(fā)出對所述簽名對象的、將附加數(shù)據(jù)項(xiàng)與所述數(shù)據(jù)項(xiàng)相組合以用電子簽名來簽署的調(diào)用,然后發(fā)出對所述簽名對象的、基于所述數(shù)據(jù)項(xiàng)和所述附加數(shù)據(jù)項(xiàng)來計(jì)算所述簽名值的調(diào)用的操作。16.如權(quán)利要求15所述的方法,其特征在于,所述附加數(shù)據(jù)項(xiàng)被嵌入在所述電子簽名中。17.如權(quán)利要求15所述的方法,其特征在于,所述附加數(shù)據(jù)項(xiàng)與所述電子簽名分離。18.—種具有用于執(zhí)行實(shí)現(xiàn)如權(quán)利要求12所述的操作的計(jì)算機(jī)進(jìn)程的計(jì)算機(jī)可執(zhí)行指令的計(jì)算機(jī)可讀介質(zhì)。19.一種為電子簽名生成時(shí)間戳的方法,所述方法包括經(jīng)由與所述電子簽名相關(guān)聯(lián)的簽名對象的回調(diào)方法從生成器接收(314)請求,其中所述請求請求所述電子簽名的簽名值上的時(shí)間戳;計(jì)算(314)時(shí)間戳;將所述時(shí)間戳返回(314)給所述簽名對象的回調(diào)方法以將所述時(shí)間戳與所述電子簽名相關(guān)聯(lián)。20.如權(quán)利要求19所述的方法,其特征在于,還包括經(jīng)由與所述電子簽名相關(guān)聯(lián)的簽名對象從生成器接收對所述電子簽名的簽名值上的聯(lián)署的請求;基于所述簽名值創(chuàng)建聯(lián)署對象;發(fā)出對所述聯(lián)署對象的、基于所述簽名值來計(jì)算聯(lián)署的調(diào)用;將所述聯(lián)署返回給所述生成器以將所述聯(lián)署與所述電子簽名相關(guān)聯(lián)。全文摘要生成器使用一種穩(wěn)健的編程框架來創(chuàng)建與數(shù)據(jù)項(xiàng)相關(guān)聯(lián)的電子簽名,其中該電子簽名包括時(shí)間戳和/或聯(lián)署。該生成器可創(chuàng)建基于數(shù)據(jù)項(xiàng)來計(jì)算電子簽名的簽名值的簽名對象。該生成器還創(chuàng)建一簽名時(shí)間戳對象來獲得該簽名值的時(shí)間戳,其中該時(shí)間戳與該電子簽名相關(guān)聯(lián)。該生成器還可在該簽名對象上調(diào)用一聯(lián)署服務(wù)來基于該簽名對象的簽名值獲得聯(lián)署,其中該聯(lián)署與該電子簽名相關(guān)聯(lián)。文檔編號G06F17/00GK101395599SQ200780007298公開日2009年3月25日申請日期2007年2月13日優(yōu)先權(quán)日2006年3月2日發(fā)明者M(jìn)·帕夫利契奇申請人:微軟公司