專利名稱:存儲加密數(shù)據(jù)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)加密,尤其涉及加密數(shù)據(jù)在開放網(wǎng)絡(luò)上的傳輸。
背景技術(shù):
當我們想要確保只有經(jīng)過授權(quán)的收件人能夠使用在開放網(wǎng)絡(luò)(電纜,衛(wèi)星,電磁波或者互聯(lián)網(wǎng))上傳輸?shù)臄?shù)據(jù)時,最適當?shù)姆椒ㄊ羌用苓@些數(shù)據(jù),并且保證只有經(jīng)過授權(quán)的收件人擁有解密的方法。
拋開使用的算法不談,我們承認,有強大分析計算能力的第三方是有可能解密這些數(shù)據(jù)的。
這就是為什么本系統(tǒng)集成了一個常常能夠阻止?jié)撛诠粽叩拿艽a轉(zhuǎn)換機制。這樣,每次對系統(tǒng)的攻擊都只局限于一小部分數(shù)據(jù),并且在解密之后,只有權(quán)進行幾秒鐘的數(shù)據(jù)傳輸。
這種方法被用于付費電視的播送,而被稱為“控制字碼”的密碼只有幾秒鐘的有效時間。這些數(shù)據(jù)稱為“即時消費數(shù)據(jù)”,相應(yīng)的密碼被并行傳送。
數(shù)據(jù)存儲手段的涌現(xiàn)以及在任意時間觀看(或者使用)這些數(shù)據(jù)的可能性,并沒怎么改變數(shù)據(jù)傳輸?shù)默F(xiàn)狀。
為了使客戶更加滿意,從現(xiàn)在開始,在擁有大量用戶的分布式網(wǎng)絡(luò)上傳送加密數(shù)據(jù)成為可能,這些數(shù)據(jù)被儲存在用戶端的存儲單元里。一個包含加密密碼的文件同這些數(shù)據(jù)一起被傳送,而這個文件根據(jù)一個特定算法以及包含在用戶端安全模塊中密碼同樣被加密。
這個安全模塊通常是一塊智能卡的形式,在這塊智能卡的內(nèi)存里有其用來解密數(shù)據(jù)的密碼。
在下面的說明中,用來定義產(chǎn)品的有條件訪問的數(shù)據(jù)將被稱為“產(chǎn)品數(shù)據(jù)”。對“產(chǎn)品數(shù)據(jù)”,我們可以理解為一部電影,一條體育廣播,一個游戲或者一個軟件。
我們將會考慮這樣一個事實大量的用戶端在他們的存儲單元里存有同樣的“產(chǎn)品數(shù)據(jù)”和一個密碼文件。
如果用戶決定購買這個產(chǎn)品,用戶端的安全模塊就會收到必要的指令來解密密碼文件,從而在有效時間內(nèi)為解密“產(chǎn)品數(shù)據(jù)”提供密碼。
這樣,在“產(chǎn)品數(shù)據(jù)”被大量密碼加密的情況下,一個惡意的第三方就會攻擊這個由特定密碼加密的密碼文件。
此外,和產(chǎn)品數(shù)據(jù)相比,密碼文件是很小的。一部加密的電影大約是1千兆字節(jié)大小;而在解密解壓縮后同樣的電影能夠占用10千兆字節(jié)。
這樣,當這個第三方成功破解了密碼文件,其中的信息就會很容易的在互聯(lián)網(wǎng)上傳播,從而使其他人能夠通過使用一個修改過的譯碼器解密“產(chǎn)品數(shù)據(jù)”。
大家應(yīng)該知道,譯碼器所收到的數(shù)據(jù)流的格式是播送公司所獨有的,這就意味著在數(shù)據(jù)的接收階段很難將不同的信息包離析出來以得到加密形式的“產(chǎn)品數(shù)據(jù)”。這也是為什么通??偸谴鎯卧蛘哂脖P受到攻擊的原因,而后者由于經(jīng)濟原因成為一種標準設(shè)備(比如說IDE)。然后這個硬盤被轉(zhuǎn)接到個人電腦以從其他通道接受密碼文件。
出于在硬盤上存儲產(chǎn)品以備以后觀看的相似目的,在文件FR 2732 537中描述了第一個操作步驟。這個文件試圖解決的問題是和數(shù)據(jù)一同傳輸?shù)拿艽a的有限有效性的持續(xù)時間。這也是為什么所提出的解決方案是解密包含密碼(CW)的文件后用一個本地密碼將它們再加密,以便在任何時間都能使用數(shù)據(jù)。應(yīng)該注意的是,在進入譯碼器后數(shù)據(jù)本身的存儲狀態(tài)不變。
考慮到本地再加密的密碼存儲在一張智能卡中,文件EP 0 912052中描述的實施方案相應(yīng)的有所變動。
這兩個文件并沒有解決當數(shù)據(jù)儲存在易于訪問的存儲平臺時其容易受到攻擊的問題。
發(fā)明內(nèi)容
本發(fā)明的目的在于防止許多惡意用戶破解數(shù)據(jù)或密碼文件,從而使其無法從“產(chǎn)品數(shù)據(jù)”非法獲利。
這個目的通過一個存儲數(shù)據(jù)的方法來實現(xiàn),這些數(shù)據(jù)是從送到一個連著安全模塊和存儲單元(DB)的譯碼器的加密數(shù)據(jù)流中提取出來的。這個方法在于,在把加密數(shù)據(jù)流送到存儲單元(DB)之前用至少一個特定密碼(K1,K2)將其再加密。
這樣,每一個存儲單元里的數(shù)據(jù)對于所考慮的譯碼器來說都是特定的,而密碼文件的解密則只允許解密“產(chǎn)品數(shù)據(jù)”。
進入譯碼器的數(shù)據(jù)流首先被解譯以便離析出構(gòu)成“產(chǎn)品數(shù)據(jù)”的部分。這些數(shù)據(jù)由包含在譯碼器中的第一個密碼加密。
從譯碼器被認為并非是不可破解的這一事實可以看出,用包含在安全模塊里的一個密碼代替、或者附加于譯碼器中的第一個密碼是有可能的。
本發(fā)明在附圖的幫助下能夠更好的被理解,作為一個普適的實例,如圖圖1示出了譯碼器的不同組成部分。
圖2示出了根據(jù)本發(fā)明所進行的操作步驟。
具體實施例方式
圖1示出了進入數(shù)據(jù)流(EF)譯碼器(STB)以進行處理。要被存儲的數(shù)據(jù)根據(jù)預(yù)定存儲的特定格式被離析出來,在被轉(zhuǎn)移入存儲單元之前被送到一個加密模塊。這個模塊使用由安全模塊SM提供的密碼K1,這個安全模塊的形式一般是連接到譯碼器的一塊智能卡。這塊卡被認為是不可破解的,在卡和譯碼器STB之間的不同的交換由這兩個元件的一個特定密碼加密。從那時起就不可能閱讀被交換的信息以輸出修改過的譯碼器的信息交換。數(shù)據(jù)在加密后經(jīng)由通道FF傳輸?shù)酱鎯卧狣B。
由安全模塊SM提供的密碼K1能夠與一個特定于譯碼器的密碼K2相結(jié)合。從這個事實可以看出,安全模塊SM與存儲在存儲單元DB中的數(shù)據(jù)內(nèi)容的偏差,將不允許解密這些數(shù)據(jù)。
這些密碼是特定的,也就是說,每個譯碼器或者安全模塊都使用不同的密碼。這個密碼或者在初始化階段根據(jù)選定的生成模式隨機生成,或者由系統(tǒng)的操作中心送達。
圖2以圖表的形式描繪了進入流EF經(jīng)過一個第一過濾器Sdata后的同樣的處理進程。這個過濾器把預(yù)定存儲的數(shù)據(jù)離析出來;用于其他目的的數(shù)據(jù)則經(jīng)由出路EX被指定進行其他的處理。
第一階段加密NK(K1)通過使用來自安全模塊SM的第一密碼K1來實現(xiàn)。這些數(shù)據(jù)然后被送到第二加密模塊NK(K2),這個模塊的密碼K2來自譯碼器STB。
這些由譯碼器STB和安全模塊SM提供的密碼可以按照任何順序使用。
根據(jù)一個實施方案,加密模塊被直接放置在譯碼器和存儲模塊之間的界面。這樣,加密的施行就處在一個低的邏輯級上,并且在某種程度上獨立于譯碼器的中央管理軟件。
根據(jù)另一個實施方案,安全模塊SM有足夠強大的加密裝置接收將被加密的數(shù)據(jù)流并以加密的形式返回數(shù)據(jù)。在這種情況下,僅僅是安全模塊SM包含并使用加密密碼。
數(shù)據(jù)的加密能夠以來自安全模塊SM的第一個密碼K1為基礎(chǔ)第一次被執(zhí)行,然后以來自譯碼器STB的第二個密碼K2為基礎(chǔ)第二次被執(zhí)行。此外,根據(jù)存儲模塊的容量,該存儲模塊還可能提供一個密碼K3來對數(shù)據(jù)進行加密。
這樣就有必要集合這三個元件以便使解密數(shù)據(jù)成為可能。
這個原則適用于所有能夠存儲自身密碼的元件,而這個密碼能夠被一個新的數(shù)據(jù)解密層所應(yīng)用。
在大多數(shù)情況下,根據(jù)上述方法使用存儲的數(shù)據(jù)需要獲得一個權(quán)利。這個得自操作中心的權(quán)利能夠在下載“產(chǎn)品數(shù)據(jù)”前后獲得。這個權(quán)利包括一份產(chǎn)品的說明以及一個用來解密控制字碼的密碼。
根據(jù)我們的發(fā)明,至少一個階段的解密需要從安全模塊(SM)獲得一個密碼,而這時也需要有數(shù)據(jù)的使用權(quán)。在對所存儲數(shù)據(jù)的存儲方法進行解密的期間,如果數(shù)據(jù)使用權(quán)的驗證通過,密碼K1將只被提供給解密模塊。這樣,如果用戶有使用權(quán)的話,存儲單元DB中的數(shù)據(jù)將只恢復原來發(fā)送時的加密形式。
根據(jù)這個實施方案,存儲單元DB中的數(shù)據(jù)將附有一個純文本的說明,以說明使用這些數(shù)據(jù)的必要權(quán)利。而安全模塊SM在使用密碼K1解密前,將用包含在其安全存儲器中的信息驗證這些權(quán)利。
權(quán)利要求
1.一個存儲數(shù)據(jù)的方法,所述數(shù)據(jù)是從送往一個連著安全模塊(SM)和存儲單元(DB)的譯碼器(STB)的加密數(shù)據(jù)流中提取出來的,這個方法在于,在把加密數(shù)據(jù)流送到存儲單元(DB)之前用至少一個特定密碼(K1,K2)將其再加密。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于使用特定于安全模塊(SM)的密碼(K1)作為一個單個密碼。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于使用特定于譯碼器(STB)的密碼(K2)作為一個單個密碼。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于用幾個密碼連續(xù)加密數(shù)據(jù),或者先用安全模塊的密碼(K1)然后用譯碼器的密碼(K2)加密,或者采用相反的順序進行加密。
5.根據(jù)權(quán)利要求1至4所述的方法,其特征在于用包含在存儲單元(DB)中的一個加密密碼(K3)對將要存儲到其中的數(shù)據(jù)進行加密。
6.根據(jù)權(quán)利要求1或2所述的方法,其特征在于要被加密的數(shù)據(jù)被傳送到安全模塊(SM)中進行加密,然后加密過的數(shù)據(jù)被送到存儲單元(DB)。
7.根據(jù)權(quán)利要求1至3中的一條所述的方法,其特征在于在一個位于存儲單元(DB)和譯碼器(STB)之間的低級別的界面中實施數(shù)據(jù)的加密或解密。
全文摘要
本發(fā)明的目的在于提出一種防止存儲在譯碼器(STB)的存儲單元(DB)中的一組數(shù)據(jù)的密碼文件被破解的方法(其中STB包括一個安全模塊),從而使許多惡意用戶無法通過破解密碼文件而從所存儲的數(shù)據(jù)產(chǎn)品非法獲利。這個方法在于從一個加密的數(shù)據(jù)流中提取數(shù)據(jù)并送到存儲單元(DB),而在把提取出的數(shù)據(jù)轉(zhuǎn)移到存儲單元之前用至少一個特定密碼(K1,K2)將這些數(shù)據(jù)再加密。
文檔編號H04N7/16GK1486570SQ02803770
公開日2004年3月31日 申請日期2002年1月15日 優(yōu)先權(quán)日2001年1月16日
發(fā)明者克利斯托弗·尼古拉斯, 克利斯托弗 尼古拉斯 申請人:納格拉卡德股份有限公司