透明加解密sd卡及其實現方法
2023-04-22 23:35:01
專利名稱:透明加解密sd卡及其實現方法
技術領域:
本發明涉及一種通過虛擬文件系統實現外部設備與S D卡主控晶片之間的命令交互,通過加解密文件系統對SD卡存儲區中的數據進行加解密處理的透明加解密SD卡及其實現方法。
背景技術:
SD卡(Secure Digital Memory Card)中文翻譯為安全數碼卡,是一種基於半導體快閃記憶器的新一代記憶設備,它被廣泛地於可攜式裝置上使用,例如數位相機、智慧型手機、PAD等。SD卡雖然體積小,重量輕,但卻擁有高記憶容量、快速數據傳輸率、極大的移動靈活性以及很好的安全性。
一般的SD卡如果掛載Flash存儲區,外部設備可直接訪問Flash對數據進行讀寫操作。如果要擴展SD卡的功能且沒有掛載Flash,外部設備就無法與SD卡進行命令和數據的交互,需要提供交互的接口和界面。目前有通過安裝驅動程序來解決上述問題,但驅動程序是根據使用設備類型的不同編寫不同的驅動程序,每種驅動程序提供給外部設備的接口也不相同,這種複雜的方式在實際應用中很難被推廣。因此,迫切需要一種簡單、易操作的方式,實現SD卡與外部設備的交互。隨著SD卡的廣泛使用,SD卡所存儲數據的安全性日益受到人們的關注。目前,有通過密碼保護來控制對SD卡的訪問,但SD卡存儲區的數據包括密碼仍然是以明文的形式存儲,這樣很容易通過非正常手段破解密碼或跳過密碼驗證直接獲取SD中的明文數據,這樣用戶信息就容易被洩露。因此,如何對SD卡內部的敏感信息進行有效保護,已經成為亟待解決的問題。
發明內容
本發明的目的在於克服現有技術的不足而提供一種訪問SD卡存儲區,同時通過對寫入文件進行加密存儲,保證SD卡中數據的安全的透明加解密SD卡及其實現方法。本發明的目的是這樣實現的
一種透明加解密SD卡,包括SD卡主控晶片、NandFlash存儲器,其特徵在於
SD卡主控晶片具有為外部設備與SD卡主控晶片連接提供橋梁的SDIO接口以及連接SD卡主控晶片和NandFlash存儲器的Nand接口;SD卡主控晶片還包括通過片內作業系統COS實現的虛擬文件系統模塊和加解密文件系統模塊;SD卡主控晶片作為外部設備與SD卡內部組件的橋梁用來接收和執行命令;
SDIO接口用於連接智慧型手機、電腦等外部設備和SD卡主控晶片;Nand接口用來連接SD卡主控晶片和NandFlash存儲器的NandFlash存儲區;NandFlash存儲器負責數據的存儲;
虛擬文件系統模塊是通過片內作業系統COS虛擬出的一個文件系統;該虛擬文件系統模塊會虛擬出文件系統存儲扇區的數據,用來對外部設備發來的讀寫指令作出回應,實現外部設備與SD卡的正常通訊,外部設備發送讀卡指令,虛擬文件系統作出回應,外部設備與SD卡建立連接;
加解密文件系統模塊通過國密算法對寫入或讀取的數據進行加解密,使得寫入的數據以密文的形式存儲;用戶通過外部應用程式發送讀取指令,片內作業系統COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對文件進行解密後,通過SDIO接口發送給外部設備,經過應用程式解析為可讀文件供用戶讀取;用戶通過外部應用程式發送寫入指令,片內作業系統COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對寫入的數據進行加密後,通過Nand接口發送給NandFlash存儲器,寫入的數據以密文的形式存儲於NandFlash存儲器。透明加解密是指數據在使用過程中,系統自動對數據進行加解密操作,不改變用戶對文件的打開、讀、寫的訪問習慣,無需用戶的幹預,表面看來,訪問加密的文件和訪問未加密的文件基本相同,對合法用戶來說這些加密文件是「透明的」,但對於沒有訪問權限的 用戶,即使通過非常規手段得到加密文件也無法使用。 虛擬文件系統為外部設備與SD卡之間連接和通訊提供接口。一種透明加解密SD卡的實現方法,其特徵在於該方法包括以下步驟
步驟I)、SD卡加電,片內作業系統COS啟動;
步驟2)、片內作業系統COS建立虛擬文件系統並虛擬出文件系統存儲扇區的數據;步驟3)、外部設備發送讀卡指令,虛擬文件系統調用虛擬的存儲扇區數據作出回應,夕卜部設備與SD卡建立連接;
步驟4)、用戶通過外部應用程式寫入PIN碼驗證口令,片內作業系統COS接收PIN碼驗證口令並進行對比驗證;
步驟5)、驗證成功,則主控晶片掛載NandFlash存儲器,虛擬文件系統切換到加解密文件系統,否則,主控晶片不掛載NandFlash存儲器中,用戶無法訪問NandFlash存儲器中的數據;
步驟6)、用戶通過外部應用程式發送讀寫指令,片內作業系統COS調用加解密文件系統對NandFlash存儲器中的文件進行解密供用戶讀取或對寫入的數據進行加密存入於NandFlash存儲器的存儲區;
步驟7)操作完成關閉系統。步驟5)中,需要對口令驗證的次數進行限制,超過驗證次數,則會對SD卡進行鎖定,需要進行解鎖才能再次正常使用。本發明的特點及積極效果如下第一,採用虛擬文件系統為外部設備和SD卡之間提供接口,無需安裝驅動就可實現外部設備與SD卡之間的通訊連接;第二,通過文件加解密系統,對存入的數據進行加密,使得SD卡存儲區的數據以密文的形式存儲,有效保障了SD卡存儲數據的安全;第三,採用PIN碼進行口令驗證,保證用戶數據不被非法訪問,防止了 SD卡中信息的洩露;第四,未通過口令驗證時,用戶無法訪問NandFlash存儲區,通過軟體方式實現了對SD卡的防寫,相對於目前部分SD卡通過覆寫開關控制用戶寫入操作,更方便且不易對SD卡造成損害。
圖I為本發明的透明加解密SD卡結構原理圖。圖2為本發明的透明加解密SD卡的實現方法流程圖。
具體實施方式
如圖I所示,一種透明加解密SD卡,包括SD卡主控晶片2和NandFlash存儲器6,其特徵在於SD卡主控晶片2具有為外部設備與SD卡主控晶片2連接提供橋梁的SDIO接口 I以及連接SD卡主控晶片2和NandFlash存儲器6的Nand接口 5 ;SD卡主控晶片2還包括通過片內作業系統COS實現的虛擬文件系統模塊3和加解密文件系統模塊4 ;
SDIO接口 I用於連接智慧型手機、電腦等外部設備和SD卡主控晶片2,SD卡主控晶片2作為外部設備與SD卡內部組件的橋梁用來接收和執行命令;Nand接口 5用來連接SD卡主控晶片2和NandFlash存儲器6的存儲區;NandFlash存儲器6負責數據的存儲;
虛擬文件系統模塊3是通過片內作業系統COS虛擬出的一個文件系統;虛擬文件系統模塊3會虛擬出文件系統存儲扇區的數據,用來對外部設備發來的讀寫指令作出回應,實現外部設備與SD卡的正常通訊,外部設備發送讀卡指令,虛擬文件系統作出回應,外部設備與SD卡建立連接;C0S的全稱是Chip Operating System(片內作業系統),它一般是緊緊圍繞著它所服務的智慧卡的特點而開發的;
加解密文件系統通過國密算法對寫入或讀取的數據進行加解密,使得寫入的數據以密文的形式存儲;用戶通過外部應用程式發送讀取指令,COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對文件進行解密後,通過SDIO接口發送給外部設備,經過應用程式解析為可讀文件供用戶讀取;用戶通過外部應用程式發送寫入指令,COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對寫入的數據進行加密後,通過Nand接口發送給NandFlash存儲器,寫入的數據以密文的形式存儲於NandFlash存儲器。所述的透明加解密是指數據在使用過程中,系統自動對數據進行加解密操作,不改變用戶對文件的訪問(打開、讀、寫等)習慣,無需用戶的幹預,表面看來,訪問加密的文件和訪問未加密的文件基本相同,因此對合法用戶來說這些加密文件是「透明的」,但對於沒有訪問權限的用戶,即使通過非常規手段得到加密文件也無法使用。所述的虛擬文件系統3為外部設備與SD卡之間連接和通訊提供接口。如圖2所示,一種透明加解密SD卡的實現方法,其特徵在於
該方法包括以下步驟
步驟I) SD卡加電,COS系統啟動;
步驟2) COS建立虛擬文件系統3並虛擬出文件系統存儲扇區的數據;
步驟3)外部設備發送讀卡指令,虛擬文件系統3調用虛擬的存儲扇區數據作出回應,外部設備與SD卡建立連接;
步驟4)用戶通過外部應用程式寫入PIN碼驗證口令,COS接收PIN碼驗證口令並進行對比驗證;
步驟5)驗證成功,則主控晶片2掛載NandFlash6,虛擬文件系統3切換到文件加解密系統4 ;否則,主控晶片2不掛載NandFlash6中,用戶無法訪問NandFlash6中的數據;步驟6)用戶通過外部應用程式發送讀寫指令,COS調用文件加解密系統4對NandFlash6中的文件進行解密供用戶讀取或對寫入的數據進行加密存入於NandFlash6存儲區;
步驟7)操作完成關閉系統。所述的步驟5)中,需要對口令驗證的次數進行限制,超過驗證次數,則會對SD卡 進行鎖定,需要進行解鎖才能再次正常使用。
權利要求
1.一種透明加解密SD卡,包括SD卡主控晶片、NandFlash存儲器,其特徵在於 SD卡主控晶片具有為外部設備與SD卡主控晶片連接提供橋梁的SDIO接口以及連接SD卡主控晶片和NandFlash存儲器的Nand接口;SD卡主控晶片還包括通過片內作業系統COS實現的虛擬文件系統模塊和加解密文件系統模塊;SD卡主控晶片作為外部設備與SD卡內部組件的橋梁用來接收和執行命令; SDIO接口用於連接智慧型手機、電腦等外部設備和SD卡主控晶片;Nand接口用來連接SD卡主控晶片和NandFlash存儲器的NandFlash存儲區;NandFlash存儲器負責數據的存儲; 虛擬文件系統模塊是通過片內作業系統COS虛擬出的一個文件系統;該虛擬文件系統模塊會虛擬出文件系統存儲扇區的數據,用來對外部設備發來的讀寫指令作出回應,實現外部設備與SD卡的正常通訊,外部設備發送讀卡指令,虛擬文件系統作出回應,外部設備與SD卡建立連接; 加解密文件系統模塊通過國密算法對寫入或讀取的數據進行加解密,使得寫入的數據以密文的形式存儲;用戶通過外部應用程式發送讀取指令,片內作業系統COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對文件進行解密後,通過SDIO接口發送給外部設備,經過應用程式解析為可讀文件供用戶讀取;用戶通過外部應用程式發送寫入指令,片內作業系統COS讀取NandFlash存儲器中扇區數據並調用加解密文件系統對寫入的數據進行加密後,通過Nand接口發送給NandFlash存儲器,寫入的數據以密文的形式存儲於NandFlash存儲器。
2.根據權利要求I所述的透明加解密SD卡,其特徵在於透明加解密是指數據在使用過程中,系統自動對數據進行加解密操作,不改變用戶對文件的打開、讀、寫的訪問習慣,無需用戶的幹預,表面看來,訪問加密的文件和訪問未加密的文件基本相同,對合法用戶來說這些加密文件是「透明的」,但對於沒有訪問權限的用戶,即使通過非常規手段得到加密文件也無法使用。
3.根據權利要求I所述的透明加解密SD卡,其特徵在於虛擬文件系統為外部設備與SD卡之間連接和通訊提供接口。
4.一種透明加解密SD卡的實現方法,其特徵在於該方法包括以下步驟 步驟I)、SD卡加電,片內作業系統COS啟動; 步驟2)、片內作業系統COS建立虛擬文件系統並虛擬出文件系統存儲扇區的數據; 步驟3)、外部設備發送讀卡指令,虛擬文件系統調用虛擬的存儲扇區數據作出回應,夕卜部設備與SD卡建立連接; 步驟4)、用戶通過外部應用程式寫入PIN碼驗證口令,片內作業系統COS接收PIN碼驗證口令並進行對比驗證; 步驟5)、驗證成功,則主控晶片掛載NandFlash存儲器,虛擬文件系統切換到加解密文件系統,否則,主控晶片不掛載NandFlash存儲器中,用戶無法訪問NandFlash存儲器中的數據; 步驟6)、用戶通過外部應用程式發送讀寫指令,片內作業系統COS調用加解密文件系統對NandFlash存儲器中的文件進行解密供用戶讀取或對寫入的數據進行加密存入於NandFlash存儲器的存儲區;步驟7)操作完成關閉系統。
5.根據權利要求4所述的透明加解密SD卡的實現方法,其特徵在於步驟5)中,需要對口令驗證的次數進行限制,超過驗證次數,則會對SD卡進行鎖定,需要進行解鎖才能再次正常使用。
全文摘要
本發明涉及一種通過文件加解密系統對SD卡存儲區中的數據進行加解密處理的透明加解密SD卡及其實現方法,包括主控晶片和NandFlash,主控晶片具有SDIO接口和Nand接口,Nand接口與NandFlash連接;還包括虛擬文件系統和加解密文件系統;SDIO接口用於連接智慧型手機、電腦等外部設備和SD卡主控晶片;Nand接口用來連接主控晶片和NandFlash存儲區;NandFlash負責數據的存儲;虛擬文件系統為外部設備與SD卡進行交互提供接口;加解密文件系統對寫入或讀取的數據進行加解密,使得寫入的數據以密文的形式存儲,有效地保障了SD卡存儲數據的安全,方便操作且不易對SD卡造成損害。
文檔編號G06K19/073GK102831081SQ20121031999
公開日2012年12月19日 申請日期2012年9月3日 優先權日2012年9月3日
發明者梁松濤, 何駿, 董建強, 張魯國, 劉熙胖, 王科峰, 劉長河, 楊偉紅 申請人:鄭州信大捷安信息技術股份有限公司