亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

智能密碼鑰匙密碼驗(yàn)證方法

文檔序號(hào):9547475閱讀:2028來(lái)源:國(guó)知局
智能密碼鑰匙密碼驗(yàn)證方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及的是一種信息安全領(lǐng)域的智能密碼鑰匙密碼驗(yàn)證的方法,具體的說(shuō),涉及的是一種基于CSP或PKCS11#接口或COS智能密碼鑰匙密碼驗(yàn)證的方法。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)的普及,密碼鑰匙已廣泛應(yīng)用于電子商務(wù)、電子政務(wù)等領(lǐng)域,如網(wǎng)上銀行、電子支付等。作為網(wǎng)絡(luò)用戶(hù)身份識(shí)別和數(shù)據(jù)保護(hù)的“智能密碼鑰匙”,智能密碼鑰匙這種智能加密存儲(chǔ)設(shè)備結(jié)合了智能卡技術(shù)、PKI (Public Key Infrastructure)技術(shù)和USB接口技術(shù),內(nèi)置了單片機(jī)或智能卡芯片,有一定的安全存儲(chǔ)空間,可以存儲(chǔ)用戶(hù)的公鑰、私鑰以及數(shù)字證書(shū),利用智能密碼鑰匙內(nèi)置的公鑰算法可以實(shí)現(xiàn)對(duì)用戶(hù)身份的認(rèn)證。
[0003]然而智能密碼鑰匙在給用戶(hù)帶來(lái)使用便利的同時(shí),也給相關(guān)產(chǎn)品的安全檢測(cè)、安全審計(jì)和監(jiān)管提出了挑戰(zhàn)。例如,某些違反國(guó)家規(guī)范的智能密碼鑰匙產(chǎn)品(如國(guó)外的大水牛(Buffalo)、圣天狗(Sentinel)等,國(guó)內(nèi)的“英超神盾”等),打著“加密狗”、UKey等其他產(chǎn)品名稱(chēng),在市場(chǎng)上非法銷(xiāo)售;有些智能密碼鑰匙在市場(chǎng)上銷(xiāo)售的產(chǎn)品指標(biāo)(如算法、參數(shù)、性能等)和產(chǎn)品說(shuō)明書(shū)中描述有所不同,存在各種違規(guī)使用的情況,最典型的案例有:說(shuō)明中支持各種國(guó)產(chǎn)算法,但實(shí)際產(chǎn)品卻只支持一些國(guó)外算法,其加密強(qiáng)度較弱(如DES/3DES等),加密信息容易被破解,以次充好。這些違規(guī)智能密碼鑰匙產(chǎn)品如果流入重要信息系統(tǒng)和網(wǎng)絡(luò),將會(huì)給政府部門(mén)及企業(yè)的電子政務(wù)、電子商務(wù)等應(yīng)用帶來(lái)嚴(yán)重的安全隱患。
[0004]為了保護(hù)密碼產(chǎn)品用戶(hù)的信息資產(chǎn)安全,規(guī)范智能密碼鑰匙產(chǎn)品市場(chǎng),以及安全檢測(cè)、安全審計(jì)和監(jiān)管的需要,必須對(duì)智能密碼鑰匙產(chǎn)品的生產(chǎn)、使用行為進(jìn)行取證分析,以便有據(jù)可循、有序可控地進(jìn)行管理。然而,傳統(tǒng)的智能密碼鑰匙產(chǎn)品檢測(cè)技術(shù)不僅復(fù)雜,耗費(fèi)周期長(zhǎng),而且檢測(cè)設(shè)備規(guī)模龐大,難以適應(yīng)現(xiàn)場(chǎng)分析、現(xiàn)場(chǎng)取證的狀況,因此迫切需要研究和改進(jìn)智能密碼鑰匙產(chǎn)品監(jiān)管方面的技術(shù)和手段,加強(qiáng)取證分析力度,提高管理效率和水平。

【發(fā)明內(nèi)容】

[0005]本發(fā)明的目的在于針對(duì)上述現(xiàn)有技術(shù)的不足,提供一種利用CSP或PKCS#11接口或COS途徑為智能密碼鑰匙產(chǎn)品進(jìn)行密碼算法驗(yàn)證的方法,該方法實(shí)現(xiàn)比較簡(jiǎn)單,設(shè)備規(guī)模很小,可以很好的適應(yīng)現(xiàn)場(chǎng)分析、現(xiàn)場(chǎng)取證。
[0006]本發(fā)明是通過(guò)以下技術(shù)方案實(shí)現(xiàn)的,本發(fā)明首先需要檢測(cè)智能密碼鑰匙是否插入,在確認(rèn)被檢測(cè)智能密碼鑰匙插入后,利用CSP或PKCS#11接口或者COS途徑來(lái)進(jìn)行密碼算法驗(yàn)證,驗(yàn)證完成后與已存在的算法驗(yàn)證庫(kù)進(jìn)行對(duì)比,如果都通過(guò)說(shuō)明該智能密碼鑰匙產(chǎn)品是合格的。由于不同的智能密碼鑰匙產(chǎn)品支持的算法類(lèi)型不同,因而只需要通過(guò)其產(chǎn)品所聲明支持的算法驗(yàn)證即可。
[0007]本發(fā)明包括如下步驟:
步驟一:檢測(cè)智能密碼鑰匙是否插入; 步驟二:利用利用CSP或PKCS#11接口或者COS途徑來(lái)進(jìn)行密碼算法驗(yàn)證,需要驗(yàn)證智能密碼鑰匙中聲明的所有算法;
步驟三:將步驟二中所有算法結(jié)果與基礎(chǔ)信息數(shù)據(jù)庫(kù)、密碼算法基準(zhǔn)數(shù)據(jù)庫(kù)中的結(jié)果進(jìn)行對(duì)比并輸出結(jié)果。
[0008]所述的步驟一,具體為:智能密碼鑰匙的插入檢測(cè)分為兩個(gè)步驟:USB接口設(shè)備插入檢測(cè)、判斷設(shè)備是否為合法智能密碼鑰匙。首先,利用Linux系統(tǒng)提供的sys/socket.h中的recv()函數(shù)來(lái)檢測(cè)USB設(shè)備的插入和拔出。Recv函數(shù)的原型為:
int PASCAL FAR recv (SOCKET s, char FAR* buf, int len, int flags);
程序首先初始化第一個(gè)socket參數(shù)。當(dāng)有USB設(shè)備插入或拔出時(shí),設(shè)備的插拔字符信息會(huì)保存在buf字符串中。由于插入一個(gè)設(shè)備后會(huì)導(dǎo)致多次地調(diào)用recv函數(shù),因此當(dāng)檢測(cè)到USB設(shè)備插入后,程序首先通過(guò)buf字符串的特征來(lái)判斷插入的USB設(shè)備是否已經(jīng)存在,如果已經(jīng)存在,則不作處理;如果檢測(cè)到插入的是新的設(shè)備,則對(duì)其進(jìn)行登記,并保存在一個(gè)稱(chēng)作exist的數(shù)組中。當(dāng)檢測(cè)到有新的USB設(shè)備插入后,程序調(diào)用pkcsllf.h的C_OpenSess1n函數(shù)(該文件及函數(shù)來(lái)自于PKCS #11的密碼令牌接口標(biāo)準(zhǔn))。因此,如果該函數(shù)返回異常狀態(tài),則說(shuō)明該USB設(shè)備不是智能密碼鑰匙;如果函數(shù)返回正常結(jié)果,可判斷該設(shè)備是智能密碼鑰匙。
[0009]所述的步驟二,具體為:目前,國(guó)際上在智能卡中間件層主要有兩種對(duì)加密設(shè)備進(jìn)行管理的通用接口。一種是 PKCS#11 (Public-Key Cryptography Standards)標(biāo)準(zhǔn)接口,另一種是CSP (Cryptographic Service Provider)標(biāo)準(zhǔn)接口。在獲取相關(guān)驅(qū)動(dòng)的前提下,可通過(guò)PKCS#11或CSP接口調(diào)用,詳細(xì)地分析出被檢測(cè)產(chǎn)品所支持的所有密碼算法。此外,在獲取PIN碼的情況下,還可以調(diào)用算法進(jìn)行加解密運(yùn)算,將運(yùn)算結(jié)果與標(biāo)準(zhǔn)算法的執(zhí)行結(jié)果進(jìn)行比較,以驗(yàn)證其加解密運(yùn)算的準(zhǔn)確性,從而實(shí)現(xiàn)PKCS#11及CSP接口安全檢測(cè)。
[0010]所謂COS (Card Operat1n System),是指智能卡操作系統(tǒng)。智能密碼鑰匙一般由數(shù)據(jù)傳輸模塊和智能卡兩大部分組成,智能卡部分作為智能密碼鑰匙的核心組件,通過(guò)C0S實(shí)現(xiàn)應(yīng)用程序的存儲(chǔ)管理和運(yùn)算。C0S安全檢測(cè)是通過(guò)更底層的PC/SC (PersonalComputer/Smart Card)接口與智能密碼鑰匙進(jìn)行 APDU (Applicat1n Protocol Data Unit)指令的通信,直接對(duì)cos內(nèi)部文件系統(tǒng)進(jìn)行讀寫(xiě),實(shí)現(xiàn)密鑰的導(dǎo)入或者導(dǎo)出,并完成加解密運(yùn)算的驗(yàn)證,從而實(shí)現(xiàn)智能密碼鑰匙的安全檢測(cè)。在無(wú)法獲取用戶(hù)驅(qū)動(dòng),從而不能對(duì)智能密碼鑰匙進(jìn)行PKCS#11及CSP接口安全檢測(cè)的情況下,可通過(guò)COS安全檢測(cè)技術(shù)實(shí)現(xiàn)對(duì)智能密碼鑰匙的安全檢測(cè)。
[0011]所述的步驟三,具體為:通過(guò)與基礎(chǔ)信息數(shù)據(jù)庫(kù)、密碼算法基準(zhǔn)數(shù)據(jù)庫(kù)組成的數(shù)據(jù)庫(kù)系統(tǒng)中的結(jié)果比較來(lái)驗(yàn)證其算法實(shí)現(xiàn)的正確性。該數(shù)據(jù)庫(kù)系統(tǒng)對(duì)文書(shū)數(shù)據(jù)、算法數(shù)據(jù)、算法驗(yàn)證數(shù)據(jù)使用MySQL數(shù)據(jù)庫(kù)進(jìn)行設(shè)計(jì),智能密碼鑰匙深度檢查后臺(tái)引擎將抓到的數(shù)據(jù)進(jìn)行深度分析和檢測(cè)后實(shí)時(shí)寫(xiě)入后臺(tái)數(shù)據(jù)庫(kù)。便攜式設(shè)備的性能和資源有限,因此不適合部署像Oracle之類(lèi)的大型數(shù)據(jù)庫(kù)。鑒于MySQL數(shù)據(jù)庫(kù)的開(kāi)源、速度快、跨平臺(tái),以及移植性強(qiáng)等優(yōu)點(diǎn),這里采用MySQL進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì),以兼顧性能和復(fù)雜度。
[0012]本發(fā)明的優(yōu)點(diǎn)在于:提供了兩種途徑來(lái)進(jìn)行密碼驗(yàn)證,一是基于CryptoAPI的CSP驅(qū)動(dòng)密碼檢測(cè)分析方法,二是基于PC/SC接口的APDU指令分析的密碼檢測(cè)分析方法。兩種方法的技術(shù)難度適中,耗費(fèi)周期短,且檢測(cè)設(shè)備規(guī)模較小,比較適合現(xiàn)場(chǎng)分析、現(xiàn)場(chǎng)取證,對(duì)于智能密碼鑰匙產(chǎn)品監(jiān)管方面的技術(shù)和手段有很大提高,取證分析力度得到加強(qiáng),管理效率和水平也相應(yīng)提高。
【附圖說(shuō)明】
[0013]圖1為本發(fā)明涉及的智能密碼鑰匙原理框圖。
[0014]圖2為本發(fā)明智能密碼鑰匙應(yīng)用系統(tǒng)邏輯框圖。
[0015]圖3為本發(fā)明中涉及的CSP及PKCS#11接口以及COS密碼檢測(cè)技術(shù)系統(tǒng)框圖。
[0016]圖4為本發(fā)明COS密碼檢測(cè)中PC/SC訪問(wèn)智能卡流程圖。
[0017]圖5為本發(fā)明中APDU指令命令格式圖。
[0018]圖6為本發(fā)明中APDU指令響應(yīng)格式圖。
【具體實(shí)施方式】
[0019]下面結(jié)合實(shí)施例和附圖對(duì)本發(fā)明作詳細(xì)說(shuō)明,但不應(yīng)以此限制本發(fā)明的保護(hù)范圍。
[0020]智能密碼鑰匙本質(zhì)是能夠直接在計(jì)算機(jī)USB接口使用的智能卡設(shè)備。其結(jié)構(gòu)包括數(shù)據(jù)傳輸模塊和智能卡兩大部分,如圖1所示。其中,數(shù)據(jù)傳輸部分負(fù)責(zé)PC機(jī)與智能卡直接的數(shù)據(jù)傳輸,與PC機(jī)的通信是使用USB協(xié)議,而與智能卡的信息交換遵循IS07816規(guī)范;智能卡部分負(fù)責(zé)應(yīng)用程序的存儲(chǔ)管理和運(yùn)算,這些功能都通過(guò)智能卡的操作系統(tǒng)COS來(lái)完成。
[0021]在操作系統(tǒng)及應(yīng)用程序訪問(wèn)智能密碼鑰匙時(shí),通過(guò)CSP或PKCS#11這樣的中間層調(diào)用,如果智能密碼鑰匙能夠提供用戶(hù)驅(qū)動(dòng),那么CSP或PKCS#11中間件就可以用同一的編程接口進(jìn)行密碼算法的檢測(cè)和正確性驗(yàn)證。Microsoft的CryptoAPI是操作系統(tǒng)所提供的密碼運(yùn)算標(biāo)準(zhǔn)接口,它需要智能密碼鑰匙廠商提供CSP接口程序。從圖2中的邏輯層次可以看出,應(yīng)用系統(tǒng)可以通過(guò)調(diào)用CSP或PKCS#11中間件的方式來(lái)使用智能密碼鑰匙,進(jìn)行加解密運(yùn)算。
[0022]由于CSP和PKCS#11接口非常類(lèi)似,而實(shí)際產(chǎn)品對(duì)CSP支持最為普遍,因此,這里主要通過(guò)統(tǒng)一應(yīng)用程序編程接口 CryptoAPI調(diào)用CSP來(lái)進(jìn)行檢測(cè)。
[0023]CSP通過(guò)體系分層,為用戶(hù)屏蔽底層的加密實(shí)現(xiàn)細(xì)節(jié),利用它們提供的CryptoAPI,為應(yīng)用程序進(jìn)行數(shù)據(jù)加密和數(shù)據(jù)簽名服務(wù)。每個(gè)CSP都有一個(gè)密鑰庫(kù),用于存儲(chǔ)密鑰;而每個(gè)密鑰庫(kù)包括一個(gè)或多個(gè)密鑰容器(Key Containers),其中包含屬于一個(gè)特定用戶(hù)的所有密鑰對(duì)。每個(gè)密鑰容器被賦予一個(gè)唯一的名字。在銷(xiāo)毀密鑰容器前CSP將永久保存每一個(gè)密鑰容器,包括保存每個(gè)密鑰容器中的公/私鑰對(duì)。需要由廠商提供被測(cè)智能密碼鑰匙的用戶(hù)驅(qū)動(dòng)。然后根據(jù)CryptoAPI的CryptEnumProviderTypes ()函數(shù)列出電腦中已裝好的CSP類(lèi)別。通過(guò)CryptoAPI調(diào)用分析被測(cè)智能密碼鑰匙的CSP程序,可以得知被測(cè)產(chǎn)品所使用的所有密碼算法,在知曉PIN碼的情況下,可以調(diào)用這些算法進(jìn)行加解密運(yùn)算,并通過(guò)與標(biāo)準(zhǔn)算法執(zhí)行結(jié)果的比較來(lái)驗(yàn)證其算法實(shí)現(xiàn)的正確性。
[0024]利用CSP和PKCS#11實(shí)現(xiàn)檢測(cè)的框圖如圖3所示:最底層是硬件層,也即智能密碼鑰匙和上位機(jī)之間的USB/讀卡器硬件接口,通過(guò)USB協(xié)議的HID方式、mass-storage (大容量存儲(chǔ))方式或CCID方式接入用戶(hù)主機(jī)(此處為檢測(cè)工具)。
[0025]其上為驅(qū)動(dòng)層,基本上智能密碼鑰匙產(chǎn)品都需要安裝特有的驅(qū)動(dòng)程序,有些智能密碼鑰匙可以做到“無(wú)驅(qū)無(wú)軟”,有些產(chǎn)品可以通過(guò)自動(dòng)安裝驅(qū)動(dòng)來(lái)實(shí)現(xiàn)“即插即用”,但大多數(shù)都需要安裝自身的驅(qū)動(dòng)。
[0026]再往上就是操作系統(tǒng)層,在應(yīng)用程序和操作系統(tǒng)之
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1