專利名稱:具有加密功能的智能卡和使用這種卡的方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及具有加密功能的智能卡和使用這種智能卡在組織機(jī)構(gòu)中提供加密服務(wù)的方法和系統(tǒng)。
這里所使用的術(shù)語“組織機(jī)構(gòu)”意在覆蓋任何正式或非正式團(tuán)體,諸如商業(yè)企業(yè)、利益集團(tuán)、國際組織或國家。而且,這里所使用的術(shù)語“智能卡”意在包括通常在單片機(jī)上的結(jié)合了處理功能的任何小尺寸對象(諸如信用卡尺寸的對象),使用物理接觸裝置或諸如感應(yīng)式、電容式、光電式或類似的非接觸裝置通過任何適當(dāng)?shù)慕涌谠撔〕叽鐚ο髲耐獠靠纱嫒 T撎幚砉δ芸梢曰诔绦蚩刂铺幚砥骰驅(qū)S秒娐?。可以以任何適當(dāng)?shù)姆绞街T如通過經(jīng)由物理接觸的外部電源、通過卡上電源、通過電感耦合或通過光電裝置給智能卡供電。眾所周知,智能卡通常包括易失存儲(chǔ)器和非易失性存儲(chǔ)器。在存儲(chǔ)器用來存儲(chǔ)秘密的場合,至少存儲(chǔ)器應(yīng)當(dāng)是抗篡改/防篡改的。
背景技術(shù):
在許多組織機(jī)構(gòu)中,各種加密功能用來保障由組織機(jī)構(gòu)操作的過程,這些功能包括,例如,認(rèn)證、數(shù)字簽名、密鑰生成等。這些加密功能通常涉及與用戶相關(guān)的秘密的使用,用戶可以是代表組織機(jī)構(gòu)本身或者是組織機(jī)構(gòu)中的特定實(shí)體。
當(dāng)只需要單個(gè)加密功能的時(shí)侯,在用戶可以隨身攜帶的智能卡上提供用戶的秘密和與使用該秘密相關(guān)的加密功能是方便的。為了保證決不會(huì)需要從該卡上輸出秘密,在該智能卡上提供加密功能是必需的。
目前,大多數(shù)可用的智能卡是單一式功能卡,諸如用于安全存儲(chǔ)的智能卡、用于實(shí)體認(rèn)證的智能卡、用于數(shù)字簽名的智能卡、用于解密的智能卡等。
在用戶需要涉及使用多個(gè)不同加密功能的場合,在大的組織機(jī)構(gòu)中情況很可能就是如此,為了要實(shí)現(xiàn)的每個(gè)加密功能提供相應(yīng)智能卡將變得既不方便又昂貴。
因此,已經(jīng)建議提供具有多個(gè)固定功能的智能卡,每個(gè)功能獨(dú)立于其它功能工作。在2001年11月30日提交的標(biāo)題為“Smart cardhaving multiple controlled access electronic pockets”的US-A-20020100808中描述了一個(gè)例子。該文獻(xiàn)描述了一種多功能智能卡,該卡具有錢包,錢包帶有能夠注冊被限定到預(yù)定目的的存儲(chǔ)值的多個(gè)口袋。
使用這個(gè)方法來提供用于提供多個(gè)加密功能的智能卡太昂貴和復(fù)雜,因?yàn)樗枰撝悄芸óa(chǎn)生和保持許多不同的密鑰,每個(gè)密鑰用于一個(gè)特定目的。
本發(fā)明的一個(gè)目的是提供一種智能卡,該智能卡可以用于提供多個(gè)加密服務(wù),而且沒有前面提出的解決方案昂貴和復(fù)雜。
正如將在下文中顯而易見的,本發(fā)明的實(shí)施例采用了使用雙線性映射的加密技術(shù)。因此,現(xiàn)在將給出某些這種現(xiàn)有技術(shù)的簡要介紹。
在本說明書中,G1和G2表示兩個(gè)大主階l代數(shù)群,其中離散算法問題相信是很難的,為此存在非退化可計(jì)算雙線性映射p,例如,Tate配對或Weil配對。注意到,G1是較大代數(shù)群G0的[l]-扭轉(zhuǎn)子群,對于所有的p∈G1滿足[l]P=O,其中O是單位元素,l是大素?cái)?shù),l*余因子=G0中元素的數(shù)目。群G2是有限域乘法群的子群。
對于Weil配對,雙線性映射p表示為pG1×G1→G2Tate配對可以類似地表示,盡管對于它來說可能是不對稱形式
pG1×G0→G2通常,群G0和G1的元素是橢圓曲線(典型地,盡管不是必須的,超奇異橢圓曲線)上的點(diǎn);但是,并不一定是這種情況。
正如本領(lǐng)域普通技術(shù)人員所熟知的,為了加密目的,Weil和Tate配對的修改形式被使用,以確保p(P,P)≠1,其中p∈G1;然而,為了方便起見,在下面簡單地用它們的一般名稱參考這些配對,而不是將它們標(biāo)識(shí)為修改過的。關(guān)于Weil和Tate配對和它們的加密用途的進(jìn)一步背景可以在下面參考中找到-G.Frey,M.Müller,and H.Rück.The Tate pairing and the discrete logarithm applied toelliptic curve cryptosystems.IEEE Transactions on Information Theory,45(5)1717-1719,1999.
-D.Boneh and M.Franklin.Identity based encryption from the Weil pairing.InAdvances in Cryptology-CRYPTO 2001,LNCS 2139,pp.213-229,Springer-Verlag,2001.
為方便起見,下面給出的例子假定使用對稱的雙線性映射(pG1×G1→G2),G1的元素為橢圓曲線上的點(diǎn);然而,這些特性不能被認(rèn)為是對本發(fā)明范圍的限制。
由于G1和G2之間的映射是雙線性的,所以指數(shù)/系數(shù)可以四處移動(dòng)。例如,如果a,b,c∈Z(其中Z是所有整數(shù)集)和P,Q∈G1,那么p(aP,bQ)c=p(aP,cQ)b=p(bP,cQ)a=p(bP,aQ)c=p(cP,aQ)b=p(cP,bQ)a=p(abP,Q)c=p(abP,cQ)=p(P,abQ)c=p(cP,abQ)=...
=p(abcP,Q)=p(P,abcQ)=p(P,Q)abc此外,以下加密散列函數(shù)(hash function)定義為H1{0,1)*→G1H2{0,1)*→Z*lH3G2→{0,1)*
函數(shù)H1()通常表示為mapToPoint函數(shù),其起到將字符串輸入轉(zhuǎn)換成正在使用的橢圓曲線上的點(diǎn)的功能。
一個(gè)通常的公鑰/私鑰對可以為可信機(jī)構(gòu)定義為私鑰是s其中s∈Zl并且公鑰是(P,R)其中P和R分別是主和導(dǎo)出的公共元素,其中P∈G1和R∈G1,P和R的關(guān)系為R=sP另外,可以在可信機(jī)構(gòu)的合作下為一方定義基于標(biāo)識(shí)符的公鑰/私鑰。正如本領(lǐng)域普通技術(shù)人員所熟知的,在“基于標(biāo)識(shí)符”的加密方法中,公共的密碼學(xué)上不受限制的字符串結(jié)合可信機(jī)構(gòu)的公共數(shù)據(jù)使用,以執(zhí)行諸如數(shù)據(jù)加密或簽名的任務(wù)。補(bǔ)充任務(wù),諸如解密和簽名驗(yàn)證,需要涉及可信機(jī)構(gòu)來執(zhí)行基于公共字符串和它自己的私人數(shù)據(jù)的計(jì)算。在消息簽名應(yīng)用并且也經(jīng)常在消息加密應(yīng)用中,字符串用來“識(shí)別”一方(在簽名應(yīng)用中的發(fā)送方,在加密應(yīng)用中的預(yù)定接受方);通常對于這些加密方法,這就導(dǎo)致使用“基于標(biāo)識(shí)符”或“基于身份”的標(biāo)簽。然而,至少在某些加密應(yīng)用中,該字符串可以為識(shí)別預(yù)定接受方的應(yīng)用提供不同的用途,并且,實(shí)際上,可以是具有除了形成加密過程的基礎(chǔ)之外沒有其它用途的任意字符串。因此,這里涉及加密方法和系統(tǒng)的術(shù)語“基于標(biāo)識(shí)符”的使用簡單地被理解為,暗示著這些方法和系統(tǒng)基于加密地不受限制字符的使用,不管該字符串是否用來識(shí)別預(yù)定接受方。而且,正如在此使用的,術(shù)語“字符串”簡單地意在暗示有序比特序列,這些有序比特序列來自于字符串、串行圖象比特映射、數(shù)字化聲音信號(hào)或任何其它數(shù)據(jù)源。
在目前情況下,為一方定義的基于標(biāo)識(shí)符的公鑰/私鑰對具有公鑰QID和私鑰SID,其中QID,SID∈G1。通過下式,可信機(jī)構(gòu)的通常公鑰/私鑰對(P,R/s)與基于標(biāo)識(shí)符的公鑰/私鑰相聯(lián)系SID=sQID和QID=H1(ID)
其中ID是用于一方的標(biāo)識(shí)符串。
現(xiàn)在將參考附圖中的
圖1給出一些上述密鑰對的典型使用,圖1描述了帶有公鑰(P,sP)和私鑰s的可信機(jī)構(gòu)1。A方作為普通第三方,同時(shí)用于所描述的基于標(biāo)識(shí)符的加密任務(wù)(IBC),B方具有IBC公鑰QID和IBC私鑰SID,后一個(gè)密鑰是通過可信機(jī)構(gòu)1的私鑰發(fā)生功能從B方的標(biāo)識(shí)符ID中產(chǎn)生。可信機(jī)構(gòu)在已經(jīng)檢查了B方被授權(quán)標(biāo)識(shí)符ID之后,通常只為B方提供它的私鑰(例如,通過已經(jīng)驗(yàn)證B方滿足該標(biāo)識(shí)符中指定的某些條件,諸如身份條件)。
短簽名(參見虛線的方框2)私鑰s的持有者(即可信機(jī)構(gòu)1或后者已經(jīng)公開s的任何人)可以使用s來簽名比特串;更加特別地,其中m表示被簽名的消息,s的持有者計(jì)算V=sH1(m).
由A方的驗(yàn)證涉及該方檢驗(yàn)下列方程是否滿足p(P,V)=p(R,H1(m))如上面所描述的,這基于為雙線性指數(shù)/系數(shù)的G1和G2之間的映射。也就是說,p(P,V)=p(P,sH1(m))=p(P,H1(m))s=p(sP,H1(m))=p(R,H1(m))這種形式的短簽名的進(jìn)一步描述可以在由Boneh,D.B.Lynn,和H.Shacham發(fā)表在“In Advances In Cryptology-ASIACRYPT’01,LNCS2248,第514-532頁,Springer-Verlag,2001年”上的文章“Shortsignatures from the Weil pairing”中找到。
基于標(biāo)識(shí)符的加密(參見虛線方框3)-基于標(biāo)識(shí)符的加密允許基于標(biāo)識(shí)符的密鑰對的私鑰SID的持有者(在這種情況下,是B方)解密發(fā)送給他們的(由A方)使用B的公鑰QID加密的消息。
更加特殊地,A方,為了加密消息m,首先計(jì)算U=rP其中,r是Zl*的隨機(jī)元素。接下來,A方計(jì)算V=mH3(p(R,rQID))A方現(xiàn)在具有發(fā)送到B方的密文元素U和V。
通過計(jì)算下式執(zhí)行B方消息解密VH3(p(U,SID))=VH3(p(rP,sQID)=VH3(p(P,QID)rs)=VH3(p(sP,rQID))=VH3(p(R,rQID))=m上述例子的加密方案是在由D.Boneh和M.Franklin撰寫的上述參考文章中描述的“BasicIdent(基本識(shí)別)”方案。如在該文章中所指出的,這個(gè)基本方案不能防范有選擇的密文攻擊(所描述的方案只是用來幫助理解所涉及的原理-完整的安全方案在本文的后面描述,并且有關(guān)細(xì)節(jié)讀者應(yīng)當(dāng)參考該文章)。
基于標(biāo)識(shí)符的簽名(參見虛線方框4)-可以實(shí)現(xiàn)使用配對的基于標(biāo)識(shí)符簽名。例如B方首先計(jì)算r=p(SID,P)k其中k是Zl*的隨機(jī)元素然后B方施加散列函數(shù)H2給m‖r(m和r的連接),從而獲得h=H2(m‖r).
其后B方計(jì)算U=(k-h)SID
由此產(chǎn)生輸出U和h,作為對消息m的簽名。
通過計(jì)算下式可以建立由A方進(jìn)行的簽名驗(yàn)證r′=p(U,P)·p(QID,R)h其中如果h=H2(m‖r′),簽名才可以被接受。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的第一方面,提供一種在組織機(jī)構(gòu)中提供加密服務(wù)的方法,該方法包含為組織機(jī)構(gòu)的成員提供各自的智能卡,每個(gè)智能卡保存有與所涉及的成員相關(guān)的秘密,并根據(jù)已知的映射函數(shù)該智能卡被布置來將輸入字符串映射到代數(shù)群的第一元素,將該第一元素乘以所述秘密,以形成所述代數(shù)群的第二元素,從而存在用于第一和第二元素的可計(jì)算雙線性映射,并輸出該第二元素;該成員使用提供有至少加密、解密和簽名加密服務(wù)的智能卡,所涉及成員的智能卡保存秘密與在所有這些服務(wù)中所需要的秘密相同。
因此每個(gè)智能卡只需要被提供有限的加密功能,選擇所提供的功能以使得存儲(chǔ)的秘密受到保護(hù),但該秘密可以關(guān)于各種加密服務(wù)而發(fā)揮作用。這樣,該智能卡可以保持功能性地輕便,使得成本降低。在提供全部加密服務(wù)中所涉及的大多數(shù)處理在脫離智能卡的情況下被執(zhí)行。
根據(jù)本發(fā)明的第二方面,提供一種用于在組織機(jī)構(gòu)中提供密碼保護(hù)過程的系統(tǒng),該系統(tǒng)包含由該組織機(jī)構(gòu)的相應(yīng)成員使用的多個(gè)智能卡,每個(gè)智能卡包含非易失性存儲(chǔ)器,用于保存與相應(yīng)的成員相關(guān)的秘密,輸入裝置,用于接收輸入字符串,第一功能實(shí)體,用于根據(jù)已知的映射函數(shù)將所述輸入字符串映射到代數(shù)群的第一元素,第二功能實(shí)體,用于將該第一元素乘以所述秘密,以形成所述代數(shù)群的第二元素,從而存在用于第一和第二元素的可計(jì)算的雙線性映射,和輸出裝置,用于輸出所述第二元素;多個(gè)處理子系統(tǒng),用于實(shí)現(xiàn)下列過程,即,至少當(dāng)一起被考慮時(shí),包含涉及所述智能卡使用的至少加密、解密和簽名加密服務(wù),所涉及成員的智能卡保存秘密與在所有這些服務(wù)中所需要的秘密相同。
根據(jù)本發(fā)明的第三方面,提供一種智能卡,包含非易失性存儲(chǔ)器,用于保存與該卡的用戶相關(guān)的秘密,輸入裝置,用于接收輸入字符串,第一功能實(shí)體,用于根據(jù)已知的映射函數(shù)將所述輸入字符串映射到代數(shù)群的第一元素,第二功能實(shí)體,用于將該第一元素乘以所述秘密,以形成所述代數(shù)群的第二元素,從而存在用于第一和第二元素的可計(jì)算的雙線性映射,和輸出裝置,用于輸出所述第二元素。
附圖簡述借由非限制性實(shí)例,參考附圖,現(xiàn)在對本發(fā)明實(shí)施例進(jìn)行描述,在附圖中圖1是示出基于使用Tate配對的橢圓曲線加密的現(xiàn)有技術(shù)加密過程的示意圖;和圖2是說明本發(fā)明實(shí)施例的示意圖。
最佳實(shí)施方式圖2描述了組織機(jī)構(gòu)的成員A和B,該組織機(jī)構(gòu)包括財(cái)務(wù)部門22、法律部門23和安全部門24。該組織機(jī)構(gòu)的成員具有各自的智能卡,在圖2中成員A和B的智能卡分別表示為10A和10B。成員A和B還具有各自的計(jì)算機(jī)20A和20B,每個(gè)計(jì)算機(jī)包括智能卡接口,該接口使得智能卡可操作地與計(jì)算機(jī)耦合。
該組織機(jī)構(gòu)的各部門通過網(wǎng)絡(luò)25互聯(lián)。計(jì)算機(jī)20A和20B也連接到網(wǎng)絡(luò)25,打印機(jī)21也連接到網(wǎng)絡(luò)25。打印機(jī)21具有智能卡接口,通過該接口智能卡可以耦合到打印機(jī)。
現(xiàn)在將參考成員A的智能卡10A描述成員智能卡的形式,其它的智能卡基本相同。智能卡10A包含輸入/輸出接口塊11和加密功能塊14(以虛的輪廓線顯示)。
接口塊11包含數(shù)據(jù)輸入信道30、數(shù)據(jù)輸出信道31和存取安全實(shí)體12。接口塊11適合允許該智能卡與在諸如計(jì)算機(jī)20A或打印機(jī)21的裝置上提供的智能卡接口相耦合。存取安全實(shí)體12例如被實(shí)現(xiàn)需要在允許使用該智能卡之前輸入PIN碼,這個(gè)PIN碼由用戶經(jīng)由與該智能卡可操作地耦合的裝置輸入。
輸入信道30被布置來接收輸入字符串(一般地,字符串str),同時(shí),輸出信道31被布置來輸出橢圓曲線上的點(diǎn)(一般地,點(diǎn)R,對于成員A的智能卡10A來說是RA)。點(diǎn)RA輸出的形式可以被接口塊11的實(shí)體19設(shè)置成例如字符串形式。
智能卡10A的加密塊14包含下列功能實(shí)體-用于產(chǎn)生隨機(jī)秘密sA的實(shí)體15;-用于保存秘密sA的非易失性存儲(chǔ)器16;-Map-to-Point(映射到點(diǎn))實(shí)體17,用于從輸入信道30接收字符串str,并根據(jù)已知的單向映射函數(shù)將該字符串映射到代數(shù)群的第一元素P;-乘積實(shí)體,用于將該第一元素P乘以所存儲(chǔ)的秘密sA,以形成與該第一元素相同的代數(shù)群的第二元素RA,從而存在第一和第二元素的可計(jì)算雙線性映射,該第二元素在輸出信道31上輸出。
優(yōu)選地,該第一和第二元素P和RA是相同橢圓曲線上的點(diǎn),并且在下文中將假定該曲線被認(rèn)為是與在上面參考圖1描述的現(xiàn)有技術(shù)例子中使用的曲線相同的曲線。類似地,已經(jīng)在上面參考圖1例子描述的各個(gè)散列函數(shù)將用于在下面給出的例子;特別地,由實(shí)體17執(zhí)行的Map-to-Point函數(shù)是散列函數(shù)H1。
如果直接制造帶有已安裝秘密sA的智能卡,或者如果該秘密經(jīng)由接口11到存儲(chǔ)器的安全加載被提供,則秘密發(fā)生器實(shí)體15可以省略。
正如在下文中將更加完整地描述的,假定帶有由實(shí)體16-18表示的最小加密功能的成員智能卡10A、10B等,允許A和B為其成員的組織機(jī)構(gòu)來操作一定范圍的包含諸如簽名、加密、解密各種加密功能的密碼安全過程。
在圖2例子中,每個(gè)成員智能卡用來產(chǎn)生多個(gè)公鑰<P,RA>,每個(gè)公鑰用于財(cái)務(wù)部門22、法律部門23和安全部門24,每個(gè)部門保持記錄每個(gè)成員和他們相應(yīng)公鑰的相應(yīng)數(shù)據(jù)庫32、33、34。對于任何給定的智能卡,它產(chǎn)生的部門公鑰彼此不同,因?yàn)槊總€(gè)公鑰基于由有關(guān)部門提供給它的字符串,該部門選擇這個(gè)字符串來指示例如它與有關(guān)成員相關(guān)的一些特征。
因此,成員A可以具有來自財(cái)務(wù)部門的授權(quán)開支請求的權(quán)限。因此,財(cái)務(wù)部門要求成員A提供基于字符串“開支權(quán)限(expenseauthority)”的公鑰,該字符串是財(cái)務(wù)部門用來描述成員的財(cái)務(wù)相關(guān)權(quán)限的幾個(gè)可能字符串的第一字符串。然后成員A使用他們的智能卡(例如,在可操作地將它與它們的計(jì)算機(jī)20A耦合之后)將字符串“開支權(quán)限”作為輸入字符串str并輸出相應(yīng)點(diǎn)RAF(下標(biāo)F指示該點(diǎn)與財(cái)務(wù)部門有關(guān))。因此PF1=Map-to-Point(“開支權(quán)限”)其中下標(biāo)F1指示點(diǎn)P從由財(cái)務(wù)部門使用的第一字符串“開支權(quán)限”導(dǎo)出;RAF=sA(PF1)那么用于財(cái)務(wù)部門的成員A的公鑰是<PF1,RAF>。點(diǎn)PF1可以被布置來與點(diǎn)RAF一起由智能卡10A輸出,或者,優(yōu)選地,由于Map-to-Point函數(shù)是公共的,財(cái)務(wù)部門可以自身計(jì)算PF1。實(shí)際上,財(cái)務(wù)部門可以只存儲(chǔ)點(diǎn)RAF,因?yàn)樗鼮槌蓡TA保持的記錄將已經(jīng)記錄A具有開支權(quán)限,所以財(cái)務(wù)部門可以在任何需要的時(shí)侯計(jì)算A的公鑰的第一部分。
當(dāng)然,財(cái)務(wù)部門需要確定,在將公鑰存儲(chǔ)在數(shù)據(jù)庫32中的A的記錄中之前,它確實(shí)正接收由A的智能卡10A產(chǎn)生的公鑰。這可以以許多方式獲得。例如,財(cái)務(wù)部門可以需要A物理上到達(dá)財(cái)務(wù)部門,出示A的智能卡10A,該智能卡隨后耦合到該部門中的處理裝置,來產(chǎn)生公鑰。實(shí)際上,這不是必需的,因?yàn)樘热糌?cái)務(wù)部門確實(shí)知道由A的智能卡產(chǎn)生的一個(gè)公鑰,那么它可以檢查據(jù)稱由該卡產(chǎn)生的來自于由該部門提供的字符串的公鑰是否是真實(shí)的。該檢查基于諸如如下的Weil配對或Tate配對的雙線性映射p計(jì)算PF1=Map-to-Point(“開支權(quán)限”)檢查p(Pref,RAF)=p(PF1,RAref)其中<Pref,RAref>是A的可信公鑰(但是可以使得對財(cái)務(wù)部門可使用)。將預(yù)見到,左側(cè)應(yīng)當(dāng)?shù)扔谟覀?cè),因?yàn)閜(PF1,RAref)=p(PF1,sA(Pref))]]>=p(PF1,Pref)sA]]>=p(sA(PF1),Pref)]]>=p(RAF,Pref)]]>成員A的用于法律部門和安全部門的部門公鑰以類似的方式形成。因此,A的用于法律部門的公鑰從字符串“管理者(manager)”中形成,該字符串是與法律部門有關(guān)的A的特征A的用于法律部門的公鑰<PL1,RAL>
其中下標(biāo)L指示法律部門,PL1由Map-To-Point(“管理者”)形成。
對于安全部門,用作A的相關(guān)公鑰基礎(chǔ)的字符串是A的正常工作位置,這里是“構(gòu)建XY”,因此A的用于安全部門的公鑰<PS1,RAS>
其中下標(biāo)S指示安全部門,PS1由Map-To-Point(“構(gòu)建XY”)形成。
使用智能卡10B和由每個(gè)部門提供的適當(dāng)?shù)妮斎胱址蓡TB類似地形成它的部門公鑰。由任何特定部門提供給B的字符串可以與提供給A的字符串相同或不同,這依賴于B是否具有與相同的部門相關(guān)的特征。因此,B可以不具有來自財(cái)務(wù)部門的任何財(cái)務(wù)開支授權(quán),所以用作為B的財(cái)務(wù)部門公鑰的基礎(chǔ)的字符串是“無權(quán)限(noauthority)”,所以B的用于財(cái)務(wù)部門的公鑰<PF2,RBF>
其中下標(biāo)F指示財(cái)務(wù)部門,PF2由Map-To-Point(“無權(quán)限”)形成。
已經(jīng)描述了針對智能卡10A的申請上下文,現(xiàn)在將給出幾個(gè)例子的應(yīng)用。
1.假定成員B具有產(chǎn)生的開支,并將開支償還請求發(fā)送給財(cái)務(wù)部門。在支付該開支之前,財(cái)務(wù)部門將該請求發(fā)送給B的管理者-在這種情況下是成員A-用于授權(quán)支付。為了授權(quán)支付,成員A將他的智能卡10A插入計(jì)算機(jī)10A的智能卡接口,并輸入他的PIN來啟動(dòng)智能卡10A;然后成員A使用該智能卡計(jì)算RAreq=SA(Map-To-Point(請求))A將其發(fā)送回財(cái)務(wù)部門作為授權(quán)簽名。然后財(cái)務(wù)部門-計(jì)算Preq=Map-To-Point(請求)-在數(shù)據(jù)庫32中查詢A的公鑰,并檢查p(PF1,RAreq)=p(Preq,RAF)如果財(cái)務(wù)部門已經(jīng)真正收到A對于該請求的授權(quán)簽名,情況就是這樣。
2.法律部門23希望發(fā)送密件給成員A。為了實(shí)現(xiàn)這個(gè),通過使用作為IBE可信機(jī)構(gòu)公共數(shù)據(jù)的保存在數(shù)據(jù)庫33中A的公鑰<PL1,RAL>,和使用作為加密密鑰字符串EKS的字符串=“日期,文獻(xiàn)參考號(hào)(date,document reference number)”,部門23使用基于身份的加密來加密文獻(xiàn)。因此,對于圖1中描述的現(xiàn)有技術(shù)IBE加密方法,該部門23-產(chǎn)生秘密r,-計(jì)算U=rPL1V=mH3(t(RAL,r(Map-To-Point(EKS))))其中m是密件-發(fā)送<U,V,EKS>給成員A。
為了解密該消息,成員A將他的智能卡10A插入他的計(jì)算機(jī)智能卡接口,通過輸入他的PIN向智能卡認(rèn)證自己,并使用該智能卡計(jì)算解密密鑰RAdec=sA(Map-To-Point(EKS))該解密密鑰輸出到A的計(jì)算機(jī),然后該計(jì)算機(jī)如下解密該文件m=VH3(t(U,RAdec))在該例子中,加密密鑰字符串EKS可能每次都改變,即,EKS和由此的解密密鑰RAdec是對話密鑰。然而,在某些應(yīng)用中,EKS可以被再次使用,從而相應(yīng)的解密密鑰可以作為長期密鑰被(安全地)存儲(chǔ)。將預(yù)見,不僅這些部門,而且任何其它成員,都可以使用上述方法秘密地發(fā)送數(shù)據(jù)到成員A,然后A在數(shù)據(jù)的解密中使用他的智能卡。
3.在上述例子應(yīng)用的變型中,使用諸如上述的使用任何公鑰的IBE加密方法,該公鑰是使用A的智能卡和任何適當(dāng)?shù)募用苊荑€字符串EKS創(chuàng)建,成員A加密將被打印的數(shù)據(jù)。對于當(dāng)前加密操作,公鑰可以例如是使用智能卡10A專門創(chuàng)建的一個(gè)公鑰。將元素組<U,V,EKS>發(fā)送到打印機(jī)21,其中該元素組被保存直到成員A到達(dá)打印機(jī),并將智能卡插入到打印機(jī)的智能卡接口。在A已經(jīng)通過打印機(jī)的用戶接口輸入他的PIN之后,智能卡10A被啟動(dòng)以產(chǎn)生解密數(shù)據(jù)所需要的解密密鑰。打印機(jī)使用該解密密鑰來解密隨后打印的數(shù)據(jù)。
4.在前述兩個(gè)例子的應(yīng)用中,成員A的智能卡10A還沒有真正用于IBE可信機(jī)構(gòu)的角色,因?yàn)榻饷軐?shí)體實(shí)際上為成員A(實(shí)際上,在兩個(gè)例子中,解密實(shí)體實(shí)際上是至少臨時(shí)在成員A控制下的裝置)。然而,對于A的智能卡來說有可能被真正用于IBE可信機(jī)構(gòu)的角色。例如,文件可以被加密地發(fā)送到由成員A管理的成員,該文件如在第二例子應(yīng)用中那樣被加密。對于接受成員來說為了解密該文件,他們必須從成員A獲得解密密鑰。這就給了A在決定是否允許接受成員存取該文件中鍛煉他們判斷力的機(jī)會(huì)。在這種情況下,加密密鑰字符串有利地包含用于幫助A做出決定的信息-實(shí)際上,該加密密鑰字符串可以包括一個(gè)或多個(gè)涉及A在提供解密密鑰之前必須檢查接受方的條件。
5.在進(jìn)一步的例子應(yīng)用中,成員A有時(shí)候在周末期間在辦公室工作,當(dāng)A這樣做的時(shí)侯他需要向安全部門登記(其總是需要現(xiàn)場到場(on-site presence))。通過安排A進(jìn)入他工作的大樓,并將他的智能卡10A插入入口智能卡接口,這個(gè)登記可以自動(dòng)完成。在A已經(jīng)通過這個(gè)接口輸入他的PIN來啟動(dòng)該智能卡之后,入口接口將當(dāng)前時(shí)間字符串輸入到智能卡,并發(fā)送產(chǎn)生的輸出和輸入時(shí)間字符串到安全部門(優(yōu)選地和成員A的標(biāo)識(shí)符一起,諸如從該卡電子讀取的卡號(hào))。安全部門在數(shù)據(jù)庫34中查詢所存儲(chǔ)的用于被識(shí)別方的公鑰<PS1,RAS>,并使用這個(gè)公鑰來驗(yàn)證從入口智能卡接口接收的數(shù)據(jù)是否是使用當(dāng)前涉及的A的智能卡而產(chǎn)生的。如果該驗(yàn)證符合要求,A被允許進(jìn)入該大樓,并且記錄這個(gè)事實(shí)。作為附加的安全測量,安全部門還可以基于當(dāng)前場合(隨機(jī)數(shù)字)向A的智能卡發(fā)出詢問,這個(gè)當(dāng)前場合被提供作為該卡的輸入,然后由安全部門以已經(jīng)描述的方式驗(yàn)證輸出。
上述例子應(yīng)用不是窮舉的。例如,還可以執(zhí)行圖1的簽名過程4。而且,該智能卡可以用來執(zhí)行需要包含多個(gè)成員的過程。因此,該文件可以是使用由多個(gè)成員(即,通過多個(gè)可信機(jī)構(gòu))的智能卡產(chǎn)生的公共數(shù)據(jù)加密的IBE,通過從每個(gè)智能卡獲得解密子密鑰,加密項(xiàng)的解密才是可能的。關(guān)于多個(gè)可信機(jī)構(gòu)如何被使用的進(jìn)一步信息在下列文章中給出Chen L.,K.Harrison,A.Moss,N.P.Smart and D.Soldera.“Certicication of public keys within an identity based system”Proceedings of Information Security Confenence 2002,ed.A.H.Chan and V.Gligor,LNCS 2433,pages 322-333,Springer-Verlag,2002.
將預(yù)見,對本發(fā)明上述實(shí)施例的許多變化是可能的。因此,如果需要,智能卡接口塊11的存取控制實(shí)體12和輸出形式實(shí)體19可以省略。而且,在上文中用戶與智能卡的交互已經(jīng)通過了這樣的裝置,即智能卡通過接口11與之耦合的裝置的同時(shí),還有可能在智能卡本身上提供用戶接口元件諸如數(shù)字鍵區(qū)(用于數(shù)據(jù)輸入)和LCD顯示器(用于數(shù)據(jù)輸出)。該智能卡可以包含附加功能,該附加功能包括(盡管不是優(yōu)選的)其它加密功能。
權(quán)利要求
1.一種在組織機(jī)構(gòu)中提供加密服務(wù)的方法,該方法包含為組織機(jī)構(gòu)的成員(A)提供各自的智能卡(10A),每個(gè)智能卡保存有與所涉及的成員相關(guān)的秘密(sA),并根據(jù)已知的映射函數(shù)被布置來將輸入字符串(str)映射到代數(shù)群的第一元素(PA),將該第一元素(PA)乘以所述秘密(sA),以形成所述代數(shù)群的第二元素(RA),從而存在第一和第二元素的可計(jì)算雙線性映射,并輸出該第二元素;該成員(A)使用提供有至少加密、解密和簽名加密服務(wù)的智能卡(10A),所涉及成員的智能卡保存秘密(sA)與在所有這些服務(wù)中所需要的秘密相同。
2.根據(jù)權(quán)利要求1所述的方法,其中,對于所述組織機(jī)構(gòu)中多個(gè)實(shí)體(22,23,24)的每一個(gè),至少一個(gè)成員(A)的智能卡(10A)用來產(chǎn)生各自公鑰(<PF1,RAF>,<PL1,RAL>,<PS1,RAS>),每個(gè)這種公鑰包含由使用作為所述智能卡(10A)輸入字符串(str)的由所涉及實(shí)體提供的特征字符串產(chǎn)生的智能卡輸出(RAF,RAL,RAS)。
3.根據(jù)權(quán)利要求1所述的方法,其中每個(gè)成員的智能卡用來產(chǎn)生各自的公鑰,每個(gè)公鑰包含所述第一元素P和相應(yīng)的第二元素R;通過將主題字符串m提供給該智能卡作為所述輸入字符串(str)和使用產(chǎn)生的輸出作為它對該主題字符串的簽名,具有公鑰<PA,RA>的所述成員A使用他們的智能卡(10A)來簽名主題字符串m;和該主題字符串和簽名的接受方通過驗(yàn)證下式檢查該簽名(PA,簽名)=(RA,H1(m))其中H1()是所述已知的映射函數(shù)。
4.根據(jù)權(quán)利要求1所述的方法,其中每個(gè)成員的智能卡用來產(chǎn)生各自的公鑰,每個(gè)公鑰包含所述第一元素P和相應(yīng)的第二元素R;加密主題字符串m,以便用包含具有相關(guān)公鑰<PA,RA>的所述成員A來解密,通過以雙線性映射為基礎(chǔ)的基于標(biāo)識(shí)符的加密處理和使用作為加密參數(shù)的RA和非秘密加密密鑰字符串來加密該主題字符串。
5.根據(jù)權(quán)利要求4所述的方法,其中,通過將非秘密加密密鑰字符串輸入該成員A的智能卡(10A),和在解密加密的主題字符串中使用產(chǎn)生的輸出作為解密密鑰,恢復(fù)加密的主題字符串m。
6.根據(jù)權(quán)利要求5所述的方法,其中,將加密的主題字符串和非秘密加密密鑰字符串提供給與A相關(guān)并包括智能卡接口的處理裝置(20A),成員A將他們的智能卡(10A)出示給處理裝置(20A)的智能卡接口,使得該裝置能夠使用該智能卡(10A)獲得解密密鑰,該裝置隨后使用該解密密鑰來解密加密的主題字符串。
7.根據(jù)權(quán)利要求5所述的方法,其中,將加密的主題字符串和非秘密加密密鑰字符串提供給具有智能卡接口的打印機(jī)(21),成員A將他們的智能卡(10A)出示給打印機(jī)的智能卡接口,使得該打印機(jī)(21)能夠使用該智能卡獲得解密密鑰,該打印機(jī)隨后使用該解密密鑰來解密加密的主題字符串以用于打印。
8.根據(jù)權(quán)利要求1所述的方法,其中,所述成員A擔(dān)任關(guān)于以雙線性映射為基礎(chǔ)的基于標(biāo)識(shí)符的加密IBC服務(wù)的可信機(jī)構(gòu);在確定至少一個(gè)在加密密鑰字符串中指定的條件已經(jīng)滿足之后,成員A提供用于所述IBC服務(wù)的密鑰,通過將該加密密鑰字符串提供給該智能卡作為所述輸入字符串(str)和使用該產(chǎn)生的輸出作為密鑰,成員A使用他們的智能卡(10A)產(chǎn)生所述密鑰。
9.根據(jù)權(quán)利要求1所述的方法,其中,轉(zhuǎn)換該第二元素(RA)的形式,以便從該智能卡(10A)輸出。
10.根據(jù)權(quán)利要求1所述的方法,其中,除了可能存在的任何使用安全和秘密產(chǎn)生特征,該智能卡(10A)不包含除了功能(17,18)之外的加密服務(wù)功能,該功能(17,18)與將所述輸入字符串映射到所述第一元素(PA)和用該元素乘以所述秘密(sA)相關(guān)。
11.根據(jù)權(quán)利要求1所述的方法,其中,該第一和第二元素(PA,RA)是相同橢圓曲線上的點(diǎn)。
12.根據(jù)權(quán)利要求11所述的方法,其中,所述雙線性映射函數(shù)以Tate或Weil配對為基礎(chǔ)。
13.一種用于在組織機(jī)構(gòu)中提供密碼保護(hù)過程的系統(tǒng),該系統(tǒng)包含由該組織機(jī)構(gòu)的相應(yīng)成員(A,B)使用的多個(gè)智能卡(10A,10B),每個(gè)智能卡(10A)包含非易失性存儲(chǔ)器(16),用于保存與相應(yīng)的成員(A)相關(guān)的秘密(sA),輸入裝置(11),用于接收輸入字符串(str),第一功能實(shí)體(17),用于根據(jù)已知的映射函數(shù)將所述輸入字符串(str)映射到代數(shù)群的第一元素(PA),第二功能實(shí)體(18),用于將該第一元素(PA)乘以所述秘密(sA),以形成所述代數(shù)群的第二元素(RA),從而存在第一和第二元素的可計(jì)算雙線性映射,和輸出裝置(11),用于輸出所述第二元素(RA);多個(gè)處理子系統(tǒng)(22,23,24),用于實(shí)現(xiàn)下列過程,即,至少當(dāng)一起被考慮時(shí),包含涉及所述智能卡使用的至少加密、解密和簽名加密服務(wù),所涉及成員(A)的智能卡保存秘密(sA)與在所有這些服務(wù)中所需要的秘密相同。
14.根據(jù)權(quán)利要求13所述的系統(tǒng),其中每個(gè)子系統(tǒng)(22,23,24)被布置來存儲(chǔ)由所述成員(A)的智能卡(10A)產(chǎn)生的各自公鑰(<PF1,RAF>,<PL1,RAL>,<PS1,RAS>),每個(gè)這種公鑰包含由使用作為所述智能卡的輸入字符串的由所涉及的子系統(tǒng)提供的特征字符串產(chǎn)生的第二元素(RAF,RAL,RAS)。
15.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,至少一個(gè)所述子系統(tǒng)(22,23,24)被布置來需要所述成員A使用他們的智能卡將主題字符串m處理為所述輸入字符串并將產(chǎn)生的第二元素提供為簽名來簽名該主題字符串m,所述至少一個(gè)子系統(tǒng)被布置來通過驗(yàn)證下式檢查該簽名(PA,簽名)=(RA,H1(m))其中,-H1()是所述已知的映射函數(shù),和-<PA,RA>是與成員A相關(guān)的可信公鑰,PA是通過使用成員A的智能卡產(chǎn)生的所述第一元素,RA是通過使用成員A的智能卡產(chǎn)生的所述第二元素。
16.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,至少一個(gè)所述子系統(tǒng)(22,23,24)被布置來加密主題字符串m,以便用包含具有相關(guān)公鑰<PA,RA>的所述成員A來解密,其中PA是通過使用成員A的智能卡(10A)產(chǎn)生的所述第一元素,RA是通過使用成員A的智能卡(10A)產(chǎn)生的所述第二元素,所述至少一個(gè)子系統(tǒng)被布置來通過以雙線性映射為基礎(chǔ)的基于標(biāo)識(shí)符的加密方法和使用作為加密參數(shù)的RA和非秘密加密密鑰字符串來加密所述主題字符串m。
17.根據(jù)權(quán)利要求16所述的系統(tǒng),其中,所述至少一個(gè)所述子系統(tǒng)(22,23,24)被布置來,通過將非秘密加密密鑰字符串輸入該成員A的智能卡(10A),和在解密加密的主題字符串中使用產(chǎn)生的輸出作為解密密鑰,恢復(fù)加密的主題字符串m。
18.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,至少一個(gè)所述子系統(tǒng)(22,23,24)被布置來使用所述成員A作為關(guān)于以雙線性映射為基礎(chǔ)的基于標(biāo)識(shí)符的加密服務(wù)的可信機(jī)構(gòu);所述至少一個(gè)所述子系統(tǒng)被布置來為成員A提供加密密鑰字符串,用于表示為到A的智能卡的所述輸入字符串,并且接收回作為解密密鑰的產(chǎn)生的第二元素。
19.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,每個(gè)智能卡(10A)的輸出裝置(11)被布置來在該第二元素(PA)從該智能卡輸出之前改變其形式。
20.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,除了可能存在的任何使用安全和秘密產(chǎn)生特征,該智能卡(10A)不包含除了功能(17,18)之外的加密服務(wù)功能,該功能(17,18)與將所述輸入字符串(str)映射到所述第一元素(PA)和用該元素乘以所述秘密(sA)相關(guān)。
21.根據(jù)權(quán)利要求13所述的系統(tǒng),其中,該第一和第二元素(PA,RA)是相同橢圓曲線上的點(diǎn)。
22.根據(jù)權(quán)利要求21所述的系統(tǒng),其中,所述雙線性映射函數(shù)以Tate或Weil配對為基礎(chǔ)。
23.一種智能卡,包含非易失性存儲(chǔ)器(16),用于保存與該卡的用戶(A)相關(guān)的秘密(sA),輸入裝置(11),用于接收輸入字符串(str),第一功能實(shí)體(17),用于根據(jù)已知的映射函數(shù)將所述輸入字符串(str)映射到代數(shù)群的第一元素(PA),第二功能實(shí)體(18),用于將該第一元素(PA)乘以所述秘密(sA),以形成所述代數(shù)群的第二元素(RA),從而存在第一和第二元素的可計(jì)算雙線性映射,和輸出裝置(11),用于輸出所述第二元素(RA)。
24.根據(jù)權(quán)利要求23所述的智能卡,其中,該智能卡的輸出裝置(11)被布置來在該第二元素(RA)從該智能卡輸出之前改變其形式。
25.根據(jù)權(quán)利要求23所述的智能卡,其中,除了可能存在的任何使用安全和秘密產(chǎn)生特征,該智能卡不包含除了功能(17,18)之外的加密服務(wù)功能,該功能(17,18)與將所述輸入字符串(str)映射到所述第一元素(PA)和用該元素乘以所述秘密(sA)相關(guān)。
26.根據(jù)權(quán)利要求23所述的智能卡,其中,該第一和第二元素(PA,RA)是相同橢圓曲線上的點(diǎn)。
27.根據(jù)權(quán)利要求26所述的智能卡,其中,所述雙線性映射函數(shù)以Tate或Weil配對為基礎(chǔ)。
全文摘要
本發(fā)明提供一種智能卡(10A),該智能卡存儲(chǔ)與該卡的用戶(A)相關(guān)的秘密(s
文檔編號(hào)H04L9/30GK101065924SQ200480044471
公開日2007年10月31日 申請日期2004年11月24日 優(yōu)先權(quán)日2004年11月24日
發(fā)明者陳利群, K·A·哈里森, M·卡薩薩蒙特 申請人:惠普開發(fā)有限公司