一種基于應用平臺登錄的安全認證系統及其認證方法
【技術領域】
[0001]本發明涉及通信技術領域,尤其涉及一種基于應用平臺登錄的安全認證系統及其認證方法。
【背景技術】
[0002]隨著信息科技的發展,信息安全技術在各領域的應用更為廣泛和深入。在信息安全領域,安全認證往往是信息系統使用的第一把鑰匙,其安全性受到越來越多的重視。相應地,為了加強安全認證過程中的安全性的動態口令技術已經越來越多地應用于各個不同領域,尤其在網銀、網游、電信運營商、電子政務、企業服務器等應用領域。
[0003]動態口令是根據專門的算法生成一個不可預測的隨機數字組合,一個密碼使用一次有效,其是一種安全便捷的帳號防盜技術,可以有效保護交易和登錄的認證安全。且在認證過程中,采用動態口令認證無需定期修改密碼,安全省心,從而在最基本的密碼認證這一環節保證了系統的安全性,解決了因口令欺詐而導致的重大損失,防止惡意入侵者或人為破壞,解決由口令泄密導致的入侵問題。
[0004]然而,在現有的認證系統中,無論是實體硬件動態令牌還是軟件動態令牌,都有一個共同的弱點,即其所有的令牌算法都是相同且公開的,僅通過密鑰來實現不同用戶的身份認證過程。比如說,在用戶在移動終端中登錄銀行系統中,只要在登錄頁面輸入用戶名和登錄密碼,之后服務器中進行驗證之后發送動態的短信驗證碼進行驗證之后即可登錄。可以看出,其對于每個移動終端的登錄機制都是相同的,一旦生成短信驗證碼的密鑰被非法獲得,不法分子即可任意獲取動態密碼,動態令牌將不再安全。
【發明內容】
[0005]針對上述問題,本發明提供了一種基于應用平臺登錄的安全認證系統及其認證方法,其在登錄應用平臺的過程中,輸入用戶名和登錄密碼提交應用平臺進行認證的同時,在客戶端本地安全插件中生成增強型的認證碼對客戶端進行安全認證,以保障用戶的安全。
[0006]本發明提供的技術方案如下:
[0007]—種基于應用平臺登錄的安全認證系統,包括:客戶端、應用平臺以及認證平臺,其中,
[0008]所述客戶端中包括:用于獲取用戶信息的信息獲取模塊和第一存儲模塊,所述第一存儲模塊中存有用于生成第一認證碼的安全插件,且所述安全插件中內置與用戶唯一關聯的運算算法;
[0009]與所述客戶端通信連接的所述應用平臺中包括:第一認證模塊、第一隨機數生成模塊以及分別與所述第一認證模塊和所述第一隨機數生成模塊連接的第二存儲模塊,所述第一隨機數生成模塊用于生成一隨機參數并將所述隨機參數存儲在所述第二存儲模塊中,所述第一認證模塊用于認證所述用戶信息和所述隨機參數;
[0010]與所述應用平臺通信連接的所述認證平臺中包括:第三存儲模塊、與所述第三存儲模塊連接的第二認證模塊和與所述第二認證模塊連接的反饋模塊;所述第三存儲模塊中存有用于生成第二認證碼的所述安全插件;所述第二認證模塊基于所述第二認證碼實現所述第一認證碼的認證;所述反饋模塊用于分別將第二認證模塊中的認證結果返回到所述應用平臺和所述客戶端中。
[0011]在本技術方案中,客戶端中和認證平臺中都包括內置了唯一與用戶關聯的運算算法的安全插件,用戶在登錄應用平臺的過程中,除了跟現有的登錄步驟類似的,需要驗證用戶名和登錄密碼之外,還需要驗證安全插件中生成的唯一的認證碼(客戶端中生成的第一認證碼)。由于運算算法的唯一性,即每個用戶對應自己的運算算法,難以破譯,自然大大提高了認證過程中的安全性。
[0012]進一步優選地,在所述客戶端中:
[0013]所述用戶信息包括:用戶名、登錄密碼以及用于唯一標識用戶的標識信息;所述標識信息為國際移動設備標識或通用唯一識別碼;
[0014]所述安全插件將所述應用平臺發送的所述隨機參數作為計算因子、使用所述運算算法生成所述第一認證碼。
[0015]在本技術方案中,在生成第一認證碼的過程中將應用平臺中生成的隨機參數作為安全因子進行計算,由于隨機參數的隨機性和不可預見性,同樣提高了認證系統的安全性會K。
[0016]進一步優選地,所述第二存儲模塊還用于存儲注冊用戶列表;
[0017]所述第一認證模塊基于所述注冊用戶列表,認證客戶端發送的用戶信息中的用戶名和登錄密碼;
[0018]所述第一認證模塊基于所述客戶端發送的隨機參數和存儲在存儲模塊中的隨機參數,完成所述隨機參數的認證。
[0019]進一步優選地,在所述認證平臺中:
[0020]所述安全插件將所述應用平臺發送的隨機參數作為計算因子、使用所述運算算法生成第二認證碼。
[0021]在本技術方案中,在生成第二認證碼的過程中同樣將應用平臺中生成的隨機參數作為安全因子進行計算。
[0022]進一步優選地,所述第三存儲模塊中還內存有一預設算法;
[0023]且所述認證平臺中還包括:第二隨機數生成模塊、算法生成模塊以及編譯模塊;其中,
[0024]所述第二隨機數生成模塊基于所述標識信息生成隨機密鑰;
[0025]所述算法生成模塊,分別與所述第二存儲模塊和所述第二隨機數生成模塊連接,所述算法生成模塊基于所述隨機密鑰和所述預設算法生成所述運算算法;
[0026]所述編譯模塊,與所述算法生成模塊連接,所述編譯模塊將所述算法生成模塊生成的所述運算算法編譯為所述安全插件,并通過反饋模塊將所述安全插件經由所述應用平臺返回至客戶端中。
[0027]在本技術方案中,用戶在該應用平臺進行注冊的過程中,即通過認證平臺生成安全插件,并將安全插件返回到客戶端中進行存儲,這樣用戶在登錄在應用平臺的時候就會調用該安全插件生成增強型的認證碼,以保證用戶信息的安全性能。
[0028]進一步優選地,所述算法生成模塊中包括:
[0029]用于根據所述隨機密鑰確定所述運算算法的運算優先級的優先級確定單元;
[0030]和/或,
[0031]用于根據所述隨機密鑰確定所述運算算法的分組結構及所述分組結構的運算優先級的結構確定單元;
[0032]和/或,
[0033]用于根據所述隨機密鑰確定所述運算算法的運算參數的參數確定單元。
[0034]在本技術方案中,通過以上三種方式得到運算算法。
[0035]本發明還提供了一種基于應用平臺登錄的安全認證方法,應用于上述安全認證系統,所述安全認證方法包括以下步驟:
[0036]SI客戶端獲取用戶名和登錄密碼,并將所述用戶名和登錄密碼發送到應用平臺;
[0037]S2所述應用平臺完成所述用戶名和登錄密碼的認證,且在認證成功后隨機生成一隨機參數,并將所述隨機參數進行存儲之后發送至所述客戶端;
[0038]S3所述客戶端將所述隨機參數作為計算因子、使用內置的運算算法生成第一認證碼,并將所述第一認證碼和所述隨機參數發送至所述應用平臺;
[0039]S4所述應用平臺將接收到的隨機參數和自身存儲的隨機參數進行比對,完成所述隨機參數的認證,且在認證成功后將所述第一認證碼和所述隨機參數發送至所述認證平臺;
[0040]S5所述認證平臺將接收到的隨機參數作為計算因子、使用所述運算算法生成第二認證碼,并將生成的第二認證碼與接收到的第一認證碼進行比對;
[0041 ] S6所述認證平臺將所述認證結果返回到所述應用平臺和所述客戶端中。
[0042 ] 進一步優選地,在步驟SI之前,還包括以下步驟:
[0043]SOl客戶端獲取所述用戶名和登錄密碼,并將所述用戶名和登錄密碼以及注冊請求發送到所述應用平臺;
[0044]S02所述應用平臺接收到所述注冊請求,同時對接收到的用戶名進行驗證;
[0045]S03所述用戶名驗證通過之后,所述應用平臺將所述用戶名和所述登錄密碼關聯存儲在當前注冊用戶列表中形成新的注冊用戶列表,并將驗證結果返回至所述客戶端;
[0046]S04所述客戶端接收所述驗證結果,進而獲取唯一標識用戶的標識信息;并將所述標識信息和驗證碼請求發送至所述應用平臺;
[0047]S05所述應用平臺接收所述驗證碼請求之后,隨機生成驗證碼發送至所述客戶端;
[0048]S06所述客戶端接收并顯示所述驗證碼,同時基于接收到的所述驗證碼發送驗證碼認證請求至所述應用平臺;
[0049]S07所述應用平臺接收所述驗證碼認證請求,并對所述驗證碼進行認證;若認證成功,發送標識信息和安全插件生成請求至認證平臺;
[0050]S08認證平臺接收所述安全插件生成請求,基于所述標識信息和內置的預設算法生成運算算法;
[0051]S09所述認證平臺將所述運算算法編程成安全插件,并將所述安全插件經由所述應用平臺返回至