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

雙因子組合公鑰生成和認證方法

文檔序號:7695078閱讀:392來源:國知局
專利名稱:雙因子組合公鑰生成和認證方法
技術領域
本發(fā)明涉及公鑰密碼與認證領域,是一種基于標識密鑰和隨機密鑰的
雙/>鑰密鑰生成和iU正方法。
背景技術
認證系統(tǒng)主要用于提供真實性證明和安全性保證,是實現(xiàn)信息安全
(Information Security )和信息保障(Information Assurance )的技術基礎。 認證系統(tǒng)的核心是公鑰密碼,當前需要解決的核心問題, 一是能夠支持大 規(guī)模公開網(wǎng)絡的認證,二是在集中管理模式下保證用戶私鑰的私密權問 題。圍繞認證系統(tǒng)的構建,現(xiàn)已形成了兩大技術體系 一是基于傳統(tǒng)公鑰 密碼的證書認證體系,如PKI, 二是基于標識的公鑰密碼如IBC、 IBE、 CPK。
1) 基于傳統(tǒng)公鑰密碼的證書認證體系 傳統(tǒng)的公鑰密碼中,公鑰與私鑰之間的關系為 公鑰-F (私鑰)
F是一個單向函數(shù),由用戶獨享的私鑰計算公鑰是容易的;由公鑰逆求 私鑰則是數(shù)學難題。以此構建的認證系統(tǒng),如目前最流行公鑰基礎設施
(PKI),公鑰與用戶標識的綁定需依靠權威的密鑰管理部門頒發(fā)的證書 給予證明。證書認證機制需要證書發(fā)放、驗證、廢除、更新等眾多環(huán)節(jié)的 計算與通信資源的支持與消耗,成為制約其應用的瓶頸,尤其不能適應大 規(guī)模網(wǎng)絡(例如實體數(shù)以109計的網(wǎng)絡)和需要直接驗證的應用需求。
2) 基于標識的公鑰密碼
基于標識的公鑰密碼以用戶標識作為公鑰或以用戶標識生成公鑰,使標識與公鑰 一體化,而私鑰則由權威的密鑰管理部門用其掌控的主密鑰以 用戶標識為自變量生成?;跇俗R的公鑰密碼中,公鑰與私鑰的關系為
私鑰=F (主密鑰,用戶標識)
在基于標識的公鑰密碼中,與公鑰一體化的用戶標識是函數(shù)關系中的 自變量。在密鑰管理中心的主密鑰控制下,用戶標識給定后,私鑰就唯一 確定。不掌握主密鑰的攻擊者企圖由用戶標識(公鑰)求取私鑰是數(shù)學難
題。1999年中國學者南相浩提出基于標識的組合公鑰體制(簡稱CPK), 采用種子密鑰矩陣組合方法生成基于標識的密鑰,是基于標識的公鑰密碼 家族的一個新成員。
在所有基于標識的公鑰密碼中,實體私鑰皆由密鑰管理中心基于標識 和主密鑰生成,實體對私鑰沒有完全的專有權或私密性,而組合公鑰 (CPK)體制的私鑰是種子私鑰的線性和,理論上具有被共謀攻擊的可能 性,從而會影響到其規(guī)?;膽谩?br>
發(fā)明內容
本發(fā)明提供了 一種標識密鑰和隨機密鑰復合的雙因子組合公鑰 (Two-Factor Combined Public Key )體制和認證系統(tǒng)。標識密鑰以用戶標識
生成的數(shù)列對種子密鑰集進行選取與組合產(chǎn)生;隨機密鑰基于一般公鑰密碼 依據(jù)的單向函數(shù)原理生成。隨機密鑰與標識密鑰的多種復合模式,既可以滿
足集中管理的需求,又可賦予用戶對私鑰的專有權?;诖朔N密鑰生成方法 的認證系統(tǒng),兼具標識認證不需要第三方證書證明和一般公鑰密碼隨機私鑰 高度隨機化和私密化的優(yōu)點??梢詮V泛應用于各種規(guī)模尤其是超大規(guī)模公開 系統(tǒng)的認證,包括可信接入、可信加載、電子銀行、可信交易、可信物流等 領域。
根據(jù)本發(fā)明,在雙公鑰密碼體制中,標識密鑰中公鑰與私鑰的關系是 基于標識的公鑰密碼的公私鑰關系私鑰^F(種子私鑰集,用戶標識)
而自定義隨機密鑰的公鑰與私鑰關系沿用了傳統(tǒng)公鑰密碼的函數(shù)關

公鑰F (私鑰)
因此,雙公鑰密碼體制的密鑰是基于標識的/>鑰密碼體制和傳統(tǒng)公鑰 密碼體制兩種公私密鑰關系的疊加,是繼傳統(tǒng)公鑰密碼和基于標識的公鑰 密碼之后的新的以公鑰的二元化為特征的公鑰密碼體制,它保留了兩種公 鑰密碼各自的優(yōu)越特性,而克服了各自存在的不足。
根據(jù)本發(fā)明,由密鑰管理中心登記審定標識和生成種子密鑰集,并將 種子公鑰集公布,供各實體計算標識公鑰之用。標識公鑰計算過程為標識 和標識公鑰提供了一體性證明,因此,不需要第三方證書的證明。
根據(jù)本發(fā)明,密鑰管理中心可將實體標識與中心定義隨機公鑰綁定發(fā) 布,供加密或-險證方4吏用。
根據(jù)本發(fā)明,允許各實體自行定義隨機密鑰(RaPK(usER))并與中心定義 的隨機公鑰相加,生成二階隨機公鑰,公開發(fā)布供加密或驗證方使用;
根據(jù)本發(fā)明,允許各實體自行定義隨機密鑰(RaPK(usER》與n-l階隨機 公鑰相加生成n階隨機公鑰,公開發(fā)布公加密或驗證方使用。
根據(jù)本發(fā)明的優(yōu)選實施例,進行數(shù)字簽名時,應將隨機公鑰作為簽名 碼的 一部分一 并發(fā)送給驗證方;
根據(jù)本發(fā)明的優(yōu)選實施例,驗證和加密方首先用對方標識和公布的種 子公鑰集計算標識公鑰(IdPK),將其與公布的或由簽名方提供的隨機公鑰 (RaPK)相加,計算出公鑰(PK),并驗證其簽名的真實性。
根據(jù)本發(fā)明,提供一種雙因子組合公鑰生成和認證方法,其特征在于包 括以下步驟步驟一生成標識密鑰,包括標識公鑰與標識私鑰;
步驟二生成隨才兒密鑰,包括隨機公鑰與隨才幾私鑰;
步驟三密鑰管理中心(KMC)將標識密鑰與自定義的隨機密鑰復合生 成一階雙因子密鑰;
步驟四用戶將一階雙因子密鑰與自定義隨機密鑰復合生成二階雙因子 密鑰;
步驟五用戶將二階雙因子密鑰與自定義更新隨機密鑰復合生成n階雙 因子密鑰,其中n>3;
步驟六-驗證或加密方,通過對方標識計算出的標識公鑰與對方簽名中 提供的或管理中心發(fā)布的隨機公鑰復合,獲得該用戶公鑰。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟一具體包括
a) 密鑰管理中心對用戶提交的標識進行審核確認,保證其真實性和唯一
性;
b) 密鑰管理中心定義并生成彼此對應的種子私鑰集(seedPK )和種子公 鑰集(seedPK );
c) 以用戶標識為hash函數(shù)的輸入,計算出該標識的hash值H (ID );
d) 密鑰管理中心以H (ID )構建選取數(shù)列,從種子私鑰集選取并經(jīng)組合 運算生成用戶標識私鑰(IdSK);
e) 加密或驗證方以H (ID)構建選取數(shù)列,從種子公鑰集選取并經(jīng)組合 運算生成用戶標識公鑰(IdPK)。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟b )中所述種子密鑰集(seedSK和seedPK ) 可采用矩陣、序列等不同形式構建。
根據(jù)本發(fā)明的優(yōu)選實施例,所述種子密鑰集的構建形式和規(guī)模根據(jù)系統(tǒng) 的實際需要確定。
根據(jù)本發(fā)明的優(yōu)選實施例,所述種子公鑰集對外公開,種子私鑰集由中 心秘密保管。根據(jù)本發(fā)明的優(yōu)選實施例,所述步驟二具體包括
f) 密鑰管理中心用隨機數(shù)發(fā)生器隨機生成模n的正整數(shù)作為中心定義的 隨機私鑰(RaSK(KMC)),并通過橢圓曲線群的標量乘法運算生成中心定義隨機
公鑰(RaPK(固c));
g) 用戶利用隨機數(shù)發(fā)生器生成模n的正整數(shù)作為用戶自定義隨機私鑰 (RaSK(usER))并通過橢圓曲線群的標量乘法運算生成用戶自定義隨機公鑰
(RaPK(uSER))。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟三具體包括
h) 密鑰管理中心將用戶標識私鑰(IdSK)和中心隨才幾生成的隨才幾私鑰 (RaSK(KMc))相加,生成一階私鑰(SK!);
i) 密鑰管理中心將SK,和RaPK(認Q寫入芯片提供給擁有該標識的用戶;
j)標識與隨機公鑰RaPK(KMC)由用戶對外發(fā)送或通過密鑰管理中心公布;
k)加密或驗證方用用戶標識生成標識公鑰(IdPK),將其與公開發(fā)布或發(fā)
送的RaPK(KMc)相加生成一階公鑰(PKt)。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟四具體包括
i)用戶利用隨機數(shù)發(fā)生器生成RaSK(usER),并通過橢圓曲線群標量乘法 運算生成RaPK (USER),
m)用戶將SKt與RaSK(usER)相加生成二階私鑰(SK2);
n)用戶將RaPK(usER)與RaPK(KMC)相加生成二階隨機公鑰(RaPK2);
o)用戶將SK2和RaPK2寫入芯片,并將SK!與RaPK(KMc)刪除;
p)標識和RaPK2由用戶對外發(fā)送或密鑰管理中心公布;
q)加密和驗證方利用用戶標識生成IdPK,將其與公開發(fā)布與發(fā)送的
RaPK2相加,得到二階公鑰(PK2)。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟五具體包括
r)用戶以n-1階的復合密鑰為初始態(tài),可生成n階復合密鑰,其中n
>3;S)在更新密鑰對時,用戶利用隨機數(shù)發(fā)生器生成RaSK(usER),并通過橢
圓曲線群的標量乘法生成RaPK (USER);
t)將原芯片中存儲的n-1階私鑰(SKn.O與新定義的RaSK(usER)累加,生
成n階私鑰(SKJ;
u)將原芯片中存儲的n-1階隨機公鑰(RaPK n-,),與新定義的RaPK(USER) 累加得到n階隨機公鑰(RaPKn);
v)用戶將SK n和RaPKn寫入芯片,并將SK ^和RaPK ^刪除;
W)標識與隨機公鑰(RaPKn)A用戶對外發(fā)送或通過密鑰管理中心公布,
包括用戶將標識和隨機密鑰通過數(shù)字簽名 一并提供給驗證方,以及用戶將其 提交密鑰管理中心,由后者公布。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟五中所述n階的階數(shù)n為大于等于3的整數(shù)。
根據(jù)本發(fā)明的優(yōu)選實施例,步驟六具體包括
x)加密或驗證方利用對方的用戶標識和公布的種子公鑰集計算出該用 戶的標識z^鑰(IdPK);
y)將該用戶的標識公鑰(IdPK)與發(fā)送或公布的隨機公鑰(RaPK)相加,得 出該用戶的^^鑰(PK)。
根據(jù)本發(fā)明的優(yōu)選實施例,所述雙因子組合密鑰由標識密鑰和隨機密鑰 復合構成。
根據(jù)本發(fā)明的優(yōu)選實施例,由密鑰管理中心定義的為一階雙因子密鑰; 在一階密鑰基礎上增加用戶定義隨機密鑰的為二階或n階雙因子密鑰。
根據(jù)本發(fā)明的優(yōu)選實施例, 一階公鑰(PKD = IdPK + RaPK(KMQ = IdPK + RaPK,,其中RaPK!表示該隨機公鑰僅由 一 項隨機公鑰構成;
二階公鑰(PK。 = IdPK + RaPK(KMC) + RaPK(USER) = IdPK + RaPK2,其中 RaPK2表示該隨機公鑰由2項隨機公鑰相加構成;
n階公鑰(PKn) = IdPK + RaPKn ,其中n > 3, RaPKn表示該隨機公鑰由n項隨才幾7>鑰相力口構成。
根據(jù)本發(fā)明的優(yōu)選實施例,允許用戶根據(jù)需要隨時變更自定義隨機公私 鑰對,并生成新的7>、私鑰對。
根據(jù)本發(fā)明的優(yōu)選實施例,用戶將自定義隨機私鑰和芯片內的存放的復
合私鑰相加,得到該階復合私鑰;將自定義隨機公鑰與芯片內存放的隨機公 鑰相加,得到該階的隨機公鑰;芯片內應包含用戶標識(ID)、該階私鑰和 隨機公鑰。
根據(jù)本發(fā)明的優(yōu)選實施例,當用私鑰(SK^ ,SK2或SK。簽名時,同時將隨
機公鑰(RJPK(KMc), RaPK2或RaPKn + RaPK(usER))作為簽名碼的一部分一并發(fā)
送纟合依賴方。
根據(jù)本發(fā)明的優(yōu)選實施例,當驗證簽名時,驗證方首先用公開發(fā)布的
用戶標識和種子公鑰集計算出標識公鑰(IdPK),將其與用公布的或簽名方發(fā) 送的隨機公鑰RaPK相加,計算出對方的公鑰(PK),用于驗證其簽名的真實性。
綜上所述,本發(fā)明具有如下優(yōu)點
1) 本發(fā)明以雙公鑰為特征,屬基于橢圓曲線離散對數(shù)難題的密碼體制, 通過雙重密鑰相互融合使該體制的安全性極大增強。
2) 本發(fā)明中,用戶自定義隨機密鑰使用戶擁有對私鑰的完全私有權,
除用戶之外,任何人包括密鑰管理中心都不能侵犯用戶的私密權。這種用 戶私密權是一般基于標識的密碼體制所不能提供的。
3) 自定義隨機私鑰對標識私鑰的加密,可使以少量種子密鑰組合生成 極大數(shù)量實用密鑰的可能性,在確有安全保障的條件下,轉化為現(xiàn)實,從 而使雙公鑰密碼成為解決大規(guī)模網(wǎng)絡環(huán)境下認證難題的現(xiàn)實手段。
4) 自定義隨機密鑰賦予密鑰結構極大靈活性,可供KMC生成 RaSK(KMc),構建一階私鑰和隨機公鑰;可供用戶生成RaSK(USER),構建二階私鑰和隨機公鑰;可供用戶反復生成RaSK, (USER),構建高階私鑰和隨沖幾 公鑰。不同的應用環(huán)境可選擇自定義隨機密鑰不同應用方式。
5)自定義隨機密鑰的加入,使密鑰完全隨機化,從而使實用的密鑰

間最大化。完全隨機化的密鑰為密鑰碰撞概率提供了科學計算的可能,從 而為用戶規(guī)模的確定提供可靠依據(jù)。
6)采用本發(fā)明構建的認證系統(tǒng),不需要第三方證書證明,能夠支持各 種規(guī)模,特別是超大規(guī)模的公共網(wǎng)絡認證,同時具有結構簡潔,管理維護 運行簡便經(jīng)濟的特點。
本發(fā)明的目標和其他優(yōu)點可以通過下面的i兌明書,4又利要求書,以及附 圖中所特別指出的結構來實現(xiàn)和獲得。
附困說明
為了使本發(fā)明的目的、技術方案和優(yōu)點更加清楚,下面將結合附圖對 本發(fā)明作進一步的詳細描述,附圖中
++表示橢圃曲線點運算 u秘密部分
2> +表示模11整數(shù)運算
.G表示橢圃曲線群標量乘法U 厶升都分


圖1示出了根據(jù)本發(fā)明的一階雙因子私鑰生成及隨機公鑰模式;
圖2示出了根椐本發(fā)明的二階雙因子私鑰和隨機公鑰生成模式;
圖3示出了根據(jù)本發(fā)明的高階雙因子私鑰和隨機公鑰生成模式;
圖4為根據(jù)本發(fā)明的基于標識和隨機公鑰生成公鑰的示意圖5為根據(jù)本發(fā)明的密鑰管理中心功能框圖6為根據(jù)本發(fā)明的認證芯片功能圖7示出了根據(jù)本發(fā)明的電子簽章系統(tǒng);
閨8示出了根椐本發(fā)明的防偽電子標簽生成流程;以及
困9示出了根據(jù)本發(fā)明的防偽電子標簽驗證流程。
具體實施例方式
本發(fā)明提出的雙因子組合公鑰密碼體制(Two Factor Combined Public Key System,簡稱為TF-CPK )采用由兩個相互獨立的/>鑰——自定義隨才幾 公鑰與標識公鑰復合構成,涉及數(shù)學基礎,密鑰組合律,隨機數(shù),標識, 雜湊函數(shù),種子密鑰等。下面以橢圓曲線密碼和離散對數(shù)為例,結合附圖, 從各個方面,對根據(jù)本發(fā)明的密鑰生成方法的具體實施方式
作進一步的詳細描 述。需要注意的是,根據(jù)本發(fā)明的雙因子組合公鑰技術與標識認證系統(tǒng)的具體 實施方式僅僅作為例子,但本發(fā)明不限于該具體實施方式
。
1.雙因子組合公鑰密碼體制的若千要素
本密碼體制的要素包括橢圓曲線群,密鑰組合律,隨機數(shù),標識,雜湊函 數(shù),種子密鑰等。
1.1橢圓曲線群
橢圓曲線離散對數(shù)難題是本密碼體制安全性的數(shù)學基礎。所選用的橢圓曲線 群以五元組(a,b,Qn,p)定義
p:是一個大素數(shù),橢圓曲線建于模P的有限域上
a,b:定義三次方程y2=x3+ax+b (mod P)
G:是基點,由它的所有倍點構成橢圓曲線群
n:是一個大素數(shù),是基點G生成的橢圓曲線群的階
1.2倍點與離散對數(shù)
(a,b,Qn,p)是a,b定義的三次方程的解和一個無窮遠點組成的加法群。群 中的元素是滿足方程y2=x3+ax+b (mod P)的整數(shù)對(x,y )和無窮遠點(記為O )。 加法群的元素P和Q的加法運算規(guī)則為
1) P + OP
2) 點P氣x,y), Q=(x,-y),則P+Q=0。
3) 若P氣Xi,yD, Q=(x2,y2),且P豐Q,則P+Q氣X3,y3)的取值計算規(guī)則為<formula>formula see original document page 16</formula>
其中,
<formula>formula see original document page 16</formula>
如果P=Q P#Q的加法稱為點加運算,P=Q的運算稱為倍點運算。 G的倍數(shù)為na的點記為na.G, G通過倍點運算和點加運算生成加法群中的 元素na.G ( na=l,2,...,n )。 t^稱為na.G的離散對數(shù)。給定r^和G求na.G稱標量 乘法,它的計算是容易的;而給定G和&G ,逆求na是橢圓曲線離散對數(shù)難題。 在橢圓曲線密碼中,(na.G, na)構成公鑰和私鑰對,倍點ivG為公鑰,離散對 數(shù) 是私鑰。
1.3密鑰組合律
橢圓曲線密碼的密鑰組合律是橢圓曲線群的一個重要的密碼學性質。 密鑰組合律若(riLGnJ和(n2.G,n2)是兩組公私鑰對,則它們的公鑰之

n3.G巧LG+ri2.G(橢圓曲線群運算) 和它們的私鑰之和
n3二n!+n2 (才莫n整凄t力口 )
構成組合7>私鑰對(n3.G n3 )。
密鑰組合律更一般的表述若(ni.Gn!), (n2.G,n2),…,(nt.Gnt)是橢圓 曲線的公私鑰對,則它們的公鑰之和
P=ni.G+n2.G+...+ nt.G(橢圓曲線群運算) 和它們的私鑰之和S,+ri2+. .+nt (模n整數(shù)力口 )
構成組合公私鑰對(P,S)。
1.4隨機數(shù)發(fā)生器
自定義隨機密鑰對中的私鑰是一個隨機數(shù)RN。 RN由隨機數(shù)發(fā)生器RNG生 產(chǎn),以避免人為的習慣與惰性的負面影響。對隨機數(shù)發(fā)生器生產(chǎn)的隨機數(shù)需給 予適當?shù)暮Y選(如不得為很小的數(shù)值),以適用于密鑰。密鑰管理中心通過RNG 生成不同的隨機數(shù)作為加密標識私鑰的隨機密鑰;用戶通過RNG生成自定義隨 機密鑰以達到私鑰的獨享及私鑰的隨時更新。
1.5用戶標識
用戶標識簡稱標識(記為ID),由一個實體的名稱、地址等專有屬性構成。 用戶標識需向密鑰管理中心(記為KMC )注冊核準,使其具有真實性和唯一性。
1.6雜湊函數(shù)
采用國際標準推薦的雜湊函數(shù)。它以不同長度的用戶標識為輸入,輸出等長 的比特串,用于生成選取數(shù)列。
設選取數(shù)列由V個u位的二進制數(shù)構成,則雜湊函數(shù)輸出長度定義為vxu, 即H(IDMao,a!,…,avu.0。
4命出凄t列i己為
Wi=aiux2u"+ aiu+ix2u-2+ aiu+2x2u-3+,..+ &111+11."20, i=0,l,...,v-1 上述公式的簡化形式是
H2"'-1)"' (二進制轉換為十進制數(shù)'i=0,l,...,v-l) 1.7種子密鑰序列
從密鑰空間中,選出2uxv個密鑰對(Po,So), (P,,SJ,…,(尸2 _,A —t ) 構成種子密鑰集,包括種子公鑰集(PG, Pi, ..., )和種子私鑰集(S0,
Si, ■, )。2.雙因子組合公鑰密碼體制的密鑰構成
密鑰包4舌
自定義隨機密鑰對(RaPK,RaSK) 標識密鑰對(IdPK,IdSK) 種子密鑰對(P,S) 復合的密鑰對(PK,SK)
2.1自定義隨機密鑰
自定義隨4幾密鑰是由隨積乂>鑰RaPK和隨片幾私鑰RaSK組成的公私鑰對 (RaPK,RaSK )。
隨機私鑰是隨機數(shù)發(fā)生器生成的隨機數(shù)RN,即 RaSK=RN
隨機公鑰則以RN為基點的倍數(shù)作標量乘法運算獲得,即
RaPK=RN.G (橢圓曲線群的標量乘法) 自定義隨機密鑰包括密鑰管理中心(KMC)生成的(RaPK(KMC),RaSK(KMC)) 和用戶(USER)生成的(RaPK(USER),RaSK(USER))
RaPK(KMC)=RN(KMC) .G (橢圓曲線群的標量乘法) RaSK(KMc^RN(KMc) RN(kmc)是KMC借助RNG生成的隨機數(shù) RaPK(USER)= RN(USER) .G(橢圓曲線群的標量乘法) RaSK(USER) = RN(USER)RN(USER)是USER借助RNG生成的隨機數(shù)
2.2標識密鑰
標識密鑰是由標識公鑰(IdPK)和標識私鑰(IdSK)組成的公私鑰對 (IdPK,IdSK )。
以標識為輸入的雜湊函凄t的輸出 H(ID)= ( Wo,Wi,…,Wv-i)取c為一個正整數(shù)(0<c<2u ),則選取位(記為swj)按以下公式計算 sw0=c+w0
SW產(chǎn)C+W!+SW()
Z, (mod2"xv), / = l,2,.."v-1
標識公私鑰對的計算公式為
IdPK=U (橢圓曲線群的點運算)
,'=0 '
IdSK= g 、(模n整數(shù)加法運算)
3.雙因子組合公鑰密碼體制的多種工作模式
3.1 —階雙因子密鑰模式
參見圖1,示出了根據(jù)本發(fā)明的一階雙因子密鑰模式。 在一階雙因子密鑰模式中,用戶鑰完全由密鑰管理中心(KMC)生成。該
模式適用于任意規(guī)模的封閉系統(tǒng),系統(tǒng)內用戶對密鑰管理中心完全信任的環(huán) 境。此外, 一階雙因子密鑰也是生成二階或n階雙因子密鑰的基礎。其生產(chǎn)流 程包括
① 定義并生成彼此對應的種子私鑰集(seedPK )和種子公鑰集(seedPK);
② 對用戶提交的標識進行審核確認,保證其真實性和唯一性;
③ 以用戶標識為hash函數(shù)的輸入,計算出該標識的hash值H (ID );
④ 以H(ID)構建選取數(shù)列,從種子私鑰集選取并經(jīng)組合運算生成用戶 標識私鑰(IdSK);
⑤ 利用隨機數(shù)發(fā)生器生成中心定義的隨機密鑰RaSK(KMQ和RaPK(KMC);
⑥ 將IdSK和RaSK(KMQ相加得到一階雙因子私鑰SK!;
⑦ 將(SK"RaPK(KMc))注入芯片提供給用戶。參見圖2,示出了根據(jù)本發(fā)明的二階雙因子密鑰模式。
二階雙因子密鑰模式,在一階雙因子密鑰模式的基礎上,增加了用戶自定義 隨機密鑰,主要適用于任意規(guī)模,包括大規(guī)模和超大規(guī)模的開放系統(tǒng),系統(tǒng)內
用戶要求對私鑰享有不受控于密鑰管理中心的私有權的環(huán)境。其生成過程包括
① 用戶利用隨機數(shù)發(fā)生器生成用戶自定義隨機私鑰RaSK(USER),并通過橢 圓曲線群標量乘法運算生成用戶自定義隨機公鑰RaPK(USER);
② 用戶將RaSK(USER^ Sld相加生成二階雙因子私鑰(SK2);
③ 用戶將RaPK(USER^ RaPK(KMC)相加生成二階隨機公鑰(RaPK2);
用戶將SK2和RaPK2寫入芯片,并將SK!與RaPK(腿o刪除; 3.3n階雙因子密鑰模式
參見圖3,示出了根據(jù)本發(fā)明的n階雙因子密鑰模式。 n階雙因子密鑰模式主要用于系統(tǒng)內用戶要求對私鑰具有自行隨時更新權 利的環(huán)境。其生成過程如下
① 用戶利用隨機數(shù)發(fā)生器生成用戶自定義隨機私鑰RaSK(usER),并通過橢
圓曲線群標量乘法運算生成用戶自定義隨機公鑰RaPK(USER);
② 用戶將SK2與新產(chǎn)生的RaSK(us卿相加生成n階雙因子私鑰(SKn);
③ 用戶將新產(chǎn)生的RaPK(USER^ RaPK2相加生成n階隨機公鑰(RaPK2); 用戶將SKn和RaPK。寫入芯片,并將SK2與RaPK2刪除; 上述過程可以反復進行。此外,用戶更新密鑰也可以通過重復使用二階
雙因子密鑰模式實現(xiàn)。以二階雙因子密鑰模式實現(xiàn)密鑰的更新時,流程的初 始狀態(tài)應始終為一階雙因子私鑰和中心定義隨機公鑰(SK川RaPK(KMQ)。
3.4雙公鑰到公鑰的轉換
驗證方或加密方需要知道對方實際使用的公鑰,為此需要實行從標識和隨機 公鑰到公鑰的轉換。其轉過程如下① 驗證方或加密方首先需要通過簽名方發(fā)送或從密鑰管理中心發(fā)布獲得用
戶標識ID和與其對應的隨機公鑰(RaPK);
② 以用戶標識ID為hash函數(shù)的輸入,計算出該標識的hash值H (ID );
③ 以H(ID)構建選取數(shù)列,從種子私鑰集選取并經(jīng)組合運算生成用戶 標識公鑰(IdPK);
將IdPK與RaPK相加,得到用戶使用的公鑰(PK )。
參見圖4,示出了根據(jù)本發(fā)明的基于標識和隨機公鑰生成公鑰的流程。
4.數(shù)字簽名算法
數(shù)字簽名算法采用國際標準推薦的ECDSA算法。 4.1公開的參數(shù)與算法
① 橢圓曲線群的五元參數(shù)組(a,b,Qn,p)
② 對消息的hash函數(shù)h
③ 種子公鑰集(Po,Pp…,
④ 簽名方A發(fā)送的標識ID和隨機公鑰RaPK
4.2 A對消息m的簽名流程
① 隨機選取k EZn
② 計算k .G = (x,y)(橢圓曲線群標量乘法)
③ 計算r^x modn
④ 計算S = k—1 ( h(m) + SK.r) mod n
⑤ A將m和簽名(r,s )發(fā)給B
4.3 B對A的簽名驗證流程
① 以A的標識經(jīng)種子公鑰集生成標識公鑰IdPK
② 計算PK = IdPK+ RaPK(橢圓曲線點運算)③計算u, 二h(m).S — 1 modn
u2 = r.S —1 modn 計算R-u卜G + U2.PK (橢圓曲線點運算) 記R = (x' ,y')
⑤ 計算v-x' modn,若v^r則驗證通過,簽名有效,否則簽名無效 5.用于數(shù)據(jù)加密的密鑰傳送算法
用于數(shù)據(jù)加密的密鑰稱為會話密鑰。會話密鑰每次通話都要更新。 5.1公開的參數(shù)
① 橢圓曲線群的五元參數(shù)組(a,b,G,n,p)
② 種子公鑰集(Po,P"…,
③ 收方B的標識ID和隨機/〉鑰RaPKB 5.2發(fā)方A的密鑰發(fā)送
① 用收方B的標識ID通過種子公鑰集生成B方的標識公鑰IdPKB
② 計算B方的公鑰
PKB= IdPKB+ RaPKB (橢圓曲線點運算)
③ 隨機選取k EZn
④ 計算k.G = ( x,y ) (標量乘法) 取r:x(modn)作為會話密鑰
⑥ 計算k.PKe
⑦ 將k.PKB發(fā)給B
5.3收方B獲取會話密鑰的流程
① 收到k .PKB
② 計算SKB—V(k,PKB)-k.G^(x,y)③取r二x(modn)作為會話密鑰
6.基于雙因子組合公鑰(TF-CPK)體制的認證系統(tǒng)
利用雙因子組合公鑰(TF-CPK)技術,可構建任意規(guī)模,包括超大規(guī)模的 認證系統(tǒng),并實現(xiàn)端到端直接認證,認證過程不需要第三方在線數(shù)據(jù)庫的支持。 該系統(tǒng)主要由密鑰管理中心和用戶客戶端組成。
如圖5所示,示出了根據(jù)本發(fā)明的KMC功能框圖。
6.1密鑰管理中心
密鑰管理中心主要有以下部分構成
① 用戶注冊,負責對用戶標識進行審核確認,保證其真實性和唯一性,用 戶標識可以依據(jù)人員姓名、單位、機構名稱、銀行帳號、電話號碼等定義;
② 種子密鑰生產(chǎn),負責生成種子密鑰集(SeedSK,SeedPK);
③ 用戶密鑰生產(chǎn)及分發(fā),利用用戶標識、種子私鑰集和P逸機數(shù)發(fā)生器生成 一階私鑰(SKq)和中心定義隨機公鑰(RaPK(KMc))并將SK!和RaPK(KMC)寫入 專用芯片(可以封裝成IC卡、U-Key等形態(tài))分發(fā)給用戶,密鑰生產(chǎn)過程參見 3.1 —階雙因子密鑰模式;
④ 公共數(shù)據(jù)發(fā)布,發(fā)布內容包括種子公鑰集、作廢標識列表,以及用戶標 識和與其對應的RaPK(KMC)和RaPK(usER)等。如下表所示,示出了KMC發(fā)布用 戶標識及與其對應的隨^幾公鑰的數(shù)據(jù)格式。
戶 標 識+ RaPK(KMC)一階后綴
+ RaPK(KMC) + RaPK(USER) = RaPK2二階后綴
ID+ RaPK2+RaPK(USER)=RaPK n階后綴
KMC發(fā)布數(shù)據(jù)的格式6.2用戶客戶端
客戶端主要由認證芯片(可封裝成IC卡、USB-key等方便使用的形式)和 客戶端軟件構成。TF-CPK認證系統(tǒng)的認證過程主要在客戶端與服務端(功能與客戶端相當),客戶端與客戶端之間完成。芯片內含計算和存儲單元,算法協(xié)議 以及用戶私鑰和公鑰^:據(jù),相當于一個完整的認證系統(tǒng)(參見系統(tǒng)功能圖)私 鑰經(jīng)用戶pin碼加密后保存在芯片的安全存儲區(qū)內,所有涉及私鑰的操作,如數(shù) 字簽名、密鑰交換等均在芯片內進行,以確保私鑰的安全。
參見圖6,示出了根據(jù)本發(fā)明的TF-CPK認證芯片結構與功能圖。 7.應用領域
TF-CPK認證系統(tǒng)理論上可以用于所有需要真實性證明的領域,如電 子簽章、電子標簽防偽等,并可借助中心發(fā)布帶有隨機公鑰的用戶標識,實 現(xiàn)密鑰交換,如對電子郵件進行加密等。
7.1電子簽章系統(tǒng)
參見圖7,示出了根據(jù)本發(fā)明的電子簽章系統(tǒng)。
電子簽章系統(tǒng)通過數(shù)字簽名證明交易信息的真實性,廣泛適用于電子商 務、電子政務等領域。其實現(xiàn)過程如下
7丄1簽名者A用認證芯片中的私鑰對原數(shù)據(jù)m進行簽名,簽名過程如

① 隨才幾選取k EZn
② 計算k.G-(x,y)(橢圓曲線群標量乘法)
③ 計算r = x mod n
④ 計算S = k - 1 ( h(m) + SK.r ) mod n A將m和簽名(r,s )發(fā)給B
7.1.2驗證者B對A的簽名數(shù)據(jù)進行驗證,馬全i正過程如下
① 以A的標識經(jīng)種子公鑰集生成標識公鑰IdPK
② 計算PK-IdPK + RaPK (橢圓曲線點運算)
③ 計算ul = h(m) .S - 1 mod n
u2 = r .S - 1 mod n 計算R = ul.G + u2 .PK (橢圓曲線點運算) 記R = (x' ,y')
⑤計算v-x' modn,若v-r則驗證通過,簽名有效,否則簽名無效。
7.2電子標簽防偽
電子標簽防偽是將TF-CPK數(shù)字簽名技術與RFID技術相結合產(chǎn)生的一 種兼具物理和邏輯防偽特性的新型防偽技術,能夠有效地防止假冒復制,同 時具有通用驗證能力。其實現(xiàn)過程如下
7.2.1防偽電子標簽制作
圖8示出了根據(jù)本發(fā)明的防偽電子標簽生成流程。
① 讀取RFID芯片上的唯一編號;
② 利用TF-CPK算法及私鑰對防偽信息,如證件持有人個人信息、證件 發(fā)放單位或產(chǎn)品信息和生產(chǎn)單位等,連同RFID唯一編號以及與私鑰對應的 隨機公鑰進行數(shù)字簽名(簽名算法參見7.11),生成簽名信息;
③ 將簽名信息寫入該RFID芯片 7.2.2防偽電子標簽-驗i正
圖9示出了根據(jù)本發(fā)明的防偽電子標簽驗證流程。
① 用TF-CPK算法計算出簽名者的標識公鑰,將其與發(fā)送的隨機公鑰相 加得出簽名者的實用公鑰;
② 用該公鑰解讀防偽芯片上的數(shù)字簽名信息(算法參見7.11);
③ 能夠正確顯示信息為真,否則為假。 7.3安全電子郵件系統(tǒng)
電子郵件是應用最為廣泛的網(wǎng)絡信息交流手段。利用TF-CPK技術可以 對郵件內容進行數(shù)字簽名和加密,有效地保證信息內容的真實性、完整性和 私密性。
7.3.1對郵件內容的數(shù)字簽名和驗證簽名方利用私鑰進行數(shù)字簽名,并在簽名中提供用本方的戶標識和隨機 公鑰;
驗i正方用對方的標識通過 >布的種子公鑰集計算出對方的標識公鑰,將 其與對方發(fā)送的隨機公鑰相加得出對方的實用公鑰,并用其對簽名內容進行
驗證;
7.3.2對郵件內容進行加脫密
發(fā)送方A通過中心公布的用戶標識和隨機公鑰后綴計算出接收方B的公
鑰;
隨機選取k EZn;
計算k.G:(x,y) (標量乘法); 取r = x (mod n)作為會話密鑰; 計算k.PKe ;
將R.PKb隨加密信息發(fā)給B;
接收方B收到附有k .PKB的加密信息;
計算SKb人(k.PKB"k.G:(x,y);
取r = x (mod n )作為會話密鑰,對加密信息進行脫密。
以上所述僅為本發(fā)明的優(yōu)選實施例而已,并不用于限制本發(fā)明,顯然,
和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同 技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
權利要求
1. 一種雙因子組合公鑰生成和認證方法,其特征在于包括以下步驟步驟一生成標識密鑰,包括標識公鑰與標識私鑰;步驟二生成隨機密鑰,包括隨機公鑰與隨機私鑰;步驟三密鑰管理中心將標識密鑰與自定義的隨機密鑰復合生成一階雙因子密鑰;步驟四用戶將一階雙因子密鑰與自定義隨機密鑰復合生成二階雙因子密鑰;步驟五用戶將n-1階雙因子密鑰與自定義更新隨機密鑰復合生成n階雙因子密鑰,其中n≥3;步驟六驗證或加密方,通過對方標識計算出的標識公鑰與對方簽名中提供的或密鑰管理中心發(fā)布的隨機公鑰復合,獲得該用戶公鑰。
2. 根據(jù)權利要求l的方法,其中步驟一具體包括a) 密鑰管理中心對用戶4是交的標識進行審核確認,保證其真實性和唯一性;b) 密鑰管理中心定義并生成彼此對應的種子私鑰集seedSK和種子公鑰 集seedPK;c) 以用戶標識為hash函數(shù)的輸入,計算出該標識的hash值H (ID);d) 密鑰管理中心以H (ID)構建選取數(shù)列,從種子私鑰集選取并經(jīng)組合 運算生成用戶標識私鑰IdSK;e) 加密或驗證方以H (ID)構建選取數(shù)列,從種子公鑰集選取并經(jīng)組合 運算生成用戶標識公鑰IdPK。
3. 根據(jù)權利要求2的方法,其中步驟b)中所述種子私鑰集和種子公鑰 集(seedSK和seedPK)可采用矩陣、序列的不同形式構建。
4. 根據(jù)權利要求3的方法,其中所述種子公鑰集對外公開,種子私鑰集 由密鑰管理中心秘密保管。
5. 根據(jù)權利要求l的方法,其中所述步驟二具體包括f) 密鑰管理中心用隨機數(shù)發(fā)生器隨機生成模n的正整數(shù)作為中心定義的 隨機私鑰RaSK(KMC),并通過橢圓曲線群的標量乘法運算生成中心定義隨機公鑰RaPK(KMC);g) 用戶利用隨機數(shù)發(fā)生器生成模n的正整數(shù)作為用戶自定義隨機私鑰 RaSK(USER)并通過橢圓曲線群的標量乘法運算生成用戶自定義隨機公鑰RaPK(uSER)。
6. 根據(jù)權利要求l的方法,其中步驟三具體包括h) 密鑰管理中心將用戶標識私鑰IdSK和中心隨才幾生成的隨機私鑰 RaSK(KMc)相加,生成一階私鑰SK,;i) 密鑰管理中心將一階私鑰SK!和隨機公鑰RaPK(KMQ寫入芯片提供給擁有該標識的用戶;j)標識與隨機公鑰RaPK(KMQ由用戶對外發(fā)送或通過密鑰管理中心公布;k)加密或驗證方用用戶標識生成標識公鑰IdPK,將其與公開發(fā)布或發(fā)送的RaPK(腿c)相加生成一階公鑰PK卜
7. 根據(jù)權利要求l的方法,其中步驟四具體包括1)用戶利用隨^4史發(fā)生器生成RaSK(usER"并通過橢圓曲線群標量乘法運 算生成RaPK(USER),m)用戶將SK,與RaSK(usER)相加生成二階私鑰SK2; n)用戶將RaPK(USER^ RaPK(KMc)相加生成二階隨機公鑰RaPK2; o)用戶將SK2和RaPK2寫入芯片,并將SK!與RaPK(認c)刪除; p)標識和RaPK2由用戶對外發(fā)送或密鑰管理中心公布;q)加密和驗證方利用用戶標識生成IdPK,將其與公開發(fā)布與發(fā)送的 RaPK2相加,得到二階公鑰PK2。
8. 根據(jù)權利要求l的方法,其中步驟五具體包括r)用戶以n - 1階的復合密鑰為初始態(tài),生成n階復合密鑰,其中n》3;S)在更新密鑰對時,用戶利用隨機數(shù)發(fā)生器生成RaSK(usEK),并通過橢圓曲線群的標量乘法生成RaPK(USER> ;t)將原芯片中存儲的n-1階私鑰SK^與新定義的RaSK(us叫累加,生成 n階私鑰SKn;U)將原芯片中存儲的n-1階隨機公鑰RaPKn小與新定義的RaPK(usER)累加得到n階隨機7>鑰RaPKn;v)用戶將SKn和RaPKn寫入芯片,并將SK n-,和RaPK^刪除;w)標識與隨機公鑰RaPKn由用戶對外發(fā)送或通過密鑰管理中心公布。
9. 根據(jù)權利要求l的方法,其中步驟六具體包括x)加密或驗證方利用對方的用戶標識和公布的種子公鑰集計算出該用 戶的標識<^鑰IdPK;y)將該用戶的標識公鑰IdPK與發(fā)送或公布的隨機公鑰RaPK相加,得出 該用戶的^^鑰PK。
10. 根據(jù)權利要求l的方法,其中所述雙因子組合密鑰由標識密鑰和隨 機密鑰復合構成。
11. 根據(jù)權利要求10的方法,其中由密鑰管理中心定義的為一階雙因子 密鑰;在一階密鑰基礎上增加用戶自定義隨機密鑰生成的密鑰為二階雙因子 密鑰。在二階或高于二階的密鑰基礎上更新用戶自定義隨機密鑰生成的密鑰 為高階雙因子密鑰;
12. 根據(jù)權利要求1或11的方法,其中一階公鑰(PK!) = IdPK + RaPK(KMC) = IdPK + RaPK,,其中RaPK!表示該隨 機7>鑰僅由 一 項隨枳』公鑰構成;二階公鑰(PK2) = IdPK + RaPK(KMC) + RaPK(USF,R) = IdPK + RaPK2,其中 RaPK2表示該隨機公鑰由2項隨機公鑰相加構成;n階公鑰(PKn) = IdPK + RaPKn ,其中n > 3 , RaPKn表示該隨機公鑰由n 項隨機公鑰相力。構成。
13. 根據(jù)權利要求8的方法,允許用戶根據(jù)需要隨時更新自定義隨機公 私鑰對,并生成新的 /K私鑰對。
14. 根據(jù)權利要求13的方法,用戶將自定義隨機私鑰和芯片內存放的復 合私鑰相加,得到該階復合私鑰;將自定義隨機公鑰與芯片內存放的隨機公 鑰相加,得到該階的隨機公鑰;芯片內應包含用戶標識(ID)、該階私鑰和 隨機公鑰。
15. 根據(jù)權利要求9的方法,當用私鑰或SK2或SKn簽名時,同時將隨機公鑰RaPK,或RaPK24 RaPKn作為簽名碼的 一部分一并發(fā)送給依賴方。
16. 根據(jù)權利要求14的方法,用戶將隨機公鑰RaPKn ( n> 2 )提交密鑰 管理中心,由密鑰管理中心將其作為實體標識的后綴公布,其格式為用戶 ID II RaPKn。
17. 根據(jù)權利要求15或16的方法,用戶自定義隨機因子公鑰RaPK(us鵬 通過密鑰管理中心發(fā)布或從用戶的數(shù)字簽名信息中獲得。
18. 根據(jù)權利要求17的方法,當驗證簽名時,驗證方首先用公開發(fā)布的用戶標識和種子公鑰集計算出標識公鑰IdPK,將其與用公布的或簽名方發(fā)送的隨機公鑰RaPK相加,計算出對方的公鑰PK,用于驗證其簽名的真實性。
19.當A方隨向B方傳送數(shù)據(jù)加密算法的會話密鑰時,A方需從公開資 源中獲取B方的標識ID和隨機公鑰RaPK,首先用B方的標識和種子公鑰集 計算出B方的標識7>鑰IdPK,將其與B方的隨積乂>鑰RaPK相加,計算出B 方的公鑰PK。
全文摘要
本發(fā)明提供了一種標識密鑰和隨機密鑰復合的雙因子組合公鑰Two-Factor Combined Public Key體制和認證方法。標識密鑰以用戶標識生成的數(shù)列對種子密鑰集進行選取與組合產(chǎn)生;隨機密鑰基于一般公鑰密碼依據(jù)的單向函數(shù)原理生成。隨機密鑰與標識密鑰的多種復合模式,既可以滿足集中管理的需求,又可賦予用戶對私鑰的專有權?;诖朔N密鑰生成方法的認證系統(tǒng),兼具標識認證不需要第三方證書證明和一般公鑰密碼隨機私鑰高度隨機化和私密化的優(yōu)點。可以廣泛應用于各種規(guī)模尤其是超大規(guī)模公開系統(tǒng)的認證,包括可信接入、可信加載、電子銀行、可信交易、可信物流等領域。
文檔編號H04L9/08GK101420300SQ20081011349
公開日2009年4月29日 申請日期2008年5月28日 優(yōu)先權日2008年5月28日
發(fā)明者南相浩, 陳華平 申請人:北京易恒信認證科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
泌阳县| 贵港市| 开化县| 中西区| 易门县| 荥经县| 盘山县| 自治县| 白银市| 西乌珠穆沁旗| 根河市| 荆州市| 宜君县| 奇台县| 松原市| 清徐县| 密云县| 合作市| 辽源市| 玛多县| 县级市| 读书| 内乡县| 珲春市| 名山县| 广平县| 崇信县| 桃江县| 荥经县| 通海县| 白朗县| 刚察县| 庆云县| 宝清县| 凭祥市| 桐庐县| 新密市| 凤阳县| 南丰县| 溆浦县| 德兴市|