專利名稱:存儲卡數(shù)據(jù)隱藏管理方法及其程序的制作方法
存儲卡數(shù)據(jù)隱藏管理方法及其程序
技朮領(lǐng)域
本發(fā)明為一種數(shù)據(jù)管理方法及其程序,特別指一種應(yīng)用于存儲卡,利用對
主區(qū)塊記錄文件(Master Block Record, MBR)的編修來產(chǎn)生隱藏區(qū)塊,進(jìn)行數(shù) 據(jù)存取管理的方法及其程序。
背景技朮
過去有關(guān)存儲卡的數(shù)據(jù)隱藏方法,大多停留在將文件直接存儲在存儲卡中, 然后透過將文件屬性更改為隱藏屬性來達(dá)成的,如此一來便可讓一般人無法輕 易發(fā)現(xiàn)被隱藏在存儲卡中的數(shù)據(jù)。
但是,這種利用將文件更改屬性而能夠達(dá)到隱藏目的的做法,雖然極為容 易達(dá)成,但是對于所謂的隱藏數(shù)據(jù)卻仍然存在有如下的問題
(1) 當(dāng)存儲卡進(jìn)行完全拷貝時,此時文件屬性雖然是隱藏的,但是仍然會因 為完全拷貝而被復(fù)制到其它存儲媒體上。
(2) 當(dāng)存儲卡進(jìn)行格式化時,此時既使文件屬性是屬于隱藏性質(zhì)的,仍然會 被完全消除。
因此,現(xiàn)有的存儲卡數(shù)據(jù)隱藏技術(shù),潛藏著被復(fù)制、被破壞的隱憂,將無 法完全保障數(shù)據(jù)的安全。
特別對于一些利用存儲卡來作為產(chǎn)品主要存儲媒體的廠商來說,有些時候 廠商需要將一些產(chǎn)品所需要的重要數(shù)據(jù)直接放置在存儲卡上以達(dá)到容易存取的 目的,但是這些重要數(shù)據(jù)又不希望被一般人輕易發(fā)現(xiàn),也不希望被復(fù)制或者破 壞,而影響到產(chǎn)品的使用,所以需要提出 --種應(yīng)用在存儲卡上更安全的數(shù)據(jù)隱 藏管理機(jī)制。
因此,如何利用對計算機(jī)可執(zhí)行程序的設(shè)計,提出一套可以將數(shù)據(jù)隱藏于 存儲卡中,并且容易對隱藏數(shù)據(jù)進(jìn)行存取管理,還能夠絕對確保隱藏數(shù)據(jù)安全 性的方法,是目前努力的目標(biāo)與方向所在。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種存儲卡數(shù)據(jù)隱藏管理的機(jī)制,借由計算機(jī)可執(zhí) 行程序的設(shè)計,對存儲卡中的主區(qū)塊記錄文件(Master Block Record, MBR)進(jìn) 行編修,使存儲卡產(chǎn)生--個隱藏區(qū)塊,因此可將數(shù)據(jù)安全地隱藏在存儲卡中, 并且可以容易的進(jìn)行數(shù)據(jù)存取管理。
因此,為達(dá)成上述目的,本發(fā)明所揭露的存儲卡數(shù)據(jù)隱藏管理方法,區(qū)分 為(1)存儲數(shù)據(jù)以及(2)擷取數(shù)據(jù)兩部分。
在存儲數(shù)據(jù)的部分,包含有下列步驟首先連接至存儲卡并讀取存儲卡中 所存儲的主區(qū)塊記錄文件;接著解析主區(qū)塊記錄文件的總扇區(qū)數(shù);以預(yù)定扇區(qū) 數(shù)替換主區(qū)塊記錄文件的總扇區(qū)數(shù),并同時計算出所規(guī)劃的隱藏扇區(qū)數(shù);然后 回存主區(qū)塊記錄文件并記錄存儲卡識別碼、總扇區(qū)數(shù)、預(yù)定扇區(qū)數(shù)及隱藏扇區(qū) 數(shù)于管理記錄文件中;最后以預(yù)定扇區(qū)數(shù)及隱藏扇區(qū)數(shù)來重新進(jìn)行存儲卡格式 化;此時便可執(zhí)行寫入指令將數(shù)據(jù)存儲于存儲卡的隱藏區(qū)塊。
在擷取數(shù)據(jù)的部分,包含有下列步驟首先連接至存儲卡并加載管理記錄 文件;接著讀取管理記錄文件的存儲卡識別碼并與存儲卡的主區(qū)塊記錄文件對 比;對比存儲卡識別碼的結(jié)果是否吻合。如果吻合,則可根據(jù)總扇區(qū)數(shù)以及預(yù) 定扇區(qū)數(shù)來計算出先前所規(guī)劃的隱藏區(qū)塊的范圍,然后便可以執(zhí)行讀取指令對 存儲卡的隱藏區(qū)塊進(jìn)行數(shù)據(jù)擷取。
整個存儲卡數(shù)據(jù)隱藏管理程序的部分,則包含有(l)設(shè)定模塊;(2)存取 模塊;(3)編修模塊;(4)存儲模塊;及(5)指令模塊幾個功能模塊。
因此,透過上述的計算機(jī)可執(zhí)行程序以及方法,便可輕易達(dá)成對隱藏在存 儲卡隱藏區(qū)塊中的數(shù)據(jù)進(jìn)行存取管理的功效。
圖1為本發(fā)明的存儲卡數(shù)據(jù)隱藏管理方法的存儲數(shù)據(jù)流程圖。 圖2為本發(fā)明的存儲卡數(shù)據(jù)隱藏管理方法的擷取數(shù)據(jù)流程圖。 圖3為本發(fā)明的存儲卡數(shù)據(jù)隱藏管理程序的功能模塊架構(gòu)圖。 圖4為本發(fā)明執(zhí)行前后的存儲卡實(shí)體區(qū)塊示意圖。
具體實(shí)施方式
本發(fā)明的存儲卡數(shù)據(jù)隱藏管理方法,為利用計算機(jī)可執(zhí)行程序所執(zhí)行的方
法流程,主要分為兩個部分 一是存儲數(shù)據(jù)30的方法流程;另一是擷取數(shù)據(jù)30 的方法流程。分別說明如下
請參考圖l,為存儲數(shù)據(jù)30的方法流程,可將數(shù)據(jù)30隱藏在存儲卡中。首 先,透過計算機(jī)總線20使本發(fā)明程序能夠連接至存儲卡10上,并讀取存儲卡 10中所存儲的主區(qū)塊記錄文件(步驟100),此主區(qū)塊記錄文件通常被記錄在存 儲卡10的第一個扇區(qū)中, 一般在主區(qū)塊記錄文件中會記錄有存儲卡10的總扇 區(qū)數(shù)400以及存儲卡識別碼等信息;接著,自主區(qū)塊記錄文件中解析出所存儲 的總扇區(qū)數(shù)400(步驟110);此時,以預(yù)先所設(shè)定的預(yù)定扇區(qū)數(shù)410替換掉主區(qū) 塊記錄文件的總扇區(qū)數(shù)400,并同時計算出所需規(guī)劃的隱藏扇區(qū)數(shù)420大小(步 驟120),--般而言此預(yù)定扇區(qū)數(shù)410必須小于總扇區(qū)數(shù)400,而隱藏扇區(qū)數(shù)420 的大小正好為總扇區(qū)數(shù)400減去預(yù)定扇區(qū)數(shù)410的大?。蝗缓?,回存主區(qū)塊記 錄文件至存儲卡10的第一扇區(qū)中,并同時將相關(guān)參數(shù),如存儲卡識別碼、總 扇區(qū)數(shù)400、預(yù)定扇區(qū)數(shù)410及隱藏扇區(qū)數(shù)420…等信息記錄在本發(fā)明程序的管 理記錄文件中(步驟130),由于每個存儲卡10均具有唯一的存儲卡識別碼,因
此在管理記錄文件中可以透過此--存儲卡識別碼來記錄多個存儲卡io個別的信 息;完成存儲之后,便以預(yù)定扇[x:數(shù)410及隱藏扇區(qū)數(shù)420來重新對存儲卡10 進(jìn)行格式化的動作(步驟140),格式化通常會依照固定的方向進(jìn)行,因此經(jīng)過格 式化之后,存儲卡10中會先產(chǎn)生一塊一般使用者可進(jìn)行數(shù)據(jù)存取的區(qū)塊(大小 等于預(yù)定扇區(qū)數(shù)410大小)之外,然后接著產(chǎn)生出另一塊無法為一般使用者知悉 并進(jìn)行數(shù)據(jù)30存取的隱藏區(qū)塊(大小等于隱藏扇區(qū)數(shù)420大小);此時,便可以 透過執(zhí)行寫入指令的方式將所需隱藏的數(shù)據(jù)30存儲于存儲卡10的隱藏區(qū)塊中 (步驟150)。
由于有關(guān)隱藏區(qū)塊的信息,僅被保留在本發(fā)明程序的管理記錄文件中,因 此唯有透過本發(fā)明程序才能夠?qū)Ρ浑[藏的數(shù)據(jù)30進(jìn)行存取的動作,而有關(guān)數(shù)據(jù) 30擷取的方法流程將配合圖2說明如下
首先,同樣透過計算機(jī)總線20來將本發(fā)明程序連接至所欲擷取數(shù)據(jù)30的 存儲卡10中,完成連接之后便加載存儲在本發(fā)明程序中的管理記錄文件(步驟 200);此時,讀取管理記錄文件的存儲卡識別碼并與存儲卡的主區(qū)塊記錄文件 中的存儲卡識別碼進(jìn)行對比(步驟210),當(dāng)管理記錄文件中存儲有一筆以上的記 錄時,則將透過讀取存儲卡上主區(qū)塊記錄文件中的存儲卡識別碼來搜尋管理記 錄文件中的存儲卡識別碼;若兩者的對比結(jié)果吻合(步驟220),或者當(dāng)搜尋到與 主區(qū)塊記錄文件具有相同的存儲卡識別碼時,表示可以識別出存儲卡上對應(yīng)的 隱藏區(qū)塊范圍,因此便可對此存儲卡10隱藏區(qū)塊中的數(shù)據(jù)30進(jìn)行存??;此時, 便可透過管理記錄文件中的總扇區(qū)數(shù)400、預(yù)定扇區(qū)數(shù)410來計算出隱藏區(qū)塊范 圍(步驟230);最后,執(zhí)行一讀取指令來對存儲卡10中的的隱藏區(qū)塊進(jìn)行數(shù)據(jù) 30擷取(步驟240)。
圖3是本發(fā)明程序的功能模塊架構(gòu)圖,為了實(shí)現(xiàn)對存儲卡10的數(shù)據(jù)30隱
藏管理,主要包括下列對應(yīng)的功能模塊
設(shè)定模塊300,用以存儲預(yù)先設(shè)定的預(yù)定扇區(qū)數(shù)410。此部份的設(shè)定,可以 依據(jù)不同存儲卡10容量的大小以及所需規(guī)劃隱藏區(qū)塊的大小自行設(shè)定。
存取模塊310,用以于執(zhí)行時可透過計算機(jī)總線20與存儲卡10連接,進(jìn)行 主區(qū)塊記錄文件以及數(shù)據(jù)30的存取。
編修模塊320,用以讀取存儲卡10中所存儲的主區(qū)塊記錄文件進(jìn)行解析, 以找到所記錄的總扇區(qū)數(shù)400,并利用設(shè)定模塊300中所預(yù)設(shè)的預(yù)定扇區(qū)數(shù)410 來替換總扇區(qū)數(shù)400后回存至主區(qū)塊記錄文件中,再存回存儲卡10。
此外,編修模塊320更負(fù)責(zé)于替換主區(qū)塊記錄文件的總扇區(qū)數(shù)400時,計 算隱藏扇區(qū)數(shù)420的大小,通常預(yù)定扇區(qū)數(shù)410必須小于總扇區(qū)數(shù)400,因此總 扇區(qū)數(shù)400減去預(yù)定扇區(qū)數(shù)410后的部分便成為隱藏扇區(qū)數(shù)420的大小,經(jīng)過 指令模塊340的格式化指令之后,便會成為所謂的隱藏區(qū)塊。
存儲模塊330,存儲主區(qū)塊記錄文件所存儲的存儲卡識別碼、總扇區(qū)數(shù)400,
以及預(yù)定扇區(qū)數(shù)410及隱藏扇區(qū)數(shù)420于管理記錄文件。
在管理記錄文件中,可以透過存儲卡識別碼來作為主要的索引值,由于每 個存儲卡IO都具有唯一獨(dú)特的存儲卡識別碼,因此當(dāng)管理記錄文件中存放有多 筆存儲卡10的數(shù)據(jù)時,便可以存儲卡識別碼作為對比搜尋之用。
指令模塊340,用以根據(jù)該預(yù)定扇區(qū)數(shù)410及該隱藏扇區(qū)數(shù)420進(jìn)行存儲卡 10格式化,如此將可分別產(chǎn)生出-一般使用者可存取的區(qū)塊和只有本發(fā)明程序可 存取的隱藏區(qū)塊。
由于格式化的過程,會依照固定的方向進(jìn)行,因此在存儲卡10中將會先產(chǎn) 生出具有預(yù)定扇區(qū)數(shù)410大小的一般區(qū)塊,然后接著再產(chǎn)生出具有隱藏扇區(qū)數(shù) 420大小的隱藏區(qū)塊。
此外,本指令模塊340更可于進(jìn)行數(shù)據(jù)存儲時,提供一寫入指令將數(shù)據(jù)30 存儲于存儲卡10的隱藏區(qū)塊中;亦可于數(shù)據(jù)擷取時,加載管理記錄文件進(jìn)行存 儲卡識別碼的對比,并根據(jù)總扇區(qū)數(shù)400及預(yù)定扇區(qū)數(shù)410來計算出存儲卡10 上對應(yīng)隱藏區(qū)塊范圍,然后提供讀取指令對存儲卡10隱藏區(qū)塊進(jìn)行數(shù)據(jù)30擷 取。
圖4,為本發(fā)明執(zhí)行前后的存儲卡實(shí)體區(qū)塊的示意圖,以下將配合實(shí)施例來 作說明。
假設(shè)存儲卡10的容量大小為lMB(megabyte),則其理論上的總扇區(qū)數(shù)400 為1048576 bytes (即1024*1024 bytes),當(dāng)需要在隱藏區(qū)塊中進(jìn)行數(shù)據(jù)存儲時, 若我們需規(guī)劃一塊大小為0. 5MB的隱藏區(qū)塊時,則我們只需要將預(yù)定扇區(qū)數(shù)410 設(shè)定為524288 bytes,即可進(jìn)行主區(qū)塊記錄文件的編修,然后透過本發(fā)明程序 計算出隱藏區(qū)塊數(shù)為524288 bytes(即1048576-524288 bytes),則經(jīng)過格式化 之后則會產(chǎn)生出兩個大小同樣為0. 5MB的區(qū)塊,分別為一般使用者可存取的區(qū) 塊,及只有本發(fā)明程序可存取的隱藏區(qū)塊(格式化過程將依照如圖中所示的格 式化方向來進(jìn)行各個區(qū)塊的格式化)。
當(dāng)需要進(jìn)行隱藏區(qū)塊的數(shù)據(jù)擷取時,我們則可同樣透過所記錄的總扇區(qū)數(shù) 400、預(yù)定扇區(qū)數(shù)410來計算出隱藏區(qū)塊的大小及范圍,然后由本發(fā)明程序進(jìn)行 數(shù)據(jù)的擷取。
透過本發(fā)明,將可于存儲卡中建立屬于計算機(jī)可執(zhí)行程序才可執(zhí)行數(shù)據(jù)存 取的隱藏區(qū)塊,由于存儲在此隱藏區(qū)塊中的數(shù)據(jù)僅能夠透過計算機(jī)可執(zhí)行程序 來進(jìn)行管理,包括數(shù)據(jù)存儲與數(shù)據(jù)擷取,因此對于此類數(shù)據(jù)的管理將更加安全。
權(quán)利要求
1、一種存儲卡數(shù)據(jù)隱藏管理方法,為利用計算機(jī)可執(zhí)行程序,將數(shù)據(jù)隱藏于連接的一存儲卡中,該方法包含下列步驟讀取該存儲卡中所存儲的一主區(qū)塊記錄文件;解析該主區(qū)塊記錄文件的一總扇區(qū)數(shù);以一預(yù)定扇區(qū)數(shù)替換該主區(qū)塊記錄文件的該總扇區(qū)數(shù)并計算一隱藏扇區(qū)數(shù);回存該主區(qū)塊記錄文件并記錄該存儲卡識別碼、該總扇區(qū)數(shù)、該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)于一管理記錄文件;以該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)重新進(jìn)行該存儲卡格式化;及執(zhí)行一寫入指令將數(shù)據(jù)存儲于該存儲卡的一隱藏區(qū)塊。
2、 如權(quán)利要求1所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該主區(qū)塊 記錄文件存儲于該存儲卡的第一個扇區(qū)(sector),至少記錄有該存儲卡的該總 扇區(qū)數(shù)及該存儲卡識別碼。
3、 如權(quán)利要求1所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該隱藏扇 區(qū)數(shù)等于該總扇區(qū)數(shù)減去該預(yù)定扇區(qū)數(shù)。
4、 如權(quán)利要求1所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該隱藏區(qū)塊大小等于該隱藏扇區(qū)數(shù)。
5、 如權(quán)利要求1所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該總扇區(qū) 數(shù)、該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)以位(byte)為單位。
6、 一種存儲卡數(shù)據(jù)隱藏管理方法,為利用計算機(jī)可執(zhí)行程序,將隱藏的數(shù) 據(jù)自連接的一存儲卡中擷取出來,該方法包含下列步驟加載一管理記錄文件;讀取該管理記錄文件的該存儲卡識別碼并與該存儲卡的一主區(qū)塊記錄文件 對比;當(dāng)對比結(jié)果吻合時,根據(jù)該總扇區(qū)數(shù)、該預(yù)定扇區(qū)數(shù)計算一隱藏區(qū)塊范圍;及執(zhí)行一讀取指令對該存儲卡的該隱藏區(qū)塊進(jìn)行數(shù)據(jù)擷取。
7、 如權(quán)利要求6所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該主區(qū)塊記錄文件存儲于該存儲卡的第一個扇區(qū)(sector),至少記錄有該存儲卡的該總 扇區(qū)數(shù)及該存儲卡識別碼。
8、 如權(quán)利要求6所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該隱藏扇 區(qū)數(shù)等于該總扇區(qū)數(shù)減去該預(yù)定扇區(qū)數(shù)。
9、 如權(quán)利要求6所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該隱藏區(qū)塊大小等于該隱藏扇區(qū)數(shù)。
10、 如權(quán)利要求6所述的存儲卡數(shù)據(jù)隱藏管理方法,其特征在于該總扇區(qū)數(shù)、該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)以位(byte)為單位。
11、 一種存儲卡數(shù)據(jù)隱藏管理程序,為計算機(jī)可執(zhí)行程序,可將數(shù)據(jù)隱藏 于存儲卡中,并對存儲卡中隱藏的數(shù)據(jù)進(jìn)行存取管理,該系統(tǒng)包含一設(shè)定模塊,用以存儲預(yù)先設(shè)定的一預(yù)定扇區(qū)數(shù);一編修模塊,用以讀取該存儲卡中所存儲的一主區(qū)塊記錄文件進(jìn)行解析, 以找到一總扇區(qū)數(shù),并利用該預(yù)定扇區(qū)數(shù)替換該總扇區(qū)數(shù)并計算出一隱藏扇區(qū) 數(shù),然后回存該主區(qū)塊記錄文件至該存儲卡中;一存取模塊,用以與該存儲卡連接,進(jìn)行該主區(qū)塊記錄文件以及數(shù)據(jù)的存??;一存儲模塊,用以存儲該主區(qū)塊記錄文件的該存儲卡識別碼、該總扇區(qū)數(shù), 以及該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)于一管理記錄文件;及一指令模塊,用以根據(jù)該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)進(jìn)行該存儲卡格式化, 并提供一寫入指令將數(shù)據(jù)存儲于該存儲卡的一隱藏區(qū)塊,或加載該管理記錄文 件進(jìn)行該存儲卡識別碼的對比,根據(jù)該總扇區(qū)數(shù)、該預(yù)定扇區(qū)數(shù)計算該隱藏區(qū) 塊范圍,并提供一讀取指令對該存儲卡的該隱藏區(qū)塊進(jìn)行數(shù)據(jù)擷取。
12、 如權(quán)利要求ll所述的存儲卡數(shù)據(jù)隱藏管理程序,其特征在于該存取 模塊透過一 總線與該存儲卡連接。
13、 如權(quán)利要求ll所述的存儲卡數(shù)據(jù)隱藏管理程序,其特征在于該主區(qū) 塊記錄文件存儲于該存儲卡的第一個扇區(qū)(sector),至少記錄有該存儲卡的該總扇區(qū)數(shù)及該存儲卡識別碼。
14、 如權(quán)利要求ll所述的存儲卡數(shù)據(jù)隱藏管理程序,其特征在于該隱藏扇區(qū)數(shù)等于該總扇區(qū)數(shù)減去該預(yù)定扇區(qū)數(shù)。
15、 如權(quán)利要求11所述的存儲卡數(shù)據(jù)隱藏管理程序,其特征在于該隱藏區(qū)塊大小等于該隱藏扇區(qū)數(shù)。
16、 如權(quán)利要求ll所述的存儲卡數(shù)據(jù)隱藏管理程序,其特征在于該總扇區(qū)數(shù)、該預(yù)定扇區(qū)數(shù)及該隱藏扇區(qū)數(shù)以位(byte)為單位。
全文摘要
一種存儲卡數(shù)據(jù)隱藏管理方法及其程序,主要透過計算機(jī)可執(zhí)行程序來對存儲卡中的主區(qū)塊記錄文件(Master Block Record,MBR)進(jìn)行編修,于存儲卡中建立屬于計算機(jī)可執(zhí)行程序才可執(zhí)行數(shù)據(jù)存取的隱藏區(qū)塊,由于存儲在此隱藏區(qū)塊中的數(shù)據(jù)僅能夠透過計算機(jī)可執(zhí)行程序來進(jìn)行管理,包括數(shù)據(jù)存儲與數(shù)據(jù)擷取,因此對于此類數(shù)據(jù)的管理將更加安全。
文檔編號G06F21/00GK101097548SQ20061003630
公開日2008年1月2日 申請日期2006年6月30日 優(yōu)先權(quán)日2006年6月30日
發(fā)明者唐子堯 申請人:佛山市順德區(qū)順達(dá)電腦廠有限公司;神達(dá)電腦股份有限公司