TWI401583B - 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統 - Google Patents

資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統 Download PDF

Info

Publication number
TWI401583B
TWI401583B TW098126528A TW98126528A TWI401583B TW I401583 B TWI401583 B TW I401583B TW 098126528 A TW098126528 A TW 098126528A TW 98126528 A TW98126528 A TW 98126528A TW I401583 B TWI401583 B TW I401583B
Authority
TW
Taiwan
Prior art keywords
function
data
length
controller
value
Prior art date
Application number
TW098126528A
Other languages
English (en)
Other versions
TW201106198A (en
Inventor
Tzu Yuan Meng
Ching Wen Chang
Original Assignee
Phison Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to TW098126528A priority Critical patent/TWI401583B/zh
Priority to US12/565,152 priority patent/US8275129B2/en
Publication of TW201106198A publication Critical patent/TW201106198A/zh
Application granted granted Critical
Publication of TWI401583B publication Critical patent/TWI401583B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • H04L9/0656Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher
    • H04L9/0662Pseudorandom key sequence combined element-for-element with data sequence, e.g. one-time-pad [OTP] or Vernam's cipher with particular pseudorandom sequence generator
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Description

資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統
本發明是有關於一種資料擾亂與解擾亂方法及使用此方法的儲存媒體控制電路與儲存系統。
隨著使用者逐漸接受使用電子錢包及預付儲值,使得智慧卡的使用日益普及。智慧卡(Smart Card)是具有例如微處理器、卡操作系統、安全模組及記憶體之組件的積體電路晶片(IC晶片),以允許持有者執行預定操作。智慧卡提供計算、加密、雙向通信及安全功能,使得這張卡片除了儲存資料的功能外還能達到對其所儲存的資料加以保護的功能。儘管智慧卡提供一編碼器來對資料加密的功能,但此資訊需要被還原時,尚需另一不同於編碼器之解碼器,由於編碼器及解碼器之電路皆較為複雜,其所需佔用之面積較大,這對系統體積要求日益嚴格的今日而言,是一大問題,故如何能兼故資料保密等級及系統體積微小化,為目前極欲發展之課題。
本發明提供一種資料擾亂與解擾亂方法,其能夠有效地保護所儲存的資料。
本發明提供一種儲存媒體控制電路,其能夠有效地保護儲存於儲存單元中的資料。
本發明提供一種儲存系統,其能夠有效地保護儲存於其中的資料。
本發明提供一種資料處理方法,其能夠有效地保護儲存於其中的資料。
本發明範例實施例提出一種資料擾亂方法,用以擾亂來自於一主機系統的一原始資料。本資料擾亂方法包括提供一儲存媒體控制器,產生一隨機數並將所產生的隨機數儲存於一儲存單元中。本資料擾亂方法也包括從主機系統中接收一使用者密碼,依據上述隨機數與上述使用者密碼使用一第一函數產生一整墊值,並且依據上述整墊值與一金鑰使用一第二函數產生一暫時值。本資料擾亂方法更包括由此儲存媒體控制器依據上述暫時值與上述原始資料使用一第三函數產生對應上述原始資料的一擾亂資料。
在本發明之一實施例中,上述之依據隨機數與使用者密碼使用第一函數產生整墊值的步驟包括:透過第一函數編輯上述隨機數與上述使用者密碼來產生上述整墊值。
在本發明之一實施例中,上述之資料擾亂方法,更包括使用使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生上述整墊值,其中上述整墊值的長度等於一預定長度。
在本發明之一實施例中,上述之預定長度相同於上述原始資料的長度。
在本發明之一實施例中,PADLength≦DeLength-(PWLength+RNLength),其中PADLength表示上述填塞位元的長度,DeLength表示上述預設長度,PWLength表示上述使用者密碼的長度,並且RNLength表示上述隨機數的長度。
在本發明之一實施例中,上述之第二函數為一對稱式函數、一非對稱式函數或一訊息摘要(Message Digest)函數。
在本發明之一實施例中,上述之第三函數為一邏輯運算函數。
在本發明之一實施例中,上述之資料擾亂方法更包括以上述使用者密碼作為上述金鑰。
在本發明之一實施例中,上述之資料擾亂方法更包括隨機地產生上述金鑰並且將所產生的所產生的金鑰儲存於儲存單元中。
在本發明之一實施例中,上述之對稱式函數為一高階加密標準(Advanced Encryption Standard,AES)函數或一資料加密標準(Data Encryption Standard,DES)函數。
在本發明之一實施例中,上述之非對稱式函數為一RSA(Rivest-Shamir-Adleman)加密函數。
在本發明之一實施例中,上述之訊息摘要函數為一MD5函數或一SHA函數。
在本發明之一實施例中,上述之邏輯運算函數為一XOR函數。
在本發明之一實施例中,上述之資料擾亂方法更包括擴充上述暫時值,以使已擴充的暫時值之長度等於上述原始資料的長度。
在本發明之一實施例中,上述之資料擾亂方法更包括分割上述原始資料為多個子原始資料,其中至少一子原始資料的長度等於上述暫時值的長度。
本發明範例實施例提出一種儲存媒體控制電路,用以擾亂來自於一主機系統的一原始資料。本儲存媒體控制電路包括微處理器單元、儲存媒體介面、主機介面單元、與資料編碼單元。儲存媒體介面耦接至微處理器單元,用以連接一儲存媒體。主機介面單元耦接至微處理器單元,用以連接上述主機系統。資料編碼單元耦接至微處理單元,用以依據一隨機數與來自於上述主機系統的一使用者密碼使用一第一函數產生一整墊值,依據上述整墊值與一金鑰使用一第二函數產生一暫時值並且依據上述暫時值與一原始資料使用一第三函數產生對應此原始資料的一擾亂資料,其中資料編碼單元將上述隨機數儲存於上述儲存單元中。
在本發明之一實施例中,上述之資料編碼單元包括亂數產生器、遮罩器與資料擾亂器。亂數產生器用以產生該隨機數,遮罩器用以設定上述金鑰、使用上述第一函數產生上述整墊值並且使用上述第二函數產生上述暫時值,以及資料擾亂器用以使用上述第三函數產生對應上述原始資料的擾亂資料。
在本發明之一實施例中,上述之資料編碼單元透過上述第一函數編輯上述隨機數與上述使用者密碼來產生上述整墊值。
在本發明之一實施例中,上述之資料編碼單元更使用使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生上述整墊值,其中上述整墊值的長度等於一預定長度。
在本發明之一實施例中,上述之微處理器單元以該使用者密碼作為該金鑰。
在本發明之一實施例中,上述之微處理器單元隨機地產生上述金鑰是由上述微處理器單元隨機地產生並且上述微處理器單元將所產生的金鑰儲存於上述儲存單元中。
本發明範例實施例提出一種儲存系統,其包括連接器、儲存單元與儲存媒體控制器。連接器用以耦接一主機系統並接收來自於此主機系統的一原始資料與一使用者密碼。儲存媒體控制器耦接至此連接器與此儲存單元,用以產生一隨機數、依據此隨機數與上述使用者密碼使用一第一函數產生一整墊值,依據此整墊值與一金鑰使用一第二函數產生一暫時值,依據此暫時值與一原始資料使用一第三函數產生對應此原始資料的一擾亂資料,且將此擾亂資料寫入至上述儲存單元中,其中儲存媒體控制器將所產生的隨機數儲存於上述儲存單元中。
在本發明之一實施例中,上述之儲存媒體控制器透過上述第一函數編輯上述隨機數與上述使用者密碼來產生上述整墊值。
在本發明之一實施例中,上述之儲存媒體控制器更使用使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生上述整墊值,其中上述整墊值的長度等於一預定長度。
在本發明之一實施例中,上述之儲存媒體控制器以上述使用者密碼作為上述金鑰。
在本發明之一實施例中,上述之金鑰是由上述儲存媒體控制器隨機地產生並且上述儲存媒體控制器將所產生的金鑰儲存於上述儲存單元中。
在本發明之一實施例中,上述之儲存單元為一非揮發性記憶體。
本發明範例實施例提出一種資料解擾亂方法,用以依據來自於一主機系統的使用者密碼解擾亂儲存於一儲存單元中的一擾亂資料。本資料解擾亂方法包括從上述儲存單元中讀取一隨機數,依據此隨機數與上述使用者密碼使用一第一函數產生一整墊值。本資料解擾亂方法也包括依據上述整墊值與一金鑰使用一第二函數產生一暫時值,以及由一儲存媒體控制器依據此暫時值與上述擾亂資料使用一第三函數產生對應此擾亂資料的一原始資料。
本發明範例實施例提出一種資料處理方法,其包括提供一儲存媒體控制器,和分別接收一第一金鑰及一第二金鑰。本資料處理方法還包括由此儲存媒體控制器使用第一金鑰加密第二金鑰以產生一暫時值,接收來自於一主機系統的一原始資料,並且由儲存媒體控制器依據暫時值與原始資料使用一第三函數產生對應原始資料的一擾亂資料。
在本發明之一實施例中,上述之第二金鑰是由第一金鑰所產生。
在本發明之一實施例中,上述之第二金鑰的長度等於原始資料的長度。
在本發明之一實施例中,上述之資料處理方法更包括由儲存媒體控制器依據暫時值與擾亂資料使用第三函數產生原始資料。
在本發明之一實施例中,上述之第三函數為一邏輯函數。
基於上述,本發明範例實施例是於每次執行擾亂程序時依據使用者密碼與隨機值來產生用以擾亂資料的暫時值,因此可避免用以擾亂資料之暫時值被破解,而影響被保護資料的安全性。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
本範例實施例提出一種儲存系統,其中當主機系統欲在此儲存系統中儲存資料(即,原始資料)時,此儲存系統會使用即時產生的暫時值來對原始資料執行一擾亂程序以產生對應的擾亂資料,並儲存此擾亂資料。而當主機系統欲讀取從此儲存系統中讀取資料(即,原始資料)時,此儲存系統會使用即時產生的暫時值來對對應的擾亂資料執行一解擾亂程序以還原原始資料。由於擾亂與解擾亂所使用的暫時值是於運作過程中即時產生,並且未儲存於儲存系統中,因此可有效地防止未授權者破解儲存系統中的擾亂機制而非法存取儲存系統中的資料。
圖1是根據本發明範例實施例所繪示的儲存系統的概要方塊圖。
請參照圖1,一般來說,儲存系統100是與主機系統200一起運作使用,以使主機系統200可將資料寫入至儲存系統100或從儲存系統100中讀取資料。
儲存系統100包括儲存媒體控制器(亦可簡稱,控制器)110、連接器120與儲存單元130。
儲存媒體控制器110會執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統200的指令在儲存單元130中進行資料的寫入、讀取等。
儲存媒體控制器110包括微處理器單元152、資料編碼單元154、儲存媒體介面單元156與主機介面單元158。
微處理器單元152用以與資料編碼單元154、儲存媒體介面單元156與主機介面單元158等協同合作以進行儲存系統100的各種運作。
資料編碼單元154是耦接至微處理器單元152,並且用以執行根據本範例實施例的資料擾亂機制。資料編碼單元154包括亂數產生器172、遮罩器174與資料擾亂器176。
亂數產生器172是耦接至微處理器單元152,並且根據微處理器單元152的指示產生隨機數。例如,在本範例實施例中,亂數產生器172會產生長度為8個位元組(Byte)的隨機數。然而,本發明不限於此,亂數產生器172亦可依使用者之設定而產生3個位元組,12個位元組,或任意長度的隨機數。在本範例實施例中,亂數產生器172所產生的隨機數是用於對欲儲存之資料進行擾亂程序或者對已擾亂資料進行解擾亂程序的其中一個參數。特別是,微處理器單元152會儲存亂數產生器172所產生的隨機數,以利於後續對已擾亂資料進行解擾亂程序,例如,微處理器單元152將亂數產生器172所產生的隨機數儲存於儲存單元130中。此外,在本發明另一範例實施例中,儲存媒體控制器110中亦可配置非揮發性記憶體來存放亂數產生器172所產生的隨機數。
遮罩器174是耦接至微處理器單元152,並且根據微處理器單元152的指示產生整墊值與暫時值。遮罩器174所產生的整墊值與暫時值亦是用於對主機系統200欲儲存之資料進行擾亂程序或者對已擾亂資料進行解擾亂程序的參數。值得一提的是,微處理器單元152會儲存所產生之隨機值,以作為解擾亂之用,但在本範例實施例中,遮罩器174所產生的整墊值與暫時值可以不被儲存。也就是說,整墊值與暫時值是於每次進行擾亂程序或解擾亂程序時產生,並且在使用完畢後就會被刪除。
具體來說,在遮罩器174中配置有第一函數,並且遮罩器174會根據使用者密碼與亂數產生器172所產生的隨機值使用第一函數來產生整墊值。在此,使用者密碼是由主機系統200所提供,並且透過主機系統200傳送至儲存媒體控制器110。此外,第一函數為一預設運算函數,其用以編輯所輸入之資料(即,使用者密碼與隨機數)並且將所輸入之資料填塞至一預定長度以作為整墊值並且將所輸入之資料擴充至一預定長度以作為整墊值,其中此預定長度可依據預期之保密強度或資料處理長度來設定,即此預定長度越長則保密強度越高或資料處理數量愈多,在本範例實施例中,此預定長度是設定為24個位元組,但其亦可依使用者需要而設定為任意長度,不應以此為限。在本範例實施例中,第一函數如式(1)所示:
PV=F(PW,SHTFT,RN,PAD,PWL) (1)
其中PV表示整墊值,SHIFT表示位移值,PW表示使用者密碼,RN表示隨機值,PAD表示填塞位元,PWL表示使用者密碼長度。在此,位移值是用以使所編輯的整墊值更為混亂,而填塞位元用以擴充所編輯的整墊值的長度。在本範例實施例中,整墊值、位移值、使用者密碼、隨機值、填塞位元與使用者密碼長度皆是以16進位來表示,其中使用者密碼為8個位元組、位移值為1個位元組、隨機值為8個位元組且使用者密碼長度為4個位元組。因此,在預期整墊值為24個位元組的例子中,遮罩器174會以3(=24-8-1-8-4)個位元組的0×00作為填塞位元。也就是說,在本範例實施例中,遮罩器174會依據8個位元組的使用者密碼、1個位元組的位移值、8個位元組的隨機值、3個位元組的填塞位元與4個位元組的使用者密碼長度的順序來編輯以產生24個位元組的整墊值。
例如,當隨機數為“F69F2445DF4F9B1716 ”且使用者密碼為“6BC11B206162636416 ”時,遮罩器174所產生之24個位元組的整墊值為“6BC11B2061626364-80-F69F2445-DF4F9B17-000000-0000000816 ”。
必須瞭解的是,式(1)僅是實作第一函數的範例,本發明不限於此,任何可將隨機數與使用者密碼進行編輯並產生出預期長度的整墊值的函數皆可作為第一函數。
例如,在本發明另一範例實施例中,第一函數亦可以式(2)來實作:
PV=F(PW,RN) (2)
其中第一函數是僅以上述使用者密碼與隨機數作為參數並利用使用者密碼與隨機數以一預定法則組合或重覆來產生一預定資料長度的整墊值。例如,當隨機數為“F69F2445DF4F9B1716 ”且使用者密碼為“6BC11B206162636416 ”時,遮罩器174所產生之24個位元組的整墊值可為“F69F2445DF4F9B17-6BC11B2061626364-F69F2445DF4F9B1716 ”或“6BC11B2061626364-F69F2445DF4F9B17-6BC11B206162636416 ”。
此外,在又一範例實施例中,第一函數亦可以式(3)來實作:
PV=F(PW,RN,PAD) (3)
其中是僅以上述使用者密碼、隨機數與填塞位元作為參數,且填充位元的資料長度是依據欲產生之整墊值的資料長度、隨機數之資料長度與使用者密碼之資料長度來決定。例如,在隨機數為“F69F2445DF4F9B1716 ”且使用者密碼為“6BC11B206162636416 ”的例子中,由於隨機數與使用者密碼皆為8個位元組,因此當欲產生24個位元組的整墊值時遮罩器174會使用8個位元組的填塞位元來“F69F2445DF4F9B17-0000000000000000-6BC11B206162636416 ”或”F69F2445DF4F9B17-6BC11B2061626364-000000000000000016 ”作為整墊值。
此外,在再一範例實施例中,第一函數亦可以式(4)來實作:
PV=F(PW,RN,PAD,PWL) (4)
其中是僅以上述使用者密碼、隨機數、填塞位元與使用者密碼長度作為參數。例如,在隨機數為“F69F2445DF4F9B1716 ”,使用者密碼為“6BC11B206162636416 ”且使用者密碼長度為“0000000816 ”的例子中,遮罩器174所產生之24個位元組的整墊值可為“F69F2445DF4F9B17-6BC11B2061626364-00000000-0000000816 ”或”F69F2445DF4F9B17-00000000-00000008-6BC11B206162636416 ”作為整墊值。
值得一提的是,除了使用者密碼與隨機數外,上述位移值或使用者密碼的長度亦可作為產生整墊值的參數,因此為能夠便所產生之整墊值的長度等於上述預定長度,上述填塞位元可根據所使用之參數來調整其長度,其中填塞位元的長度不大於上述預定長度減去使用者密碼與隨機數的長度,如下式(5)所示。
PADLength≦DeLength-(PWLength+RNLength) (5)
其中PADLength表示填塞位元的長度,DeLength表示預設長度,PWLength表示使用者密碼的長度,並且RNLength表示隨機數的長度。
在本範例實施例中,在遮罩器174中配置有第二函數,並且遮罩器174會根據金鑰與所產生的整墊值使用第二函數來產生暫時值。例如,第二函數為資料加密標準(Data Encryption Standard,DES)的加密函數,而金鑰是用作為DES函數中之密鑰。換句話說,遮罩器174會將整墊值作為一輸入值至第二函數並且將透過金鑰加密整墊值所產生的密文作為暫時值。在此,遮罩器174是以使用者密碼作為金鑰,但本發明不限於此,在本發明另一範例實施例中,主機系統200的使用者亦可輸入一不同於上述使用者密碼之另一預期的使用者密鑰作為金鑰,並且遮罩器174會儲存使用者輸入之使用者密鑰以作為解擾亂之用。此外,儲存系統100亦可於出廠時以一組預設值作為此金鑰。
在另一範例實施例中,使用者密鑰或使用者密碼是為一第一金鑰,而遮罩器174所接收之整墊值是為一第二金鑰,而遮罩器174會使用該第一金鑰利用第二函數加密該第二金鑰來產生一密文作為暫時值。
在本範例實施例中,儘管本範例實施例是以DES的加密函數作為第二函數,然而本發明不限於此,DES的解密函數亦可作為上述第二函數。也就是說,在使用DES的解密函數作為第二函數的例子中,整墊值是被視作為密文輸入至第二函數並且將透過金鑰解密整墊值所產生的明文作為暫時值。
此外,必須瞭解的是,上述第二函數不限於DES,在本發明另一範例實施例中,任何對稱式函數(例如,高階加密標準(Advanced Encryption Standard,AES)的加密或解密函數)、非對稱式函數(例如,RSA(Rivest-Shamir-Adleman)加密函數)或訊息摘要(Message Digest)函數(例如,MD5函數或SHA函數)皆可作為本範例實施例的第二函數。
資料擾亂器176是耦接至微處理器單元152,並且根據微處理器單元152的指示對原始資料執行擾亂程序以產生擾亂資料或者對已擾亂資料執行解擾亂程序。具體來說,在資料擾亂器176中配置有第三函數,並且資料擾亂器176根據遮罩器174所產生的暫時值與原始資料使用第三函數來產生擾亂資料或者根據遮罩器174所產生的暫時值與已擾亂資料使用第三函數來還原原始資料。在本範例實施例中,第三函數為一XOR函數,然而,必須瞭解的是本發明不限於此,第三函數可以是其他邏輯運算函數,或是多是個邏輯運算函數的組合。
值得一提的是,在本範例實施例中,遮罩器174透過第二函數(即,DES加密函數)所產生暫時值的長度是相同於使用第一函數所產生之整墊值的長度,因此當資料擾亂器176使用第三函數(即,XOR函數)對原始資料進行擾亂時,原始資料的長度亦需是等於暫時值的長度。例如,在本範例實施例中,遮罩器174依據隨機數、使用者密碼與使用者密碼長度利用第一函數產生24個位元組的整墊值,並且依據整墊值與金鑰利用第二函數產生24個位元組的暫時值。因此,在原始資料亦為24個位元組的情況下,資料擾亂器176可直接依據暫時值使用第三函數來產生24個位元組的擾亂資料。也就是說,在本範例實施例中,整墊值的的長度與暫時值的長度是相同於原始資料的長度。然而,必須瞭解的是,本發明不限於此,當所產生的暫時值的長度與原始資料的長度不相同時,儲存系統亦可以填塞位元組或以重覆暫時值的方式來擴充暫時值以使擴充後的暫時值的長度與原始資料的長度相同,或者將原始資料分割多個子原始資料以使子原始資料的長度與暫時值的長度相同。
在本範例實施例中,亂數產生器172、遮罩器174與資料擾亂器176是以一硬體型式實作。然而本發明不限於此,在本發明另一範例實施例中,亂數產生器172、遮罩器174與資料擾亂器176亦可以一韌體型式實作在儲存媒體控制器110中。例如,將包括多個程式指令的亂數產生器172、遮罩器174與資料擾亂器176燒錄至一程式記憶體(例如,唯讀記憶體(Read Only Memory,ROM))中並且將此程式記憶體嵌入在儲存媒體控制器110中,當儲存系統100運作時,亂數產生器172、遮罩器174與資料擾亂器176的多個機器指令會由微處理器單元152來執行以完成根據本發明實施例的區塊管理機制與資料寫入機制。
此外,在本發明另一實施例中,亂數產生器172、遮罩器174與資料擾亂器176的控制指令亦可以軟體型式儲存於儲存單元130中。同樣的,當儲存系統100運作時,亂數產生器172、遮罩器174與資料擾亂器176的多個控制指令會由微處理器單元152來執行。
儲存媒體介面單元156是耦接至微處理器單元152並且用以存取儲存單元130。也就是說,欲寫入至儲存單元130的資料會經由儲存媒體介面單元156轉換為儲存單元130所能接受的格式。
主機介面單元158是耦接至微處理器單元152並且用以接收與識別主機系統200所傳送的指令。也就是說,主機系統200所傳送的指令與資料會透過主機介面單元158來傳送至微處理器單元152。在本範例實施例中,主機介面單元158為安全數位(secure digital,SD)介面。然而,必須瞭解的是本發明不限於此,主機介面單元158亦可以是序列先進附件(Serial Advanced Technology Attachment,SATA)介面、通訊序列匯流排(Universal Serial Bus,USB)介面、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE)1394介面、高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)、記憶棒(Memory Sick,MS)介面、多媒體儲存卡(Multi Media Card,MMC)介面、小型快閃(Compact Flash,CF)介面、整合式驅動電子介面(Integrated Device Electronics,IDE)或其他適合的資料傳輸介面。
此外,雖未繪示於本範例實施例,但儲存媒體控制器110亦更包括錯誤校正單元與電源管理單元等控制儲存單元的電路。
連接器120是耦接至儲存媒體控制器110並且用以透過匯流排300連接主機系統200。在本範例實施例中,連接器120為SD連接器。然而,必須瞭解的是本發明不限於此,連接器120亦可以是SATA連接器、USB連接器、IEEE 1394連接器、PCI Express連接器、MS連接器、MMC連接器、CF連接器、IDE連接器或其他適合的連接器。
儲存單元130是耦接至儲存媒體控制器110並且用以儲存資料。在本範例實施例中,儲存單元130具有一隱藏區以存放亂數產生器172所產生的隨機數。在此,所謂隱藏區是指僅可由儲存媒體控制器110可寫入與讀取的區域,而主機系統200無法存取的區域。在本範例實施例中,儲存單元130為一次程式化記憶體(One Time Program memory,OTP)。然而,必須瞭解的是,儲存單元130可以是非揮發性記憶體(例如,快閃記憶體)、磁碟或其他任何適合的儲存媒體。
圖2是根據本發明範例實施例所繪示的資料擾亂方法的流程圖,並且圖3是根據本發明範例實施例所繪示之執行擾亂方法的資料流示意圖。
請同時參照圖2與圖3,當主機系統200欲儲存資料至儲存系統100時,在步驟S201中儲存媒體控制器110的微處理器單元152會經由主機介面單元158接收主機系統200的資料寫入指令WC1、欲儲存之原始資料RD1以及使用者密碼PW1。具體來說,儲存系統100能夠根據使用者所設定的密碼來保護使用者所儲存之資料。因此,當使用者欲於儲存系統100中儲存資料時,使用者需提供預設定之使用者密碼。例如,在本發明一範例實施例中,使用者是配合一軟體介面來使用儲存系統,其中此軟體介面提供一密碼欄位供使用者輸入使用者密碼。
在步驟S203中微處理器單元152會判斷儲存單元130中是否存有隨機數。倘若儲存單元130未儲存有隨機數時,則在步驟S205中亂數產生器172會在微處理器單元152的控制下產生一組亂數作為隨機數。例如,在圖3的範例中,儲存單元130中未存有任何隨機數,因此亂數產生器172會產生一組隨機數RN1。
之後,在步驟S207中遮罩器174依據隨機數RN1與使用者密碼PW1使用第一函數來產生整墊值PV1,並且在步驟S209中遮罩器174依據所產生之整墊值PV1與金鑰K1使用第二函數來產生暫時值T1。如上所述,在本範例中,遮罩器174是以使用者密碼PW1作為金鑰K1。然而,在使用者可設定使用者密鑰作為金鑰的例子中,上述軟體介面會更提供一密鑰欄位以供使用者設定使用者密鑰。
接著,在步驟S211中資料擾亂器176依據暫時值T1與原始資料RD1使用第三函數來產生擾亂資料SD1。最後,在步驟S213中微處理器單元152會透過儲存媒體介面單元156將所產生的擾亂資料SD1與隨機值RN1寫入至儲存單元130中。
基於上述,由於儲存媒體控制器110是將擾亂後的擾亂資料來取代原始資料以寫入至儲存單元130中,因此當主機系統200欲讀取所儲存的資料時,儲存媒體控制器110必須進行解擾亂程序將已擾亂的資料還原為原始資料。
圖4是根據本發明範例實施例所繪示的資料解擾亂方法的流程圖,並且圖5是根據本發明範例實施例所繪示之執行解擾亂方法的資料流示意圖。
請同時參照圖4與圖5,當主機系統200欲從儲存系統100中讀取的原始資料RD1時,在步驟S401中儲存媒體控制器110的微處理器單元152會經由主機介面單元158接收主機系統200的資料讀取指令RC1及使用者密碼PW1。
在步驟S403中微處理器單元152會透過儲存媒體介面單元156讀取儲存於儲存單元130中的隨機數RN1與擾亂資料SD1。
之後,在步驟S405中遮罩器174依據隨機數RN1與使用者密碼PW1使用第一函數來產生整墊值PV1,並且在步驟S407中遮罩器174依據所產生之整墊值PV1與金鑰K1使用第二函數來產生暫時值T1。如上所述,在本範例中,遮罩器174是以使用者密碼PW1作為金鑰K1。
接著,在步驟S409中資料擾亂器176依據暫時值T1與擾亂資料SD1使用第三函數來還原原始資料RD1。最後,在步驟S411中微處理器單元152會透過主機介面單元158將所還原的原始資料RD1傳送給主機系統200。值得一提的是,在本範例實施例中,主機系統200必須提供正確的使用者密碼才可正確地解擾亂所儲存的擾亂資料,否則主機系統200將接收到不正確的資料。也就是說,儲存媒體控制器110依據錯誤之使用者密碼執行解擾亂程序所得到的資料不會是主機系統200所儲存之原始資料。
值得一提的是,在本發明範例實施例中,當儲存單元130於同一時間存有對應多筆原始資料的多筆擾亂資料時,此些擾亂資料必須是以相同的隨機數作為上述擾亂程序的參數。也就是說,僅於儲存單元130中的所有擾亂資料都已被還原回原始資料後,儲存媒體控制器110才會將儲存於儲存單元130中的隨機值抹除,並於下一次寫入資料時產生新的隨機值。然而,本發明不限於此,在儲存單元130提供足夠空間儲存多筆隨機數的例子中,儲存媒體控制器110亦可為每一筆原始資料產生一對應隨機數以進行上述擾亂程序之用。
綜上所述,本發明範例實施例是依據即時產生的暫時值來對資料進行擾亂,由於此暫時值並不會儲存於儲存系統中,因此大幅度增加破解所擾亂之資料的難度。此外,在擾亂程序或反擾亂程序中,暫時值都是以相同方式(例如,加密函數或解密函數)產生,因此不需要配置執行逆運算的電路,而可大幅縮小儲存系統的體積。再者,當儲存系統中所儲存的擾亂資料皆已還原後,本範例實施例的儲存系統會重新產生隨機值,並由此產生不同的暫時值,因此可更確保使用此暫時值所保護的資料的安全性。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...儲存系統
110...儲存媒體控制器
120...連接器
130...儲存單元
152...微處理器單元
154...資料編碼單元
156...儲存媒體介面單元
158...主機介面單元
172...亂數產生器
174...遮罩器
176...資料擾亂器
200...主機系統
300...匯流排
S201、S203、S205、S207、S209、S211、S213...擾亂方法的步驟
S401、S403、S405、S407、S409、S411...解擾亂方法的步驟
WC1...資料寫入指令
RD1...原始資料
PW1...使用者密碼
K1...金鑰
RN1...隨機數
PV1...整墊值
T1...暫時值
SD1...擾亂資料
RC1...資料讀取指令
圖1是根據本發明範例實施例所繪示的儲存系統的概要方塊圖。
圖2是根據本發明範例實施例所繪示的資料擾亂方法的流程圖。
圖3是根據本發明範例實施例所繪示之執行擾亂方法的資料流示意圖。
圖4是根據本發明範例實施例所繪示的資料解擾亂方法的流程圖。
圖5是根據本發明範例實施例所繪示之執行解擾亂方法的資料流示意圖。
S201、S203、S205、S207、S209、S211、S213...擾亂方法的步驟

Claims (63)

  1. 一種資料擾亂方法,用以擾亂來自於一主機系統的一原始資料,該資料擾亂方法包括:提供一儲存媒體控制器;由該儲存媒體控制器產生一隨機數並將所產生的隨機數儲存於一儲存單元中;由該儲存媒體控制器從該主機系統中接收一使用者密碼;由該儲存媒體控制器依據該隨機數與該使用者密碼使用一第一函數產生一整墊值;由該儲存媒體控制器依據該整墊值與一金鑰使用一第二函數產生一暫時值;以及由該儲存媒體控制器依據該暫時值與該原始資料使用一第三函數產生對應該原始資料的一擾亂資料。
  2. 如申請專利範圍第1項所述之資料擾亂方法,其中由該儲存媒體控制器依據該隨機數與該使用者密碼使用該第一函數產生該整墊值的步驟包括:由該儲存媒體控制器透過該第一函數編輯該隨機數與該使用者密碼來產生該整墊值。
  3. 如申請專利範圍第2項所述之資料擾亂方法,更包括由該儲存媒體控制器使用該使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生該整墊值,其中該整墊值的長度等於一預定長度。
  4. 如申請專利範圍第3項所述之資料擾亂方法,其中該預定長度相同於該原始資料的長度。
  5. 如申請專利範圍第3項所述之資料擾亂方法,其中PADLength≦DeLength-(PWLength+RNLength)其中PADLength表示該填塞位元的長度,DeLength表示該預定長度,PWLength表示該使用者密碼的長度,並且RNLength表示該隨機數的長度。
  6. 如申請專利範圍第1項所述之資料擾亂方法,其中該第二函數為一對稱式函數、一非對稱式函數或一訊息摘要(Message Digest)函數。
  7. 如申請專利範圍第1項所述之資料擾亂方法,其中該第三函數為一邏輯運算函數。
  8. 如申請專利範圍第1項所述之資料擾亂方法,更包括以該使用者密碼作為該金鑰。
  9. 如申請專利範圍第1項所述之資料擾亂方法,更包括由該儲存媒體控制器隨機地產生該金鑰並且將所產生的該金鑰儲存於該儲存單元中。
  10. 如申請專利範圍第6項所述之資料擾亂方法,其中該對稱式函數為一高階加密標準(Advanced Encryption Standard,AES)函數或一資料加密標準(Data Encryption Standard,DES)函數。
  11. 如申請專利範圍第6項所述之資料擾亂方法,其中該非對稱式函數為一RSA(Rivest-Shamir-Adleman)加密函數。
  12. 如申請專利範圍第6項所述之資料擾亂方法,其中該訊息摘要函數為一MD5函數或一SHA函數。
  13. 如申請專利範圍第7項所述之資料擾亂方法,其 中該邏輯運算函數為一XOR函數。
  14. 如申請專利範圍第1項所述之資料擾亂方法,更包括:由該儲存媒體控制器擴充該暫時值,其中該已擴充的暫時值之長度等於該原始資料的長度。
  15. 如申請專利範圍第1項所述之資料擾亂方法,更包括:由該儲存媒體控制器分割該原始資料為多個子原始資料,其中至少一子原始資料的長度等於該暫時值的長度。
  16. 一種控制器,用以擾亂來自於一主機系統的一原始資料,該控制器包括:一微處理器單元;一儲存媒體介面單元,耦接至該微處理器單元,用以連接一儲存媒體;一主機介面單元,耦接至該微處理器單元,用以連接該主機系統;以及一資料編碼單元,耦接至該微處理器單元,用以依據一隨機數與來自於該主機系統的一使用者密碼使用一第一函數產生一整墊值,依據該整墊值與一金鑰使用一第二函數產生一暫時值並且依據該暫時值與一原始資料使用一第三函數產生對應該原始資料的一擾亂資料,其中該微處理器單元將該隨機數儲存於該儲存單元中。
  17. 如申請專利範圍第16項所述之控制器,其中該資料編碼單元包括: 一亂數產生器,用以產生該隨機數;一遮罩器,用以設定該金鑰、使用該第一函數產生該整墊值並且使用該第二函數產生該暫時值;以及一資料擾亂器,用以使用該第三函數產生對應該原始資料的該擾亂資料。
  18. 如申請專利範圍第16項所述之控制器,其中該資料編碼單元透過該第一函數編輯該隨機數與該使用者密碼以產生該整墊值。
  19. 如申請專利範圍第18項所述之控制器,其中該資料編碼單元更使用該使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生該整墊值,其中該整墊值的長度等於一預定長度。
  20. 如申請專利範圍第19項所述之控制器,其中該預定長度相同於該原始資料的長度。
  21. 如申請專利範圍第19項所述之控制器,其中PADLength≦DeLength-(PWLength+RNLength)其中PADLength表示該填塞位元的長度,DeLength表示該預定長度,PWLength表示該使用者密碼的長度,並且RNLength表示該隨機數的長度。
  22. 如申請專利範圍第16項所述之控制器,其中該第二函數為一對稱式函數、一非對稱式函數或一訊息摘要(Message Digest)函數。
  23. 如申請專利範圍第16項所述之控制器,其中該第三函數為一邏輯運算函數。
  24. 如申請專利範圍第16項所述之控制器,其中該微處理器單元以該使用者密碼作為該金鑰。
  25. 如申請專利範圍第16項所述之控制器,其中該金鑰是由該微處理器單元隨機地產生並且該微處理器單元將所產生的該金鑰儲存於該儲存單元中。
  26. 如申請專利範圍第22項所述之控制器,其中該對稱式函數為一高階加密標準(Advanced Encryption Standard,AES)函數或一資料加密標準(Data Encryption Standard,DES)函數。
  27. 如申請專利範圍第22項所述之控制器,其中該非對稱式函數為一RSA(Rivest-Shamir-Adleman)加密函數。
  28. 如申請專利範圍第22項所述之控制器,其中該訊息摘要函數為一MD5函數或一SHA函數。
  29. 如申請專利範圍第23項所述之控制器,其中該邏輯運算函數為一XOR函數。
  30. 一種儲存系統,包括:一連接器,用以耦接一主機系統並接收來自於該主機系統的一原始資料與一使用者密碼;一儲存單元;以及一儲存媒體控制器,耦接至該連接器與該儲存單元,其中該儲存媒體控制器包括:一微處理器單元;一儲存媒體介面單元,耦接至該微處理器單元,用以連接該儲存單元; 一主機介面單元,耦接至該微處理器單元,用以連接該主機系統;以及一資料編碼單元,耦接至該微處理器單元,用以產生一隨機數、依據該隨機數與該使用者密碼使用一第一函數產生一整墊值,依據該整墊值與一金鑰使用一第二函數產生一暫時值,依據該暫時值與一原始資料使用一第三函數產生對應該原始資料的一擾亂資料,且將該擾亂資料寫入至該儲存單元中,其中該微處理器單元將該隨機數儲存於該儲存單元中。
  31. 如申請專利範圍第30項所述之儲存系統,其中該儲存媒體控制器透過該第一函數編輯該隨機數與該使用者密碼以產生該整墊值。
  32. 如申請專利範圍第31項所述之儲存系統,其中該儲存媒體控制器更使用該使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生該整墊值,其中該整墊值的長度等於一預定長度。
  33. 如申請專利範圍第32項所述之儲存系統,其中該預定長度相同於該原始資料的長度。
  34. 如申請專利範圍第32項所述之儲存系統,其中PADLength≦DeLength-(PWLength+RNLength)其中PADLength表示該填塞位元的長度,DeLength表示該預定長度,PWLength表示該使用者密碼的長度,並且RNLength表示該隨機數的長度。
  35. 如申請專利範圍第30項所述之儲存系統,其中該第二函數為一對稱式函數、一非對稱式函數或一訊息摘要(Message Digest)函數。
  36. 如申請專利範圍第30項所述之儲存系統,其中該第三函數為一邏輯運算函數。
  37. 如申請專利範圍第30項所述之儲存系統,其中該儲存媒體控制器以該使用者密碼作為該金鑰。
  38. 如申請專利範圍第30項所述之儲存系統,其中該金鑰是由該儲存媒體控制器隨機地產生並且該儲存媒體控制器將所產生的該金鑰儲存於該儲存單元中。
  39. 如申請專利範圍第35項所述之儲存系統,其中該對稱式函數為一高階加密標準(Advanced Encryption Standard,AES)函數或一資料加密標準(Data Encryption Standard,DES)函數。
  40. 如申請專利範圍第35項所述之儲存系統,其中該非對稱式函數為一RSA(Rivest-Shamir-Adleman)加密函數。
  41. 如申請專利範圍第35項所述之儲存系統,其中該訊息摘要函數為一MD5函數或一SHA函數。
  42. 如申請專利範圍第36項所述之儲存系統,其中該邏輯運算函數為一XOR函數。
  43. 如申請專利範圍第30項所述之儲存系統,其中該儲存單元為一非揮發性記憶體。
  44. 一種資料解擾亂方法,用以依據來自於一主機系統的使用者密碼解擾亂儲存於一儲存單元中的一擾亂資 料,包括:由一儲存媒體控制器從該儲存單元中讀取一隨機數;由該儲存媒體控制器依據該隨機數與該使用者密碼使用一第一函數產生一整墊值;由該儲存媒體控制器依據該整墊值與一金鑰使用一第二函數產生一暫時值;以及由該儲存媒體控制器依據該暫時值與該擾亂資料使用一第三函數產生對應該擾亂資料的一原始資料。
  45. 如申請專利範圍第44項所述之資料解擾亂方法,其中依據該隨機數與該使用者密碼使用該第一函數產生該整墊值的步驟包括:透過該第一函數編輯該隨機數與該使用者密碼來產生該整墊值。
  46. 如申請專利範圍第45項所述之資料解擾亂方法,更包括由該儲存媒體控制器使用該使用者密碼的長度、一填塞位元與一位移值的至少其中之一來產生該整墊值,其中該整墊值的長度等於一預定長度。
  47. 如申請專利範圍第46項所述之資料解擾亂方法,其中該預定長度相同於該原始資料的長度。
  48. 如申請專利範圍第46項所述之資料解擾亂方法,其中PADLength≦DeLength-(PWLength+RNLength)其中PADLength表示該填塞位元的長度,DeLength表示該預定長度,PWLength表示該使用者密碼的長度,並且RNLength表示該隨機數的長度。
  49. 如申請專利範圍第44項所述之資料解擾亂方法,其中該第二函數為一對稱式函數、一非對稱式函數或一訊息摘要(Message Digest)函數。
  50. 如申請專利範圍第44項所述之資料解擾亂方法,其中該第三函數為一邏輯運算函數。
  51. 如申請專利範圍第44項所述之資料解擾亂方法,更包括以該使用者密碼作為該金鑰。
  52. 如申請專利範圍第44項所述之資料解擾亂方法,更包括由該儲存媒體控制器隨機地產生該金鑰並且將所產生的該金鑰儲存於該儲存單元中。
  53. 如申請專利範圍第49項所述之資料解擾亂方法,其中該對稱式函數為一高階加密標準(Advanced Encryption Standard,AES)函數或一資料加密標準(Data Encryption Standard,DES)函數。
  54. 如申請專利範圍第49項所述之資料解擾亂方法,其中該非對稱式函數為一RSA(Rivest-Shamir-Adleman)加密函數。
  55. 如申請專利範圍第49項所述之資料解擾亂方法,其中該訊息摘要函數為一MD5函數或一SHA函數。
  56. 如申請專利範圍第50項所述之資料解擾亂方法,其中該邏輯運算函數為一XOR函數。
  57. 一種資料處理方法,該資料處理方法包括:提供一儲存媒體控制器;由該儲存媒體控制器分別接收一第一金鑰及一第二 金鑰;由該儲存媒體控制器使用該第一金鑰加密該第二金鑰來產生一暫時值;由該儲存媒體控制器接收來自於一主機系統的一原始資料;以及由該儲存媒體控制器依據該暫時值與該原始資料使用一第三函數來產生對應該原始資料的一擾亂資料。
  58. 如申請專利範圍第57項所述之資料處理方法,其中該第二金鑰是由該第一金鑰所產生。
  59. 如申請專利範圍第57項所述之資料處理方法,其中該第二金鑰的長度等於該原始資料的長度。
  60. 如申請專利範圍第57項所述之資料處理方法,更包括:由該儲存媒體控制器依據該暫時值與該擾亂資料使用該第三函數來還原該原始資料。
  61. 如申請專利範圍第57項所述之資料處理方法,其中該第三函數為一邏輯函數。
  62. 如申請專利範圍第57項所述之資料處理方法,更包括:由該儲存媒體控制器擴充該暫時值,其中該已擴充的暫時值之長度等於該原始資料的長度。
  63. 如申請專利範圍第57項所述之資料處理方法,更包括:由該儲存媒體控制器分割該原始資料為多個子原始資料,其中至少一子原始資料的長度等於該暫時值的長度。
TW098126528A 2009-08-06 2009-08-06 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統 TWI401583B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098126528A TWI401583B (zh) 2009-08-06 2009-08-06 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統
US12/565,152 US8275129B2 (en) 2009-08-06 2009-09-23 Data scrambling, descrambling, and data processing method, and controller and storage system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098126528A TWI401583B (zh) 2009-08-06 2009-08-06 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統

Publications (2)

Publication Number Publication Date
TW201106198A TW201106198A (en) 2011-02-16
TWI401583B true TWI401583B (zh) 2013-07-11

Family

ID=43535690

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098126528A TWI401583B (zh) 2009-08-06 2009-08-06 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統

Country Status (2)

Country Link
US (1) US8275129B2 (zh)
TW (1) TWI401583B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI466086B (zh) 2012-12-10 2014-12-21 Novatek Microelectronics Corp 時序擾亂方法及其時序控制裝置
CN103903573B (zh) * 2012-12-26 2016-05-11 联咏科技股份有限公司 时序扰乱方法及其时序控制装置
US9148281B2 (en) 2013-03-05 2015-09-29 International Business Machines Corporation Random number generation
JP6961324B2 (ja) * 2015-08-25 2021-11-05 株式会社日立製作所 検索可能暗号処理システム
TWI667590B (zh) 2017-06-01 2019-08-01 慧榮科技股份有限公司 資料儲存裝置以及韌體加密及更新方法
TWI695292B (zh) * 2018-12-28 2020-06-01 新唐科技股份有限公司 使用訊息盲化的密碼裝置及其密碼處理方法
TWI750013B (zh) * 2021-01-20 2021-12-11 群聯電子股份有限公司 資料存取方法、記憶體控制電路單元及記憶體儲存裝置
CN113254975B (zh) * 2021-06-15 2021-09-28 湖南三湘银行股份有限公司 数字金融数据分享方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892899A (en) * 1996-06-13 1999-04-06 Intel Corporation Tamper resistant methods and apparatus
TW200406674A (en) * 2002-10-29 2004-05-01 Trek 2000 Int Ltd System and method for authentication
TW589569B (en) * 2001-04-09 2004-06-01 Phoenix Tech Ltd Systems and methods for computer device authentication
TW200610307A (en) * 2004-03-11 2006-03-16 Nagracard Sa Method for securing a ciphered content transmitted by a broadcaster
TWI256223B (en) * 2001-10-09 2006-06-01 Qualcomm Inc Method and apparatus for security in a data processing system
US7073073B1 (en) * 1999-07-06 2006-07-04 Sony Corporation Data providing system, device, and method
US7127612B1 (en) * 1998-10-02 2006-10-24 Sony Corporation Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium
TW200847727A (en) * 2007-05-30 2008-12-01 Mediatek Inc Authentication apparatus and verification methods

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059561A (ja) 2006-08-04 2008-03-13 Canon Inc 情報処理装置、データ処理装置、および、それらの方法
CN101419652B (zh) 2008-08-22 2010-07-21 航天信息股份有限公司 一种软硬件结合的保护程序的方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5892899A (en) * 1996-06-13 1999-04-06 Intel Corporation Tamper resistant methods and apparatus
US7127612B1 (en) * 1998-10-02 2006-10-24 Sony Corporation Information processing apparatus, information processing method, information providing medium, information decryption apparatus, and information recording medium
US7073073B1 (en) * 1999-07-06 2006-07-04 Sony Corporation Data providing system, device, and method
TW589569B (en) * 2001-04-09 2004-06-01 Phoenix Tech Ltd Systems and methods for computer device authentication
TWI256223B (en) * 2001-10-09 2006-06-01 Qualcomm Inc Method and apparatus for security in a data processing system
TW200406674A (en) * 2002-10-29 2004-05-01 Trek 2000 Int Ltd System and method for authentication
TW200610307A (en) * 2004-03-11 2006-03-16 Nagracard Sa Method for securing a ciphered content transmitted by a broadcaster
TW200847727A (en) * 2007-05-30 2008-12-01 Mediatek Inc Authentication apparatus and verification methods

Also Published As

Publication number Publication date
US20110035602A1 (en) 2011-02-10
US8275129B2 (en) 2012-09-25
TW201106198A (en) 2011-02-16

Similar Documents

Publication Publication Date Title
TWI401583B (zh) 資料擾亂/解擾亂與資料處理方法及其控制器與儲存系統
US10361850B2 (en) Authenticator, authenticatee and authentication method
KR101303278B1 (ko) 비트스트림 보호를 위한 fpga 장치 및 그 방법
US10565381B2 (en) Method and apparatus for performing firmware programming on microcontroller chip, and associated microcontroller chip
US20150254477A1 (en) Encryption/decryption system which performs encryption/decryption using register values, control method therefor, and storage medium
KR100849956B1 (ko) 반도체 장치 및 그것의 스크램블된 데이터 전송 방법
EP1830240A1 (en) Memory information protecting system, semiconductor memory, and method for protecting memory information
US20070153580A1 (en) Memory arrangement, memory device, method for shifting data from a first memory device to a second memory device, and computer program element
EP1811424A1 (en) Confidential information processing method, confidential information processing device, and content data reproducing device
JP2005130028A (ja) 暗号キー並びにこれを用いた暗号化装置及び復号化装置
WO2023240866A1 (zh) 密码卡及其根密钥保护方法、计算机可读存储介质
CN101296226B (zh) 共享总线密钥的方法及其设备
US20100241870A1 (en) Control device, storage device, data leakage preventing method
JP2004208088A (ja) デバイス鍵復号化装置、デバイス鍵暗号化装置、デバイス鍵暗号復号化装置、デバイス鍵復号化方法、デバイス鍵暗号化方法、デバイス鍵暗号復号化方法、及びそのプログラム
CN104077243A (zh) Sata硬盘设备加密方法及系统
WO2006118101A1 (ja) 機密情報処理用ホスト機器および機密情報処理方法
KR101687492B1 (ko) 분산적으로 데이터를 저장하는 방법 및 암호학적 정보 처리 장치
JP7057675B2 (ja) 半導体装置及び暗号鍵の生成方法
KR101043255B1 (ko) Usb 허브 보안 장치 및 이를 이용한 데이터 보안 방법
JP2009058637A (ja) 不揮発性記憶装置へのデータ書き込みシステムおよび不揮発性記憶装置
JP4592337B2 (ja) データ記憶装置
JP2007193800A (ja) カード認証システムのセキュリティレベルを向上させる装置及び方法
JP2004199689A (ja) 不安全なpciバスを介した安全なメディア・カードの運用
CN114237492A (zh) 非易失性存储器保护方法及装置
CN113158203A (zh) 一种soc芯片、电路和soc芯片的外部数据读写方法