本申請涉及(ji)(ji)計算(suan)機(ji)技(ji)術領(ling)域(yu),具(ju)體涉及(ji)(ji)互(hu)聯網技(ji)術領(ling)域(yu),尤(you)其(qi)涉及(ji)(ji)數(shu)據傳輸與接(jie)收方(fang)法及(ji)(ji)傳輸與接(jie)收裝置。
背景技術:
隨著互(hu)聯網(wang)的(de)(de)快速發展(zhan),數(shu)據(ju)(ju)傳輸(shu)量也越(yue)來越(yue)大(da),同時對(dui)于數(shu)據(ju)(ju)傳輸(shu)的(de)(de)速率和(he)安全(quan)性的(de)(de)要求(qiu)也越(yue)來越(yue)高。針對(dui)安全(quan)性問(wen)題,主(zhu)要采用(yong)對(dui)數(shu)據(ju)(ju)進(jin)行(xing)加(jia)密來解決。目前,對(dui)數(shu)據(ju)(ju)進(jin)行(xing)加(jia)密大(da)都采用(yong)全(quan)報(bao)文(wen)加(jia)密。然而,由于全(quan)報(bao)文(wen)加(jia)密對(dui)全(quan)部(bu)報(bao)文(wen)都要進(jin)行(xing)加(jia)密和(he)解密,因此(ci)導致傳輸(shu)端和(he)接收端的(de)(de)cpu(centralprocessingunit,中央(yang)處理器(qi))占用(yong)率較高。
技術實現要素:
本(ben)申請的目的在于提出一(yi)種改進(jin)的數據傳輸(shu)方法和數據傳輸(shu)裝置(zhi),來解決(jue)以上背景(jing)技術部(bu)分提到的技術問(wen)題。
第一(yi)方(fang)面,本申請(qing)提供了(le)一(yi)種數(shu)(shu)據(ju)傳輸(shu)方(fang)法,所(suo)述方(fang)法包括(kuo):獲取待傳輸(shu)的數(shu)(shu)據(ju);隨機(ji)生成(cheng)加(jia)(jia)密(mi)(mi)長(chang)(chang)度,其(qi)中,所(suo)述加(jia)(jia)密(mi)(mi)長(chang)(chang)度是小于(yu)等于(yu)所(suo)述數(shu)(shu)據(ju)的長(chang)(chang)度的整數(shu)(shu);將所(suo)述數(shu)(shu)據(ju)從預定位(wei)置開始(shi)加(jia)(jia)密(mi)(mi)直到加(jia)(jia)密(mi)(mi)的長(chang)(chang)度達到所(suo)述加(jia)(jia)密(mi)(mi)長(chang)(chang)度以(yi)生成(cheng)加(jia)(jia)密(mi)(mi)后的數(shu)(shu)據(ju);生成(cheng)包括(kuo)所(suo)述加(jia)(jia)密(mi)(mi)長(chang)(chang)度的報(bao)文頭(tou)信息;將所(suo)述報(bao)文頭(tou)信息和所(suo)述加(jia)(jia)密(mi)(mi)后的數(shu)(shu)據(ju)組成(cheng)完整報(bao)文進行傳輸(shu)。
在一些實施(shi)例中,所(suo)述(shu)將(jiang)(jiang)所(suo)述(shu)數(shu)(shu)據(ju)(ju)從(cong)預(yu)定位(wei)置開始加(jia)密(mi)直(zhi)到(dao)(dao)加(jia)密(mi)的(de)長度達到(dao)(dao)所(suo)述(shu)加(jia)密(mi)長度以生(sheng)成(cheng)(cheng)加(jia)密(mi)后的(de)數(shu)(shu)據(ju)(ju),包括:生(sheng)成(cheng)(cheng)密(mi)鑰;使用所(suo)生(sheng)成(cheng)(cheng)的(de)密(mi)鑰將(jiang)(jiang)所(suo)述(shu)數(shu)(shu)據(ju)(ju)從(cong)預(yu)定位(wei)置開始加(jia)密(mi)直(zhi)到(dao)(dao)加(jia)密(mi)的(de)長度達到(dao)(dao)所(suo)述(shu)加(jia)密(mi)長度以生(sheng)成(cheng)(cheng)加(jia)密(mi)后的(de)數(shu)(shu)據(ju)(ju)。
在(zai)一些實施例中,所(suo)(suo)述(shu)生成密(mi)(mi)(mi)鑰(yao)(yao)(yao),包括:隨機(ji)選(xuan)取(qu)用于(yu)預置(zhi)(zhi)候(hou)(hou)選(xuan) 密(mi)(mi)(mi)鑰(yao)(yao)(yao)集合(he)(he)的候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)索引,其中,所(suo)(suo)述(shu)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)索引是用于(yu)指(zhi)示(shi)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)在(zai)所(suo)(suo)述(shu)預置(zhi)(zhi)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)集合(he)(he)中所(suo)(suo)在(zai)位置(zhi)(zhi)的數據;按照所(suo)(suo)述(shu)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)索引所(suo)(suo)指(zhi)示(shi)的位置(zhi)(zhi)在(zai)所(suo)(suo)述(shu)預置(zhi)(zhi)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)集合(he)(he)中選(xuan)取(qu)候(hou)(hou)選(xuan)密(mi)(mi)(mi)鑰(yao)(yao)(yao)作為第一密(mi)(mi)(mi)鑰(yao)(yao)(yao);生成第二密(mi)(mi)(mi)鑰(yao)(yao)(yao);將所(suo)(suo)述(shu)第一密(mi)(mi)(mi)鑰(yao)(yao)(yao)和所(suo)(suo)述(shu)第二密(mi)(mi)(mi)鑰(yao)(yao)(yao)做異或運算生成密(mi)(mi)(mi)鑰(yao)(yao)(yao)。
在一些實施(shi)例(li)中,所(suo)述(shu)使用所(suo)生成(cheng)(cheng)的(de)(de)密(mi)(mi)(mi)鑰將所(suo)述(shu)數(shu)據(ju)從(cong)預定(ding)位置開(kai)始加(jia)(jia)(jia)密(mi)(mi)(mi)直(zhi)(zhi)到加(jia)(jia)(jia)密(mi)(mi)(mi)的(de)(de)長(chang)度(du)達到所(suo)述(shu)加(jia)(jia)(jia)密(mi)(mi)(mi)長(chang)度(du)以生成(cheng)(cheng)加(jia)(jia)(jia)密(mi)(mi)(mi)后的(de)(de)數(shu)據(ju),包括:從(cong)預定(ding)位置開(kai)始將所(suo)述(shu)數(shu)據(ju)與(yu)所(suo)生成(cheng)(cheng)的(de)(de)密(mi)(mi)(mi)鑰做異(yi)或運(yun)算(suan)進(jin)行加(jia)(jia)(jia)密(mi)(mi)(mi)直(zhi)(zhi)到加(jia)(jia)(jia)密(mi)(mi)(mi)的(de)(de)長(chang)度(du)達到所(suo)述(shu)加(jia)(jia)(jia)密(mi)(mi)(mi)長(chang)度(du)以生成(cheng)(cheng)加(jia)(jia)(jia)密(mi)(mi)(mi)后的(de)(de)數(shu)據(ju)。
在一(yi)些實(shi)施例(li)中,所(suo)(suo)述(shu)(shu)生(sheng)成包(bao)(bao)括(kuo)所(suo)(suo)述(shu)(shu)加密(mi)(mi)(mi)長度(du)(du)的(de)報文(wen)頭(tou)信(xin)息,包(bao)(bao)括(kuo):對所(suo)(suo)述(shu)(shu)候選密(mi)(mi)(mi)鑰(yao)索引、所(suo)(suo)述(shu)(shu)第(di)二(er)密(mi)(mi)(mi)鑰(yao)和(he)所(suo)(suo)述(shu)(shu)加密(mi)(mi)(mi)長度(du)(du)計算校驗和(he)作為校驗碼;生(sheng)成包(bao)(bao)括(kuo)所(suo)(suo)述(shu)(shu)候選密(mi)(mi)(mi)鑰(yao)索引、所(suo)(suo)述(shu)(shu)第(di)二(er)密(mi)(mi)(mi)鑰(yao)、所(suo)(suo)述(shu)(shu)加密(mi)(mi)(mi)長度(du)(du)和(he)所(suo)(suo)述(shu)(shu)校驗碼的(de)報文(wen)頭(tou)信(xin)息。
第二方(fang)面(mian),本申請提(ti)供(gong)了一種數據(ju)(ju)(ju)接收方(fang)法(fa),所(suo)(suo)述(shu)(shu)方(fang)法(fa)包(bao)括:獲取接收到的(de)(de)數據(ju)(ju)(ju);讀取所(suo)(suo)述(shu)(shu)數據(ju)(ju)(ju)中的(de)(de)報文頭信息(xi),提(ti)取解(jie)密(mi)長度,其中所(suo)(suo)述(shu)(shu)解(jie)密(mi)長度是小于等于所(suo)(suo)述(shu)(shu)數據(ju)(ju)(ju)的(de)(de)長度的(de)(de)整數;將所(suo)(suo)述(shu)(shu)數據(ju)(ju)(ju)從(cong)預(yu)定位置(zhi)開始解(jie)密(mi)直到解(jie)密(mi)的(de)(de)長度達到所(suo)(suo)述(shu)(shu)解(jie)密(mi)長度以生成解(jie)密(mi)后的(de)(de)數據(ju)(ju)(ju)。
在一(yi)(yi)些實施例中,所(suo)(suo)述(shu)將所(suo)(suo)述(shu)數據(ju)(ju)從(cong)預定位置(zhi)開(kai)始(shi)(shi)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)直到(dao)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)的長(chang)(chang)度達(da)(da)到(dao)所(suo)(suo)述(shu)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)長(chang)(chang)度以生成(cheng)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)后的數據(ju)(ju),包(bao)括:讀取所(suo)(suo)述(shu)報文頭信息,提取候選(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)索(suo)引和(he)第(di)(di)二密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao);按照所(suo)(suo)述(shu)候選(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)索(suo)引所(suo)(suo)指示的位置(zhi)在預置(zhi)候選(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)集合中選(xuan)取候選(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)作為第(di)(di)一(yi)(yi)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao);將所(suo)(suo)述(shu)第(di)(di)一(yi)(yi)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)和(he)所(suo)(suo)述(shu)第(di)(di)二密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)做異(yi)或(huo)(huo)運算生成(cheng)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)。從(cong)預定位置(zhi)開(kai)始(shi)(shi)將所(suo)(suo)述(shu)數據(ju)(ju)與(yu)所(suo)(suo)生成(cheng)的密(mi)(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)做異(yi)或(huo)(huo)運算進(jin)行(xing)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)直到(dao)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)的長(chang)(chang)度達(da)(da)到(dao)所(suo)(suo)述(shu)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)長(chang)(chang)度以生成(cheng)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)(mi)(mi)后的數據(ju)(ju)。
第三方面(mian),本申(shen)請提供了一種數據傳(chuan)(chuan)輸(shu)裝置(zhi),所(suo)述(shu)裝置(zhi)包(bao)(bao)括(kuo)(kuo):第一獲取(qu)單(dan)元(yuan)(yuan),配置(zhi)用(yong)(yong)于(yu)獲取(qu)待傳(chuan)(chuan)輸(shu)的(de)(de)(de)數據;加(jia)(jia)(jia)(jia)密(mi)長(chang)度(du)(du)生成(cheng)單(dan)元(yuan)(yuan),配置(zhi)用(yong)(yong)于(yu)隨機(ji)生成(cheng)加(jia)(jia)(jia)(jia)密(mi)長(chang)度(du)(du),其中,所(suo)述(shu)加(jia)(jia)(jia)(jia)密(mi)長(chang)度(du)(du)是(shi)小于(yu)等(deng)于(yu)所(suo)述(shu)數據的(de)(de)(de)長(chang)度(du)(du)的(de)(de)(de)整數;加(jia)(jia)(jia)(jia)密(mi)單(dan)元(yuan)(yuan),配置(zhi)用(yong)(yong)于(yu)將(jiang)所(suo)述(shu)數據從預定位置(zhi)開(kai)始加(jia)(jia)(jia)(jia)密(mi)直(zhi)到加(jia)(jia)(jia)(jia)密(mi)的(de)(de)(de)長(chang)度(du)(du)達(da)到所(suo)述(shu)加(jia)(jia)(jia)(jia)密(mi)長(chang)度(du)(du)以(yi)生成(cheng)加(jia)(jia)(jia)(jia)密(mi)后的(de)(de)(de)數據;報(bao)文頭信(xin)息(xi)生 成(cheng)單(dan)元(yuan)(yuan),配置(zhi)用(yong)(yong)于(yu)生成(cheng)包(bao)(bao)括(kuo)(kuo)所(suo)述(shu)加(jia)(jia)(jia)(jia)密(mi)長(chang)度(du)(du)的(de)(de)(de)報(bao)文頭信(xin)息(xi);傳(chuan)(chuan)輸(shu)單(dan)元(yuan)(yuan),配置(zhi)用(yong)(yong)于(yu)將(jiang)所(suo)述(shu)報(bao)文頭信(xin)息(xi)和所(suo)述(shu)加(jia)(jia)(jia)(jia)密(mi)后的(de)(de)(de)數據組成(cheng)完(wan)整報(bao)文進行傳(chuan)(chuan)輸(shu)。
在一些實施例中,所(suo)述加(jia)(jia)(jia)密單(dan)元包括:密鑰(yao)生成(cheng)模(mo)塊,配置用(yong)于生成(cheng)密鑰(yao);加(jia)(jia)(jia)密模(mo)塊,配置用(yong)于使(shi)用(yong)所(suo)生成(cheng)的(de)密鑰(yao)將所(suo)述數據從預定位置開始加(jia)(jia)(jia)密直(zhi)到(dao)加(jia)(jia)(jia)密的(de)長度(du)達到(dao)所(suo)述加(jia)(jia)(jia)密長度(du)以(yi)生成(cheng)加(jia)(jia)(jia)密后(hou)的(de)數據。
在一(yi)些(xie)實施例中(zhong),所(suo)(suo)(suo)述(shu)(shu)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)生成模塊,包括:候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)索引(yin)選(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)模塊,配置(zhi)(zhi)用(yong)于(yu)隨機選(xuan)(xuan)(xuan)(xuan)取(qu)用(yong)于(yu)預(yu)(yu)(yu)置(zhi)(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)集合(he)的(de)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)索引(yin),其中(zhong),所(suo)(suo)(suo)述(shu)(shu)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)索引(yin)是(shi)用(yong)于(yu)指示候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)在所(suo)(suo)(suo)述(shu)(shu)預(yu)(yu)(yu)置(zhi)(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)集合(he)中(zhong)所(suo)(suo)(suo)在位置(zhi)(zhi)的(de)數(shu)據(ju);第(di)一(yi)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)選(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)模塊,配置(zhi)(zhi)用(yong)于(yu)按照所(suo)(suo)(suo)述(shu)(shu)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)索引(yin)所(suo)(suo)(suo)指示的(de)位置(zhi)(zhi)在所(suo)(suo)(suo)述(shu)(shu)預(yu)(yu)(yu)置(zhi)(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)集合(he)中(zhong)選(xuan)(xuan)(xuan)(xuan)取(qu)候(hou)選(xuan)(xuan)(xuan)(xuan)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)作為第(di)一(yi)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao);第(di)二密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)生成子(zi)(zi)模塊,配置(zhi)(zhi)用(yong)于(yu)生成第(di)二密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao);密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)生成子(zi)(zi)模塊,配置(zhi)(zhi)用(yong)于(yu)將所(suo)(suo)(suo)述(shu)(shu)第(di)一(yi)密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)和(he)所(suo)(suo)(suo)述(shu)(shu)第(di)二密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)做異或運(yun)算生成密(mi)(mi)(mi)(mi)(mi)(mi)鑰(yao)。
在一(yi)些實施例中,所述加(jia)密模塊進一(yi)步(bu)配置用于(yu):從預定(ding)位置開始將所述數據與所生(sheng)成的密鑰做異或運(yun)算進行(xing)加(jia)密直(zhi)到(dao)加(jia)密的長度(du)達到(dao)所述加(jia)密長度(du)以(yi)生(sheng)成加(jia)密后的數據。
在(zai)一(yi)些(xie)實施(shi)例中,所述(shu)(shu)報(bao)文(wen)頭信息(xi)生(sheng)成(cheng)單(dan)元包括:校驗(yan)碼(ma)生(sheng)成(cheng)模塊,配置用于對(dui)所述(shu)(shu)候(hou)選密鑰索引、所述(shu)(shu)第二密鑰和所述(shu)(shu)加密長度(du)計算校驗(yan)和作為校驗(yan)碼(ma);報(bao)文(wen)頭信息(xi)生(sheng)成(cheng)模塊,配置用于生(sheng)成(cheng)包括所述(shu)(shu)候(hou)選密鑰索引、所述(shu)(shu)第二密鑰、所述(shu)(shu)加密長度(du)和所述(shu)(shu)校驗(yan)碼(ma)的報(bao)文(wen)頭信息(xi)。
第(di)(di)四方面,本申請提供了一種數(shu)(shu)(shu)據(ju)接(jie)收裝(zhuang)置(zhi)(zhi)(zhi)(zhi),所(suo)(suo)述(shu)裝(zhuang)置(zhi)(zhi)(zhi)(zhi)包括(kuo):第(di)(di)二獲(huo)取(qu)(qu)單(dan)(dan)元,配(pei)置(zhi)(zhi)(zhi)(zhi)用于(yu)(yu)獲(huo)取(qu)(qu)接(jie)收到(dao)的(de)數(shu)(shu)(shu)據(ju);解(jie)(jie)(jie)密(mi)(mi)長度提取(qu)(qu)單(dan)(dan)元,配(pei)置(zhi)(zhi)(zhi)(zhi)用于(yu)(yu)讀取(qu)(qu)所(suo)(suo)述(shu)數(shu)(shu)(shu)據(ju)中的(de)報文頭信息,提取(qu)(qu)解(jie)(jie)(jie)密(mi)(mi)長度,其中所(suo)(suo)述(shu)解(jie)(jie)(jie)密(mi)(mi)長度是小于(yu)(yu)等于(yu)(yu)所(suo)(suo)述(shu)數(shu)(shu)(shu)據(ju)的(de)長度的(de)整數(shu)(shu)(shu);解(jie)(jie)(jie)密(mi)(mi)單(dan)(dan)元,配(pei)置(zhi)(zhi)(zhi)(zhi)用于(yu)(yu)將所(suo)(suo)述(shu)數(shu)(shu)(shu)據(ju)從預定位置(zhi)(zhi)(zhi)(zhi)開(kai)始解(jie)(jie)(jie)密(mi)(mi)直到(dao)解(jie)(jie)(jie)密(mi)(mi)的(de)長度達(da)到(dao)所(suo)(suo)述(shu)解(jie)(jie)(jie)密(mi)(mi)長度以生成(cheng)解(jie)(jie)(jie)密(mi)(mi)后的(de)數(shu)(shu)(shu)據(ju)。
在一些(xie)實施例中,所(suo)(suo)(suo)(suo)述(shu)(shu)解(jie)(jie)密(mi)(mi)(mi)單元包括:提取模(mo)塊,配(pei)置用于(yu)讀取 所(suo)(suo)(suo)(suo)述(shu)(shu)報文頭信息(xi),提取候選密(mi)(mi)(mi)鑰索(suo)引(yin)和第二(er)密(mi)(mi)(mi)鑰;選取模(mo)塊,配(pei)置用于(yu)按照(zhao)所(suo)(suo)(suo)(suo)述(shu)(shu)候選密(mi)(mi)(mi)鑰索(suo)引(yin)所(suo)(suo)(suo)(suo)指示的(de)位置在預置候選密(mi)(mi)(mi)鑰集(ji)合中選取候選密(mi)(mi)(mi)鑰作為第一密(mi)(mi)(mi)鑰;解(jie)(jie)密(mi)(mi)(mi)密(mi)(mi)(mi)鑰生(sheng)成模(mo)塊,配(pei)置用于(yu)將所(suo)(suo)(suo)(suo)述(shu)(shu)第一密(mi)(mi)(mi)鑰和所(suo)(suo)(suo)(suo)述(shu)(shu)第二(er)密(mi)(mi)(mi)鑰做異或運算(suan)生(sheng)成密(mi)(mi)(mi)鑰;解(jie)(jie)密(mi)(mi)(mi)模(mo)塊,配(pei)置用于(yu)從(cong)預定位置開始將所(suo)(suo)(suo)(suo)述(shu)(shu)數據與所(suo)(suo)(suo)(suo)生(sheng)成的(de)密(mi)(mi)(mi)鑰做異或運算(suan)進行解(jie)(jie)密(mi)(mi)(mi)直到(dao)解(jie)(jie)密(mi)(mi)(mi)的(de)長度(du)達到(dao)所(suo)(suo)(suo)(suo)述(shu)(shu)解(jie)(jie)密(mi)(mi)(mi)長度(du)以生(sheng)成解(jie)(jie)密(mi)(mi)(mi)后的(de)數據。
本(ben)申(shen)請(qing)提(ti)供(gong)的(de)(de)數(shu)據(ju)傳(chuan)(chuan)輸(shu)方法(fa)和裝(zhuang)置,通(tong)過隨機生成(cheng)小(xiao)于(yu)等(deng)于(yu)待(dai)傳(chuan)(chuan)輸(shu)數(shu)據(ju)的(de)(de)長(chang)(chang)度(du)(du)(du)(du)的(de)(de)加(jia)(jia)密長(chang)(chang)度(du)(du)(du)(du),對(dui)(dui)待(dai)傳(chuan)(chuan)輸(shu)數(shu)據(ju)從(cong)預定位置開始加(jia)(jia)密,直到加(jia)(jia)密的(de)(de)長(chang)(chang)度(du)(du)(du)(du)達到加(jia)(jia)密長(chang)(chang)度(du)(du)(du)(du),而(er)不是對(dui)(dui)全報文(wen)加(jia)(jia)密,減(jian)少了(le)加(jia)(jia)密運(yun)(yun)算(suan)。從(cong)而(er)減(jian)少了(le)傳(chuan)(chuan)輸(shu)端(duan)(duan)的(de)(de)cpu負(fu)荷(he),降低了(le)傳(chuan)(chuan)輸(shu)端(duan)(duan)的(de)(de)cpu占用率。同時,本(ben)申(shen)請(qing)提(ti)供(gong)的(de)(de)數(shu)據(ju)接(jie)收(shou)方法(fa)和裝(zhuang)置,通(tong)過讀取報文(wen)頭信息(xi)中(zhong)的(de)(de)小(xiao)于(yu)等(deng)于(yu)接(jie)收(shou)到的(de)(de)數(shu)據(ju)的(de)(de)長(chang)(chang)度(du)(du)(du)(du)的(de)(de)解(jie)密長(chang)(chang)度(du)(du)(du)(du),對(dui)(dui)接(jie)收(shou)到的(de)(de)數(shu)據(ju)從(cong)預定位置開始解(jie)密,直到解(jie)密的(de)(de)長(chang)(chang)度(du)(du)(du)(du)達到解(jie)密長(chang)(chang)度(du)(du)(du)(du),而(er)不是對(dui)(dui)全報文(wen)解(jie)密,減(jian)少了(le)解(jie)密運(yun)(yun)算(suan)。從(cong)而(er)減(jian)少了(le)接(jie)收(shou)端(duan)(duan)的(de)(de)cpu負(fu)荷(he),降低了(le)接(jie)收(shou)端(duan)(duan)的(de)(de)cpu占用率。
附圖說明
通過閱(yue)讀參照以下附圖(tu)所作(zuo)的(de)對非限制性實施例所作(zuo)的(de)詳細描述,本申請(qing)的(de)其它(ta)特征、目的(de)和(he)優點將會變得更(geng)明顯:
圖(tu)1是本申請可以應用于其(qi)中的示例(li)性系(xi)統架構圖(tu);
圖2是(shi)根據本申請的(de)數據傳(chuan)輸方法的(de)一(yi)個實施例的(de)流程(cheng)圖;
圖3是根據本(ben)申(shen)請(qing)的數據傳輸方(fang)法(fa)的一個應用場景的示意圖;
圖4是(shi)根據(ju)本申請的數據(ju)傳輸(shu)方法的又一個實施(shi)例的流程圖;
圖5是根(gen)據本申(shen)請的數據接(jie)收方(fang)法(fa)的一(yi)個實施例的流程圖;
圖6是根據本申請的數據傳輸裝置的一個實施例的結構(gou)示意(yi)圖;
圖(tu)7是根(gen)據本申請的(de)數據接收裝置的(de)一個實施(shi)例的(de)結構示意(yi)圖(tu);
圖(tu)8是適于用來實(shi)現本(ben)申請實(shi)施例的(de)對等設備的(de)計(ji)算機系統的(de)結(jie)構(gou)示意圖(tu)。
具體實施方式
下(xia)面結合附圖和(he)實施例(li)對本申請(qing)作進一(yi)步的(de)(de)詳細說(shuo)明(ming)。可以(yi)理解(jie)的(de)(de)是(shi),此處所描述(shu)的(de)(de)具體實施例(li)僅(jin)僅(jin)用(yong)于(yu)解(jie)釋相關(guan)發(fa)明(ming),而非對該發(fa)明(ming)的(de)(de)限定。另(ling)外還(huan)需要說(shuo)明(ming)的(de)(de)是(shi),為了便于(yu)描述(shu),附圖中僅(jin)示(shi)出了與有關(guan)發(fa)明(ming)相關(guan)的(de)(de)部分。
需(xu)要說明的是,在不沖突的情(qing)況下,本申(shen)請中的實施例及實施例中的特征(zheng)可(ke)以(yi)相互組(zu)合。下面將參考附圖(tu)并(bing)結(jie)合實施例來詳細說明本申(shen)請。
圖1示(shi)出了可(ke)以應用(yong)本申(shen)請的數據(ju)傳輸(shu)方法(fa)或數據(ju)傳輸(shu)裝置、數據(ju)接(jie)收方法(fa)或數據(ju)接(jie)收裝置的實施例(li)的示(shi)例(li)性系(xi)統架構100。
如圖1所示,系統架構100可(ke)以(yi)(yi)包(bao)括(kuo)對(dui)等(deng)設(she)備101、102和網(wang)絡103。網(wang)絡103用以(yi)(yi)在對(dui)等(deng)設(she)備101和102之(zhi)間(jian)提供通信(xin)鏈路的(de)介(jie)質。網(wang)絡103可(ke)以(yi)(yi)包(bao)括(kuo)各種連接類型,例如有線、無線通信(xin)鏈路或者光纖電纜等(deng)等(deng)。
對(dui)等設備(bei)101和(he)102既(ji)能(neng)充(chong)當(dang)網絡服務(wu)的(de)請(qing)求者,又對(dui)其它對(dui)等設備(bei)的(de)請(qing)求作出響應,提供(gong)資(zi)源(yuan)和(he)服務(wu)。通常這些(xie)資(zi)源(yuan)和(he)服務(wu)包括:信息的(de)共(gong)享和(he)交換、計(ji)算資(zi)源(yuan)(如cpu)的(de)共(gong)享、存儲(如緩(huan)存和(he)磁盤空間)的(de)共(gong)享等。
對(dui)等設(she)備101、102可以(yi)是(shi)包含有處(chu)理器的各種電子(zi)設(she)備,包括但不限于膝(xi)上型(xing)便(bian)攜計算(suan)機和臺式計算(suan)機等等。
需要說明的是,本申(shen)請實(shi)施例(li)所(suo)提供的數據(ju)傳輸和/或數據(ju)接收方法可以(yi)由對(dui)等(deng)設(she)(she)備101或102中任意一個執行,相應(ying)地,數據(ju)傳輸和/或數據(ju)接收裝(zhuang)置可以(yi)設(she)(she)置于對(dui)等(deng)設(she)(she)備101或102中。
應該(gai)理解,圖1中的對等設(she)備和網絡(luo)數(shu)目僅僅是示意(yi)性(xing)的。根據實現需要,可以具有任(ren)意(yi)數(shu)目的對等設(she)備和網絡(luo)。
繼續參考圖2,其示出(chu)了根據(ju)本申請的(de)數(shu)據(ju)傳輸方法的(de)一個(ge)實施(shi)例的(de)流程(cheng)200。所(suo)述的(de)數(shu)據(ju)傳輸方法,包括以下步驟:
步驟201,獲取待傳輸的數據。
在本實施例(li)中(zhong)(zhong),用(yong)戶使用(yong)對(dui)(dui)等設(she)(she)備(bei)(作(zuo)為(wei)(wei)數(shu)據請(qing)求(qiu)方,例(li)如(ru)圖1中(zhong)(zhong)所(suo)示(shi)的對(dui)(dui)等設(she)(she)備(bei)101)上安裝的應用(yong)程(cheng)序向對(dui)(dui)該應用(yong)程(cheng)序進行內(nei)容 支持的對(dui)(dui)等設(she)(she)備(bei)(作(zuo)為(wei)(wei)數(shu)據提(ti)(ti)供(gong)方,例(li)如(ru)圖1中(zhong)(zhong)所(suo)示(shi)的對(dui)(dui)等設(she)(she)備(bei)102)發出數(shu)據傳輸的請(qing)求(qiu),之后對(dui)(dui)該應用(yong)程(cheng)序進行內(nei)容支持的對(dui)(dui)等設(she)(she)備(bei)(作(zuo)為(wei)(wei)數(shu)據提(ti)(ti)供(gong)方,例(li)如(ru)圖1中(zhong)(zhong)所(suo)示(shi)的對(dui)(dui)等設(she)(she)備(bei)102)響應于上述請(qing)求(qiu),獲取該應用(yong)程(cheng)序所(suo)請(qing)求(qiu)的數(shu)據。
在本(ben)實施(shi)例中,數據(ju)傳(chuan)輸方(fang)法運(yun)行于其(qi)上(shang)的(de)(de)(de)對等(deng)設備(bei)(作為數據(ju)提供方(fang),例如圖1所示的(de)(de)(de)對等(deng)設備(bei)102)可以從本(ben)地或者遠程地獲取待(dai)傳(chuan)輸的(de)(de)(de)數據(ju)。其(qi)中,上(shang)述遠程地獲取待(dai)傳(chuan)輸的(de)(de)(de)數據(ju)可以通過有線連接方(fang)式或者無線連接方(fang)式獲取待(dai)傳(chuan)輸的(de)(de)(de)數據(ju)。
步(bu)驟202,隨機(ji)生成加密(mi)長(chang)度。
在本實施例中,作(zuo)為數據(ju)提供方的(de)上述對等(deng)設備(例如圖1中所(suo)示的(de)對等(deng)設備102)可(ke)以首(shou)先獲取步驟201中所(suo)獲取的(de)待(dai)傳(chuan)輸(shu)的(de)數據(ju)的(de)長(chang)度(du),然后隨(sui)機生成(cheng)小于(yu)等(deng)于(yu)數據(ju)的(de)長(chang)度(du)的(de)整數作(zuo)為加密(mi)長(chang)度(du),用于(yu)后續(xu)加密(mi)過(guo)程使用。
作為示例,隨機生(sheng)成(cheng)加(jia)密長度的方法(fa)可以采用線性同(tong)余法(fa)。上述(shu)線性同(tong)余法(fa)生(sheng)成(cheng)隨機數的方法(fa)是目前(qian)廣泛(fan)研究和應用的公知技(ji)術(shu),在此(ci)不再贅述(shu)。
在本(ben)實(shi)施例(li)的(de)(de)一些可選(xuan)的(de)(de)實(shi)現方式中,數(shu)據的(de)(de)長度(du)(du)可以是數(shu)據的(de)(de)二進制表示中的(de)(de)比(bi)(bi)特(te)(bit)數(shu)目(mu),相應的(de)(de)加密(mi)長度(du)(du)也是對應的(de)(de)比(bi)(bi)特(te)數(shu)目(mu)。例(li)如8個比(bi)(bi)特(te)的(de)(de)數(shu)據的(de)(de)長度(du)(du)是8,相應的(de)(de)加密(mi)長度(du)(du)是隨機(ji)生成的(de)(de)小于等于8的(de)(de)整數(shu)。
在(zai)本實(shi)(shi)施例的(de)(de)(de)一(yi)些(xie)可(ke)選的(de)(de)(de)實(shi)(shi)現方式中,數(shu)(shu)據(ju)的(de)(de)(de)長(chang)度(du)還可(ke)以是存儲(chu)數(shu)(shu)據(ju)所占據(ju)的(de)(de)(de)空間字(zi)節(byte)數(shu)(shu)目,相應(ying)的(de)(de)(de)加(jia)密長(chang)度(du)也是對應(ying)的(de)(de)(de)字(zi)節數(shu)(shu)目。例如10個字(zi)節的(de)(de)(de)數(shu)(shu)據(ju)的(de)(de)(de)長(chang)度(du)是10,相應(ying)的(de)(de)(de)加(jia)密長(chang)度(du)是隨機(ji)生成的(de)(de)(de)小于(yu)(yu)等于(yu)(yu)10的(de)(de)(de)整數(shu)(shu)。
步驟203,將數據(ju)從預定位置開始(shi)加密直到加密的長度達到加密長度以生(sheng)成(cheng)加密后的數據(ju)。
在本實施例中,預定位(wei)(wei)置(zhi)(zhi)(zhi)可(ke)以是默認設置(zhi)(zhi)(zhi)的(de),例如(ru)(ru)都(dou)是從待傳輸(shu)數據的(de)第17位(wei)(wei)或者第二(er)個字節開始加(jia)密。預定位(wei)(wei)置(zhi)(zhi)(zhi)也可(ke)以是用戶(hu)設置(zhi)(zhi)(zhi)的(de),例如(ru)(ru)提供用戶(hu)設置(zhi)(zhi)(zhi)的(de)界面,讓用戶(hu)設置(zhi)(zhi)(zhi)加(jia)密的(de)起始位(wei)(wei)置(zhi)(zhi)(zhi)。
在本實施(shi)例(li)中(zhong)(zhong),每次加(jia)密數據的長(chang)度單位與步(bu)驟202中(zhong)(zhong)生成(cheng)的加(jia) 密長(chang)度對應的單位是(shi)(shi)一致的,例(li)如都是(shi)(shi)以(yi)比特為(wei)單位或(huo)者(zhe)都是(shi)(shi)以(yi)字節為(wei)單位。
在本(ben)實施例中,作為數據(ju)提供方的(de)(de)上述對等設備可以將數據(ju)從(cong)預定位置開始(shi)加密(mi)直到(dao)加密(mi)的(de)(de)長度(du)達(da)到(dao)步驟202中生成的(de)(de)加密(mi)長度(du),從(cong)而得(de)到(dao)加密(mi)后的(de)(de)數據(ju)供后續傳輸(shu)使用。
步驟204,生成包括(kuo)加密長度的報文(wen)頭(tou)信(xin)息。
在(zai)本實施例中,作為(wei)數據提供(gong)方的上述對(dui)等設備可(ke)以生成包括加密長(chang)度的報文(wen)頭信息供(gong)后(hou)續(xu)傳輸(shu)使用。
在(zai)本實施(shi)例的一些(xie)可(ke)選的實現方式中,報(bao)文頭信(xin)(xin)息(xi)還可(ke)以包括(kuo)上述步驟(zou)203中的預定位置信(xin)(xin)息(xi)。
步驟205,將(jiang)報(bao)文(wen)頭信息和加(jia)密(mi)后的(de)數據組成完整報(bao)文(wen)進行傳輸。
在(zai)本實施例(li)中,作為數據(ju)提(ti)供方的(de)上述對(dui)等設備(bei)可以將步驟204中生成的(de)報文(wen)頭信息和(he)步驟203中加密處理后的(de)數據(ju)組合(he)成完整報文(wen)按時序傳輸給發出數據(ju)請求的(de)其他對(dui)等設備(bei)。
本申(shen)請的(de)(de)上(shang)述實施例提(ti)供的(de)(de)方法通(tong)過(guo)隨(sui)機生(sheng)成(cheng)小于等于待(dai)傳(chuan)輸(shu)數(shu)據長(chang)度的(de)(de)加(jia)密(mi)長(chang)度,對待(dai)傳(chuan)輸(shu)數(shu)據從預定位(wei)置開(kai)始(shi)加(jia)密(mi),直到(dao)加(jia)密(mi)的(de)(de)長(chang)度達(da)到(dao)加(jia)密(mi)長(chang)度,而(er)不是(shi)對全(quan)報文(wen)加(jia)密(mi),減(jian)少(shao)了加(jia)密(mi)運算(suan),從而(er)減(jian)少(shao)了數(shu)據提(ti)供方的(de)(de)cpu負荷,降低了cpu占用率。
繼(ji)續參見圖(tu)3,圖(tu)3是(shi)根據本實施例的(de)(de)(de)(de)(de)數(shu)據傳輸方(fang)法的(de)(de)(de)(de)(de)應(ying)(ying)用(yong)場景的(de)(de)(de)(de)(de)一個示意圖(tu)。在(zai)圖(tu)3的(de)(de)(de)(de)(de)應(ying)(ying)用(yong)場景中,首先用(yong)戶(hu)啟用(yong)對(dui)(dui)等(deng)設(she)備(bei)(bei)上安(an)裝(zhuang)的(de)(de)(de)(de)(de)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong);然(ran)后(hou)用(yong)戶(hu)發起了(le)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)搜索和在(zai)線收(shou)看視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)的(de)(de)(de)(de)(de)請(qing)求(如圖(tu)中圖(tu)標301所(suo)示);之后(hou)該(gai)(gai)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong)向(xiang)對(dui)(dui)該(gai)(gai)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong)進行內(nei)容支(zhi)持的(de)(de)(de)(de)(de)對(dui)(dui)等(deng)設(she)備(bei)(bei)發出視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)數(shu)據傳輸的(de)(de)(de)(de)(de)請(qing)求;接(jie)著對(dui)(dui)該(gai)(gai)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong)進行內(nei)容支(zhi)持的(de)(de)(de)(de)(de)對(dui)(dui)等(deng)設(she)備(bei)(bei)響應(ying)(ying)于上述請(qing)求,將與該(gai)(gai)請(qing)求對(dui)(dui)應(ying)(ying)的(de)(de)(de)(de)(de)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)數(shu)據進行部分加(jia)密后(hou)傳輸給用(yong)戶(hu)所(suo)使(shi)用(yong)的(de)(de)(de)(de)(de)對(dui)(dui)等(deng)設(she)備(bei)(bei)上的(de)(de)(de)(de)(de)該(gai)(gai)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong);最(zui)后(hou)用(yong)戶(hu)所(suo)使(shi)用(yong)的(de)(de)(de)(de)(de)對(dui)(dui)等(deng)設(she)備(bei)(bei)上的(de)(de)(de)(de)(de)該(gai)(gai)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)類應(ying)(ying)用(yong)在(zai)如圖(tu)中圖(tu)標302所(suo)示的(de)(de)(de)(de)(de)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)窗口播放接(jie)收(shou)到的(de)(de)(de)(de)(de)視(shi)(shi)頻(pin)(pin)(pin)(pin)(pin)。
本申請(qing)的(de)上述實施例提供的(de)方法通過對對待(dai)傳(chuan)輸的(de)數據(ju)進行部分加密,降低(di)了數據(ju)傳(chuan)輸端(duan)的(de)cpu占(zhan)用率。
進一(yi)步(bu)參考圖(tu)4,其示出(chu)了數(shu)據傳(chuan)輸方法(fa)的又一(yi)個實施例的流程400。該數(shu)據傳(chuan)輸方法(fa)的流程400,包括以下步(bu)驟:
步驟401,獲取(qu)待傳(chuan)輸的數據(ju)。
在本實施例中,數(shu)(shu)據(ju)(ju)(ju)傳輸(shu)方(fang)法運行于其(qi)上的(de)(de)對等設備(作為數(shu)(shu)據(ju)(ju)(ju)提供方(fang),例如圖1所示的(de)(de)對等設備102)可(ke)以從本地或者遠(yuan)(yuan)程地獲(huo)(huo)(huo)取(qu)(qu)待(dai)傳輸(shu)的(de)(de)數(shu)(shu)據(ju)(ju)(ju)。其(qi)中,上述遠(yuan)(yuan)程地獲(huo)(huo)(huo)取(qu)(qu)待(dai)傳輸(shu)的(de)(de)數(shu)(shu)據(ju)(ju)(ju)可(ke)以通過有線連接方(fang)式(shi)或者無線連接方(fang)式(shi)獲(huo)(huo)(huo)取(qu)(qu)待(dai)傳輸(shu)的(de)(de)數(shu)(shu)據(ju)(ju)(ju)。
步驟(zou)402,隨(sui)機(ji)生(sheng)成(cheng)加密長度。
在(zai)本(ben)實施(shi)例中,作(zuo)為數據(ju)(ju)提(ti)供方的(de)上述對等設備可以首先獲取步(bu)驟401中所獲取的(de)待傳輸的(de)數據(ju)(ju)的(de)長(chang)(chang)度,然后隨機生成(cheng)小(xiao)于等于數據(ju)(ju)的(de)長(chang)(chang)度的(de)整數作(zuo)為加(jia)密長(chang)(chang)度,用于后續加(jia)密過程(cheng)使用。
步驟(zou)403,隨機選取用于預置(zhi)候(hou)(hou)選密鑰集合的候(hou)(hou)選密鑰索引。
在(zai)本實施例中,預置候選(xuan)密(mi)(mi)鑰(yao)(yao)集合(he)可以是預先存儲在(zai)作為數據提供(gong)方的上(shang)述(shu)對等設(she)備上(shang)的由候選(xuan)密(mi)(mi)鑰(yao)(yao)組成(cheng)的集合(he),并且預置候選(xuan)密(mi)(mi)鑰(yao)(yao)集合(he)內的候選(xuan)密(mi)(mi)鑰(yao)(yao)之(zhi)間按照(zhao)一定順(shun)序排列。
在(zai)(zai)本實施例中(zhong),候選密鑰(yao)(yao)索引是用于(yu)指示候選密鑰(yao)(yao)在(zai)(zai)預置(zhi)候選密鑰(yao)(yao)集合中(zhong)所在(zai)(zai)位(wei)置(zhi)的數(shu)據。
在本實施例中,作(zuo)為數據提供方的(de)上述對(dui)等設備可以首先(xian)獲取預(yu)置(zhi)候(hou)(hou)選密鑰集合(he),然后隨機選取用于(yu)預(yu)置(zhi)候(hou)(hou)選密鑰集合(he)的(de)候(hou)(hou)選密鑰索引。
作為示(shi)例,預置候(hou)選(xuan)(xuan)密(mi)鑰(yao)(yao)集(ji)(ji)合(he)可(ke)以是(shi)(shi)256*256的(de)(de)二(er)維數(shu)組(zu),其(qi)中(zhong)每一個元(yuan)(yuan)素(su)都(dou)是(shi)(shi)2個字節(jie)(即16個比(bi)特)的(de)(de)整數(shu),取(qu)值范圍為0-65535,而對(dui)應(ying)的(de)(de)候(hou)選(xuan)(xuan)密(mi)鑰(yao)(yao)索引(yin)可(ke)以是(shi)(shi)用來指(zhi)示(shi)數(shu)組(zu)中(zhong)元(yuan)(yuan)素(su)所在(zai)的(de)(de)行(xing)(xing)和列的(de)(de)下標數(shu)據(i,j),其(qi)中(zhong),i用來指(zhi)示(shi)數(shu)組(zu)中(zhong)元(yuan)(yuan)素(su)所在(zai)的(de)(de)行(xing)(xing)數(shu),j用來指(zhi)示(shi)數(shu)組(zu)中(zhong)元(yuan)(yuan)素(su)所在(zai)的(de)(de)列數(shu)。i和j都(dou)是(shi)(shi)取(qu)值范圍在(zai)0-255之間的(de)(de)1個字節(jie)(即8個比(bi)特)的(de)(de)整數(shu)。預置候(hou)選(xuan)(xuan)密(mi)鑰(yao)(yao)集(ji)(ji)合(he)對(dui)應(ying)的(de)(de)行(xing)(xing)數(shu)從0到(dao)255,對(dui)應(ying)的(de)(de)列數(shu)從0到(dao)255。例如(ru)第4行(xing)(xing)第5列的(de)(de)候(hou)選(xuan)(xuan)密(mi)鑰(yao)(yao)索引(yin)是(shi)(shi)(4,5)。
作為示(shi)例,隨機選(xuan)取(qu)用(yong)于預置候(hou)選(xuan)密(mi)鑰集(ji)合的(de)(de)候(hou)選(xuan)密(mi)鑰索(suo)引的(de)(de)算法可以(yi)采用(yong)線性同余(yu)法。上述線性同余(yu)法是目(mu)前廣泛研究(jiu)和(he)應用(yong)的(de)(de)公知技術,在此不再(zai)贅(zhui)述。
步(bu)驟404,按(an)照候(hou)選(xuan)密鑰(yao)索(suo)引所指示的位置在預(yu)置候(hou)選(xuan)密鑰(yao)集合中選(xuan)取候(hou)選(xuan)密鑰(yao)作為第一密鑰(yao)。
在本(ben)實施例中(zhong)(zhong),作(zuo)為數(shu)據提(ti)供(gong)方的上述對(dui)等(deng)設備(bei)可(ke)以按照步驟403中(zhong)(zhong)所(suo)生成的候(hou)選(xuan)(xuan)密鑰(yao)索(suo)引所(suo)指示的位置在其(qi)上預(yu)先(xian)存儲的預(yu)置候(hou)選(xuan)(xuan)密鑰(yao)集合(he)中(zhong)(zhong)選(xuan)(xuan)取候(hou)選(xuan)(xuan)密鑰(yao)作(zuo)為第一密鑰(yao)。例如(ru),針對(dui)步驟403中(zhong)(zhong)所(suo)示預(yu)置候(hou)選(xuan)(xuan)密鑰(yao)集合(he)的256*256的二維(wei)數(shu)組(zu),按照候(hou)選(xuan)(xuan)密鑰(yao)索(suo)引(4,5)選(xuan)(xuan)取對(dui)應的第一密鑰(yao)為“128”。
步驟405,生成第二(er)密(mi)鑰。
在本實施例中,作為數據提供方的上述(shu)對(dui)等設備(bei)可(ke)以生成(cheng)第二密鑰用于后續生成(cheng)密鑰使用。
在本實施(shi)例的(de)(de)一些可(ke)選的(de)(de)實現方(fang)式(shi)中,作(zuo)為(wei)數(shu)據提供方(fang)的(de)(de)上(shang)(shang)述(shu)對等設備可(ke)以(yi)隨機生(sheng)成第二密鑰(yao),作(zuo)為(wei)示例,隨機生(sheng)成第二密鑰(yao)的(de)(de)算法(fa)(fa)可(ke)以(yi)采用(yong)線性同余法(fa)(fa)。上(shang)(shang)述(shu)線性同余法(fa)(fa)是目前廣泛研究和應(ying)用(yong)的(de)(de)公知技術,在此不再(zai)贅(zhui)述(shu)。
在(zai)本(ben)實施例的(de)一些可選(xuan)的(de)實現方(fang)式中(zhong),作(zuo)為(wei)數(shu)據提(ti)供方(fang)的(de)上述(shu)對等設備還可以在(zai)其上預(yu)先存儲的(de)預(yu)置候(hou)選(xuan)密(mi)鑰集合中(zhong)隨(sui)機選(xuan)取候(hou)選(xuan)密(mi)鑰作(zuo)為(wei)第二密(mi)鑰。例如,針對步驟403中(zhong)所示預(yu)置候(hou)選(xuan)密(mi)鑰集合的(de)256*256的(de)二維數(shu)組(zu),隨(sui)機選(xuan)取候(hou)選(xuan)密(mi)鑰“64”作(zuo)為(wei)第二密(mi)鑰。
步驟406,將第(di)(di)一密(mi)鑰(yao)和第(di)(di)二密(mi)鑰(yao)做異(yi)或運(yun)算生成密(mi)鑰(yao)。
在本實(shi)施(shi)例中(zhong),作為數據提(ti)供方(fang)的上(shang)述對等(deng)設備可以將步(bu)(bu)驟404中(zhong)取得的第(di)一密鑰(yao)(yao)和步(bu)(bu)驟405中(zhong)生成(cheng)的第(di)二密鑰(yao)(yao)做異或運算生成(cheng)密鑰(yao)(yao),生成(cheng)的密鑰(yao)(yao)用于后(hou)續加密步(bu)(bu)驟使用。
作(zuo)為示例,將第一密鑰(yao)“128”和第二密鑰(yao)“64”做異(yi)或(huo)運算(suan)。其中,“128”的兩(liang)字(zi)節二進制表(biao)示是:“0000000010000000”,而“64”的兩(liang)字(zi)節二進制表(biao)示是:“0000000001000000”,二者按位進行異(yi)或(huo)運算(suan)得到“0000000011000000”,“0000000011000000”就是密鑰(yao)。
步驟407,使用所生成(cheng)的密(mi)鑰將數據從(cong)預(yu)定(ding)位置開始加(jia)密(mi)直(zhi)到加(jia)密(mi)的長度達(da)到加(jia)密(mi)長度以生成(cheng)加(jia)密(mi)后的數據。
在本實(shi)施例(li)(li)中,作為(wei)(wei)數據提供方(fang)的(de)(de)上述對等設備每次加密(mi)數據的(de)(de)長度單(dan)位(wei)(wei)與步驟402中生成的(de)(de)加密(mi)長度對應(ying)的(de)(de)單(dan)位(wei)(wei)是(shi)一致的(de)(de),例(li)(li)如都(dou) 是(shi)以比特(te)為(wei)(wei)單(dan)位(wei)(wei)或者(zhe)都(dou)是(shi)以字節為(wei)(wei)單(dan)位(wei)(wei)。
在本實(shi)施例的一些可選實(shi)現方式中,加(jia)(jia)(jia)密可以(yi)是從預(yu)(yu)定位置開始將數據(ju)與密鑰(yao)做異(yi)或(huo)運(yun)算進行(xing)加(jia)(jia)(jia)密,直到(dao)(dao)加(jia)(jia)(jia)密的長(chang)度(du)(du)達到(dao)(dao)加(jia)(jia)(jia)密長(chang)度(du)(du),加(jia)(jia)(jia)密完成后即得(de)到(dao)(dao)加(jia)(jia)(jia)密后的數據(ju)。例如步驟(zou)406中的密鑰(yao)“0000000011000000”是兩個(ge)(ge)字(zi)節(jie)(16位),則加(jia)(jia)(jia)密過程為從預(yu)(yu)定位置開始每次(ci)取兩個(ge)(ge)字(zi)節(jie)數據(ju)與密鑰(yao)“0000000011000000”做異(yi)或(huo)運(yun)算進行(xing)加(jia)(jia)(jia)密,直到(dao)(dao)加(jia)(jia)(jia)密的長(chang)度(du)(du)達到(dao)(dao)加(jia)(jia)(jia)密長(chang)度(du)(du)。
步驟408,對(dui)候選(xuan)密鑰(yao)索引、第二密鑰(yao)和加(jia)密長(chang)度計(ji)算校(xiao)驗(yan)(yan)和作為校(xiao)驗(yan)(yan)碼。
在本實施中,由于(yu)二進(jin)制數據在存(cun)取、傳輸(shu)等環節(jie)可能會(hui)發(fa)生誤碼,例如從(cong)1變成0或從(cong)0變成1。因此(ci)作為數據提(ti)供方(fang)的上述(shu)對(dui)等設備可以對(dui)候(hou)選(xuan)密(mi)鑰索引、第二密(mi)鑰和加密(mi)長(chang)度計算校(xiao)驗和作為校(xiao)驗碼,用于(yu)后(hou)續傳輸(shu),確(que)保數據傳輸(shu)的正確(que)。上述(shu)校(xiao)驗和的計算方(fang)法是目前廣泛研究和應用的公知技術,在此(ci)不再贅述(shu)。
步(bu)驟(zou)409,生(sheng)成包括(kuo)候選密(mi)(mi)鑰(yao)索引、第二密(mi)(mi)鑰(yao)、加密(mi)(mi)長度和校驗碼的(de)報文頭信息。
在本實(shi)施例中,作為(wei)數據提供方的上述對等設備可以生(sheng)成包括上述候(hou)選(xuan)密鑰(yao)索(suo)引、上述第(di)二密鑰(yao)、上述加密長度和上述校驗碼的報文頭(tou)信息,用(yong)于后續傳輸使用(yong)。
在本實(shi)施(shi)例的一些可(ke)(ke)選的實(shi)現(xian)方式中,報文頭信(xin)息(xi)還可(ke)(ke)以(yi)包括上述步驟(zou)407中的預定位置信(xin)息(xi)。
步驟410,將報(bao)文(wen)頭信息和加(jia)密后的數據組(zu)成完整報(bao)文(wen)進(jin)行傳輸。
在本實施例中,作為數據(ju)提供方的上述對等設備可(ke)以將(jiang)步(bu)驟408中生(sheng)成的報(bao)文(wen)頭信(xin)息和(he)步(bu)驟407中加(jia)密處理后的數據(ju)組合成完(wan)整報(bao)文(wen)按(an)時(shi)序傳輸(shu)給(gei)發(fa)出數據(ju)請(qing)求(qiu)的其(qi)他對等設備。
從圖(tu)4中可以看出(chu),與圖(tu)2對應的(de)實施例相比(bi),本(ben)(ben)實施例中的(de)數據傳(chuan)輸方法的(de)流程400多出(chu)了(le)生成(cheng)(cheng)密鑰的(de)步驟403到步驟406、生成(cheng)(cheng)校(xiao)(xiao)驗碼的(de)步驟408,加密的(de)步驟407突出(chu)了(le)使用密鑰進行加密,以及(ji)生成(cheng)(cheng)報文頭(tou)信息的(de)步驟409突出(chu)了(le)將候選密鑰索引(yin)、第二密鑰和校(xiao)(xiao)驗碼添加到報文頭(tou)信息中。因此,本(ben)(ben)實施例描(miao)述的(de)方案能更有效的(de)提高 數據傳(chuan)輸的(de)安全性(xing)。
繼續(xu)參考圖(tu)5,其(qi)示(shi)出了根(gen)據(ju)本申請的數據(ju)接收方(fang)法(fa)的一個實施例的流程(cheng)500。所述的數據(ju)接收方(fang)法(fa),包括以下步驟:
步驟501,獲取接(jie)收到的(de)數據。
在(zai)本實(shi)施例(li)(li)中,用(yong)戶使用(yong)數(shu)據(ju)接(jie)(jie)收(shou)方(fang)(fang)(fang)法運(yun)行于其(qi)上(shang)(shang)的(de)對(dui)(dui)等設(she)備(bei)(作為(wei)(wei)數(shu)據(ju)請求(qiu)(qiu)方(fang)(fang)(fang),例(li)(li)如圖(tu)1中所示(shi)的(de)對(dui)(dui)等設(she)備(bei)101)上(shang)(shang)安裝(zhuang)的(de)應(ying)(ying)(ying)用(yong)程序向對(dui)(dui)該(gai)(gai)應(ying)(ying)(ying)用(yong)程序進(jin)行內(nei)容(rong)支(zhi)持(chi)(chi)的(de)對(dui)(dui)等設(she)備(bei)(作為(wei)(wei)數(shu)據(ju)提供(gong)方(fang)(fang)(fang),例(li)(li)如圖(tu)1中所示(shi)的(de)對(dui)(dui)等設(she)備(bei)102)發出數(shu)據(ju)傳(chuan)輸(shu)的(de)請求(qiu)(qiu),之后(hou)對(dui)(dui)該(gai)(gai)應(ying)(ying)(ying)用(yong)程序進(jin)行內(nei)容(rong)支(zhi)持(chi)(chi)的(de)對(dui)(dui)等設(she)備(bei)(作為(wei)(wei)數(shu)據(ju)提供(gong)方(fang)(fang)(fang),例(li)(li)如圖(tu)1中所示(shi)的(de)對(dui)(dui)等設(she)備(bei)102)響應(ying)(ying)(ying)于上(shang)(shang)述(shu)請求(qiu)(qiu),將該(gai)(gai)應(ying)(ying)(ying)用(yong)程序所請求(qiu)(qiu)的(de)數(shu)據(ju)傳(chuan)輸(shu)給數(shu)據(ju)接(jie)(jie)收(shou)方(fang)(fang)(fang)法運(yun)行于其(qi)上(shang)(shang)的(de)對(dui)(dui)等設(she)備(bei),作為(wei)(wei)數(shu)據(ju)接(jie)(jie)收(shou)方(fang)(fang)(fang)的(de)上(shang)(shang)述(shu)對(dui)(dui)等設(she)備(bei)獲取接(jie)(jie)收(shou)到的(de)上(shang)(shang)述(shu)數(shu)據(ju)。
步驟502,讀取(qu)數據中的報文頭信(xin)息(xi),提取(qu)解(jie)密長度。
在本實施(shi)例中,作為(wei)數據接(jie)收(shou)方的(de)(de)上(shang)述(shu)對等設備可(ke)以讀取上(shang)述(shu)步(bu)驟501中獲取的(de)(de)接(jie)收(shou)到的(de)(de)數據中的(de)(de)報文(wen)頭信息,并從中提取出(chu)解密長(chang)度(du)(du)。其中,解密長(chang)度(du)(du)是(shi)小于(yu)等于(yu)接(jie)收(shou)到的(de)(de)數據的(de)(de)長(chang)度(du)(du)的(de)(de)整數。
步驟(zou)503,將(jiang)數(shu)據從預定位置開始解(jie)密(mi)直到(dao)解(jie)密(mi)的長度(du)達(da)到(dao)解(jie)密(mi)長度(du)以生成(cheng)解(jie)密(mi)后的數(shu)據。
在本實施例中,作(zuo)為數據(ju)接收方的上述對等(deng)設備可以(yi)將上述步驟501中獲取的數據(ju)從預定位置(zhi)開始解(jie)密直(zhi)到解(jie)密的長(chang)度達到解(jie)密長(chang)度以(yi)生(sheng)成解(jie)密后的數據(ju)。
在(zai)本實施例的一些可(ke)(ke)選(xuan)的實現方式中(zhong),上(shang)述對(dui)等設備(bei)可(ke)(ke)以通過如下步驟解(jie)密(mi)(mi):首(shou)先(xian),讀取上(shang)述報文(wen)頭信(xin)息,提取候(hou)選(xuan)密(mi)(mi)鑰(yao)索引和(he)第二密(mi)(mi)鑰(yao);然后,按照上(shang)述候(hou)選(xuan)密(mi)(mi)鑰(yao)索引所(suo)指示(shi)的位置在(zai)預(yu)置候(hou)選(xuan)密(mi)(mi)鑰(yao)集(ji)合(he)中(zhong)選(xuan)取候(hou)選(xuan)密(mi)(mi)鑰(yao)作為(wei)第一密(mi)(mi)鑰(yao);接著,將上(shang)述第一密(mi)(mi)鑰(yao)和(he)上(shang)述第二密(mi)(mi)鑰(yao)做異(yi)或運(yun)算生(sheng)成密(mi)(mi)鑰(yao);最后,從預(yu)定位置開始將步驟501中(zhong)獲取的數據與所(suo)生(sheng)成的密(mi)(mi)鑰(yao)做異(yi)或運(yun)算進行解(jie)密(mi)(mi)直到(dao)解(jie)密(mi)(mi)的長(chang)度達到(dao)上(shang)述解(jie)密(mi)(mi)長(chang)度以生(sheng)成解(jie)密(mi)(mi)后的數據。
進一(yi)步參考圖(tu)6,作為對上(shang)述各圖(tu)所(suo)示(shi)方(fang)法的(de)(de)實(shi)現,本(ben)申請提供了一(yi)種(zhong)數據傳(chuan)輸裝置(zhi)的(de)(de)一(yi)個(ge)實(shi)施(shi)(shi)(shi)例,該裝置(zhi)實(shi)施(shi)(shi)(shi)例與圖(tu)2所(suo)示(shi)的(de)(de)方(fang)法實(shi)施(shi)(shi)(shi)例相(xiang)對應(ying),該裝置(zhi)具體可以(yi)應(ying)用于各種(zhong)電(dian)子設備中。
如圖(tu)6所(suo)示,本(ben)實施例所(suo)述(shu)的數據(ju)傳(chuan)(chuan)(chuan)輸裝(zhuang)置600包括(kuo):第(di)一(yi)獲取單(dan)(dan)(dan)元(yuan)601、加(jia)密(mi)長度(du)生(sheng)成(cheng)(cheng)單(dan)(dan)(dan)元(yuan)602、加(jia)密(mi)單(dan)(dan)(dan)元(yuan)603、報(bao)文(wen)頭信息(xi)(xi)生(sheng)成(cheng)(cheng)單(dan)(dan)(dan)元(yuan)604和(he)傳(chuan)(chuan)(chuan)輸單(dan)(dan)(dan)元(yuan)605。其(qi)中,第(di)一(yi)獲取單(dan)(dan)(dan)元(yuan)601,配(pei)(pei)(pei)(pei)置用(yong)(yong)(yong)于(yu)(yu)(yu)獲取待傳(chuan)(chuan)(chuan)輸的數據(ju);加(jia)密(mi)長度(du)生(sheng)成(cheng)(cheng)單(dan)(dan)(dan)元(yuan)602,配(pei)(pei)(pei)(pei)置用(yong)(yong)(yong)于(yu)(yu)(yu)隨機生(sheng)成(cheng)(cheng)加(jia)密(mi)長度(du),其(qi)中,上(shang)(shang)(shang)述(shu)加(jia)密(mi)長度(du)是小(xiao)于(yu)(yu)(yu)等于(yu)(yu)(yu)上(shang)(shang)(shang)述(shu)數據(ju)的長度(du)的整(zheng)數;加(jia)密(mi)單(dan)(dan)(dan)元(yuan)603,配(pei)(pei)(pei)(pei)置用(yong)(yong)(yong)于(yu)(yu)(yu)將上(shang)(shang)(shang)述(shu)數據(ju)從(cong)預定位(wei)置開始加(jia)密(mi)直到加(jia)密(mi)的長度(du)達到上(shang)(shang)(shang)述(shu)加(jia)密(mi)長度(du)以生(sheng)成(cheng)(cheng)加(jia)密(mi)后(hou)的數據(ju);報(bao)文(wen)頭信息(xi)(xi)生(sheng)成(cheng)(cheng)單(dan)(dan)(dan)元(yuan)604,配(pei)(pei)(pei)(pei)置用(yong)(yong)(yong)于(yu)(yu)(yu)生(sheng)成(cheng)(cheng)包括(kuo)上(shang)(shang)(shang)述(shu)加(jia)密(mi)長度(du)的報(bao)文(wen)頭信息(xi)(xi);傳(chuan)(chuan)(chuan)輸單(dan)(dan)(dan)元(yuan)605,配(pei)(pei)(pei)(pei)置用(yong)(yong)(yong)于(yu)(yu)(yu)將上(shang)(shang)(shang)述(shu)報(bao)文(wen)頭信息(xi)(xi)和(he)上(shang)(shang)(shang)述(shu)加(jia)密(mi)后(hou)的數據(ju)組成(cheng)(cheng)完(wan)整(zheng)報(bao)文(wen)進行傳(chuan)(chuan)(chuan)輸。
在本(ben)實施(shi)例中,數據(ju)傳(chuan)(chuan)輸裝置600中:第一獲(huo)取單(dan)元601、加(jia)密長(chang)度生成(cheng)單(dan)元602、加(jia)密單(dan)元603、報(bao)文(wen)頭信息生成(cheng)604和(he)傳(chuan)(chuan)輸單(dan)元605的具體處理(li)可參看圖(tu)2對應實施(shi)例中的步(bu)驟201、步(bu)驟202、步(bu)驟203、步(bu)驟204和(he)步(bu)驟205的實現方式的相關描述(shu),在此不再贅述(shu)。
在本實(shi)施(shi)(shi)例的(de)一些可(ke)選的(de)實(shi)現方式中,數據傳輸(shu)裝置(zhi)600的(de)加(jia)密單元603可(ke)以包括(kuo):密鑰(yao)(yao)生(sheng)(sheng)成(cheng)(cheng)(cheng)模(mo)塊(kuai)(圖(tu)中未(wei)(wei)示(shi)出(chu)),配置(zhi)用(yong)(yong)于生(sheng)(sheng)成(cheng)(cheng)(cheng)密鑰(yao)(yao);加(jia)密模(mo)塊(kuai)(圖(tu)中未(wei)(wei)示(shi)出(chu)),配置(zhi)用(yong)(yong)于使用(yong)(yong)所(suo)生(sheng)(sheng)成(cheng)(cheng)(cheng)的(de)密鑰(yao)(yao)將(jiang)上(shang)述(shu)數據從預定位(wei)置(zhi)開始加(jia)密直到(dao)加(jia)密的(de)長度(du)達到(dao)上(shang)述(shu)加(jia)密長度(du)以生(sheng)(sheng)成(cheng)(cheng)(cheng)加(jia)密后的(de)數據。密鑰(yao)(yao)生(sheng)(sheng)成(cheng)(cheng)(cheng)模(mo)塊(kuai)和(he)加(jia)密模(mo)塊(kuai)的(de)具體處理可(ke)參(can)看圖(tu)4對(dui)應實(shi)施(shi)(shi)例中的(de)步驟403至406和(he)步驟407的(de)實(shi)現方式的(de)相關描述(shu),在此不再(zai)贅述(shu)。
本實(shi)施(shi)例(li)的(de)一些可選(xuan)(xuan)(xuan)(xuan)(xuan)的(de)實(shi)現方(fang)式(shi)中(zhong)(zhong),上(shang)(shang)述(shu)(shu)(shu)加密單元603的(de)密鑰(yao)(yao)(yao)(yao)(yao)(yao)生成(cheng)模(mo)(mo)(mo)塊(kuai)可以包括:候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)索引(yin)選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)(圖(tu)中(zhong)(zhong)未示(shi)(shi)(shi)出(chu)),配置(zhi)用(yong)(yong)于(yu)隨(sui)機選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)用(yong)(yong)于(yu)預置(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)集(ji)合的(de)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)索引(yin),其(qi)中(zhong)(zhong),上(shang)(shang)述(shu)(shu)(shu)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)索引(yin)是用(yong)(yong)于(yu)指示(shi)(shi)(shi)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)在上(shang)(shang)述(shu)(shu)(shu)預置(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)集(ji)合中(zhong)(zhong)所(suo)(suo)在位置(zhi)的(de)數(shu)據;第(di)(di)(di)一密鑰(yao)(yao)(yao)(yao)(yao)(yao)選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)(圖(tu)中(zhong)(zhong)未示(shi)(shi)(shi)出(chu)),配置(zhi)用(yong)(yong)于(yu)按照(zhao)上(shang)(shang)述(shu)(shu)(shu)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)索引(yin)所(suo)(suo)指示(shi)(shi)(shi)的(de)位置(zhi)在上(shang)(shang)述(shu)(shu)(shu)預置(zhi)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)集(ji)合中(zhong)(zhong)選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)作為第(di)(di)(di)一密鑰(yao)(yao)(yao)(yao)(yao)(yao);第(di)(di)(di)二(er)密鑰(yao)(yao)(yao)(yao)(yao)(yao)生成(cheng)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)(圖(tu)中(zhong)(zhong)未示(shi)(shi)(shi)出(chu)),配置(zhi)用(yong)(yong)于(yu)生成(cheng)第(di)(di)(di)二(er)密鑰(yao)(yao)(yao)(yao)(yao)(yao);密鑰(yao)(yao)(yao)(yao)(yao)(yao)生成(cheng)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)(圖(tu)中(zhong)(zhong)未示(shi)(shi)(shi)出(chu)),配置(zhi)用(yong)(yong)于(yu)將上(shang)(shang)述(shu)(shu)(shu)第(di)(di)(di)一密鑰(yao)(yao)(yao)(yao)(yao)(yao)和上(shang)(shang)述(shu)(shu)(shu)第(di)(di)(di)二(er) 密鑰(yao)(yao)(yao)(yao)(yao)(yao)做異或(huo)運算生成(cheng)密鑰(yao)(yao)(yao)(yao)(yao)(yao)。其(qi)中(zhong)(zhong),候(hou)選(xuan)(xuan)(xuan)(xuan)(xuan)密鑰(yao)(yao)(yao)(yao)(yao)(yao)索引(yin)選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)、第(di)(di)(di)一密鑰(yao)(yao)(yao)(yao)(yao)(yao)選(xuan)(xuan)(xuan)(xuan)(xuan)取(qu)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)、第(di)(di)(di)二(er)密鑰(yao)(yao)(yao)(yao)(yao)(yao)生成(cheng)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)和密鑰(yao)(yao)(yao)(yao)(yao)(yao)生成(cheng)子(zi)(zi)(zi)模(mo)(mo)(mo)塊(kuai)的(de)具體處理可參考圖(tu)4實(shi)施(shi)例(li)中(zhong)(zhong)步(bu)驟(zou)403、步(bu)驟(zou)404、步(bu)驟(zou)405和步(bu)驟(zou)406的(de)實(shi)現方(fang)式(shi)的(de)相(xiang)關描述(shu)(shu)(shu),在此不再贅述(shu)(shu)(shu)。
在本實(shi)施例的一些(xie)可選的實(shi)現方(fang)式(shi)中,上(shang)述(shu)(shu)加密(mi)單元603的加密(mi)模(mo)塊可以(yi)進一步配置(zhi)用于:從預定位置(zhi)開始將上(shang)述(shu)(shu)數(shu)據與所生成的密(mi)鑰做(zuo)異或運算進行加密(mi)直到加密(mi)的長(chang)度(du)達到上(shang)述(shu)(shu)加密(mi)長(chang)度(du)以(yi)生成加密(mi)后的數(shu)據。加密(mi)模(mo)塊的具體(ti)處理可參(can)考(kao)圖4實(shi)施例中步驟407的實(shi)現方(fang)式(shi)的相(xiang)關描述(shu)(shu),在此不再贅述(shu)(shu)。
在(zai)本(ben)實(shi)施(shi)例(li)(li)的(de)(de)一些可選(xuan)的(de)(de)實(shi)現方式中(zhong)(zhong),上(shang)(shang)(shang)述報(bao)文(wen)頭(tou)信息生(sheng)成(cheng)單元604可以包括:校驗(yan)(yan)(yan)碼生(sheng)成(cheng)模塊(kuai)(圖(tu)中(zhong)(zhong)未示出),配(pei)置(zhi)用于對上(shang)(shang)(shang)述候選(xuan)密(mi)鑰索(suo)引(yin)、上(shang)(shang)(shang)述第(di)二密(mi)鑰和上(shang)(shang)(shang)述加密(mi)長(chang)度計算校驗(yan)(yan)(yan)和作為校驗(yan)(yan)(yan)碼;報(bao)文(wen)頭(tou)信息生(sheng)成(cheng)模塊(kuai)(圖(tu)中(zhong)(zhong)未示出),配(pei)置(zhi)用于生(sheng)成(cheng)包括上(shang)(shang)(shang)述候選(xuan)密(mi)鑰索(suo)引(yin)、上(shang)(shang)(shang)述第(di)二密(mi)鑰、上(shang)(shang)(shang)述加密(mi)長(chang)度和上(shang)(shang)(shang)述校驗(yan)(yan)(yan)碼的(de)(de)報(bao)文(wen)頭(tou)信息。其中(zhong)(zhong),校驗(yan)(yan)(yan)碼生(sheng)成(cheng)模塊(kuai)和報(bao)文(wen)頭(tou)信息生(sheng)成(cheng)模塊(kuai)的(de)(de)具體處理(li)可參考圖(tu)4實(shi)施(shi)例(li)(li)中(zhong)(zhong)的(de)(de)步驟408和步驟409的(de)(de)實(shi)現方式的(de)(de)相關描述,在(zai)此不再(zai)贅述。
下面參考圖(tu)7,作為對上述各(ge)(ge)圖(tu)所示方(fang)(fang)法的實(shi)現,本申請提供了一種數據接收裝(zhuang)置(zhi)的一個實(shi)施(shi)例,該(gai)裝(zhuang)置(zhi)實(shi)施(shi)例與圖(tu)5所示的方(fang)(fang)法實(shi)施(shi)例相對應(ying),該(gai)裝(zhuang)置(zhi)具體可以(yi)應(ying)用于各(ge)(ge)種電子設備中。
如圖7所(suo)示,本實施例所(suo)述(shu)的(de)(de)數(shu)據(ju)(ju)接收裝置(zhi)(zhi)(zhi)700包括:第二獲(huo)取(qu)單(dan)元(yuan)701、解(jie)(jie)(jie)密(mi)長(chang)度(du)提取(qu)單(dan)元(yuan)702和解(jie)(jie)(jie)密(mi)單(dan)元(yuan)703。其中,第二獲(huo)取(qu)單(dan)元(yuan)701,配(pei)置(zhi)(zhi)(zhi)用于(yu)獲(huo)取(qu)接收到(dao)的(de)(de)數(shu)據(ju)(ju);解(jie)(jie)(jie)密(mi)長(chang)度(du)提取(qu)單(dan)元(yuan)702,配(pei)置(zhi)(zhi)(zhi)用于(yu)讀取(qu)上述(shu)數(shu)據(ju)(ju)中的(de)(de)報文頭信(xin)息,提取(qu)解(jie)(jie)(jie)密(mi)長(chang)度(du),其中上述(shu)解(jie)(jie)(jie)密(mi)長(chang)度(du)是小(xiao)于(yu)等于(yu)上述(shu)數(shu)據(ju)(ju)的(de)(de)長(chang)度(du)的(de)(de)整數(shu);解(jie)(jie)(jie)密(mi)單(dan)元(yuan)703,配(pei)置(zhi)(zhi)(zhi)用于(yu)將(jiang)上述(shu)數(shu)據(ju)(ju)從預定位置(zhi)(zhi)(zhi)開始解(jie)(jie)(jie)密(mi)直到(dao)解(jie)(jie)(jie)密(mi)的(de)(de)長(chang)度(du)達到(dao)上述(shu)解(jie)(jie)(jie)密(mi)長(chang)度(du)以生成(cheng)解(jie)(jie)(jie)密(mi)后(hou)的(de)(de)數(shu)據(ju)(ju)。
在(zai)本(ben)實(shi)施例中(zhong)(zhong),數據接收裝置700中(zhong)(zhong):第二獲取單元701、解(jie)密長度提取單元702和解(jie)密單元703的(de)(de)具(ju)體處理可(ke)參(can)看圖5對應實(shi)施例中(zhong)(zhong)的(de)(de)步(bu)驟(zou)(zou)501、步(bu)驟(zou)(zou)502和步(bu)驟(zou)(zou)503的(de)(de)實(shi)現方式的(de)(de)相(xiang)關描述,在(zai)此不 再贅述。
在(zai)本實(shi)施例的(de)(de)一些可選(xuan)的(de)(de)實(shi)現方式中(zhong),數據(ju)(ju)接收裝(zhuang)置700的(de)(de)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)單元703可以包(bao)括(kuo):提取(qu)(qu)模(mo)(mo)塊(kuai)7031,配置用于(yu)讀取(qu)(qu)上(shang)述(shu)(shu)報文頭信息(xi),提取(qu)(qu)候(hou)選(xuan)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)索(suo)引和(he)第(di)二(er)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao);選(xuan)取(qu)(qu)模(mo)(mo)塊(kuai)7032,配置用于(yu)按(an)照上(shang)述(shu)(shu)候(hou)選(xuan)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)索(suo)引所指示(shi)的(de)(de)位置在(zai)預置候(hou)選(xuan)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)集合(he)中(zhong)選(xuan)取(qu)(qu)候(hou)選(xuan)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)作為(wei)第(di)一密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao);解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)生(sheng)成(cheng)模(mo)(mo)塊(kuai)7033,配置用于(yu)將上(shang)述(shu)(shu)第(di)一密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)和(he)上(shang)述(shu)(shu)第(di)二(er)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)做異或(huo)運算(suan)生(sheng)成(cheng)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao);解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)模(mo)(mo)塊(kuai)7034,配置用于(yu)從(cong)預定位置開始(shi)將上(shang)述(shu)(shu)數據(ju)(ju)與所生(sheng)成(cheng)的(de)(de)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)做異或(huo)運算(suan)進行解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)直到(dao)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)的(de)(de)長(chang)度達到(dao)上(shang)述(shu)(shu)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)長(chang)度以生(sheng)成(cheng)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)后的(de)(de)數據(ju)(ju)。提取(qu)(qu)模(mo)(mo)塊(kuai)7031、選(xuan)取(qu)(qu)模(mo)(mo)塊(kuai)7032、解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)密(mi)(mi)(mi)(mi)(mi)鑰(yao)(yao)(yao)(yao)(yao)(yao)生(sheng)成(cheng)模(mo)(mo)塊(kuai)7033和(he)解(jie)(jie)密(mi)(mi)(mi)(mi)(mi)模(mo)(mo)塊(kuai)7034的(de)(de)具(ju)體處理可參(can)看(kan)圖5對應實(shi)施例中(zhong)的(de)(de)步驟503的(de)(de)實(shi)現方式的(de)(de)相關描述(shu)(shu),在(zai)此(ci)不再贅(zhui)述(shu)(shu)。
下面參考(kao)圖(tu)8,其示出(chu)了適(shi)于(yu)用來實現本(ben)申請實施例的(de)對等(deng)設備(bei)的(de)計(ji)算機系統800的(de)結構示意圖(tu)。
如圖(tu)8所示(shi),計算(suan)機系統800包括中(zhong)(zhong)央處理單元(yuan)(cpu)801,其可以(yi)根據存(cun)(cun)儲在只讀存(cun)(cun)儲器(rom)802中(zhong)(zhong)的程(cheng)序或者(zhe)從存(cun)(cun)儲部分808加載(zai)到隨機訪(fang)問存(cun)(cun)儲器(ram)803中(zhong)(zhong)的程(cheng)序而執行各(ge)(ge)種適當的動作和(he)處理。在ram803中(zhong)(zhong),還存(cun)(cun)儲有系統800操作所需的各(ge)(ge)種程(cheng)序和(he)數(shu)據。cpu801、rom802以(yi)及ram803通過(guo)總(zong)線804彼此相(xiang)連(lian)。輸入/輸出(i/o)接(jie)口805也連(lian)接(jie)至總(zong)線804。
以(yi)(yi)下部(bu)(bu)件連(lian)接至i/o接口(kou)805:包括(kuo)(kuo)鍵盤(pan)、鼠標等的(de)(de)輸入部(bu)(bu)分(fen)806;包括(kuo)(kuo)諸如陰極射線管(crt)、液晶(jing)顯示器(qi)(lcd)等以(yi)(yi)及揚聲器(qi)等的(de)(de)輸出(chu)部(bu)(bu)分(fen)807;包括(kuo)(kuo)硬盤(pan)等的(de)(de)存儲(chu)部(bu)(bu)分(fen)808;以(yi)(yi)及包括(kuo)(kuo)諸如lan卡(ka)、調(diao)制解調(diao)器(qi)等的(de)(de)網(wang)絡接口(kou)卡(ka)的(de)(de)通(tong)信(xin)(xin)部(bu)(bu)分(fen)809。通(tong)信(xin)(xin)部(bu)(bu)分(fen)809經由諸如因特網(wang)的(de)(de)網(wang)絡執行通(tong)信(xin)(xin)處理。驅動(dong)器(qi)810也(ye)根(gen)據(ju)需要(yao)連(lian)接至i/o接口(kou)805。可拆(chai)卸介質811,諸如磁盤(pan)、光(guang)盤(pan)、磁光(guang)盤(pan)、半導體存儲(chu)器(qi)等等,根(gen)據(ju)需要(yao)安裝(zhuang)在驅動(dong)器(qi)810上,以(yi)(yi)便于從其上讀出(chu)的(de)(de)計算機(ji)程序根(gen)據(ju)需要(yao)被安裝(zhuang)入存儲(chu)部(bu)(bu)分(fen)808。
特別地,根據本公開的(de)(de)實施例,上(shang)(shang)文參考(kao)流程(cheng)(cheng)(cheng)(cheng)圖描述(shu)的(de)(de)過程(cheng)(cheng)(cheng)(cheng)可(ke)(ke)以被實現為計(ji)(ji)算機(ji)軟(ruan)件程(cheng)(cheng)(cheng)(cheng)序(xu)。例如,本公開的(de)(de)實施例包(bao)(bao)括(kuo)一種計(ji)(ji)算機(ji)程(cheng)(cheng)(cheng)(cheng) 序(xu)產品,其包(bao)(bao)括(kuo)有(you)形地包(bao)(bao)含在機(ji)器可(ke)(ke)讀介質上(shang)(shang)的(de)(de)計(ji)(ji)算機(ji)程(cheng)(cheng)(cheng)(cheng)序(xu),所述(shu)計(ji)(ji)算機(ji)程(cheng)(cheng)(cheng)(cheng)序(xu)包(bao)(bao)含用于執(zhi)行流程(cheng)(cheng)(cheng)(cheng)圖所示的(de)(de)方(fang)法的(de)(de)程(cheng)(cheng)(cheng)(cheng)序(xu)代碼(ma)。在這樣的(de)(de)實施例中(zhong),該計(ji)(ji)算機(ji)程(cheng)(cheng)(cheng)(cheng)序(xu)可(ke)(ke)以通過通信部分809從網絡上(shang)(shang)被下載和安裝(zhuang),和/或從可(ke)(ke)拆卸介質811被安裝(zhuang)。在該計(ji)(ji)算機(ji)程(cheng)(cheng)(cheng)(cheng)序(xu)被中(zhong)央處理單元(yuan)(cpu)801執(zhi)行時,執(zhi)行本申請的(de)(de)方(fang)法中(zhong)限定的(de)(de)上(shang)(shang)述(shu)功能。
附(fu)圖(tu)中(zhong)(zhong)的(de)(de)(de)(de)(de)(de)(de)流(liu)程圖(tu)和(he)框(kuang)圖(tu),圖(tu)示了按(an)照本申(shen)請各種實(shi)施例的(de)(de)(de)(de)(de)(de)(de)系(xi)統、方法和(he)計算(suan)機程序(xu)(xu)產(chan)品的(de)(de)(de)(de)(de)(de)(de)可(ke)(ke)能(neng)實(shi)現的(de)(de)(de)(de)(de)(de)(de)體系(xi)架(jia)構、功(gong)能(neng)和(he)操作。在這點(dian)上,流(liu)程圖(tu)或(huo)(huo)(huo)框(kuang)圖(tu)中(zhong)(zhong)的(de)(de)(de)(de)(de)(de)(de)每個方框(kuang)可(ke)(ke)以(yi)代(dai)表一個模塊(kuai)、程序(xu)(xu)段(duan)、或(huo)(huo)(huo)代(dai)碼的(de)(de)(de)(de)(de)(de)(de)一部分(fen),所述(shu)模塊(kuai)、程序(xu)(xu)段(duan)、或(huo)(huo)(huo)代(dai)碼的(de)(de)(de)(de)(de)(de)(de)一部分(fen)包含一個或(huo)(huo)(huo)多個用(yong)于(yu)實(shi)現規(gui)定(ding)的(de)(de)(de)(de)(de)(de)(de)邏(luo)輯功(gong)能(neng)的(de)(de)(de)(de)(de)(de)(de)可(ke)(ke)執(zhi)行(xing)(xing)指令。也應當注(zhu)意,在有(you)(you)些作為替換的(de)(de)(de)(de)(de)(de)(de)實(shi)現中(zhong)(zhong),方框(kuang)中(zhong)(zhong)所標(biao)注(zhu)的(de)(de)(de)(de)(de)(de)(de)功(gong)能(neng)也可(ke)(ke)以(yi)以(yi)不(bu)同于(yu)附(fu)圖(tu)中(zhong)(zhong)所標(biao)注(zhu)的(de)(de)(de)(de)(de)(de)(de)順(shun)序(xu)(xu)發生。例如,兩個接連地表示的(de)(de)(de)(de)(de)(de)(de)方框(kuang)實(shi)際上可(ke)(ke)以(yi)基(ji)本并行(xing)(xing)地執(zhi)行(xing)(xing),它們有(you)(you)時也可(ke)(ke)以(yi)按(an)相反的(de)(de)(de)(de)(de)(de)(de)順(shun)序(xu)(xu)執(zhi)行(xing)(xing),這依所涉及的(de)(de)(de)(de)(de)(de)(de)功(gong)能(neng)而定(ding)。也要(yao)注(zhu)意的(de)(de)(de)(de)(de)(de)(de)是,框(kuang)圖(tu)和(he)/或(huo)(huo)(huo)流(liu)程圖(tu)中(zhong)(zhong)的(de)(de)(de)(de)(de)(de)(de)每個方框(kuang)、以(yi)及框(kuang)圖(tu)和(he)/或(huo)(huo)(huo)流(liu)程圖(tu)中(zhong)(zhong)的(de)(de)(de)(de)(de)(de)(de)方框(kuang)的(de)(de)(de)(de)(de)(de)(de)組合,可(ke)(ke)以(yi)用(yong)執(zhi)行(xing)(xing)規(gui)定(ding)的(de)(de)(de)(de)(de)(de)(de)功(gong)能(neng)或(huo)(huo)(huo)操作的(de)(de)(de)(de)(de)(de)(de)專(zhuan)(zhuan)用(yong)的(de)(de)(de)(de)(de)(de)(de)基(ji)于(yu)硬件(jian)的(de)(de)(de)(de)(de)(de)(de)系(xi)統來實(shi)現,或(huo)(huo)(huo)者可(ke)(ke)以(yi)用(yong)專(zhuan)(zhuan)用(yong)硬件(jian)與計算(suan)機指令的(de)(de)(de)(de)(de)(de)(de)組合來實(shi)現。
描(miao)述于本(ben)申請實(shi)施例中(zhong)所涉及到的(de)單(dan)(dan)元可以(yi)通過軟件的(de)方式(shi)實(shi)現,也可以(yi)通過硬(ying)件的(de)方式(shi)來實(shi)現。所描(miao)述的(de)單(dan)(dan)元也可以(yi)設置在處(chu)理器中(zhong),例如,可以(yi)描(miao)述為(wei):一種處(chu)理器包(bao)括第(di)一獲取(qu)單(dan)(dan)元、加密(mi)長度(du)生(sheng)成(cheng)單(dan)(dan)元、加密(mi)單(dan)(dan)元、報文頭信息生(sheng)成(cheng)單(dan)(dan)元和(he)傳輸單(dan)(dan)元。其(qi)中(zhong),這(zhe)些單(dan)(dan)元的(de)名稱在某種情況(kuang)下并不構成(cheng)對該(gai)單(dan)(dan)元本(ben)身的(de)限定,例如,第(di)一獲取(qu)單(dan)(dan)元還可以(yi)被描(miao)述為(wei)“獲取(qu)待傳輸數據(ju)的(de)單(dan)(dan)元”。
作為另一(yi)(yi)方面,本申請還提供了一(yi)(yi)種非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi),該非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi)可(ke)以(yi)(yi)是(shi)上(shang)(shang)(shang)述(shu)(shu)實施例(li)中(zhong)(zhong)(zhong)所述(shu)(shu)裝(zhuang)置(zhi)中(zhong)(zhong)(zhong)所包(bao)含的(de)(de)(de)(de)(de)非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi);也可(ke)以(yi)(yi)是(shi)單獨存(cun)(cun)在,未(wei)裝(zhuang)配入終(zhong)端中(zhong)(zhong)(zhong)的(de)(de)(de)(de)(de)非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi)。上(shang)(shang)(shang)述(shu)(shu)非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi)存(cun)(cun)儲(chu)(chu)(chu)有(you)一(yi)(yi)個(ge)或者(zhe)(zhe)(zhe)多個(ge)程(cheng)序,當上(shang)(shang)(shang)述(shu)(shu)一(yi)(yi)個(ge)或者(zhe)(zhe)(zhe)多個(ge)程(cheng)序被一(yi)(yi)個(ge)設備(bei)執(zhi)行時(shi),使得上(shang)(shang)(shang)述(shu)(shu)設備(bei):獲(huo)取(qu)待傳(chuan)輸的(de)(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju);隨機生(sheng)(sheng)成(cheng)加密(mi)(mi)長(chang)(chang)(chang)度(du),其中(zhong)(zhong)(zhong),上(shang)(shang)(shang)述(shu)(shu)加密(mi)(mi)長(chang)(chang)(chang)度(du)是(shi)小于(yu)(yu)等(deng)于(yu)(yu)上(shang)(shang)(shang)述(shu)(shu)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)的(de)(de)(de)(de)(de)長(chang)(chang)(chang)度(du)的(de)(de)(de)(de)(de)整(zheng)數(shu)(shu)(shu);將上(shang)(shang)(shang)述(shu)(shu)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)從預定(ding)位置(zhi)開始加密(mi)(mi)直(zhi)到(dao)加密(mi)(mi)的(de)(de)(de)(de)(de)長(chang)(chang)(chang)度(du)達到(dao)上(shang)(shang)(shang)述(shu)(shu)加密(mi)(mi)長(chang)(chang)(chang)度(du)以(yi)(yi)生(sheng)(sheng)成(cheng)加密(mi)(mi)后的(de)(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju);生(sheng)(sheng)成(cheng)包(bao)括上(shang)(shang)(shang) 述(shu)(shu)加密(mi)(mi)長(chang)(chang)(chang)度(du)的(de)(de)(de)(de)(de)報文頭信息(xi);將上(shang)(shang)(shang)述(shu)(shu)報文頭信息(xi)和上(shang)(shang)(shang)述(shu)(shu)加密(mi)(mi)后的(de)(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)組成(cheng)完整(zheng)報文進行傳(chuan)輸。上(shang)(shang)(shang)述(shu)(shu)非易(yi)失(shi)(shi)性(xing)計(ji)(ji)算(suan)(suan)機存(cun)(cun)儲(chu)(chu)(chu)介(jie)質(zhi)(zhi)(zhi)(zhi)還可(ke)以(yi)(yi)存(cun)(cun)儲(chu)(chu)(chu)有(you)一(yi)(yi)個(ge)或者(zhe)(zhe)(zhe)多個(ge)程(cheng)序,當上(shang)(shang)(shang)述(shu)(shu)一(yi)(yi)個(ge)或者(zhe)(zhe)(zhe)多個(ge)程(cheng)序被一(yi)(yi)個(ge)設備(bei)執(zhi)行時(shi),使得上(shang)(shang)(shang)述(shu)(shu)設備(bei):獲(huo)取(qu)接收到(dao)的(de)(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju);讀取(qu)上(shang)(shang)(shang)述(shu)(shu)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)中(zhong)(zhong)(zhong)的(de)(de)(de)(de)(de)報文頭信息(xi),提取(qu)解(jie)密(mi)(mi)長(chang)(chang)(chang)度(du),其中(zhong)(zhong)(zhong)上(shang)(shang)(shang)述(shu)(shu)解(jie)密(mi)(mi)長(chang)(chang)(chang)度(du)是(shi)小于(yu)(yu)等(deng)于(yu)(yu)上(shang)(shang)(shang)述(shu)(shu)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)的(de)(de)(de)(de)(de)長(chang)(chang)(chang)度(du)的(de)(de)(de)(de)(de)整(zheng)數(shu)(shu)(shu);將上(shang)(shang)(shang)述(shu)(shu)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)從預定(ding)位置(zhi)開始解(jie)密(mi)(mi)直(zhi)到(dao)解(jie)密(mi)(mi)的(de)(de)(de)(de)(de)長(chang)(chang)(chang)度(du)達到(dao)上(shang)(shang)(shang)述(shu)(shu)解(jie)密(mi)(mi)長(chang)(chang)(chang)度(du)以(yi)(yi)生(sheng)(sheng)成(cheng)解(jie)密(mi)(mi)后的(de)(de)(de)(de)(de)數(shu)(shu)(shu)據(ju)(ju)(ju)(ju)。
以(yi)上描述(shu)(shu)僅為(wei)本申(shen)請(qing)的(de)(de)(de)較(jiao)佳實施例(li)以(yi)及(ji)對(dui)所(suo)運用技術(shu)原理(li)(li)的(de)(de)(de)說明。本領(ling)域技術(shu)人(ren)員應當理(li)(li)解(jie),本申(shen)請(qing)中(zhong)所(suo)涉及(ji)的(de)(de)(de)發明范圍(wei),并不(bu)(bu)限(xian)于上述(shu)(shu)技術(shu)特(te)征(zheng)的(de)(de)(de)特(te)定組(zu)合而(er)成的(de)(de)(de)技術(shu)方案,同時也應涵蓋(gai)在不(bu)(bu)脫離所(suo)述(shu)(shu)發明構思的(de)(de)(de)情(qing)況下,由上述(shu)(shu)技術(shu)特(te)征(zheng)或其等同特(te)征(zheng)進行(xing)任意組(zu)合而(er)形(xing)成的(de)(de)(de)其它技術(shu)方案。例(li)如上述(shu)(shu)特(te)征(zheng)與本申(shen)請(qing)中(zhong)公開的(de)(de)(de)(但不(bu)(bu)限(xian)于)具有類似功能的(de)(de)(de)技術(shu)特(te)征(zheng)進行(xing)互相替換而(er)形(xing)成的(de)(de)(de)技術(shu)方案。