一種令牌種子的更新方法、裝置和相關設備的制造方法
【專利摘要】本發(fā)明公開了一種令牌種子的更新方法、裝置和相關設備,令牌側的更新方法,包括:接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器,降低因初始種子外泄而帶來的風險,增加用戶信息的安全性。
【專利說明】
一種令牌種子的更新方法、裝置和相關設備
技術領域
[0001]本發(fā)明涉及信息安全技術領域,尤其涉及一種令牌種子的更新方法、裝置和相關設備。
【背景技術】
[0002]隨著互聯(lián)網技術的發(fā)展,網上交易等普及度越來越高,靜態(tài)密碼已不再安全,動態(tài)密碼技術包括動態(tài)令牌種子能夠確保用戶的合法身份,防止信息泄露,保證網絡交易的安全性。
[0003]動態(tài)口令令牌是安全產品生產商生產的,生產商使用種子生產工具為每個令牌生成種子,并通過硬件接口將唯一的種子寫入到令牌中,同時為每個令牌編號,將編號與種子互相對應,在將動態(tài)口令令牌銷售給服務商的時候,同時將對應的種子分發(fā)給服務商,服務商將令牌分發(fā)給用戶進行身份認證使用。并且,通常情況下,服務商不具有更改令牌中種子的硬件接口,無法對種子進行更新,因此產生了安全漏洞。在此情況下,令牌生產商可以在令牌生產的過程中對種子進行復制,可以模擬令牌生成動態(tài)口令,對用戶的信息安全和服務商的信譽造成威脅。一旦令牌廠商將初始密鑰外泄或令牌服務器數據庫被人攻破導致種子密鑰外泄,將會給用戶信息的安全性造成重大威脅。
【發(fā)明內容】
[0004]本發(fā)明實施例提供一種令牌種子的更新方法、裝置和相關設備,用以解決現(xiàn)有技術中存在的因初始種子外泄而帶來用戶信息不安全問題,使得用戶能夠根據需要安全地更新動態(tài)令牌的種子,增加用戶信息的安全性。
[0005]在本發(fā)明實施方式的第一方面中,提供了一種服務器側實施的令牌種子的更新方法,包括:
[0006]在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;
[0007]利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;
[0008]利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;
[0009]將所述更新請求碼和第一更新確認碼返回給請求方;以及
[0010]接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;
[0011 ]如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0012]在本發(fā)明實施方式的第二方面中,提供了一種服務器側實施的令牌種子的更新裝置,包括:
[0013]獲得單元,用于在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;
[0014]第一處理單元,用于利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;
[0015]第二處理單元,用于利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;
[0016]發(fā)送單元,用于將所述更新請求碼和第一更新確認碼返回給請求方;
[0017]接收單元,用于接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;
[0018]更新單元,用于如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0019]在本發(fā)明實施方式的第三方面中,提供了一種服務器,包括上述服務器側實施的令牌種子的更新裝置。
[0020]在本發(fā)明實施方式的第四方面中,提供了一種令牌側實施的令牌種子的更新方法,包括:
[0021]接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及
[0022]利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;
[0023]利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;
[0024]如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;
[0025]利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0026]在本發(fā)明實施方式的第五方面中,提供了一種令牌側實施的令牌種子的更新裝置,包括:
[0027]第一接收單元,用于接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;
[0028]第一處理單元,用于利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;
[0029]第二處理單元,用于利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;
[0030]更新單元,用于如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;
[0031]第三處理單元,用于利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0032]在本發(fā)明實施方式的第六方面中,提供了一種令牌,包括上述令牌側實施的令牌種子的更新裝置。
[0033]在本發(fā)明實施方式的第七方面中,提供了一種令牌種子的更新裝置,例如,可以包括存儲器和處理器,其中,處理器可以用于讀取存儲器中的程序,執(zhí)行下列過程:在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;將所述更新請求碼和第一更新確認碼返回給請求方;以及接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0034]在本發(fā)明實施方式的第八方面中,提供了一種程序產品,其包括程序代碼,當所述程序產品運行時,所述程序代碼用于執(zhí)行以下過程:在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;將所述更新請求碼和第一更新確認碼返回給請求方;以及接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0035]在本發(fā)明實施方式的第九方面中,提供了另外一種令牌種子的更新裝置,例如,可以包括存儲器和處理器,其中,處理器可以用于讀取存儲器中的程序,執(zhí)行下列過程:接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0036]在本發(fā)明實施方式的第十方面中,提供了另外一種程序產品,其包括程序代碼,當所述程序產品運行時,所述程序代碼用于執(zhí)行以下過程:接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0037]本發(fā)明有益效果包括:
[0038]本發(fā)明實施例提供的令牌種子的更新方法、裝置和相關設備,為了提高用戶信息的安全性,令牌與服務器之間需進行密碼驗證,待服務器密碼驗證成功之后,服務器利用當前時間獲得更新請求碼,并利用第一預算算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼,并將更新請求碼和得到的第一更新確認碼返回給令牌,令牌側接收服務器發(fā)送的更新請求碼和第一更新確認碼,利用與服務器相同的第一預算算法對令牌存儲的初始種子和更新請求碼進行處理得到最終種子,并利用與服務器相同的第二預算算法對更新請求碼和最終種子進行處理得到第四更新請求碼,當令牌驗證第一更新確認碼和第四更新請求碼相同時,則利用最終種子更新存儲的初始種子,并利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并將得到的第二更新確認碼發(fā)送給服務器,服務器對接收到的第二更新確認碼進行驗證,驗證通過后,利用服務器得到的最終種子更新初始種子,基于此,服務器和令牌兩側完成了對最終種子的更新,使得用戶可以根據需要動態(tài)更新令牌種子,提高了用戶信息的安全性。
[0039]本申請的其它特征和優(yōu)點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本申請而了解。本申請的目的和其他優(yōu)點可通過在所寫的說明書、權利要求書、以及附圖中所特別指出的結構來實現(xiàn)和獲得。
【附圖說明】
[0040]附圖用來提供對本發(fā)明的進一步理解,并且構成說明書的一部分,與本發(fā)明實施例共同用于解釋本發(fā)明,并不構成對本發(fā)明的限制。在附圖中:
[0041]圖1a為本發(fā)明實施例提供的令牌種子的更新方法的應用場景示意圖;
[0042]圖1b為本發(fā)明實施例提供的令牌種子的更新方法的實施流程示意圖;
[0043]圖1c為本發(fā)明實施例提供的令牌種子的更新方法中服務器側對第二更新確認碼進行驗證的實施流程示意圖;
[0044]圖2為本發(fā)明實施例提供的服務器側令牌種子的更新方法的實施流程示意圖;
[0045]圖3為本發(fā)明實施例提供的令牌側令牌種子的更新方法的實施流程示意圖;
[0046]圖4為本發(fā)明實施例提供的服務器側令牌種子的更新裝置的結構示意圖;
[0047]圖5為本發(fā)明實施例提供的令牌側令牌種子的更新裝置的結構示意圖;
[0048]圖6為本發(fā)明實施例提供的令牌種子的更新裝置的結構示意圖。
【具體實施方式】
[0049]為了使用戶可以根據需要動態(tài)更新令牌種子,提高用戶信息的安全性,本發(fā)明實施例提供了一種令牌種子的更新方法、裝置和系統(tǒng)。
[0050]以下結合說明書附圖對本發(fā)明的優(yōu)選實施例進行說明,應當理解,此處所描述的優(yōu)選實施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。并且在不沖突的情況下,本申請中的實施例及實施例中的特征可以相互組合。
[0051]下面結合附圖,用具體實施例對本發(fā)明提供的方法及裝置和系統(tǒng)進行詳細描述。
[0052]首先參考圖la,其為本發(fā)明實施例提供的令牌種子更新的方法的應用場景示意圖,用戶100擁有令牌,用戶100擁有的令牌可以為令牌服務商(例如銀行等)提供給用戶的,每個令牌擁有唯一的令牌標識,該令牌標識可以為令牌序列號,也可以為利用令牌的某些特征信息采用一定的計算規(guī)則計算得到,只要能夠保證該令牌標識在網絡中是唯一的即可。
[0053]用戶100通過終端101中安裝的客戶端訪問在服務器102,其中,客戶端可以為網頁的瀏覽器,也可以為安裝于移動終端,如手機,平板電腦等中的客戶端。具體實施時,用戶100通過終端101中安裝的客戶端調用服務器102提供的令牌種子更新接口向服務器102發(fā)送令牌種子更新請求。其中,令牌種子更新流程與服務器中的種子更新流程相互獨立,兩者之間通過用戶提供的更新請求碼和更新確認碼等相關信息彼此進行驗證,以保證種子更新方法實施的安全性。
[0054]終端101與服務器102之間通過網絡進行通信連接,該網絡可以為局域網、廣域網等。終端101可以為便攜設備(例如:手機、平板、筆記本電腦等),也可以為個人電腦(PC,Personal Computer),在服務器102可以為任何能夠提供互聯(lián)網服務的設備。
[0055]下面結合圖1a的應用場景,參考圖1b-圖5來描述根據本發(fā)明示例性實施方式的令牌種子更新的方法。需要注意的是,上述應用場景僅是為了便于理解本發(fā)明的精神和原理而示出,本發(fā)明的實施方式在此方面不受任何限制。相反,本發(fā)明的實施方式可以應用于適用的任何場景。
[0056]實施例一、
[0057]如圖1b所示,為本發(fā)明實施例提供的令牌種子的更新方法的實施流程示意圖,可以包括以下步驟:
[0058]S11、令牌接收用戶輸入生成第一密碼的要素。
[0059]具體實施時,為了保證用戶信息的安全,需要用戶對令牌和服務器之間進行密碼驗證,驗證通過之后才能執(zhí)行更新令牌種子的操作,因此,需要用戶在令牌中輸入生成第一密碼的要素,該要素可以為用戶任意輸入的若干位隨機數,也可以由交易信息組成的,本發(fā)明實施例對此不進行限定。
[0060]S12、令牌利用預先存儲的初始種子、當前時間和接收的要素產生第一密碼并顯不O
[0061]令牌接收用戶輸入的生成第一密碼的要素后,利用令牌中預先存儲的初始種子和當前系統(tǒng)時間產生第一密碼并顯示給用戶。
[0062 ] S13、服務器接收種子更新請求。
[0063]本步驟中,用戶通過終端調用服務器提供的更新種子接口向服務器發(fā)送種子更新請求,所述種子更新請求中攜帶有令牌標識、第一密碼和生成第一密碼的要素。其中,用戶可以在服務器提供的接口頁面上輸入上述的令牌標識、第一密碼和生成第一密碼的要素,輸入完成后,將上述信息提交給服務器。
[0064]具體實施時,為了能夠使服務器便于區(qū)分接收到的種子更新請求來自于哪一個用戶,用戶在通過更新種子接口向服務器發(fā)送種子更新請求時,需攜帶有令牌標識,進一步地,為了能夠完成令牌與服務器之間的密碼驗證,還需要在種子更新請求中攜帶第一密碼和生成第一密碼的要素。
[0065]S14、服務器利用種子更新請求中攜帶的生成第一密碼的要素和服務器中存儲的初始種子對第一密碼進行驗證。
[0066]具體實施時,服務器接收到用戶通過更新種子接口發(fā)送的令牌標識、第一密碼和生成第一密碼的要素后,利用令牌標識查找到對應于該令牌的預先存儲的初始種子,服務器利用該初始種子和接收到的生成第一密碼的要素和當前時間生成第二密碼,服務器驗證該生成的第二密碼與接收到的第一密碼是否相同,如果第二密碼與第一密碼相同,則確定密碼驗證通過,至此完成了服務器與令牌之間的密碼驗證,保證了用戶信息的安全。
[0067]需要說明的是,令牌生成第一密碼和服務器生成第二密碼所使用的算法是相同的,以可以為現(xiàn)有的常見密碼生成算法,本發(fā)明實施例對此不進行限定。
[0068]具體實施時,如果第二密碼與第一密碼不相同,則服務器可以提示用戶對令牌進行時間校準操作后再試,較佳地,服務器可以通過彈框消息提示用戶,用戶根據提示消息手動同步令牌時間,然后再重復Sll?S14步驟,直到服務器密碼驗證通過。
[0069]S15、服務器利用當前時間獲取更新請求碼。
[0070]具體實施時,當服務器完成密碼驗證后,獲取當前時間,將當前時間轉換為格林威治時間,將其確認為更新請求碼;較佳地,為了保證更新令牌種子具有一定的時效性,還可以利用當前時間和預設更新請求碼的有效時間獲得更新請求碼,具體為:將所述當前時間進行換算得到第一計算結果,并將所述第一計算結果加上所述預設更新請求碼的有效時間確認為所述更新請求碼。
[0071]較佳地,該更新請求碼可以但不限于包括8位,將獲取的當前時間轉換為格林威治時間,并換算為分鐘數,取8位時間值作為更新請求碼,或者在取得8位時間值之后,加上預設更新請求碼的有效時間作為更新請求碼,其中,預設更新請求碼的有效時間可以但不限于包括5分鐘,即獲得的該更新請求碼在5分鐘之內時有效的,超過5分鐘就會失效,需重新獲取更新請求碼,再執(zhí)行后續(xù)操作,保證了更新令牌種子的時效性。
[0072]為了描述方便,本發(fā)明實施例以更新請求碼為8位、預設更新請求碼的有效時間為5分鐘為例進行說明。
[0073]S16、服務器利用第一預設算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,并將得到的最終種子存儲到臨時區(qū)域內。
[0074]具體實施時,第一預設算法可以但不限于包括SM3(Cryptographic HashAlgorithm,密碼雜湊算法)和HMAC-SHA1 (Keyed-Hashing for Message Authenticat1nCode-Secure Hash Algorithm,基于加密hash函數和共享密鑰的消息認證)算法等,服務器利用該第一預設算法對令牌標識對應的初始種子和步驟S15獲得的8位更新請求碼進行處理得到最終種子,在此并不立即利用得到的最終種子對初始種子進行更新,還需要進一步進行驗證,因此將得到的最終種子存儲到臨時區(qū)域內,需要說明的是,在將得到的最終種子存儲到臨時區(qū)域內之前,還需檢測該臨時區(qū)域是否有數據存在,若檢測到臨時區(qū)域內有初始種子存在,則不能執(zhí)行存儲動作,此次種子更新操作失敗,且還需要提示服務器完成上一次初始種子的更新操作;若檢測出臨時區(qū)域內沒有種子存在,則將得到的最終種子存儲到臨時區(qū)域內。
[0075]具體實施時,臨時區(qū)域存儲有數據時,用戶無法使用令牌進行驗證交易,如果此時(即臨時區(qū)域存儲有數據)接收到交易請求則提示用戶先完成種子更新流程。
[0076]需要說明的是,本發(fā)明實施例涉及的最終種子并不是嚴格意義上的最后一個種子,是相對于此次更新種子操作中存儲的初始種子而言的,待此次更新操作完成之后,該最終種子就會變成下一次更新種子操作中的初始種子。
[0077]S17、服務器利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼。
[0078]具體地,在服務器利用第一預設算法得到最終種子后,再利用第二預設算法對得到的最終種子和8位更新請求碼進行處理,得到8位第一更新確認碼,需要說明的是,服務器所采用的第二預設算法可以與第一預設算法相同,也可以為其它算法,本發(fā)明對此不進行限定。
[0079]S18、服務器將所述更新請求碼和第一更新確認碼返回給請求方。
[0080]具體實施時,服務器將更新請求碼和第一更新確認碼返回給終端,由終端提供給用戶。
[0081]為了完成服務器和令牌兩側對最終種子的更新,保證用戶信息安全,服務器還需將步驟S15得到的8位更新請求碼和步驟S17得到的8位第一更新確認碼反饋給用戶,待用戶利用8位更新請求碼和8位第一更新確認碼執(zhí)行后續(xù)種子更新工作。
[0082]S19、令牌接收用戶輸入的更新請求碼和第一更新確認碼。
[0083]步驟S18中用戶通過終端獲得了服務器返回的更新請求碼和第一更新確認碼后,將獲得的更新請求碼和第一更新確認碼輸入令牌中。
[0084]S110、令牌利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子。
[0085]令牌接收到用戶輸入的更新請求碼后,利用第一預設算法對令牌中存儲的初始種子和更新請求碼進行處理得到最終種子,具體地,在對令牌和服務器中初始種子更新之前,該令牌和服務器中存儲的初始種子是相同的,更新請求碼是服務器發(fā)送的,則為了保證令牌側生成的最終種子與服務器側生成的最終種子相同,要求令牌側采用的第一預設算法和服務器側采用的第一預設算法相同,如果令牌側采用的第一預設算法和服務器側采用的第一預設算法不相同會導致種子更新失敗。
[0086]需要說明的是,令牌側采用的第一預設算法可以但不限于包括SM3算法和HMAC-SHAl算法等。
[0087]S111、令牌利用第二預設算法對更新請求碼和最終種子進行處理得到第四更新確認碼。
[0088]具體實施時,令牌側采用的第二預設算法應當與服務器側采用的第二預設算法相同,才能確保后續(xù)令牌側和服務器側的種子更新工作,該第二預設算法可以與第一預設算法相同,也可以采用其他算法來實現(xiàn),本發(fā)明實施例對此不進行限定。
[0089]S112、如果第一更新確認碼與第四更新確認碼相同,則令牌利用最終種子更新存儲的初始種子。
[0090]具體實施時,第一更新確認碼是由用戶從服務器側獲取的,第四更新確認碼是令牌根據與服務器側相同的第二預設算法對最終種子和更新請求碼進行處理得到的,當第一更新確認碼與第四更新確認碼相同時,令牌可以利用最終種子對存儲的初始種子進行更新。
[0091]S113、令牌利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼并顯示。
[0092]令牌側更新種子之后,還需要服務器側完成更新種子的操作,因此令牌側還需利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并顯示給用戶。
[0093]具體實施時,步驟SI 12和步驟SI 13沒有一定的先后執(zhí)行順序,步驟SI 12和步驟S113可以同時執(zhí)行,步驟S113也可以先于步驟S112執(zhí)行,本發(fā)明實施例對此不進行限定。
[0094]S114、服務器接收第二更新確認碼。
[0095]具體的,用戶讀取令牌顯示的第二確認碼,并通過終端調用服務器提供的更新種子接口,將得到的第二更新確認碼發(fā)送給服務器。
[0096]S115、服務器對第二更新確認碼進行驗證。
[0097]具體實施時,服務器接收到用戶發(fā)送的第二更新確認碼時,需要對第二更新確認碼進行驗證,服務器側可以按照如下方法對第二更新確認碼進行驗證:
[0098]如圖1c所示,為本發(fā)明實施例提供的令牌種子的更新系統(tǒng)中服務器側對第二更新確認碼進行驗證的實施流程示意圖,可以包括以下步驟:
[0099]S1151、服務器利用第三預設算法對第一更新確認碼和最終種子進行處理得到第三更新確認碼。
[0100]需要說明的是,為了保證服務器側能夠完成更新最終操作,所采用的第三預設算法應該與令牌側采用的第三預設算法相同。
[0101]S1152、如果第三更新確認碼與第二更新確認碼相同,則服務器確定對第二更新確認碼驗證通過。
[0102]S116、對第二更新確認碼驗證通過后,服務器利用最終種子更新存儲的初始種子,并刪除臨時區(qū)域內的最終種子。
[0103]具體實施時,當服務器驗證第三更新確認碼與第二更新確認碼相同時,則利用最終種子對服務器中存儲的初始種子進行更新,同時刪除臨時區(qū)域內的最終種子,至此,完成了本發(fā)明實施例提供的令牌種子更新系統(tǒng)中令牌側和服務器側的種子更新操作。
[0104]本發(fā)明實施例提供的令牌種子的更新方法,首先令牌利用存儲的初始種子和用戶輸入的要素生成一個密碼并顯示給用戶,用戶調用更新種子接口將密碼發(fā)送給服務器,由服務器對密碼驗證通過后,利用當前時間獲得更新請求碼,利用第一和第二預設算法分別生成最終種子和第一更新確認碼,并將獲得的更新請求碼和第一更新確認碼發(fā)送給令牌并顯示給用戶;令牌側接收用戶輸入的更新請求碼和第一更新確認碼,并利用與服務器相同的第一和第二預設算法分別生成最終種子和第四更新確認碼,令牌確認出第一更新確認碼和第四更新確認碼相同時,則利用令牌生成的最終種子更新令牌中存儲的初始種子,利用第三預設算法生成第二更新確認碼并將第二更新確認碼發(fā)送給服務器,服務器側接收到第二更新確認碼,對其進行驗證,當驗證通過后,利用服務器中生成的最終種子更新服務器中存儲的初始種子,完成令牌和服務器兩側對令牌種子的更新,而且上述種子更新過程中,由于服務器和令牌兩側進行交叉驗證,從而確保了用戶信息的安全。
[0105]基于同一發(fā)明構思,根據本發(fā)明上述實施例提供的令牌種子的方法,相應地,本發(fā)明實施例二和實施例三分別提供了一種服務器側實施的令牌種子的更新方法和一種令牌側實施的令牌種子的更新方法,其中,服務器側實施的令牌種子的更新方法的實施流程示意圖如圖2所示,令牌側實施的令牌種子的更新方法的實施流程示意圖如圖3所示,接下來分別對服務器和令牌兩側實施的令牌種子更新的方法進行說明。
[0106]實施例二、
[0107]如圖2所示,為本發(fā)明實施例提供的服務器側實施的令牌種子的更新方法的實施流程示意圖,可以包括以下步驟:
[0108]S21、在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,種子更新請求中攜帶有令牌標識。
[0109]本步驟中,用戶通過終端調用服務器提供的更新種子接口向服務器發(fā)送種子更新請求,所述種子更新請求中攜帶有令牌標識、第一密碼和生成第一密碼的要素。其中,用戶可以在服務器提供的接口頁面上輸入上述的令牌標識、第一密碼和生成第一密碼的要素,輸入完成后,將上述信息提交給服務器。
[0110]具體實施時,服務器接收到用戶通過更新種子接口發(fā)送的令牌標識后,利用令牌標識查找到對應于該令牌的預先存儲的初始種子,此外種子更新請求還攜帶有第一密碼和生成第一密碼的要素,第一密碼為請求方利用其存儲的初始種子和密碼的要素生成的,以及在利用當前時間獲得更新請求碼之前,所述方法還包括:
[0111]利用存儲的初始種子和密碼的要素及當前時間生成第二密碼;并確定第一密碼和第二密碼相同。
[0112]具體地,具體實施時,服務器接收到用戶通過更新種子接口發(fā)送的令牌標識、第一密碼和生成第一密碼的要素后,利用令牌標識查找到對應于該令牌的預先存儲的初始種子,服務器利用該初始種子和接收到的生成第一密碼的要素和當前時間生成第二密碼,月艮務器驗證該生成的第二密碼與接收到的第一密碼是否相同,如果第二密碼與第一密碼相同,則確定密碼驗證通過,至此完成了服務器與令牌之間的密碼驗證,保證了用戶信息的安全。
[0113]需要說明的是,令牌生成第一密碼和服務器生成第二密碼所使用的算法是相同的,以可以為現(xiàn)有的常見密碼生成算法,本發(fā)明實施例對此不進行限定。
[0114]具體實施時,如果第二密碼與第一密碼不相同,則服務器可以提示用戶對令牌進行時間校準操作后再試,較佳地,服務器可以通過彈框消息提示用戶,用戶根據提示消息手動同步令牌時間,重新生成密碼并由服務器進行密碼驗證,直到服務器密碼驗證通過;再由服務器獲取更新請求碼,使得用戶在使用令牌交易時,更加安全。
[0115]具體實施時,當服務器完成密碼驗證后,獲取當前時間,將當前時間轉換為格林威治時間,將其確認為更新請求碼;較佳地,為了保證更新令牌種子具有一定的時效性,還可以利用當前時間和預設更新請求碼的有效時間獲得更新請求碼,具體為:將所述當前時間進行換算得到第一計算結果,并將所述第一計算結果加上所述預設更新請求碼的有效時間確認為所述更新請求碼。
[0116]較佳地,該更新請求碼可以但不限于包括8位,將獲取的當前時間轉換為格林威治時間,并換算為分鐘數,取8位時間值作為更新請求碼,或者在取得8位時間值之后,加上預設更新請求碼的有效時間作為更新請求碼,其中,預設更新請求碼的有效時間可以但不限于包括5分鐘,即獲得的該更新請求碼在5分鐘之內時有效的,超過5分鐘就會失效,需重新獲取更新請求碼,再執(zhí)行后續(xù)操作,保證了更新令牌種子的時效性。
[0117]為了描述方便,本發(fā)明實施例以更新請求碼為8位、預設更新請求碼的有效時間為5分鐘為例進行說明。
[0118]S22、利用第一預設算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,并將最終種子存儲到臨時區(qū)域內。
[0119]具體實施時,第一預設算法可以但不限于包括SM3(Cryptographic HashAlgorithm,密碼雜湊算法)和HMAC-SHA1 (Keyed-Hashing for Message Authenticat1nCode-Secure Hash Algorithm,基于加密hash函數和共享密鑰的消息認證)算法等,服務器利用該第一預設算法對令牌標識對應的初始種子和步驟S15獲得的8位更新請求碼進行處理得到最終種子,在此并不立即利用得到的最終種子對初始種子進行更新,還需要進一步進行驗證,因此將得到的最終種子存儲到臨時區(qū)域內,需要說明的是,在將得到的最終種子存儲到臨時區(qū)域內之前,還需檢測該臨時區(qū)域是否有數據存在,若檢測到臨時區(qū)域內有初始種子存在,則不能執(zhí)行存儲動作,此次種子更新操作失敗,且還需要提示服務器完成上一次初始種子的更新操作;若檢測出臨時區(qū)域內沒有種子存在,則將得到的最終種子存儲到臨時區(qū)域內。
[0120]具體實施時,臨時區(qū)域存儲有數據時,用戶無法使用令牌進行驗證交易,如果此時(即臨時區(qū)域存儲有數據)接收到交易請求則提示用戶先完成種子更新流程。
[0121]需要說明的是,本發(fā)明實施例涉及的最終種子并不是嚴格意義上的最后一個種子,是相對于此次更新種子操作中存儲的初始種子而言的,待此次更新操作完成之后,該最終種子就會變成下一次更新種子操作中的初始種子。
[0122]S23、利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼。
[0123]具體地,在服務器利用第一預設算法得到最終種子后,再利用第二預設算法對得到的最終種子和8位更新請求碼進行處理,得到8位第一更新確認碼,需要說明的是,服務器所采用的第二預設算法可以與第一預設算法相同,也可以為其它算法,本發(fā)明對此不進行限定。
[0124]S24、將所述更新請求碼和第一更新確認碼返回給請求方。
[0125]具體實施時,服務器將更新請求碼和第一更新確認碼返回給終端,由終端提供給用戶。
[0126]為了完成服務器和令牌兩側對最終種子的更新,保證用戶信息安全,服務器還需將步驟S15得到的8位更新請求碼和步驟S17得到的8位第一更新確認碼反饋給用戶,待用戶利用8位更新請求碼和8位第一更新確認碼執(zhí)行后續(xù)種子更新工作。
[0127]S25、接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為請求方利用所述更新請求碼和第一更新確認碼獲得的。
[0128]具體的,用戶讀取令牌顯示的第二確認碼,并通過終端調用服務器提供的更新種子接口,將得到的第二更新確認碼發(fā)送給服務器。
[0129]S26、如果對第二更新確認碼驗證通過,則利用最終種子更新存儲的初始種子,并刪除臨時區(qū)域內的最終種子。
[0130]具體實施時,服務器接收到用戶發(fā)送的第二更新確認碼時,需要對第二更新確認碼進行驗證,服務器側可以按照如圖1c所示的方法對第二更新確認碼進行驗證:
[0131]S1151、利用第三預設算法對第一更新確認碼和最終種子進行處理得到第三更新確認碼。
[0132]需要說明的是,為了保證服務器側能夠完成更新最終操作,所采用的第三預設算法應該與令牌側采用的第三預設算法相同。
[0133]SI 152、如果第三更新確認碼與第二更新確認碼相同,則確定對第二更新確認碼驗證通過。
[0134]當服務器對第二更新確認碼驗證通過時,則利用最終種子對服務器中存儲的初始種子進行更新,同時刪除臨時區(qū)域內的最終種子,至此,完成了本發(fā)明實施例提供的令牌種子更新方法中服務器側的種子更新操作。
[0135]本發(fā)明實施例提供的服務器側令牌種子的更新方法,服務器側首先對令牌側發(fā)送的密碼進行驗證,驗證通過后利用當前時間獲取更新請求碼,為了保證更新種子更加安全,還可以利用當前時間和預設更新請求碼的有效時間確定更新請求碼,并利用第一預設算法和第二預設算法對分別獲得最終種子和第一更新確認碼,并將第一更新確認碼和更新請求碼反饋給令牌側,待令牌側進行后續(xù)令牌種子的更新操作之后,服務器會接收到請求方利用該更新請求碼和第一更新確認碼獲得的第二更新確認碼,且對第二更新確認碼驗證通過后,利用最終種子更新服務器中存儲的初始種子,降低了因初始種子外泄或令牌服務器數據庫被人攻破而導致的用戶信息泄露的情況發(fā)生。
[0136]實施例三、
[0137]圖3為本發(fā)明實施例提供的令牌側實施的令牌種子的更新方法的實施流程示意圖,可以包括以下步驟:
[0138]S31、接收用戶輸入的更新請求碼和第一更新確認碼,其中,更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的。
[0139]用戶通過終端獲得了服務器返回的更新請求碼和第一更新確認碼后,將獲得的更新請求碼和第一更新確認碼輸入令牌中。
[0140]需要說明的是,令牌在接收用戶輸入的更新請求碼和第一更新確認碼之前,還包括:
[0141]接收用戶輸入的生成密碼的要素;
[0142]具體實施時,為了保證用戶信息的安全,需要用戶對令牌和服務器之間進行密碼驗證,驗證通過之后才能執(zhí)行更新令牌種子的操作,因此,需要用戶在令牌中輸入生成第一密碼的要素,該要素可以為用戶任意輸入的若干位隨機數,也可以由交易信息組成的,本發(fā)明實施例對此不進行限定。
[0143]利用預先存儲的初始種子、當前時間和獲得的要素產生密碼并顯示。
[0144]具體實施時,令牌接收用戶輸入的生成密碼的要素之后,利用預先存儲的初始種子、當前時間和獲得的要素產生密碼并顯示給用戶,待服務器對密碼驗證通過之后才能執(zhí)行種子更新操作。
[0145]S32、利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子。
[0146]具體實施時,在利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子之前,令牌還需確定接收到更新請求碼和第一更新確認碼的時間在更新請求碼表示的時間范圍之內,由于更新請求碼是由服務器對密碼驗證通過時的時間值和預設更新請求碼的有效時間組合而成的,令牌在接收到更新請求碼時,對其進行解析,并比較接收到更新請求碼的時間是否在預設更新請求碼表示的時間范圍之內,若在,則利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子;若超過預設更新請求碼的有效時間,則表示此次更新失敗,需重新開始驗證。
[0147]令牌接收用戶輸入的更新請求碼后,利用第一預設算法對令牌中存儲的初始種子和更新請求碼進行處理得到最終種子,具體地,在對令牌和服務器中初始種子更新之前,該令牌和服務器中存儲的初始種子是相同的,更新請求碼是服務器發(fā)送的,則為了保證令牌側生成的最終種子與服務器側生成的最終種子相同,要求令牌側采用的第一預設算法和服務器側采用的第一預設算法相同,如果令牌側采用的第一預設算法和服務器側采用的第一預設算法不相同會導致種子更新失敗。
[0148]需要說明的是,令牌側采用的第一預設算法可以但不限于包括SM3算法和HMAC-SHAl算法等。
[0149]S33、利用第二預設算法對更新請求碼和最終種子進行處理得到第四更新確認碼。
[0150]具體實施時,令牌側采用的第二預設算法應當與服務器側采用的第二預設算法相同,才能確保后續(xù)令牌側和服務器側的種子更新工作,該第二預設算法可以與第一預設算法相同,也可以采用其他算法來實現(xiàn),本發(fā)明實施例對此不進行限定。
[0151]S34、如果第一更新確認碼與第四更新確認碼相同,則利用最終種子更新存儲的初始種子。
[0152]具體實施時,第一更新確認碼是由用戶從服務器側獲取的,第四更新確認碼是令牌根據與服務器側相同的第二預設算法對最終種子和更新請求碼進行處理得到的,當第一更新確認碼與第四更新確認碼相同時,令牌可以利用最終種子對存儲的初始種子進行更新。
[0153]S35、利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并將得到的第二更新確認碼發(fā)送給服務器。
[0154]令牌側更新種子之后,還需要服務器側完成更新種子的操作,因此令牌側還需利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并顯示給用戶。
[0155]具體實施時,步驟S34和步驟S35沒有一定的先后執(zhí)行順序,步驟S34和步驟S35可以同時執(zhí)行,步驟S35也可以先于步驟S34執(zhí)行,本發(fā)明實施例對此不進行限定。
[0156]基于此,本發(fā)明實施例三提供的令牌側令牌種子的更新方法,令牌接收服務器發(fā)送的更新請求碼和第一更新確認碼,利用預設第一算法和預設第二算法獲得令牌中的最終種子和第四更新確認碼,并驗證出第一更新確認碼和第四更新確認碼相同時,利用得到的最終種子更新存儲的初始種子,完成令牌種子更新操作,用戶可以根據需要安全動態(tài)地更新令牌種子,提高了用戶信息的安全性。此外,令牌在更新種子之前,首先進行密碼驗證,待服務器密碼驗證通過之后,再執(zhí)行種子更新操作,進一步保障了用戶信息。
[0157]實施例四、
[0158]實施例四提供了一種服務器側令牌種子的更新裝置,由于該裝置解決問題的原理與上述服務器側令牌種子的更新方法相似,因此該裝置的實施可以參見方法的實施,重復之處不再贅述。
[0159]如圖4所示,為本發(fā)明實施例提供的服務器側令牌種子的更新裝置的結構示意圖,包括獲得單元41、第一處理單元42、第二處理單元43、發(fā)送單元44、接收單元45和更新單元46,其中:
[0160]獲得單元41,用于在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,種子更新請求中攜帶有令牌標識。
[0161]第一處理單元42,用于利用第一預設算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,并將最終種子存儲到臨時區(qū)域內。
[0162]第二處理單元43,用于利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼。
[0163]發(fā)送單元44,用于將更新請求碼和第一更新確認碼返回給請求方
[0164]接收單元45,用于接收所述請求方發(fā)送的第二更新確認碼,第二更新確認碼為請求方利用更新請求碼和第一更新確認碼獲得的。
[0165]更新單元46,用于如果對第二更新確認碼驗證通過,則利用最終種子更新存儲的初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0166]具體實施時,所述裝置還包括生成單元47和確定單元48,其中:
[0167]生成單元47,用于在獲得單元41在利用當前時間獲得更新請求碼之前,利用存儲的初始種子和所述要素生成第二密碼。
[0168]確定單元48,用于確定所述第一密碼和所述第二密碼相同。
[0169]所述獲得單元41,具體用于利用當前時間和預設的更新請求碼有效時間獲得更新請求碼。
[0170]此外,所述獲得單元41,用于將當前時間進行換算得到第一計算結果,并將第一計算結果加上所述預設更新請求碼的有效時間確認為所述更新請求碼。
[0171]具體實施時,所述更新單元46,具體包括處理子單元和確定子單元,其中:
[0172]處理子單元,用于利用第三預設算法對第一更新確認碼和最終種子進行處理得到第三更新確認碼。
[0173]確定子單元,用于如果第三更新確認碼與第二更新確認碼相同,則確定對第二更新確認碼驗證通過。
[0174]為了描述的方便,以上各部分按照功能劃分為各單元(或模塊)分別描述。當然,在實施本發(fā)明時可以把各單元(或模塊)的功能在同一個或多個軟件或硬件中實現(xiàn)。例如,本發(fā)明實施例四提供的服務器側令牌種子的更新裝置可以設置于服務器中,由服務器完成對令牌種子的更新。
[0175]本發(fā)明實施例提供了一種令牌種子的更新裝置,例如,可以包括存儲器和處理器,其中,處理器可以用于讀取存儲器中的程序,執(zhí)行下列過程:在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;將所述更新請求碼和第一更新確認碼返回給請求方;以及接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0176]本發(fā)明實施例提供了一種程序產品,其包括程序代碼,當所述程序產品運行時,所述程序代碼用于執(zhí)行以下過程:在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識;利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內;利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼;將所述更新請求碼和第一更新確認碼返回給請求方;以及接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的;如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。
[0177]實施例五、
[0178]實施例五提供了一種令牌側令牌種子的更新裝置,由于該裝置解決問題的原理與上述令牌側令牌種子的更新方法相似,因此該裝置的實施可以參見方法的實施,重復之處不再贅述。
[0179]如圖5所示,為本發(fā)明實施例提供的令牌側令牌種子的更新裝置的結構示意圖,包括第一接收單元51、第一處理單元52、第二處理單元53、更新單元54和第三處理單元55,其中:
[0180]第一接收單元51,用于接收用戶輸入的更新請求碼和第一更新確認碼,其中,更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的。
[0181]第一處理單元52,用于利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子。
[0182]第二處理單元53,用于利用第二預設算法對更新請求碼和最終種子進行處理得到第四更新確認碼。
[0183]更新單元54,用于如果第一更新確認碼與第四更新確認碼相同,則利用最終種子更新存儲的初始種子。
[0184]第三處理單元55,用于利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并將得到的第二更新確認碼發(fā)送給服務器。
[0185]具體實施時,所述裝置還包括第二接收單元56和生成單元57,其中:
[0186]第二接收單元56,用于在第一接收單元51在接收用戶輸入的更新請求碼和第一更新確認碼之前,接收用戶輸入的生成密碼的要素。
[0187]生成單元57,用于利用預先存儲的初始種子、當前時間和獲得的要素產生密碼并顯不O
[0188]具體實施時,所述裝置還包括確定單元58,其中:
[0189]確定單元58,用于在第一處理單元52利用第一預設算法對存儲的初始種子和更新請求碼進行處理得到最終種子之前,確定接收到更新請求碼和第一更新確認碼的時間在更新請求碼表示的時間之內。
[0190]為了描述的方便,以上各部分按照功能劃分為各單元(或模塊)分別描述。當然,在實施本發(fā)明時可以把各單元(或模塊)的功能在同一個或多個軟件或硬件中實現(xiàn)。例如,本發(fā)明實施例四提供的令牌側令牌種子的更新裝置可以設置于令牌中,由令牌完成對令牌種子的更新。
[0191]本發(fā)明實施例提供了另外一種令牌種子的更新裝置,例如,可以包括存儲器和處理器,其中,處理器可以用于讀取存儲器中的程序,執(zhí)行下列過程:接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0192]本發(fā)明實施例提供了另外一種程序產品,其包括程序代碼,當所述程序產品運行時,所述程序代碼用于執(zhí)行以下過程:接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子;利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼;如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子;利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。
[0193]在介紹了本發(fā)明提供的令牌種子的更新方法和裝置之后,接下來,介紹根據本發(fā)明的另一示例性實施方式的令牌種子的更新裝置。
[0194]所屬技術領域的技術人員能夠理解,本發(fā)明的各個方面可以實現(xiàn)為系統(tǒng)、方法或程序產品。因此,本發(fā)明的各個方面可以具體實現(xiàn)為以下形式,即:完全的硬件實施方式、完全的軟件實施方式(包括固件、微代碼等),或硬件和軟件方面結合的實施方式,這里可以統(tǒng)稱為“電路”、“模塊”或“系統(tǒng)”。
[0195]在一些可能的實施方式中,根據本發(fā)明的令牌種子的更新裝置可以包括至少一個處理單元、以及至少一個存儲單元。其中,所述存儲單元存儲有程序代碼,當所述程序代碼被所述處理單元執(zhí)行時,使得所述處理單元執(zhí)行本說明書上述“實施例方法”部分中描述的根據本發(fā)明各種示例性實施方式的令牌種子的更新方法中的各種步驟。例如,所述處理單元可以執(zhí)行如圖2中所示的步驟S21,在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,種子更新請求中攜帶有令牌標識,步驟S22,利用第一預設算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,并將最終種子存儲到臨時區(qū)域內,步驟23,利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼,步驟24,將所述更新請求碼和第一更新確認碼返回給請求方,步驟25,接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為請求方利用所述更新請求碼和第一更新確認碼獲得的,步驟26,如果對第二更新確認碼驗證通過,則利用最終種子更新存儲的初始種子,并刪除臨時區(qū)域內的最終種子。
[0196]應當注意,盡管在上文詳細描述中提及了裝置的若干單元或子單元,但是這種劃分僅僅是示例性的并非強制性的。實際上,根據本發(fā)明的實施方式,上文描述的兩個或更多單元的特征和功能可以在一個單元中具體化。反之,上文描述的一個單元的特征和功能可以進一步劃分為由多個單元來具體化。
[0197]此外,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實現(xiàn)期望的結果。附加地或備選地,可以省略某些步驟,將多個步驟合并為一個步驟執(zhí)行,和/或將一個步驟分解為多個步驟執(zhí)行。
[0198]下面參照圖6來描述根據本發(fā)明的這種實施方式的令牌種子的更新裝置60。圖6所示的令牌種子的更新裝置僅僅是一個示例,不應對本發(fā)明實施例的功能和使用范圍帶來任何限制。
[0199]如圖6所示,令牌種子的更新裝置60可以以通用計算設備的形式表現(xiàn)。令牌種子的更新裝置60的組件可以包括但不限于:上述至少一個處理單元61、上述至少一個存儲單元62、連接不同系統(tǒng)組件(包括存儲單元62和處理單元61)的總線63。
[0200]總線63表示幾類總線結構中的一種或多種,包括存儲器總線或者存儲器控制器、外圍總線、處理器或者使用多種總線結構中的任意總線結構的局域總線。
[0201]存儲單元62可以包括易失性存儲器形式的可讀介質,例如隨機存取存儲器(RAM)621和/或高速緩存存儲器622,還可以進一步包括只讀存儲器(R0M)623。
[0202]存儲單元62還可以包括具有一組(至少一個)程序模塊624的程序/實用工具625,這樣的程序模塊624包括但不限于:操作系統(tǒng)、一個或者多個應用程序、其它程序模塊以及程序數據,這些示例中的每一個或某種組合中可能包括網絡環(huán)境的實現(xiàn)。
[0203]令牌種子的更新裝置60也可以與一個或多個外部設備64(例如鍵盤、指向設備等)通信,還可與一個或者多個使得用戶能與令牌種子的更新裝置60交互的設備通信,和/或與使得該令牌種子的更新裝置60能與一個或多個其它計算設備進行通信的任何設備(例如路由器、調制解調器等等)通信。這種通信可以通過輸入/輸出(I/O)接口 65進行。并且,令牌種子的更新裝置60還可以通過網絡適配器66與一個或者多個網絡(例如局域網(LAN),廣域網(WAN)和/或公共網絡,例如因特網)通信。如圖所示,網絡適配器66通過總線63與令牌種子的更新裝置60的其它模塊通信。應當理解,盡管圖中未示出,可以結合令牌種子的更新裝置60使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設備驅動器、冗余處理單元、外部磁盤驅動陣列、RAID系統(tǒng)、磁帶驅動器以及數據備份存儲系統(tǒng)等。
[0204]在一些可能的實施方式中,本發(fā)明提供的令牌種子的更新方法的各個方面還可以實現(xiàn)為一種程序產品的形式,其包括程序代碼,當所述程序產品在服務器設備上運行時,所述程序代碼用于使所述服務器設備執(zhí)行本說明書上述“實施例方法”部分中描述的根據本發(fā)明各種示例性實施方式的令牌種子的更新方法中的步驟,例如,所述服務器設備可以執(zhí)行如圖2中所示的步驟S21,在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,種子更新請求中攜帶有令牌標識,步驟S22,利用第一預設算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,并將最終種子存儲到臨時區(qū)域內,步驟23,利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼,步驟24,將所述更新請求碼和第一更新確認碼返回給請求方,步驟25,接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為請求方利用所述更新請求碼和第一更新確認碼獲得的,步驟26,如果對第二更新確認碼驗證通過,則利用最終種子更新存儲的初始種子,并刪除臨時區(qū)域內的最終種子。
[0205]所述程序產品可以采用一個或多個可讀介質的任意組合??勺x介質可以是可讀信號介質或者可讀存儲介質??勺x存儲介質例如可以是一一但不限于一一電、磁、光、電磁、紅外線、或半導體的系統(tǒng)、裝置或器件,或者任意以上的組合??勺x存儲介質的更具體的例子(非窮舉的列表)包括:具有一個或多個導線的電連接、便攜式盤、硬盤、隨機存取存儲器(RAM)、只讀存儲器(R0M)、可擦式可編程只讀存儲器(EPR0M或閃存)、光纖、便攜式緊湊盤只讀存儲器(CD-ROM)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。
[0206]根據本發(fā)明的實施方式的令牌種子的更新程序產品可以采用便攜式緊湊盤只讀存儲器(CD-ROM)并包括程序代碼,并可以在服務器設備上運行。然而,本發(fā)明的程序產品不限于此,在本文件中,可讀存儲介質可以是任何包含或存儲程序的有形介質,該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用。
[0207]可讀信號介質可以包括在基帶中或者作為載波一部分傳播的數據信號,其中承載了可讀程序代碼。這種傳播的數據信號可以采用多種形式,包括一一但不限于一一電磁信號、光信號或上述的任意合適的組合??勺x信號介質還可以是可讀存儲介質以外的任何可讀介質,該可讀介質可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結合使用的程序。
[0208]可讀介質上包含的程序代碼可以用任何適當的介質傳輸,包括一一但不限于一一無線、有線、光纜、RF等等,或者上述的任意合適的組合。
[0209]可以以一種或多種程序設計語言的任意組合來編寫用于執(zhí)行本發(fā)明操作的程序代碼,所述程序設計語言包括面向對象的程序設計語言一諸如Java、C++等,還包括常規(guī)的過程式程序設計語言一諸如“C”語言或類似的程序設計語言。程序代碼可以完全地在用戶計算設備上執(zhí)行、部分地在用戶設備上執(zhí)行、作為一個獨立的軟件包執(zhí)行、部分在用戶計算設備上部分在遠程計算設備上執(zhí)行、或者完全在遠程計算設備或服務器上執(zhí)行。在涉及遠程計算設備的情形中,遠程計算設備可以通過任意種類的網絡一一包括局域網(LAN)或廣域網(WAN) —連接到用戶計算設備,或者,可以連接到外部計算設備(例如利用因特網服務提供商來通過因特網連接)。
[0210]此外,盡管在附圖中以特定順序描述了本發(fā)明方法的操作,但是,這并非要求或者暗示必須按照該特定順序來執(zhí)行這些操作,或是必須執(zhí)行全部所示的操作才能實現(xiàn)期望的結果。附加地或備選地,可以省略某些步驟,將多個步驟合并為一個步驟執(zhí)行,和/或將一個步驟分解為多個步驟執(zhí)行。
[0211]綜上所述,本發(fā)明實施例提供的令牌種子的更新方法、裝置和相關設備,為了提高用戶信息的安全性,令牌與服務器之間需進行密碼驗證,待服務器密碼驗證成功之后,服務器利用當前時間獲得更新請求碼,并利用第一預算算法對令牌標識對應的初始種子和更新請求碼進行處理得到最終種子,利用第二預設算法對最終種子和更新請求碼進行處理得到第一更新確認碼,并將更新請求碼和得到的第一更新確認碼返回給令牌,令牌側接收服務器發(fā)送的更新請求碼和第一更新確認碼,利用與服務器相同的第一預算算法對令牌存儲的初始種子和更新請求碼進行處理得到最終種子,并利用與服務器相同的第二預算算法對更新請求碼和最終種子進行處理得到第四更新請求碼,當令牌驗證第一更新確認碼和第四更新請求碼相同時,則利用最終種子更新存儲的初始種子,并利用第三預設算法對最終種子和第四更新確認碼進行處理得到第二更新確認碼,并將得到的第二更新確認碼發(fā)送給服務器,服務器對接收到的第二更新確認碼進行驗證,驗證通過后,利用服務器得到的最終種子更新初始種子,基于此,服務器和令牌兩側完成了對最終種子的更新,使得用戶可以根據需要動態(tài)更新令牌種子,而且上述種子更新過程中,由于服務器和令牌兩側進行交叉驗證,從而確保了用戶信息更加安全。
[0212]本申請的實施例所提供的令牌種子的更新系統(tǒng)可通過計算機程序實現(xiàn)。本領域技術人員應該能夠理解,上述的模塊劃分方式僅是眾多模塊劃分方式中的一種,如果劃分為其他模塊或不劃分模塊,只要令牌種子的更新系統(tǒng)具有上述功能,都應該在本申請的保護范圍之內。
[0213]本領域內的技術人員應明白,本發(fā)明的實施例可提供為方法、系統(tǒng)、或計算機程序產品。因此,本發(fā)明可采用完全硬件實施例、完全軟件實施例、或結合軟件和硬件方面的實施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機可用程序代碼的計算機可用存儲介質(包括但不限于磁盤存儲器、CD-ROM、光學存儲器等)上實施的計算機程序產品的形式。
[0214]本發(fā)明是參照根據本發(fā)明實施例的方法、設備(系統(tǒng))、和計算機程序產品的流程圖和/或方框圖來描述的。應理解可由計算機程序指令實現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結合。可提供這些計算機程序指令到通用計算機、專用計算機、嵌入式處理機或其他可編程數據處理設備的處理器以產生一個機器,使得通過計算機或其他可編程數據處理設備的處理器執(zhí)行的指令產生用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的裝置。
[0215]這些計算機程序指令也可存儲在能引導計算機或其他可編程數據處理設備以特定方式工作的計算機可讀存儲器中,使得存儲在該計算機可讀存儲器中的指令產生包括指令裝置的制造品,該指令裝置實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能。
[0216]這些計算機程序指令也可裝載到計算機或其他可編程數據處理設備上,使得在計算機或其他可編程設備上執(zhí)行一系列操作步驟以產生計算機實現(xiàn)的處理,從而在計算機或其他可編程設備上執(zhí)行的指令提供用于實現(xiàn)在流程圖一個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。
[0217]盡管已描述了本發(fā)明的優(yōu)選實施例,但本領域內的技術人員一旦得知了基本創(chuàng)造性概念,則可對這些實施例做出另外的變更和修改。所以,所附權利要求意欲解釋為包括優(yōu)選實施例以及落入本發(fā)明范圍的所有變更和修改。
[0218]顯然,本領域的技術人員可以對本發(fā)明進行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權利要求及其等同技術的范圍之內,則本發(fā)明也意圖包含這些改動和變型在內。
【主權項】
1.一種令牌種子的更新方法,其特征在于,包括: 在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識; 利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內; 利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼; 將所述更新請求碼和第一更新確認碼返回給請求方;以及 接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的; 如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。2.如權利要求1所述的方法,其特征在于,所述種子更新請求還攜帶有第一密碼和生成所述第一密碼的要素,所述第一密碼為所述請求方利用其存儲的初始種子和所述要素生成的;以及 在利用當前時間獲得更新請求碼之前,還包括: 利用存儲的初始種子和所述要素生成第二密碼;并 確定所述第一密碼和所述第二密碼相同。3.如權利要求1所述的方法,其特征在于,利用當前時間獲得更新請求碼,具體包括: 利用當前時間和預設的更新請求碼有效時間獲得更新請求碼。4.如權利要求1所述的方法,其特征在于,按照以下方法對所述第二更新確認碼進行驗證: 利用第三預設算法對所述第一更新確認碼和所述最終種子進行處理得到第三更新確認碼; 如果所述第三更新確認碼與所述第二更新確認碼相同,則確定對所述第二更新確認碼驗證通過。5.如權利要求3所述的方法,其特征在于,利用當前時間和預設更新請求碼的有效時間獲得更新請求碼,具體包括: 將所述當前時間進行換算得到第一計算結果,并將所述第一計算結果加上所述預設更新請求碼的有效時間確認為所述更新請求碼。6.一種令牌種子的更新裝置,其特征在于,包括: 獲得單元,用于在接收到請求方發(fā)送的種子更新請求時,利用當前時間獲得更新請求碼,所述種子更新請求中攜帶有令牌標識; 第一處理單元,用于利用第一預設算法對所述令牌標識對應的初始種子和所述更新請求碼進行處理得到最終種子,并將所述最終種子存儲到臨時區(qū)域內; 第二處理單元,用于利用第二預設算法對所述最終種子和所述更新請求碼進行處理得到第一更新確認碼; 發(fā)送單元,用于將所述更新請求碼和第一更新確認碼返回給請求方; 接收單元,用于接收所述請求方發(fā)送的第二更新確認碼,所述第二更新確認碼為所述請求方利用所述更新請求碼和第一更新確認碼獲得的; 更新單元,用于如果對所述第二更新確認碼驗證通過,則利用所述最終種子更新所述初始種子,并刪除所述臨時區(qū)域內的最終種子。7.如權利要求6所述的裝置,其特征在于,所述種子更新請求中還攜帶有第一密碼和生成所述第一密碼的要素,所述第一密碼為所述請求方利用其存儲的初始種子和所述要素生成的;以及 所述裝置,還包括: 生成單元,用于在所述獲得單元在利用當前時間獲得更新請求碼之前,利用存儲的初始種子和所述要素生成第二密碼; 確定單元,用于確定所述第一密碼和所述第二密碼相同。8.如權利要求6所述的裝置,其特征在于, 所述獲得單元,具體用于利用當前時間和預設的更新請求碼有效時間獲得更新請求碼。9.如權利要求6所述的裝置,其特征在于,所述更新單元,具體包括:處理子單元,用于利用第三預設算法對所述第一更新確認碼和所述最終種子進行處理得到第三更新確認碼; 確定子單元,用于如果所述第三更新確認碼與所述第二更新確認碼相同,則確定對所述第二更新確認碼驗證通過。10.如權利要求8所述的裝置,其特征在于, 所述獲得單元,具體用于將所述當前時間進行換算得到第一計算結果,并將所述第一計算結果加上所述預設更新請求碼的有效時間確認為所述更新請求碼。11.一種服務器,其特征在于,包括權利要求6?10任一項權利要求所述的裝置。12.一種令牌種子的更新方法,其特征在于,包括: 接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的;以及 利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子; 利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼; 如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子; 利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。13.如權利要求12所述的方法,其特征在于,在接收用戶輸入的更新請求碼和第一更新確認碼之前,還包括: 接收用戶輸入的生成密碼的要素; 利用預先存儲的初始種子、當前時間和獲得的要素產生密碼并顯示。14.如權利要求12所述的方法,其特征在于,利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子之前,還包括: 確定接收到所述更新請求碼和第一更新確認碼的時間在所述更新請求碼表示的時間之內。15.一種令牌種子的更新裝置,其特征在于,包括: 第一接收單元,用于接收用戶輸入的更新請求碼和第一更新確認碼,其中,所述更新請求碼和第一更新確認碼為用戶從網絡側服務器獲取的; 第一處理單元,用于利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子; 第二處理單元,用于利用第二預設算法對所述更新請求碼和所述最終種子進行處理得到第四更新確認碼; 更新單元,用于如果所述第一更新確認碼與所述第四更新確認碼相同,則利用所述最終種子更新存儲的初始種子; 第三處理單元,用于利用第三預設算法對所述最終種子和所述第四更新確認碼進行處理得到第二更新確認碼,并將得到的所述第二更新確認碼發(fā)送給服務器。16.如權利要求15所述的裝置,其特征在于,所述裝置,還包括: 第二接收單元,用于在所述第一接收單元在接收用戶輸入的更新請求碼和第一更新確認碼之前,接收用戶輸入的生成密碼的要素; 生成單元,用于利用預先存儲的初始種子、當前時間和獲得的要素產生密碼并顯示。17.如權利要求15所述的裝置,其特征在于,所述裝置,還包括: 確定單元,用于在所述第一處理單元利用第一預設算法對存儲的初始種子和所述更新請求碼進行處理得到最終種子之前,確定接收到所述更新請求碼和第一更新確認碼的時間在所述更新請求碼表示的時間之內。18.—種令牌,其特征在于,包括權利要求15、16或17所述的裝置。
【文檔編號】H04L9/32GK106027263SQ201610589342
【公開日】2016年10月12日
【申請日】2016年7月22日
【發(fā)明人】趙劍竹, 張慶勇
【申請人】北京信安世紀科技有限公司