欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于屬性的數(shù)字簽名的制作方法

文檔序號:7884780閱讀:253來源:國知局
專利名稱:基于屬性的數(shù)字簽名的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及基于屬性的數(shù)字簽名。
背景技術(shù)
從傳統(tǒng)健康護理,到家庭健康護理,到健康服務(wù)的護理周期中涉及的不同各方之間對數(shù)據(jù)交換的需求越來越多,這使得健康數(shù)據(jù)的安全管理成為重要問題。當(dāng)前的方法基于傳統(tǒng)的安全機制,補充以必要的物理和管理流程,限制了健康信息的可用性并使得健康記錄的交換很不方便。數(shù)字策略管理和執(zhí)行技術(shù)通過提供如下可能而優(yōu)于這些傳統(tǒng)方法實現(xiàn)(I)異構(gòu)網(wǎng)絡(luò)中的端到端保密性和安全性,獨立于數(shù)據(jù)遷移的基礎(chǔ)設(shè)施或機構(gòu)邊界保護數(shù)據(jù);(2)基于角色的或基于屬性的訪問控制機制的加密執(zhí)行,這在健康護理應(yīng)用中非常重要,僅允許具有適當(dāng)屬性(例如角色)的用戶基于與其屬性相關(guān)聯(lián)的私有密鑰對消息解密或簽名。健康護理中工作流程的一個重要方面是來源的不可否認(rèn)性,這意味著數(shù)據(jù)的接收者能夠驗證數(shù)據(jù)來源。在日常生活中,使用數(shù)字簽名來實現(xiàn)不可否認(rèn)性特性。在傳統(tǒng)的簽名方案中,針對每個用戶生成私有密鑰和公共密鑰的對,在這一對中,私有密鑰可用于簽署消息,而公共密鑰可用于驗證消息上的簽名。然而,在健康護理組織中,通常使用屬性描述用戶的角色和身份,并基于用戶屬性授權(quán)對數(shù)據(jù)的訪問。因此當(dāng)且僅當(dāng)用戶具有正確屬性集時,用戶可以生成或修改,然后簽署該數(shù)據(jù)。出于這一目的,使用基于屬性的簽名,例如,如 Dalia Khader 在“Attribute Based Group Signatures,,,International Associationfor Cryptologic Research( IACR), 2007, 241中所描述。因此,在健康護理中,屬性被認(rèn)為是證明數(shù)據(jù)來源的主要源。這些屬性還`可以包括對于特定域(例如,名稱或識別符)中個體唯一的個體屬性。例如,如果處方單被具有特定角色的特定用戶(例如醫(yī)生John Smith)簽署,藥房將接受處方單。在匿名很重要的與醫(yī)療研究相關(guān)的其它使用情況中,患者可以僅利用其非唯一屬性(例如他是30-40歲的男性)來簽署其健康記錄。因而,用于保護健康數(shù)據(jù)的基于屬性的加密(ABE)系統(tǒng)的一個重要部分是基于屬性的簽名(ABS)方案。在基于屬性的簽名(ABS)中,使用與用戶擁有的屬性集《相關(guān)聯(lián)的私有密鑰SKu簽署數(shù)據(jù)。為了能夠簽署消息,用戶從受信任管理機構(gòu)獲得與其具有的特定屬性集相對應(yīng)的特定私有密鑰。如前所述,用戶還可以具有選擇與屬性的子集相關(guān)聯(lián)的私有密鑰的子集的靈活性,他/她可能希望使用所述屬性的子集用于特定簽署操作。

發(fā)明內(nèi)容
若有一種改進的基于屬性的數(shù)字簽名系統(tǒng)會是有利的。為了更好地解決這個問題,在第一方面中,本發(fā)明提供了一種系統(tǒng),所述系統(tǒng)包括第一簽名生成單元,其用于基于第一簽名密鑰和文檔針對所述文檔生成第一簽名;以及重新簽名單元,其被布置為基于第一簽名和重新簽名密鑰針對所述文檔生成第二簽名,其中,所述重新簽名單元被布置為處理與所述第一簽名和/或所述第二簽名相關(guān)聯(lián)的屬性。這種系統(tǒng)允許基于與簽名相關(guān)聯(lián)的屬性配置重新簽名的能力。因為重新簽名單元,可以委托簽字授權(quán)而無需向被委托方授予委托方的簽名密鑰。替代地,被委托方能夠利用重新簽名單元將其簽名轉(zhuǎn)換成委托方的簽名,所述重新簽名單元可以是半信任單元或代理。通過配置重新簽名單元以處理與簽名相關(guān)聯(lián)的屬性,重新簽名功能變得更加靈活。不必逐個用戶地執(zhí)行委托任務(wù),因為可以使用密鑰的屬性指定例如需要與第一簽名相關(guān)聯(lián)的何種屬性來使用重新簽名單元和/或何種屬性與第二簽名相關(guān)聯(lián)。因此,委托方可以基于他們的屬性向用戶組委托任務(wù)。可以布置重新簽名單元以將第一簽名轉(zhuǎn)換為第二簽名,其中,所述第二簽名替換所述文檔的所述第一簽名,可以獨立于所述第一簽名驗證所述第二簽名。所述第二簽名可以與所述重新簽名密鑰確定的第二組屬性相關(guān)聯(lián),其中,所述第二組屬性包括多個屬性。所述重新簽名單元允許將第一簽名轉(zhuǎn)換成與第二組屬性相關(guān)聯(lián)的簽名。這使得能夠?qū)崿F(xiàn)利用現(xiàn)有的基于屬性的數(shù)字簽名系統(tǒng)不能實現(xiàn)的幾種使用情況。例如,該系統(tǒng)使得能夠向用戶委托利用特定一組屬性簽署文檔的授權(quán)而無需授予用戶與那一組屬性相關(guān)聯(lián)的簽名密鑰。替代的是,僅授予用戶第一簽名密鑰,用戶必須調(diào)用重新簽名單元以將利用第一簽名密鑰生成的簽名轉(zhuǎn)換成與第二組屬性相關(guān)聯(lián)的期望的第二簽名??梢詫⒅匦潞灻麊卧獙崿F(xiàn)為半信任代理。替代地或額外地,第一簽名可以與第一組屬性相關(guān)聯(lián),其中第一組屬性包括多個屬性,并且可以將重新簽名單元布置為僅在第一組屬性滿足一組條件時才生成第二簽名。這允許委托方授權(quán)一組用戶而無需指定被委托方的特定用戶ID。替代的是,可以基于用戶的屬性(例如角色)執(zhí)行授權(quán),所述用戶的屬性在他們的第一簽名密鑰中表示。該系統(tǒng)可以包括重新簽名密鑰生成器,所述重新簽名密鑰生成器用于基于與第二組屬性相關(guān)聯(lián)的第二簽名密鑰生成重新簽名密鑰,其中,重新簽名密鑰使得重新簽名單元能夠?qū)⒌谝缓灻D(zhuǎn)換成與第二組屬性相關(guān)聯(lián)的簽名,并且其中,所述第二簽名密鑰使得第二簽名生成單元能夠基于文檔本身生成與第二組屬性相關(guān)聯(lián)的簽名。典型地,將第二簽名密鑰的控制委托給具有第二組屬性的被授權(quán)簽署文檔的個人。使用所述的重新簽名密鑰生成器,該個人能夠通過向重新簽名密鑰生成器提供第二簽名密鑰來生成重新簽名密鑰??赡懿恍枰趯傩缘暮灻到y(tǒng)的任何主密鑰。這使得委托授權(quán)簽字相對容易。所述重新簽名密鑰生成器可以被布置為基于所述第二簽名密鑰進一步生成第一簽名密鑰,其中所述第一簽名密鑰和所述重新簽名密鑰作為密鑰對而生成,并且所述第一簽名密鑰被提供給第一簽名生成單元,所述重新簽名密鑰被提供給重新簽名單元。這種方案使以下成為可能使得沒有任何密鑰的用戶能夠使用第二組屬性簽署文檔??梢允谟栌脩魧S玫牡谝缓灻荑€以準(zhǔn)備第一簽名,然后可以通過重新簽名單元和重新簽名密鑰將所述第一簽名轉(zhuǎn)換為與第二組屬性相關(guān)聯(lián)的簽名。這樣,重新簽名密鑰生成器無需知道被委托方用戶所擁有的任何現(xiàn)有密鑰,因為被委托方從重新簽名密鑰生成器得到新的第一簽名密鑰,可以結(jié)合重新簽名單元和重新簽名密鑰使用第一簽名密鑰代表委托方簽署消息。該系統(tǒng)可以包括重新簽名密鑰生成器,所述重新簽名密鑰生成器被布置為根據(jù)所述一組條件生成重新簽名密鑰,其中,所述重新簽名密鑰使得重新簽名單元能夠?qū)⑴c滿足所述一組條件的任何屬性組相關(guān)聯(lián)的簽名轉(zhuǎn)換成第二簽名。這使得系統(tǒng)更加靈活,因為不必為每個用戶生成重新簽名密鑰,替代的是,具有與滿足所述一組條件的相應(yīng)屬性組相關(guān)聯(lián)的第一簽名密鑰的現(xiàn)有用戶能夠?qū)⑺麄兒灻D(zhuǎn)換成與第二組屬性相關(guān)聯(lián)的簽名??梢詫⑺鲆唤M條件稱為策略??梢詫⒅匦潞灻麊卧贾脼槭褂霉裁荑€驗證第一簽名是否與滿足一組條件的一組屬性相關(guān)聯(lián),并且被布置為僅在第一簽名與滿足所述一組條件的一組屬性相關(guān)聯(lián)的情況下生成第二簽名。這改進了系統(tǒng)的安全性和/或防止了生成錯誤簽名,因為僅可以轉(zhuǎn)換期望的簽名。該系統(tǒng)可以包括委托單元,所述委托單元用于使得擁有第二組屬性的用戶能夠通過向重新簽名單元提供重新簽名密鑰以將他的利用與第二組屬性相關(guān)聯(lián)的簽名來簽署文檔的授權(quán)委托給另一用戶。這便于簽署授權(quán)的委托。用戶控制的委托過程還可以包括允許被委托方令重新簽名單元利用重新簽名密鑰將第一簽名轉(zhuǎn)換為相應(yīng)的第二簽名。委托單元還可以使得用戶能夠從重新簽名單元撤回或消除重新簽名密鑰。這使得容易撤銷簽署的授權(quán)。在另一方面中,本發(fā)明提供了一種包括所述系統(tǒng)的工作站。在又一方面中,本發(fā)明提供了一種基于屬性的數(shù)字簽名生成的方法,包括基于第一簽名密鑰和文檔針對所述文檔生成第一簽名;以及基于第一簽名和重新簽名密鑰針對所述文檔生成第二簽名,包括處理與第一簽名和/或第二簽名相關(guān)聯(lián)的屬性。 在另一方面中,本發(fā)明提供了一種包括指令的計算機程序產(chǎn)品,所述指令用于令處理器系統(tǒng)執(zhí)行所述方法。US2009/0327735A1公開了一種代理重新簽名系統(tǒng),其用于將消息m上的被委托方簽名轉(zhuǎn)換成同一消息m上的委托方簽名。該文獻未公開基于屬性的簽名系統(tǒng)。


參考下文中描述的實施例,本發(fā)明的這些和其他方面將變得顯而易見并將得到闡述。在附圖中圖1是基于屬性的數(shù)字重新簽名系統(tǒng)的示圖;圖2是基于屬性的數(shù)字重新簽名方法的流程圖;圖3是基于屬性的代理重新簽名方案的功能圖。
具體實施例方式在本說明書中,公開了一種基于屬性的代理重新簽名方案(ABPRSS)。將作為范例描述該方案的幾個變型。然而,技術(shù)人員能夠?qū)崿F(xiàn)這些范例的變型以及組合在不同范例中描述的特征。基于屬性的簽名可以被認(rèn)為是群組簽名的一種形式。它允許檢驗者確定簽署者的屬性(例如角色)。然而,在實踐中,有這樣的情形來自一個實體的簽名被轉(zhuǎn)換成另一實體的簽名。一個范例是委托的情形,不過這不是限制??梢杂杀疚闹刑岢龅姆桨傅牟煌冃蛠斫鉀Q這些情形。該方案部署半信任代理,或者更一般地,重新簽名單元,其利用委托方給出的重新簽名密鑰將來自實體A (被委托方)的簽名變換成實體B (委托方)的簽名。
盡管在日常生活中的若干情況中基于屬性的簽名是有用的,但健康護理實踐提出了現(xiàn)有的基于屬性的簽名方案中沒有的若干額外的期望特征。在健康護理中,用戶可能經(jīng)常希望向其同事(或下屬)之一委托簽名權(quán)力。例如,醫(yī)生可能希望護士代表他簽署處方。低級的方法是,醫(yī)生將其密鑰給予護士,護士然后將代表醫(yī)生利用傳統(tǒng)的ABS方案簽名。顯然,主要缺點是護士獲悉其私有密鑰并能夠不用他的許可而繼續(xù)使用它。代理重新簽名方案提供了替代方案,該替代方案以某種方式提供了委托能力,該方式在一定程度上可能是安全和有效率的。這里使用的“安全”一詞表示被委托方不能獲知委托方的密鑰,“有效率”一詞寬泛地表示被委托方在密鑰存儲等方面的負(fù)荷也是最小的。因此提出了 ABPRSS,其中由被委托方和半信任代理生成醫(yī)生的簽名。例如,醫(yī)生(委托方)從他的與屬性集《 相關(guān)聯(lián)的私有密鑰SKusfra(第二簽名密鑰的范例)生成重新簽名密鑰。然后,僅在護士希望半信任代理將其簽名轉(zhuǎn)換成醫(yī)生(委托方)的簽名時,才由半信任代理使用重新簽名密鑰將護士的簽名(利用其自己的密鑰SKu (第一簽名密鑰的范例)生成)轉(zhuǎn)換為醫(yī)生(委托方)的簽名。這樣的系統(tǒng)的一個可期望的性質(zhì)是,任何人(護士或代理)都不能自己代表醫(yī)生產(chǎn)生簽名。此外,即使護士和半信任代理之間共謀也不能使得他們能夠恢復(fù)醫(yī)生(委托方)的私有密鑰SKuSfra。這種方案的適用性當(dāng)然不僅限于委托的情形。在另一個范例中,可以使用ABPRSS將能夠在雇員公共密鑰下驗證的雇員簽名轉(zhuǎn)換成能夠在部門或公司公共密鑰下驗證的部門或公司簽名。這有助于防止泄露公司企業(yè)結(jié)構(gòu)或雇員檔案的信息,同時仍然允許內(nèi)部審計。ABPRSS的另一種應(yīng)用是在如下情況中由工作流程鏈中的多個實體簽署文檔并且每個實體具有不同的屬性集。因此,利用提議的方案,僅需要與文檔一起存儲一個簽名,該簽名在驗證時將確認(rèn)已經(jīng)由正確的實體利用有效簽名密鑰簽署。參考圖1,將描述ABPRSS的實施例。圖1示出了圖示基于屬性的數(shù)字簽名系統(tǒng)各方面的示圖。例如,該系統(tǒng)可以實現(xiàn)于在其上加載了適當(dāng)軟件的分布式計算機系統(tǒng)上。
`
該系統(tǒng)可以包括用于生成公共密鑰和主密鑰的設(shè)置(setup)單元(未示出)。此外,該系統(tǒng)可以包括密鑰生成單元(未示出),用于適當(dāng)?shù)鼗谥髅荑€生成第一簽名密鑰12和/或第二簽名密鑰18。為了清楚起見未示出系統(tǒng)的這個部分。該系統(tǒng)可以包括第一簽名生成單元1,該第一簽名生成單元I用于基于第一簽名密鑰12和文檔11生成針對所述文檔11的第一簽名10。根據(jù)基于屬性的簽名方案,該第一簽名密鑰12可以與一組屬性15’相關(guān)聯(lián),使得第一簽名生成單元I能夠生成與所述一組屬性15相關(guān)聯(lián)的簽名10。然而,這并不是限制。也可能第一簽名密鑰12和第一簽名10沒有與之相關(guān)聯(lián)的屬性15’、15。在由重新簽名單元轉(zhuǎn)換之后,可以將第二簽名13與由重新簽名密鑰14確定的一組屬性16、16’’’相關(guān)聯(lián)。相反,可以是這樣的情況第一簽名密鑰12和第一簽名10與一組屬性15’、15相關(guān)聯(lián),可以由重新簽名單元2用包括一組條件17、17’策略對其進行檢查,以控制哪些用戶能夠?qū)⑵涞谝缓灻D(zhuǎn)換成第二簽名,而第二簽名13和重新簽名密鑰14沒有與它們相關(guān)聯(lián)的屬性16、16’’’。如圖1中所示,還可能第一簽名密鑰12和第一簽名10與可以用一組條件17、17’檢查的第一組屬性15’、15相關(guān)聯(lián),并且重新簽名密鑰14和第二簽名13與不同的第二組屬性16’ ’ ’、16相關(guān)聯(lián)。該系統(tǒng)可以還包括重新簽名單元2,該重新簽名單元2被布置為基于第一簽名10和重新簽名密鑰14生成針對文檔11的第二簽名13。重新簽名單元可以處理與第一簽名10相關(guān)聯(lián)的屬性15和/或與重新簽名密鑰14相關(guān)聯(lián)的屬性16’ ’ ’。而且重新簽名單元可以處理第二簽名13的任何屬性16,例如,通過令這一第二簽名13與一組屬性16相關(guān)聯(lián)。典型地,這組屬性16對應(yīng)于與重新簽名密鑰14相關(guān)聯(lián)的所述一組屬性16’’’。因此,與第二簽名13相關(guān)聯(lián)的所述一組屬性16可能與和第一簽名10相關(guān)聯(lián)的屬性15 (如果有的話)不同。如前所述,第一簽名10可以與第一組屬性15相關(guān)聯(lián),其中,第一組屬性15包括多個屬性。重新簽名單元2可以被布置為評估與第一簽名10相關(guān)聯(lián)的所述一組屬性15以驗證是否允許將第一簽名10轉(zhuǎn)換為第二簽名13。可以利用基于屬性的簽名方案的驗證算法結(jié)合公共密鑰20明確進行這種驗證,以用包括屬性上的一組條件17’的策略驗證所述一組屬性15的符合性?;蛘?,可以隱含地進行驗證。在后一種情況下,以加密方式將所述一組條件結(jié)合到重新簽名密鑰14中,使得使用重新簽名密鑰14將第一簽名10轉(zhuǎn)換成第二簽名13的算法將無法生成有效的第二簽名13,除非第一組屬性15匹配所述一組條件17。更一般地,重新簽名單元2可以被布置為僅在第一組屬性15滿足一組條件17或17’時生成第二簽名13。該系統(tǒng)可以包括第二簽名生成單元4,該第二簽名生成單元4基于文檔11和第二簽名密鑰18生成與第二組屬性16’ ’相關(guān)聯(lián)的簽名19。該第二組屬性16’ ’對應(yīng)于與第二簽名13相關(guān)聯(lián)的第二組屬性16以及與重新簽名密鑰14相關(guān)聯(lián)的第二組屬性16’ ’ ’。在典型的情形下,第二簽名生成單元4和第二簽名密鑰18由擁有第二組屬性16’的用戶使用。第一簽名生成單元I和重新簽名單元2由擁有所述屬性的用戶所授權(quán)的代表其簽名的用戶使用??梢杂蓳碛袑傩缘挠脩艨刂浦匦潞灻荑€生成器3以生成重新簽名密鑰14,以授權(quán)特定用戶或用戶組代表其簽名。

該系統(tǒng)可以包括重新簽名密鑰生成器3,用于基于與第二組屬性16’相關(guān)聯(lián)的第二簽名密鑰18生成重新簽名密鑰14。在這種情況下,重新簽名密鑰14使得重新簽名單元2能夠?qū)⒌谝缓灻?0轉(zhuǎn)換成與第二組屬性16相關(guān)聯(lián)的第二簽名13。重新簽名密鑰生成器3還可以被布置為生成重新簽名密鑰14,其能夠轉(zhuǎn)換與滿足由重新簽名密鑰14定義的一組條件17的一組屬性15相關(guān)聯(lián)的第一簽名10。于是,這樣的重新簽名密鑰與屬性上的一組條件17或策略相關(guān)聯(lián)。在由重新簽名單元2進行轉(zhuǎn)換的過程中,將由第一簽名10以數(shù)字方式表達的屬性15與由重新簽名密鑰14以數(shù)字方式表達所述一組條件17加密組合以形成第二簽名13。在重新簽名密鑰14與第二組屬性16’ ’ ’相關(guān)聯(lián)時,重新簽名過程可以有效地用與重新簽名密鑰14相關(guān)聯(lián)的屬性16、16’’’替換與第一簽名10相關(guān)聯(lián)的屬性15。重新簽名密鑰生成器3可以被布置為基于第二簽名密鑰18進一步生成第一簽名密鑰12??梢砸悦荑€對的形式生成所述第一簽名密鑰12和重新簽名密鑰14,該密鑰對被設(shè)計成以上述方式一起使用;例如,第一簽名生成單元I基于第一簽名密鑰12生成第一簽名10,重新簽名單元2利用重新簽名密鑰14將第一簽名10轉(zhuǎn)換成第二簽名13。為此,可以向第一簽名生成單元I提供第一簽名密鑰12并可以向重新簽名單元2提供重新簽名密鑰14。重新簽名密鑰生成器3可以被布置為根據(jù)所述一組條件17’ ’生成重新簽名密鑰14??梢杂捎脩衾糜脩糨斎朐O(shè)備指示這組條件17’’,所述用戶輸入設(shè)備可以是下文中所述的委托單元5的一部分。重新簽名密鑰14可以使得重新簽名單元2能夠?qū)⑴c任何一組滿足所述一組條件17’ ’的屬性15相關(guān)聯(lián)的第一簽名10轉(zhuǎn)換成第二簽名13。替代地或者額外地,可以將重新簽名單元2布置為使用公共密鑰20驗證第一簽名10是否與滿足一組條件17’的第一組屬性15相關(guān)聯(lián)。因此,可以將重新簽名單元2布置為僅在第一簽名10與滿足所述一組條件17’的一組屬性15相關(guān)聯(lián)的情況下生成第二簽名13。為了執(zhí)行這種行為,可以利用現(xiàn)有技術(shù)中的數(shù)字安全技術(shù)使重新簽名單元2防止篡改。在第一簽名10和第二簽名13都與一組屬性相關(guān)聯(lián)時,可以使用本文中所描述的系統(tǒng)用與第二組屬性相關(guān)聯(lián)的第二簽名13替換與第一組屬性15相關(guān)聯(lián)的第一簽名10。該系統(tǒng)可以包括委托單元5,該委托單元5用于使得擁有第二組屬性16’的用戶能夠通過向重新簽名單元2提供重新簽名密鑰14,將其利用與第二組屬性16相關(guān)聯(lián)的簽名簽署文檔11的授權(quán)委托給另一用戶。委托單元5可以還被布置為使得用戶能夠確定由重新簽名密鑰生成器3和/或重新簽名單元2使用的所述一組條件17、17’、17’ ’。委托單元可以包括用戶接口,用于向用戶提供適當(dāng)?shù)奈羞x項??梢岳抿炞C單元(未示出)進行第二簽名13 (任選地與第二組屬性16相關(guān)聯(lián))的驗證。該驗證單元可以驗證第二簽名的真實性。該驗證驗證第二簽名13是否是文檔11的有效簽名。在第二簽名與第二組屬性16相關(guān)聯(lián)時,驗證單元還可以用屬性上的一組條件驗證第二簽名的第二組屬性16。可以利用簽名驗證算法執(zhí)行這些驗證,在下文中描述了其范例??梢栽诠ぷ髡局袑崿F(xiàn)該系統(tǒng)。替代地,可以在分布式系統(tǒng)中實現(xiàn)該系統(tǒng)。例如,可以在獨立的計算機設(shè)備上托管第一簽名發(fā)生單元1、重新簽名單元2和重新簽名密鑰生成器3??梢栽谂c第二簽名生成單元4相同的計算機裝置上托管重新簽名密鑰生成器3。除了利用不同的物理機器之外,還可以基于用戶登錄系統(tǒng)授予每位用戶對適當(dāng)單元和密鑰的訪問。`圖2圖示了基于屬性的數(shù)字簽名生成的示范性方法??梢砸赃@樣的方式實現(xiàn)上述系統(tǒng)所述系統(tǒng)被布置為執(zhí)行以下方法或其修改。在步驟200中,運行設(shè)置算法以獲得公共密鑰參數(shù)和主密鑰。在步驟201中,利用密鑰生成算法為第一用戶生成第一簽名密鑰。在步驟202中,利用相同或不同的密鑰生成算法為第二用戶生成第二簽名密鑰。在步驟203中,基于第二簽名密鑰利用密鑰重新生成算法生成重新簽名密鑰。在重新簽名單元,例如半信任服務(wù)器上存儲這個重新簽名密鑰。在步驟204中,由第一用戶利用第一簽名密鑰簽署消息或文檔,并獲得第一簽名。在步驟205中,判斷是否應(yīng)當(dāng)轉(zhuǎn)換第一簽名。如果不需要,該過程返回到步驟204。否則,在步驟206中,將第一簽名發(fā)送到重新簽名單元進行轉(zhuǎn)換。在步驟207中,重新簽名單元接收第一簽名并利用,例如數(shù)據(jù)庫查找,在其存儲模塊中識別重新簽名密鑰。重新簽名單元還可以驗證第一簽名和重新簽名密鑰是否匹配,即,是否允許利用重新簽名密鑰將第一簽名轉(zhuǎn)換成第二簽名,還驗證第一簽名以確保簽名形成(或構(gòu)造)良好。在208中,如果不允許轉(zhuǎn)換第一簽名,或者其不是形成(或構(gòu)造)良好的簽名,則該過程可以生成錯誤信息并返回步驟204,否則在步驟209繼續(xù)。在步驟209中,重新簽名單元利用重新簽名算法將第一簽名轉(zhuǎn)換成第二簽名。在步驟210中,將第二簽名發(fā)送回第一用戶的系統(tǒng),第一用戶可以在公共存儲區(qū)中存儲第二簽名并將其發(fā)送到例如特定的目標(biāo)用戶。在步驟211中,另一用戶或目的地用戶接收第二簽名并運行驗證算法以驗證第二簽名??梢杂玫诙灻谕磉_的屬性上的一組條件來執(zhí)行這種驗證。該方法可以完全地或部分地以軟件方式實現(xiàn)為計算機程序產(chǎn)品,所述計算機程序產(chǎn)品包括用于令處理器系統(tǒng)執(zhí)行該方法的指令?;趯傩缘拇碇匦潞灻桨?ABPRSS)允許代理將來自實體B (被委托方)的使用私有密鑰SK簽署的簽名轉(zhuǎn)換為實體A (委托方)的使用重新簽名密鑰的
簽名0委托方。在本說明書中,“代理”是指能夠執(zhí)行用于重新簽名生成的計算的單元??梢詾檫@個單元或代理提供數(shù)字安全特征以保護單元免受惡意使用,例如濫用重新簽名密鑰。盡管將參考委托方和被委托方密鑰和簽名描述示范性方案,但是將要理解,也可以在涉及將一個簽名轉(zhuǎn)換成另一個簽名以及涉及基于屬性的簽名方案的不同情況下使用本文中所描述的變換和算法?;趯傩缘暮灻桨?ABS S)可以包括以下算法1)設(shè)置;2)密鑰生成;3)簽名和4)驗證?;趯傩缘拇碇匦潞灻桨?ABPRSS)通過增加兩種算法來擴展性能I)重新生成密鑰(Re-KeyGeneration)和2)重新簽名(Re-Sign)。以下給出了這些算法的每種的簡要描述設(shè)置設(shè)置算法在初始化階段期間配置系統(tǒng)參數(shù)并輸出公共參數(shù)PK和主密鑰MK。密鑰生成(MK,co)密鑰生成算法以用戶擁有的屬性集《和主密鑰MK作為輸入,其輸出用戶私有密鑰SKu。重新生成密鑰(SKu):重新生成密鑰算法,作為范例,以與屬性集《相關(guān)聯(lián)的用戶的密鑰SKu作為輸入,并輸出重新簽名密鑰,該重新簽名密鑰可用于將來自實體“A”的簽名轉(zhuǎn)換為實體“B”的簽名。簽名(SKU_托方,RSK被$托方,m):由被委托方運行這種算法以生成第一級的簽名。其將與屬性集《關(guān)聯(lián)的SKu被委托方’任選地還有重新簽名密鑰RSK和消息m作為輸入。重新簽名(RSK彳調(diào),O _托方)其可以由半信任代理運行。其將與屬性集Co $托方相關(guān)聯(lián)的重新簽名密鑰,和被委托方的簽名即,作為輸入。其輸出委托方的簽名,即
0委托方。驗證(O $托方,PK):由驗證器運行這種算法。該算法將消息m、公共密鑰PK和簽名0 作為輸入。如果簽名O 是有效簽名,則算法返回1,否則該算法返回錯誤符號

O在下文中,描述了兩個實施例,稱為“第一方案”和“第二方案”。這些實施例使用了 ABPRSS方案的兩個不同范例。在第一方案中,將與屬性集(委托方擁有)”相關(guān)聯(lián)的重新簽名密鑰分成兩個成分,一個用于被委托方,另一個用于半信任代理,使得它們中的任何一個都不能生成用于委托方的簽名。在第二方案中,重新簽名密鑰僅給予半信任代理,同時被委托方利用他或她所擁有的與屬性集“《 (為被委托方所擁有)”相關(guān)聯(lián)的私有密鑰進行簽署。在第二方案中,在被委托方和委托方之間不需要交互,被委托方不需要存儲額外的重新簽名密鑰以代表委托方簽名。如果被委托方(實體“B”)希望將其簽名轉(zhuǎn)換為委托方(實體“A”)的,那么實體“B”可以生成第一級簽名,使其可以由半信任代理轉(zhuǎn)換。
將要理解,第一方案和第二方案僅代表本文中所描述的種類的系統(tǒng)和方法可能的實現(xiàn)方式的范例。修改這些方案是可能的。例如,本領(lǐng)域的技術(shù)人員可以使用下文中描述的算法來實現(xiàn)參考圖1所述的系統(tǒng)的不同單元,或者進一步定義參考圖2所述的方法步驟。在第一方案中,將重新簽名密鑰RSK的第一部分給予實體A (被委托方),并且將重新簽名密鑰RSK的第二部分給予代理。僅在實體A (被委托方)首先簽署消息時,才可以由半信任代理生成有效簽名。在這種情況下,被委托方不得不存儲額外的密鑰,即重新簽名密鑰RSK的部分。在第二方案中,被委托方利用與被委托方擁有的屬性集關(guān)聯(lián)的私有密鑰SKu 生成第一級簽名O被委托方和委托方之間不需要交互。如果被委托方希望將其簽名轉(zhuǎn)換成實體A (委托方)的簽名,那么被委托方的簽名包括幾個額外成分。這些額外成分使得代理能夠?qū)⒑灻鸒 轉(zhuǎn)換成實體A (委托方)的簽名O圖3提供了基于屬性的代理重新簽名方案的功能圖。在步驟301中,實體“A”使用重新生成密鑰算法生成重新簽名密鑰RSK。RSK可以包括兩個部分一個用于代理,另一個用于實體“B”。在第一種設(shè)計方案中是這種情況。在上述第二方案中,它包括用于代理的一個部分。在步驟302和303中,分別向代理“P”和實體“B”發(fā)送重新簽名密鑰,即RSK代理和RSK被委托方。在步驟304,實體“B”利用RSK被委托方(在第一方案中)或SK被委托方(在第二方案中)生成他或她的簽名。在步驟305中,實體“B”向代理“P”發(fā)送步驟4的輸出。在步驟306中,半信任代理將從實體“B”的接收到的簽名轉(zhuǎn)換成實體“A”的簽名。在步驟307中,代理“P”向驗證器“V”(或所簽署的消息的接收者)發(fā)送代表實體“A”生成的簽名。在步驟308中,驗證器“V”確認(rèn)簽名是否來自實體“A”并且是通過與正確屬性集相關(guān)的密鑰簽署的。在第一方案中,用戶屬性是Zp的元,并且假設(shè)最多有k個屬性。在實踐中,可以使用無碰撞散列函數(shù)將屬性串映射到Z`p的元。該方案包括四種算法 設(shè)置.設(shè)置算法選擇素數(shù)階(prime order) p的雙線性群Gtl和隨機生成器g和h。其還選擇雙線性映射NGciXGtl^G1,其中G1是目標(biāo)群。此外,所述設(shè)置隨機地拾取
t, y, X1, X2,…,xk G Zp,對于一組屬性 Q = Ia1, a2,. . . , aj,其針對(I 彡 j 彡 k)設(shè)置和T;=h、。公共密鑰PK和主密鑰MK包括以下部分PK =MK = ( 密鑰生成(MK,co).密鑰生成算法輸出與屬性集《相關(guān)聯(lián)的用戶私有密鑰。該算法拾取隨機元xeZ:(其中X對于每個用戶是唯一的)。私有密鑰SKu包括以下部分
XQV- _ / f ^(1) _ xj \
U0/ — s iuGcoS(2) = gx). 密鑰重新生成(SKu).由委托方運行這種算法。重新密鑰生成算法輸出重新簽名密鑰,重新簽名密鑰可以由代理和被委托方使用以代表委托方簽名。該算法拾取隨機元d G Zp并將它們分成兩個部分Cl1, d2,使得(1=4+4。重新簽名密鑰RSKu包括以下兩個部分,
一個用于被委托方,另一個用于代理
權(quán)利要求
1.一種基于屬性的數(shù)字簽名系統(tǒng),包括 第一簽名生成單元(I),其用于基于第一簽名密鑰(12 )和文檔(11)針對所述文檔(11)生成第一簽名(10);以及 重新簽名單元(2),其被布置為基于所述第一簽名(10)和重新簽名密鑰(14)針對所述文檔(11)生成第二簽名(13),其中,所述重新簽名單元(2)被布置為處理與所述第一簽名(10)和/或所述第二簽名(13)相關(guān)聯(lián)的屬性(15,16)。
2.根據(jù)權(quán)利要求1所述的系統(tǒng),其中,所述第二簽名(13)與所述重新簽名密鑰(14)確定的第二組屬性(16)相關(guān)聯(lián),其中,所述第二組屬性(16)包括多個屬性。
3.根據(jù)權(quán)利要求1或2所述的系統(tǒng),其中,所述第一簽名(10)與第一組屬性(15)相關(guān)聯(lián),其中,所述第一組屬性(15)包括多個屬性,并且所述重新簽名單元(2)被布置為僅在所述第一組屬性(15)滿足一組條件(17,17’ )時才生成所述第二簽名(13)。
4.根據(jù)權(quán)利要求2所述的系統(tǒng),還包括重新簽名密鑰生成器(3),所述重新簽名密鑰生成器(3 )用于基于與所述第二組屬性(16’)相關(guān)聯(lián)的第二簽名密鑰(18 )生成所述重新簽名密鑰(14),其中,所述重新簽名密鑰(14)使得所述重新簽名單元(2)能夠?qū)⑺龅谝缓灻?10)轉(zhuǎn)換成與所述第二組屬性(16)相關(guān)聯(lián)的第二簽名(13),并且其中,所述第二簽名密鑰(18)使得第二簽名生成單元(4)能夠基于所述文檔(11)生成與所述第二組屬性(16’ ’)相關(guān)聯(lián)的簽名(19)。
5.根據(jù)權(quán)利要求4所述的系統(tǒng),其中,所述重新簽名密鑰生成器(3)被布置為基于所述第二簽名密鑰(18)進一步生成所述第一簽名密鑰(12),其中,所述第一簽名密鑰(12)和所述重新簽名密鑰(14)作為密鑰對而生成,并且所述第一簽名密鑰(12)被提供給所述第一簽名生成單元(I),并且所述重新簽名密鑰(14 )被提供給所述重新簽名單元(2 )。
6.根據(jù)權(quán)利要求3所述的系統(tǒng),包括重新簽名密鑰生成器(3),所述重新簽名密鑰生成器(3)被布置為根據(jù)所述一組條件(17’ ’)生成所述重新簽名密鑰(14),其中,所述重新簽名密鑰(14)使得所述重新簽名單元(2)能夠?qū)⑴c滿足所述一組條件(17’ ’ )的任何一組屬性相關(guān)聯(lián)的第一簽名(10)轉(zhuǎn)換成所述第二簽名(13)。
7.根據(jù)權(quán)利要求3所述的系統(tǒng),其中,所述重新簽名單元(2)被布置為使用公共密鑰(20)驗證所述第一簽名(10)是否與滿足一組條件(17’ )的第一組屬性(15)相關(guān)聯(lián),并且被布置為僅在所述第一簽名(10)與滿足所述一組條件(17’ )的一組屬性(15)相關(guān)聯(lián)的情況下生成所述第二簽名(13)。
8.根據(jù)權(quán)利要求1所述的系統(tǒng),還包括委托單元(5),所述委托單元(5)用于使得擁有所述第二組屬性(16’ )的用戶能夠通過向所述重新簽名單元(2)提供所述重新簽名密鑰(14),將他的用與所述第二組屬性(16)相關(guān)聯(lián)的簽名簽署文檔(11)的授權(quán)委托給另一用戶。
9.一種工作站,其包括根據(jù)權(quán)利要求1所述的系統(tǒng)。
10.一種基于屬性的數(shù)字簽名生成的方法,包括 基于第一簽名密鑰和文檔針對所述文檔生成(201)第一簽名;以及 基于所述第一簽名和重新簽名密鑰針對所述文檔生成(202)第二簽名,包括處理與所述第一簽名和/或第二簽名相關(guān)聯(lián)的屬性。
11.一種計算機程序產(chǎn)品,包括用于令處理器系統(tǒng)執(zhí)行根據(jù)權(quán)利要求10所述的方法的指令。
全文摘要
公開了一種基于屬性的數(shù)字簽名系統(tǒng)。第一簽名生成單元(1)用于基于第一簽名密鑰(12)和文檔(11)針對所述文檔(11)生成第一簽名(10)。重新簽名單元(2)用于基于所述第一簽名(10)和重新簽名密鑰(14)針對所述文檔(11)生成第二簽名(13),其中,所述重新簽名單元(2)被布置為處理與所述第一簽名(10)和/或所述第二簽名(13)相關(guān)聯(lián)的屬性(15,16)。所述第二簽名(13)與所述重新簽名密鑰(14)確定的第二組屬性(16,16''')相關(guān)聯(lián),其中,所述第二組屬性(16)包括多個屬性。所述第一簽名(10)與第一組屬性(15)相關(guān)聯(lián),其中,所述第一組屬性(15)包括多個屬性,并且所述重新簽名單元(2)被布置為僅在所述第一組屬性(15)滿足一組條件(17,17')時才生成第二簽名(13)。
文檔編號H04L9/32GK103069745SQ201180040747
公開日2013年4月24日 申請日期2011年8月22日 優(yōu)先權(quán)日2010年8月24日
發(fā)明者M·佩特科維奇, M·阿希姆 申請人:皇家飛利浦電子股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
登封市| 锦州市| 荆门市| 新巴尔虎右旗| 大港区| 芜湖县| 威海市| 阜新市| 金华市| 军事| 万州区| 镇宁| 临海市| 永仁县| 双流县| 六盘水市| 泸定县| 嵩明县| 内丘县| 遵化市| 双峰县| 衡东县| 新余市| 瑞昌市| 抚顺市| 上林县| 开封县| 平乐县| 富裕县| 平谷区| 甘泉县| 兴文县| 大新县| 东乡族自治县| 屏边| 新民市| 新沂市| 城步| 商城县| 平江县| 孟村|