一種數(shù)據(jù)加密及解密操作方法
【專利摘要】本發(fā)明提供一種數(shù)據(jù)加密及解密操作方法,包括:獲取目標數(shù)據(jù)的長度信息;根據(jù)所述長度信息生成映射表;所述映射表中存儲有所述目標數(shù)據(jù)中字符與對應(yīng)的加密字符的映射關(guān)系;根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。通過使用以上方法,可以實現(xiàn)對目標數(shù)據(jù)進行動態(tài)加密,避免了傳統(tǒng)加密中使用固定加密方式的缺點,提高了數(shù)據(jù)的安全性。
【專利說明】一種數(shù)據(jù)加密及解密操作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計算機通信【技術(shù)領(lǐng)域】,特別涉及一種數(shù)據(jù)加密及解密操作方法。
【背景技術(shù)】
[0002]隨著市場經(jīng)濟和互聯(lián)網(wǎng)技術(shù)的發(fā)展,人們的工作生活也越來越多的被網(wǎng)絡(luò)所改變。其中,網(wǎng)絡(luò)通信就是其中非常重要的應(yīng)用領(lǐng)域。
[0003]在現(xiàn)有技術(shù)中,人們經(jīng)常使用移動終端進行電子支付等操作。在通信過程中,電子支付的信息通常都采用加密方式進行傳輸。移動端將用戶的信息進行加密,之后發(fā)送到遠端服務(wù)器。遠端服務(wù)器按照約定的規(guī)則對數(shù)據(jù)進行解密。
[0004]但隨著加密技術(shù)的公開化,越來越多的加密方法都已經(jīng)被公眾所熟悉。對于一些技術(shù)人員來說,就存在利用加密方式進行惡意截獲數(shù)據(jù)并暴力解密的問題,從而造成非常嚴重的數(shù)據(jù)安全隱患。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問題是提供一種數(shù)據(jù)加密及解密操作方法,解決在現(xiàn)有技術(shù)中數(shù)據(jù)安全傳輸?shù)膯栴}。
[0006]一種數(shù)據(jù)加密操作方法,包括:
獲取目標數(shù)據(jù)的長度信息;
根據(jù)所述長度信息生成映射表;所述映射表中存儲有所述目標數(shù)據(jù)中字符與對應(yīng)的加密字符的映射關(guān)系;
根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。
[0007]優(yōu)選地,所述根據(jù)所述長度信息生成映射表,具體為:
將所述目標數(shù)據(jù)的長度作為M,將所述目標數(shù)據(jù)作為Μ項的第一隊列;
取 Ν 值,Ν=Μ+1 ;
取第一隊列中的數(shù)值作為g,判斷所述g是否滿足第一加密條件;所述第一加密條件為:將g進行0至N次方后逐一與N求模,判斷求模的結(jié)果是否為(1,2,3…M)的無序集合;若根據(jù)所述g求模的結(jié)果為(1,2,3…M)的無序集合,則將所述g進行0至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,生成所述映射表。
[0008]優(yōu)選地,還包括:
將所述g值寫入到加密后的數(shù)據(jù)中。
[0009]優(yōu)選地,在若將所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系之前,還包括:
將所述無序集合中的元素值分別減1,將減1后的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
[0010]一種數(shù)據(jù)解密操作方法,包括: 獲取加密數(shù)據(jù)的長度信息;
根據(jù)所述長度信息生成映射表;所述映射表中存儲有原始數(shù)據(jù)中字符與的加密字符的映射關(guān)系;
根據(jù)所述映射表對所述加密數(shù)據(jù)進行解密操作。
[0011]優(yōu)選地,所述根據(jù)所述長度信息生成映射表,具體為:
將所述加密數(shù)據(jù)的長度作為M’,將所述加密數(shù)據(jù)作為M’項的第一隊列;
取 N,值,N,=W +1 ;
獲取加密數(shù)據(jù)中存儲的g值,根據(jù)所述N’值和g值計算原始數(shù)據(jù),根據(jù)所述原始數(shù)據(jù)和加密后的加密數(shù)據(jù)的映射關(guān)系生成所述映射表。
[0012]優(yōu)選地,在根據(jù)所述N’值和g值計算原始數(shù)據(jù)之后,還包括:
將所述原始數(shù)據(jù)中的元素值分別加1,將加I后的所述原始數(shù)據(jù)中的元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
[0013]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點:
在本發(fā)明中,首先獲取目標數(shù)據(jù)的長度信息,其次根據(jù)所述長度信息生成映射表。最后,根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。通過使用以上方法,可以實現(xiàn)對目標數(shù)據(jù)進行動態(tài)加密,避免了傳統(tǒng)加密中使用固定加密方式的缺點,提高了數(shù)據(jù)的安全性。
[0014]
【專利附圖】
【附圖說明】
[0015]圖1是本發(fā)明提供的一種數(shù)據(jù)加密操作方法第一實施例的流程圖;
圖2是本發(fā)明提供的一種數(shù)據(jù)加密操作方法第二實施例的流程圖;
圖3是本發(fā)明提供的一種數(shù)據(jù)解密操作方法第一實施例的流程圖;
圖4是本發(fā)明提供的一種數(shù)據(jù)解密操作方法第二實施例的流程圖。
【具體實施方式】
[0016]為使本發(fā)明的上述目的、特征和優(yōu)點能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明的【具體實施方式】做詳細的說明。
[0017]參見圖1,該圖為本發(fā)明提供的一種數(shù)據(jù)加密操作方法第一實施例的流程圖。
[0018]在本實施例中,包括:
S101:獲取目標數(shù)據(jù)的長度信息。
[0019]S102:根據(jù)所述長度信息生成映射表。所述映射表中存儲有所述目標數(shù)據(jù)中字符與對應(yīng)的加密字符。
[0020]S103:根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。
[0021]在本實施例實施時,首先獲取到目標數(shù)據(jù)的長度信息。例如:當前目標數(shù)據(jù)中存儲有“1,2,3,4,5,6”,共6個字節(jié)。即當前目標數(shù)據(jù)的長度為6。
[0022]之后,根據(jù)目標數(shù)據(jù)的長度信息生成映射表。其中,映射表中包括目標數(shù)據(jù)中的字符,以及與目標數(shù)據(jù)中的字符對應(yīng)的加密字符。而映射表中內(nèi)容的生成規(guī)則不但可以基于目標數(shù)據(jù)的長度進行計算,還可以基于數(shù)據(jù)順序排序進行計算。
[0023]例如:在目標數(shù)據(jù)中存儲有“1,2,3,4,5,6”,目標數(shù)據(jù)的長度6,記算出的加密字符為“ 1,3,2,6,4,5”,即I對應(yīng)1,2對應(yīng)3,3對應(yīng)2,4對應(yīng)6,5對應(yīng)4,6對應(yīng)5。
[0024]之后,根據(jù)以上映射表中的對應(yīng)關(guān)系對目標數(shù)據(jù)中的內(nèi)容進行替換,從而實現(xiàn)對目標數(shù)據(jù)的加密。
[0025]在本實施例中,首先獲取目標數(shù)據(jù)的長度信息,其次根據(jù)所述長度信息生成映射表。最后,根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。通過使用以上方法,可以實現(xiàn)對目標數(shù)據(jù)進行動態(tài)加密,避免了傳統(tǒng)加密中使用固定加密方式的缺點,提高了數(shù)據(jù)的安全性。
[0026]參見圖2,該圖為本發(fā)明提供的一種數(shù)據(jù)加密操作方法第二實施例的流程圖。
[0027]本實施例中步驟S201和S207與本發(fā)明提供的一種數(shù)據(jù)加密操作方法第一實施例中的步驟SlOl和S103相同,在此不再重復(fù)進行介紹。
[0028]在本實施例中,所述根據(jù)所述長度信息生成映射表,具體為:
S202:將所述目標數(shù)據(jù)的長度作為M,將所述目標數(shù)據(jù)作為M項的第一隊列。
[0029]S203:取 N 值,N=M+1。
[0030]S204:取第一隊列中的數(shù)值作為g。
[0031]S205:判斷所述g是否滿足第一加密條件;所述第一加密條件為:將g進行O至N次方后逐一與N求模,判斷求模的結(jié)果是否為(1,2,3…M)的無序集合。
[0032]S206:若根據(jù)所述g求模的結(jié)果為(1,2,3…M)的無序集合,則將所述g進行O至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,生成所述映射表。
[0033]在得到目標數(shù)據(jù)并獲取到目標數(shù)據(jù)的長度后,將目標數(shù)據(jù)的長度作為M。舉例:假設(shè)目標數(shù)據(jù)為(1,2,3,4,5,6),則目標數(shù)據(jù)的長度值為6,即M為6。目標數(shù)據(jù)為包括6個元素項的隊列,可以將該隊列命名為第一隊列。
[0034]之后,取N值,N=M+1。在本實施例中,N為6+1=7。
[0035]從第一隊列中逐一取出一個數(shù)值,作為g。將g與第一隊列的值進行計算,判斷g是否滿足第一加密條件。其中,第一加密條件為:將g進行O至N次方后逐一與N求模,判斷求模的結(jié)果是否為(1,2,3…M)的無序集合。
[0036]在本實施例中,逐一取出第一隊列中的1、2、3、4、5和6。以取出3為例,將3進行O至7次方后逐一與7求模計算。得到的3的無序集合為(1,3,2,6,4,5),即(1,2,3,4,5,6)的無序集合。
[0037]之后將所述g進行O至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,即I映射為1,2映射為3,3映射為2,4映射為6,5映射為4,6映射為5。將映射關(guān)系集中存儲,生成映射表。
[0038]而如果取出2進行O至7次方后逐一與7求模計算。得到的2的無序集合為(1,2,4,2,4,1),并不是(1,2,3,4,5,6)的無序集合。
[0039]在加密后,可以將加密所使用的g值存儲在數(shù)據(jù)包中,在進行解密時可以使用該g值進行解密操作。
[0040]另外,在本實施例中,在若將所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系之前,還可以包括:
將所述無序集合中的元素值分別減1,將減I后的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
[0041]即1映射為0 (1-1),2映射為2 (3-1),3映射為1 (2_1),4映射為5 (6_1),5映射為3 (4-1),6映射為4 (5-1)。將映射關(guān)系集中存儲,生成映射表。
[0042]當然,本方法還可以不只限于進行減1處理,還可以減去其它指定值。其效果是相同的。
[0043]在本實施例中,所述根據(jù)所述長度信息生成映射表,具體為:將目標數(shù)據(jù)的長度作為M,并將目標數(shù)據(jù)作為Μ項的第一隊列。之后取Ν值,Ν=Μ+1。取第一隊列中的數(shù)值作為g,判斷g是否滿足第一加密條件;所述第一加密條件為:將g進行0至N次方后逐一與N求模,判斷若根據(jù)所述g求模的結(jié)果為(1,2,3...M)的無序集合,則將所述g進行0至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,生成所述映射表。通過使用以上方法,可以實現(xiàn)對目標數(shù)據(jù)進行動態(tài)加密,避免了傳統(tǒng)加密中使用固定加密方式的缺點,提高了數(shù)據(jù)的安全性。
[0044]參見圖3,該圖為本發(fā)明提供的一種數(shù)據(jù)解密操作方法第一實施例的流程圖。
[0045]在本實施例中,包括:
S301:獲取加密數(shù)據(jù)的長度信息;
S302:根據(jù)所述長度信息生成映射表;所述映射表中存儲有所述加密數(shù)據(jù)中字符與對應(yīng)的解密字符的映射關(guān)系。;
S303:根據(jù)所述映射表對所述加密數(shù)據(jù)進行解密操作。
[0046]在本實施例實施時,首先獲取到加密數(shù)據(jù)的長度信息。例如:當前加密數(shù)據(jù)中存儲有“1,3,2,6,4,5”,共6個字節(jié)。即當前加密數(shù)據(jù)的長度為6。
[0047]之后,根據(jù)加密數(shù)據(jù)的長度信息生成映射表。其中,映射表中包括加密數(shù)據(jù)中字符、與加密數(shù)據(jù)中字符對應(yīng)的解密字符,以及兩者之間的映射關(guān)系。而映射表中內(nèi)容的生成規(guī)則不但可以基于加密數(shù)據(jù)的長度進行計算,還可以基于數(shù)據(jù)順序排序進行計算。
[0048]例如:在加密數(shù)據(jù)中存儲有“1,2,3,4,5,6”,加密數(shù)據(jù)的長度6,通過計算后得到的映射表中記錄的關(guān)系為對應(yīng)1,3對應(yīng)2,2對應(yīng)3,6對應(yīng)4,4對應(yīng)5,5對應(yīng)6。將這些字符和映射關(guān)系進行匯總,生成映射表。
[0049]之后,根據(jù)以上映射表中的對應(yīng)關(guān)系對加密數(shù)據(jù)中的內(nèi)容進行替換,從而實現(xiàn)對加密數(shù)據(jù)的解密。
[0050]在本實施例中,首先獲取加密數(shù)據(jù)的長度信息,之后根據(jù)長度信息生成映射表,最后根據(jù)映射表對加密數(shù)據(jù)進行解密操作。通過使用以上方法,可以實現(xiàn)對加密數(shù)據(jù)進行動態(tài)解密,避免了傳統(tǒng)加密解密中使用固定加密解密方式的缺點,提高了數(shù)據(jù)的安全性。
[0051]參見圖4,該圖為本發(fā)明提供的一種數(shù)據(jù)解密操作方法第二實施例的流程圖。
[0052]本實施例中步驟S401和S407與本發(fā)明提供的一種數(shù)據(jù)加密操作方法第一實施例中的步驟S301和S303相同,在此不再重復(fù)進行介紹。
[0053]在本實施例中,所述根據(jù)所述長度信息生成映射表,具體為:
S402:將所述加密數(shù)據(jù)的長度作為M’,將所述加密數(shù)據(jù)作為M’項的第一隊列。
[0054]S403:取 N’ 值,Ν’ =M’ +1。
[0055]S404:獲取加密數(shù)據(jù)中存儲的g值,根據(jù)所述N’值和g值計算原始數(shù)據(jù),根據(jù)所述原始數(shù)據(jù)和加密后的加密數(shù)據(jù)的映射關(guān)系生成所述映射表。
[0056]在得到加密數(shù)據(jù)并獲取到加密數(shù)據(jù)的長度后,將加密數(shù)據(jù)的長度作為Μ’。舉例:假設(shè)加密數(shù)據(jù)為(1,3,2,6,4,5),則加密數(shù)據(jù)的長度值為6,即Μ’為6。
[0057]之后,取N’值,N’ =Μ’ +1。在本實施例中,N’為6+1=7。
[0058]獲取加密數(shù)據(jù)中存儲的g值。在本實施例中,g為3,
之后將所述g進行O至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,即I映射為1,2映射為3,3映射為2,4映射為6,5映射為4,6映射為5。將映射關(guān)系集中存儲,生成映射表。
[0059]而如果取出2進行O至7次方后逐一與7求模計算。得到的2的無序集合為(1,2,4,2,4,1),并不是(1,2,3,4,5,6)的無序集合。
[0060]在加密后,可以將加密所使用的g值存儲在數(shù)據(jù)包中,在進行解密時可以使用該g值進行解密操作。
[0061]另外,在本實施例中,在若將所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系之前,還可以包括:
將所述無序集合中的元素值分別減1,將減I后的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
[0062]即I映射為O (1-1),2映射為2 (3-1),3映射為I (2-1),4映射為5 (6-1),5映射為3 (4-1),6映射為4 (5-1)。將映射關(guān)系集中存儲,生成映射表。
[0063]當然,本方法還可以不只限于進行減I處理,還可以減去其它指定值。其效果是相同的。
[0064]在本實施例中,所述根據(jù)所述長度信息生成映射表,具體為:將加密數(shù)據(jù)的長度作為M,并將加密數(shù)據(jù)作為M項的第一隊列。之后取N值,N=M+1。取第一隊列中的數(shù)值作為g,判斷g是否滿足第一加密條件;所述第一加密條件為:將g進行O至N次方后逐一與N求模,判斷若根據(jù)所述g求模的結(jié)果為(I,2,3...M)的無序集合,則將所述g進行O至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,生成所述映射表。通過使用以上方法,可以實現(xiàn)對加密數(shù)據(jù)進行動態(tài)加密,避免了傳統(tǒng)加密中使用固定加密方式的缺點,提高了數(shù)據(jù)的安全性。
[0065]以上所述,僅是本發(fā)明的較佳實施例而已,并非對本發(fā)明作任何形式上的限制。雖然本發(fā)明已以較佳實施例揭露如上,然而并非用以限定本發(fā)明。任何熟悉本領(lǐng)域的技術(shù)人員,在不脫離本發(fā)明技術(shù)方案范圍情況下,都可利用上述揭示的方法和技術(shù)內(nèi)容對本發(fā)明技術(shù)方案做出許多可能的變動和修飾,或修改為等同變化的等效實施例。因此,凡是未脫離本發(fā)明技術(shù)方案的內(nèi)容,依據(jù)本發(fā)明的技術(shù)實質(zhì)對以上實施例所做的任何簡單修改、等同變化及修飾,均仍屬于本發(fā)明技術(shù)方案保護的范圍內(nèi)。
【權(quán)利要求】
1.一種數(shù)據(jù)加密操作方法,其特征在于,包括: 獲取目標數(shù)據(jù)的長度信息; 根據(jù)所述長度信息生成映射表;所述映射表中存儲有所述目標數(shù)據(jù)中字符與對應(yīng)的加密字符的映射關(guān)系; 根據(jù)所述映射表對所述目標數(shù)據(jù)進行加密操作。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)所述長度信息生成映射表,具體為: 將所述目標數(shù)據(jù)的長度作為M,將所述目標數(shù)據(jù)作為M項的第一隊列;
取 N 值,N=M+1 ;取第一隊列中的數(shù)值作為g,判斷所述g是否滿足第一加密條件;所述第一加密條件為:將g進行O至N次方后逐一與N求模,判斷求模的結(jié)果是否為(1,2,3…M)的無序集合;若根據(jù)所述g求模的結(jié)果為(I,2,3…M)的無序集合,則將所述g進行O至N次方后逐一與N求模生成的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系,生成所述映射表。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,還包括: 將所述g值寫入到加密后的數(shù)據(jù)中。
4.根據(jù)權(quán)利要求2所述的方法,其特征在于,在若將所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系之前,還包括: 將所述無序集合中的元素值分別減1,將減I后的所述無序集合中元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
5.一種數(shù)據(jù)解密操作方法,其特征在于,包括: 獲取加密數(shù)據(jù)的長度信息; 根據(jù)所述長度信息生成映射表;所述映射表中存儲有原始數(shù)據(jù)中字符與的加密字符的映射關(guān)系; 根據(jù)所述映射表對所述加密數(shù)據(jù)進行解密操作。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述根據(jù)所述長度信息生成映射表,具體為: 將所述加密數(shù)據(jù)的長度作為M’,將所述加密數(shù)據(jù)作為M’項的第一隊列;
取 N’ 值,N’ =W +1 ; 獲取加密數(shù)據(jù)中存儲的g值,根據(jù)所述N’值和g值計算原始數(shù)據(jù),根據(jù)所述原始數(shù)據(jù)和加密后的加密數(shù)據(jù)的映射關(guān)系生成所述映射表。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在根據(jù)所述N’值和g值計算原始數(shù)據(jù)之后,還包括: 將所述原始數(shù)據(jù)中的元素值分別加1,將加I后的所述原始數(shù)據(jù)中的元素與所述第一隊列中的元素按照位置建立映射關(guān)系。
【文檔編號】G06F21/60GK104462994SQ201410684449
【公開日】2015年3月25日 申請日期:2014年11月25日 優(yōu)先權(quán)日:2014年11月25日
【發(fā)明者】侯紹東, 陳騰躍, 劉麗麗 申請人:廈門市美亞柏科信息股份有限公司