本發(fā)明涉及信息授權(quán)安全技術(shù)領(lǐng)域,尤其涉及一種基于CPU卡的授權(quán)系統(tǒng)。
背景技術(shù):
權(quán)利授權(quán)是指在涉及商家和客戶的供應(yīng)關(guān)系、開發(fā)商與應(yīng)用商的合作關(guān)系、開發(fā)商與其他開發(fā)商的正當(dāng)或不正當(dāng)競爭關(guān)系中,對商品進行授權(quán)使用的關(guān)鍵步驟。
傳統(tǒng)的權(quán)利授權(quán)有注冊碼授權(quán)、密碼授權(quán)、證書授權(quán)等,但基本是以軟件形式進行權(quán)利授權(quán)。軟件授權(quán)最大的弊端是容易被破解,導(dǎo)致注冊機流出、安全等級不高。一旦權(quán)利授權(quán)被破解,那么破解者可無限制地授權(quán)和使用權(quán)利,給商家?guī)砭薮髶p失。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供一種安全性高的基于CPU卡的授權(quán)系統(tǒng)。
為了實現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案如下:
本發(fā)明實施例第一方面提供一種基于CPU卡的授權(quán)系統(tǒng),所述授權(quán)系統(tǒng)包括非接觸式CPU卡、權(quán)利提取授權(quán)裝置和權(quán)利設(shè)備;
所述非接觸式CPU卡,用于記錄權(quán)利設(shè)備的授權(quán)信息;
所述權(quán)利提取授權(quán)裝置,用于與所述非接觸式CPU卡進行第一雙向安全驗證,驗證通過之后更改所述非接觸式CPU卡內(nèi)的所述權(quán)利設(shè)備的授權(quán)信息,以對所述權(quán)利設(shè)備進行權(quán)利授權(quán);
所述權(quán)利設(shè)備,用于與所述權(quán)利提取授權(quán)裝置進行第二雙向安全驗證,驗證通過之后被所述權(quán)利提取授權(quán)裝置授權(quán)。
在本發(fā)明的實施例中,所述授權(quán)信息包括權(quán)利次數(shù);所述權(quán)利提取授權(quán)裝置包括第一CPU卡加減值模塊,用于根據(jù)一根密鑰生成加值密鑰和/或減值密鑰,并將所述加值密鑰和/或減值密鑰寫入所述非接觸式CPU卡內(nèi);
所述非接觸式CPU卡包括第二CPU卡加減值模塊,用于在進行所述第一雙向安全驗證時,生成一第一隨機數(shù)R1并發(fā)送至所述權(quán)利提取授權(quán)裝置中的所述第一CPU卡加減值模塊;
所述第一CPU卡加減值模塊,還用于根據(jù)所述隨機數(shù)R1和所述加值密鑰或者減值密鑰的上級密鑰生成一第一消息認(rèn)證碼,同時生成一第二隨機數(shù)R2并將所述第一消息認(rèn)證碼和所述第二隨機數(shù)R2發(fā)送給所述非接觸式CPU卡中的所述第二CPU卡加減值模塊;
所述第二CPU卡加減值模塊,還用于根據(jù)所述加值密鑰或者減值密鑰校驗所述第一消息認(rèn)證碼,校驗通過后根據(jù)所述第二隨機數(shù)R2計算一第二消息認(rèn)證碼并返回給所述權(quán)利提取授權(quán)裝置中的所述第一CPU卡加減值模塊;
所述第一CPU卡加減值模塊,還用于對所述第二消息認(rèn)證碼進行校驗,校驗通過后更改以增加或減少所述權(quán)利次數(shù)。
在本發(fā)明的實施例中,所述權(quán)利設(shè)備,還用于在進行所述第二雙向安全驗證時,生成一第一隨機標(biāo)識碼,采用密鑰A對所述第一隨機標(biāo)識碼進行加密得到密文A1,并將密文A1傳輸給所述權(quán)利提取授權(quán)裝置;
所述權(quán)利提取授權(quán)裝置,還用于采用密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,同時生成一第二隨機標(biāo)識碼,并采用密鑰B對所述第一隨機標(biāo)識碼和至少部分所述第二隨機標(biāo)識碼進行加密得到密文B12,將所述密文B12傳輸給所述權(quán)利設(shè)備;
所述權(quán)利設(shè)備,還用于采用密鑰B對所述密文B12進行解密校驗。
在本發(fā)明的實施例中,所述密鑰B由所述第二隨機標(biāo)識碼中的一部分構(gòu)成。
在本發(fā)明的實施例中,所述權(quán)利設(shè)備和所述權(quán)利提取授權(quán)裝置在加密和解密時均采用3DES加解密算法。
在本發(fā)明的實施例中,所述權(quán)利設(shè)備包括:
第一隨機標(biāo)識碼計算模塊,用于為不同的權(quán)利設(shè)備在不同的授權(quán)操作時計算生成不同的所述第一隨機標(biāo)識碼。
在本發(fā)明的實施例中,所述權(quán)利提取授權(quán)裝置包括:
第二隨機標(biāo)識碼計算模塊,用于在不同的時刻計算生成不同的所述第二隨機標(biāo)識碼。
在本發(fā)明的實施例中,所述密鑰A和密鑰B由所述權(quán)利設(shè)備和所述權(quán)利提取授權(quán)裝置共同持有。
在本發(fā)明的實施例中,所述權(quán)利設(shè)備包括:
第一密文編解碼模塊,用于采用所述密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,
在本發(fā)明的實施例中,所述權(quán)利提取授權(quán)裝置包括:
第二密文編解碼模塊,用于采用所述密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,以及采用所述密鑰B對所述第一隨機標(biāo)識碼和至少部分所述第二隨機標(biāo)識碼進行加密。
與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果為:
本發(fā)明以非接觸CPU卡作為授權(quán)橋梁,由權(quán)利提取授權(quán)裝置對權(quán)利設(shè)備進行授權(quán),使用軟硬件結(jié)合,破解者無法脫離其中一方進行破解,授權(quán)安全性高,提高了整個權(quán)利設(shè)備在權(quán)利授權(quán)時的安全性,且可以配合密文以及隨機標(biāo)識碼進行授權(quán),避免了破解者破解權(quán)利設(shè)備授權(quán)造成的商家損失,便利了商家對權(quán)利授權(quán)的掌控。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見的,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
圖1示意性示出本發(fā)明實施例提供的基于CPU卡的授權(quán)系統(tǒng)框圖;
圖2示意性示出本發(fā)明實施例提供的另一基于CPU卡的授權(quán)系統(tǒng)框圖;
圖3示意性示出本發(fā)明實施例提供的基于CPU卡的授權(quán)系統(tǒng)的場景示意圖。
具體實施方式
下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
圖1是本發(fā)明實施例提出的基于CPU卡的授權(quán)系統(tǒng)結(jié)構(gòu)圖。如圖1所示,所述授權(quán)系統(tǒng)100可以包括非接觸式CPU卡101、權(quán)利提取授權(quán)裝置102和權(quán)利設(shè)備103。其中:
所述非接觸式CPU卡101,用于記錄權(quán)利設(shè)備103的授權(quán)信息。例如,所述授權(quán)信息可以包括權(quán)利次數(shù)。
所述權(quán)利提取授權(quán)裝置102,用于與所述非接觸式CPU卡101進行第一雙向安全驗證,驗證通過之后更改所述非接觸式CPU卡101內(nèi)的所述權(quán)利設(shè)備103的授權(quán)信息,以對所述權(quán)利設(shè)備103進行權(quán)利授權(quán)。
所述權(quán)利設(shè)備103,用于與所述權(quán)利提取授權(quán)裝置102進行第二雙向安全驗證,驗證通過之后被所述權(quán)利提取授權(quán)裝置102授權(quán)。
在本發(fā)明的一示例性實施例中,所述權(quán)利提取授權(quán)裝置102包括第一CPU卡加減值模塊,用于根據(jù)一根密鑰生成加值密鑰和/或減值密鑰,并將所述加值密鑰和/或減值密鑰寫入所述非接觸式CPU卡內(nèi)。
所述非接觸式CPU卡101包括第二CPU卡加減值模塊,用于在進行所述第一雙向安全驗證時,生成一第一隨機數(shù)R1并發(fā)送至所述權(quán)利提取授權(quán)裝置102中的所述第一CPU卡加減值模塊。所述第一CPU卡加減值模塊,還用于根據(jù)所述隨機數(shù)R1和所述加值密鑰或者減值密鑰的上級密鑰生成一第一消息認(rèn)證碼,同時生成一第二隨機數(shù)R2并將所述第一消息認(rèn)證碼和所述第二隨機數(shù)R2發(fā)送給所述非接觸式CPU卡101中的所述第二CPU卡加減值模塊。所述第二CPU卡加減值模塊,還用于根據(jù)所述加值密鑰或者減值密鑰校驗所述第一消息認(rèn)證碼,校驗通過后根據(jù)所述第二隨機數(shù)R2計算一第二消息認(rèn)證碼并返回給所述權(quán)利提取授權(quán)裝置102中的所述第一CPU卡加減值模塊。所述第一CPU卡加減值模塊,還用于對所述第二消息認(rèn)證碼進行校驗,校驗通過后更改以增加或減少所述權(quán)利次數(shù)。
在本發(fā)明的一示例性實施例中,所述權(quán)利設(shè)備103,還用于在進行所述第二雙向安全驗證時,生成一第一隨機標(biāo)識碼,采用密鑰A對所述第一隨機標(biāo)識碼進行加密得到密文A1,并將密文A1傳輸給所述權(quán)利提取授權(quán)裝置102。所述權(quán)利提取授權(quán)裝置102,還用于采用密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,同時生成一第二隨機標(biāo)識碼,并采用密鑰B對所述第一隨機標(biāo)識碼和至少部分所述第二隨機標(biāo)識碼進行加密得到密文B12,將所述密文B12傳輸給所述權(quán)利設(shè)備102。所述權(quán)利設(shè)備102,還用于采用密鑰B對所述密文B12進行解密校驗。
示例性的,所述密鑰B可以由所述第二隨機標(biāo)識碼中的一部分構(gòu)成。例如可以將所述第二隨機標(biāo)識碼拆分一部分作為所述密鑰B。而所述第二隨機標(biāo)識碼的剩余部分可以與所述第一隨機標(biāo)識碼一起通過密鑰B進行加密得到密文B12。所述權(quán)利設(shè)備103和所述權(quán)利提取授權(quán)裝置102在加密和解密時均采用3DES加解密算法。當(dāng)然也可以采用其他加解密算法,對此不作特殊限制。所述密鑰A和密鑰B由所述權(quán)利設(shè)備103和所述權(quán)利提取授權(quán)裝置102共同持有。
如圖2所示,在本發(fā)明的一示例性實施例中,所述權(quán)利設(shè)備103可以包括第一隨機標(biāo)識碼計算模塊,用于為不同的權(quán)利設(shè)備在不同的授權(quán)操作時計算生成不同的所述第一隨機標(biāo)識碼。
在本發(fā)明的一示例性實施例中,所述權(quán)利提取授權(quán)裝置102可以包括第二隨機標(biāo)識碼計算模塊,用于在不同的時刻計算生成不同的所述第二隨機標(biāo)識碼。
在本發(fā)明的一示例性實施例中,所述權(quán)利設(shè)備103可以包括第一密文編解碼模塊,用于采用所述密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,
在本發(fā)明的一示例性實施例中,所述權(quán)利提取授權(quán)裝置102可以包括第二密文編解碼模塊,用于采用所述密鑰A對所述密文A1進行解密得到所述第一隨機標(biāo)識碼,以及采用所述密鑰B對所述第一隨機標(biāo)識碼和至少部分所述第二隨機標(biāo)識碼進行加密。
下面結(jié)合一個具體示例說明本發(fā)明。參考圖3所示,本發(fā)明實施例涉及的授權(quán)典型媒介可以包括:非接觸式CPU卡、權(quán)利提取授權(quán)裝置(如非接觸式CPU卡發(fā)卡裝置)和權(quán)利設(shè)備。
權(quán)利提取授權(quán)裝置對非接觸式CPU卡進行權(quán)利提取,然后對授權(quán)設(shè)備進行授權(quán),在整個基于CPU卡的授權(quán)系統(tǒng)及方式中,起到連接非接觸式CUP卡和授權(quán)設(shè)備之間權(quán)利轉(zhuǎn)換的橋梁作用。例如在一個GPS定位設(shè)備(權(quán)利設(shè)備)的授權(quán)過程中,發(fā)卡裝置(權(quán)利提取授權(quán)裝置)對非接觸式CPU卡進行發(fā)卡操作。發(fā)卡裝置對非接觸式CPU卡進行充值。發(fā)卡裝置獲取GPS定位設(shè)備權(quán)利狀態(tài)。發(fā)卡裝置減值非接觸式CPU卡權(quán)值,發(fā)卡裝置對GPS定位設(shè)備進行權(quán)利授權(quán)。至此完成一整個基于CPU卡的權(quán)利授權(quán)方式。
本發(fā)明實施例中權(quán)利授權(quán)過程涉及對稱加解密算法應(yīng)用和權(quán)利碼動態(tài)授權(quán)技術(shù)。權(quán)利提取授權(quán)裝置與非接觸式CPU卡作為典型媒介,共同承載CPU卡加減值模塊。權(quán)利提取授權(quán)裝置對非接觸式CPU卡進行發(fā)卡、加值、減值、查詢操作。對非接觸式CPU卡發(fā)卡操作,包括對非接觸式CPU卡的文件結(jié)構(gòu)的建立,其中就有對密鑰文件的建立。在建立的密鑰文件中,權(quán)利提取授權(quán)裝置通過對根密鑰因子進行多級分?jǐn)?shù)(典型分散級數(shù)為3級),得到CPU卡加減值模塊加值所需的加值密鑰KeyPlus,并將加值密鑰KeyPlus寫入非接觸式CPU卡的密鑰文件中,此加值密鑰用于CPU卡加減值模塊的加值功能,加值密鑰KeyPlus只保存在非接觸式CPU卡的密鑰文件中,密鑰文件屬于加密文件類型,不能讀取,只能寫入和使用,加值密鑰KeyPlus寫入后,以密鑰計算方式使用,密鑰本身不外泄,確保加值密鑰KeyPlus的保密性。權(quán)利提取授權(quán)裝置只保留加值密鑰KeyPlus的上級密鑰,在CPU卡加減值模塊進行加值操作時,通過對加值操作的非接觸式CPU卡的物理標(biāo)識碼(ATS后8個字節(jié))進行分散,由于每張非接觸式CPU卡的物理標(biāo)識碼都是唯一的,所以權(quán)利提取授權(quán)裝置分散得出的加值密鑰KeyPlus都是唯一的,這樣就防止一密多用的情況出現(xiàn),確保商家的最大利益不受損害。在加值操作中,權(quán)利提取授權(quán)裝置與非接觸式CPU卡通過加值初始化和加值兩部分操作完成一次完整的加值操作。加值初始化操作需要權(quán)利提取授權(quán)裝置對非接觸式CPU卡返回的隨機數(shù)1,用加值密鑰KeyPlus的上級密鑰分散得出加值密鑰,進行消息認(rèn)證碼1的計算。在加值操作中,權(quán)利提取授權(quán)裝置會將計算的消息認(rèn)證碼1和產(chǎn)生的隨機數(shù)2發(fā)送給非接觸式CPU卡,非接觸式CPU卡會校驗消息認(rèn)證碼1,如果認(rèn)證成功,會根據(jù)隨機數(shù)2計算消息認(rèn)證碼2,并回傳給權(quán)利提取授權(quán)裝置,權(quán)利提取授權(quán)裝置會校驗消息認(rèn)證碼2。由于此過程中,權(quán)利提取授權(quán)裝置和非接觸式CPU卡共同產(chǎn)生隨機數(shù)和計算消息驗證碼都具有唯一性和不可修改性,所以破解者無法篡改加值參數(shù),以確保加值過程的安全性。同理,權(quán)利提取授權(quán)裝置通過對根密鑰因子進行多級分散,得到CPU卡減值模塊減值所需的減值密鑰KeyMinus,并將減值密鑰KeyMinus寫入非接觸式CPU卡的密鑰文件中。減值過程由減值初始化和減值兩個部分組成。減值初始化操作非接觸式CPU卡會產(chǎn)生隨機數(shù)1,權(quán)利提取授權(quán)裝置會根據(jù)隨機數(shù)1用減值密鑰KeyMinus計算消息認(rèn)證碼1,并連同產(chǎn)生的隨機數(shù)2傳給非接觸式CPU卡。減值操作非接觸式CPU卡會用減值密鑰KeyMinus校驗消息認(rèn)證碼1并根據(jù)隨機數(shù)2計算消息認(rèn)證碼2,回傳給權(quán)利提取授權(quán)裝置。權(quán)利提取授權(quán)裝置校驗消息認(rèn)證碼2,完成整個減值過程。權(quán)利提取授權(quán)裝置承載的CPU卡加減值模塊內(nèi)部集成密鑰分散算法、CPU卡文件結(jié)構(gòu)發(fā)卡功能、加減值交易數(shù)據(jù)加解密算法。非接觸式CPU卡帶cos授權(quán)方式,加減值操作采用密文傳輸和完整性校驗。密鑰存放于兩種媒介,對外不公開,確保密鑰不泄露。
權(quán)利提取授權(quán)裝置與權(quán)利設(shè)備作為典型媒介,共同承載密文編解碼模塊。權(quán)利提取授權(quán)裝置對權(quán)利設(shè)備進行查詢權(quán)利狀態(tài)、獲取密文隨機標(biāo)識碼1、獲取密文隨機標(biāo)識碼2、權(quán)利授權(quán)。權(quán)利狀態(tài)有2種:未授權(quán)和已授權(quán)。權(quán)利提取授權(quán)裝置和權(quán)利設(shè)備承載的密文編解碼模塊內(nèi)部集成對稱加解密算法——3DES加解密算法,權(quán)利提取授權(quán)裝置和權(quán)利設(shè)備共同持有密鑰A。權(quán)利設(shè)備對隨機標(biāo)識碼1用密鑰A進行加密,得到密文A1。權(quán)利設(shè)備將密文A1傳輸給權(quán)利提取授權(quán)裝置,權(quán)利提取授權(quán)裝置用密鑰A將密文A1解密得到隨機標(biāo)識碼1。權(quán)利提取授權(quán)裝置產(chǎn)生隨機標(biāo)識碼2,采用拆分隨機標(biāo)識碼2,組成密鑰B,再次對隨機標(biāo)識碼1和部分隨機標(biāo)識碼2進行加密得到密文B12,傳給權(quán)利設(shè)備,權(quán)利設(shè)備用密鑰B對密文B12進行解密,得到隨機標(biāo)識碼1’和隨機標(biāo)識碼2的密文部分。由于隨機標(biāo)識碼1在整個密文編解碼模塊的數(shù)據(jù)傳遞中始終采用密文傳輸,每次的隨機標(biāo)識碼不同,加密密文也不同,關(guān)鍵的隨機標(biāo)識碼1在兩次密文傳輸中得到保護,又得到權(quán)利提取授權(quán)裝置的認(rèn)證,破解者無法破解密文得到隨機標(biāo)識碼1,也無法偽造密文B12進行偽造認(rèn)證,從而保護了商家的授權(quán)權(quán)利。
權(quán)利提取授權(quán)裝置與權(quán)利設(shè)備作為典型媒介,共同承載隨機標(biāo)識碼計算模塊。權(quán)利設(shè)備承載的隨機標(biāo)識碼計算模塊,根據(jù)內(nèi)部定時器寄存器數(shù)值為種子,計算隨機標(biāo)識碼1。權(quán)利模塊的內(nèi)部定時器在內(nèi)部芯片起振開始計數(shù),最小計數(shù)單位為1微秒,不同時刻的內(nèi)部定時器寄存器的數(shù)值不一樣,計算得出的隨機標(biāo)識碼1也不一致,防止破解者采用重復(fù)窮舉方式破解授權(quán)密文。權(quán)利提取授權(quán)裝置承載的隨機標(biāo)識碼計算模塊,根據(jù)每次授權(quán)不同時間作為種子,計算隨機標(biāo)識碼2。隨機標(biāo)識碼計算模塊在不同權(quán)利設(shè)備不同授權(quán)操作中分散加密密鑰,生成唯一密文,確保每次傳輸?shù)拿芪牡奈ㄒ恍?,加大破解難度,增強授權(quán)方式的安全性。
應(yīng)當(dāng)注意,盡管在上文詳細(xì)描述中提及了用于動作執(zhí)行的設(shè)備的若干模塊或者單元,但是這種劃分并非強制性的。實際上,根據(jù)本發(fā)明的實施方式,上文描述的兩個或更多模塊或者單元的特征和功能可以在一個模塊或者單元中具體化。反之,上文描述的一個模塊或者單元的特征和功能可以進一步劃分為由多個模塊或者單元來具體化。作為模塊或單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本公開方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。
本領(lǐng)域技術(shù)人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應(yīng)性變化,這些變型、用途或者適應(yīng)性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術(shù)領(lǐng)域中的公知常識或慣用技術(shù)手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權(quán)利要求指出。