單向加密解密的制作方法
【專利摘要】單向加密解密是將內(nèi)容數(shù)據(jù)進行加密與解密的IT數(shù)據(jù)加密技術(shù),它的加密前的數(shù)據(jù)與加密后的數(shù)據(jù)并沒有一一對應(yīng)關(guān)系,需要采用定向數(shù)據(jù)或定向算法保證前者對應(yīng)到后者,卻沒有對應(yīng)的算法可以保證后者對應(yīng)到前者,這種技術(shù)可以保證無法通過password形式加密的數(shù)據(jù)亦可以完成加密與解碼的過程,可以用于明文數(shù)據(jù)的加密,此外,它可以實現(xiàn)密碼的自動更新或手動更新而不需要改變密碼所有者記憶的數(shù)據(jù)。
【專利說明】單向加密解密
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于IT行業(yè)數(shù)據(jù)加密解密技術(shù)。
【背景技術(shù)】
[0002] 申請人:通過檢索,發(fā)現(xiàn)深圳華為申請的201210076498.0專利申請“數(shù)據(jù)譯碼的方法及裝置”涉及到了逆向解碼技術(shù),但這件專利申請主要對譯碼過程進行闡述,也就是對串行譯碼改進為并行譯碼加快譯碼與解碼速度,而對加密與解密的原理和實例并沒有進行解析,我們目前廣泛使用的密碼實際是通過碼,英文為password, password類似是門鎖,它是通過一定的加密方法,使得非法操作的人無法打開需要的頁面,而保護的內(nèi)容本身并沒有加密措施,此外, 申請人:為上海聞泰電子科技有限公司的申請?zhí)枮?00910197317.8的專利申請“一種數(shù)碼設(shè)備的數(shù)據(jù)安全保護方法”也是基于password原理進行的,只是主要利用了一個加密芯片而已。
[0003]現(xiàn)有的技術(shù)至少存在如下問題:
1:有些介質(zhì)無法通過password方式加密,但這些介質(zhì)同樣可能存在加密解碼的需要;
2:利用password加密本身存在缺陷,黑客可能通過計算機實施大面積密碼破解。
【發(fā)明內(nèi)容】
[0004]有益效果:本發(fā)明在于將信息內(nèi)容本身進行加密,而解密的結(jié)果可以由人工判斷,它本身可以不阻止訪問,而是頁面內(nèi)容無法讀懂或者表述正確的意思,解密正確就獲得正確的結(jié)果,解密錯誤獲得錯誤的結(jié)果,而結(jié)果是否匹配一般需要人工判斷,假如是計算機進行判斷往往檢索量非常龐大,至少黑客無法實施大面積信息破解。
[0005]技術(shù)要點:單向加密解密是IT行業(yè)數(shù)據(jù)加密解碼技術(shù),其特征在于:
1:數(shù)據(jù)至少由加密前的數(shù)據(jù),加密后的數(shù)據(jù)兩部分組成,最好還應(yīng)該有中間數(shù)據(jù),中間數(shù)據(jù)既可能是參與加密的數(shù)據(jù),也可能是僅僅控制加密過程等的必要數(shù)據(jù);
2:加密和解碼都是單向進行的,主要采用了岔路原理;
3:加密后的數(shù)據(jù)可以是可視的或可讀取的,但也可以是類似password形式的;
4:加密的數(shù)據(jù)可以是電子數(shù)據(jù),也可以是紙質(zhì)數(shù)據(jù);
5:加密可以分N步分節(jié)點進行,也就是串行算法,加密的分節(jié)點是有先后順序的,但在同節(jié)點加密時,待加密數(shù)據(jù)為了加快加密速度和增強加密強度,一般采用并行算法,可以劃分成N個模塊,執(zhí)行并行算法加密,并且這些模塊數(shù)據(jù)互相之間亦可能特定或不特定的利用程序參與到某模塊的加密解密過程中,這里的N為3 2的整數(shù),解密時,程序設(shè)計解密數(shù)據(jù)的提供應(yīng)盡量靠前;
6:本技術(shù)加密前的數(shù)據(jù)和加密后的數(shù)據(jù)不需要數(shù)據(jù)互相唯一性,他們都可能存在一對多的情況,如果是明文數(shù)據(jù),解密后的結(jié)果一般依賴人工依據(jù)其他條件進行判斷,密文數(shù)據(jù)和password原理近似;
7:本技術(shù)解密程序可以依驗證需要設(shè)置在客戶端,也可以設(shè)置在服務(wù)器端; 8:相應(yīng)的數(shù)據(jù)提供介質(zhì)可以是人工提供,可以是客戶端,也可以是服務(wù)器端,還可以是具有存貯功能的存貯介質(zhì),包括只讀存貯介質(zhì)和可讀寫存貯介質(zhì),只讀存貯介質(zhì)可以是紙質(zhì),紙片狀塑膠介質(zhì)等,讀取方式可以是人工讀取,也可以是機器讀取,比方說二維碼,條形碼等。
[0006]【具體實施方式】:為了讓本領(lǐng)域的技術(shù)人員了解本技術(shù)同password設(shè)計原理的區(qū)另IJ,發(fā)明人首先舉一個很簡單的代數(shù)式做說明,代數(shù)式A+B=C,A為加密前的數(shù)據(jù),C為加密后的數(shù)據(jù),B為中間數(shù)據(jù),+為加法運算,假如我們現(xiàn)在看到的結(jié)果C是64,我們變換一個B值,就獲得一個相應(yīng)的A值,B值可以無窮多,相應(yīng)的A值也可以無窮多,單單的一個C值是沒有任何意義的,但假如A值不好改變,例如密碼經(jīng)常改來改去,對記憶能力也是考驗,如果B和C可以是可讀寫數(shù)據(jù),通過改變B也能達到改變C的目的,而B數(shù)據(jù)如果作為可讀寫數(shù)據(jù)存貯在可讀寫存貯介質(zhì)中,其數(shù)據(jù)并不需要密碼所有者記憶,程序如果設(shè)計密碼自動更新功能或設(shè)計修改B數(shù)據(jù)完成密碼修改,這對密碼安全有一定的益處,它不同于MD5那樣有對應(yīng)關(guān)系,這也是本技術(shù)區(qū)別于password的原因,但依靠A+B=C這樣簡單的代數(shù)式顯然無法完成復(fù)雜的加密解密,本說明書涉及岔路原理,岔路顧名思義就是類似分岔路,我們從某地出發(fā)尋找某人,那么,分岔路越多,尋找難度越大,所以岔路原理一般都是多節(jié)點岔路,所指的岔路節(jié)點數(shù)類似分岔的次數(shù),而岔路級數(shù)類似于分岔路口可通行的道路數(shù),岔路原理有下述四個特征:
1:岔路原理都是執(zhí)行串行算法,也就是分步算法,它的多節(jié)點加密解密有先后順序,在同節(jié)點盆路上,級數(shù)越多,逆向破解難度越大;
2;岔路原理加密前的數(shù)據(jù)和加密后的數(shù)據(jù)并沒有唯一性對應(yīng)關(guān)系,從理論上二者都可以是一對N,N從理論上可以達到無窮多,但實際編程時受限于岔路節(jié)點數(shù)和岔路級數(shù),不會是無窮多,假如所有的岔路級數(shù)都為M,節(jié)點數(shù)為Y,那么N有M的Y-1次方之多;
3:岔路原理有“計算機識別無匹配”保證其單向性,“計算機識別無匹配”就是提供的解密數(shù)據(jù)和加密后的數(shù)據(jù)沒有計算機匹配核查程序保證二者之間的關(guān)系的關(guān)聯(lián)性,例如身份證就可以利用這個原理,由證件提供者提供姓名和其他必要數(shù)據(jù),核查人員輸入相關(guān)數(shù)據(jù)后會獲得一個加密后的數(shù)據(jù),核查人員利用計算機顯示的數(shù)據(jù)是否和身份證上面記載的加密后的姓名數(shù)據(jù)是否匹配確認證件提供者是否是證件所有者,這個原理主要用于證件防盜用識別和一些釣魚網(wǎng)站識別,計算機的高速運算能力沒有了市場;
4:結(jié)果的定向生成性,無論是加密解密,都需要提供數(shù)據(jù),這些數(shù)據(jù)中就有定向數(shù)據(jù)或定向算法保證在岔路數(shù)據(jù)生成時的唯一性,并且在多節(jié)點岔路算法中,每一節(jié)點算法都利用定向數(shù)據(jù)或定向算法完成唯一性加密,這樣保證加密解密的結(jié)果的一致性,而在算法過程中,既可以是直接的原始數(shù)據(jù),也可能是某些等值算法,例如,原數(shù)據(jù)順向執(zhí)行加法,解密時反向執(zhí)行減法等,但反向算法不會執(zhí)行太多步驟,總體算法和解密依舊呈現(xiàn)出單向特征,也就是分步加密,這里介紹以下實施例:
實施例1:例如現(xiàn)在將身份證上的姓名“李穎”進行加密,首先將“李穎”轉(zhuǎn)換成數(shù)字代碼,假如查表為6203,5560,而姓名李穎一欄有一個中間數(shù)據(jù)“ 123456”,現(xiàn)在設(shè)定一個編碼加密規(guī)則,1:將原數(shù)據(jù)進行MD5加密,將加密后的MD5數(shù)據(jù)中的字符和中間數(shù)據(jù)的單個數(shù)字依次相加,中間數(shù)據(jù)循環(huán)使用,直到MD5數(shù)據(jù)相加完畢,數(shù)據(jù)相加結(jié)果大于10之后,轉(zhuǎn)換成對應(yīng)的字母,大于35之后,需要減35再轉(zhuǎn)換,之后將相加后的結(jié)果又進行MD5加密,這樣執(zhí)行5次,MD5中的英文和數(shù)字在相加過程中代表的數(shù)見下表:
【權(quán)利要求】
1.單向加密與解密是一種IT數(shù)據(jù)加密解密技術(shù),其特征是:它的加密前的數(shù)據(jù)與加密后的數(shù)據(jù)并沒有一一對應(yīng)關(guān)系,需要采用定向數(shù)據(jù)或定向算法保證前者對應(yīng)到后者,卻沒有對應(yīng)的算法可以保證后者對應(yīng)到前者,此外,它可以實現(xiàn)密碼的自動更新或手動更新而不需要改變密碼所有者記憶的數(shù)據(jù),可以用于明文數(shù)據(jù)和密文數(shù)據(jù)的加密,它有以下幾個特征: A:數(shù)據(jù)至少由加密前的數(shù)據(jù),加密后的數(shù)據(jù)兩部分組成,最好還應(yīng)該有中間數(shù)據(jù),中間數(shù)據(jù)既可能是參與加密的數(shù)據(jù),也可能是僅僅控制加密過程等的必要數(shù)據(jù); B:加密和解碼都是單向進行的,主要采用了岔路原理; C:加密后的數(shù)據(jù)可以是可視的或可讀取的,但也可以是類似password形式的; D:數(shù)據(jù)可以是電子數(shù)據(jù),也可以是紙質(zhì)數(shù)據(jù); E:加密可以分多步進行,也就是串行算法,岔路的分節(jié)點加密是有先后順序的,但在同節(jié)點數(shù)據(jù)加密時,可以執(zhí)行并行算法,解密時,程序設(shè)計解密數(shù)據(jù)的提供應(yīng)盡量靠前; F:本技術(shù)加密前的數(shù)據(jù)和加密后的數(shù)據(jù)不需要數(shù)據(jù)互相唯一性,他們都可能存在一對多的情況,如果是明文數(shù)據(jù),解密后的結(jié)果一般依賴人工依據(jù)其他條件進行判斷,密文數(shù)據(jù)和password編程原理近似; G:本技術(shù)加密解密程序可以依驗證需要設(shè)置在客戶端,也可以設(shè)置在服務(wù)器端; H:相應(yīng)的數(shù)據(jù)提供介質(zhì)可以是人工提供,可以是客戶端,也可以是服務(wù)器端,還可以是具有存貯功能的存貯介質(zhì),包括只讀存貯介質(zhì)和可讀寫存貯介質(zhì),只讀存貯介質(zhì)可以是紙質(zhì),紙片狀塑膠介質(zhì)等,讀取方式可以是人工讀取,也可以是機器讀取,比方說二維碼,條形碼等。`
2.依據(jù)權(quán)利要求1所述的密碼自動更新或手動更新,其特征是: A:此功能需要有可讀寫的中間數(shù)據(jù)和可讀寫的加密后的數(shù)據(jù); B:它是通過程序自動或手動修改可讀寫存貯介質(zhì)上的數(shù)據(jù),進而改動加密后的數(shù)據(jù)完成的。
3.依據(jù)權(quán)利要求1所述的岔路原理,其特征是,岔路節(jié)點數(shù)類似道路分岔的次數(shù),而岔路級數(shù)類似于分岔路口可通行的道路數(shù): A:岔路原理都是執(zhí)行串行算法,也就是分步算法,它的多節(jié)點加密解密有先后順序,在同一節(jié)點盆路上,級數(shù)越多,逆向破解難度越大; B:岔路原理加密前的數(shù)據(jù)和加密后的數(shù)據(jù)并沒有唯一性對應(yīng)關(guān)系,從理論上二者都可以是一對N,N從理論上可以達到無窮多,但實際編程時受限于岔路節(jié)點數(shù)和岔路級數(shù),不會是無窮多; C:岔路原理有“計算機識別無匹配”保證其單向性,“計算機識別無匹配”就是提供的解密數(shù)據(jù)和加密后的數(shù)據(jù)沒有計算機匹配核查程序保證二者之間的關(guān)系的關(guān)聯(lián)性; D:結(jié)果的定向生成性,無論是加密解密,都需要提供數(shù)據(jù),這些數(shù)據(jù)中就有定向數(shù)據(jù)或定向算法保證在岔路數(shù)據(jù)生成時的唯一性,并且在多節(jié)點岔路算法中,每一節(jié)點算法都利用定向數(shù)據(jù)或定向算法完成唯一性加密,這樣保證加密解密的結(jié)果的一致性。
4.根據(jù)權(quán)利要求3所述的并行算法,其特征是: 待加密數(shù)據(jù)為了加快加密速度和增強加密強度,一般采用并行算法,可以劃分成N個模塊,執(zhí)行并行算法加密,并且這些模塊數(shù)據(jù)互相之間亦可能特定或不特定的利用程序參與到某模塊的加密解密過程中,這里的N為3 2的整數(shù)。
5.根據(jù)權(quán)利要求3所述的多步分節(jié)點加密的實施例,其特征是: 例如將身份證上的姓名“李穎”進行加密,首先將“李穎”轉(zhuǎn)換成數(shù)字代碼,假如查表為6203,5560,而姓名李穎一欄有一個中間數(shù)據(jù)“ 123456”,現(xiàn)在設(shè)定一個編碼加密規(guī)則,1:將原數(shù)據(jù)進行MD5加密,將加密后的MD5數(shù)據(jù)中的字符和中間數(shù)據(jù)的單個數(shù)字依次相加,中間數(shù)據(jù)循環(huán)使用,直到MD5數(shù)據(jù)相加完畢,數(shù)據(jù)相加結(jié)果3 10之后,轉(zhuǎn)換成對應(yīng)的字母,大于35之后,需要減35再轉(zhuǎn)換,之后將相加后的結(jié)果又依原來的方法進行MD5加密,這樣執(zhí)行5次,MD5中的英文和數(shù)字在相加過程中代表的數(shù)如表1: 表1:
6.根據(jù)權(quán)利要求3所述的岔路級數(shù)原理的實施例,其特征是,在權(quán)利要求5的實施例中,并沒有岔路級數(shù)原理,仍舊以該例進行改進,假如將表1設(shè)計成N張數(shù)據(jù)表,例如表2的O做數(shù)字運算和替換時不是O而是a,表3是9等等,將“李穎”進行分拆為“李”、“穎”,將他們的數(shù)字代碼分別進行MD5加密后,將其結(jié)果的數(shù)字提取出來,再除以N數(shù),余數(shù)是幾,就從該余數(shù)對應(yīng)的數(shù)據(jù)表進行字符轉(zhuǎn)換,假如其他的規(guī)則都不變,這樣計算出來的結(jié)果也與實施例I并不相同,這個實施例中,N數(shù)為幾,就表示級數(shù)是幾,假如N數(shù)為8,實施例1的節(jié)點數(shù)為5,那么可能的結(jié)果是8的4次方為4096種,這個數(shù)據(jù)并不龐大,但是轉(zhuǎn)碼過程是非常復(fù)雜的,它的組合數(shù)的字節(jié)數(shù)非常龐大。
7.根據(jù)權(quán)利要求3所述的計算機識別無匹配性的實施例,其特征是: 由證件提供者提供姓名和其他必要數(shù)據(jù),核查人員輸入相關(guān)數(shù)據(jù)后會獲得一個加密后的數(shù)據(jù),核查人員利用計算機顯示的數(shù)據(jù)是否和身份證上面記載的加密后的姓名數(shù)據(jù)是否匹配確認證件提供者是否是證件所有者。
8.根據(jù)權(quán)利要求3所述的結(jié)果的定向生成性的實施例,其特征是: 例如現(xiàn)在要把待加密數(shù)據(jù)利用數(shù)據(jù)表進行轉(zhuǎn)換,而同類型的數(shù)據(jù)表有N個,這些數(shù)據(jù)表的命名有一個規(guī)律,就是可以從O到N-1區(qū)分這些數(shù)據(jù)表,那么,就可以借助定向數(shù)據(jù),一般是阿拉伯數(shù)除以N,其余數(shù)也剛好是O到N-1數(shù)的組合,這樣就可以鏈接到對應(yīng)的數(shù)據(jù)表,只要加密和解密定向數(shù)據(jù)一致,就可以保證加密解密結(jié)果的一致性。
9.根據(jù)權(quán)利要求4所述的并行算法中模塊之間的特定或不特定的控制的實施例,其特征是:在并行算法中,對于各個模塊的加密,連接數(shù)據(jù)表可以規(guī)定I模塊控制2模塊,2模塊控制3模塊,也就是特定方式連接,也可以以非特定方式連接,例如將6位中文分拆成6個模塊,是通過將各自模塊相關(guān)數(shù)據(jù)除以6,余數(shù)加1為幾,就指定是該模塊控制連接到數(shù)據(jù)表。
【文檔編號】H04L9/06GK103873230SQ201410137859
【公開日】2014年6月18日 申請日期:2014年4月6日 優(yōu)先權(quán)日:2014年4月6日
【發(fā)明者】汪風珍 申請人:汪風珍