專利名稱:一種在Windows下開發(fā)條件接收系統(tǒng)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及CA( Conditional Access System,也稱CAS,條件接收系統(tǒng)) 在電腦的集成開發(fā),尤其涉及的是, 一種才莫擬機頂盒開發(fā)環(huán)境,在Windows 操作系統(tǒng)下實現(xiàn)CA集成開發(fā)的系統(tǒng)和方法。
背景技術(shù):
CA是數(shù)字電視項目中重要的組成部分,它用于完成系統(tǒng)用戶的認(rèn)證、 授權(quán)和節(jié)目加擾工作,解決了兩個問題,包括如何從用戶處收取費用和如 何阻止用戶收看那些未經(jīng)授權(quán)的付費頻道。條件接收系統(tǒng)是一個綜合性的 系統(tǒng),它集成了多種先進(jìn)的技術(shù),所涉及的技術(shù)包括系統(tǒng)調(diào)度管理、網(wǎng) 絡(luò)技術(shù)數(shù)字壓縮編碼、加解擾算法、加解密算法、復(fù)用器技術(shù)、調(diào)制解調(diào) 技術(shù)、機頂盒才支術(shù)、智能卡技術(shù)等,同時也涉及到用戶管理、節(jié)目管理、 收費管理等數(shù)據(jù)應(yīng)用技術(shù)?,F(xiàn)階段的CA'開發(fā)受制于讀卡器,Turner (調(diào)諧器,也稱高頻頭),解 擾器的限制,只能在機頂盒里進(jìn)行開發(fā)調(diào)試。這樣會有以下弊端(l)集 成/調(diào)試速度慢,不方便;(2)開發(fā)周期長,成本高,可能使用到昂貴的仿 真器。具體地說,由于CA的調(diào)試工作只能在機頂盒上完成,因此需要昂貴的 Connect連接器才能將生成的目標(biāo)文件下載到機頂盒中進(jìn)行調(diào)試,而且每次 改動代碼之后,需要經(jīng)過重新編譯,將生成的目標(biāo)文件下載到機頂盒中, 這點需要花較長的時間,并且調(diào)試環(huán)境不及PC上方便。公開號為CN1S55054的中國專利《基于Windows平臺的嵌入式應(yīng)用軟件開發(fā)模擬器》,提供了 一種基于Windows平臺的嵌入式應(yīng)用軟件開發(fā)模擬 器。但是,該專利僅僅提出了包括一中間層的模擬器,所述中間層包括了 用于提供不同CA系統(tǒng)的模擬功能的CA模塊,并未給出如何具體實現(xiàn)CA 系統(tǒng)的模擬功能。因此,現(xiàn)有技術(shù)存在缺陷,需要改進(jìn)。發(fā)明內(nèi)容本發(fā)明所要解決的技術(shù)問題是如何基于Windows平臺模擬實現(xiàn)CA系 統(tǒng)的功能。本發(fā)明的技術(shù)方案如下一種在Windows下開發(fā)條件接收系統(tǒng)的系統(tǒng),其中,其包括與智能卡 進(jìn)行交互和模擬調(diào)諧器解析數(shù)據(jù)的架構(gòu)單元,存儲信息和控制條件接收系 統(tǒng)CA的實現(xiàn)單元,以及管理CA消息、開發(fā)流程和開發(fā)界面的應(yīng)用單元; 所述實現(xiàn)單元分別與所述架構(gòu)單元和所述應(yīng)用單元相連接。其中,所述架構(gòu)單元包括對數(shù)據(jù)流進(jìn)行碼流解析、搜索節(jié)目特定信息 表和數(shù)據(jù)的碼流文件解析模塊,以及與智能卡進(jìn)行交互的智能卡通訊模塊。其中,所述應(yīng)用單元包括管理CA消息的信息管理;漠塊,管理CA開發(fā) 流程的流程管理模塊,管理CA開發(fā)界面的界面管理模塊。其中,所述實現(xiàn)單元包括與所述架構(gòu)單元進(jìn)行交互和存儲信息的驅(qū)動 適配模塊,控制CA并與所述應(yīng)用單元進(jìn)行交互的實現(xiàn)子單元。其中,所述驅(qū)動適配模塊包括管理內(nèi)存、任務(wù)和信號量的控制子模塊; 所述實現(xiàn)子單元包括解析數(shù)據(jù)并控制CA開發(fā)的內(nèi)核模塊,與所述應(yīng)用單元 進(jìn)行交互和管理CA消息的表現(xiàn)模塊。一種在Windows下開發(fā)條件接收系統(tǒng)的方法,其包括以下步驟Al、 預(yù)注冊用于接收條件接收系統(tǒng)CA消息的消息回調(diào);A2、初始化CA線程 和信號量;A3、選擇節(jié)目,將其節(jié)目映射表和條件接收表數(shù)據(jù)傳輸?shù)紺A進(jìn)行測試。其中,步驟A1、 A2和A3分別在Windows下執(zhí)行。 其中,步驟A2之前還執(zhí)行步驟設(shè)置CA。其中,步驟A3中,所述測試具體包括以下步驟A31、 CA解析得到 授權(quán)管理信息的包識別碼,過濾授權(quán)管理信息,判斷用戶具有觀看所述節(jié) 目的權(quán)限,則獲取用戶的業(yè)務(wù)密鑰;A32、 CA解析得到授權(quán)控制信息的包 識別碼,過濾授權(quán)控制信息,根據(jù)所述業(yè)務(wù)密鑰得到解擾控制字,播放所 述節(jié)目。其中,步驟A31還執(zhí)行步驟判斷用戶不具有觀看所述節(jié)目的權(quán)限, 則向用戶發(fā)送提示信息。采用上述方案,本發(fā)明將開發(fā)CA工作全部轉(zhuǎn)移到PC,在PC上完成 CA所有的開發(fā)調(diào)試工作,之后直接將代碼移植到機頂盒環(huán)境上進(jìn)行編譯即 可使用。從而無需購置過多的仿真器,節(jié)約了成本;同時節(jié)約了調(diào)試時間, 縮短了開發(fā)周期;并且簡化了調(diào)試工作。
圖1為本發(fā)明系統(tǒng)的模塊間層次關(guān)系示意圖; 圖2為本發(fā)明方法的流程圖。
具體實施方式
以下結(jié)合附圖和具體實施例,對本發(fā)明進(jìn)行詳細(xì)說明。 本發(fā)明的宗旨是使用讀卡器和CA的智能卡進(jìn)行交換,實現(xiàn)STB上面 的解密操作,從而提供一種模擬機頂盒開發(fā)環(huán)境、實現(xiàn)CA模塊在Windwos 環(huán)境下集成的方法。因此,本發(fā)明提供了 一種在Windows下開發(fā)CA的系 統(tǒng),該系統(tǒng)包括與智能卡進(jìn)行交互和模擬調(diào)諧器解析數(shù)據(jù)的架構(gòu)單元,存 儲信息和控制條件接收系統(tǒng)CA的實現(xiàn)單元,以及管理CA消息、開發(fā)流程和開發(fā)界面的應(yīng)用單元;所述實現(xiàn)單元分別與所述架構(gòu)單元和所述應(yīng)用單 元相連接。下面給出一個完整的例子,如圖1所示,本發(fā)明的系統(tǒng)在Windows下 的模擬開發(fā)環(huán)境主要由以下模塊組成,1) 架構(gòu)單元包括對數(shù)據(jù)流進(jìn)行碼流解析、搜索節(jié)目特定信息表和數(shù) 據(jù)的碼流文件解析模塊,以及與智能卡進(jìn)行交互的智能卡通訊模塊,用于 提供底層的驅(qū)動接口。a) 碼流文件解析模塊,主要用于在PC上面對TS文件進(jìn)行碼流解析, 其用于沖莫擬Tuner的功能,實現(xiàn)TS ( Transport Stream,傳輸流)包的打包 和PSI (Program Specific Information,節(jié)目特定信息)表的搜索。具體地說, 其實現(xiàn)了文件解析和數(shù)據(jù)搜索功能。文件解析將TS文件里面的TS包, 一般為188或204字節(jié),解析出 來后重新打包組成Section (段),進(jìn)而將Section解析成相關(guān)的PSI表。數(shù)據(jù)搜索實現(xiàn)單元向文件解析模塊請求解擾所需的EMM( Entitlement Management Message,授權(quán)管理信息)表,和ECM (Entitlement Control Message,授權(quán)控制信息)表,數(shù)據(jù)搜索功能子模塊對實現(xiàn)單元的請求做出 響應(yīng),從碼流文件里面解析出的數(shù)據(jù),并轉(zhuǎn)發(fā)給實現(xiàn)單元。b) 智能卡通訊模塊,用于完成實現(xiàn)單元和智能卡之間的交互,其采用 基于PC/SC (Personal computer/Smart Card,個人計算機/智能卡)標(biāo)準(zhǔn)的 USB讀卡器完成實現(xiàn)單元和智能卡的數(shù)據(jù)交換,智能卡通訊模塊的交互部 分基于Windows提供的PC/SC標(biāo)準(zhǔn)架構(gòu)開發(fā),例如根據(jù)IS07816智能卡標(biāo) 準(zhǔn),采用可以支持IS07816協(xié)議的智能卡讀卡器,在實現(xiàn)單元和智能卡之 間傳送數(shù)據(jù)。通過采用PC/SC標(biāo)準(zhǔn)架構(gòu)的智能卡通訊模塊,本發(fā)明的應(yīng)用 單元在與智能卡進(jìn)4亍通信時,可以與任何符合PC/SC標(biāo)準(zhǔn)的讀卡器協(xié)同工 作。2) 實現(xiàn)單元,是實現(xiàn)在Windows中開發(fā)CA的關(guān)4建組成部分,可稱為CA單元,其存儲信息和控制CA,例如控制CA的開發(fā)與調(diào)試等等;包括 與所述架構(gòu)單元進(jìn)行交互和存儲信息的驅(qū)動適配模塊,控制CA并與所述應(yīng) 用單元進(jìn)行交互的實現(xiàn)子單元。 一個例子是,所述驅(qū)動適配模塊包括管理 內(nèi)存、任務(wù)和信號量的控制子模塊;所述實現(xiàn)子單元解析數(shù)據(jù)并控制CA 開發(fā)的內(nèi)核模塊,與所述應(yīng)用單元進(jìn)行交互和管理CA消息的表現(xiàn)模塊。如圖l所示,a)驅(qū)動適配層,即所述驅(qū)動適配模塊,包括了與所述架構(gòu) 單元進(jìn)行交互和存儲信息的驅(qū)動適配模塊,更具體地,其可以包括多個功 能子模塊,舉例如下。PC—NVM (信息存儲)子模塊,作為PC環(huán)境的Flash (閃存)模擬層, 用于提供類似FLASH的功能,保存機卡配對信息和郵件信息。PC—OS (操作系統(tǒng))子模塊,即所述管理內(nèi)存、任務(wù)和信號量的控制 子模塊,用于在PC環(huán)境下,操作系統(tǒng)適配層模塊提供分配/釋放內(nèi)存,創(chuàng) 建/消除任務(wù),創(chuàng)建/等待/釋方i/消除信號量等操作。PC—SMC (智能卡)子模塊,作為PC環(huán)境下面的智能卡驅(qū)動層,協(xié)調(diào) 管理智能卡交互。所述實現(xiàn)子單元可包括下面兩層。b) 內(nèi)核層,作為實現(xiàn)單元重要的一部分,其實現(xiàn)CA的具體功能。包括 解析子模塊,負(fù)責(zé)PMT和CAT的解析,獲取對應(yīng)的ECM和EMM的PID; 請求子模塊,啟動ECM和EMM的請求;交互子模塊,實現(xiàn)智能卡交互, 獲取解擾控制字;轉(zhuǎn)發(fā)子模塊,將CA消息轉(zhuǎn)發(fā)給下面述及的CA表現(xiàn)層。c) 表現(xiàn)層,即與所述應(yīng)用單元進(jìn)行交互和管理CA消息的表現(xiàn)模塊,其 提供實現(xiàn)單元的對外接口。 CA表現(xiàn)層通過消息機制與應(yīng)用層進(jìn)行通訊,CA 的消息包括以下三種類型。CA警告消息用于通知當(dāng)前節(jié)目狀態(tài)。CA命令消息用于通知應(yīng)用層與實現(xiàn)單元進(jìn)行交互,如通知用戶購買 按時間付費的節(jié)目等。CA通知消息通知用戶保存郵件或顯示屏顯信息。3)應(yīng)用層,即管理CA消息、開發(fā)流程和開發(fā)界面的應(yīng)用單元,用于完 成對實現(xiàn)單元的集成,負(fù)責(zé)實現(xiàn)單元的啟動,提供PMT表和CAT表,并 啟動節(jié)目播放。此外還要提供CA廠商及運營商要求的菜單界面,處理CA 上報的所有消息。顯示CA提示信息,以及提供實現(xiàn)單元的管理界面。例如, 其可以包括管理CA消息的信息管理模塊,管理CA開發(fā)流程的流程管理模 塊,管理CA開發(fā)界面的界面管理模塊。采用上述實例,碼流文件解析模塊模擬了機頂盒上面的Tuner,為實現(xiàn) 單元提供所需的數(shù)據(jù);通過碼流解析模塊,可以得到觸發(fā)CA工作的CAT 和PMT表;通過解析CAT和PMT,分別得到授權(quán)管理PID和授權(quán)控制PID, 實現(xiàn)單元內(nèi)的CA內(nèi)核層,其中分別設(shè)置有對應(yīng)的過濾器,實現(xiàn)單元將得到 授權(quán)管理數(shù)據(jù)和授權(quán)控制數(shù)據(jù)通知給CA內(nèi)核層,CA內(nèi)核層將得到的數(shù)據(jù) 組裝成與智能卡交互的lt據(jù)包,送入智能卡^^莫塊;PC/SC架構(gòu)的讀卡器對 應(yīng)機頂盒上面的智能卡卡槽,完成實現(xiàn)單元與智能卡的交互,通過與智能 卡交互,得到節(jié)目授權(quán)信息及解擾控制字,將得到的控制字送入解擾器進(jìn) 行解擾,至此CA解擾工作完成。PC—NVM才莫擬機頂盒上面的Flash的功能, 利用文件讀寫操作,實現(xiàn)數(shù)據(jù)的非易失性存儲,這樣可以保存CA內(nèi)核層初 始化數(shù)據(jù),郵件及郵件標(biāo)志位等相關(guān)信息。PS—OS利用Windows操作系統(tǒng) 接口模擬STB環(huán)境下面的操作系統(tǒng)接口,實現(xiàn)內(nèi)存管理,線程創(chuàng)建,調(diào)度 以及同步的功能。因此,本發(fā)明系統(tǒng)可以通過才莫擬機頂盒下面的開發(fā)環(huán)境, 實現(xiàn)在PC上進(jìn)行CA的集成開發(fā),并實現(xiàn)對加密碼流的解擾。并且,如圖2所示,本發(fā)明還提供了一種在Windows下開發(fā)條件接收 系統(tǒng)的方法,其包括以下步驟Al、預(yù)注冊用于接收條件接收系統(tǒng)CA消息的消息回調(diào)。當(dāng)CA實現(xiàn) 層有CA消息時,例如CA警告消息、CA命令消息、CA通知消息等,CA 實現(xiàn)層通過預(yù)注冊的函數(shù),將CA消息回調(diào)給應(yīng)用層。A2、初始化CA線程和信號量;在步驟A2之前還可以執(zhí)行步驟設(shè)置 CA。具體說明如下。(1) 要實現(xiàn)單元正常工作,首先初始化實現(xiàn)單元;(2) 初始化實現(xiàn)單元主要執(zhí)行以下操作a) 用PC_OS (操作系統(tǒng)子模塊)的接口創(chuàng)建任務(wù),創(chuàng)建信號量,分 配內(nèi)存等;b) 初始化PC一SMC(智能卡子模塊)建立智能卡與PC機交互關(guān)系。 A3、選擇節(jié)目,將其節(jié)目映射表和條件4矣收表數(shù)據(jù)傳輸?shù)紺A進(jìn)行測試。上述的各個步驟,包括步驟Al 、步驟A2和步驟A3 ,可以分別在Windows 下執(zhí)行。例如,步驟A3中,所述測試具體可以包括以下步驟 A31、 CA解析得到授權(quán)管理信息的包識別碼,過濾授權(quán)管理信息,判 斷用戶具有觀看所述節(jié)目的4又限,則獲取用戶的業(yè)務(wù)密鑰;并且,步驟A31 還可以執(zhí)行步驟判斷用戶不具有觀看所述節(jié)目的權(quán)限,則向用戶發(fā)送提 示信息。A32、 CA解析得到授權(quán)控制信息的包識別碼,過濾授權(quán)控制信息,根 據(jù)所述業(yè)務(wù)密鑰得到解擾控制字,播放所述節(jié)目。下面結(jié)合圖2,給出一個完整的實施例,對上述方法做出進(jìn)一步說明。 應(yīng)用程序首先向?qū)崿F(xiàn)單元注冊消息回調(diào),用于接收實現(xiàn)單元的消息。1) 應(yīng)用程序初始化實現(xiàn)單元,建立相關(guān)系統(tǒng)所需的相關(guān)線程和信號量。2) 應(yīng)用程序選定指定的節(jié)目,并播放指定節(jié)目。3) 應(yīng)用程序傳入該節(jié)目對應(yīng)的PMT (節(jié)目映射表)和CAT (條件訪問 表)數(shù)據(jù);其中,PMT表用于提供節(jié)目的所有音視頻信息;CAT表用于提 供CA手、統(tǒng)的授權(quán)管理信息。4) 實現(xiàn)單元得到CAT后解析出EMM PID ( Packet ID,包識別碼),設(shè) 置過濾器請求EMM數(shù)據(jù),得到的EMM數(shù)據(jù)與智能卡交互,用于監(jiān)控智能卡是否有權(quán)限觀看當(dāng)前播放的節(jié)目,如果當(dāng)前智能卡有權(quán)限觀看,則得到業(yè)務(wù)密鑰;如果沒有權(quán)限觀看,則提示"沒有權(quán)限收看此節(jié)目";5) PMT傳入實現(xiàn)單元后,實現(xiàn)單元分析出ECMPID后開始設(shè)置過濾器 請求ECM數(shù)據(jù),得到的ECM數(shù)據(jù)與智能卡交互,業(yè)務(wù)密鑰解出解擾控制 字6) 將解擾控制字設(shè)置到解擾模塊,則可以播放節(jié)目了。7) 在播放過程中,應(yīng)用層接收響應(yīng)實現(xiàn)單元上報的各類消.息。 本發(fā)明方法是一種在PC機上模塊機頂盒環(huán)境開發(fā)實現(xiàn)單元的一種方法,如果這一方法得到廣泛的推廣,將極大提高機頂盒集成CA的開發(fā)速度 和節(jié)省開發(fā)費用,縮短開發(fā)周期。使用本發(fā)明,可以將CA的開發(fā)工作全部轉(zhuǎn)移到PC上來,在PC上完 成所有的開發(fā)調(diào)試工作,完成PC上的開發(fā)調(diào)試工作后,直接將代碼移植到 機頂盒環(huán)境上進(jìn)行編譯即可使用。這樣至少有三個優(yōu)點(1) 節(jié)約成本,不需要購置過多的仿真器;(2) 節(jié)約調(diào)試時間,縮短開發(fā)周期;(3) 簡化調(diào)試工作。應(yīng)當(dāng)理解的是,對本領(lǐng)域普通技術(shù)人員來說,可以根據(jù)上述說明加以 改進(jìn)或變換,而所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護 范圍。
權(quán)利要求
1、一種在Windows下開發(fā)條件接收系統(tǒng)的系統(tǒng),其特征在于,其包括與智能卡進(jìn)行交互和模擬調(diào)諧器解析數(shù)據(jù)的架構(gòu)單元,存儲信息和控制條件接收系統(tǒng)CA的實現(xiàn)單元,以及管理CA消息、開發(fā)流程和開發(fā)界面的應(yīng)用單元;所述實現(xiàn)單元分別與所述架構(gòu)單元和所述應(yīng)用單元相連接。
2、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述架構(gòu)單元包括對 數(shù)據(jù)流進(jìn)行碼流解析、搜索節(jié)目特定信息表和數(shù)據(jù)的碼流文件解析模塊, 以及與智能卡進(jìn)行交互的智能卡通訊模塊。
3、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述應(yīng)用單元包括管 理CA消息的信息管理模塊,管理CA開發(fā)流程的流程管理模塊,管理CA 開發(fā)界面的界面管理才莫塊。
4、 根據(jù)權(quán)利要求1所述的系統(tǒng),其特征在于,所述實現(xiàn)單元包括與 所述架構(gòu)單元進(jìn)行交互和存儲信息的驅(qū)動適配模塊,控制CA并與所述應(yīng)用 單元進(jìn)行交互的實現(xiàn)子單元。
5、 根據(jù)權(quán)利要求4所述的系統(tǒng),其特征在于,所述驅(qū)動適配模塊包 括管理內(nèi)存、任務(wù)和信號量的控制子模塊;所述實現(xiàn)子單元包括解析數(shù)據(jù) 并控制CA開發(fā)的內(nèi)核模塊,與所述應(yīng)用單元進(jìn)行交互和管理CA消息的表 現(xiàn)模塊。
6、 一種在Windows下開發(fā)條件接收系統(tǒng)的方法,其包括以下步驟 Al、預(yù)注冊用于接收條件接收系統(tǒng)CA消息的消息回調(diào);A2、初始化CA線程和信號量;A3、選擇節(jié)目,將其節(jié)目映射表和條件接收表數(shù)據(jù)傳輸?shù)紺A進(jìn)行測試。
7、 根據(jù)權(quán)利要求6所述的方法,其特征在于,步驟A1、 A2和A3 分別在Windows下執(zhí)行。
8、 根據(jù)權(quán)利要求6所述的方法,其特征在于,步驟A2之前還執(zhí)行 步驟設(shè)置CA。
9、 根據(jù)權(quán)利要求6所述的方法,其特征在于,步驟A3中,所述測 試具體包括以下步驟A31、 CA解析得到授權(quán)管理信息的包識別碼,過濾4吏權(quán)管理信息, 判斷用戶具有觀看所述節(jié)目的權(quán)限,則獲取用戶的業(yè)辦密鑰;A32、 CA解析得到授權(quán)控制信息的包識別碼,過濾授權(quán)控制信息, 根據(jù)所述業(yè)務(wù)密鑰得到解擾控制字,播放所述節(jié)目。
10、 根據(jù)權(quán)利要求9所述的方法,其特征在于,步驟A31還執(zhí)行步驟 判斷用戶不具有觀看所述節(jié)目的權(quán)限,則向用戶發(fā)送提示信息。
全文摘要
本發(fā)明公開了一種在Windows下開發(fā)條件接收系統(tǒng)的系統(tǒng)和方法,該系統(tǒng)包括與智能卡進(jìn)行交互和模擬調(diào)諧器解析數(shù)據(jù)的架構(gòu)單元,存儲信息和控制條件接收系統(tǒng)CA的實現(xiàn)單元,以及管理CA消息、開發(fā)流程和開發(fā)界面的應(yīng)用單元。該方法包括以下步驟A1.預(yù)注冊用于接收條件接收系統(tǒng)CA消息的消息回調(diào);A2.初始化CA線程和信號量;A3.選擇節(jié)目,將其節(jié)目映射表和條件接收表數(shù)據(jù)傳輸?shù)紺A進(jìn)行測試。本發(fā)明將開發(fā)CA工作全部轉(zhuǎn)移到PC,在PC上完成CA所有的開發(fā)調(diào)試工作,之后直接將代碼移植到機頂盒環(huán)境上進(jìn)行編譯即可使用。從而無需購置過多的仿真器,節(jié)約了成本;同時節(jié)約了調(diào)試時間,縮短了開發(fā)周期;并且簡化了調(diào)試工作。
文檔編號H04N7/167GK101236508SQ200810065400
公開日2008年8月6日 申請日期2008年2月19日 優(yōu)先權(quán)日2008年2月19日
發(fā)明者萬算林, 彭雙全 申請人:深圳市同洲電子股份有限公司