數位電視條件接收晶片及條件接收的實現方法
2024-02-16 13:07:15
專利名稱:數位電視條件接收晶片及條件接收的實現方法
技術領域:
本發明涉及數位電視條件接收,尤其是涉及一種用於條件接收的數位電視接收晶片,以及數位電視條件接收的實現方法。
背景技術:
隨著數位電視傳輸技術的發展,數位化、網絡化的廣播電視技術在世界範圍迅猛發展,建立在廣播電視系統上的綜合信息交互系統具有傳輸質量高、範圍廣、用戶多,速度高的優勢,使得數字廣播電視具有廣播的市場前景。由於數位電視系統具有以上特點和優勢,其安全需求與其它電子信息系統既有共同點、又有不同點,如何保證整個數位電視廣播系統的安全,需要採取數據保密,安全的訪問控制,用戶安全管理等各方面的措施。條件接收(Conditional Access,簡稱CA)就是保證授權用戶能獲得已預定的數位電視節目、業務及服務,未授權用戶則無法獲得。條件接收系統(CAS)在前端系統分為加擾部分和加密部分。加擾(Scrambling)是通過控制字對傳輸流進行按位加密的過程,而加密部分則完成對控制字的保護;
條件接收系統的核心是控制字傳輸的控制。在採用MPEG 2標準的數位電視系統中, 與節目流有條件接收系統相關的有兩個數據流授權控制信息ECM (Entitle Control Message)和授權管理信息EMM (Entitle Manage Message)。條件接收設備需要從ECM和 EMM中提取有用信息,通過一系列的運算,從而得到控制字。一個典型的控制字運算流程如下
1、處理器中央處理器從ECM或者EMM中獲取加密後的控制字。2、經過多級的解密,獲得傳輸流解擾控制字。3、將運算得到的控制字,寫入到解擾模塊中,完成傳輸流的解擾,得到解擾的傳輸流。考慮到安全性,在控制字解密過程中產生的密鑰(KEY)以及最後的控制字,要求對中央處理器是不可見的。從上述流程可以看出來,控制字的計算過程,需要多次解密運算。由於要求中央處理器不能接觸到控制字解密過程中任何一個用於加密或解密的密鑰(KEY),因此,需要對控制字的計算過程進行特殊處理。常規的做法是,在系統內增加一個中央處理器專門負責控制字的解密運算,配合完成傳輸流的解擾處理。申請號為200510080503. 5的專利「中央處理器和用於中央處理器的程序」,描述的就是在晶片內部構建中央處理器安全運行環境,在所在區域中,使用專用密鑰來驗證指令代碼,以對中央處理器核心和外界的輸入和輸出數據執行加密處理,從而達到安全運行程序代碼的目的。此做法易於理解,但在實現過程中有如下問題首先,要給負責控制字的解密中央處理器構建獨立的安全運行環境,以便與系統中的中央處理器隔離,需要增加輔助的安全控制模塊,例如程序的加解密單元等,增加了系統設計的難度;其次,資源上比較浪費。
因此,迫切需要一種更簡單但更安全的方法實現對控制字的處理,以提高條件接收系統的安全性能。
發明內容
為了解決上述問題,本發明提供了一種數位電視條件接收晶片及數位電視條件接收實現方法,通過DMA控制器實現控制字的運算過程,使中央處理器無法接觸到控制字解碼過程中產生的任何一個中間密鑰以及最終的控制字,安全可靠。本發明採用如下技術方案實現一種數位電視條件接收晶片,其包括中央處理器、 傳輸流處理器、非易失性存儲器和控制字解密模塊,所述晶片還包括
DMA控制器,用於根據存儲在非易失性存儲器中的任務鍊表使控制字解密模塊完成對控制字的解密運算;
以及存儲保護單元,用於根據DMA控制器從非易失性存儲器搬運的配置信息進行安全配置後,對所述晶片的總線地址區間通過構建安全島進行保護;
其中,所述安全島是在所述晶片總線地址空間中定義一個安全區域,所述安全島的屬性為僅有DMA控制器能夠訪問該安全區域,且DMA控制器只能在該安全區域內進行數據的搬運操作;非易失性存儲器只允許DMA控制器可讀,僅有DMA控制器僅可對控制字解密模塊的密鑰寄存器進行寫操作。其中,所述傳輸流處理器包括解復用單元、解擾器及加擾器,且解擾器接收到的控制字不能被讀出;中央處理器可以向加擾單元寫入加擾密鑰。其中,所述非易失性存儲器受到存儲保護單元的保護,所述非易失性存儲器中的數據不能再次修改,並禁止中央處理器讀取其中的密鑰數據。其中,所述控制字解密模塊只接收DMA控制器從非易失性存儲器搬運的解密根密鑰。另外,本發明提出一種數位電視條件接收的實現方法,其包括步驟 安全初始化並構建安全島;
中央處理器激活DMA控制器執行控制字解密運算的任務鍊表; 由DMA控制器將非易失性存儲器內的解密根密鑰搬運到控制字解密模塊的密鑰寄存器中,啟動控制字解密模塊進行控制字的解密運算,於解密完成後輸出控制字; 由傳輸流處理器根據控制字對傳輸流進行解擾處理;
其中,所述安全島是在所述晶片總線地址空間中定義一個安全區域,所述安全島的屬性為僅有DMA控制器能夠訪問該安全區域,且DMA控制器只能在該安全區域內進行數據的搬運操作;非易失性存儲器只允許DMA控制器可讀,僅有DMA控制器僅可對控制字解密模塊的密鑰寄存器進行寫操作。其中,所述構建安全島的步驟具體包括 上電後復位鎖定中央處理器;
DMA控制器將存儲在非易失性存儲器內用於存儲保護單元的安全初始化配置信息搬運到存儲保護單元的配置寄存器中,實現對存儲保護單元的安全配置,形成安全島; 撤離中央處理器的復位鎖定。在一個優選實施例中,本發明的所述方法還包括步驟由傳輸流處理器中的解復用單元對傳輸流進行解復用處理,獲得ECM/EMM信息;由中央處理單元獲取ECM/EMM信息, 並將處理後的ECM/EMM信息傳送給控制字解密模塊。在一個優選實施例中,本發明的所述方法還包括步驟由傳輸流處理器對解擾後的傳輸流進行二次加擾處理。另外,所述解密根密鑰存儲在非易失性存儲器內,且僅允許由DMA控制器搬運至所述控制字解密模塊。與現有技術相比,本發明具有如下有益效果
本發明通過構建安全島並配置DMA控制器的任務鍊表,在控制字解密過程中,需要DMA 控制器執行的任務鍊表全部存儲在非易失性存儲器中,由於非易失性存儲器的訪問屬性是只允許DMA控制器進行讀操作,且DMA控制器無法讀取安全島外的數據,因此,攻擊者無法使DMA控制器執行非法任務鍊表而對條件接收晶片進行攻擊,提高數位電視條件接收的安全性能。
圖1是本發明條件接收晶片的模塊結構示意圖2是是本發明條件接收晶片實現傳輸流加解擾處理的流程示意圖。
具體實施例方式下面結合附圖和具體實施方式
對本發明作進一步詳細的說明。如圖1所示,本發明提出一種用於數位電視條件接收系統中的條件接收晶片1包括中央處理器11用於對條件接收晶片1進行運行控制和資源調配,其是條件接收晶片1 的控制中心,也是條件接收晶片1內唯一的代碼執行單元;DMA(Direct Memory Access,直接內存存取)控制器12隻能讀取非易失性存儲器13中的存儲內容,且只能將數據寫入到控制字解密模塊15 ;非易失性存儲器13用於存儲控制字解密運算需要的解密根密鑰、對存儲保護單元14初始化的安全配置信息、DMA控制器12的任務鍊表,且通過存儲保護單元14配置屬性為非易失性存儲器13隻允許DMA控制器12可讀且不可寫,其它模塊(例如中央處理器11)等均無法訪問;存儲保護單元14完成總線地址保護功能並構建安全島,且中央處理器11無法接觸到安全島內信息,DMA控制器12隻能在安全島內進行數據搬運,並使控制字解密模塊15完成控制字(Control Word, CW)的解密運算過程;控制字解密模塊15完成控制字的運算過程,並將控制字直接通過專用總線輸出給傳輸流處理器16 ;傳輸流處理器 16完成傳輸流(TS)的解復用、解擾、二次加擾功能,傳輸流處理器16包括解復用單元161、 解擾器(Descrambler) 162 (解擾器162進行解擾使用KEY是控制字解密模塊15產生的控制字)和用於對傳輸流處理器16進行二次加擾的加擾器(Scrambler) 163 (加擾器163的密鑰可以來源於中央處理器11)。本發明所提到的安全島,就是通過配置存儲保護單元14,在條件接收晶片1的總線地址空間中定義一個安全區域(總線地址區間),安全區域的訪問屬性如下首先,該安全區域僅授權的主設備(本發明安全島內唯一的主設備是DMA控制器12)可以訪問,非授權的主設備無法訪問;其次,授權的主設備無法將該安全區域的內容搬運至安全區域外,僅能在該安全區域內實現數據的搬運操作。
6
安全島包含如下組件非易失性存儲器13,其主要存儲控制字解密運算需要的密鑰、存儲保護單元14初始化安全配置信息和DMA控制器12的任務鍊表;存儲保護單元14完成總線上地址區域的保護功能,構建安全島,且中央處理器11無法接觸到安全島內信息; DMA控制器12可以實現在安全島內進行數據搬運,引導控制字解密模塊15完成控制字的解密過程;控制字解密模塊15完成控制字的運算過程,並將解密後的控制字直接通過專用總線輸出給傳輸流處理器16。本發明通過硬體安全初始化構建安全島,使得控制字的運算過程使用DMA控制器 12實現,中央處理器11無法接觸到運算過程中產生的中間密鑰或者最後的控制字;並且, 本發明通過構建DMA控制器12的任務鍊表(處於安全島內)使DMA控制器12能完成指定的搬運操作,通過DMA控制器12可以實現控制字的運算過程。而DMA控制器12安全特性如下第一,該DMA控制器12在存儲保護單元14的保護下,作為安全島內唯一的主設備,可有效地實現特定保密數據的點對點傳輸要求,且不會將絕密數據洩漏至安全島外;第二,該DMA控制器12將對要執行的任務鍊表進行保護規則檢測,確保每個任務鍊表沒有被錯誤使用,保證點對點傳輸的正確性;第三,該DMA控制器 12將檢查任務鍊表中包含的地址是否在安全島內,保證不會將絕密數據洩漏至安全島外;
雖然中央處理器11能激活DMA控制器12處理任務鍊表,但是中央處理器11無法控制 DMA控制器12進行任務鍊表定義之外的任務操作。結合圖2所示,是一個典型的傳輸流加解擾流程示意圖,也就是本發明條件接收晶片實現傳輸流加解擾處理的流程示意圖。該實施例具體包括如下實現步驟
步驟S11,安全初始化並構建安全島,包含如下步驟,
D1、上電復位後,條件接收晶片1進入硬體安全初始化流程,中央處理器11在此過程中處於復位鎖定狀態。D2、DMA控制器12將存儲在非易失性存儲器13內用於存儲保護單元14的安全初始化配置信息搬運到存儲保護單元14的配置寄存器中,實現對存儲保護單元14的安全配置,形成安全島。其中,安全島屬性如下非易失性存儲器13隻允許DMA控制器12可讀,其它主設備(例如中央處理器11)對非易失性存儲器13不可訪問;DMA控制器12僅可對控制字解密模塊15的密鑰寄存器進行寫操作;DMA控制器12不能對上述安全島之外的區域進行訪問操作;中央處理器11無法訪問控制字解密模塊15的密鑰寄存器。D3、安全島形成,硬體安全初始化結束。D4、撤離中央處理器11的復位鎖定,中央處理器11開始執行程序。步驟S12、中央處理器11判斷是否需要控制字進行解密運算,若是,則進入步驟 S13。步驟S13、中央處理器11從傳輸流處理器16的解復用單元161輸出信息中,獲取授權控制信息 ECM (Entitle Control Message)和授權管理信息 EMM (Entitle Manage Message),經過中央處理器11處理後,將處理過的ECM/EMM信息輸出到控制字解密模塊15 中。步驟S14、中央處理器11激活DMA控制器12去執行非易失性存儲器13內執行控制字解密運算的任務鍊表。在控制字解密過程中,需要DMA控制器12執行的任務鍊表全部存儲在非易失性存儲器13中,由於非易失性存儲器13的訪問屬性是只允許DMA控制器12進行讀操作,且DMA 控制器12無法讀取安全島外的數據,因此,攻擊者無法使DMA控制器12執行非法任務鍊表而對條件接收晶片1進行攻擊。步驟S15、DMA控制器12讀取非易失性存儲器13內執行控制字解密的任務鍊表, 將非易失性存儲器13內的解密根密鑰搬運到控制字解密模塊15的密鑰寄存器中,DMA控制器12啟動控制字解密模塊15開始控制字的解密運算過程。步驟S16、判斷是否已完成控制字的解密運算,若是則轉入步驟S17,否則轉入步驟 S14。步驟Sl7、控制字解密模塊I5直接將解密的控制字輸出到解擾器162,由解擾器 162對傳輸流進行解擾處理。步驟S18、中央處理器11將二次加擾的密鑰配置到傳輸流處理器16中,由加擾器 163對傳輸流進行二次加擾,並將二次加擾後的傳輸流輸出給機頂盒(Set Top Box, STB)0綜上,本發明通過純硬體方式實現控制字的運算過程,能大大提高數位電視條件接收晶片的安全性能,簡化條件接收系統的複雜度。以上所述僅為本發明的較佳實施例而已,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換和改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種數位電視條件接收晶片,其包括中央處理器、傳輸流處理器、非易失性存儲器和控制字解密模塊,特徵在於,所述晶片還包括DMA控制器,用於根據存儲在非易失性存儲器中的任務鍊表使控制字解密模塊完成對控制字的解密運算;存儲保護單元,用於根據DMA控制器從非易失性存儲器搬運的配置信息進行安全配置後,對所述晶片的總線地址區間通過構建安全島進行保護;其中,所述安全島是在所述晶片總線地址空間中定義一個安全區域,所述安全島的屬性為僅有DMA控制器能夠訪問該安全區域,且DMA控制器只能在該安全區域內進行數據的搬運操作;非易失性存儲器只允許DMA控制器可讀,僅有DMA控制器僅可對控制字解密模塊的密鑰寄存器進行寫操作。
2.根據權利要求1所述的數位電視條件接收晶片,其特徵在於,所述傳輸流處理器包括解復用單元、解擾器及加擾器,且解擾器接收到的控制字不能被讀出;中央處理器可以向加擾單元寫入加擾密鑰。
3.根據權利要求1所述的數位電視條件接收晶片,其特徵在於,所述非易失性存儲器受到存儲保護單元的保護,所述非易失性存儲器中的數據不能再次修改,並禁止中央處理器讀取其中的密鑰數據。
4.根據權利要求1所述的數位電視條件接收晶片,其特徵在於,所述控制字解密模塊只接收DMA控制器從非易失性存儲器搬運的解密根密鑰。
5.一種數位電視條件接收的實現方法,其特徵在於,所述方法包括步驟安全初始化並構建安全島;中央處理器激活DMA控制器執行控制字解密運算的任務鍊表;由DMA控制器將非易失性存儲器內的解密根密鑰搬運到控制字解密模塊的密鑰寄存器中,啟動控制字解密模塊進行控制字的解密運算,於解密完成後輸出控制字;由傳輸流處理器根據控制字對傳輸流進行解擾處理;其中,所述安全島是在所述晶片總線地址空間中定義一個安全區域,所述安全島的屬性為僅有DMA控制器能夠訪問該安全區域,且DMA控制器只能在該安全區域內進行數據的搬運操作;非易失性存儲器只允許DMA控制器可讀,僅有DMA控制器僅可對控制字解密模塊的密鑰寄存器進行寫操作。
6.根據權利要求5所述數位電視條件接收的實現方法,其特徵在於,所述構建安全島的步驟具體包括上電後復位鎖定中央處理器;DMA控制器將存儲在非易失性存儲器內用於存儲保護單元的安全初始化配置信息搬運到存儲保護單元的配置寄存器中,實現對存儲保護單元的安全配置,形成安全島;撤離中央處理器的復位鎖定。
7.根據權利要求5所述數位電視條件接收的實現方法,其特徵在於,所述方法還包括步驟由傳輸流處理器中的解復用單元對傳輸流進行解復用處理,獲得ECM/EMM信息;由中央處理單元獲取ECM/EMM信息,並將處理後的ECM/EMM信息傳送給控制字解密模塊。
8.根據權利要求5所述數位電視條件接收的實現方法,其特徵在於,所述方法還包括步驟由傳輸流處理器對解擾後的傳輸流進行二次加擾處理。
9.根據權利要求5所述數位電視條件接收的實現方法,其特徵在於,所述解密根密鑰存儲在非易失性存儲器內,且僅允許由DMA控制器搬運至所述控制字解密模塊。
全文摘要
本發明公開一種數位電視條件接收晶片及條件接收實現方法。所述條件接收晶片包括中央處理器、傳輸流處理器、非易失性存儲器和控制字解密模塊;DMA控制器,用於根據存儲在非易失性存儲器中的任務鍊表使控制字解密模塊完成對控制字的解密運算;存儲保護單元,用於根據DMA控制器從非易失性存儲器搬運的配置信息進行安全配置後,對所述晶片的總線地址區間通過構建安全島進行保護。本發明通過構建安全島並配置DMA控制器的任務鍊表,攻擊者無法使DMA控制器執行非法任務鍊表而對條件接收晶片進行攻擊,提高數位電視條件接收的安全性能。
文檔編號H04N21/434GK102447955SQ201110444038
公開日2012年5月9日 申請日期2011年12月27日 優先權日2011年12月27日
發明者劉華預, 王良清, 陶玉茂 申請人:深圳國微技術有限公司