两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

生成一對私鑰和公鑰的智能卡芯片及其生成方法

文檔序號:10494713閱讀:349來源:國知局
生成一對私鑰和公鑰的智能卡芯片及其生成方法【專利摘要】本申請涉及一種生成一對私鑰和公鑰的智能卡芯片及其生成方法。本發(fā)明的一個形態(tài)的生成一對私鑰和公鑰的智能卡芯片包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到生成一對私鑰和公鑰的指令時,所述控制部確認所述存儲部中是否存儲有預(yù)先生成的一對私鑰和公鑰,如果所述存儲部中存儲有預(yù)先生成的一對私鑰和公鑰,則讀取預(yù)先生成的所述一對私鑰和公鑰?!緦@f明】生成一對私鑰和公鑰的智能卡芯片及其生成方法
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及一種生成一對私鑰和公鑰的智能卡芯片及其生成方法,更為詳細地涉及利用待機時間來預(yù)先生成一對私鑰和公鑰的智能卡芯片及其生成方法?!?br>背景技術(shù)
】[0002]最近,韓國互聯(lián)網(wǎng)絡(luò)振興院(KISA)正在推進公認認證書密碼系統(tǒng)高度化事業(yè)。此項事業(yè)的核心目的在于,將數(shù)字簽名算法的私鑰(密鑰)長度由1024比特(bit)上調(diào)至2048比特,從而增加電子簽名算法的安全性。此外,存儲于PC的硬盤中的公認認證書因黑客的攻擊而安全事故頻發(fā),因此正在向如下方向促進事業(yè):將公認認證書存儲于如硬件安全模塊(HSM;HardwareSecurityModule)那樣的安全的存儲介質(zhì)。[0003]硬件安全模塊將智能卡芯片用作核心配件,眾所周知所述智能卡芯片以目前的技術(shù)黑客無法入侵。智能卡芯片在公認認證書頒發(fā)過程中生成所需的一對私鑰和公鑰,在公認認證書登錄(login)的過程中執(zhí)行所需的數(shù)字簽名等功能。[0004]目前,公認認證書的數(shù)字簽名算法使用RSA(RivestShamirAdleman)算法,如果將1024比特的RSA算法提高為2048比特,則理論上需要約四倍以上的運算時間。具體而言,目前智能卡芯片生成一對1024比特的私鑰和公鑰的時間為平均2?3秒,并且根據(jù)情況也可能需要6秒以上,密碼系統(tǒng)提升的情況下,生成一對2048比特的私鑰和公鑰的時間為平均20?30秒,并且根據(jù)情況也可能需要60秒以上。[0005]由此,使用硬件安全模塊來頒發(fā)2048比特的公認認證書時,頒發(fā)過程可能需要I分鐘以上,從而可能使得用戶感到非常不便。對此,韓國互聯(lián)網(wǎng)絡(luò)振興院(KISA)雖然希望將硬件安全模塊生成一對2048比特的私鑰和公鑰的時間縮短在數(shù)秒之內(nèi),但是并未公開有能夠以目前技術(shù)來解決的方法。[0006]另外,智能卡芯片也可以利用近距離無線通信(NFC;NearFieldCommunicat1n)來用作硬件安全模塊。近距離無線通信是通過由無線終端發(fā)出的電磁波來使智能卡芯片直接生成電并進行通信的方式,具有如下優(yōu)點:無需電池,且連接距離短,從而安全性顯著。但是,無法生成智能卡芯片生成一對私鑰和公鑰所需的電力,事實上,利用目前的智能卡芯片,無法通過近距離無線通信生成一對1024比特的私鑰和公鑰。[0007]為了解決所述問題,韓國注冊專利第10-0651718號公開有如下方法:使得便攜式終端機對USIM(UniversalSubscriberIdentificat1nModule;全球用戶識別卡)卡進行控制,預(yù)先生成一對私鑰和公鑰,如果請求生成一對私鑰和公鑰,則US頂卡應(yīng)答預(yù)先生成的一對私鑰和公鑰。[0008]但是,在類似于提供各種服務(wù)的智能手機的環(huán)境下,使得便攜式終端機對智能卡芯片的待機時間進行判斷并控制,從而預(yù)先生成一對私鑰和公鑰是非常困難的。尤其,只有當使用近距離無線通信的智能卡芯片在使用時才與終端機連接,因此待機時間并不充足,從而通過所述專利的方式對一對私鑰和公鑰進行預(yù)先生成是非常困難的。此外,使用硬件安全模塊的最初過程就是智能卡芯片生成一對私鑰和公鑰并頒發(fā)公認認證書的過程,但是目前為止,智能卡芯片對一對私鑰和公鑰進行生成時間并不充足的情況是大部分。[0009]因此,在主要使用近距離無線通信的智能卡芯片的情況下,也切實需要能夠?qū)σ粚λ借€和公鑰進行有效生成并使用的方案。[00?0][現(xiàn)有技術(shù)文獻(專利文獻)][0011]韓國注冊專利公報第10-0651718號【
發(fā)明內(nèi)容】[0012]技術(shù)課題[0013]本發(fā)明為滿足如上所述的要求而提出,本發(fā)明的目的在于提供一種不依賴于外部裝置的控制而預(yù)先生成一對私鑰和公鑰的智能卡芯片及其生成方法。[0014]本發(fā)明的另一目的在于提供一種利用近距離無線通信來預(yù)先生成一對私鑰和公鑰的智能卡芯片及其生成方法。[0015]本發(fā)明的又另一目的在于提供一種利用近距離無線通信來實時生成一對私鑰和公鑰的智能卡芯片及其生成方法。[0016]本發(fā)明的又另一目的在于提供一種能夠如下生成一對私鑰和公鑰的智能卡芯片及其生成方法,通過將一對私鑰和公鑰的生成過程分為兩個以上子過程來進行,即使通過電力較弱的近距離無線通信也能夠生成一對私鑰和公鑰。[0017]解決課題的手段[0018]為達成所述目的,就本發(fā)明的一個形態(tài)的生成一對私鑰和公鑰的智能卡芯片而言,其包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到生成一對私鑰和公鑰的指令時,所述控制部確認所述存儲部中是否存儲有預(yù)先生成的一對私鑰和公鑰,如果所述存儲部中存儲有預(yù)先生成的一對私鑰和公鑰,則讀取預(yù)先生成的所述一對私鑰和公鑰。[0019]另外,就本發(fā)明的另一個形態(tài)的生成一對私鑰和公鑰的智能卡芯片而言,其包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到指令時,所述控制部在處理所述指令的期間生成一對私鑰和公鑰。[0020]另外,就本發(fā)明的又另一個形態(tài)的生成一對私鑰和公鑰的智能卡芯片而言,其包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到指令時,所述控制部在處理所述指令后,在待機模式期間生成一對私鑰和公鑰。[0021]另外,就本發(fā)明的一個實施形態(tài)的智能卡芯片中生成一對私鑰和公鑰的方法而言,其包括如下步驟:所述智能卡芯片從外部裝置接收指令;所述智能卡芯片在處理指令的同時生成一對私鑰和公鑰;以及當完成指令處理時,所述智能卡芯片向所述外部裝置應(yīng)答指令處理完成。[0022]另外,就本發(fā)明的另一個形態(tài)的智能卡芯片中生成一對私鑰和公鑰的方法而言,其包括如下步驟:所述智能卡芯片從外部裝置接收指令;所述智能卡芯片對指令進行處理;當完成指令處理時,所述智能卡芯片向所述外部裝置應(yīng)答指令處理完成;以及所述智能卡芯片在待機模式下生成一對私鑰和公鑰。[0023]另外,優(yōu)選地,還包括如下步驟:所述智能卡芯片從所述外部裝置接收生成一對私鑰和公鑰的指令;所述智能卡芯片確認是否存在預(yù)先生成的一對私鑰和公鑰;以及如果存在預(yù)先生成的一對私鑰和公鑰,則所述智能卡芯片向所述外部裝置應(yīng)答所述一對私鑰和公鑰的生成。[0024]發(fā)明效果[0025]根據(jù)本發(fā)明,因為智能卡芯片利用待機時間來預(yù)先生成并存儲一對私鑰和公鑰,所以效果在于能夠使得基于一對私鑰和公鑰的生成請求的應(yīng)答時間最小化。[0026]另外,根據(jù)本發(fā)明,因為智能卡芯片將一對私鑰和公鑰的生成過程分為兩個以上子過程來進行,所以效果在于即使通過電力較弱的近距離無線通信也能夠生成一對私鑰和公鑰。[0027]此外,根據(jù)本發(fā)明,使用內(nèi)置有智能卡芯片的硬件安全模塊,從而效果在于能夠在數(shù)秒以內(nèi)迅速頒發(fā)2048比特的公認認證書,并且能夠安全地進行使用?!靖綀D說明】[0028]圖1是說明本發(fā)明的智能卡芯片在PC環(huán)境或智能手機環(huán)境的公認認證系統(tǒng)中使用的示意圖。[0029]圖2是本發(fā)明的一個實施例的智能卡芯片的構(gòu)成圖。[0030]圖3是表示現(xiàn)有技術(shù)的智能卡芯片對一對私鑰和公鑰進行生成并使用的過程的流程圖。[0031]圖4是表示本發(fā)明的一個實施例的智能卡芯片對一對私鑰和公鑰進行生成并使用的過程的流程圖。[0032]圖5是表示圖4步驟S410的詳細過程的流程圖。[0033]圖6是表示使用智能卡芯片的一般過程的流程圖。[0034]圖7是表示本發(fā)明的一個實施例的智能卡芯片在待機模式下生成一對私鑰和公鑰的過程的流程圖。[0035]圖8是表示本發(fā)明的一個實施例的智能卡芯片在處理指令的同時生成一對私鑰和公鑰的過程的流程圖。[0036]圖9是表示常規(guī)的智能卡芯片在連接于非接觸式外部裝置并使用的情況下電力根據(jù)智能卡芯片的運算時間而變化的圖表。[0037]圖10是表示本發(fā)明的一個實施例的智能卡芯片在連接于非接觸式外部裝置并使用的情況下執(zhí)行生成一對私鑰和公鑰的子過程的期間電力根據(jù)智能卡芯片的運算時間而變化的圖表?!揪唧w實施方式】[0038]以下,參照附圖及優(yōu)選實施例對本發(fā)明進行詳細說明。作為參考,在以下說明中對有可能混淆本發(fā)明的主旨的公知功能及構(gòu)成的詳細說明進行省略。[0039]首先,圖1是說明本發(fā)明的智能卡芯片在PC環(huán)境或智能手機環(huán)境的公認認證系統(tǒng)中使用的示意圖。[0040]參照圖1,能夠使用本發(fā)明的公認認證系統(tǒng)可包括:智能卡芯片100、計算機(computer)200、無線終端300、認證服務(wù)器400等。[0041]就智能卡芯片100而言,可以實現(xiàn)為例如USB(UniversalSerialBus;通用串行總線)裝置形態(tài)或塑料卡片(plasticcard)形態(tài)的硬件安全模塊(HSM;HardwareSecurityModule),并使用。在智能卡芯片100執(zhí)行接觸式通信的情況下,智能卡芯片100可與例如可接入認證服務(wù)器400的計算機200通過USB通信來執(zhí)行一對私鑰和公鑰的生成、數(shù)字簽名等,在智能卡芯片100執(zhí)行非接觸式通信的情況下,智能卡芯片100可與例如可接入認證服務(wù)器400的無線終端300通過近距離無線通信(NFC;NearFieldCommunicat1n)來執(zhí)行一對私鑰和公鑰的生成、數(shù)字簽名等。[0042]作為參考,在此,計算機200是指包括如個人計算機(PC!PersonalComputer)、筆記本電腦(notebook)等那樣具備USB端口(port)而可進行USB通信(接觸式通信)或者通過有線無線網(wǎng)絡(luò)能夠與認證服務(wù)器400進行通信的所有種類的計算機,無線終端300是指包括如智能手機、平板電腦(tabletPC)等那樣可進行近距離無線通信(非接觸式通信)或者通過無線網(wǎng)絡(luò)能夠與認證服務(wù)器400進行通信的所有種類的無線終端。[0043]圖2是本發(fā)明的一實施例的智能卡芯片100的構(gòu)成圖。[0044]參照圖2,本發(fā)明的一實施例的智能卡芯片100包括控制部110、存儲(memory)部120、通信部130等。[0045]控制部110可實現(xiàn)為例如中央處理器(CPU;CentralProcessingUnit)、密碼運算加速器(CryptoAccelerator)等,通過對存儲部120和通信部130進行控制,執(zhí)行一對私鑰和公鑰的生成、數(shù)字簽名等。[0046]存儲部120可實現(xiàn)為例如EEPR0M(!ElectricallyErasableProgrammableReadOnlyMemory;電可擦可編程只讀存儲器)等,存儲用于驅(qū)動智能卡芯片的0S(0peratingSystem;操作系統(tǒng))、一對私鑰和公鑰、數(shù)字簽名等。[0047]另夕卜,通信部130具備內(nèi)置式天線(antenna),從而接收由外部裝置感應(yīng)的電力,與外部裝置執(zhí)行近距離無線通信(非接觸式通信),也可以選擇性地實現(xiàn)為通過智能讀卡器(Smartcardreader)或USB能夠進行接觸式通信。[0048]以下參照圖3至圖10對本發(fā)明的一實施例的智能卡芯片生成一對私鑰和公鑰的過程進行說明。[0049]首先,圖3是表示現(xiàn)有技術(shù)的智能卡芯片對一對私鑰和公鑰進行生成并使用的過程的流程圖。[0050]參照圖3,在現(xiàn)有技術(shù)的情況下,如果在步驟S310中,從外部裝置向智能卡芯片輸入生成一對私鑰和公鑰的指令,則在步驟S320中,智能卡芯片生成一對私鑰和公鑰。并且,在步驟S330中,智能卡芯片向外部裝置應(yīng)答一對私鑰和公鑰生成的完成。[0051]如此,現(xiàn)有技術(shù)的智能卡芯片如果從外部裝置被請求生成一對私鑰和公鑰,則從此時開始生成一對私鑰和公鑰,此時,如【
背景技術(shù)
】中所提及那樣,生成一對私鑰和公鑰需要較多時間,尤其是生成2048比特的一對私鑰和公鑰的情況下,平均需要20?30秒,較長時間則也可能需要60秒以上,因此使用上具有不便性。[0052]另一方面,圖4是表示本發(fā)明的一實施例的智能卡芯片對一對私鑰和公鑰進行生成并使用的過程的流程圖。另外,圖5是表示圖4的步驟S420的詳細過程的流程圖。[0053]參照圖4,本發(fā)明的情況下,如果在步驟S410中,從外部裝置向智能卡芯片輸入生成一對私鑰和公鑰的指令,則在步驟S420中,智能卡芯片生成一對私鑰和公鑰,或者讀取預(yù)先生成的一對私鑰和公鑰。[0054]參照圖5對此進行詳細說明的話,如果從外部裝置向智能卡芯片請求生成一對私鑰和公鑰,則在步驟S422中,智能卡芯片的控制部110首先檢索存儲部120中是否存儲有預(yù)先生成的一對私鑰和公鑰,如果不存在預(yù)先生成的一對私鑰和公鑰,則在步驟S424中,智能卡芯片的控制部110實時生成一對私鑰和公鑰。但是,如果存在預(yù)先生成的一對私鑰和公鑰,則在步驟S426中,智能卡芯片的控制部110不生成一對私鑰和公鑰,而是讀取存儲于存儲部120中的一對私鑰和公鑰。[0055]另外,在步驟S430中,智能卡芯片的控制部110通過通信部130向外部裝置應(yīng)答一對私鑰和公鑰生成的完成。[0056]與此相關(guān)地,以下參照圖6至圖10對本發(fā)明的智能卡芯片預(yù)先生成一對私鑰和公鑰的方式進行說明。[0057]首先,圖6是表示使用智能卡芯片的一般過程的流程圖。[0058]參照圖6,如果在步驟S610中,外部裝置向智能卡芯片進行電源供應(yīng),則在步驟S612中,智能卡芯片執(zhí)行初始化作業(yè)。初始化作業(yè)結(jié)束后,在步驟S614中,智能卡芯片將ATR(AnswerToReset;復(fù)位應(yīng)答)信號向外部裝置傳送。之后,智能卡芯片轉(zhuǎn)換為待機模式,等待至外部裝置輸入APDU(Applicat1nProtocolDataUnit;應(yīng)用協(xié)議數(shù)據(jù)單元)指令為止。[0059]如果在步驟S620中,外部裝置向智能卡芯片傳送APDU指令,則在步驟S622中,智能卡芯片離開待機模式而對指令進行處理。另外,在步驟S624中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,智能卡芯片再次轉(zhuǎn)換為待機模式,待機至外部裝置輸入下一個APDU指令為止。[0060]另外,如果在步驟S630中,外部裝置再次向智能卡芯片傳送APDU指令,則在步驟S632中,智能卡芯片離開待機模式而對指令進行處理。另外,在步驟S634中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,智能卡芯片再次轉(zhuǎn)換為待機模式,待機至外部裝置輸入下一個APDU指令為止,反復(fù)這種過程的同時進行操作。[0061]另一方面,就本發(fā)明的一實施例的智能卡芯片而言,在待機至從外部裝置輸入指令為止的期間,預(yù)先生成并存儲一對私鑰和公鑰,以下參照圖7進行詳細說明。[0062]圖7是表示本發(fā)明的一實施例的智能卡芯片在待機模式下生成一對私鑰和公鑰的過程的流程圖。[0063]參照圖7,如果在步驟S710中,外部裝置向智能卡芯片進行電源供應(yīng),則在步驟S712中,智能卡芯片執(zhí)行初始化作業(yè)。初始化作業(yè)結(jié)束后,在步驟S714中,智能卡芯片將ATR(AnswerToReset;復(fù)位應(yīng)答)信號向外部裝置傳送。之后,在步驟S716中,智能卡芯片在為接收下一指令而待機的期間,預(yù)先生成并存儲一對私鑰和公鑰。[0064]如果在步驟S720中,外部裝置向智能卡芯片傳送APDU指令,則在步驟S722中,智能卡芯片對指令進行處理。另外,在步驟S724中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,在步驟S726中,智能卡芯片在為接收下一指令而待機的期間,預(yù)先生成并存儲一對私鑰和公鑰。[0065]另外,如果在步驟S730中,外部裝置再次向智能卡芯片傳送APDU指令,則在步驟S732中,智能卡芯片對指令進行處理。另外,在步驟S734中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,在步驟S736中,智能卡芯片在為接收下一指令而待機的期間,預(yù)先生成并存儲一對私鑰和公鑰,反復(fù)這種過程的同時進行操作。[0066]作為參考,如果對外部裝置其本身向智能卡芯片傳送的APDU指令,智能卡芯片在一定時間(通常為I秒)內(nèi)未作應(yīng)答,則外部裝置識別為智能卡芯片發(fā)生錯誤,因此智能卡芯片在預(yù)先生成一對私鑰和公鑰的過程中,也需要能夠?qū)耐獠垦b置輸入的APDU指令進行處理。[0067]由此,在圖7中,如果智能卡芯片在預(yù)先生成一對私鑰和公鑰的期間(步驟S716、S726、S736),從外部裝置被輸入APDU指令,則智能卡芯片的控制部110將到目前為止的一對私鑰和公鑰的預(yù)先生成過程臨時存儲于存儲部120,優(yōu)先處理所被輸入的指令且對結(jié)果進行應(yīng)答。之后,智能卡芯片的控制部110重新繼續(xù)進行臨時存儲于存儲部120的一對私鑰和公鑰的預(yù)先生成過程。如果智能卡芯片難以將一對私鑰和公鑰的預(yù)先生成過程臨時存儲于存儲部120,則智能卡芯片的控制部110取消一對私鑰和公鑰的預(yù)先生成過程,優(yōu)先處理被輸入的指令且對結(jié)果進行應(yīng)答后,重新從頭開始進行一對私鑰和公鑰的預(yù)先生成過程。[0068]另一方面,在圖7的待機模式下,一對私鑰和公鑰的預(yù)先生成過程具有需要持續(xù)向智能卡芯片供電的制約性。換句話說,只能在如下情況下實現(xiàn):使得智能卡芯片利用接觸式通信(例如,USB通信)來持續(xù)得到電源供應(yīng),或者即使是利用非接觸式通信(例如,近距離無線通信)也能夠使得智能卡芯片持續(xù)接收從外部的電磁波所感應(yīng)的電力的供應(yīng)。[0069]智能卡芯片連接于類似于智能讀卡器的接觸式(Contact)外部裝置而使用時,不僅外部電源充足,用于一對私鑰和公鑰的預(yù)先生成的待機模式的時間也充足。但是,智能卡芯片連接于類似于無線終端的非接觸式(Contactless)外部裝置而使用時,只有在執(zhí)行近距離無線通信時無線終端才會產(chǎn)生電磁波,因此電源不充足,由此事實上,通過現(xiàn)有的智能卡芯片在待機模式期間無法生成一對1024比特的私鑰和公鑰。[0070]為了解決這種制約性,本發(fā)明提出了在非接觸式外部裝置(例如,無線終端)的情況下,使智能卡芯片處理指令的同時生成一對私鑰和公鑰的方式。[0071]與此相關(guān)地,圖8是表示本發(fā)明的一實施例的智能卡芯片在處理指令的同時生成一對私鑰和公鑰的過程的流程圖。[0072]參照圖8,如果在步驟S810中,外部裝置向智能卡芯片進行電源供應(yīng),則在步驟S812中,智能卡芯片執(zhí)行初始化作業(yè)。初始化作業(yè)結(jié)束后,在步驟S814中,智能卡芯片將ATR(AnswerToReset;復(fù)位應(yīng)答)信號向外部裝置傳送。之后,智能卡芯片轉(zhuǎn)換為待機模式,待機至外部裝置輸入APDU(Applicat1nProtocolDataUnit;應(yīng)用協(xié)議數(shù)據(jù)單元)指令為止。[0073]如果在步驟S820中,外部裝置向智能卡芯片傳送APDU指令,則在步驟S822中,智能卡芯片對指令進行處理。此時,智能卡芯片在處理指令的同時一起執(zhí)行一對私鑰和公鑰的預(yù)先生成。另外,在步驟S824中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,智能卡芯片再次轉(zhuǎn)換為待機模式,待機至外部裝置輸入下一個APDU指令為止。[0074]另外,如果在步驟S830中,外部裝置再次向智能卡芯片傳送APDU指令,則在步驟S832中,智能卡芯片在處理指令的同時一起執(zhí)行對一對私鑰和公鑰的預(yù)先生成。另外,在步驟S834中,智能卡芯片向外部裝置傳送APDU應(yīng)答。此后,智能卡芯片再次轉(zhuǎn)換為待機模式,待機至外部裝置輸入下一個APDU指令為止,反復(fù)這種過程的同時進行操作。[0075]另一方面,就所述圖8的一起執(zhí)行指令處理和一對私鑰和公鑰預(yù)先生成的過程而言,存在如下制約性:需要向智能卡芯片持續(xù)供電,以便能夠在一次的指令處理期間一起執(zhí)行對一對私鑰和公鑰的生成。[0076]如圖9所示,使智能卡芯片連接于非接觸式外部裝置并使用的情況下,相比從外部裝置所發(fā)出的電磁波所生成的電力,智能卡芯片運算所消耗的電力更多,因此智能卡芯片在處理指令的期間,電力逐漸下降,最終下降至能夠驅(qū)動智能卡芯片的最小極限值以下而會復(fù)位(reset)[0077]因此,需要在一次的指令處理期間無法完成一對私鑰和公鑰的生成的情況下,也使智能卡芯片以最大的效率能夠生成一對私鑰和公鑰的替代方案,以下將對此進行詳細說明。[0078]根據(jù)本發(fā)明的優(yōu)選實施例,智能卡芯片將一對私鑰和公鑰的生成過程分為兩個以上子過程后,每當指令處理時一起執(zhí)行一個以上子過程,反復(fù)這種過程而完成所有子過程,由此預(yù)先生成一對私鑰和公鑰。換句話說,本發(fā)明的智能卡芯片在處理一個指令的期間(例如,步驟S822)執(zhí)行一個以上子過程,如果無法執(zhí)行所有子過程,則將目前為止的作業(yè)內(nèi)容存儲于存儲部120并臨時中斷,并且,在處理下一個指令的期間(例如,步驟S832),以執(zhí)行剩余子過程的方式完成一對私鑰和公鑰的生成過程。[0079]與此相關(guān)地,以下將對本發(fā)明的優(yōu)選實施例的生成一對私鑰和公鑰的子過程進行說明。[0080]在公認認證書中所使用的一對私鑰和公鑰是RSA(RivestShamirAdleman)算法的私鑰D和公鑰N、E。另外,以下是生成私鑰D和公鑰N、E的算法。[0081]【RSA私鑰D和公鑰N、E的生成算法】[0082]I)生成相同大小的彼此不同的大素數(shù)P和Q。[0083]2)對N=PXQ,phi=(P_l)X(Q-1)進行計算。[0084]3)對滿足I<E〈phi,G⑶(E,phi)=I的E進行選擇(G⑶:最大公約數(shù))。[0085]4)使用擴展歐幾里德(ExtendedEuclidean)算法,對滿足l〈D〈phi,EXD=I(modphi)的D進行計算。[0086]5)私鑰是D,公鑰輸出為N、E。[0087]在所述RSA算法中占據(jù)大部分運算時間的是第一步驟生成大素數(shù)P和Q的時間。生成大素數(shù)的方法有多種,在本發(fā)明的一實施例中,使用如下方式:在選擇任意的數(shù)后,通過米勒-拉賓(MiIIerRabin)檢驗(test)來判斷是素數(shù)還是合數(shù)。[0088]【生成大素數(shù)的算法】[0089]I)生成任意的大數(shù)Z。[0090]2)執(zhí)行米勒-拉賓(MillerRabin)檢驗來判斷是素數(shù)還是合數(shù)。[0091]3)如果Z是合數(shù),則從第一步驟重新開始。[0092]4)如果Z是素數(shù),則輸出Z。[0093]【針對大數(shù)Z的米勒-拉賓(MillerRabin)檢驗】[0094]1)2-1=23父1?,1?計算作為單數(shù)的3和1?。[0095]2)i從I至Ijt為止,執(zhí)行如下內(nèi)容。在此,t作為安全參數(shù)(securityparameter),當Z為1024比特的數(shù)時通常使用5。[0096]2.1)選擇滿足I<A〈Z-1的任意的數(shù)A。[0097]2.2)計算Y=ArmodZ。[0098]2.3)如果Y不等于I,也不等于Z-1,則執(zhí)行如下內(nèi)容。[0099]2.3.Dj=10[0100]2.3.2)如果j小于S,Y不等于Z-1,則反復(fù)執(zhí)行如下內(nèi)容。[0101]2.3.2.1)計算Y=Y2H1dZ。[0102]2.3.2.2)如果Y等于I,則輸出為合數(shù)并完成算法。[0103]2.3.2.3)j=j+lo[0104]2.3.3)如果Y不等于Z-1,則輸出為合數(shù)并完成算法。[0105]3)輸出為素數(shù)并完成算法。[0106]在所述米勒-拉賓檢驗中,占據(jù)大部分運算時間的是2.2步驟的計算Y=ArmodZ的部分以及2.3.2.1步驟的計算Y=Y2modZ的部分那樣的模冪運算(ModularExponentiat1n)ο[0107]最終,就在公認認證書中所使用的一對私鑰和公鑰的生成而言,占據(jù)大部分運算時間的是模幕運算。[0108]因此,在本發(fā)明的優(yōu)選實施例中,以模冪運算為基準,將生成一對私鑰和公鑰的子過程分開,從而使得運算時間平均分布。例如,分配為如下:一對私鑰和公鑰的生成算法的第一子過程直到第一次模冪運算為止,第二子過程直到第二次模冪運算為止,第N-1子過程直到最后一次模冪運算為止,第N子過程為一對私鑰和公鑰的生成算法的剩余運算,由此近似分配子過程的運算時間。[0109]另外,在本發(fā)明的優(yōu)選的另一實施例中,也可以分配并實現(xiàn)為如下:一對私鑰和公鑰的生成算法的第一子過程直到生成第一素數(shù)P的運算為止,第二子過程直到生成第二素數(shù)Q的運算為止,第三子過程為一對私鑰和公鑰的生成運算的剩余運算。[0110]另一方面,圖10是本發(fā)明的一實施例的智能卡芯片在連接于非接觸式外部裝置而使用的情況下,執(zhí)行生成一對私鑰和公鑰的子過程期間,電力根據(jù)智能卡芯片的運算時間而變化的圖表。[0111]參照圖10,本發(fā)明的一實施例的智能卡芯片在執(zhí)行用于一對私鑰和公鑰的生成運算的第一子過程后,對下一操作所需的電力進行充電。另外,在執(zhí)行用于一對私鑰和公鑰的生成運算的第二子過程后,同樣地,對下一操作所需的電力進行充電,反復(fù)這種方式,從而完成一對私鑰和公鑰的生成。[0112]雖然到此為止參照優(yōu)選實施例對本發(fā)明進行了詳細說明,但是本發(fā)明所屬
技術(shù)領(lǐng)域
的技術(shù)人員在不變更本發(fā)明的技術(shù)構(gòu)想或必需的特征的前提下,可以以其他具體的各種形態(tài)進行實施,因此以上所記載的實施例應(yīng)理解為不是所有方面的例示,也不是限定的例不O[0113]另外,本發(fā)明的范圍應(yīng)理解為根據(jù)權(quán)利要求書來決定,而非所述詳細說明來決定,從權(quán)利要求書的意義、范圍、等同概念所推導(dǎo)出的全部變更或變形的形態(tài)包含于本發(fā)明的范圍?!局鳈?quán)項】1.一種智能卡芯片,生成一對私鑰和公鑰,其特征在于,所述智能卡芯片包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到生成一對私鑰和公鑰的指令時,所述控制部確認所述存儲部中是否存儲有預(yù)先生成的一對私鑰和公鑰,如果所述存儲部中存儲有預(yù)先生成的一對私鑰和公鑰,則讀取預(yù)先生成的所述一對私鑰和公鑰。2.根據(jù)權(quán)利要求1所述的智能卡芯片,其特征在于,如果在所述存儲部中未存儲有預(yù)先生成的一對私鑰和公鑰,則所述控制部實時生成所述一對私鑰和公鑰。3.根據(jù)權(quán)利要求1或2所述的智能卡芯片,其特征在于,如果從所述外部裝置接收到指令,則所述控制部在處理所述指令的期間預(yù)先生成所述一對私鑰和公鑰。4.根據(jù)權(quán)利要求1或2所述的智能卡芯片,其特征在于,如果從所述外部裝置接收到指令,則所述控制部在處理所述指令后,在待機模式期間預(yù)先生成所述一對私鑰和公鑰。5.一種智能卡芯片,生成一對私鑰和公鑰,其特征在于,所述智能卡芯片包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到指令時,所述控制部在處理所述指令的期間生成一對私鑰和公鑰。6.一種智能卡芯片,生成一對私鑰和公鑰,其特征在于,所述智能卡芯片包括:通信部,與外部裝置執(zhí)行接觸式通信和近距離無線通信中的至少之一;控制部,通過所述通信部與外部裝置進行通信,并生成一對私鑰和公鑰;以及存儲部,存儲生成的所述一對私鑰和公鑰,當從所述外部裝置接收到指令時,所述控制部在處理所述指令后,在待機模式期間生成一對私鑰和公鑰。7.根據(jù)權(quán)利要求5或6所述的智能卡芯片,其特征在于,所述控制部將生成所述一對私鑰和公鑰的過程分為兩個以上子過程來執(zhí)行。8.根據(jù)權(quán)利要求7所述的智能卡芯片,其特征在于,所述控制部以模冪運算為基準,對生成所述一對私鑰和公鑰的子過程進行分割。9.根據(jù)權(quán)利要求7所述的智能卡芯片,其特征在于,所述控制部以素數(shù)生成運算為基準,對生成所述一對私鑰和公鑰的子過程進行分割。10.根據(jù)權(quán)利要求7所述的智能卡芯片,其特征在于,所述控制部在執(zhí)行生成所述一對私鑰和公鑰的各子過程的空檔分配充電時間。11.一種硬件安全模塊,其特征在于,包括權(quán)利要求1、2、5、6中任一項所述的智能卡芯片。12.—種智能卡芯片中生成一對私鑰和公鑰的方法,其特征在于,包括如下步驟:所述智能卡芯片從外部裝置接收指令;所述智能卡芯片在處理指令的同時生成一對私鑰和公鑰;以及當完成指令處理時,所述智能卡芯片向所述外部裝置應(yīng)答指令處理完成。13.—種智能卡芯片中生成一對私鑰和公鑰的方法,其特征在于,包括如下步驟:所述智能卡芯片從外部裝置接收指令;所述智能卡芯片對指令進行處理;當完成指令處理時,所述智能卡芯片向所述外部裝置應(yīng)答指令處理完成;以及所述智能卡芯片在待機模式下生成一對私鑰和公鑰。14.根據(jù)權(quán)利要求12或13所述的方法,其特征在于,所述一對私鑰和公鑰的生成分為兩個以上子過程來執(zhí)行。15.根據(jù)權(quán)利要求14所述的方法,其特征在于,生成所述一對私鑰和公鑰的子過程以模冪運算為基準進行分割。16.根據(jù)權(quán)利要求14所述的方法,其特征在于,生成所述一對私鑰和公鑰的子過程以素數(shù)生成運算為基準進行分割。17.根據(jù)權(quán)利要求14所述的方法,其特征在于,在生成所述一對私鑰和公鑰的子過程的空檔執(zhí)行充電。18.根據(jù)權(quán)利要求12或13所述的方法,其特征在于,所述方法還包括如下步驟:所述智能卡芯片從所述外部裝置接收生成一對私鑰和公鑰的指令;所述智能卡芯片確認是否存在預(yù)先生成的一對私鑰和公鑰;以及如果存在預(yù)先生成的一對私鑰和公鑰,則所述智能卡芯片向所述外部裝置應(yīng)答所述一對私鑰和公鑰的生成。19.根據(jù)權(quán)利要求18所述的方法,其特征在于,所述方法還包括如下步驟:如果不存在預(yù)先生成的一對私鑰和公鑰,則所述智能卡芯片實時生成所述一對私鑰和公鑰,向所述外部裝置應(yīng)答?!疚臋n編號】H04L9/30GK105850074SQ201480070020【公開日】2016年8月10日【申請日】2014年12月23日【發(fā)明人】李政燁【申請人】密鑰對株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
金坛市| 梅河口市| 周至县| 古浪县| 华池县| 雅安市| 谷城县| 偃师市| 扬中市| 台中市| 玉门市| 沂南县| 博野县| 定日县| 婺源县| 河北省| 淮阳县| 土默特左旗| 明星| 栾川县| 双江| 贵溪市| 拉孜县| 观塘区| 沁源县| 六安市| 清新县| 彰化县| 天台县| 海口市| 屏东市| 昌宁县| 时尚| 宁夏| 讷河市| 永新县| 驻马店市| 广元市| 百色市| 尼玛县| 勐海县|