亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于多表加密法的數(shù)據(jù)加密傳輸方法及裝置制造方法

文檔序號(hào):7808228閱讀:193來(lái)源:國(guó)知局
一種基于多表加密法的數(shù)據(jù)加密傳輸方法及裝置制造方法
【專利摘要】本發(fā)明涉及一種基于多表加密法的數(shù)據(jù)加密傳輸方法及裝置,包括以下步驟:客戶端向服務(wù)器發(fā)送獲取密鑰請(qǐng)求,服務(wù)器生成密鑰;客戶端向服務(wù)器提交表單數(shù)據(jù)時(shí),客戶端接收服務(wù)器發(fā)送的密鑰,將表單數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為密鑰數(shù)組;客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取出密鑰數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼;根據(jù)明文字符串的ASCII碼及密鑰字符串的ASCII碼對(duì)待加密信息進(jìn)行加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器;服務(wù)器對(duì)加密數(shù)據(jù)進(jìn)行解密,并根據(jù)解密后的結(jié)果,調(diào)用后端服務(wù)。本發(fā)明能夠?qū)Υ笮懽帜讣皵?shù)字進(jìn)行加解密,保障了用戶數(shù)據(jù)安全,擴(kuò)展了加密算法。
【專利說(shuō)明】一種基于多表加密法的數(shù)據(jù)加密傳輸方法及裝置

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及數(shù)據(jù)加密方法,特別涉及基于多表加密法的數(shù)據(jù)加密傳輸方法及裝 置。

【背景技術(shù)】
[0002] 目前多數(shù)網(wǎng)站都采用http協(xié)議對(duì)數(shù)據(jù)明文傳輸,傳輸過(guò)程無(wú)數(shù)據(jù)加密過(guò)程,這使 得攻擊者能夠利用攻擊工具輕而易舉就會(huì)得到用戶的敏感信息(密碼),無(wú)法保證用戶的 數(shù)據(jù)安全。
[0003] 加密技術(shù)說(shuō)明:若密鑰是非周期的無(wú)限序列,則相應(yīng)的密碼為非周期多表代替 密碼。這類密碼,對(duì)每個(gè)明文字母都采用不同的代替表進(jìn)行加密,稱之為一次一密密碼 (one-time pad cipher)。這是一種在理論上唯一不可破的密碼。這種密碼對(duì)于明文的特 點(diǎn)可實(shí)現(xiàn)完全隱蔽,但由于需要的密鑰量和明文信息的長(zhǎng)度相同而難于廣泛使用。
[0004] 多表替代機(jī)密核心原理就是,就是將明文與秘鑰進(jìn)行逐位取模運(yùn)算,利用26個(gè)字 母的周期性規(guī)則來(lái)達(dá)到替換的目的。但這種思想只對(duì)字母有效,PSC加密中沒(méi)有對(duì)數(shù)字進(jìn) 行加密,加密算法在遇到數(shù)字的時(shí)候仍然使用明文進(jìn)行表示,那么這樣就相對(duì)下降了密文 的安全性。
[0005] 比如,在系統(tǒng)登錄時(shí),通過(guò)請(qǐng)求分析工具可以分析得出傳統(tǒng)的無(wú)加密方式,可直接 查看到用戶密碼,容易造成用戶信息被竊取,進(jìn)而導(dǎo)致用戶的利益遭受損失。


【發(fā)明內(nèi)容】

[0006] 本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種能夠?qū)Υ笮懽帜讣皵?shù)字進(jìn)行加解密的 基于多表加密法的數(shù)據(jù)加密傳輸方法及裝置。
[0007] 本發(fā)明解決上述技術(shù)問(wèn)題的技術(shù)方案如下:一種基于多表加密法的數(shù)據(jù)加密傳輸 方法,包括以下步驟:
[0008] 步驟1 :客戶端向服務(wù)器發(fā)送獲取密鑰請(qǐng)求,服務(wù)器生成密鑰,保存密鑰并將密鑰 發(fā)送給客戶端;
[0009] 步驟2 :客戶端向服務(wù)器提交表單數(shù)據(jù)時(shí),客戶端接收服務(wù)器發(fā)送的密鑰,將表單 數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為密鑰數(shù)組;
[0010] 步驟3 :客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取 出密鑰數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼;
[0011] 步驟4 :根據(jù)明文字符串的ASCII碼及密鑰字符串的ASCII碼對(duì)待加密信息進(jìn)行 加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器;
[0012] 步驟5 :服務(wù)器利用保存的密鑰對(duì)加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解 密,并根據(jù)解密后的結(jié)果,調(diào)用后端服務(wù)。
[0013] 本發(fā)明的有益效果是:本發(fā)明選用多表加密技術(shù)對(duì)明文數(shù)據(jù)進(jìn)行加密,能夠?qū)Υ?小寫字母及數(shù)字進(jìn)行加解密,在利用此種算法進(jìn)行數(shù)據(jù)加密傳輸時(shí),使用普通的分析工具 不能夠破譯數(shù)據(jù)內(nèi)容,保障了用戶數(shù)據(jù)安全,擴(kuò)展了加密算法。
[0014] 在上述技術(shù)方案的基礎(chǔ)上,本發(fā)明還可以做如下改進(jìn)。
[0015] 進(jìn)一步,所述密鑰字符串為多個(gè)小寫字母組成的字符串。
[0016] 進(jìn)一步,當(dāng)所述明文字符串中的字符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明 文字符串中的字符與密鑰字符串中的字符一一對(duì)應(yīng);
[0017] 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符 串的尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符 與明文字符串中的字符一一對(duì)應(yīng)。
[0018] 進(jìn)一步,所述步驟4中對(duì)明文字符串進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù) 字時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的ASCII碼:
[0019] reslult = 48+(((χ-48)+y) % 10);
[0020] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0021] 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0022] reslult = 97+(((χ-97)+y) % 26);
[0023] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼;
[0024] 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0025] reslult = 65+(((χ-65)+y) % 26);
[0026] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼。
[0027] 進(jìn)一步,所述步驟5中對(duì)加密數(shù)據(jù)進(jìn)行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí), 采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0028] reslult = 48+((((χ-48)-10)-y) % 10);
[0029] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0030] 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0031] result = 97+((((χ-97)-26)-y) % 26);
[0032] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼;
[0033] 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0034] result = 65+((((χ-65)-26)-y) % 26);
[0035] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。
[0036] 進(jìn)一步,一種基于多表加密法的數(shù)據(jù)加密傳輸裝置,包括客戶端和服務(wù)器;
[0037] 所述客戶端,用于向服務(wù)器發(fā)送獲取密鑰請(qǐng)求,向服務(wù)端提交表單數(shù)據(jù)時(shí),客戶端 接收服務(wù)器發(fā)送的密鑰,將表單數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為密鑰 數(shù)組,客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取出密鑰數(shù)組 中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼,根據(jù)明文字符串的ASCII碼及密鑰字符串 的ASCII碼對(duì)待加密信息進(jìn)行加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器;
[0038] 所述服務(wù)器,用于生成密鑰,保存密鑰并將密鑰發(fā)送給客戶端;利用保存的密鑰對(duì) 加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解密,并根據(jù)解密后的結(jié)果,調(diào)用后端服務(wù)。
[0039] 進(jìn)一步,所述密鑰字符串為多個(gè)小寫字母組成的字符串。
[0040] 進(jìn)一步,當(dāng)所述明文字符串中的字符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明 文字符串中的字符與密鑰字符串中的字符一一對(duì)應(yīng);
[0041] 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符 串的尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符 與明文字符串中的字符一一對(duì)應(yīng)。
[0042] 進(jìn)一步,所述客戶端中對(duì)明文字符串進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù) 字時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的ASCII碼:
[0043] reslult = 48+(((χ-48)+y) % 10);
[0044] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0045] 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0046] reslult = 97+(((χ-97)+y) % 26);
[0047] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼;
[0048] 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0049] reslult = 65+(((χ-65)+y) % 26);
[0050] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼。
[0051] 進(jìn)一步,所述服務(wù)器中對(duì)加密數(shù)據(jù)進(jìn)行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí), 采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0052] reslult = 48+((((χ-48)-10)-y) % 10);
[0053] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0054] 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0055] result = 97+((((χ-97)-26)-y) % 26);
[0056] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼;
[0057] 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0058] result = 65+((((χ-65)-26)-y) % 26);
[0059] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。

【專利附圖】

【附圖說(shuō)明】
[0060] 圖1為本發(fā)明方法步驟流程圖;
[0061] 圖2為本發(fā)明裝置結(jié)構(gòu)圖。
[0062] 附圖中,各標(biāo)號(hào)所代表的部件列表如下:
[0063] 1、客戶端,2、服務(wù)器。

【具體實(shí)施方式】
[0064] 以下結(jié)合附圖對(duì)本發(fā)明的原理和特征進(jìn)行描述,所舉實(shí)例只用于解釋本發(fā)明,并 非用于限定本發(fā)明的范圍。
[0065] 如圖1所示,為本發(fā)明方法步驟流程圖;圖2為本發(fā)明裝置結(jié)構(gòu)圖。
[0066] 實(shí)施例1
[0067] 一種基于多表加密法的數(shù)據(jù)加密傳輸方法,包括以下步驟:
[0068] 步驟1 :客戶端向服務(wù)器發(fā)送獲取密鑰請(qǐng)求,服務(wù)器生成密鑰,保存密鑰并將密鑰 發(fā)送給客戶端;
[0069] 步驟2 :客戶端向服務(wù)器提交表單數(shù)據(jù)時(shí),客戶端接收服務(wù)器發(fā)送的密鑰,將表單 數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為密鑰數(shù)組;
[0070] 步驟3 :客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取 出密鑰數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼;
[0071] 步驟4 :根據(jù)明文字符串的ASCII碼及密鑰字符串的ASCII碼對(duì)待加密信息進(jìn)行 加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器;
[0072] 步驟5 :服務(wù)器利用保存的密鑰對(duì)加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解 密,并根據(jù)解密后的結(jié)果,調(diào)用后端服務(wù)。
[0073] 所述密鑰字符串為多個(gè)小寫字母組成的字符串。
[0074] 當(dāng)所述明文字符串中的字符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明文字符串 中的字符與密鑰字符串中的字符一一對(duì)應(yīng);
[0075] 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符 串的尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符 與明文字符串中的字符一一對(duì)應(yīng)。
[0076] 所述步驟4中對(duì)明文字符串進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù)字時(shí),采 用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的ASCII碼:
[0077] reslult = 48+(((χ-48)+y) % 10);
[0078] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0079] 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0080] reslult = 97+(((χ-97)+y) % 26);
[0081] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97,m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼;
[0082] 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0083] reslult = 65+(((χ-65)+y) % 26);
[0084] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼。
[0085] 進(jìn)一步,所述步驟5中對(duì)加密數(shù)據(jù)進(jìn)行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí), 采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0086] reslult = 48+((((χ-48)-10)-y) % 10);
[0087] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0088] 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0089] result = 97+((((χ-97)-26)-y) % 26);
[0090] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼;
[0091] 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0092] result = 65+((((χ-65)-26)-y) % 26);
[0093] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97, m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。
[0094] 一種基于多表加密法的數(shù)據(jù)加密傳輸裝置,包括客戶端1和服務(wù)器2 ;
[0095] 所述客戶端1,用于向服務(wù)器2發(fā)送獲取密鑰請(qǐng)求,向服務(wù)端提交表單數(shù)據(jù)時(shí),客 戶端接收服務(wù)器發(fā)送的密鑰,將表單數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為 密鑰數(shù)組,客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取出密鑰 數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼,根據(jù)明文字符串的ASCII碼及密鑰字 符串的ASCII碼對(duì)待加密信息進(jìn)行加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器2 ;
[0096] 所述服務(wù)器2,用于生成密鑰,保存密鑰并將密鑰發(fā)送給客戶端1 ;利用保存的密 鑰對(duì)加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解密,并根據(jù)解密后的結(jié)果,調(diào)用后端服 務(wù)。
[0097] 所述密鑰字符串為多個(gè)小寫字母組成的字符串。
[0098] 當(dāng)所述明文字符串中的字符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明文字符串 中的字符與密鑰字符串中的字符一一對(duì)應(yīng);
[0099] 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符 串的尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符 與明文字符串中的字符一一對(duì)應(yīng)。
[0100] 所述客戶端1中對(duì)明文字符串進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù)字時(shí), 采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的ASCII碼:
[0101] reslult = 48+(((χ-48)+y) % 10);
[0102] 其中,x表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0103] 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0104] reslult = 97+(((χ-97)+y) % 26);
[0105] 其中,χ表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼;
[0106] 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符 的ASCII碼:
[0107] reslult = 65+(((χ-65)+y) % 26);
[0108] 其中,X表示明文字符串中的字符的ASCII碼,y = m-97, m表示密鑰字符串中與 明文字符串對(duì)應(yīng)字符的ASCII碼。
[0109] 所述服務(wù)器2中對(duì)加密數(shù)據(jù)進(jìn)行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí),采用 以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0110] reslult = 48+((((χ-48)-10)-y) % 10);
[0111] 其中,X表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10;
[0112] 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0113] result = 97+((((χ-97)-26)-y) % 26);
[0114] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m_97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼;
[0115] 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符:
[0116] result = 65+((((χ-65)-26)-y) % 26);
[0117] 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m_97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。
[0118] 多表替代:多表中的"表"其實(shí)就是指的秘鑰,那么"多表"(由于算法是明文與秘 鑰逐位進(jìn)行替換),當(dāng)明文大于秘鑰時(shí),秘鑰自動(dòng)轉(zhuǎn)換為下一個(gè)對(duì)稱周期,直到完全與明文 的長(zhǎng)度對(duì)應(yīng)。
[0119] 例如:
[0120] 原文:gfetyuew4
[0121] 秘鑰:abcabcabc
[0122] 原文:gfetyuew
[0123] 秘鑰:abcabcab
[0124] 秘鑰為abc,原文為gfetyuew4和原文為gfetyuew時(shí)加密運(yùn)算規(guī)則。
[0125] "表"的生成算法:使用java的random類,從26個(gè)字母列表中,每次從0-25中隨 機(jī)選取一個(gè)位置作為列表下標(biāo),通過(guò)下標(biāo)獲取對(duì)應(yīng)的字母。在本例中為默認(rèn)獲取一個(gè)長(zhǎng)度 為10的隨機(jī)密鑰。
[0126] 以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和 原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1. 一種基于多表加密法的數(shù)據(jù)加密傳輸方法,其特征在于,包括以下步驟: 步驟1 :客戶端向服務(wù)器發(fā)送獲取密鑰請(qǐng)求,服務(wù)器生成密鑰,保存密鑰并將密鑰發(fā)送 給客戶端; 步驟2 :客戶端向服務(wù)器提交表單數(shù)據(jù)時(shí),客戶端接收服務(wù)器發(fā)送的密鑰,將表單數(shù)據(jù) 中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為密鑰數(shù)組; 步驟3 :客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取出密 鑰數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼; 步驟4 :根據(jù)明文字符串的ASCII碼及密鑰字符串的ASCII碼對(duì)待加密信息進(jìn)行加密, 將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器; 步驟5 :服務(wù)器利用保存的密鑰對(duì)加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解密, 并根據(jù)解密后的結(jié)果,調(diào)用后端服務(wù)。
2. 根據(jù)權(quán)利要求1所述的數(shù)據(jù)加密傳輸方法,其特征在于:所述密鑰字符串為多個(gè)小 寫字母組成的字符串。
3. 根據(jù)權(quán)利要求2所述的數(shù)據(jù)加密傳輸方法,其特征在于:當(dāng)所述明文字符串中的字 符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明文字符串中的字符與密鑰字符串中的字符 --對(duì)應(yīng); 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符串的 尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符與明 文字符串中的字符一一對(duì)應(yīng)。
4. 根據(jù)權(quán)利要求3所述的數(shù)據(jù)加密傳輸方法,其特征在于,所述步驟4中對(duì)明文字符串 進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù)字時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字 符的ASCII碼: reslult = 48+(((χ-48)+y) % 10); 其中,x表示明文字符串中的字符的ASCII碼,y = m - 97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y = 10 ; 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的 ASCII 碼: reslult = 97+(((χ-97)+y) % 26); 其中,x表示明文字符串中的字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼; 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的 ASCII 碼: reslult = 65+(((χ-65)+y) % 26); 其中,x表示明文字符串中的字符的ASCII碼,y = m - 97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。
5. 根據(jù)權(quán)利要求3所述的數(shù)據(jù)加密傳輸方法,其特征在于,所述步驟5中對(duì)加密數(shù)據(jù)進(jìn) 行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符: reslult = 48+((((χ-48)-10)-y) % 10); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m - 97, m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y = 10 ; 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符: result = 97+((((χ-97)-26)-y) % 26); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼; 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符: result = 65+((((χ-65)-26)-y) % 26); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼。
6. -種基于多表加密法的數(shù)據(jù)加密傳輸裝置,其特征在于:包括客戶端(1)和服務(wù)器 (2); 所述客戶端(1),用于向服務(wù)器(2)發(fā)送獲取密鑰請(qǐng)求,向服務(wù)端提交表單數(shù)據(jù)時(shí),客 戶端接收服務(wù)器發(fā)送的密鑰,將表單數(shù)據(jù)中的待加密信息轉(zhuǎn)化為明文數(shù)組,將密鑰轉(zhuǎn)化為 密鑰數(shù)組,客戶端取出明文數(shù)組中的明文字符串,將明文字符串轉(zhuǎn)化為ASCII碼,取出密鑰 數(shù)組中的密鑰字符串,將密鑰字符串轉(zhuǎn)化為ASCII碼,根據(jù)明文字符串的ASCII碼及密鑰字 符串的ASCII碼對(duì)待加密信息進(jìn)行加密,將加密后得到的加密數(shù)據(jù)發(fā)送給服務(wù)器(2); 所述服務(wù)器(2),用于生成密鑰,保存密鑰并將密鑰發(fā)送給客戶端(1);利用保存的密 鑰對(duì)加密數(shù)據(jù)采用加密的逆過(guò)程對(duì)加密數(shù)據(jù)進(jìn)行解密,并根據(jù)解密后的結(jié)果,調(diào)用后端服 務(wù)。
7. 根據(jù)權(quán)利要求6所述的數(shù)據(jù)加密傳輸裝置,其特征在于:所述密鑰字符串為多個(gè)小 寫字母組成的字符串。
8. 根據(jù)權(quán)利要求7所述的數(shù)據(jù)加密傳輸裝置,其特征在于:當(dāng)所述明文字符串中的字 符的數(shù)量小于密鑰字符串中的字符的數(shù)量,明文字符串中的字符與密鑰字符串中的字符 --對(duì)應(yīng); 當(dāng)所述明文字符串中的字符的數(shù)量大于密鑰字符串中的字符的數(shù)量,在密鑰字符串的 尾端疊加一個(gè)新的與原密鑰字符串相同的密鑰字符串,疊加后的沒(méi)有字符串中的字符與明 文字符串中的字符一一對(duì)應(yīng)。
9. 根據(jù)權(quán)利要求8所述的數(shù)據(jù)加密傳輸裝置,其特征在于:所述客戶端(1)中對(duì)明文 字符串進(jìn)行逐位加密,當(dāng)明文字符串中的字符為數(shù)字時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì) 應(yīng)的字符的ASCII碼: reslult = 48+(((χ-48)+y) % 10); 其中,x表示明文字符串中的字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y= 10; 當(dāng)明文字符串中的字符為小寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的 ASCII 碼: reslult = 97+(((χ-97)+y) % 26); 其中,x表示明文字符串中的字符的ASCII碼,y = m - 97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼; 當(dāng)明文字符串中的字符為大寫字母時(shí),采用以下方式計(jì)算加密數(shù)據(jù)中對(duì)應(yīng)的字符的 ASCII 碼: reslult = 65+(((χ-65)+y) % 26); 其中,x表示明文字符串中的字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文 字符串對(duì)應(yīng)字符的ASCII碼。
10.根據(jù)權(quán)利要求6所述的數(shù)據(jù)加密傳輸裝置,其特征在于:所述服務(wù)器(2)中對(duì)加 密數(shù)據(jù)進(jìn)行逐位解密,當(dāng)加密數(shù)據(jù)中的字符為數(shù)字時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字 符: reslult = 48+((((χ-48)-10)-y)% 10); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m - 97, m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼,其中y彡10,當(dāng)y>10時(shí),y = 10 ; 當(dāng)加密數(shù)據(jù)中的字符為小寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符: result = 97+((((χ-97)-26)-y) % 26); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m - 97, m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼; 當(dāng)加密數(shù)據(jù)中的字符為大寫字母時(shí),采用以下方式計(jì)算明文中對(duì)應(yīng)的字符: result = 65+((((χ-65)-26)-y) % 26); 其中,x表示加密數(shù)據(jù)中字符的ASCII碼,y = m-97,m表示密鑰字符串中與明文字符 串對(duì)應(yīng)字符的ASCII碼。
【文檔編號(hào)】H04L9/28GK104113410SQ201410317610
【公開(kāi)日】2014年10月22日 申請(qǐng)日期:2014年7月4日 優(yōu)先權(quán)日:2014年7月4日
【發(fā)明者】楊春明 申請(qǐng)人:北京思特奇信息技術(shù)股份有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1