本發(fā)明涉及高效安全解決視頻流防篡改領(lǐng)域,尤其是一種防止視頻插播篡改的校驗(yàn)方法及裝置。
背景技術(shù):
現(xiàn)在主流的視頻傳輸均是未加入任何技術(shù)手段用于視頻流的防篡改,只是在通信過程中通過加入校驗(yàn)位用于校驗(yàn)視頻是否發(fā)生丟包,因此無法解決視頻流中加入篡改信息流,進(jìn)行惡意宣傳的問題,除此之外,還可以通過數(shù)據(jù)流加密的方式進(jìn)行視頻信息防篡改,但是這種方式效率極低,會(huì)大大影響視頻的通信效率。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是:針對(duì)現(xiàn)有技術(shù)存在的問題,提供一種防止視頻插播篡改的校驗(yàn)方法及裝置。主要針對(duì)于如何高效安全解決視頻流防篡改的問題展開研究,通過視頻通信雙方保持一個(gè)固有的根隨機(jī)數(shù),繼而利用該根隨機(jī)數(shù)生成檢測(cè)信息插入的位置,使用插入特殊字符的方式,實(shí)現(xiàn)數(shù)據(jù)接收端對(duì)數(shù)據(jù)源端發(fā)送視頻真實(shí)性的校驗(yàn),防止視頻的篡改。
本發(fā)明采用的技術(shù)方案如下:
一種防止視頻插播篡改的校驗(yàn)方法包括:
步驟1:視頻源端利用固定密鑰key加密根隨機(jī)數(shù)r_key為加密數(shù)據(jù)c_r_key(SM2對(duì)稱加密算法),將加密數(shù)據(jù)c_r_key發(fā)送給視頻播放終端;視頻源端和視頻播放終端均存有一個(gè)固定的密鑰key;
視頻源端使用根隨機(jī)數(shù)r_key與視頻數(shù)據(jù)包的發(fā)送包頭head共同產(chǎn)生該視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h;視頻源端根據(jù)插入密度及位置確定視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h的插入位置;視頻源端將帶有插入隨機(jī)數(shù)h的視頻數(shù)據(jù)包以及插入隨機(jī)數(shù)h發(fā)送給視頻播放終端;
步驟2:視頻播放終端接收加密數(shù)據(jù)c_r_key,并使用固定密鑰key解密獲得根隨機(jī)數(shù)r_key;:視頻播放終端在接收到帶有插入隨機(jī)數(shù)h的視頻數(shù)據(jù)包后,解析該視頻數(shù)據(jù)包;視頻播放終端根據(jù)視頻源端獲得插入隨機(jī)數(shù)h的方法,基于解析后視頻數(shù)據(jù)包發(fā)送包頭與視頻播放終端解密獲得的r_key產(chǎn)生終端插入隨機(jī)數(shù)H;
步驟3:視頻播放終端根據(jù)視頻源端確定視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h的插入位置方法,對(duì)終端插入隨機(jī)數(shù)H的插入位置進(jìn)行選擇;
步驟4:視頻播放終端將插入隨機(jī)數(shù)h與終端插入隨機(jī)數(shù)H進(jìn)行校驗(yàn),判斷視頻數(shù)據(jù)是否被篡改。
進(jìn)一步的,視頻源端的根隨機(jī)數(shù)r_key需要定期更換。
進(jìn)一步的,所述派生方法為h以及終端插入隨機(jī)數(shù)H都是根據(jù)SM3雜湊算法得到,具體計(jì)算公式為h=Hash(r_key||head);H=Hash(r_key||head)。
進(jìn)一步的,所述步驟4具體過程是:視頻播放終端將插入隨機(jī)數(shù)h與終端插入隨機(jī)數(shù)H進(jìn)行比對(duì),若一致,則該視頻數(shù)據(jù)包是來自視頻源端;否則,該視頻被篡改。
一種防止視頻插播篡改的校驗(yàn)裝置包括:
視頻源端,用于利用固定密鑰key加密根隨機(jī)數(shù)r_key為加密數(shù)據(jù)c_r_key(通過SM2對(duì)稱加密算法計(jì)算c_r_key),將加密數(shù)據(jù)c_r_key發(fā)送給視頻播放終端;用于使用根隨機(jī)數(shù)r_key與視頻數(shù)據(jù)包的發(fā)送包頭head共同產(chǎn)生該視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h;用于根據(jù)插入密度及位置確定視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h的插入位置;用于將帶有插入隨機(jī)數(shù)h的視頻數(shù)據(jù)包以及插入隨機(jī)數(shù)h發(fā)送給視頻播放終端;視頻源端和視頻播放終端均存有一個(gè)固定的密鑰key;
視頻播放終端,用于接收加密數(shù)據(jù)c_r_key,并使用固定密鑰key解密獲得根隨機(jī)數(shù)r_key;用于在接收到帶有插入隨機(jī)數(shù)h的視頻數(shù)據(jù)包后,解析該視頻數(shù)據(jù)包;用于根據(jù)視頻源端獲得插入隨機(jī)數(shù)h的方法,基于解析后視頻數(shù)據(jù)包發(fā)送包頭與視頻播放終端解密獲得的r_key產(chǎn)生終端插入隨機(jī)數(shù)H;用于根據(jù)視頻源端確定視頻數(shù)據(jù)包校驗(yàn)碼的插入隨機(jī)數(shù)h的插入位置方法,對(duì)終端插入隨機(jī)數(shù)H的插入位置進(jìn)行選擇;用于將插入隨機(jī)數(shù)h與終端插入隨機(jī)數(shù)H進(jìn)行校驗(yàn),判斷視頻數(shù)據(jù)是否被篡改。
進(jìn)一步的,視頻源端的根隨機(jī)數(shù)r_key需要定期更換。
進(jìn)一步的,所述派生方法為h以及終端插入隨機(jī)數(shù)H都是根據(jù)SM3雜湊算法得到,具體計(jì)算公式為h=Hash(r_key||head);H=Hash(r_key||head)。
進(jìn)一步的,所述視頻播放終端將插入隨機(jī)數(shù)h與終端插入隨機(jī)數(shù)H進(jìn)行校驗(yàn),判斷視頻數(shù)據(jù)是否被篡改具體過程是:視頻播放終端將插入隨機(jī)數(shù)h與終端插入隨機(jī)數(shù)H進(jìn)行比對(duì),若一致,則該視頻數(shù)據(jù)包是來自視頻源端;否則,該視頻被篡改。
綜上所述,由于采用了上述技術(shù)方案,本發(fā)明的有益效果是:
(1)通過插入隨機(jī)數(shù)h進(jìn)行校驗(yàn)的方式實(shí)現(xiàn)視頻數(shù)據(jù)是否被篡改的檢測(cè);
(2)校驗(yàn)位的插入隨機(jī)數(shù)可以根據(jù)實(shí)際對(duì)于視頻傳輸效率的要求進(jìn)行更改,可具有更高的效率。
附圖說明
本發(fā)明將通過例子并參照附圖的方式說明,其中:
圖1本發(fā)明流程圖。
具體實(shí)施方式
本說明書中公開的所有特征,或公開的所有方法或過程中的步驟,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。
本說明書中公開的任一特征,除非特別敘述,均可被其他等效或具有類似目的的替代特征加以替換。即,除非特別敘述,每個(gè)特征只是一系列等效或類似特征中的一個(gè)例子而已。
如圖1本專利中使用了一種對(duì)稱加密算法和一種雜湊算法,對(duì)稱加密算法可采用商用國(guó)家密碼標(biāo)準(zhǔn)SM4對(duì)稱加密算法,雜湊算法可采用商用過加密密碼標(biāo)準(zhǔn)SM3雜湊算法。
本專利主要流程包括:
(1)視頻源端和視頻播放終端均存有一個(gè)固定的密鑰key(SM2對(duì)稱密碼算法密鑰,一般為256比特);
(2)視頻源端需要定期更換視頻終端的根隨機(jī)數(shù)r_key,利用固定密鑰key加密r_key為c_r_key(SM2對(duì)稱加密算法),將c_r_key發(fā)送給視頻終端;
(3)視頻終端接收數(shù)據(jù),并使用固定密鑰key解密獲得r_key;
(4)視頻源端使用r_key與視頻數(shù)據(jù)發(fā)送包頭head共同產(chǎn)生該包校驗(yàn)碼的插入隨機(jī)數(shù),派生方法為h=Hash(r_key||head)(SM3雜湊算法);
(5)視頻源端數(shù)據(jù)包校驗(yàn)位的插入位置根據(jù)插入隨機(jī)數(shù)h進(jìn)行確定,至于具體的確定方法根據(jù)實(shí)際視頻傳輸對(duì)于效率的要求進(jìn)行確定,例如,最簡(jiǎn)單的方法是包大小為size,每個(gè)包中只插入一個(gè)校驗(yàn)位,位置為h mod size;
(6)視頻源端將帶有校驗(yàn)位的視頻包發(fā)送給視頻終端;
(7)視頻終端在接收到視頻數(shù)據(jù)包后,同樣按照步驟(4)的方法確定該包校驗(yàn)碼的插入隨機(jī)數(shù),繼而按照(5)的方法確定校驗(yàn)位的插入位置,繼而進(jìn)行校驗(yàn),確定該包是否來自視頻源端。
本發(fā)明并不局限于前述的具體實(shí)施方式。本發(fā)明擴(kuò)展到任何在本說明書中披露的新特征或任何新的組合,以及披露的任一新的方法或過程的步驟或任何新的組合。