本發(fā)明涉及視頻監(jiān)控、視頻會(huì)議等領(lǐng)域內(nèi)的信息安全的技術(shù)領(lǐng)域,尤其涉及一種流媒體信息安全保障方法,以及流媒體信息安全保障系統(tǒng)。
背景技術(shù):
隨著視頻監(jiān)控、視頻會(huì)議等技術(shù)越來(lái)越多的應(yīng)用于我們的日常工作和生活,流媒體的傳輸、存儲(chǔ)、播放等環(huán)節(jié)的信息安全越來(lái)越重要。如何高效和高強(qiáng)度的保障流媒體信息在各個(gè)環(huán)節(jié)的信息安全成為了關(guān)注和研究重點(diǎn)。
目前,對(duì)于流媒體普遍采用的基于常規(guī)加密技術(shù)對(duì)流媒體加密,這些方法可以很好的實(shí)現(xiàn)信息的高強(qiáng)度加密,但普遍存在加密效率較低、算法復(fù)雜、實(shí)時(shí)性低、對(duì)加解密設(shè)備運(yùn)算能力要求高等問(wèn)題。詳述如下:
現(xiàn)代密碼學(xué)根據(jù)加密密鑰使用方式的不同,將密碼體制分成兩大類:對(duì)稱密碼體系和非對(duì)稱密碼體系。
對(duì)稱加密算法:對(duì)稱加密采用了對(duì)稱密碼編碼技術(shù),它的特點(diǎn)是文件加密和解密使用相同的密鑰,即加密密鑰也可以用作解密密鑰,這種方法在密碼學(xué)中叫做對(duì)稱加密算法。
●對(duì)稱算法主要有四種加密模式:
√電子密碼本模式Electronic Code Book(ECB):這種模式是最早采用和最簡(jiǎn)單的模式,它將加密的數(shù)據(jù)分成若干組,每組的大小跟加密密鑰長(zhǎng)度相同,然后每組都用相同的密鑰進(jìn)行加密。
√加密塊鏈模式Cipher Block Chaining(CBC):CBC模式的加密首先也是將明文分成固定長(zhǎng)度的塊,然后將前面一個(gè)加密塊輸出的密文與下一個(gè)要加密的明文塊進(jìn)行異或操作,將計(jì)算結(jié)果再用密鑰進(jìn)行加密得到密文。第一明文塊加密的時(shí)候,因?yàn)榍懊鏇](méi)有加密的密文,所以需要一個(gè)初始化向量。跟ECB方式不一樣,通過(guò)連接關(guān)系,使得密文跟明文不再是一一對(duì)應(yīng)的關(guān)系,破解起來(lái)更困難,而且克服了只要簡(jiǎn)單調(diào)換密文塊可能達(dá)到目的的攻擊。
√加密反饋模式Cipher Feedback Mode(CFB):的應(yīng)用程序的加密要使用流加密法,可以使用加密反饋模式。在此模式下,數(shù)據(jù)用更小的單元加密,如可以是8位,這個(gè)長(zhǎng)度小于定義的塊長(zhǎng)(通常是64位)
√輸出反饋模式Output Feedback Mode(OFB):輸出反饋模式與CFB相似,惟一差別是,CFB中密文填入加密過(guò)程下一階段,而在OFB中,初始化向量加密過(guò)程的輸入填入加密過(guò)程下一階段。
非對(duì)稱加密算法需要兩個(gè)密鑰:公開(kāi)密鑰(publickey)和私有密鑰(privatekey)。公開(kāi)密鑰與私有密鑰是一對(duì),如果用公開(kāi)密鑰對(duì)數(shù)據(jù)進(jìn)行加密,只有用對(duì)應(yīng)的私有密鑰才能解密;如果用私有密鑰對(duì)數(shù)據(jù)進(jìn)行加密,那么只有用對(duì)應(yīng)的公開(kāi)密鑰才能解密。因?yàn)榧用芎徒饷苁褂玫氖莾蓚€(gè)不同的密鑰,所以這種算法叫做非對(duì)稱加密算法。
非對(duì)稱密碼體系由于使用兩個(gè)密鑰,它的優(yōu)點(diǎn)在于在密鑰傳遞的安全性上易于保障,并且算法安全性很高。但是基于非對(duì)稱加密的算法都非常復(fù)雜,在流媒體這種數(shù)據(jù)傳輸要求很強(qiáng)的實(shí)時(shí)性,數(shù)據(jù)量又很大的應(yīng)用場(chǎng)合是不適合的(這樣的算法要求音視頻終端設(shè)備運(yùn)算性能很高,例如:一種實(shí)時(shí)流媒體加密傳輸?shù)姆椒ā栋l(fā)明申請(qǐng)公布號(hào):CN101552666》;再如:微軟的DRM(Digital Rights Management數(shù)字版權(quán)管理)加密安全性目前公認(rèn)最高,但是其算法極其復(fù)雜,只能在桌面系統(tǒng)上使用,難于在嵌入式系統(tǒng)上使用)。
因此流媒體信息安全保障只能使用對(duì)稱加密算法,目前最典型的對(duì)稱加密算法有:DES算法、3DES算法、TDEA算法、Blowfish算法、RC5算法、IDEA算法。但這些算法相對(duì)于嵌入式的小型和微型化的音視頻采集終端和播放終端來(lái)說(shuō),還是顯得比較復(fù)雜(比如為了獲得較強(qiáng)的安全性,它們都不選擇ECB模式,最少也選擇CBC模式),并且為了保證很強(qiáng)的安全性,一般都要求選擇長(zhǎng)度大于64位的密碼,這樣一來(lái)其加解密所需的運(yùn)算量就更大了(這些算法的運(yùn)算量都與密碼長(zhǎng)度有關(guān))。
由此可見(jiàn),對(duì)于流媒體的加密算法而言,其本質(zhì)問(wèn)題就是安全性與高效性之間的矛盾,尋求一種高效高安全的加密算法是本技術(shù)所要解決的問(wèn)題。
另外,目前市面上大多數(shù)對(duì)于流媒體的加密算法都與流媒體的格式有關(guān)(一般是按照流媒體類型進(jìn)行分包),這樣做的目的在得到較強(qiáng)安全性的同時(shí)減少算法的復(fù)雜度,但是又犧牲了算法的通用性,對(duì)不同類型的流媒體類型需要采用不同的算法,例如:流媒體加密及解密方法、加密及解密裝置(專利申請(qǐng)公布號(hào):CN104580236A)。本技術(shù)的特點(diǎn)是不區(qū)分流媒體的類型及格式,而是把它們看作是無(wú)差別的“二進(jìn)制數(shù)據(jù)流”,并對(duì)它們進(jìn)行按位進(jìn)行加工。
技術(shù)實(shí)現(xiàn)要素:
為克服現(xiàn)有技術(shù)的缺陷,本發(fā)明要解決的技術(shù)問(wèn)題是提供了一種流媒體信息安全保障方法,其具有通用性,可以適用于各種流媒體格式;算法簡(jiǎn)單,可以適應(yīng)于小型化和微型化終端使用;在同等密碼長(zhǎng)度下,加密強(qiáng)度強(qiáng)于當(dāng)前公開(kāi)的復(fù)雜加密算法,但加解密資源消耗遠(yuǎn)小于同等強(qiáng)度的加密算法。
本發(fā)明的技術(shù)方案是:這種流媒體信息安全保障方法,該方法是對(duì)稱加密算法,加密時(shí)包括以下步驟:
(1)讀入密碼,并解析起始標(biāo)志、運(yùn)算控制字與密碼,如果解析出錯(cuò),則退出并給出報(bào)錯(cuò)信息;如果解析正確,則執(zhí)行步驟(2);
(2)根據(jù)起始標(biāo)志的解析值去對(duì)齊運(yùn)算控制字與密碼;
(3)對(duì)每個(gè)控制運(yùn)算字控制的密碼進(jìn)行編組計(jì)算,并形成最終的密碼分組;
(4)按照每個(gè)密碼分組的長(zhǎng)度,對(duì)待加密的明文進(jìn)行分組,形成分組集;
(5)按照運(yùn)算控制字的運(yùn)算規(guī)則字段指定的加密運(yùn)算法則,用相應(yīng)的密碼對(duì)待加密的明文進(jìn)行加密計(jì)算,并最終生成密文。
本發(fā)明將被加密對(duì)象看做無(wú)差別的二進(jìn)制數(shù)據(jù)流序列,因此具有通用性,可以適用于各種流媒體格式;其算法簡(jiǎn)單,所需運(yùn)算資源較少,且與密碼長(zhǎng)度無(wú)關(guān),因此該算法可以適應(yīng)于小型化和微型化終端使用;并且在同等密碼長(zhǎng)度下,實(shí)現(xiàn)變長(zhǎng)度分組的數(shù)據(jù)加密,使得加密強(qiáng)度強(qiáng)于當(dāng)前公開(kāi)的復(fù)雜加密算法,但加解密資源消耗遠(yuǎn)小于同等強(qiáng)度的加密算法。
還提供了一種流媒體信息安全保障系統(tǒng),該系統(tǒng)包括:
解析模塊,其配置來(lái)讀入密碼,并解析起始標(biāo)志、運(yùn)算控制字與密碼,如果解析出錯(cuò),則退出并給出報(bào)錯(cuò)信息;如果解析正確,則執(zhí)行對(duì)齊模塊;
對(duì)齊模塊,其配置來(lái)根據(jù)起始標(biāo)志的解析值去對(duì)齊運(yùn)算控制字與密碼;編組計(jì)算模塊,其配置來(lái)對(duì)每個(gè)控制運(yùn)算字控制的密碼進(jìn)行編組計(jì)算,并形成最終的密碼分組;
分組模塊,其配置來(lái)按照每個(gè)密碼分組的長(zhǎng)度,對(duì)待加密的明文進(jìn)行分組,形成分組集;
加密計(jì)算模塊,其配置來(lái)按照運(yùn)算控制字的運(yùn)算規(guī)則字段指定的加密運(yùn)算法則,用相應(yīng)的密碼對(duì)待加密的明文進(jìn)行加密計(jì)算,并最終生成密文。
附圖說(shuō)明
圖1所示為根據(jù)本發(fā)明的密碼組成結(jié)構(gòu)。
圖2所示為根據(jù)本發(fā)明的起始標(biāo)志的結(jié)構(gòu)。
圖3所示為循環(huán)右移運(yùn)算規(guī)則。
圖4示出了循環(huán)右移運(yùn)算之后的結(jié)果。
圖5示出了循環(huán)左移運(yùn)算規(guī)則。
圖6示出了運(yùn)算控制字組成。
圖7示出了讀入密碼并解析的流程圖。
圖8示出了對(duì)齊運(yùn)算控制字與密碼數(shù)組的流程圖。
圖9示出了密碼編組的流程圖。
圖10示出了根據(jù)本發(fā)明的流媒體信息安全保障方法的流程圖。
具體實(shí)施方式
如圖10所示,這種流媒體信息安全保障方法,該方法是對(duì)稱加密算法,加密時(shí)包括以下步驟:
(1)讀入密碼,并解析起始標(biāo)志、運(yùn)算控制字與密碼,如果解析出錯(cuò),則退出并給出報(bào)錯(cuò)信息;如果解析正確,則執(zhí)行步驟(2);
(2)根據(jù)起始標(biāo)志的解析值去對(duì)齊運(yùn)算控制字與密碼;
(3)對(duì)每個(gè)控制運(yùn)算字控制的密碼進(jìn)行編組計(jì)算,并形成最終的密碼分組;
(4)按照每個(gè)密碼分組的長(zhǎng)度,對(duì)待加密的明文進(jìn)行分組,形成分組集;
(5)按照運(yùn)算控制字的運(yùn)算規(guī)則字段指定的加密運(yùn)算法則,用相應(yīng)的密碼對(duì)待加密的明文進(jìn)行加密計(jì)算,并最終生成密文。
本發(fā)明將被加密對(duì)象看做無(wú)差別的二進(jìn)制數(shù)據(jù)流序列,因此具有通用性,可以適用于各種流媒體格式;其算法簡(jiǎn)單,所需運(yùn)算資源較少,且與密碼長(zhǎng)度無(wú)關(guān),因此該算法可以適應(yīng)于小型化和微型化終端使用;并且在同等密碼長(zhǎng)度下,實(shí)現(xiàn)變長(zhǎng)度分組的數(shù)據(jù)加密,使得加密強(qiáng)度強(qiáng)于當(dāng)前公開(kāi)的復(fù)雜加密算法,但加解密資源消耗遠(yuǎn)小于同等強(qiáng)度的加密算法。
另外,如圖7所示,所述步驟(1)包括以下分步驟:
(1.1)開(kāi)始;
(1.2)讀入密碼;
(1.3)判斷密碼是否是奇數(shù)長(zhǎng)度,是則執(zhí)行步驟(1.4),否則執(zhí)行步驟(1.6);
(1.4)判斷密碼第一個(gè)字節(jié)的前兩位是否合法,是則執(zhí)行步驟(1.5),否則執(zhí)行步驟(1.6);
(1.5)取出第一個(gè)字節(jié)存入變量,后續(xù)字節(jié)分兩段存入數(shù)組;跳轉(zhuǎn)到步驟(1.7);
(1.6)報(bào)失??;
(1.7)結(jié)束。
另外,如圖8所示,所述步驟(2)包括以下分步驟:
(2.1)開(kāi)始;
(2.2)判斷起始標(biāo)志的版本標(biāo)志字段是否為00,是則執(zhí)行步驟(2.3),否則執(zhí)行步驟(2.4);
(2.3)取出移位方式字段,00代表按循環(huán)右移的方式修改運(yùn)算控制字與密碼數(shù)組的順序,01代表按循環(huán)左移的方式修改數(shù)組的順序,10代表按求余的方式修改數(shù)組的順序,11代表不移動(dòng);跳轉(zhuǎn)到步驟(2.5);
(2.4)報(bào)失?。?/p>
(2.5)結(jié)束。
另外,如圖9所示,所述步驟(3)包括以下分步驟:
(3.1)開(kāi)始;
(3.2)讀入密碼長(zhǎng)度k;
(3.3)令i=1;
(3.4)判斷i是否大于k,是則執(zhí)行步驟(3.7),否則執(zhí)行步驟(3.5);
(3.5)讀入循環(huán)次數(shù)和跳躍位的值;
(3.6)拼接該控制字對(duì)應(yīng)的密碼分組;跳轉(zhuǎn)步驟(3.4);
(3.7)拼接最終的密碼分組;
(3.8)結(jié)束。
另外,所述運(yùn)算控制字分為三個(gè)部分,由2個(gè)bit的跳躍位、4個(gè)bit的循環(huán)次數(shù)和2個(gè)字節(jié)的運(yùn)算規(guī)則組成。
另外,所述運(yùn)算規(guī)則控制著明文與密碼之間的運(yùn)算規(guī)則,運(yùn)算規(guī)則包括異或運(yùn)算、取反異或運(yùn)算、偶位異或運(yùn)算、奇位異或運(yùn)算。
另外,所述循環(huán)次數(shù)控制著該密碼字在一個(gè)密碼分組中被使用的次數(shù),該字段的取值范圍是0~7,代表著該密碼字被使用次數(shù)為1~8次。
另外,所述跳躍位控制分組的長(zhǎng)度的改變,跳躍位控制著該密碼字段在第幾個(gè)分組時(shí)僅被使用一次,跳躍位的取值范圍是0~7,分包對(duì)應(yīng)著第0~7個(gè)分組。
本領(lǐng)域普通技術(shù)人員可以理解,實(shí)現(xiàn)上述實(shí)施例方法中的全部或部分步驟是可以通過(guò)程序來(lái)指令相關(guān)的硬件來(lái)完成,所述的程序可以存儲(chǔ)于一計(jì)算機(jī)可讀取存儲(chǔ)介質(zhì)中,該程序在執(zhí)行時(shí),包括上述實(shí)施例方法的各步驟,而所述的存儲(chǔ)介質(zhì)可以是:ROM/RAM、磁碟、光盤、存儲(chǔ)卡等。因此,與本發(fā)明的方法相對(duì)應(yīng)的,本發(fā)明還同時(shí)包括一種流媒體信息安全保障系統(tǒng),該系統(tǒng)通常以與方法各步驟相對(duì)應(yīng)的功能模塊的形式表示。使用該方法的系統(tǒng)包括:
解析模塊,其配置來(lái)讀入密碼,并解析起始標(biāo)志、運(yùn)算控制字與密碼,如果解析出錯(cuò),則退出并給出報(bào)錯(cuò)信息;如果解析正確,則執(zhí)行對(duì)齊模塊;
對(duì)齊模塊,其配置來(lái)根據(jù)起始標(biāo)志的解析值去對(duì)齊運(yùn)算控制字與密碼;編組計(jì)算模塊,其配置來(lái)對(duì)每個(gè)控制運(yùn)算字控制的密碼進(jìn)行編組計(jì)算,并形成最終的密碼分組;
分組模塊,其配置來(lái)按照每個(gè)密碼分組的長(zhǎng)度,對(duì)待加密的明文進(jìn)行分組,形成分組集;
加密計(jì)算模塊,其配置來(lái)按照運(yùn)算控制字的運(yùn)算規(guī)則字段指定的加密運(yùn)算法則,用相應(yīng)的密碼對(duì)待加密的明文進(jìn)行加密計(jì)算,并最終生成密文。
本申請(qǐng)?zhí)岚傅脑敿?xì)描述如下:
密碼組成結(jié)構(gòu)
一個(gè)完整的密碼由控制位和密碼位組成。
如圖1所示,控制位由一個(gè)字節(jié)的起始標(biāo)志和多個(gè)字節(jié)(與密碼位數(shù)相同)的運(yùn)算控制字組成。起始標(biāo)志用于控制運(yùn)算控制字與密碼位的對(duì)應(yīng)關(guān)系;運(yùn)算控制字控制密碼位的運(yùn)算法則。密碼位是用來(lái)進(jìn)行加密運(yùn)算的秘鑰。
1)起始標(biāo)志
起始標(biāo)志的長(zhǎng)度為一個(gè)字節(jié),它位于一個(gè)完整密碼的首字節(jié)。
起始標(biāo)志用于“運(yùn)算控制字”與“密碼”之間的對(duì)應(yīng)關(guān)系。
起始標(biāo)志的取值按照二進(jìn)制規(guī)則,它的8個(gè)bit位功能如下:
圖2中,其中:
●版本標(biāo)志:為加密算法的版本標(biāo)識(shí),目前恒為00;
●移位方式:標(biāo)識(shí)運(yùn)算控制字與密碼位之間的計(jì)算方法,可取值00、01、10、11,分別的含義如下:
√00:循環(huán)右移;
√01:循環(huán)左移;
√10:求余;
√11:不移動(dòng)。
●值:運(yùn)算控制字與密碼位之間的對(duì)應(yīng)關(guān)系的值,其取值范圍是:0~15。為了后面描述方便,假設(shè)該值為m。
具體移位運(yùn)算規(guī)則如下:
●循環(huán)右移:
將“運(yùn)算控制字”以字節(jié)為單位進(jìn)行循環(huán)右移,移動(dòng)m次。
移位之后的結(jié)果如圖3。
因此,運(yùn)算控制字與密碼之間的對(duì)應(yīng)關(guān)系就是:
√運(yùn)算控制字|MOD(n+1-m,n+1)|與密碼0對(duì)應(yīng);
√運(yùn)算控制字|MOD(n+2-m,n+1)|與密碼1對(duì)應(yīng);
√…………
√運(yùn)算控制字|MOD(n-1-m,n+1)|與密碼n-1對(duì)應(yīng);
√運(yùn)算控制字|MOD(n-m,n+1)|與密碼n對(duì)應(yīng)。
●循環(huán)左移:
循環(huán)左移與循環(huán)右移相類似,只是移位的方向不同,如圖5。
●求余:
求余運(yùn)算是將m值與密碼長(zhǎng)度位數(shù)進(jìn)行求余運(yùn)算,并將運(yùn)算結(jié)果設(shè)置為運(yùn)算控制字與密碼之間的對(duì)應(yīng)關(guān)系。即:運(yùn)算控制字與密碼之間的對(duì)應(yīng)關(guān)系就是:
√運(yùn)算控制字|MOD(m,n+1)|與密碼0對(duì)應(yīng);
√運(yùn)算控制字|MOD(m+1,n+1)|與密碼1對(duì)應(yīng);
√………………
√運(yùn)算控制字|MOD(m+n-1,n+1)|與密碼n-1對(duì)應(yīng);
√運(yùn)算控制字|MOD(m+n,n+1)|與密碼n對(duì)應(yīng)。
●不移動(dòng):
不移動(dòng)指的是運(yùn)算控制字與密碼之間的對(duì)應(yīng)關(guān)系是:
√運(yùn)算控制字0與密碼0對(duì)應(yīng);
√運(yùn)算控制字1與密碼1對(duì)應(yīng);
√……
√運(yùn)算控制字n與密碼n對(duì)應(yīng)。
2)運(yùn)算控制字
每個(gè)運(yùn)算控制字都分為三個(gè)部分,由2個(gè)bit的跳躍位、4個(gè)bit的循環(huán)次數(shù)和2個(gè)字節(jié)的運(yùn)算規(guī)則組成。如圖6。其中:
●運(yùn)算規(guī)則控制著明文與密碼之間的運(yùn)算規(guī)則;
●循環(huán)次數(shù)控制著該密碼在一個(gè)分組中的使用次數(shù);
●跳躍位控制分組的長(zhǎng)度。
3)運(yùn)算規(guī)則
運(yùn)算規(guī)則指的是運(yùn)算控制字與密碼之間的運(yùn)算關(guān)系,有如下四種運(yùn)算關(guān)系:
√00:異或運(yùn)算
√01:取反異或運(yùn)算
√10:偶位異或運(yùn)算
√11:奇位異或運(yùn)算
4)循環(huán)次數(shù)
循環(huán)次數(shù)控制著該密碼字在一個(gè)密碼分組中被使用的次數(shù)。該字段的取值范圍是0~7,代表著該密碼字被使用次數(shù)為1~8次。為了后面描述方便,該字段的值被記做i。
例如:該字段的值為010(十進(jìn)制的2),表示該密碼字被使用次數(shù)為3。
5)跳躍位
為了實(shí)現(xiàn)變長(zhǎng)度分組的數(shù)據(jù)加密,引入跳躍位的概念。
跳躍位控制分組的長(zhǎng)度的改變,跳躍位控制著該密碼字段在第幾個(gè)分組時(shí)僅被使用一次。
因?yàn)樘S位只有3個(gè)bit,因此最多只能實(shí)現(xiàn)8個(gè)變長(zhǎng)分組。跳躍位的取值范圍是0~7,分包對(duì)應(yīng)著第0~7個(gè)分組。
6)運(yùn)算控制字舉例
為了便于準(zhǔn)確理解運(yùn)算控制字的含義,舉例如下:
●一個(gè)運(yùn)算控制字,為:011,00,100,假設(shè)其對(duì)應(yīng)的密碼為a1。
則對(duì)應(yīng)的八個(gè)分組分別為:a1a1a1a1a1;a1a1a1a1a1;a1a1a1a1a1;a1;a1a1a1a1a1;a1a1a1a1a1;a1a1a1a1a1;a1a1a1a1a1。(重寫文字代表跳躍位的控制作用)
●二個(gè)運(yùn)算控制字,為:011,00,100;001,00,010,假設(shè)其對(duì)應(yīng)的密碼為a1和a2。
則對(duì)應(yīng)的八個(gè)分組分別為:a1a1a1a1a1a2a2a2;a1a1a1a1a1a2a2a2;a1a1a1a1a1a2;a1a2a2a2;a1a1a1a1a1a2a2a2;a1a1a1a1a1a2a2a2;a1a1a1a1a1a2a2a2;a1a1a1a1a1a2a2a2。(重寫文字代表跳躍位的控制作用)
7)加密算法
第一步:讀入密碼,并解析起始標(biāo)志、運(yùn)算控制字與密碼,如果解析出錯(cuò),則退出加密過(guò)程,并給出報(bào)錯(cuò)信息;如果解析正確,則進(jìn)行第二步的計(jì)算。如圖7。
第二步:對(duì)齊運(yùn)算控制字與密碼。解析起始標(biāo)志,并根據(jù)它的值去對(duì)齊運(yùn)算控制字與密碼。如圖8。
第三步:密碼編組。對(duì)每個(gè)控制運(yùn)算字進(jìn)行解析,并對(duì)其控制的密碼字進(jìn)行編組計(jì)算,并形成最終的密碼分組。如圖9。
第四步:對(duì)待加密的明文進(jìn)行分組。按照每個(gè)密碼分組的長(zhǎng)度,對(duì)明文進(jìn)行分組,形成分組集。
第五步:按照“運(yùn)算控制字”的“運(yùn)算規(guī)則”字段指定的加密運(yùn)算法則,用相應(yīng)的密碼對(duì)明文進(jìn)行加密計(jì)算,并最終生成密文。
8)解密算法
解密算法是加密過(guò)程的逆過(guò)程,其算法和處理過(guò)程是相同的。只是在加密過(guò)程中是對(duì)明文進(jìn)行處理,并生成密文;在解密過(guò)程中,是對(duì)密文進(jìn)行處理,并生成明文。因此在此不再對(duì)解密過(guò)程做詳細(xì)說(shuō)明。
9)其他
本算法是一種對(duì)稱加密算法,因此只有一個(gè)密鑰,對(duì)密鑰的保管、存儲(chǔ)、分發(fā)等過(guò)程,采用與當(dāng)前其他對(duì)稱加密一樣的方法。
對(duì)密鑰的這些保管、存儲(chǔ)、分發(fā)等過(guò)程不在該專利申請(qǐng)的范圍內(nèi)。
本發(fā)明的關(guān)鍵點(diǎn)和要保護(hù)的思想如下:
1)變長(zhǎng)密碼本模式Variable Length Code Book(VLCB)的思想;
2)在密碼中融入控制位,控制位控制加密算法的分塊策略和運(yùn)算邏輯的思想;
3)明文和密文之間的計(jì)算邏輯也是可變的,并且由密碼本身控制的思想;
4)本發(fā)明提出的加密計(jì)算算法。
本發(fā)明的優(yōu)點(diǎn)在于:
1)與相同計(jì)算量的加密算法相比,加密強(qiáng)度非常高;
2)與相同加密強(qiáng)度的加密算法相比,該算法簡(jiǎn)單,計(jì)算開(kāi)銷非常?。?/p>
本發(fā)明的積極效果在于:
1)對(duì)經(jīng)典的對(duì)稱加密方法的加密模式做了擴(kuò)展,豐富了這個(gè)領(lǐng)域的實(shí)踐方法;
2)首次提出將控制位融入密碼中,控制位控制加密算法的分塊策略和運(yùn)算邏輯,從而大大提高了加密強(qiáng)度,擴(kuò)展了之前對(duì)密碼作為純粹“密鑰”的認(rèn)識(shí);
3)該加密算法可以廣泛應(yīng)用用于嵌入式的小型和微型化的音視頻采集終端和播放終端,使得這類設(shè)備的音視頻信息安全程度大大提高。
以上所述,僅是本發(fā)明的較佳實(shí)施例,并非對(duì)本發(fā)明作任何形式上的限制,凡是依據(jù)本發(fā)明的技術(shù)實(shí)質(zhì)對(duì)以上實(shí)施例所作的任何簡(jiǎn)單修改、等同變化與修飾,均仍屬本發(fā)明技術(shù)方案的保護(hù)范圍。