專利名稱:記憶卡及其讀取、數(shù)據(jù)加密、金鑰產(chǎn)生及密碼變更方法
技術(shù)領(lǐng)域:
本發(fā)明涉及ー種記憶卡及其讀取、數(shù)據(jù)加密、金鑰產(chǎn)生及密碼變更方法,特別是涉及一種應(yīng)用于行動裝置的記憶卡及其讀取、數(shù)據(jù)加密、金鑰產(chǎn)生及密碼變更方法。
背景技術(shù):
記憶卡擁有體積小、容量大及攜帯方便等優(yōu)點(diǎn),近年來,已成為行動裝置(例如手機(jī))用以儲存?zhèn)€人重要數(shù)據(jù)的儲存媒體。然而,當(dāng)記憶卡不小心遺失時,其中所儲存的數(shù)據(jù)也可能隨之被盜用。智慧卡(Smart Card)是ー種具有如微處理器、操作系統(tǒng)、記憶體等的集成電路晶片(Chip),因此,智慧卡可提供計算、加密等功能,使得智慧卡除了擁有儲存數(shù)據(jù)的功能外,還具有對所儲存的數(shù)據(jù)加以保護(hù)的功能。但是,以往的智慧卡只對其所儲存的數(shù)據(jù)作單層 的保護(hù),即僅比對使用者所輸入的密碼是否正確,這樣對數(shù)據(jù)的保護(hù)并不嚴(yán)密,且在智慧卡中儲存著供比對的密碼,也増加了智慧卡若遺失導(dǎo)致密碼被盜的可能性,在變更密碼時,現(xiàn)有的智慧卡需要將其所儲存的數(shù)據(jù)先進(jìn)行解密,再利用新密碼進(jìn)行加密,如此也耗費(fèi)了過多的作業(yè)時間。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種可以更加確保數(shù)據(jù)的安全性的記憶卡的讀取方法。本發(fā)明記憶卡的讀取方法,是于ー控制單元中執(zhí)行,用以讀取一記憶卡中的數(shù)據(jù),該讀取方法包含以下步驟(A)接收一個人識別碼(Personal Identification Number code, PIN code);(B)判別個人識別碼是否正確,若是,則執(zhí)行步驟(C);(C)從記憶卡中取得一主金鑰;(D)利用主金鑰對記憶卡的一數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,以取得多數(shù)個分別對應(yīng)記憶卡的一數(shù)據(jù)儲存區(qū)中多數(shù)個檔案的數(shù)據(jù)金鑰;(E)利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)的檔案進(jìn)行解密,以讀取所述檔案中的數(shù)據(jù)。如此通過主金鑰及數(shù)據(jù)金鑰的雙重保護(hù),以及每個檔案是分別利用唯一且不同的數(shù)據(jù)金鑰加密,使得每個檔案能獨(dú)立控管,并提供不同存取權(quán)限的組合的功能,如此將大幅提升數(shù)據(jù)的安全性。其中,步驟(A)是由該控制單元的一使用者接ロ接收該個人識別碼。進(jìn)ー步來說,針對于步驟(B)中,判別該個人識別碼是否正確,可包含以下子步驟(B-I)使用者接ロ將該個人識別碼傳送至控制單元的一應(yīng)用程序接ロ ;(B-2)該應(yīng)用程序接ロ將個人識別碼打散及攪亂后傳送至控制單元的ー雜湊值產(chǎn)生程序;(B-3)雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,井根據(jù)重組后的個人識別碼產(chǎn)生ー第一雜湊值;及(B-4)控制單元的一識別程序判別第一雜湊值是否與一第二雜湊值相同,若是,則執(zhí)行步驟(C)。如此ー來,利用雜湊值比對的方式來判別個人識別碼的正確性,可降低個人識別碼被竊取的機(jī)率。而第二雜湊值是由本發(fā)明的金鑰產(chǎn)生方法產(chǎn)生,該金鑰產(chǎn)生方法是于ー控制單元中執(zhí)行,用以產(chǎn)生一主金鑰以對一記憶卡中的數(shù)據(jù)加密,其中包含以下步驟(A)控制單元的一使用者接ロ接收ー個人識別碼;(B)使用者接ロ將個人識別碼傳送至控制單元的一應(yīng)用程序接ロ ;(C)應(yīng)用程序接ロ將個人識別碼打散及攪亂后傳送至控制單元的一雜湊值產(chǎn)生程序;(D)雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,井根據(jù)重組后的個人識別碼產(chǎn)生一雜湊值(即前述第二雜湊值);(E)控制單元的一主金鑰產(chǎn)生程序產(chǎn)生與雜湊值具對應(yīng)關(guān)系的主金鑰 '及(F)主金鑰產(chǎn)生程序?qū)⒅鹘痂€儲存于ー記憶卡的一系統(tǒng)金鑰儲存區(qū)。此外,本發(fā)明的另一目的,還提供一種多重加密以提升數(shù)據(jù)安全性的記憶卡的數(shù)據(jù)加密方法。該記憶卡的數(shù)據(jù)加密方法,是于ー控制單元中執(zhí)行,用以對ー記憶卡中的數(shù)據(jù)加密,其步驟如下(A)開啟該記憶卡中多數(shù)個檔案,以供數(shù)據(jù)存入;(B)分別對應(yīng)根據(jù)所述檔案產(chǎn)生一對應(yīng)該檔案的數(shù)據(jù)金鑰;(C)利用所述數(shù)據(jù)金鑰對各自對應(yīng)的檔案進(jìn)行加密;(D)將加密后的所述數(shù)據(jù)金鑰儲存于該記憶卡的一數(shù)據(jù)金鑰儲存區(qū);(E)根據(jù)該數(shù)據(jù)金鑰儲存區(qū)產(chǎn)生ー主金鑰;(F)利用該主金鑰對該數(shù)據(jù)金鑰儲存區(qū)進(jìn)行加密 '及(G)將該主金鑰儲存于該記憶卡的一系統(tǒng)金鑰儲存區(qū)。再者,本發(fā)明還提供一種可執(zhí)行上述步驟的記憶卡,該記憶卡包含ー儲存模塊及一控制單元。儲存模塊包括一系統(tǒng)金鑰儲存區(qū)、一數(shù)據(jù)金鑰儲存區(qū)及一數(shù)據(jù)儲存區(qū);控制單元耦接于儲存模塊,該控制単元接收ー個人識別碼,并判別個人識別碼是否正確,若判定為正確,則從系統(tǒng)金鑰儲存區(qū)中取得一主金鑰,且先利用主金鑰對數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,以取得多數(shù)個分別對應(yīng)儲存于數(shù)據(jù)儲存區(qū)中多數(shù)個檔案的數(shù)據(jù)金鑰,再利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)的檔案進(jìn)行解密,以讀取所述檔案中的數(shù)據(jù)。其中,控制單元中可具有一使用者接ロ、一應(yīng)用程序接ロ、一雜湊值產(chǎn)生程序及一識別程序,于使用者接ロ接收個人識別碼,應(yīng)用程序接ロ將該個人識別碼打散及攪亂后傳送至雜湊值產(chǎn)生程序,雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,井根據(jù)重組后的個人識別碼產(chǎn)生一第一雜湊值,識別程序判別第一雜湊值是否與一第二雜湊值相同,若是,則判定個人識別碼為正確。此外,本發(fā)明的另一目的,還提供一種可以快速換密的記憶卡密碼的變更方法。 本變更方法,是于ー控制單元中執(zhí)行,該變更方法是首先接收ー個人識別碼,并判別該個人識別碼是否正確,若判定為正確,則從記憶卡中取得一主金鑰,再接收另一新個人識別碼,井根據(jù)該新個人識別碼產(chǎn)生另ー主金鑰,接著,先利用原先主金鑰對記憶卡的數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,再利用另一新主金鑰對數(shù)據(jù)金鑰儲存區(qū)進(jìn)行加密,并于加密后,將另一新主金鑰儲存于記憶卡的系統(tǒng)金鑰儲存區(qū)中,如此換密作業(yè)將不需將數(shù)據(jù)重新解密再加密,因此本記憶卡將具備快速換密的能力。本發(fā)明的有益效果在于I.通過雜湊值的比對來判別個人識別碼的正確性,可避免有心人士惡意掃描記憶卡而盜取密碼。2.個人識別碼是以打散及攪亂的方式傳輸,使得個人識別碼不連續(xù)存放,如此可降低個人識別碼被竊取的機(jī)率,更加確保傳輸上的安全性。3.數(shù)據(jù)儲存區(qū)中的各個檔案分別利用一隨機(jī)產(chǎn)生且唯一的數(shù)據(jù)金鑰加密,使得每個檔案可獨(dú)立控管,以達(dá)不同存取權(quán)限的組合的功能。 4.利用主金鑰及數(shù)據(jù)金鑰達(dá)到多重加密技術(shù),可提升數(shù)據(jù)加密的強(qiáng)度,更加確保數(shù)據(jù)的安全性。5.變更密碼時,僅需通過原先主金鑰及新主金鑰分別對數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密及加密,不需針對數(shù)據(jù)進(jìn)行加/解密,以節(jié)省系統(tǒng)作業(yè)的時間。
圖I是說明本發(fā)明記憶卡的讀取方法的較佳實(shí)施例的流程圖;圖2是說明記憶卡中的電路方塊示意圖;圖3是說明控制單元中所燒錄的程序;圖4是說明本讀取方法中控制單元是如何判別個人識別碼的正確性的流程圖;圖5是說明控制單元對數(shù)據(jù)進(jìn)行加密的流程圖;圖6是說明控制單元產(chǎn)生金鑰的流程圖;圖7是說明控制單元變更記憶卡密碼的流程圖;圖8是說明密碼未變更前,數(shù)據(jù)金鑰儲存區(qū)中的數(shù)據(jù)金鑰與數(shù)據(jù)儲存區(qū)中的數(shù)據(jù)的對應(yīng)關(guān)系;及圖9是說明密碼變更后,數(shù)據(jù)金鑰儲存區(qū)中的數(shù)據(jù)金鑰與數(shù)據(jù)儲存區(qū)中的數(shù)據(jù)的對應(yīng)關(guān)系。
具體實(shí)施例方式下面結(jié)合附圖及實(shí)施例對本發(fā)明進(jìn)行詳細(xì)說明。參閱圖I及圖2,為本發(fā)明記憶卡的讀取方法的較佳實(shí)施例,本實(shí)施例的讀取方法是應(yīng)用于一可內(nèi)建或由外部安裝于行動裝置的一記憶卡100中,該記憶卡100是一智慧卡(Smart Card),其中包含ー儲存模塊1,及ー耦接于儲存模塊I的控制單元2,在本實(shí)施例中,儲存模塊I與控制單元2是整合于同一個晶片(Chip)中,且行動裝置是以手機(jī)為例,但不以此為限。儲存模塊I包括——般數(shù)據(jù)儲存區(qū)(Normal Zone) 10及一隱密數(shù)據(jù)儲存區(qū)(Hidden Zone) 20。一般數(shù)據(jù)儲存區(qū)10用以儲存一般使用者常用或欲備份的數(shù)據(jù)等;隱密數(shù)據(jù)儲存區(qū)20則主要是用以儲存重要性較高的數(shù)據(jù),例如使用者帳號或密碼等,且在隱密數(shù)據(jù)儲存區(qū)20中可再區(qū)分出一系統(tǒng)金鑰儲存區(qū)(System Key Store) 21、一數(shù)據(jù)金鑰儲存區(qū)(Key Store) 22及一數(shù)據(jù)儲存區(qū)(Data Store) 23,系統(tǒng)金鑰儲存區(qū)21用以儲存一主金鑰(Master Key),及一與一個人識別碼(Personal Identification Number code,PIN code)有關(guān)的第二雜湊值;數(shù)據(jù)金鑰儲存區(qū)22用以儲存多數(shù)個數(shù)據(jù)金鑰(Data Key);數(shù)據(jù)儲存區(qū)23中具有多數(shù)個可分別供所述數(shù)據(jù)金鑰加密的檔案,而重要性較高的數(shù)據(jù)則是儲存于這些檔案中。配合參閱圖3,控制單元2內(nèi)儲有ー使用者接ロ 200、一應(yīng)用程序接ロ(Application Programming Interface, API) 201、一雜湊值產(chǎn)生程序 202、一識別程序 203及一主金鑰產(chǎn)生程序204。特別說明的是,隱密數(shù)據(jù)儲存區(qū)20僅能由控制單元2的應(yīng)用程序接ロ 201偵測到,行動裝置的作業(yè)系統(tǒng)僅能偵測到一般數(shù)據(jù)儲存區(qū)10,以確保隱密數(shù)據(jù)儲存區(qū)20中數(shù)據(jù)的隱密性。 參閱圖I、圖2及圖3,以下將詳細(xì)說明控制単元2是如何讀取儲存模塊I的隱密數(shù)據(jù)儲存區(qū)20中的數(shù)據(jù),以及隱密數(shù)據(jù)儲存區(qū)20中數(shù)據(jù)的加/解密流程。步驟S10,控制單元2的使用者接ロ 200接收一由使用者輸入的個人識別碼。接著步驟S20,控制單元2會判別使用者所輸入的個人識別碼是否正確,若輸入正確,則執(zhí)行步驟S30 ;若輸入錯誤,則執(zhí)行步驟S60,控制單元2會判斷密碼輸入錯誤的次數(shù)是否達(dá)一特定次數(shù)(例如10次),若是,則結(jié)束流程,并且鎖定記憶卡100,使得使用者將無法看到隱密數(shù)據(jù)儲存區(qū)20中的數(shù)據(jù),也無法對其進(jìn)行讀取、編輯等動作。若密碼輸入錯誤的次數(shù)未達(dá)特定次數(shù),則重復(fù)執(zhí)行步驟S10。為了防止有心人士刻意掃描記憶卡100以竊取隱密數(shù)據(jù)儲存區(qū)20中的數(shù)據(jù),在步驟S20中,控制單元2會利用個人識別碼產(chǎn)生雜湊值,并通過雜湊值的比對來判斷個人識別碼的正確性,其細(xì)部動作如下參閱圖2、圖3及圖4,使用者接ロ 200先將該個人識別碼傳送至應(yīng)用程序接ロ
201(步驟S21),應(yīng)用程序接ロ 201將該個人識別碼打散及攪亂后傳送至雜湊值產(chǎn)生程序
202(步驟S22),雜湊值產(chǎn)生程序202將打散及攪亂后的個人識別碼重組,井根據(jù)重組后的個人識別碼產(chǎn)生一第一雜湊值(步驟S23),最后識別程序203可判別由個人識別碼所產(chǎn)生的第一雜湊值是否與儲存于系統(tǒng)金鑰儲存區(qū)21中的第二雜湊值相同(步驟S24),若第一雜湊值與第二雜湊值相同,則表示使用者所輸入的個人識別碼無誤,控制単元2將會執(zhí)行步驟S30。相反地,則執(zhí)行步驟S60。特別說明的是,本實(shí)施例的個人識別碼是由8 24個以上的字元所組成,且使用者接ロ 200是將每一個字元分別傳送至應(yīng)用程序接ロ 201,使得應(yīng)用程序接ロ 201會將每ー次接收到的字元與之前接收到且已打散攪亂的字元重復(fù)打散并攪亂,也就是說,整個個人識別碼中的所有字元皆不連續(xù)存放,如此可增加個人識別碼傳輸上的安全。步驟S30,控制單元2從儲存模塊I的系統(tǒng)金鑰儲存區(qū)21中取得主金鑰。步驟S40,控制單元2利用主金鑰對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行解密,以取得多數(shù)個分別對應(yīng)儲存于數(shù)據(jù)儲存區(qū)23中的多數(shù)個檔案的數(shù)據(jù)金鑰。步驟S50,控制單元2利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)位于數(shù)據(jù)儲存區(qū)23中的檔案進(jìn)行解密,以取得所述檔案中的數(shù)據(jù),并供使用者對這些檔案執(zhí)行讀/存取數(shù)據(jù)、變更名稱、格式化等檔案管理功能。換句話說,使用者通過行動裝置的使用者接ロ輸入個人識別碼后,控制單元2會以比對雜湊值的方式來判斷該個人識別碼的正確性,以增加記憶卡100的安全性,且個人識別碼是以打散及攪亂的方式傳輸,如此將可避免記憶卡100掃描的攻擊。再者,在確認(rèn)個人識別碼輸入無誤后,控制單元2會先取得主金鑰,并對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行第一次的解密,再利用解密出的數(shù)據(jù)金鑰分別對數(shù)據(jù)儲存區(qū)23中的各個檔案進(jìn)行第二次的解密,以取得其中被保護(hù)的數(shù)據(jù),如此多重加密技術(shù)可更提升數(shù)據(jù)的保密性,此外,每個位于數(shù)據(jù)儲存區(qū)23中的檔案各自獨(dú)立且皆有對應(yīng)且唯一的數(shù)據(jù)金鑰保護(hù),將可大幅降低隱密數(shù)據(jù)儲存區(qū)20中數(shù)據(jù)被竊取的機(jī)率。相反地,參閱圖5,當(dāng)控制單元2將數(shù)據(jù)儲存區(qū)23中的各個檔案開啟,以供使用者 將重要數(shù)據(jù)存入后(步驟S71),會分別根據(jù)各個檔案隨機(jī)(Random)產(chǎn)生ー對應(yīng)該檔案的數(shù)據(jù)金鑰(步驟S72),接著,控制單元2利用所述數(shù)據(jù)金鑰對各自對應(yīng)的檔案進(jìn)行第一次的加密(步驟S73),并于加密后將所述數(shù)據(jù)金鑰儲存于數(shù)據(jù)金鑰儲存區(qū)22中(步驟S74),控制単元2會再根據(jù)數(shù)據(jù)金鑰儲存區(qū)22隨機(jī)產(chǎn)生一主金鑰(步驟S75),并利用主金鑰對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行第二次的加密(步驟S76),最后再將主金鑰儲存于系統(tǒng)金鑰儲存區(qū)21 (步驟S77),如此可達(dá)到多重加密以提升數(shù)據(jù)的保密性的功效。然而參閱圖3及圖6,在本實(shí)施例中,當(dāng)記憶卡100第一次設(shè)定密碼時,控制單元2會將使用者所輸入的個人識別碼轉(zhuǎn)換成第二雜湊值,并儲存于系統(tǒng)金鑰儲存區(qū)21,其詳細(xì)步驟如下步驟S81,使用者接ロ 200接收一由使用者輸入的個人識別碼。步驟S82,使用者接ロ 200將個人識別碼傳送至應(yīng)用程序接ロ 201。步驟S83,應(yīng)用程序接ロ 201將個人識別碼打散及攪亂后傳送至雜湊值產(chǎn)生程序202。步驟S84,雜湊值產(chǎn)生程序202將打散及攪亂后的個人識別碼重組,井根據(jù)重組后的個人識別碼產(chǎn)生第二雜湊值。特別說明的是,使用者欲設(shè)定密碼時,使用者接ロ 200會提供使用者設(shè)定密碼的畫面,雜湊值產(chǎn)生程序202會產(chǎn)生第二雜湊值并儲存于系統(tǒng)金鑰儲存區(qū)21,而其后使用者輸入密碼(即個人識別碼)時,雜湊值產(chǎn)生程序202則是根據(jù)該個人識別碼產(chǎn)生第一雜湊值,并與儲存于系統(tǒng)金鑰儲存區(qū)21的第二雜湊值比較,以判斷該個人識別碼是否正確。步驟S85,主金鑰產(chǎn)生程序204產(chǎn)生與第二雜湊值具對應(yīng)關(guān)系的主金鑰。在本實(shí)施例中,主金鑰產(chǎn)生程序204是根據(jù)第二雜湊值直接產(chǎn)生主金鑰,但也可以是主金鑰產(chǎn)生程序204先隨機(jī)產(chǎn)生主金鑰,再將該主金鑰對應(yīng)于第二雜湊值,所以不以本實(shí)施例為限。步驟S86,主金鑰產(chǎn)生程序204將主金鑰儲存于ー記憶卡100的系統(tǒng)金鑰儲存區(qū)21。參閱圖7、圖8及圖9,當(dāng)使用者欲變更密碼時,控制單元2是利用原先的主金鑰先對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行解密,以更換其中的數(shù)據(jù)金鑰,接著再利用新的主金鑰對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行加密,如此將不需要針對數(shù)據(jù)進(jìn)行加/解密,以節(jié)省系統(tǒng)作業(yè)的時間。其細(xì)部動作如下步驟S91,控制單元2的使用者接ロ 200接收一由使用者輸入的個人識別碼。
步驟S92,控制單元2判別該個人識別碼是否正確,若是,則執(zhí)行步驟S93 ;若否,則執(zhí)行步驟S99,控制單元2會判斷密碼輸入錯誤的次數(shù)是否達(dá)一特定次數(shù),若是,則結(jié)束流程,并且鎖定記憶卡100,使得使用者將無法看到隱密數(shù)據(jù)儲存區(qū)20中的數(shù)據(jù),也無法對其進(jìn)行讀取、編輯等動作。若密碼輸入錯誤的次數(shù)未達(dá)特定次數(shù),則重復(fù)執(zhí)行步驟S91。步驟S93,控制單元2從記憶卡100的系統(tǒng)金鑰儲存區(qū)21中取得原先的主金鑰。步驟S94,控制單元2的使用者接ロ 200接收另一新的個人識別碼,即使用者所輸入的新密碼。步驟S95,控制單元2根據(jù)該另一個人識別碼產(chǎn)生另ー主金鑰,其方法可如之前所述,控制單元2的主金鑰產(chǎn)生程序204可以根據(jù)雜湊值直接產(chǎn)生主金鑰,或是隨機(jī)產(chǎn)生主金 鑰,并不限定何種方式。步驟S96,控制單元2利用步驟S93中所取得的主金鑰(即原先的主金鑰)對記憶卡100的數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行解密。于圖8中,數(shù)據(jù)金鑰儲存區(qū)22儲存多個數(shù)據(jù)金鑰DK I DKN,數(shù)據(jù)儲存區(qū)23則儲存多個地址對應(yīng)所述數(shù)據(jù)金鑰DKl DKN的數(shù)據(jù)datal dataN,所述數(shù)據(jù)金鑰DKl DKN是用于分別針對所述數(shù)據(jù)datal dataN進(jìn)行加/解密。步驟S97,利用新的主金鑰對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行加密。如圖9所示,數(shù)據(jù)金鑰儲存區(qū)22中的數(shù)據(jù)金鑰會因?yàn)樾轮鹘痂€的設(shè)定而變更為DK' I DK' N,但所述數(shù)據(jù)金鑰DK' I DK' N的地址并無改變,所以同樣能針對所述數(shù)據(jù)datal dataN進(jìn)行加/解密。如此ー來,在本發(fā)明的主金鑰及數(shù)據(jù)金鑰雙重加密的設(shè)計下,換密作業(yè)將不需將數(shù)據(jù)重新解密再加密,因此本記憶卡100將具備快速換密的能力。步驟S98,將新的主金鑰儲存于該記憶卡的系統(tǒng)金鑰儲存區(qū)21。此外,本實(shí)施例的讀取方法可為ー內(nèi)儲于ー電腦程序產(chǎn)品(例如光碟)的讀取程序,當(dāng)ー電子裝置(例如電腦)載入該讀取程序并執(zhí)行后,可完成上述的讀取方法。且在另ー實(shí)施例中,記憶卡100可為一安全數(shù)字(Secure Digital, SD)卡,其中可以只包括儲存模塊1,而控制単元2則可設(shè)于行動裝置中,如此同樣能借由控制單元2執(zhí)行上述步驟而對儲存模塊I進(jìn)行加/解密、讀/存取等動作。綜上所述,本發(fā)明記憶卡100的讀取方法,借由將使用者所輸入的個人識別碼轉(zhuǎn)換成雜湊值來比對,以降低個人識別碼被竊取的機(jī)率,且個人識別碼是以打散及攪亂的方式傳輸,也更加確保傳輸上的安全性。再者,數(shù)據(jù)儲存區(qū)23中的各個檔案分別利用一隨機(jī)產(chǎn)生且唯一的數(shù)據(jù)金鑰加密,如此將可達(dá)到每個檔案獨(dú)立控管且可有不同存取權(quán)限的組合的功能,更加確保數(shù)據(jù)的安全性,不僅如此,用于儲存各個數(shù)據(jù)金鑰的數(shù)據(jù)金鑰儲存區(qū)22還再利用一主金鑰進(jìn)行第二次的加密,以達(dá)到多重加密技術(shù),更加提升數(shù)據(jù)加密的強(qiáng)度,且在更換密碼時,也僅需要針對數(shù)據(jù)金鑰儲存區(qū)22進(jìn)行加/解密,更節(jié)省了系統(tǒng)作業(yè)時間,所以確實(shí)能達(dá)成本發(fā)明的目的。
權(quán)利要求
1.一種記憶卡的讀取方法,是于一控制單元中執(zhí)行,用以讀取一記憶卡中的數(shù)據(jù);其特征在于 該讀取方法包含以下步驟 (A)接收一個人識別碼; (B)判別該個人識別碼是否正確,若是,則執(zhí)行步驟(C); (C)從該記憶卡中取得一主金鑰; (D)利用該主金鑰對該記憶卡的一數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,以取得多數(shù)個分別對應(yīng)該記憶卡的一數(shù)據(jù)儲存區(qū)中多數(shù)個檔案的數(shù)據(jù)金鑰; (E)利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)的檔案進(jìn)行解密,以讀取所述檔案中的數(shù)據(jù)。
2.根據(jù)權(quán)利要求I所述的記憶卡的讀取方法,其特征在于該步驟(A)是由該控制單元的一使用者接口接收該個人識別碼。
3.根據(jù)權(quán)利要求2所述的記憶卡的讀取方法,其特征在于該步驟(B)包含以下子步驟 (B-I)該使用者接口將該個人識別碼傳送至該控制單元的一應(yīng)用程序接口 ; (B-2)該應(yīng)用程序接口會將該個人識別碼打散及攪亂后傳送至該控制單元的一雜湊值產(chǎn)生程序; (B-3)該雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,并根據(jù)重組后的個人識別碼產(chǎn)生一第一雜湊值;及 (B-4)該控制單元的一識別程序判別該第一雜湊值是否與一第二雜湊值相同,若是,則執(zhí)行步驟(C)。
4.根據(jù)權(quán)利要求3所述的記憶卡的讀取方法,其特征在于該步驟(C)是從該記憶卡的一系統(tǒng)金鑰儲存區(qū)中取得該主金鑰。
5.一種記憶卡的數(shù)據(jù)加密方法,是于一控制單元中執(zhí)行,用以對一記憶卡中的數(shù)據(jù)加密;其特征在于 該數(shù)據(jù)加密方法包含以下步驟 (A)開啟該記憶卡中多數(shù)個檔案,以供數(shù)據(jù)存入; (B)分別對應(yīng)根據(jù)所述檔案產(chǎn)生一對應(yīng)該檔案的數(shù)據(jù)金鑰; (C)利用所述數(shù)據(jù)金鑰對各自對應(yīng)的檔案進(jìn)行加密; (D)將加密后的所述數(shù)據(jù)金鑰儲存于該記憶卡的一數(shù)據(jù)金鑰儲存區(qū); (E)根據(jù)該數(shù)據(jù)金鑰儲存區(qū)產(chǎn)生一主金鑰; (F)利用該主金鑰對該數(shù)據(jù)金鑰儲存區(qū)進(jìn)行加密'及 (G)將該主金鑰儲存于該記憶卡的一系統(tǒng)金鑰儲存區(qū)。
6.根據(jù)權(quán)利要求5所述的記憶卡的數(shù)據(jù)加密方法,其特征在于該步驟(B)是分別對應(yīng)根據(jù)所述檔案隨機(jī)產(chǎn)生所述數(shù)據(jù)金鑰。
7.—種記憶卡;其特征在于 該記憶卡,包含 一儲存模塊,包括一系統(tǒng)金鑰儲存區(qū)、一數(shù)據(jù)金鑰儲存區(qū)及一數(shù)據(jù)儲存區(qū) '及一控制單元,耦接于該儲存模塊,該控制單元接收一個人識別碼,并判別該個人識別碼是否正確,若判定為正確,則從該系統(tǒng)金鑰儲存區(qū)中取得一主金鑰,先利用該主金鑰對該數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,以取得多數(shù)個分別對應(yīng)儲存于該數(shù)據(jù)儲存區(qū)中多數(shù)個檔案的數(shù)據(jù)金鑰,再利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)的檔案進(jìn)行解密,以讀取所述檔案中的數(shù)據(jù)。
8.根據(jù)權(quán)利要求7所述的記憶卡,其特征在于該控制單元中具有一使用者接口、一應(yīng)用程序接口、一雜湊值產(chǎn)生程序及一識別程序,于該使用者接口接收該個人識別碼,該應(yīng)用程序接口將該個人識別碼打散及攪亂后傳送至該雜湊值產(chǎn)生程序,該雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,并根據(jù)重組后的個人識別碼產(chǎn)生一第一雜湊值,該識別程序判別該第一雜湊值是否與一第二雜湊值相同,若是,則判定該個人識別碼為正確。
9.根據(jù)權(quán)利要求8所述的記憶卡,其特征在于該第二雜湊值是儲存于該系統(tǒng)金鑰儲存區(qū)中。
10.根據(jù)權(quán)利要求9所述的記憶卡,其特征在于該儲存模塊還包括一用以儲存一般數(shù)據(jù)的一般數(shù)據(jù)儲存區(qū),及一用以儲存重要數(shù)據(jù)的隱密數(shù)據(jù)儲存區(qū),該系統(tǒng)金鑰儲存區(qū)、該數(shù)據(jù)金鑰儲存區(qū)及該數(shù)據(jù)儲存區(qū)則是位于該隱密數(shù)據(jù)儲存區(qū)中。
11.一種金鑰產(chǎn)生方法,是于一控制單元中執(zhí)行,用以產(chǎn)生一主金鑰以對一記憶卡中的數(shù)據(jù)加密,其特征在于 該金鑰產(chǎn)生方法包含以下步驟 (A)該控制單元的一使用者接口接收一個人識別碼; (B)該使用者接口將該個人識別碼傳送至該控制單元的一應(yīng)用程序接口; (C)該應(yīng)用程序接口將該個人識別碼打散及攪亂后傳送至該控制單元的一雜湊值產(chǎn)生程序; (D)該雜湊值產(chǎn)生程序?qū)⒋蛏⒓皵噥y后的個人識別碼重組,并根據(jù)重組后的個人識別碼產(chǎn)生一雜湊值; (E)該控制單元的一主金鑰產(chǎn)生程序產(chǎn)生與該雜湊值具對應(yīng)關(guān)系的主金鑰;及 (F)該主金鑰產(chǎn)生程序?qū)⒃撝鹘痂€儲存于該記憶卡的一系統(tǒng)金鑰儲存區(qū)。
12.根據(jù)權(quán)利要求11所述的金鑰產(chǎn)生方法,其特征在于該步驟(E)中,該主金鑰產(chǎn)生程序是根據(jù)該雜湊值產(chǎn)生該主金鑰。
13.根據(jù)權(quán)利要求11所述的金鑰產(chǎn)生方法,其特征在于該步驟(E)中,該主金鑰產(chǎn)生程序是先隨機(jī)產(chǎn)生該主金鑰,再將該主金鑰對應(yīng)于該雜湊值。
14.一種記憶卡密碼的變更方法,是于一控制單元中執(zhí)行,其特征在于 該變更方法包含以下步驟 (A)接收一個人識別碼; (B)判別該個人識別碼是否正確,若是,則執(zhí)行步驟(C); (C)從該記憶卡中取得一主金鑰; (D)接收另一個人識別碼; (E)根據(jù)該另一個人識別碼產(chǎn)生另一主金鑰; (F)利用該主金鑰對該記憶卡的一數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密; (G)利用該另一主金鑰對該數(shù)據(jù)金鑰儲存區(qū)進(jìn)行加密; (H)將該另一主金鑰儲存于該記憶卡的一系統(tǒng)金鑰儲存區(qū)。
全文摘要
一種記憶卡的讀取方法,是于一控制單元中執(zhí)行,用以讀取一記憶卡中的數(shù)據(jù),該讀取方法首先會接收一個人識別碼,然后判別該個人識別碼是否正確,若是,則從記憶卡中取得一主金鑰,并利用該主金鑰對記憶卡的一數(shù)據(jù)金鑰儲存區(qū)進(jìn)行解密,以取得多數(shù)個分別對應(yīng)記憶卡的一數(shù)據(jù)儲存區(qū)中多數(shù)個檔案的數(shù)據(jù)金鑰,接著利用所述數(shù)據(jù)金鑰分別針對其對應(yīng)的檔案進(jìn)行解密,以讀取所述檔案中的數(shù)據(jù),如此一來,通過主金鑰及數(shù)據(jù)金鑰的雙重保護(hù),以及,且每個檔案分別利用唯一且不同的數(shù)據(jù)金鑰加密,使得每個檔案獨(dú)立控管,如此將可更加確保數(shù)據(jù)的安全性。
文檔編號G06F21/00GK102768716SQ20121013353
公開日2012年11月7日 申請日期2012年5月2日 優(yōu)先權(quán)日2011年5月4日
發(fā)明者楊建綱 申請人:楊建綱