專利名稱:數(shù)字電視廣播中的軟件下載方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種軟件下載方法,特別是指數(shù)字電視廣播中的軟件下載方法,屬于數(shù)字電視及計算機通信技術(shù)領(lǐng)域。
背景技術(shù):
軟件下載技術(shù)是數(shù)字電視接收設(shè)備中應(yīng)用軟件在線升級的一種方式,它能保證數(shù)字電視接收設(shè)備及時,和對舊應(yīng)用軟件進(jìn)行更新,修改系統(tǒng)程序存在的問題,增加新的功能,使應(yīng)用軟件更加完善,給用戶提供更多的服務(wù)。現(xiàn)有的軟件下載過程都是在服務(wù)器端(碼流播放服務(wù)器)把系統(tǒng)程序的映像文件,控制信息,一起封裝成運動圖象專家組(Motion Picture ExpertsGroup-2,簡稱MPEG-2)的數(shù)據(jù)流,采用數(shù)據(jù)廣播的方式,通過播放卡將數(shù)據(jù)播放出去,輸入到復(fù)用器中,再經(jīng)過調(diào)制器調(diào)制后,通過有線網(wǎng)進(jìn)行傳輸,在數(shù)字電視接收設(shè)備端,數(shù)字電視接收設(shè)備接收到數(shù)據(jù)流后,通過解調(diào),解復(fù)用程序,得到系統(tǒng)程序的映像文件,再替換存儲在可擦寫存儲器的舊映像數(shù)據(jù),完成系統(tǒng)程序的更新。
現(xiàn)有軟件下載技術(shù)對于下載數(shù)據(jù)流沒有統(tǒng)一的標(biāo)準(zhǔn),不同的數(shù)字電視接收設(shè)備生產(chǎn)廠商都有自己專用的軟件下載程序和服務(wù)器端數(shù)據(jù)流生成程序,只對自己生成的數(shù)據(jù)流進(jìn)行接收,因此,沒有辦法接收其它生產(chǎn)廠商的下載的數(shù)據(jù)流。
軟件下載的數(shù)據(jù)流通過數(shù)據(jù)廣播的方式傳輸,傳輸?shù)木W(wǎng)絡(luò)是單向網(wǎng)絡(luò),沒有回傳通道,不對接收設(shè)備(數(shù)字電視接收設(shè)備)是否接收到數(shù)據(jù)進(jìn)行確認(rèn)應(yīng)答,由于下載的系統(tǒng)程序數(shù)據(jù)被分成不同的數(shù)據(jù)段,在不同的包中廣播下來,因此,數(shù)據(jù)的完整性無法保證,并且,下載的系統(tǒng)程序?qū)χ付ǖ臄?shù)字電視接收設(shè)備進(jìn)行軟件升級(與硬件設(shè)備有關(guān)),對數(shù)字電視接收設(shè)備,保證接收到的數(shù)據(jù)是針對它的硬件設(shè)備進(jìn)行設(shè)計的系統(tǒng)程序。
現(xiàn)有軟件下載是免費的服務(wù),為了保證運營商的利益,可以對下載的數(shù)據(jù)流進(jìn)行加擾,這樣,軟件下載服務(wù)和視音頻服務(wù)一樣,是一個授權(quán)購買的服務(wù),只有購買這個服務(wù)后,在接收端,數(shù)字電視接收設(shè)備才可以對加擾的數(shù)據(jù)進(jìn)行解擾,才能實現(xiàn)軟件的升級。
另外,現(xiàn)有技術(shù)中,數(shù)字電視接收設(shè)備在軟件升級過程中,意外斷電導(dǎo)致升級失敗的情況下,無法實現(xiàn)斷點續(xù)傳。也就是在開機后,無法在原來的位置上進(jìn)行軟件的升級。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種數(shù)字電視廣播中的軟件下載方法,數(shù)據(jù)流用數(shù)字存儲媒介控制(Digital storage Media Command & Control,簡稱DSMCC)兩層結(jié)構(gòu)進(jìn)行封裝打包,形成符合MPEG-2的傳輸流,利用數(shù)據(jù)輪播的方式進(jìn)行發(fā)送,在數(shù)字電視接收設(shè)備端,只有軟件下載的接收程序按照DSMCC規(guī)范,對DSMCC封裝的數(shù)據(jù)流進(jìn)行過濾,就可以進(jìn)行軟件的在線升級。
本發(fā)明的又一目的在于提供一種數(shù)字電視廣播中的軟件下載方法,它對下載的數(shù)據(jù)流進(jìn)行了數(shù)字簽名認(rèn)證,一方面保證下載的系統(tǒng)程序的完整性,防止數(shù)據(jù)在傳輸?shù)倪^程中傳輸流包在傳輸過程中丟失;另一方面保證下載數(shù)據(jù)的來源,是針對指定的接收設(shè)備(數(shù)字電視接收設(shè)備)的應(yīng)用軟件的升級。
本發(fā)明的再一目的在于提供一種數(shù)字電視廣播中的軟件下載方法,它能夠?qū)τ谠谙螺d過程中出現(xiàn)的非正常中斷,進(jìn)行有效、準(zhǔn)確地斷點續(xù)傳,提高下載速度。
本發(fā)明的目的是通過如下技術(shù)方案實現(xiàn)的一種數(shù)字電視廣播中的軟件下載方法,它至少包括啟動軟件下載程序,讀取接收設(shè)備中的存儲器下載標(biāo)志數(shù)據(jù),判斷是否需要執(zhí)行動作,其中在服務(wù)器端按照標(biāo)準(zhǔn)的規(guī)定,將數(shù)據(jù)流用DSMCC兩層結(jié)構(gòu)進(jìn)行封裝打包,與軟件下載服務(wù)描述信息以及節(jié)目關(guān)聯(lián)表(Program Association Table,簡稱PAT)、程序映射表(Program Map Table,簡稱PMT)的映射信息描述信息共同形成符合MPEG-2的傳輸流,利用數(shù)據(jù)輪播的方式進(jìn)行發(fā)送,在接收設(shè)備端,軟件下載的接收程序按照DSMCC規(guī)范,對DSMCC封裝的數(shù)據(jù)流進(jìn)行過濾,進(jìn)行軟件的在線升級。
具體地,該數(shù)據(jù)流的兩層結(jié)構(gòu)包括控制通道和數(shù)據(jù)通道,其中控制通道設(shè)有軟件下載映像數(shù)據(jù)描述信息;數(shù)據(jù)通道包含模塊數(shù)據(jù)描述信息以及模塊數(shù)據(jù)兩部分,模塊數(shù)據(jù)描述信息針對模塊數(shù)據(jù)特征描述;接收設(shè)備開機啟動后,接收軟件下載映像描述信息,判斷是否需要下載更新軟件;軟件下載時,先接收軟件下載映像數(shù)據(jù)中描述模塊信息,過濾模塊數(shù)據(jù)描述模塊大小、數(shù)目的信息,并存儲其中的數(shù)據(jù)信息;再接收模塊數(shù)據(jù)信息,過濾模塊數(shù)據(jù),數(shù)字簽名校驗和循環(huán)校驗(CRC32)全部通過后,擦寫對應(yīng)的存儲器地址數(shù)據(jù),完成更新。
本發(fā)明充分、獨特地利用了DSMCC兩層結(jié)構(gòu)私有段的設(shè)置,合理地管理、控制了模塊數(shù)據(jù)的下載。
為了保證數(shù)據(jù)傳輸?shù)恼_性,MPEG-2傳輸流中每個數(shù)據(jù)包的有效負(fù)載都進(jìn)行CRC32校驗,并帶有校驗數(shù)據(jù),在接收端,例如數(shù)字電視接收設(shè)備,有專用的CRC32硬件校驗數(shù)字電路,對數(shù)據(jù)進(jìn)行校驗,發(fā)生錯誤的數(shù)據(jù)拒絕進(jìn)行處理,它只對負(fù)載數(shù)據(jù)進(jìn)行校驗,而沒有對負(fù)載數(shù)據(jù)中的有效下載數(shù)據(jù)進(jìn)行校驗,因此,在DSMCC數(shù)據(jù)層中,增加了下載數(shù)據(jù)的循環(huán)校驗(CRC32)數(shù)據(jù),以保證數(shù)據(jù)傳輸?shù)恼_性。軟件下載時在接收端,過濾出下載應(yīng)用軟件的模塊數(shù)據(jù),和模塊描述信息中對應(yīng)的CRC32校驗數(shù)據(jù),進(jìn)行驗證計算,驗證通過的,數(shù)據(jù)是有效數(shù)據(jù),可以進(jìn)行處理;驗證未通過的,不是有效數(shù)據(jù),不進(jìn)行處理。
為合理地管理更新數(shù)據(jù)的存放等目的,模塊描述信息包括存儲器地址描述信息,軟件下載時,接收端根據(jù)存儲器地址描述信息,獲取存儲器地址信息,存放更新數(shù)據(jù)。
接收端的斷點續(xù)傳功能,是軟件下載程序一個很重要的功能,它能保證數(shù)字電視接收設(shè)備在軟件升級過程中,意外斷電導(dǎo)致升級失敗的情況下,下次開機后,軟件下載程序能正常啟動,在原來的位置進(jìn)行軟件的升級。也就是說,接收設(shè)備開機啟動后,執(zhí)行系統(tǒng)程序前,先判斷新軟件下載服務(wù),或斷點續(xù)傳下載服務(wù);若為新軟件下載,則進(jìn)行軟件升級更新的完整過程;如為斷點續(xù)傳下載,則直接進(jìn)行軟件續(xù)傳下載過程。
本發(fā)明是通過模塊描述信息設(shè)置模塊識別信息描述信息,該描述信息包含了軟件整體模塊數(shù)據(jù)的個數(shù)和/或模塊識別信息;接收設(shè)備開機啟動后,先判斷已經(jīng)記錄的模塊數(shù)據(jù)數(shù)目或識別信息,如果不完整,則進(jìn)行斷點續(xù)傳下載,直接將上次沒有接收到的模塊數(shù)據(jù)過濾、下載;如果完整,則直接進(jìn)入執(zhí)行系統(tǒng)程序,或進(jìn)行其他新軟件完整的更新下載。
根據(jù)上述技術(shù)方案分析可知,本發(fā)明對軟件下載的數(shù)據(jù)流按照DSMCC的標(biāo)準(zhǔn)進(jìn)行了處理,與具體數(shù)字電視接收設(shè)備采取的硬件設(shè)備無關(guān),只有符合DSMCC的標(biāo)準(zhǔn)的接收設(shè)備,都能對數(shù)據(jù)流進(jìn)行接收。軟件下載的數(shù)據(jù)流包括數(shù)字簽名數(shù)據(jù),保證下載的系統(tǒng)程序的完整性,防止數(shù)據(jù)包在傳輸過程中丟失;保證下載數(shù)據(jù)的來源,是針對指定的接收設(shè)備(例如數(shù)字電視接收設(shè)備)提高軟件升級的安全性和可靠性。數(shù)據(jù)流的雙重校驗,保證數(shù)據(jù)傳輸?shù)恼_性,防止錯誤數(shù)據(jù)的產(chǎn)生,數(shù)字電視接收設(shè)備的斷點續(xù)傳功能,它保證接收機在接收軟件的過程中,如果意外斷電,在下次接收機重新啟動后,能在原來的位置繼續(xù)接收下載的軟件。
本發(fā)明能夠?qū)?shù)字電視接收設(shè)備的系統(tǒng)軟件進(jìn)行更新,對在軟件下載過程中傳輸流丟包,軟件升級過程中數(shù)字電視接收設(shè)備斷電的情況進(jìn)行處理,并在指定的時間內(nèi)能夠完成數(shù)字電視接收設(shè)備軟件的升級,升級后的數(shù)字電視接收設(shè)備工作正常,各項功能符合指定的要求。
圖1為本發(fā)明軟件下載數(shù)據(jù)流的生成過程示意圖。
圖2為本發(fā)明系統(tǒng)程序映像數(shù)據(jù)的分塊過程示意圖。
圖3為本發(fā)明數(shù)字電視接收設(shè)備系統(tǒng)軟件的升級過程示意圖。
圖4為本發(fā)明數(shù)字簽名實現(xiàn)方法流程圖。
圖5為本發(fā)明接收端設(shè)備數(shù)字簽名的校驗過程流程圖。
圖6為本發(fā)明接收端設(shè)備斷點續(xù)傳功能示意圖。
具體實施例方式
以下結(jié)合附圖和具體的實施例對本發(fā)明作進(jìn)一步的詳細(xì)說明本發(fā)明為一種數(shù)字電視廣播中的軟件下載方法,其軟件下載的服務(wù)器端數(shù)據(jù)流的形成和發(fā)送過程如下參見圖1和圖2,軟件下載服務(wù)和視音頻服務(wù)、其它數(shù)據(jù)服務(wù)相似,因此,都有節(jié)目特定信息(Program Specific Information,簡稱PSI)/業(yè)務(wù)信息(Service Information,簡稱SI),因此,在下載的系統(tǒng)程序數(shù)據(jù)流中,包括這些基本表的信息,在圖1中給出了數(shù)據(jù)流的形成過程。
首先,在MPEG-2數(shù)據(jù)流中業(yè)務(wù)描述表(Service Description Table,簡稱SDT)信息,在SDT中,軟件下載服務(wù)必有下載服務(wù)描述信息(軟件下載的信息描述信息,軟件下載的替換描述信息),在數(shù)據(jù)流中也有PAT、PMT信息,PAT有PMT的包識別符(Packet Identifier,簡稱PID)和對應(yīng)的SERVICE_ID,PMT有DSMCC數(shù)據(jù)流的下載服務(wù)起始(DownloadServerInitiate,簡稱DSI)、下載信息響應(yīng)(DownloadInfoResponse,簡稱DIRES)、下載數(shù)據(jù)塊(DownloadDataBlock,簡稱DDB)的PID。
在控制通道中,主要是DSI信息,DSI有軟件下載的系統(tǒng)程序的映像描述信息,它包含一些描述信息列表,主要包含要廣播的映像數(shù)據(jù)的ID,軟件下載的標(biāo)識描述信息,版本類型描述信息,延遲信息描述信息,在PMT中的compent_tag。
在數(shù)據(jù)通道中,有DIRES、DDB信息,包含的描述信息和數(shù)據(jù)都由系統(tǒng)程序的映像數(shù)據(jù)所產(chǎn)生;具體產(chǎn)生過程由圖2說明第一,設(shè)置分塊數(shù)據(jù)大小,將系統(tǒng)程序映像數(shù)據(jù)分塊,產(chǎn)生模塊數(shù)據(jù)和相應(yīng)的描述信息,第二,每一模塊數(shù)據(jù),產(chǎn)生CRC32校驗數(shù)據(jù)描述信息,數(shù)字簽名數(shù)據(jù)描述信息,裝載模塊數(shù)據(jù)的存儲器(FLASH)地址描述信息,模塊ID描述信息,數(shù)據(jù)信息。所有模塊數(shù)據(jù)都打包到DDB中,映像數(shù)據(jù)的描述信息,每一模塊的描述信息,都打包到DIRES中,形成了數(shù)據(jù)通道信息。
參見圖3,軟件下載的數(shù)字電視接收設(shè)備端的觸發(fā)機制和接收過程在數(shù)字電視接收設(shè)備系統(tǒng)程序啟動和切換頻點時,可以觸發(fā)軟件下載服務(wù),系統(tǒng)程序首先接收SDT,如果從SDT收到軟件下載信息描述信息,說明有軟件下載信息存在,然后再接收硬件版本信息、軟件映像數(shù)據(jù)的ID,將這些信息存儲在指定的閃存芯片F(xiàn)LASH中,作為下次軟件升級的硬件版本和軟件映像數(shù)據(jù)的ID,再接收軟件下載替換描述信息,過濾出硬件版本信息、軟件映像數(shù)據(jù)的ID,如果硬件版本相同,軟件映像數(shù)據(jù)的ID不相同,并在指定的映像數(shù)據(jù)ID范圍內(nèi),說明軟件需要更新,下次數(shù)字電視接收設(shè)備啟動后,開始進(jìn)行下載數(shù)據(jù)的接收。
數(shù)字電視接收設(shè)備在接收到軟件下載的授權(quán)管理信息(EntitlementManagement Message,簡稱EMM)數(shù)據(jù)時,也可以觸發(fā)軟件下載服務(wù),過濾出硬件版本信息、軟件映像數(shù)據(jù)ID,如果硬件版本信息與FLASH中的硬件版本信息相同,軟件映像數(shù)據(jù)的ID與FLASH中的映像數(shù)據(jù)的ID不相同,并在指定的映像ID范圍內(nèi),說明軟件需要更新,用EMM數(shù)據(jù)的硬件版本替換FLASH數(shù)據(jù)的硬件版本,軟件映像數(shù)據(jù)的ID,保證下次軟件下載時是最新的版本信息,下次數(shù)字電視接收設(shè)備啟動后,開始進(jìn)行下載數(shù)據(jù)的接收。
數(shù)字電視接收設(shè)備開機后,啟動軟件下載程序,讀取Flash中下載標(biāo)志數(shù)據(jù),如果系統(tǒng)程序不需要升級,直接啟動系統(tǒng)程序,否則,再判斷是新軟件下載服務(wù)、還是斷點續(xù)傳的下載服務(wù)。
參見圖4,其為服務(wù)器端數(shù)字簽名數(shù)據(jù)的形成過程,將下載的系統(tǒng)軟件映像數(shù)據(jù)分塊,對每一模塊數(shù)據(jù)利用哈希(hash)算法產(chǎn)生摘要數(shù)據(jù),然后用數(shù)字電視接收設(shè)備生產(chǎn)廠商提供的私有密鑰利用RSA算法對摘要數(shù)據(jù)加密,再將加密的數(shù)據(jù)封裝到DIRES中,隨同其它流一起廣播出去。
上述這些數(shù)據(jù)通過數(shù)據(jù)輪播的方式通過播放卡播放出去。
參見圖4、5,數(shù)字電視接收設(shè)備端的校驗過程,如第m個模塊數(shù)字電視接收設(shè)備在收到DIRES數(shù)據(jù)信息后,從中過濾到第m個模塊加密數(shù)據(jù),然后用數(shù)字電視接收設(shè)備生產(chǎn)廠商提供的公共密鑰對加密數(shù)據(jù)用RSA算法進(jìn)行解密,得到解密數(shù)據(jù),再從DDB中過濾到第m個模塊數(shù)據(jù),用hash算法對m個模塊產(chǎn)生摘要數(shù)據(jù),然后再對第m個解密數(shù)據(jù)和第m個摘要數(shù)據(jù)進(jìn)行比較,如果相同,說明第m個模塊數(shù)字簽名校驗正確,對其它的模塊采用相同的辦法進(jìn)行校驗。
參見圖3、4、5,具體地,新軟件下載服務(wù)的接收過程為第一步接收PAT,過濾SERVICE_ID和PMT的PID,再用SERVICE_ID和PID接收PMT信息,再過濾DSMCC中的DSI,DIRES,DDB的PID;第二步接收DSI,再過濾系統(tǒng)程序映像描述信息,映像的ID,硬件版本信息、軟件版本信息,再從FLASH中讀取硬件版本信息、軟件版本信息,如果硬件版本相同,軟件版本不同(接收的軟件版本大于FLASH中的軟件版本),軟件下載初始化正常,開始接收下載數(shù)據(jù)。
第三步接收DIRES信息,過濾映像數(shù)據(jù)模塊大小,模塊的數(shù)目,再過濾每模塊的CRC32數(shù)據(jù)、數(shù)字簽名數(shù)據(jù)、映射的FLASH地址、模塊的ID、模塊的版本,再存儲這些數(shù)據(jù)信息。
第四步接收DDB信息,過濾每模塊的數(shù)據(jù),進(jìn)行CRC32校驗驗證和數(shù)字簽名驗證,如果驗證符合要求,擦寫對應(yīng)的FLASH地址數(shù)據(jù)。每模塊的數(shù)據(jù)驗證和擦寫依次進(jìn)行,所有數(shù)據(jù)更新完成后,啟動系統(tǒng)程序。
參見圖3、6,本發(fā)明斷點續(xù)傳的軟件下載,和上述過程的不同點是不接收DSI和DIRES,先從FLASH中讀取過濾數(shù)據(jù),設(shè)置過濾數(shù)參數(shù)后,接收DDB信息,過濾上次沒有被接收的模塊數(shù)據(jù),具體的驗證過程和上面一致,更新完成后,啟動系統(tǒng)程序。
結(jié)合圖6所示,斷點續(xù)傳功能是指數(shù)字電視接收設(shè)備在斷電、長時間沒有信號或者其它異常的情況下導(dǎo)致軟件升級失敗,再次升級的過程中,不會重新接收所有的下載數(shù)據(jù),而是從上次下載結(jié)束的地方開始接收,提高了數(shù)字電視接收設(shè)備軟件下載的速度。
再參見圖6,數(shù)字電視接收設(shè)備在系統(tǒng)軟件升級失敗之前的軟件下載過程和存儲器中數(shù)據(jù)的分配情況,數(shù)字電視接收設(shè)備的系統(tǒng)軟件被分成n個模塊,對應(yīng)的存儲器有多個存儲空間,當(dāng)數(shù)字電視接收設(shè)備每接收一個模塊數(shù)據(jù)時,數(shù)字簽名校驗和CRC32校驗通過以后,將數(shù)據(jù)寫入對應(yīng)的存儲器塊,并在存儲器的指定位置標(biāo)記模塊的序號,已接收模塊的數(shù)目,下載完成標(biāo)志。數(shù)字電視接收設(shè)備升級失敗有這兩種情況一種是當(dāng)接收了其中第m個模塊,數(shù)字簽名校驗和CRC32校驗通過以后,并且將這第m個模塊的數(shù)據(jù)寫入對應(yīng)的存儲器塊,模塊序號、數(shù)目,下載標(biāo)志更新以后;另一種是數(shù)字電視接收設(shè)備正在接收第m個模塊時。
在再次系統(tǒng)軟件升級的過程中,如果是第一種情況,開始接收第m+1個模塊,另一種情況開始接收第m個模塊。直至所有的模塊全部接收,系統(tǒng)軟件升級完成。
實現(xiàn)本發(fā)明方法的設(shè)備采用碼流播放服務(wù)器、調(diào)制器、復(fù)用器、數(shù)字接收機以及電視機。具體應(yīng)用過程為在服務(wù)器端,軟件下載數(shù)據(jù)流的測試,運行數(shù)據(jù)流生成系統(tǒng)程序,將軟件映像文件生成MPEG-2的數(shù)據(jù)流(解決系統(tǒng)程序的BUG,增加新的功能),為了軟件下載的通用性和網(wǎng)絡(luò)的利用率,將軟件下載的數(shù)據(jù)流和視音頻流一起注入到復(fù)用器中,復(fù)用器將數(shù)據(jù)和視音頻流復(fù)用后,再輸入到調(diào)制器中,調(diào)制器對輸入的信號進(jìn)行調(diào)制后(設(shè)定頻點和符號率),通過有線電纜將信號調(diào)制器對輸入的信號進(jìn)行調(diào)制后(設(shè)定頻點和符號率),通過有線電纜將信號廣播出去,生成的數(shù)據(jù)流能被復(fù)用器復(fù)用到視音頻流中,也能被調(diào)制器調(diào)制后輸出。
在接收端,數(shù)字接收機以及電視機,數(shù)字電視接收設(shè)備軟件初始化(軟件下載程序和系統(tǒng)程序通過燒錄設(shè)備擦寫到FLASH中), 軟件下載觸發(fā)機制測試,在服務(wù)器端播放下載數(shù)據(jù)流,當(dāng)數(shù)字電視接收設(shè)備開機和切換頻點時,系統(tǒng)程序界面顯示提示信息,通知用戶啟動數(shù)字電視接收設(shè)備,開始軟件的升級,EMM數(shù)據(jù)觸發(fā)測試,通過CA(條件接收,Conditional Access)系統(tǒng)產(chǎn)生EMM數(shù)據(jù),數(shù)字電視接收設(shè)備接收到EMM數(shù)據(jù)后,系統(tǒng)程序界面顯示提示信息,通知用戶啟動數(shù)字電視接收設(shè)備,開始系統(tǒng)軟件升級。
數(shù)字電視接收設(shè)備進(jìn)行升級試驗,在服務(wù)器端播放不同硬件版本和軟件版本的下載的數(shù)據(jù)流,當(dāng)下載流中過濾的硬件版本與FLASH中的硬件版本不相同時,系統(tǒng)程序界面顯示提示信息數(shù)字電視接收設(shè)備硬件版本不相同,重新啟動系統(tǒng)程序。當(dāng)硬件版本相同,過濾到軟件版本與FLASH中的軟件版本相同時,系統(tǒng)程序界面顯示提示信息數(shù)字電視接收設(shè)備程序是新程序,重新啟動系統(tǒng)程序。過濾到軟件版本與FLASH中的軟件版不相同時,顯示提示信息請稍等,開始軟件下載。當(dāng)系統(tǒng)程序升級完后,重新啟動系統(tǒng)程序。兩臺數(shù)字電視接收設(shè)備升級后,對各項功能進(jìn)行了測試,系統(tǒng)程序的問題得到了解決,新增的功能運行正常。
最后應(yīng)說明的是以上實施例僅用以說明本發(fā)明而并非限制本發(fā)明所描述的技術(shù)方案;因此,盡管本說明書參照上述的各個實施例對本發(fā)明已進(jìn)行了詳細(xì)的說明,但是,本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,仍然可以對本發(fā)明進(jìn)行修改或者等同替換;而一切不脫離本發(fā)明的精神和范圍的技術(shù)方案及其改進(jìn),其均應(yīng)涵蓋在本發(fā)明的權(quán)利要求范圍當(dāng)中。
權(quán)利要求
1.一種數(shù)字電視廣播中的軟件下載方法,其特征在于它至少包括啟動軟件下載程序,讀取接收設(shè)備中存儲器的下載標(biāo)志數(shù)據(jù),判斷是否需要執(zhí)行軟件下載,其中在服務(wù)器端將數(shù)據(jù)流用數(shù)字存儲媒介控制(DSMCC)協(xié)議的兩層結(jié)構(gòu)進(jìn)行封裝打包,形成符合MPEG-2的傳輸流,利用數(shù)據(jù)輪播的方式進(jìn)行發(fā)送,在接收設(shè)備端,軟件下載接收程序按照DSMCC規(guī)范,對DSMCC封裝的數(shù)據(jù)流進(jìn)行過濾,進(jìn)行軟件的在線升級。
2.根據(jù)權(quán)利要求1所述的數(shù)字電視廣播中的軟件下載方法,其特征在于兩層結(jié)構(gòu)包括為控制通道和數(shù)據(jù)通道,其中控制通道設(shè)有軟件下載映像數(shù)據(jù)描述信息;數(shù)據(jù)通道包含模塊數(shù)據(jù)描述信息以及模塊數(shù)據(jù)兩部分,模塊數(shù)據(jù)描述信息針對模塊數(shù)據(jù)特征描述;接收設(shè)備開機啟動后,接收軟件下載映像描述信息,判斷是否需要下載軟件;軟件下載時,先接收映像數(shù)據(jù)中模塊數(shù)據(jù)描述信息,過濾模塊數(shù)據(jù)大小、數(shù)目,并存儲其中的數(shù)據(jù)信息;再接收模塊數(shù)據(jù)信息,過濾模塊數(shù)據(jù),擦寫對應(yīng)的存儲器地址數(shù)據(jù)。
3.根據(jù)權(quán)利要求2所述的數(shù)字電視廣播中的軟件下載方法,其特征在于模塊描述信息包括模塊產(chǎn)生信息中的數(shù)字簽名描述信息,用以對接收的數(shù)據(jù)和數(shù)字簽名數(shù)據(jù)進(jìn)行比較,軟件下載時通過獲取模塊數(shù)字簽名描述信息,再接收對應(yīng)的模塊數(shù)據(jù);在接收端進(jìn)行校驗、認(rèn)證,校驗、認(rèn)證通過的該模塊數(shù)據(jù)是完整的,且為對該接收設(shè)備進(jìn)行下載的軟件;校驗、認(rèn)證未通過的,則不是有效數(shù)據(jù),不進(jìn)行處理。
4.根據(jù)權(quán)利要求3所述的數(shù)字電視廣播中的軟件下載方法,其特征在于服務(wù)器端加密數(shù)據(jù)的形成過程是將下載的系統(tǒng)軟件映像數(shù)據(jù)分塊,對每一模塊數(shù)據(jù)利用hash算法產(chǎn)生摘要數(shù)據(jù),用接收設(shè)備端提供的私有密鑰利用RSA算法對摘要數(shù)據(jù)加密,再將加密的數(shù)據(jù)封裝到DIRES中,隨同其它流一起廣播出去。
5.根據(jù)權(quán)利要求3所述的數(shù)字電視廣播中的軟件下載方法,其特征在于接收設(shè)備端的校驗過程,收到DIRES數(shù)據(jù)信息后,從中過濾到一模塊加密數(shù)據(jù),用接收設(shè)備端提供的公共密鑰對加密數(shù)據(jù)用RSA算法進(jìn)行解密,得到解密數(shù)據(jù),再從DDB中過濾到該模塊的數(shù)據(jù),用hash算法對該模塊產(chǎn)生摘要數(shù)據(jù),再對該模塊的解密數(shù)據(jù)和該模塊的摘要數(shù)據(jù)進(jìn)行比較,如果相同,則該模塊的數(shù)字簽名校驗正確。
6.根據(jù)權(quán)利要求2所述的數(shù)字電視廣播中的軟件下載方法,其特征在于模塊描述信息包括CRC32描述信息,用以對接收的數(shù)據(jù)和CRC32數(shù)據(jù)進(jìn)行比較;軟件下載時,在接收端獲取校驗?zāi)K數(shù)據(jù)的CRC32信息,再接收對應(yīng)的模塊數(shù)據(jù),進(jìn)行驗證計算,驗證通過的,說明接收的模塊數(shù)據(jù)是正確的,可以進(jìn)行處理;驗證未通過的,不進(jìn)行處理。
7.根據(jù)權(quán)利要求2或3或4或5或6所述的數(shù)字電視廣播中的軟件下載方法,其特征在于過濾模塊數(shù)據(jù),數(shù)字簽名校驗和CRC32校驗全部通過后,擦寫對應(yīng)的存儲器地址數(shù)據(jù)。
8.根據(jù)權(quán)利要求2所述的數(shù)字電視廣播中的軟件下載方法,其特征在于模塊描述信息包括存儲器地址描述信息,軟件下載時,接收端根據(jù)存儲器地址描述信息獲取存儲器地址信息,存放對應(yīng)的模塊數(shù)據(jù)。
9.根據(jù)權(quán)利要求2或3或4或5或6或8所述的數(shù)字電視廣播中的軟件下載方法,其特征在于軟件下載時,接收端每接收一個模塊數(shù)據(jù),數(shù)字簽名校驗和CRC32校驗通過以后,將數(shù)據(jù)寫入對應(yīng)的存儲器塊,并在存儲器的指定位置標(biāo)記模塊的序號,記錄已接收模塊的數(shù)目,設(shè)置下載完成標(biāo)志到模塊描述信息中。
10.根據(jù)權(quán)利要求2所述的數(shù)字電視廣播中的軟件下載方法,其特征在于模塊描述信息包括模塊識別信息描述信息,該描述信息包含了軟件整體模塊數(shù)據(jù)的個數(shù)和模塊識別信息;軟件下載時,接收端存儲該信息;如果本次下載了該信息描述的所有模塊,則完成軟件下載任務(wù);如果下載了部分模塊,則為下載軟件產(chǎn)生了下載中斷,出現(xiàn)中斷點。
11.根據(jù)權(quán)利要求2所述的數(shù)字電視廣播中的軟件下載方法,其特征在于接收設(shè)備開機啟動后,執(zhí)行系統(tǒng)程序前,先判斷新軟件下載服務(wù),或斷點續(xù)傳下載服務(wù);若為新軟件下載,則進(jìn)行軟件升級的完整下載過程;如為斷點續(xù)傳下載,則直接進(jìn)行軟件續(xù)傳下載的過程。
12.根據(jù)權(quán)利要求10或11所述的數(shù)字電視廣播中的軟件下載方法,其特征在于斷點續(xù)傳下載包括若中斷點模塊描述信息中已經(jīng)設(shè)置下載完成標(biāo)志,則從該中斷點模塊的下一模塊開始下載;若中斷點模塊描述信息中沒有設(shè)置下載完成標(biāo)志,則從該中斷點模塊開始重新下載。
13.根據(jù)權(quán)利要求2或3或4或5或6或8或10或11所述的數(shù)字電視廣播中的軟件下載方法,其特征在于模塊描述信息包括模塊識別信息描述,該描述信息包含了軟件整體模塊數(shù)據(jù)的個數(shù)和模塊識別信息;接收設(shè)備開機啟動后,先判斷已經(jīng)記錄的模塊數(shù)據(jù)數(shù)目或識別信息,如果不完整,則進(jìn)行斷點續(xù)傳下載,直接將上次沒有接收到的模塊數(shù)據(jù)過濾、下載;如果完整,則直接進(jìn)入執(zhí)行系統(tǒng)程序,或進(jìn)行其它新軟件完整的更新下載。
14.根據(jù)權(quán)利要求1所述的數(shù)字電視廣播中的軟件下載方法,其特征在于接收設(shè)備端為數(shù)字電視接收設(shè)備。
全文摘要
一種數(shù)字電視廣播中的軟件下載方法,包括啟動軟件下載程序,讀取接收設(shè)備中的存儲器下載標(biāo)志數(shù)據(jù),判斷是否需要下載,其中在服務(wù)器端按照DSMCC協(xié)議的規(guī)定,將數(shù)據(jù)流用DSMCC兩層結(jié)構(gòu)進(jìn)行封裝打包,與軟件下載服務(wù)信息以及PAT、PMT的映射信息共同形成符合MPEG-2的傳輸流,利用數(shù)據(jù)輪播的方式發(fā)送;在接收設(shè)備端,下載的接收程序過濾、處理DSMCC封裝的數(shù)據(jù)流,進(jìn)行軟件的在線升級。本發(fā)明對下載的數(shù)據(jù)流進(jìn)行了數(shù)字簽名認(rèn)證,保證了下載程序的完整性,防止了數(shù)據(jù)在傳輸中丟失;保證了下載數(shù)據(jù)的來源,防止了接收無關(guān)的下載數(shù)據(jù)流。斷點續(xù)傳保證了在異常情況下的升級失敗,對數(shù)字電視接收設(shè)備中沒有升級的程序再次進(jìn)行升級。
文檔編號H04N7/015GK1487740SQ0213108
公開日2004年4月7日 申請日期2002年9月30日 優(yōu)先權(quán)日2002年9月30日
發(fā)明者王小璞, 谷曉軍 申請人:北京中視聯(lián)數(shù)字系統(tǒng)有限公司