一種算法重構(gòu)裝置及方法
【專利摘要】本發(fā)明提供一種算法重構(gòu)裝置及方法,所述裝置包括:隨機數(shù)生成模塊,根據(jù)獲取的用戶信息生成隨機數(shù),所述隨機數(shù)被設定為密鑰參數(shù);算法重構(gòu)模塊,與所述隨機數(shù)生成模塊連接,用于通過一預設重構(gòu)機制重構(gòu)第一算法。在本發(fā)明中,由于獲取的用戶信息的唯一性,因而根據(jù)該用戶信息生成密鑰參數(shù)是唯一且不可預見的,這樣就確保了根據(jù)密鑰參數(shù)重構(gòu)的算法的唯一性,即每個用戶對應的重構(gòu)后的算法都不相同,因而算法的安全性大大提高能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而用戶能夠放心的使用經(jīng)過本發(fā)明的算法重構(gòu)裝置重構(gòu)后的算法。
【專利說明】
一種算法重構(gòu)裝置及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全【技術(shù)領(lǐng)域】,尤指一種算法重構(gòu)裝置及方法。
【背景技術(shù)】
[0002]隨著信息科技的發(fā)展,信息安全技術(shù)在各領(lǐng)域的應用更為廣泛和深入。在信息安全領(lǐng)域,身份認證往往是信息系統(tǒng)使用的第一把鑰匙,其安全性受到越來越多的重視。相應地,為了加強身份認證安全性的動態(tài)口令技術(shù)已經(jīng)越來越多地應用于各個不同領(lǐng)域,尤其在網(wǎng)銀、網(wǎng)游、電信運營商、電子政務、企業(yè)服務器等應用領(lǐng)域。另外,動態(tài)口令在企業(yè)應用也是當前的熱點,越來越多的企業(yè)或?qū)嶓w采用動態(tài)口令保護其VPN、服務器、網(wǎng)絡設備等。
[0003]動態(tài)口令是根據(jù)專門的算法生成一個不可預測的隨機數(shù)字組合,一個密碼使用一次有效,動態(tài)口令是一種安全便捷的帳號防盜技術(shù),可以有效保護交易和登錄的認證安全,采用動態(tài)口令就無需定期修改密碼,安全省心,從而在最基本的密碼認證這一環(huán)節(jié)保證了系統(tǒng)的安全性,解決了因口令欺詐而導致的重大損失,防止惡意入侵者或人為破壞,解決由口令泄密導致的入侵問題。
[0004]為了進一步保障信息系統(tǒng)使用過程中的安全,目前較為常用的是使用實體硬件作為動態(tài)口令的載體,其內(nèi)置電池、芯片和顯示屏,產(chǎn)生并顯示動態(tài)密碼,但是,這種動態(tài)令牌有一定的體積和厚度,長時間攜帶會給用戶帶來不便;當然,也有體積和厚度較小的令牌形式,如卡片式令牌,這種令牌雖然攜帶方便,但按鍵手感普遍較差,用戶輸入也不方便,同時成本也比較高;另外,人們也嘗試在智能手機上開發(fā)軟件令牌產(chǎn)品,但是其安全性無法保證,這種軟件令牌只能用于安全性要求不是很高的場所。
[0005]然而,無論是實體硬件動態(tài)令牌還是軟件動態(tài)令牌,都有一個共同的弱點,即其所有的令牌算法都是相同且公開的,僅通過密鑰來實現(xiàn)不同用戶的身份認證過程,可一旦密鑰被非法獲得,不法分子即可任意獲取動態(tài)密碼,動態(tài)令牌將不再安全。
【發(fā)明內(nèi)容】
[0006]本發(fā)明為了解決現(xiàn)有動態(tài)令牌安全性不太高的問題,從而提供一種動態(tài)令牌算法重構(gòu)裝置及方法,提供一種更能保障用戶安全的動態(tài)令牌算法,以提高使用動態(tài)口令認證的系統(tǒng)的安全性,避免安全隱患,給用戶帶來更好的使用體驗。
[0007]為了實現(xiàn)本發(fā)明以上發(fā)明目的,本發(fā)明提供的一種算法重構(gòu)裝置是通過以下技術(shù)方案實現(xiàn)的:
[0008]一種算法重構(gòu)裝置,所述裝置包括:
[0009]隨機數(shù)生成模塊,用戶根據(jù)獲取的用戶信息生成隨機數(shù),所述隨機數(shù)被設定為密鑰參數(shù);
[0010]算法重構(gòu)模塊,與所述隨機數(shù)生成模塊連接,用于通過一預設重構(gòu)機制重構(gòu)第一算法。
[0011]根據(jù)上述技術(shù)方案,由于用戶信息的唯一性,因而根據(jù)該用戶信息生成的隨機數(shù)即密鑰參數(shù)是唯一且不可預見的,這樣就確保了根據(jù)密鑰參數(shù)重構(gòu)后的算法的唯一性,大大擴展了算法的應用,解決了目前由于算法的固定而引起的安全隱患;同時,由于算法的唯一性,即每個用戶對應的算法都不相同,算法同樣安全性能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而提高了算法在使用過程中的安全性,如通過本發(fā)明的算法進行安全認證,避免了安全隱患。
[0012]優(yōu)選地,所述算法重構(gòu)模塊中至少包括以下一個單元:
[0013]運算順序單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法的運算順序;
[0014]分組單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及所述分組數(shù)據(jù)塊的運算順序;
[0015]固定參數(shù)確定單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法中的固定參數(shù)。
[0016]由于事先生成的隨機數(shù)為不可預知的字符串,這就使得密鑰參數(shù)字符串是不可預知的,從而每個根據(jù)密鑰參數(shù)進行算法重構(gòu)的算法的運算順序或分組數(shù)據(jù)塊結(jié)構(gòu)不同或運算順序不同或算法的固定參數(shù)不同,提高了算法的復雜度,進而提高了動態(tài)令牌的安全性。
[0017]優(yōu)選地,所述裝置還包括信息獲取模塊,與所述隨機數(shù)生成模塊連接,用于獲取所述用戶信息。
[0018]優(yōu)選地,所述裝置還包括存儲模塊,用于存儲所述第一算法,所述預設重構(gòu)機制以及與所述用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
[0019]優(yōu)選地,所述裝置還包括下發(fā)模塊,分別與所述信息獲取模塊和所述存儲模塊連接,用于根據(jù)所述用戶信息下發(fā)所述第一算法。
[0020]在本技術(shù)方案中,裝置可以通過下發(fā)模塊選擇上述第一算法,并存儲至存儲器一特定存儲區(qū),非服務器端不可讀寫該存儲區(qū),從而非法用戶不能存取所述第一算法,提高了裝置的安全性。
[0021]為了實現(xiàn)本發(fā)明的發(fā)明目的,本發(fā)明還提供了一種算法重構(gòu)方法,所述方法包括:
[0022]根據(jù)用戶信息生成一隨機數(shù),所述隨機數(shù)被設定為一密鑰參數(shù);
[0023]根據(jù)所述密鑰參數(shù),通過一預設重構(gòu)機制重構(gòu)第一算法。
[0024]根據(jù)上述技術(shù)方案,由于用戶信息的唯一性,因而根據(jù)該用戶信息生成的隨機數(shù)即密鑰參數(shù)是唯一且不可預見的,這樣就確保了根據(jù)密鑰參數(shù)重構(gòu)后的算法的唯一性,大大擴展了算法的應用,解決了目前由于算法的固定而引起的安全隱患;同時,由于算法的唯一性,即每個用戶對應的算法都不相同,算法同樣安全性能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而提高了算法在使用過程中的安全性,如通過本發(fā)明的算法進行安全認證,避免了安全隱患。
[0025]優(yōu)選地,通過一預設重構(gòu)機制重構(gòu)第一算法至少包括以下一個步驟:
[0026]根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法的運算順序;
[0027]根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及所述分組數(shù)據(jù)塊的運算順序;
[0028]根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法中的固定參數(shù)。
[0029]由于事先生成的隨機數(shù)為不可預知的字符串,這就使得密鑰參數(shù)字符串是不可預知的,從而每個根據(jù)密鑰參數(shù)進行算法重構(gòu)的算法的運算順序或分組數(shù)據(jù)塊結(jié)構(gòu)不同或運算順序不同或算法的固定參數(shù)不同,提高了算法的復雜度,進而提高了動態(tài)令牌的安全性。
[0030]優(yōu)選地,所述方法還包括:根據(jù)用戶信息下發(fā)所述第一算法。
[0031]優(yōu)選地,所述算法重構(gòu)方法重構(gòu)所述第一算法之前,至少還包括以下步驟:
[0032]預存所述第一算法,所述預設重構(gòu)機制以及與所述用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
[0033]本發(fā)明能夠帶來以下有益效果:
[0034]在本發(fā)明中,由于獲取的用戶信息的唯一性,因而根據(jù)該用戶信息生成密鑰參數(shù)是唯一且不可預見的,這樣就確保了根據(jù)密鑰參數(shù)重構(gòu)的算法的唯一性,即每個用戶對應的重構(gòu)后的算法都不相同,因而算法的安全性大大提高能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而用戶能夠放心的使用經(jīng)過本發(fā)明的算法重構(gòu)裝置重構(gòu)后的算法;同時,由于本發(fā)明中重構(gòu)后的算法與用于的唯一性,大大擴展了算法的應用領(lǐng)域,如應用于認證領(lǐng)域,避免了由于固定的算法而引起的安全隱患。
【專利附圖】
【附圖說明】
[0035]下面結(jié)合附圖和【具體實施方式】對本發(fā)明作進一步詳細說明:
[0036]圖1為本發(fā)明中算法重構(gòu)裝置第一實施例的結(jié)構(gòu)圖;
[0037]圖2為本發(fā)明實施例密鑰參數(shù)的結(jié)構(gòu)圖;
[0038]圖3為本發(fā)明中算法重構(gòu)裝置第二實施例的結(jié)構(gòu)圖;
[0039]圖4為本發(fā)明中算法重構(gòu)裝置第三實施例的結(jié)構(gòu)圖;
[0040]圖5為本發(fā)明中算法重構(gòu)裝置第四實施例的結(jié)構(gòu)圖
[0041]圖6為本發(fā)明實施例動態(tài)令牌算法重構(gòu)方法的流程圖。
【具體實施方式】
[0042]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0043]作為具體實施例一,如圖1所示,為本發(fā)明實施例一種算法重構(gòu)裝置,具體包括:隨機數(shù)生成模塊,用戶根據(jù)獲取的用戶信息生成隨機數(shù),所述隨機數(shù)被設定為密鑰參數(shù);算法重構(gòu)模塊,與所述隨機數(shù)生成模塊連接,用于通過一預設重構(gòu)機制重構(gòu)第一算法。具體地,在本實施例中,用戶信息包括用戶名、密碼、手機號等,密鑰參數(shù)可以使用8(0-7)進制數(shù)進行表示;當隨機數(shù)生成模塊獲取了用戶信息之后,隨即根據(jù)用戶信息隨機生成相應的密鑰參數(shù),算法重構(gòu)模塊則結(jié)合密鑰參數(shù)和預設重構(gòu)機制對內(nèi)部存儲的第一算法進行重構(gòu)。特別地,在本發(fā)明中,對用戶信息的具體內(nèi)容不作限定,只要其能唯一標識該用戶,都包括在本發(fā)明的內(nèi)容中。
[0044]根據(jù)上述技術(shù)方案,由于每個令牌的用戶信息是唯一的,而根據(jù)該用戶信息生成的隨機數(shù)即密鑰參數(shù)是唯一且不可預見的,同時該動態(tài)令牌的令牌算法與該密鑰參數(shù)對應,這就確保每個動態(tài)令牌的令牌算法也是唯一的,從而使得該動態(tài)令牌生成的動態(tài)口令復雜度大大提高,使動態(tài)令牌的安全性更高,進而提高了使用動態(tài)口令進行認證的系統(tǒng)的安全性,避免安全隱患,給用戶帶來更好的使用體驗。
[0045]進一步地,上述算法重構(gòu)模塊中至少包括以下一個單元:
[0046]運算順序單元,用于根據(jù)密鑰參數(shù)確定重構(gòu)后的第一算法的運算順序;
[0047]分組單元,用于根據(jù)密鑰參數(shù)確定重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及分組數(shù)據(jù)塊的運算順序;
[0048]固定參數(shù)確定單元,用于根據(jù)密鑰參數(shù)確定重構(gòu)后的第一算法中的固定參數(shù)。
[0049]具體地,在本發(fā)明中,預設重構(gòu)機制主要通過上述三種方式進行實現(xiàn),分別是改變第一算法的運算順序、分組數(shù)據(jù)塊結(jié)構(gòu)和順序以及第一算法中包括的固定參數(shù),且為了進一步保障重構(gòu)后的算法的唯一性和不可預見性,在本發(fā)明中,預設重構(gòu)機制結(jié)合隨機生成模塊生成的密鑰參數(shù)對算法進行重構(gòu)。具體地,假設密鑰參數(shù)為8個字節(jié),其中,第一位代表運算順序,第二位代表分組數(shù)據(jù)塊,第三位代表固定參數(shù),如圖2所示,將其帶入預設重構(gòu)機制,通過預設重構(gòu)機制對第一算法進行重構(gòu)生成一個與用戶信息相關(guān)的新算法,由此可以看出,由于密鑰參數(shù)的隨機性,即其中包括的每個字節(jié)的參數(shù)都是隨機的,因而將其帶入預設重構(gòu)機制對第一算法進行重構(gòu)后的算法即具備了隨機性,即每個用戶對應的重構(gòu)后的算法都不相同,因而算法的安全性能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而提高了使用動態(tài)口令進行認證的過程中的安全性,避免了安全隱患。
[0050]進一步地,以通過改變運算順序重構(gòu)第一算法來說:假定某一算法的一般運算順序依次包括W0,W1,W2,W3四個主步驟,且每個步驟中分別包括相應的子步驟,如Wl中包括t0,tl,t2, t3, t4五個子步驟,在本發(fā)明中,即可以通過密鑰參數(shù)中的某一位代表運算順序,以改變該算法的運算順序,從而生成新的算法,具體地,如果密鑰參數(shù)為01234567,其中,第一位代表運算順序,若此時第一位代表的Wl中子步驟的運算順序,則表示to為五個子步驟中的第一個運算步驟,同理,若第一位代表主步驟的運算順序,則表示W(wǎng)l為則說明在主步驟Wl為第一運算步驟;如果密鑰參數(shù)為21304567,且第一位代表運算順序,若此時第一位代表主步驟的運算順序,則表示步驟W2為主步驟中的第一運算步驟,同理,若此時第一位代表Wl中子步驟的運算順序,則表示步驟t2為五個子步驟中的第一個運算步驟。特別地,在本發(fā)明中,密鑰參數(shù)采用八進制數(shù)表示,假若此時密鑰參數(shù)中代表運算順序的位數(shù)大于算法運算過程中的步驟數(shù)量,如,密鑰參數(shù)為76543210,第一位7代表運算順序,而此時算法的主步驟只有Wl,W2,W3,W4四個步驟,算法在運行的過程中,找不到步驟W7作為第一運算步驟,則此時自動跳過,直接按照原順序進行運行。在本發(fā)明中,對上述的算法及密鑰參數(shù)對算法運算順序的改變都不作限定,只要運算順序改變后算法的作用不變,能達到最初的目的,都包括在本發(fā)明的內(nèi)容中。
[0051]進一步地,以通過改變分組數(shù)據(jù)塊的結(jié)構(gòu)和運算順序重構(gòu)第一算法來說:其中,改變分組數(shù)據(jù)塊的結(jié)構(gòu)包括分組數(shù)據(jù)塊的數(shù)量也包括數(shù)據(jù)塊內(nèi)部的結(jié)構(gòu)的變化。例如:可以根據(jù)密鑰參數(shù)中某一位字節(jié)代表分組模塊的內(nèi)部結(jié)構(gòu)的改變,另一位代表重新分組過后的分組模塊的運算順序帶入第一算法的運算從而生成新的算法。以SM3雜湊算法為例,SM3的一般運算順序依次是:填充、分組、迭代、壓縮,假若用戶信息m的長度為24bit,則算法在運算的過程中首先對信息進行填充,填充后的數(shù)據(jù)m’的長度為512bit的整數(shù)倍,隨后對填充后的數(shù)據(jù)按照512bit進行分組,即分組后的每組數(shù)據(jù)為512b it,m,=B(V1)-Bto'具體地,在本發(fā)明中,假若分組后的數(shù)據(jù)塊B(°) = [mO, ml, m2,m3…m7],密鑰參數(shù)為01234567,且第一位代表分組數(shù)據(jù)塊的運算順序,第二代表分組數(shù)據(jù)塊的結(jié)構(gòu),則此時在運算過程中數(shù)據(jù)組ml與mO的位置進行對換以此改變數(shù)據(jù)塊的結(jié)構(gòu),O表示第一個數(shù)據(jù)塊B(°)在第一步進行運算;類似地,若密鑰參數(shù)為24653107,則在運算過程中m4與mO的位置進行對換來改變數(shù)據(jù)塊的結(jié)構(gòu),2表示B(°)在第三步進行運算。當然,在本發(fā)明中,我們對改變數(shù)據(jù)塊結(jié)構(gòu)的方法不作具體限定,即在上述例子中,當密鑰參數(shù)為01234567時,代表ml可以與m0_m7中任一數(shù)組進行對換,在實際中數(shù)據(jù)組的對換取決于預設重構(gòu)機制的設定。又例如,在本發(fā)明中,可以根據(jù)密鑰參數(shù)中某一字節(jié)代表分組數(shù)據(jù)塊的數(shù)量,另一位代表重新分組過后的分組數(shù)據(jù)塊的運算順序帶入第一算法的運算從而生成新的算法,以SM3雜湊算法為例,在改變分組數(shù)據(jù)塊的數(shù)量的過程中,假如用戶信息m的長度為370bit,按照SM3傳統(tǒng)的算法會首先將信息m進行填充為512bit的數(shù)據(jù),而在本發(fā)明中,可以首先將370bit的數(shù)據(jù)按照定長(如,每組200BU)的數(shù)據(jù)組進行分組,隨后再將分組過后的每組數(shù)據(jù)進行填充為512bit以改變分組數(shù)據(jù)塊的結(jié)構(gòu),隨后再按照SM3正常的步驟進行運算,當然,在本發(fā)明中,我們對上述的數(shù)據(jù)組的定長不作限定,只要其能達到本發(fā)明的目的,都包括在本發(fā)明的內(nèi)容中。
[0052]進一步地,以改變固定參數(shù)來說:可以將密鑰參數(shù)中的某一個位代表固定參數(shù),參與到預設重構(gòu)機制的編程運算中改變固定參數(shù)。以橢圓曲線算法為例:Y2 = X3+aX+b,以密鑰參數(shù)的某一位代表固定參數(shù),參與到預設重構(gòu)機制的編程運算中改變固定參數(shù)a或者b的值,從而形成新算法。如密鑰參數(shù)用01234567來表示,且第三位固定參數(shù)2作為a的值,從而改變第一算法生成的新的算法即為Y2 = X3+2X+b。
[0053]進一步地,如圖3所示,裝置還包括信息獲取模塊,與隨機數(shù)生成模塊連接,用于獲取用戶信息,特別地,在發(fā)明中,用戶信息包括用戶名、密碼、手機號等。具體地,當信息獲取模塊獲取了用戶信息之后,隨即將用戶信息發(fā)送至隨機數(shù)生成模塊,隨機數(shù)生成模塊獲取了用戶信息之后,即根據(jù)用戶信息隨機生成相應的密鑰參數(shù),算法重構(gòu)模塊則結(jié)合密鑰參數(shù)和預設重構(gòu)機制對內(nèi)部存儲的第一算法進行重構(gòu)。特別地,在本發(fā)明中,對用戶信息的具體內(nèi)容不作限定,只要其能唯一標識該用戶,都包括在本發(fā)明的內(nèi)容中。
[0054]進一步地,如圖4所示,裝置還包括存儲模塊,用于存儲第一算法,預設重構(gòu)機制以及與用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。具體地,在本發(fā)明中,在對第一算法進行重構(gòu)之前,首先在存儲模塊中存儲第一算法以及預設重構(gòu)裝置;當信息獲取模塊獲取到了用戶信息之后,隨即將用戶信息發(fā)送至隨機數(shù)生成模塊生成密鑰參數(shù),最后連同用戶信息與密鑰參數(shù)一起發(fā)送至存儲模塊,存儲模塊首先將密鑰參數(shù)與用戶信息進行關(guān)聯(lián),隨后存儲與用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
[0055]進一步地,如圖5所示,裝置還包括下發(fā)模塊,分別與信息獲取模塊和存儲模塊連接,用于根據(jù)用戶信息下發(fā)第一算法。具體地,在本發(fā)明中,在存儲模塊中包括很多種類的第一算法,如SM3,SM4等,用戶可以在對需要重構(gòu)的算法進行自主的選擇,下發(fā)模塊接收到用戶信息之后,針對用戶信息中的請求信息將信號發(fā)送至存儲模塊,從存儲模塊中存儲的第一算法進行選擇,最后將用戶選擇的第一算法發(fā)送至算法重構(gòu)模塊中進行重構(gòu)。特別地,在本發(fā)明中,如若存儲模塊中沒有預先存儲用戶需要的第一算法,則下發(fā)模塊還能夠通過內(nèi)部存儲的通信單元與外界通信,對所述的算法進行下載。
[0056]如圖6所示,為了實現(xiàn)本發(fā)明的發(fā)明目的,本發(fā)明還提供了一種重構(gòu)方法,方法包括:
[0057]S101.根據(jù)用戶信息生成一隨機數(shù),隨機數(shù)被設定為一密鑰參數(shù);;
[0058]S102.根據(jù)密鑰參數(shù),通過一預設重構(gòu)機制重構(gòu)第一算法。
[0059]根據(jù)上述技術(shù)方案,由于每個令牌的用戶信息是唯一的,而根據(jù)該用戶信息生成的隨機數(shù)即密鑰參數(shù)是唯一且不可預見的,同時該動態(tài)令牌的令牌算法與該密鑰參數(shù)對應,這就確保每個動態(tài)令牌的令牌算法也是唯一的,從而使得該動態(tài)令牌生成的動態(tài)口令復雜度大大提高,使動態(tài)令牌的安全性更高,進而提高了使用動態(tài)口令進行認證的系統(tǒng)的安全性,避免安全隱患,給用戶帶來更好的使用體驗。
[0060]進一步地,上述方法通過一預設重構(gòu)機制重構(gòu)第一算法至少包括以下一個步驟:
[0061]根據(jù)密鑰參數(shù),確定重構(gòu)后的第一算法的運算順序;
[0062]根據(jù)密鑰參數(shù),確定重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及分組數(shù)據(jù)塊的運算順序;
[0063]根據(jù)密鑰參數(shù),確定重構(gòu)后的第一算法中的固定參數(shù)。
[0064]具體地,在本發(fā)明中,預設重構(gòu)機制主要通過上述三種方式進行實現(xiàn),分別是改變第一算法的運算順序、分組數(shù)據(jù)塊結(jié)構(gòu)和順序以及第一算法中包括的固定參數(shù),且為了進一步保障重構(gòu)后的算法的唯一性和不可預見性,在本發(fā)明中,預設重構(gòu)機制結(jié)合隨機生成模塊生成的密鑰參數(shù)對算法進行重構(gòu)。具體地,假設密鑰參數(shù)為8個字節(jié),其中,第一位代表運算順序,第二位代表分組數(shù)據(jù)塊,第三位代表固定參數(shù),如圖2所示,將其帶入預設重構(gòu)機制,通過預設重構(gòu)機制對第一算法進行重構(gòu)生成一個與用戶信息相關(guān)的新算法,由此可以看出,由于密鑰參數(shù)的隨機性,即其中包括的每個字節(jié)的參數(shù)都是隨機的,因而將其帶入預設重構(gòu)機制對第一算法進行重構(gòu)后的算法即具備了隨機性,即每個用戶對應的重構(gòu)后的算法都不相同,因而算法的安全性能高,難以破譯,即使不法分子破解了一個用戶,也不會影響其他用戶,進而提高了使用動態(tài)口令進行認證的過程中的安全性,避免了安全隱患。預設重構(gòu)機制在裝置中已經(jīng)進行描述,再此不做贅述。
[0065]進一步地,本發(fā)明的方法中還包括:根據(jù)用戶信息下發(fā)第一算法。具體地,在本發(fā)明中,用戶可以在對需要重構(gòu)的算法進行自主的選擇。
[0066]進一步地,本發(fā)明的方法中還包括:算法重構(gòu)方法重構(gòu)第一算法之前,至少還包括以下步驟:預存第一算法,預設重構(gòu)機制以及與用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
[0067]以上所述僅是本發(fā)明的優(yōu)選實施方式,應當指出,對于本【技術(shù)領(lǐng)域】的普通技術(shù)人員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應視為本發(fā)明的保護范圍。
【權(quán)利要求】
1.一種算法重構(gòu)裝置,其特征在于,所述裝置包括: 隨機數(shù)生成模塊,根據(jù)獲取的用戶信息生成隨機數(shù),所述隨機數(shù)被設定為密鑰參數(shù); 算法重構(gòu)模塊,與所述隨機數(shù)生成模塊連接,用于通過一預設重構(gòu)機制重構(gòu)第一算法。
2.如權(quán)利要求1所述算法重構(gòu)裝置,其特征在于:所述算法重構(gòu)模塊中至少包括以下一個單元: 運算順序單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法的運算順序; 分組單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及所述分組數(shù)據(jù)塊的運算順序; 固定參數(shù)確定單元,用于根據(jù)所述密鑰參數(shù)確定所述重構(gòu)后的第一算法中的固定參數(shù)。
3.如權(quán)利要求1或2所述算法重構(gòu)裝置,其特征在于:所述裝置還包括信息獲取模塊,與所述隨機數(shù)生成模塊連接,用于獲取所述用戶信息。
4.如權(quán)利要求3所述算法重構(gòu)裝置,其特征在于:所述裝置還包括存儲模塊,用于存儲所述第一算法,所述預設重構(gòu)機制以及與所述用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
5.如權(quán)利要求4所述算法重構(gòu)裝置,其特征在于:所述裝置還包括下發(fā)模塊,分別與所述信息獲取模塊和所述存儲模塊連接,用于根據(jù)所述用戶信息下發(fā)所述第一算法。
6.一種算法重構(gòu)方法,其特征在于,所述方法至少包括以下步驟: 根據(jù)用戶信息生成一隨機數(shù),所述隨機數(shù)被設定為一密鑰參數(shù); 根據(jù)所述密鑰參數(shù),通過一預設重構(gòu)機制重構(gòu)第一算法。
7.如權(quán)利要求6所述算法重構(gòu)方法,其特征在于,通過一預設重構(gòu)機制重構(gòu)第一算法至少包括以下一個步驟: 根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法的運算順序; 根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法的分組數(shù)據(jù)塊的結(jié)構(gòu)以及所述分組數(shù)據(jù)塊的運算順序; 根據(jù)所述密鑰參數(shù),確定重構(gòu)后的第一算法中的固定參數(shù)。
8.如權(quán)利要求6或7所述算法重構(gòu)方法,其特征在于,所述方法還包括: 根據(jù)用戶信息下發(fā)所述第一算法。
9.如權(quán)利要求8所述算法重構(gòu)方法,其特征在于,所述算法重構(gòu)方法重構(gòu)所述第一算法之前,至少還包括以下步驟: 預存所述第一算法,所述預設重構(gòu)機制以及與所述用戶信息唯一關(guān)聯(lián)的密鑰參數(shù)。
【文檔編號】H04L9/14GK104393991SQ201410727339
【公開日】2015年3月4日 申請日期:2014年12月3日 優(yōu)先權(quán)日:2014年12月3日
【發(fā)明者】談劍鋒, 尤磊, 王力, 錢金金 申請人:上海眾人科技有限公司