專利名稱:用于消息鑒權(quán)系統(tǒng)的門限密碼方案的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于提供消息鑒權(quán)的系統(tǒng)和方法。利用秘密共享的概念,該系統(tǒng)不需要發(fā)送全部密鑰到該消息的接收者。而是,通過(guò)使用從發(fā)送者接收的至少一個(gè)份額(share)和被存儲(chǔ)在接收者中的至少兩個(gè)份額,來(lái)恢復(fù)該密鑰。
背景技術(shù):
在現(xiàn)代電子分布網(wǎng)絡(luò)中,消息鑒權(quán)是信息安全性的一個(gè)重要的目的。這個(gè)目的是通過(guò)給消息的接收者提供一個(gè)發(fā)送者身份的保證而滿足的。由于對(duì)于以二進(jìn)制序列表示的消息,不可能采用諸如密封信封那樣的物理保護(hù),所以已開發(fā)了使用密碼術(shù)的數(shù)字工具。用于消息鑒權(quán)的所有的加密方法的主要弱點(diǎn)在于,它們使用具有固定的對(duì)稱或公共密鑰的算法。我們描述了一種基于秘密共享的、新的密鑰輸送方案,它允許每個(gè)新的消息用新的密鑰被鑒權(quán),增強(qiáng)系統(tǒng)對(duì)于攻擊密鑰或消息的抵抗能力。
鑒權(quán)是信息安全性的四個(gè)最重要的目的之一。另外三個(gè)是保密性、數(shù)據(jù)完整性和認(rèn)可(non-repudiation)。在通信網(wǎng)絡(luò)中,可能需要滿足某些或所有這些目的。
關(guān)于保密性,將會(huì)指出,有一些應(yīng)用,其中信息應(yīng)當(dāng)保密。加密技術(shù)是通過(guò)把數(shù)據(jù)變換成難懂的格式而提供保密性的。這是一個(gè)可逆的處理過(guò)程,以及占有正確的密鑰的實(shí)體可恢復(fù)該數(shù)據(jù)。
關(guān)于數(shù)據(jù)完整性,用戶需要得到保證信息沒(méi)有以未授權(quán)方式被改變。產(chǎn)生數(shù)據(jù)的緊湊表示的散列函數(shù)通常被使用來(lái)檢驗(yàn)數(shù)據(jù)完整性。
最后,關(guān)于認(rèn)可,當(dāng)由于一方否認(rèn)一個(gè)行動(dòng),例如牽涉電子交易的行動(dòng),而引起爭(zhēng)論時(shí),它可以通過(guò)起到裁判作用的可信的第三方的參加而被解決。
有兩種基本類型的鑒權(quán)“實(shí)體”鑒權(quán)和“消息”鑒權(quán)。消息鑒權(quán)提供消息的發(fā)起者的身份的保證。實(shí)體鑒權(quán)提供消息的發(fā)起者的身份的保證以及消息的發(fā)起者的主動(dòng)參加的保證。
圖6顯示通信信道,其中兩方(A和B)通過(guò)使用用于交換消息的協(xié)議進(jìn)行通信。A方是消息M的發(fā)送者,以及B方是接收者。取決于通信網(wǎng)絡(luò)的類型,B方在接收消息時(shí)至少想要三(3)段信息(1)發(fā)送消息M的那方的身份保證(通常稱為“消息”鑒權(quán)),(2)在傳輸期間消息M沒(méi)有被修改的證據(jù)(數(shù)據(jù)完整性),以及(3)A方(即,發(fā)送者)在消息被發(fā)送時(shí)是處在工作的表示(通常稱為“實(shí)體”鑒權(quán))。
如上所述,消息鑒權(quán)提供A方(消息M的發(fā)起者)的身份的保證。消息鑒權(quán)也包括數(shù)據(jù)完整性的證據(jù),因?yàn)槿绻趥鬏斊陂g消息M被修改,則A方不能是發(fā)起者。另一方面,實(shí)體鑒權(quán)不單向B方保證A方的身份,而且也保證他的主動(dòng)參加。有時(shí),兩方需要對(duì)于向任一個(gè)方向流動(dòng)的消息進(jìn)行互相鑒權(quán)。基于對(duì)稱的或公共的密鑰方案的詢問(wèn)應(yīng)答協(xié)議,和零知識(shí)協(xié)議通常被使用于互相鑒權(quán)。
雖然消息鑒權(quán)不擔(dān)保時(shí)間性或唯一性,但它在其中一方(例如,A方)在執(zhí)行消息協(xié)議期間是不工作的通信中是非常有用的。為了避免再現(xiàn)攻擊(replay attack)(即,其中一個(gè)侵權(quán)者偽裝為A方,以及發(fā)送先前使用的消息以試圖得到該協(xié)議),可以把時(shí)變數(shù)據(jù)(例如,序列號(hào),時(shí)間印記,等)加到消息M中。
被稱為“散列”的密碼處理過(guò)程是數(shù)據(jù)完整性和消息鑒權(quán)方案的重要部分。散列函數(shù)取任意有限長(zhǎng)度的消息,以及產(chǎn)生固定長(zhǎng)度的輸出。在密碼的應(yīng)用中,散列數(shù)值被看作為實(shí)際消息的較短的代表。散列函數(shù)可被分類為兩組(1)未加密鑰的散列函數(shù)(即,該消息是唯一的輸入?yún)⒘?,和(2)加密鑰的散列函數(shù)(即,該消息和密鑰是輸入?yún)⒘?。
未加密鑰的散列函數(shù)的特定的類別包含篡改檢測(cè)碼(manipulation detection code,MDC)。MDC在壓縮消息M的方式上是不同的。一些例子是(a)基于塊密碼的散列函數(shù),(b)基于模算術(shù)的散列函數(shù),以及(c)定制的散列函數(shù)。
被使用于消息鑒權(quán)的加密鑰的散列函數(shù)在消息鑒權(quán)碼(MAC)下被分組。MAC可以被定制,使用塊密碼被構(gòu)建,或從MDC被得出。
消息鑒權(quán)方法可以通過(guò)它們?nèi)绾卫脤?duì)稱或公共密鑰密碼而被分類(a)MAC,(b)消息加密,和(c)數(shù)字簽名。
圖7顯示使用MAC的消息鑒權(quán)方法的方框圖。消息M被輸入到MAC算法,它通過(guò)使用由雙方(即,發(fā)送者(A方)和接收者(B方))共享的密鑰K來(lái)計(jì)算MAC。然后,A方把MAC附著到消息M上,以及把合成的信號(hào)發(fā)送到B方。
圖8顯示使用消息加密的消息鑒權(quán)方法的方框圖。消息加密可以以兩種方式完成對(duì)稱密鑰加密和公共密鑰加密。對(duì)于對(duì)稱密鑰加密,消息M在發(fā)送到接收者(例如,B方)之前用對(duì)稱密鑰被加密。接收者(例如,B方)使用該對(duì)稱密鑰的副本來(lái)解密該消息。對(duì)于公共密鑰加密,消息M通過(guò)使用公共密鑰被加密,以及在接收者處,通過(guò)使用相應(yīng)的專用密鑰來(lái)解密。如圖8所示,無(wú)論在那種方法下,消息M都被輸入到加密算法,該算法使用密鑰K(對(duì)稱的或公共的)來(lái)創(chuàng)建加密的消息Ek(M)。
圖9顯示使用數(shù)字簽名的消息鑒權(quán)方法的方框圖。在這個(gè)方法中,發(fā)送者(例如,A方)使用專用密鑰(Kprivate)對(duì)消息M進(jìn)行數(shù)字簽名。取決于消息M的大小,可以使用適當(dāng)?shù)暮灻惴ā=邮照?例如,B方)確信,消息M是由A生成的,因?yàn)锳是擁有該專用密鑰的唯一的一方。
如果固定的密鑰被使用于創(chuàng)建MAC、消息加密和數(shù)字消息簽名(即,所有三個(gè)消息鑒權(quán)類型),則安全級(jí)別將是有限的,由此使得該系統(tǒng)受到密碼分析。
關(guān)于‘MAC’方法,由發(fā)送者和接收者共享的對(duì)稱密鑰,需要在它的工作期限期間被使用于所有的消息。這使得這種方法對(duì)于密鑰恢復(fù)和MAC偽造的攻擊是脆弱的。有兩種可能的攻擊(1)對(duì)密鑰空間的攻擊,和(2)對(duì)MAC數(shù)值的攻擊。如果該侵權(quán)者可確定MAC密鑰,那么他或她將能夠創(chuàng)建用于任何消息的MAC數(shù)值。對(duì)于‘t’比特的密鑰尺寸和固定的輸入,找到正確的n比特MAC的概率約為2-t。MAC偽造的目的是在不知道該密鑰的情況下創(chuàng)建用于給定消息的MAC,或找到對(duì)于給定MAC的消息。對(duì)于n比特MAC算法,滿足這個(gè)目的的概率約為2-n??傊?,對(duì)于強(qiáng)力攻擊MAC算法所需要的努力將是(2t,2n)中的最小值。
關(guān)于消息加密方法,這個(gè)方法也易于受到強(qiáng)力攻擊。例如,對(duì)于56比特DES(對(duì)稱)算法,密鑰可以通過(guò)測(cè)試所有的255個(gè)DES運(yùn)算被確定。更有效的攻擊,如線性或差分密碼分析,允許用更少的處理器時(shí)間進(jìn)行密鑰恢復(fù)。
關(guān)于數(shù)字簽名方法,沒(méi)有一個(gè)公共密鑰簽名算法已被證明是安全的。公共密鑰算法的安全性是基于計(jì)算離散對(duì)數(shù),或?qū)Υ髷?shù)進(jìn)行因式分解的困難性。對(duì)于固定的公共/私用密鑰對(duì),通過(guò)使用在消息上的公共密鑰或簽名進(jìn)行攻擊是可能的。在某些應(yīng)用中,發(fā)送者的公共密鑰的真實(shí)性是主要的問(wèn)題,它需要復(fù)雜的公共密鑰基礎(chǔ)結(jié)構(gòu)。
因此,現(xiàn)在需要一種用于提供消息鑒權(quán)的系統(tǒng),它提供更高程度的安全性,但它不使用固定的密鑰。
發(fā)明概要本發(fā)明規(guī)定一種用于提供消息鑒權(quán)的方法和設(shè)備,所述方法包括在接收站處接收第一份額的數(shù)據(jù)代表,通過(guò)使用所述第一份額和至少兩個(gè)附加份額來(lái)構(gòu)建密鑰,所述至少兩個(gè)附加份額被存儲(chǔ)在接收站處;以及通過(guò)使用該構(gòu)建的密鑰來(lái)鑒權(quán)消息。
按照本發(fā)明的第一示例性實(shí)施例,使用第一和第二份額。該第一和第二份額是在歐幾里得平面上的點(diǎn),以及構(gòu)建密鑰的步驟包含計(jì)算由該第一和第二份額在該歐幾里得平面上形成的直線的Y截距。
按照本發(fā)明的第二示例性實(shí)施例,使用第一、第二和第三份額。該第一、第二和第三份額是在歐幾里得平面上的點(diǎn),以及構(gòu)建密鑰的步驟包含計(jì)算由該第一、第二和第三份額在歐幾里得平面上形成的拋物線的Y截距。
按照本發(fā)明的第三示例性實(shí)施例,使用第一、第二、第三和第四份額。該第一、第二、第三和第四份額是在歐幾里得平面上的點(diǎn),以及構(gòu)建密鑰的步驟包含計(jì)算由該第一、第二、第三和第四份額在歐幾里得平面上形成的曲線的Y截距。一般地,可以使用任意數(shù)目的份額,取決于所需要的安全級(jí)別。
附圖簡(jiǎn)述
圖1是顯示按照本發(fā)明的第一示例性實(shí)施例的消息鑒權(quán)系統(tǒng)的方框圖。
圖2a是按照本發(fā)明的第一示例性實(shí)施例的鑒權(quán)密鑰的確定的圖形表示。
圖2b是按照?qǐng)D1的、對(duì)于每個(gè)發(fā)射機(jī)的唯一的和非重疊的范圍分配的圖形表示。
圖3是按照本發(fā)明的第二示例性實(shí)施例的鑒權(quán)密鑰的確定的圖形表示。
圖4是按照本發(fā)明的第三示例性實(shí)施例的鑒權(quán)密鑰的確定的圖形表示。
圖5是按照本發(fā)明的第一到第三示例性實(shí)施例的多個(gè)鑒權(quán)密鑰的確定的圖形表示。
圖6是顯示傳統(tǒng)的消息鑒權(quán)系統(tǒng)的方框圖。
圖7是顯示使用MAC的消息鑒權(quán)系統(tǒng)的方框圖。
圖8是顯示使用消息加密的消息鑒權(quán)系統(tǒng)的方框圖。
圖9是顯示使用數(shù)字簽名的消息鑒權(quán)系統(tǒng)的方框圖。
詳細(xì)描述本發(fā)明包括消息鑒權(quán)系統(tǒng),其中在兩方或多方之間發(fā)送的消息通過(guò)使用預(yù)先放置的秘密共享方案進(jìn)行鑒權(quán)。通過(guò)使用預(yù)先放置的秘密共享方案,消息鑒權(quán)系統(tǒng)的安全性和靈活性(例如,通過(guò)使用不同的密鑰)被增加。
本發(fā)明采用原先由Adi Shamir開發(fā)的、被稱為“門限方案”的秘密共享方案的應(yīng)用(見A.Shamir的“How to share a secret(如何共享秘密)”,Communications of the ACM,Vol.22,No.11,第612-613頁(yè),1979年11月)。(t,n)門限方案,諸如由Shamir提出的那種方案,涉及以一種方式把一個(gè)秘密分成n個(gè)片段(可被稱為“份額”或“小段”),使得至少需要其中t(<=n)個(gè)片段來(lái)重新構(gòu)建該秘密。完美的門限方案是這樣的門限方案,其中只知道(t-1)個(gè)或更少的片段(“份額”或“小段”)就不能提供有關(guān)該秘密的信息。
例如,對(duì)于(2,5)門限方案,秘密被分成5個(gè)份額,但只需要兩個(gè)份額就可重新構(gòu)建該秘密。諸如以上描述的(2,5)門限方案可以被銀行管理者使用來(lái)在五個(gè)出納員之間分割對(duì)于主保險(xiǎn)柜的組合。這樣,任何兩個(gè)出納員一起工作都可以打開保險(xiǎn)柜,但單獨(dú)一個(gè)出納員不能打開該保險(xiǎn)柜。在Shamir的(t,n)門限方案中,選擇更高的t的數(shù)值和把(t-1)個(gè)秘密存儲(chǔ)在智能卡上,將增加系統(tǒng)對(duì)抗僅僅密碼文本的攻擊,但將導(dǎo)致更多的用于多項(xiàng)式構(gòu)建的計(jì)算。
這樣的門限方案減小在對(duì)稱密鑰恢復(fù)時(shí)的計(jì)算上的要求。與涉及模取冪的RSA解密相比較,對(duì)于每個(gè)新的密鑰,只執(zhí)行簡(jiǎn)單的運(yùn)算(即,計(jì)算在x=0時(shí)的多項(xiàng)式的值)。另外,安全性是完全的(即,在給定(x1,y1)的知識(shí)后,該秘密的所有的數(shù)值保持相等的可能性)。
本發(fā)明利用Shamir的秘密共享的原理來(lái)隱藏用于鑒權(quán)消息的密鑰的身份。具體地,本發(fā)明提出一種方案,其中該密鑰包括由歐幾里得平面上的兩個(gè)或多個(gè)點(diǎn)形成的特定直線或曲線的Y截距。
在這個(gè)方案的最簡(jiǎn)單的實(shí)施例中,裝置(例如接收機(jī))被制造為帶有已被存儲(chǔ)在其中的份額(這常常被稱為“預(yù)先放置的”共享的秘密方案,正如下面描述的)。這個(gè)被存儲(chǔ)的份額被使用來(lái)計(jì)算該密鑰,然后,該密鑰被使用來(lái)得出一個(gè)消息鑒權(quán)符。該消息鑒權(quán)符可以是例如以上參照?qǐng)D7討論的那種類型(例如,MAC),或可以是本領(lǐng)域技術(shù)人員已知的、不同的鑒權(quán)符。當(dāng)消息信號(hào)被發(fā)送時(shí),附加的或“激活的”份額隨之一起被發(fā)送。將會(huì)指出,在這個(gè)方案中,“激活的”份額不需要被加密,因?yàn)槿绻恢辣淮鎯?chǔ)的份額,則知道激活的份額并沒(méi)有意義。在接收“激活的”份額時(shí),裝置通過(guò)使用一個(gè)密鑰來(lái)計(jì)算該消息鑒權(quán)符,該密鑰是通過(guò)找到由該存儲(chǔ)的份額和“激活的”份額形成的直線的Y截距而被計(jì)算的。每次需要新的密鑰時(shí),可以在發(fā)送者處選擇新的“激活的”份額,由此改變由該存儲(chǔ)的份額和“激活的”份額形成的直線的Y截距。這樣,可以規(guī)定和利用無(wú)窮多個(gè)密鑰,而不用改變裝置的硬件或軟件。將會(huì)指出,上述的“裝置”可包括許多不同類型的設(shè)備,諸如模擬或數(shù)字電視接收機(jī)、機(jī)頂盒、盒式磁帶錄像機(jī)(VCR)以及本領(lǐng)域技術(shù)人員已知的其他等價(jià)的設(shè)備。為了簡(jiǎn)化起見,以下的描述將集中在通常的“接收機(jī)”結(jié)構(gòu)。
密鑰生成和分布處理過(guò)程可以通過(guò)開發(fā)執(zhí)行以下步驟的程序而被自動(dòng)化(a)選擇一個(gè)秘密S;這將是沿著歐幾里得平面的Y軸的一個(gè)數(shù)值。
(b)通過(guò)使用S生成消息鑒權(quán)符。例如,這個(gè)消息鑒權(quán)符可以是MAC。
(c)構(gòu)建穿過(guò)點(diǎn)(O,S)和另一個(gè)點(diǎn)(x0,y0)的一次多項(xiàng)式f(x)。
(d)計(jì)算在x1處的f(x),其中x1不能等于x0。
(e)隨該消息和消息鑒權(quán)符(例如,MAC)分布(x1,y1)。
諸如以上描述的那樣的方案常常被稱為“預(yù)先放置”的共享秘密方案,因?yàn)橐徊糠置孛鼙弧邦A(yù)先放置”在裝置中(例如,接收機(jī))。在以上的例子中,“預(yù)先放置”的份額是被存儲(chǔ)在接收機(jī)中的份額。這樣的“預(yù)先放置”的共享秘密方案已由密碼領(lǐng)域中的其他人進(jìn)行討論(參閱G.J.Simmons,“How to(really)share a secret(如何(實(shí)際上)共享秘密)”,Advances in Cryptology-CRYPTO’88Proceedings,Springer-Verlag,pp.390-448,1990;G.J.Simmons,“Prepositioned shared secfet and/or shared controlschemes(預(yù)先放置的共享秘密和/或共享控制方案)”,Advances inCryptology - EUROCRYPT’89 Proceedings,Springer-Verlag,pp.436-467,1990)。通過(guò)預(yù)先放置某些份額,密鑰可以相對(duì)容易地改變,而不用改變接收機(jī)中的任何電路;只需要改變“激活的”份額。
將會(huì)指出,以上的算法概述了一種預(yù)先放置的秘密共享方案,它利用只具有兩個(gè)份額(即,在歐幾里得平面上一條直線的兩個(gè)點(diǎn))的秘密S。當(dāng)然,可以從許多份額(點(diǎn))計(jì)算其他秘密S,由此使得密碼分析更困難。預(yù)先放置的秘密共享方案的重要方面在于某些份額被“預(yù)先放置”在接收者處。
本發(fā)明涉及把一個(gè)秘密的至少一個(gè)份額存儲(chǔ)在特定的位置(例如,在接收機(jī)硬件中)。被存儲(chǔ)的份額然后結(jié)合“激活的”份額一起被使用來(lái)構(gòu)建秘密。在(4,4)方案中,例如,優(yōu)選地四個(gè)(4)份額中的三個(gè)(3)份額被存儲(chǔ)在特定的位置(例如,接收機(jī))。然后,最后的份額(也稱為“激活的”份額)被發(fā)送到該位置,以便得出該秘密。重要的是指出,對(duì)于本發(fā)明,該秘密并不是份額本身,而是在份額被表示為歐幾里得平面上的點(diǎn)時(shí)由該份額形成的直線或曲線(對(duì)于更高階的多項(xiàng)式)的Y截距。
圖1,2(a)和2(b)一起,顯示按照本發(fā)明的第一示例性實(shí)施例的消息鑒權(quán)系統(tǒng)100。消息鑒權(quán)系統(tǒng)100包括消息源(發(fā)送者)40和消息接收者50。消息源40使用秘密密鑰來(lái)從該消息生成一個(gè)消息鑒權(quán)符,它典型地隨該消息被發(fā)送到接收者50。接收者50構(gòu)建相同的密鑰,以及使用該密鑰來(lái)計(jì)算該鑒權(quán)符。如果在接收者處構(gòu)建的鑒權(quán)符與隨消息發(fā)送的鑒權(quán)符是相同的,則該消息被確定為可靠的。在第一示例性實(shí)施例中,從兩個(gè)份額得出秘密。如上所述,每個(gè)份額由歐幾里得平面上的一個(gè)點(diǎn)被規(guī)定。
具體地,該秘密的第一個(gè)份額(或數(shù)據(jù)點(diǎn))被存儲(chǔ)在接收者50中。第一個(gè)份額可被看作為在歐幾里得平面上的單個(gè)點(diǎn)(例如,具有(x0,y0)的形式)。消息源40通過(guò)特定的鑒權(quán)協(xié)議把消息發(fā)送到接收者50。除了該消息以外,消息源40還發(fā)送消息鑒權(quán)符和第二(或“激活的”)份額(它是該秘密的第二部分)。類似于第一份額,該第二份額可以是來(lái)自同一個(gè)歐幾里得平面的第二單個(gè)點(diǎn)(例如,具有(x1,y1)的形式)。
在第一示例性實(shí)施例中,消息、消息鑒權(quán)符(例如,MAC)和第二(“激活的”)份額被接收者50接收,以及在接收者內(nèi)被處理。接收者50使用第二(“激活的”)份額(例如,(x1,y1))和存儲(chǔ)的第一份額(例如,(x0,y0)),重新構(gòu)建(或恢復(fù))該密鑰(即,秘密)。接收者50然后使用重新構(gòu)建的密鑰來(lái)生成消息鑒權(quán)符(例如,MAC)。如果在接收者50處被計(jì)算的消息鑒權(quán)符(例如,MAC)與從消息源40發(fā)送的消息鑒權(quán)符相同,則該消息被認(rèn)為是可靠的。如果消息鑒權(quán)符是不同的,則該消息被拒絕。
密鑰的恢復(fù)是通過(guò)利用該第一和第二份額構(gòu)建多項(xiàng)式而達(dá)到的;構(gòu)建的多項(xiàng)式的y截距是該密鑰。例如,給定(x0,y0)和(x1,y1),通過(guò)計(jì)算在給定的有限區(qū)域中S的數(shù)值,而構(gòu)建該密鑰,其中S=f(0)=y(tǒng)0-((y1-y0)/(x1-x0))*(x0)圖2(a)顯示本發(fā)明的第一示例性實(shí)施例的圖形表示。顯示示例的份額(x0,y0)和(x1,y1),以及由此而形成的直線,它與Y軸相交在特定的點(diǎn)(這是該密鑰)。為了示意的目的,圖2(a)上的曲線是通過(guò)使用實(shí)數(shù)(而不是模算術(shù))得出的。
諸如參照第一示例性實(shí)施例描述的那樣的方法,允許一個(gè)以上的消息源40共享該存儲(chǔ)的(第一)份額(x0,y0),它被存儲(chǔ)在接收者50處。每個(gè)消息源40然后將自由選擇它自己的“激活的”(第二)份額(即(x1,y1)),由此,規(guī)定很寬的范圍的秘密。用相同的y截距(即,相同的密鑰)構(gòu)建多項(xiàng)式的概率是低的。然而,可能的第二(“激活的”)份額的范圍可被分配以使得每個(gè)業(yè)務(wù)提供者具有唯一的和非重疊的范圍(見圖2(b))。
為了考慮按照本發(fā)明的第一示例性實(shí)施例的例子,假設(shè)點(diǎn)(x0,y0)=(17,15)和(x1,y1)=(5,10),以及p=23。穿過(guò)(x0,y0)和(x1,y1)的一次多項(xiàng)式f(x)=a1x+a0(mod23)可以通過(guò)求解以下方程而被構(gòu)建a1(17)+a0=15(mod23)和a1(5)+a0=10(mod23)解(a1,a0)=(10,6)給出多項(xiàng)式f(x)=10x+6(mod23)通過(guò)計(jì)算f(0)可以發(fā)現(xiàn)秘密S的數(shù)值S=f(0)=6(mod23)因此,按照以上的例子,該秘密S的值,從而是密鑰,將是6(mod23)。當(dāng)然,這個(gè)秘密的值將隨著每個(gè)不同的(x1,y1)的數(shù)值而改變。
圖3顯示按照本發(fā)明的第二示例性實(shí)施例的、利用三個(gè)份額的密鑰恢復(fù)方案(與第一示例性實(shí)施例的兩個(gè)份額不同)。在第二示例性實(shí)施例,密鑰的恢復(fù)是通過(guò)利用第一、第二和第三份額(例如,(x0,y0),(x1,y1),(x2,y2))構(gòu)建二次多項(xiàng)式(即,拋物線)而得到的;構(gòu)建的二次多項(xiàng)式的y截距是該密鑰。
為了考慮按照本發(fā)明的第二示例性實(shí)施例的例子,假設(shè)點(diǎn)(x0,y0)=(17,15),(x1,y1)=(5,10),和(x2,y2)=(12,6),以及p=23。穿過(guò)點(diǎn)(x0,y0),(x1,y1)和(x2,y2)的二次多項(xiàng)式f(x)=a2x2+a1x+a0(mod23)可以通過(guò)求解以下方程而被構(gòu)建
a2*(172)+a1*(17)+a0=15(mod23)a2*(122)+a1*(12)+a0=6(mod23)和a2*(52)+a1*(5)+a0=10(mod23)解(a2,a1,a0)=(10,20,5)給出多項(xiàng)式f(x)=10x2+20x+5(mod23)通過(guò)計(jì)算f(0)可以發(fā)現(xiàn)秘密S的數(shù)值S=f(0)=5(mod23)如圖3所示,第一、第二和第三份額可被表示為歐幾里得平面上的點(diǎn)。為了示意的目的,圖4上的曲線是通過(guò)使用實(shí)數(shù)(而不是模算術(shù))得出的。
圖4顯示按照本發(fā)明的第三示例性實(shí)施例的、利用四個(gè)份額的密鑰恢復(fù)方案。在第三示例性實(shí)施例中,密鑰的恢復(fù)是通過(guò)利用第一、第二、第三和第四份額(例如,(x0,y0),(x1,y1),(x2,y2),(x3,y3))構(gòu)建三次多項(xiàng)式(即,曲線)而得到的;構(gòu)建的三次多項(xiàng)式的y截距是該密鑰。
為了考慮按照本發(fā)明的第三示例性實(shí)施例的例子,假設(shè)點(diǎn)(x0,y0)=(17,15),(x1,y1)=(5,10),(x2,y2)=(12,6)和(x3,y3)=(3,12),以及p=23。穿過(guò)點(diǎn)(x0,y0),(x1,y1),(x2,y2)和(x3,y3)的三次多項(xiàng)式f(x)=a2x3+a2x2+a1x+a0(mod23)可以通過(guò)求解以下方程而被構(gòu)建a3*(173)+a2*(172)+a1*(17)+a0=15(mod23)a3*(123)+a2*(122)+a1*(12)+a0=6(mod23)a3*(53)+a2*(52)+a1*(5)+a0=10(mod23)a3*(33)+a2*(32)+a1*(3)+a0=12(mod23)解(a3,a2,a1,a0)=(18,19,0,22)給出多項(xiàng)式f(x)=18x3+19x2+0x+22(mod23)通過(guò)計(jì)算f(0)可以發(fā)現(xiàn)秘密S的數(shù)值S=f(0)=22(mod23)
如圖4所示,第一、第二、第三和第四份額可被表示為歐幾里得平面上的點(diǎn)。為了示意的目的,圖4上的曲線是通過(guò)使用實(shí)數(shù)(而不是模算術(shù))得出的。
也可使用多個(gè)份額來(lái)構(gòu)建通信網(wǎng)中便利的密鑰輸送方案。代碼鑒權(quán),數(shù)字網(wǎng)中一個(gè)重要的問(wèn)題,可被用作為案例研究。在將來(lái),處理音頻/視頻數(shù)據(jù)的、復(fù)雜的家庭娛樂(lè)設(shè)備將通過(guò)數(shù)字分布網(wǎng)(例如,衛(wèi)星,電纜,地面,互聯(lián)網(wǎng))接收用于各種應(yīng)用的軟件。對(duì)于傳遞該內(nèi)容的業(yè)務(wù)提供者和利用該內(nèi)容的設(shè)備制造商而言,這種代碼源的標(biāo)識(shí)是一個(gè)基本要求。業(yè)務(wù)提供者將想要得到保證他們的應(yīng)用只被授權(quán)的設(shè)備接收和使用。而設(shè)備制造商又關(guān)心使用他們的設(shè)備的、未授權(quán)的業(yè)務(wù)。假設(shè)在給定的廣播系統(tǒng)中,不同的設(shè)備組以不同的方式被授權(quán)。下面給出的例子將討論預(yù)先放置的秘密共享如何可被使用來(lái)建立需要的密鑰分級(jí)結(jié)構(gòu)。
考慮具有用于代碼鑒權(quán)的三個(gè)(3)不同的鑒權(quán)級(jí)別的廣播系統(tǒng)(1)級(jí)別1接收機(jī)-在廣播“區(qū)域”中所有的接收機(jī)被指配以一個(gè)公共的份額(即,對(duì)于該區(qū)域中所有的接收機(jī)公共的一個(gè)份額);(2)級(jí)別2接收機(jī)-在特定的組內(nèi)所有的接收機(jī)被指配以一個(gè)附加的公共份額(即,對(duì)于特定的組中所有的接收機(jī)公共的另一個(gè)份額);以及(3)級(jí)別3接收機(jī)-每個(gè)接收機(jī)被指配以一個(gè)唯一的附加份額。
上述的接收機(jī)可以結(jié)合“激活的”份額被使用來(lái)鑒權(quán)某些消息。由于級(jí)別1接收機(jī)只包括一個(gè)份額而級(jí)別2接收機(jī)包括2個(gè)份額,以及級(jí)別3接收機(jī)包括3個(gè)份額,所以每個(gè)接收機(jī)將提供不同的密鑰組。因此,在廣播區(qū)域中所有的接收機(jī)(即,級(jí)別1接收機(jī))將具有接收和鑒權(quán)一般消息的能力,但只有級(jí)別2接收機(jī)將具有接收和鑒權(quán)某些附加消息的能力,以及只有級(jí)別3接收機(jī)將具有接收和鑒權(quán)某些其他附加消息的能力。將會(huì)指出,被放置在級(jí)別1-3接收機(jī)中的份額包括“預(yù)先放置的”信息,它可以結(jié)合“激活的”份額一起被使用來(lái)計(jì)算秘密(例如,該密鑰)。
圖5顯示多份額方案如何通過(guò)使用歐幾里得平面被構(gòu)建。正如將會(huì)理解的,三個(gè)不同的鑒權(quán)級(jí)別相應(yīng)于三個(gè)y截距(即,“區(qū)域密鑰”,“組密鑰”,“單獨(dú)的密鑰”)。一次多項(xiàng)式(相應(yīng)于級(jí)別1或“區(qū)域”鑒權(quán))包括穿過(guò)“激活的份額”和級(jí)別1公共份額的直線。二次多項(xiàng)式(相應(yīng)于級(jí)別2或“組”鑒權(quán))包括穿過(guò)“激活的份額”、級(jí)別1公共份額和級(jí)別2份額的拋物線。三次多項(xiàng)式(相應(yīng)于級(jí)別3或“單獨(dú)的”鑒權(quán))包括穿過(guò)“激活的份額”、級(jí)別1公共份額、級(jí)別2份額和級(jí)別3份額的曲線。在以上的例子中,將會(huì)指出,“激活的”份額被使用來(lái)計(jì)算每個(gè)不同的密鑰(即,單獨(dú)的、組的和區(qū)域的)。為了示意的目的,圖5上的曲線是通過(guò)使用實(shí)數(shù)(而不是模算術(shù))得出的。
通過(guò)使用以上的例子,下面的表描述在份額與不同的鑒權(quán)級(jí)別之間的關(guān)系
雖然上述的方法和設(shè)備是在用于在用戶之間傳遞鑒權(quán)消息的消息鑒權(quán)系統(tǒng)的上下文中描述的,但本發(fā)明的原理也可被應(yīng)用到用于提供對(duì)多媒體內(nèi)容的條件接入的方法和設(shè)備。
上述的方法和設(shè)備的某些優(yōu)點(diǎn)包括(a)減小在密鑰恢復(fù)時(shí)對(duì)于接收機(jī)的計(jì)算的要求(即,對(duì)于每個(gè)密鑰,只執(zhí)行簡(jiǎn)單的運(yùn)算)。這與涉及到模取冪的RSA解密形成對(duì)比。
(b)安全性是“完美的”。換句話說(shuō),給定激活的份額后,秘密的所有的數(shù)值保持相等的可能性。對(duì)于較高次多項(xiàng)式,在給定激活的份額后確定秘密的任務(wù)變得甚至更加困難。
(c)對(duì)于在發(fā)送者與接收者之間共享的、給定組的“預(yù)先放置的”信息,可以容易地得出以及經(jīng)常使用不同的密鑰(即,通過(guò)改變?cè)摗凹せ畹摹狈蓊~)。
(d)不同的鑒權(quán)級(jí)別可以通過(guò)把不同的份額指配給各個(gè)接收者而被規(guī)定。
(e)安全性不依賴于未被證明的數(shù)學(xué)假設(shè)(即,RSA的安全性是基于整數(shù)因式分解問(wèn)題的難度)。
上述的方案有效地組合了對(duì)稱和公共密鑰系統(tǒng)的優(yōu)點(diǎn)?!邦A(yù)先放置的”信息可被看作為接收者的私用密鑰。要被構(gòu)建的對(duì)稱密鑰由作為ECM的一部分發(fā)送的公共信息確定。由于密鑰不是在消息源處生成的,所以在分布中不需要附加的密碼來(lái)保護(hù)它們。
上述的方案的有效性可以以各種方式被增加,包括(1)把密鑰規(guī)定為共享的秘密的函數(shù)通常,該密鑰可以通過(guò)估計(jì)在秘密的數(shù)值處預(yù)先規(guī)定的函數(shù)而被生成。例如,如果共享的秘密(例如,函數(shù)f(x)的Y截距)是實(shí)數(shù)7,則該密鑰可被規(guī)定為7的平方根。這樣,即使某人發(fā)現(xiàn)該秘密,他也不一定具有計(jì)算該密鑰的能力。替換地,一旦獲得多項(xiàng)式的系數(shù),就可以使用任何其他的定義。對(duì)于實(shí)際的目的,該函數(shù)可能需要具有熵保留性質(zhì)(即,熵(秘密)=熵[f(秘密)])。
(2)使得多項(xiàng)式函數(shù)的次數(shù)(從而是發(fā)現(xiàn)該秘密所需要的份額的數(shù)目)成為時(shí)間相關(guān)的秘密系統(tǒng)參量例如,規(guī)定該秘密的多項(xiàng)式f(x)的次數(shù)將逐日或逐小時(shí)等地改變。密碼分析將成為對(duì)于敵手的更高要求的任務(wù),因?yàn)樗麄儗⒉坏貌皇紫却_定該多項(xiàng)式的次數(shù)。
(3)在傳輸之前掩蔽該激活的份額與消息一起發(fā)送的激活的份額然后可以由接收者在預(yù)先規(guī)定的處理過(guò)程中被去掉屏蔽。掩蔽的例子將是使用該激活的份額的散列數(shù)值用于鑒權(quán),但代之以發(fā)送該激活的份額。然后,接收者執(zhí)行散列,以確定該實(shí)際的數(shù)值。
(4)加上冗余的激活的份額與該實(shí)際的激活份額一起發(fā)送的附加的激活份額由接收機(jī)在預(yù)先規(guī)定的處理過(guò)程中被濾出。
以上提到的改進(jìn)的任何組合將用來(lái)在傳輸過(guò)程中隱藏激活的份額的真實(shí)值,以及引入對(duì)于消息的附加安全級(jí)別。
雖然以上的討論主要集中在使用MAC作為消息鑒權(quán)符,但本領(lǐng)域技術(shù)人員將會(huì)認(rèn)識(shí)到,可以使用其他的消息鑒權(quán)方法,而不背離本發(fā)明的范圍(例如,消息加密;見本申請(qǐng)的圖8和說(shuō)明)。
雖然本發(fā)明是就秘密共享方案(它在形成一個(gè)秘密時(shí)可以使用一次、二次和三次多項(xiàng)式方程)描述的,但本領(lǐng)域技術(shù)人員將會(huì)看到,可以使用任何次的多項(xiàng)式方程(例如,四次、五次等等)。事實(shí)上,最好使用更高次的多項(xiàng)式函數(shù),因?yàn)橛捎诒仨毐还烙?jì)的份額數(shù)增加,所以它們比較低階的多項(xiàng)式函數(shù)提供附加的安全性。而且,雖然以上的說(shuō)明集中在具有單個(gè)智能卡(例如,智能卡42)的系統(tǒng),但本領(lǐng)域技術(shù)人員將會(huì)理解,可以使用多個(gè)智能卡,每個(gè)智能卡具有被存儲(chǔ)在其中的一個(gè)或多個(gè)份額值。
權(quán)利要求
1.一種用于鑒權(quán)消息的方法,所述方法包括在一個(gè)裝置處接收代表第一份額的數(shù)據(jù);使用所述第一份額和至少兩個(gè)附加份額來(lái)構(gòu)建密鑰,所述至少兩個(gè)附加份額被存儲(chǔ)在所述裝置中;以及使用所述構(gòu)建的密鑰來(lái)鑒權(quán)消息。
2.權(quán)利要求1的方法,其中所述第一、第二和第三份額是在歐幾里得平面上的點(diǎn)。
3.權(quán)利要求1的方法,其中鑒權(quán)消息的步驟包括使用一個(gè)消息鑒權(quán)碼來(lái)鑒權(quán)該消息。
4.權(quán)利要求1的方法,其中鑒權(quán)消息的步驟包括通過(guò)使用一個(gè)解密密鑰來(lái)鑒權(quán)該消息。
5.一種用于提供消息的鑒權(quán)的方法,所述方法包括在一個(gè)裝置處接收消息鑒權(quán)符和所述消息;在所述裝置處接收代表第一份額的數(shù)據(jù);使用所述第一份額和第二與第三份額來(lái)構(gòu)建密鑰,所述第二與第三份額被存儲(chǔ)在所述裝置中;以及使用所述構(gòu)建的密鑰和所述消息鑒權(quán)符來(lái)鑒權(quán)所述消息,其中構(gòu)建所述密鑰的步驟包括計(jì)算在所述歐幾里得平面上由所述第一、第二和第三份額形成的曲線的Y截距。
6.權(quán)利要求5的方法,其中消息鑒權(quán)符包括消息鑒權(quán)碼。
7.一種用于鑒權(quán)從第一裝置發(fā)送到第二裝置的消息的系統(tǒng),所述第二裝置執(zhí)行以下步驟接收消息和消息鑒權(quán)符;接收代表第一份額的數(shù)據(jù);使用所述第一份額和第二與第三份額來(lái)構(gòu)建密鑰,所述第二與第三份額被存儲(chǔ)在所述第二裝置中;以及使用所述構(gòu)建的密鑰和所述消息鑒權(quán)符來(lái)鑒權(quán)所述消息,其中構(gòu)建所述密鑰的步驟包括計(jì)算在所述歐幾里得平面上由所述第一、第二和第三份額形成的曲線的Y截距。
8.一種消息鑒權(quán)系統(tǒng),包括至少一個(gè)消息源;以及至少一個(gè)消息接收機(jī),用于接收由該至少一個(gè)消息源發(fā)送的消息、消息鑒權(quán)符和第一份額;其中所述至少一個(gè)消息接收機(jī)包括用于鑒權(quán)該消息的、被存儲(chǔ)在其中的第二和第三份額,所述第二和第三份額結(jié)合所述第一份額一起被使用來(lái)鑒權(quán)所述消息。
9.權(quán)利要求1的方法,其中所述第一份額和所述至少兩個(gè)附加份額是在至少二次多項(xiàng)式函數(shù)上的點(diǎn)。
10.權(quán)利要求1的方法,其中至少兩個(gè)附加份額包括至少三個(gè)附加份額,以使得所述第一份額和所述至少三個(gè)附加份額是在至少三次多項(xiàng)式函數(shù)上的點(diǎn)。
11.權(quán)利要求1的方法,其中密鑰包括從該第一份額和至少兩個(gè)附加份額計(jì)算的秘密值。
12.權(quán)利要求1的方法,其中密鑰包括從該第一份額和至少兩個(gè)附加份額計(jì)算的秘密值的函數(shù)。
13.權(quán)利要求1的方法,其中該第一份額和至少兩個(gè)附加份額包括在多項(xiàng)式函數(shù)上的點(diǎn)。
14.權(quán)利要求13的方法,其中多項(xiàng)式函數(shù)的次數(shù)周期地改變。
15.權(quán)利要求1的方法,還包括以下步驟在該裝置處接收該第一份額之前,掩蔽該第一份額。
16.權(quán)利要求15的方法,還包括以下步驟從該第一份額的被掩蔽版本計(jì)算該第一份額。
17.權(quán)利要求1的方法,還包括以下步驟傳送第一份額和至少一個(gè)冗余的份額。
18.權(quán)利要求17的方法,還包括以下步驟在接收所述第一份額之后,濾出所述至少一個(gè)冗余的份額。
19.一種用于運(yùn)行消息鑒權(quán)系統(tǒng)的方法,包括以下步驟把消息、消息鑒權(quán)符和第一份額從發(fā)送站傳送到接收站;在接收站接收所述消息、所述消息鑒權(quán)符和所述第一份額;使用所述第一份額和至少兩個(gè)附加份額來(lái)構(gòu)建密鑰,所述至少兩個(gè)附加份額被存儲(chǔ)在該接收站;以及使用所述構(gòu)建的密鑰和所述消息鑒權(quán)符來(lái)鑒權(quán)該消息。
20.一種消息鑒權(quán)系統(tǒng),包括發(fā)送機(jī);以及接收機(jī),用于接收由該發(fā)送機(jī)發(fā)送的消息、消息鑒權(quán)符和第一份額,其中該接收機(jī)包括用于鑒權(quán)該消息的、被存儲(chǔ)在其中的第二和第三份額,所述第二和第三份額結(jié)合所述第一份額一起被使用來(lái)鑒權(quán)所述消息。
全文摘要
用于鑒權(quán)消息的方法和設(shè)備,所述方法包括在一個(gè)裝置處接收代表第一份額的數(shù)據(jù),通過(guò)使用所述第一份額和至少兩個(gè)附加份額來(lái)構(gòu)建一個(gè)密鑰,所述至少兩個(gè)附加份額被存儲(chǔ)在所述裝置中;以及通過(guò)使用所述構(gòu)建的密鑰來(lái)鑒權(quán)消息。
文檔編號(hào)H04N7/16GK1484901SQ01819723
公開日2004年3月24日 申請(qǐng)日期2001年9月24日 優(yōu)先權(quán)日2000年11月29日
發(fā)明者A·M·埃斯基茨奧格盧, A M 埃斯基茨奧格盧 申請(qǐng)人:湯姆森許可公司