本發(fā)明涉及一種多媒體輸出系統(tǒng),屬于多媒體系統(tǒng)領(lǐng)域。
背景技術(shù):
零售、體育娛樂、以及交通等各行業(yè)在圖像顯示方面的需求在不斷提升,數(shù)字商業(yè)顯示行業(yè)發(fā)展迅速,前景良好。于此同時,商業(yè)顯示系統(tǒng)的安全問題也越來越突出現(xiàn)有的商顯系統(tǒng)中,往往是C/S模型,服務(wù)端被入侵,往往造成大片終端淪陷,終端被遠(yuǎn)程控制,任意播放非法音視頻等。另外,往往終端接入的網(wǎng)絡(luò)并不安全,黑客往往通過偽造基站,控制WiFi熱點(diǎn)等侵入終端。
現(xiàn)在市面上主要面對的是單純的顯示固件的輸出終端,而隨著技術(shù)的發(fā)展,更加智能和多功能的終端會類似一個平板電腦或者手機(jī),即使用操作系統(tǒng)的終端,基于系統(tǒng)提供的程序進(jìn)行對數(shù)據(jù)的處理?,F(xiàn)在針對具有這類輸出終端的系統(tǒng)的安全防范還在起步階段,需要提供一個能實(shí)現(xiàn)安全輸出的系統(tǒng)。
技術(shù)實(shí)現(xiàn)要素:
為了解決上述問題,本發(fā)明通過提供一種多媒體輸出系統(tǒng)。
本發(fā)明采用的技術(shù)方案一方面為一種多媒體輸出系統(tǒng),包括加密模塊、服務(wù)器、驗(yàn)證模塊和基于Android技術(shù)的輸出終端;其中,所述加密模塊用于接收并加密待輸出信息,標(biāo)記該被加密之后的待輸出信息為加密信息;所述服務(wù)器用于接收、存儲和處理所述加密信息;所述驗(yàn)證模塊用于驗(yàn)證所述加密信息并輸出驗(yàn)證信息;所述輸出終端,用于接收加密信息和驗(yàn)證信息,基于驗(yàn)證信息處理加密信息并輸出所述待輸出信息。
優(yōu)選地,所述加密模塊基于USB key對待輸出信息進(jìn)行加密。
優(yōu)選地,所述加密模塊對待輸出信息進(jìn)行加密的步驟包括:使用USB key處理待輸出信息得到對應(yīng)的哈希值;使用USB key的私鑰對所述哈希值進(jìn)行數(shù)字簽名以得到簽名值;對簽名值進(jìn)行base64URL編碼處理以得到加密值,結(jié)合加密值與待輸出信息得到加密信息。
優(yōu)選地,所述加密模塊對待輸出信息進(jìn)行加密的步驟還包括使用USB key處理待輸出信息以生成時間戳,對簽名值和時間戳進(jìn)行base64URL編碼處理以得到加密值,結(jié)合加密值與待輸出信息得到加密信息。
優(yōu)選地,所述驗(yàn)證模塊存儲USB key的公鑰,基于公鑰驗(yàn)證加密信息并輸出驗(yàn)證信息。
優(yōu)選地,所述輸出終端還用于基于安全策略管理加密信息,其步驟包括:從服務(wù)器接收加密信息,基于安全策略區(qū)分并標(biāo)記加密信息為非管制信息和管制信息;基于標(biāo)記處理加密信息,其中,對于非管制信息,直接處理該非管制信息并輸出對應(yīng)的待輸出信息;對于管制信息,向驗(yàn)證模塊提出驗(yàn)證申請,基于驗(yàn)證模塊返回的驗(yàn)證信息處理并輸出對應(yīng)的待輸出信息。
優(yōu)選地,所述輸出終端還用于從服務(wù)器接收終端更新信息,所述終端更新信息包括應(yīng)用于Android系統(tǒng)的APK和安全策略更新文件,所述終端更新信息基于加密模塊實(shí)現(xiàn)加密處理。
本發(fā)明的有益效果為通過對待輸出的信息進(jìn)行數(shù)字簽名處理,同時通過安全策略限定待輸出信息的范圍和處理方式,增加對外界侵入的信息的識別能力和處理能力,提高系統(tǒng)安全性。
附圖說明
圖1所示為基于本發(fā)明實(shí)施例的一種多媒體輸出系統(tǒng)的示意圖。
具體實(shí)施方式
以下結(jié)合實(shí)施例對本發(fā)明進(jìn)行說明。
基于發(fā)明的實(shí)施例,如圖1所示一種多媒體輸出系統(tǒng),包括加密模塊、服務(wù)器、驗(yàn)證模塊和基于Android技術(shù)的輸出終端;其中,所述加密模塊用于接收并加密待輸出信息,標(biāo)記該被加密之后的待輸出信息為加密信息;所述服務(wù)器用于接收、存儲和處理所述加密信息;所述驗(yàn)證模塊用于驗(yàn)證所述加密信息并輸出驗(yàn)證信息;所述輸出終端,用于接收加密信息和驗(yàn)證信息,基于驗(yàn)證信息處理加密信息并輸出所述待輸出信息。
加密模塊主要用于加密處理(進(jìn)行數(shù)字簽名,也可以是將信息完全密碼化,即根據(jù)密碼本對信息進(jìn)行轉(zhuǎn)碼,本方案主要是進(jìn)行數(shù)據(jù)簽名處理)外界輸入的待輸出的信息,加密信息主要包括多媒體數(shù)據(jù)本體和數(shù)字簽名部分,服務(wù)器主要用于接收、存儲和處理(發(fā)送至某個終端,更改信息內(nèi)容,更改信息標(biāo)簽等)所述加密信息,驗(yàn)證模塊用于對已進(jìn)行加密處理的信息進(jìn)行處理(基于加密處理的類型,例如進(jìn)行數(shù)據(jù)簽名驗(yàn)證,對比密鑰,進(jìn)行解碼等,本方案主要是進(jìn)行數(shù)字簽名驗(yàn)證和密鑰對比),該驗(yàn)證模塊可以是獨(dú)立于輸出終端,也可以是輸出終端本身能夠?qū)崿F(xiàn)的功能(例如運(yùn)行于Android系統(tǒng)的程序)。
其中密鑰可以是通過線下(即事先設(shè)置于模塊本身,如一個USB key,私鑰直接使用在加密模塊上,公鑰存儲在驗(yàn)證模塊上,兩者沒有直接網(wǎng)絡(luò)連接)或線上(即USB key存放在一個加密模塊、驗(yàn)證模塊都能連接的地方,同時根據(jù)模塊類型在線提供對應(yīng)的公私鑰)協(xié)商密鑰。密鑰可以是對稱也可以是非對稱的,對稱機(jī)制下,驗(yàn)證模塊與加密模塊共享對稱密鑰;非對稱機(jī)制下,驗(yàn)證模塊維護(hù)密鑰對的公鑰,加密模塊安全維護(hù)密鑰對的私鑰;安全起見,加密模塊的密鑰通過口令或安全硬件保護(hù)。
所述加密模塊基于USB key對待輸出信息進(jìn)行加密。
USB Key是一種USB接口的硬件設(shè)備。它內(nèi)置單片機(jī)或智能卡芯片,有一定的存儲空間,可以存儲用戶的私鑰以及數(shù)字證書,利用USB Key內(nèi)置的公鑰算法實(shí)現(xiàn)對用戶身份的認(rèn)證。由于用戶私鑰保存在密碼鎖中,理論上使用任何方式都無法讀取,因此保證了用戶認(rèn)證的安全性。
所述加密模塊對待輸出信息進(jìn)行加密的步驟包括:使用USB key處理待輸出信息得到對應(yīng)的哈希值;使用USB key的私鑰對所述哈希值進(jìn)行數(shù)字簽名以得到簽名值;對簽名值進(jìn)行base64URL編碼處理以得到加密值,結(jié)合加密值與待輸出信息(原始信息,并非被加密之后的信息)得到加密信息。
加密模塊處理信息的步驟包括首先對待輸出的信息進(jìn)行摘要計算,摘要算法為主流的sha1系列,sha2系列,md5算法等,處理得到摘要之后,使用USB key內(nèi)的智能芯片的私鑰對摘要進(jìn)行簽名,
Base64編碼可用于在HTTP環(huán)境下傳遞較長的標(biāo)識信息。例如,在Java Persistence系統(tǒng)Hibernate中,就采用了Base64來將一個較長的唯一標(biāo)識符(一般為128-bit的UUID)編碼為一個字符串,用作HTTP表單和HTTP GET URL中的參數(shù)。在其他應(yīng)用程序中,也常常需要把二進(jìn)制數(shù)據(jù)編碼為適合放在URL(包括隱藏表單域)中的形式。此時,采用Base64編碼不僅比較簡短,同時也具有不可讀性,即所編碼的數(shù)據(jù)不會被人用肉眼所直接看到。然而,標(biāo)準(zhǔn)的Base64并不適合直接放在URL里傳輸,因?yàn)閁RL編碼器會把標(biāo)準(zhǔn)Base64中的“/”和“+”字符變?yōu)樾稳纭?XX”的形式,而這些“%”號在存入數(shù)據(jù)庫時還需要再進(jìn)行轉(zhuǎn)換,因?yàn)锳NSI SQL中已將“%”號用作通配符。為解決此問題,可采用一種用于URL的改進(jìn)Base64編碼,它不在末尾填充'='號,并將標(biāo)準(zhǔn)Base64中的“+”和“/”分別改成了“*”和“-”,這樣就免去了在URL編解碼和數(shù)據(jù)庫存儲時所要作的轉(zhuǎn)換,避免了編碼信息長度在此過程中的增加,并統(tǒng)一了數(shù)據(jù)庫、表單等處對象標(biāo)識符的格式。
所述加密模塊對待輸出信息進(jìn)行加密的步驟還包括使用USB key處理待輸出信息以生成時間戳,對簽名值和時間戳進(jìn)行base64URL編碼處理以得到加密值,結(jié)合加密值與待輸出信息得到加密信息。
時間戳(time stamp),通常是一個字符序列,唯一地標(biāo)識某一刻的時間。數(shù)字時間戳技術(shù)是數(shù)字簽名技術(shù)一種變種的應(yīng)用。時間戳產(chǎn)生的過程為:首先將需要加時間戳的文件用Hash編碼加密形成摘要,然后將該摘要發(fā)送到DTS(Decode Time Stamp),DTS在加入了收到文件摘要的日期和時間信息后再對該文件加密(數(shù)字簽名),然后輸出。
所述驗(yàn)證模塊預(yù)先存儲USB key的公鑰,基于公鑰驗(yàn)證加密信息并輸出驗(yàn)證信息。
即采用離線的方法,將USB key存儲在驗(yàn)證模塊,主要是防范網(wǎng)絡(luò)攻擊;所述公鑰驗(yàn)證之后,返回驗(yàn)證信息(即正確碼以及視頻文件摘要值。否則不通過,返回錯誤碼),輸出終端接收到驗(yàn)證信息之后,基于驗(yàn)證信息決定對加密信息的處理方法。
所述輸出終端還用于基于安全策略管理加密信息,其步驟包括:從服務(wù)器接收加密信息,基于安全策略區(qū)分并標(biāo)記加密信息為非管制信息和管制信息;基于標(biāo)記處理加密信息,其中,對于非管制信息,直接處理該非管制信息并輸出對應(yīng)的待輸出信息;對于管制信息,向驗(yàn)證模塊提出驗(yàn)證申請,基于驗(yàn)證模塊返回的驗(yàn)證信息處理并輸出對應(yīng)的待輸出信息。
Android系統(tǒng)會提供系統(tǒng)策略相關(guān)的功能(即安全策略),基于這些功能,能夠?qū)π畔⑦M(jìn)行前期管理,例如何時應(yīng)該播放那個類型(音頻、視頻、圖像等)的多媒體(例如7點(diǎn)只能播放新聞聯(lián)播等···),安全策略為預(yù)先設(shè)置/經(jīng)過可靠更新過程的策略,會將加密信息進(jìn)行區(qū)分(例如一部分為較為可信的長期使用者的待輸出信息,另一部分為不太可信的新出現(xiàn)的信息等),標(biāo)記其為管制信息和非管制信息,對這兩類信息進(jìn)行各種的處理流程;其中,對于非管制信息,不需要驗(yàn)證數(shù)字簽名,直接載入多媒體部分,這樣會提高系統(tǒng)的處理速度,而對于管制信息,則需要進(jìn)行驗(yàn)證,驗(yàn)證方式是先提出一個驗(yàn)證申請,驗(yàn)證模塊收到申請之后,基于公鑰對數(shù)字簽名部分進(jìn)行驗(yàn)證,并返回驗(yàn)證的結(jié)果(驗(yàn)證信息),輸出終端則基于驗(yàn)證信息決定是否播放管制信息。
所述輸出終端還用于從服務(wù)器接收終端更新信息,所述終端更新信息包括應(yīng)用于Android系統(tǒng)的APK和安全策略更新文件,所述終端更新信息基于加密模塊實(shí)現(xiàn)加密處理。
基于發(fā)明的實(shí)施例,輸出終端包括顯示固件、Android系統(tǒng)和應(yīng)用程序,Android(系統(tǒng)框架層服務(wù))TCS為驗(yàn)證模塊;應(yīng)用程序依代碼邏輯下載視頻文件(待輸出信息),檢測要求播放視頻文件,激活安全策略,計算視頻文件摘要值,時間戳連同簽名值供TCS驗(yàn)證;TCS調(diào)用公鑰對簽名信息(數(shù)字簽名)校驗(yàn)驗(yàn)證,通過返回正確碼以及視頻文件摘要值。否則不通過,返回錯誤碼;應(yīng)用程序校驗(yàn)返回值,正確則校驗(yàn)視頻文件摘要值,一致則執(zhí)行視頻播放,不一致或者錯誤碼則終止視頻播放。
基于發(fā)明的實(shí)施例,終端應(yīng)用程序依代碼邏輯開始升級APK/固件流程:檢測要求對升級指令做驗(yàn)證,激活保護(hù)策略,把指令信息,時間戳連同簽名值供TCS驗(yàn)證。TCS調(diào)用公鑰對簽名信息校驗(yàn)驗(yàn)證,通過返回正確碼以及指令信息。否則不通過,返回錯誤碼。應(yīng)用程序校驗(yàn)返回值,正確則對解析返回的指令信息,通過指令信息的URL下載APK或固件包,下載完畢后校驗(yàn)摘要值與指令信息的摘要值是否一致,一致則要求系統(tǒng)對應(yīng)用程序或固件進(jìn)行升級,不一致或者錯誤碼則終止升級流程。
以上所述,只是本發(fā)明的較佳實(shí)施例而已,本發(fā)明并不局限于上述實(shí)施方式,只要其以相同的手段達(dá)到本發(fā)明的技術(shù)效果,都應(yīng)屬于本發(fā)明的保護(hù)范圍。在本發(fā)明的保護(hù)范圍內(nèi)其技術(shù)方案和/或?qū)嵤┓绞娇梢杂懈鞣N不同的修改和變化。