分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

條件接收系統(tǒng)按層次可分別采用兩種加密體制,對于控制字加密采用對稱加密體制,形成用戶授權控制(ECM)信息;用戶授權管理(EMM)信息的加密則采用非對稱加密體制??刂谱趾彤a品密鑰需要經常變換,因此,對控制字和產品密鑰的加密,加密算法的運行速度要求相對較高,而DES加密算法運行速度比RSA加密算法快100倍以上,從實現(xiàn)速度角度來考慮,DES加密算法更能滿足系統(tǒng)的要求。

分組密鑰的變化周期較長,對于加密算法的運行速度要求不是那么嚴格,但對于安全性的要求要高的多,同時,個人密鑰生成后就不再改變,因此采用RSA加密算法,在發(fā)送端對于密鑰使用公開密鑰加密,在接收端用戶利用自己有效的私有密鑰進行解密,其運行速度和安全性都可以得到保證。

一、DES和RSA加密算法

1、DES加密算法

DES加密算法是一種典型的對稱密鑰加密算法,把輸入的數(shù)據(jù)按64比特分組,稱為明文,然后經16輪反復加密運算后輸出密文,密鑰長56比特,加密解密密鑰相同,算法所有的保密性只依賴于密鑰。DES加密技術是目前最為成熟的加密技術,然而56比特的密鑰很容易被破解,使用64比特(即56比特)的DES已經遠遠達不到現(xiàn)在加密的要求,于是128位的3DES技術便取而代之。3DES加密算法是為了改進DES加密算法密鑰長度不夠而設計的改良算法,因而在實際中有著更廣泛的應用。

2、RSA加密算法

RSA加密算法是一種非對稱密鑰加密算法。其安全性依賴于大數(shù)分解,如果要分解一個200位的十進制數(shù),即使用每秒10億次運算的超高速計算機,也要1萬年。雖然從理論上沒有證明RSA的破譯難度與大數(shù)分解難度是等價的,但是RSA算法從提出到現(xiàn)在己近30年,經歷了各種攻擊的考驗,普遍認為是目前最優(yōu)秀的公鑰方案之一。RSA算法的安全性與密鑰長度有關,增加密鑰的長度,可以增加破解難度。一般要求公開密鑰與私有密鑰的長度相同,現(xiàn)在密鑰長度一般都在1024位以上。

對RSA加密算法的攻擊通常不是針對算法本身進行,而是迂回攻擊其中一些漏洞,如選擇密文攻擊、公共模數(shù)攻擊、小指數(shù)攻擊等。RSA的缺點是:產生密鑰復雜,受素數(shù)生成技術的限制,難以做到一次一密,且分組長度太大。為保證安全性,分組長度至少要在600比特以上,使運算速度較對稱密鑰密碼算法慢幾個數(shù)量級。

二、數(shù)字電視條件接收系統(tǒng)中密鑰的生成

數(shù)字電視條件接收系統(tǒng)中為了防止信息被竊,要求加密算法不能輕易被破譯。同時,為了滿足用戶接收端的需要,加密算法的時間不應太長。針對上面介紹的兩種算法
的特點,結合條件接收系統(tǒng)中多層加密體系,利用上述兩種算法的優(yōu)點,互相補充共同提高整個系統(tǒng)的安全性。

數(shù)字電視條件接收系統(tǒng)按層次分別采用兩種加密體制,對于控制字加密采用對稱加密體制,形成ECM信息;EMM信息的加密則采用非對稱加密體制。

控制字和產品密鑰需要經常變換,因此,對控制字和產品密鑰的加密,加密算法的運行速度要求相對較高,而DES算法運行速度比RSA算法快100倍以上,從實現(xiàn)速度角度來考慮,DES算法更能滿足系統(tǒng)的要求。

分組密鑰的變化周期較長,對于加密算法的運行速度要求不太嚴格,但對安全性的要求較高。同時,個人密鑰生成后就不再改變,因此采用RSA算法,在發(fā)送端對于密鑰使用公開密鑰加密,在接收端用戶利用自己有效的私有密鑰進行解密,使得其運行速度和安全性都可以得到保證。

1、產品密鑰的生成

產品密鑰(PK)是加密控制字(CW)采用的密鑰,密鑰取決于該節(jié)目所在的產品號Product_id。產品號經過變換后生成產品密鑰,生成辦法為將Prod-uct_id經過單向Hash變換成具有一定散列性質的數(shù)列,然后再與加密系統(tǒng)的根密鑰進行XOR運算,即:

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

式中的BaseKey是加密系統(tǒng)的根密鑰,出于安全性,產品密鑰通常數(shù)小時更換一次。

2、超組密鑰的生成

超組密鑰(SGK)是加密PK采用的密鑰,取決于該超組的ID號SuperGroup_id,超組號經過變換后生成超組密鑰,生成辦法為將SuperGroup_id經過單向Hash變換成具有一定散列性質的數(shù)列,然后再與加密系統(tǒng)的根密鑰進行XOR運算,即:

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

式中的BaseKey是加密系統(tǒng)的根密鑰,超組密鑰通常6個月更換一次。

3、分組密鑰的生成

分組密鑰(GK)是用于加密授權EMM的指紋驗證所采用的密鑰,組密鑰可采用通過SGK推導出多個GK的方式來得到所屬超組所有的組密鑰,或者SGK推導出一個GK作為該超組所有組的密鑰。GK不用傳輸,當SGK更改時,GK也要相應更換。

4、個人密鑰的生成

為了防止密鑰在傳送過程中被非法截獲,個人密鑰的分配采用雙密鑰法,對每一用戶分配一對密鑰,其中一個是使用者本人掌握的密鑰稱為私有密鑰,它只用于解密,這個密鑰存儲在用戶智能卡中。另一個是公開密鑰,它只用于加密。兩個密鑰通過算法形成一一對應關系,只有通過對應的私有密鑰才能解開用公開密鑰所加密的數(shù)據(jù)。一般私有密鑰(在條件接收系統(tǒng)中指個人分配密鑰PDK)都存儲于用戶的智能卡中,所以在接收端,SGK的解密是唯一的。個人分配密鑰(PDK)是用來加密SGK的密鑰,每個終端設備有一個不重復的唯一的地址碼Card_address,PDK是和這個地址碼相關聯(lián)的一個數(shù)列(密鑰)。由于加密算法選擇了RSA,因此生成密鑰對需要一對大素數(shù),將加密系統(tǒng)的根密鑰作為一個素數(shù)p,Card_Address經一種單向Hash函數(shù)變換后生成另一個素數(shù)q,如下式所示:

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

單向Hash函數(shù)選擇MD5算法。有了兩個素數(shù)p和q后,用RSA的密鑰生成算法生成RSA密鑰對和一個模,RSA算法密鑰對中的公鑰作為PDK用來對密鑰SGK進行加密,私鑰作為存儲到智能卡中的個人分配密鑰PDKI,PDK與PDK1構成了雙密鑰。

三、數(shù)字電視條件接收系統(tǒng)中分層加密的實現(xiàn)方法

四層加密機制引入了組的概念,減少了分發(fā)ECM和EMM信息耗費的帶寬和時間。但是當一個系統(tǒng)需要管理上千萬用戶和幾百套節(jié)目時,向所有用戶分發(fā)信息也將成為它的一個沉重負擔,要使密鑰安全不被破譯,又使用戶接收更新密鑰更及時,同時還要節(jié)省帶寬,對組用戶的尋址方式是關鍵,組密鑰的管理直接關系到一個條件接收系統(tǒng)的性能。利用超組可以使用戶組變得更大,從而既可以降低帶寬又可以提高產品密鑰的輪發(fā)速度。

以一個超組4096張智能卡為例,每個超組包含16個一般的用戶組。產品密鑰用SGK來加密,這樣以超組的尋址方式可以使產品密鑰循環(huán)速率提高16倍。

不采用超組的方式而直接把一般組的大小增加到4096也可以提高產品密鑰循環(huán)速率,但組變大以后,會使組的授權管理就變得復雜,降低系統(tǒng)的效率,采用超組方式,用SGK對PK進行保護,組的授權信息仍以一般組的形式進行,用GK來加密。

有超組加密機制有以下3種情況:SGK和GK相同;SGK推出超組內各個組的GK;SGK由GK加密后輪發(fā)。

圖1是由SGK與GK相同的有超組加密機制。在SGK與GK相同的情況下,SGK由個人分配密鑰加密,由于GK與SGK相同,GK不需要發(fā)送,因此,也就不需要占用帶寬。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

GK和SGK的發(fā)送也可以使用如下方式:GK由PDK加密以唯一尋址方式發(fā)送到用戶,SGK由GK加密,以組尋址方式發(fā)送,其加密機制如圖2所示。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

在GK加密SGK情況下,Group Key和SuperGroup Key單獨產生。GK由個人分配密鑰加密后輪發(fā),SGK由GK加密后輪發(fā)。由于SGK以組尋址的方式發(fā)送,所以它占的帶寬很小。而PK以超組尋址的方式發(fā)送,從而減少了總的帶寬。

四、密鑰帶寬測試結果

產品密鑰帶寬計算分為3種方式:無超組PK,有超組(SGK由GK加密)PK和有超組(SGK推導出GK) PK。

計算公式分別如下:

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

其中,ΔT:產品密鑰EMM輪發(fā)周期;EMMi:產品密鑰EMM包的長度;Nu:用戶數(shù);Ng:每個組用戶個數(shù);Ns:每個超組用戶個數(shù);Np:產品的個數(shù)。

根據(jù)以上3種情況,得出以下結論:

(1)四層有超組的兩種方式產品密鑰計算公式是相同的,所以它們的帶寬是相等的。

(2)四層無超組與四層有超組的計算公式是不同的,區(qū)別在于四層無超組方式產品密鑰是對組尋址的,而四層有超組方式產品密鑰是對超組尋址的。表1是在特定的刷新時間下,四層無超組與四層有超組的產品密鑰帶寬數(shù)據(jù)。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

通過圖3可以看出,刷新時間與帶寬成反比的關系,在四層無超組的情況下,20s欲刷新2000000萬用戶的產品密鑰所需的帶寬為6.45kbps;而在四層有超組的情況下,產品密鑰所需的帶寬為103.12 kbps。可以看到在相同的刷新時間下,有超組的產品密鑰所占的帶寬要遠遠大于沒有超組的情況。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

五、結論

論文采用了SGK和GK相同的有超組四層加密機制,密鑰的刷新周期如表2所示。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

在用戶為2萬情況下,得到的EMM寬帶和總寬帶如表3所示。

分層加密在數(shù)字電視條件接收系統(tǒng)中的應用

從實際得到寬帶和通過計算得到的寬帶一致,說明有超組的四層加密機制能有效降低帶寬。

小知識之數(shù)字電視條件接收系統(tǒng)

數(shù)字電視條件接收系統(tǒng)是指用來控制訂戶(Subscriber)對廣播服務或者節(jié)目進行接收的系統(tǒng),即訂戶只能收看經過授權的廣播服務或者節(jié)目。它是實現(xiàn)個性化服務的關鍵?;灸康氖窃陔娨暸_電視系統(tǒng)中對用戶進行授權控制及授權管理,從而實現(xiàn)數(shù)據(jù)廣播系統(tǒng)的有償服務。