一種激活動態(tài)令牌的方法和裝置制造方法
【專利摘要】本發(fā)明公開一種激活動態(tài)令牌的方法及裝置,該方法包括:動態(tài)令牌通過按鍵接收激活碼;根據(jù)預(yù)設(shè)的第一種子和接收到的激活碼中的激活挑戰(zhàn)碼,生成第二種子;根據(jù)生成的第二種子,生成第二應(yīng)答碼;判斷計算生成的第二應(yīng)答碼和接收到的激活碼中的激活應(yīng)答碼是否一致,是則根據(jù)生成的第二種子更新預(yù)設(shè)的第一種子,激活成功,結(jié)束,否則顯示錯誤信息,結(jié)束。本發(fā)明提供的一種激活動態(tài)令牌的方法,能夠保證動態(tài)令牌中的新種子(第二種子)和認證服務(wù)器中的新種子是一致的,即保證了新種子的正確性。
【專利說明】一種激活動態(tài)令牌的方法和裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息安全領(lǐng)域,尤其涉及一種激活動態(tài)令牌的方法和裝置。
【背景技術(shù)】
[0002]動態(tài)令牌是用來生成動態(tài)口令的終端,動態(tài)口令可以確保用戶的合法身份,從而在用戶以合法身份登錄的基礎(chǔ)上保障用戶業(yè)務(wù)訪問的安全性。動態(tài)口令認證技術(shù)被認為是目前最有效解決用戶認證的方法之一,從而被廣泛應(yīng)用在銀行、證券、第三方支付、大企業(yè)內(nèi)部等各類信息系統(tǒng)場景中。
[0003]在現(xiàn)有技術(shù)中,動態(tài)令牌接收到的激活碼通常由挑戰(zhàn)值和應(yīng)答值組成,在激活過程中,動態(tài)令牌首先根據(jù)預(yù)設(shè)的種子和接收到的挑戰(zhàn)值生成動態(tài)令牌的應(yīng)答值,再根據(jù)接收到的應(yīng)答值和生成的動態(tài)令牌的應(yīng)答值判斷是否激活成功,若激活成功則根據(jù)接收到的激活碼生成新種子,這種激活的方式無法保證動態(tài)令牌激活后的新種子的正確性,若激活成功后動態(tài)令牌生成的新種子與認證服務(wù)其中的種子不同,則導(dǎo)致用戶不能繼續(xù)使用該動態(tài)令牌。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的是為了克服現(xiàn)有技術(shù)的不足,提供一種激活動態(tài)令牌的方法和裝置,保證了激活成功后動態(tài)令牌中新種子的正確性,提高了使用動態(tài)令牌的安全性。
[0005]本發(fā)明提供的一種激活動態(tài)令牌的方法,包括:
[0006]步驟S1:所述動態(tài)令牌通過按鍵接收激活碼;所述激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼;
[0007]步驟S2:所述動態(tài)令牌對預(yù)設(shè)的第一種子進行第一單向運算得到第一運算值,對所述激活碼中的所述激活挑戰(zhàn)碼進行轉(zhuǎn)換得到第二轉(zhuǎn)換值,對所述第一種子進行第二單向運算得到第二運算值;
[0008]步驟S3:所述動態(tài)令牌根據(jù)所述第一運算值、所述第二轉(zhuǎn)換值和所述第三運算值得到第四擴散值;
[0009]步驟S4:所述動態(tài)令牌根據(jù)所述第四擴散值和所述第三運算值,生成第二種子;所述第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù);
[0010]步驟S5:所述動態(tài)令牌對所述第二種子中的第一數(shù)據(jù)進行所述第一單向運算得到第五運算值,對所述第二種子中的第二數(shù)據(jù)進行補充得到種子補充值,對所述第二種子中的第一數(shù)據(jù)進行所述第二單向運算得到第七運算值;
[0011]步驟S6:所述動態(tài)令牌根據(jù)所述第五運算值、所述種子補充值和所述第七運算值得到第八運算值;
[0012]步驟S7:所述動態(tài)令牌根據(jù)所述第八運算值生成第二應(yīng)答碼;
[0013]步驟S8:所述動態(tài)令牌判斷所述第二應(yīng)答碼和接收到的所述激活碼中的激活應(yīng)答碼是否一致,是則執(zhí)行步驟S9,否則顯示錯誤信息,結(jié)束;
[0014]步驟S9:所述動態(tài)令牌根據(jù)所述第二種子更新預(yù)設(shè)的所述第一種子,激活成功,結(jié)束。
[0015]所述步驟S2之前包括:所述動態(tài)令牌判斷接收到的所述激活碼的長度是否為第一預(yù)設(shè)長度,是則執(zhí)行步驟S2,否則顯示錯誤信息,返回步驟SI。
[0016]所述對預(yù)設(shè)的第一種子進行第一單向運算得到第一運算值,具體為:
[0017]所述動態(tài)令牌對所述預(yù)設(shè)的第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值;
[0018]所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第一異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第一運算值。
[0019]所述對所述激活碼中的激活挑戰(zhàn)碼進行轉(zhuǎn)換得到第二轉(zhuǎn)換值,具體為:
[0020]所述動態(tài)令牌將所述激活碼中的激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值;
[0021]所述動態(tài)令牌對所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值。
[0022]所述對所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值,具體為:所述動態(tài)令牌在所述第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)所述第一異或值的長度和所述第一轉(zhuǎn)換值的長度得到第一長度,將所述第一長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述第二轉(zhuǎn)換值。
[0023]所述對預(yù)設(shè)的第一種子進行第二單向運算得到第三運算值,具體為:
[0024]所述動態(tài)令牌對所述預(yù)設(shè)的第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值;
[0025]所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第二異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第三運算值。
[0026]所述根據(jù)所述第一運算值、第二轉(zhuǎn)換值和所述第三運算值得到第四擴散值,具體為:
[0027]所述動態(tài)令牌根據(jù)單向算法和所述第一運算值對所述第二轉(zhuǎn)換值進行運算,得到第二擴散值,根據(jù)所述第二擴散值和所述第一運算值得到第二運算值,根據(jù)所述單向算法和所述第三運算值對所述第二運算值進行運算,得到第四擴散值。
[0028]所述對所述第二種子中的第一數(shù)據(jù)進行所述第一單向運算得到第五運算值,具體為:
[0029]所述動態(tài)令牌對所述第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值;
[0030]所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第三異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第五運算值。
[0031]所述對所述第二種子中的第二數(shù)據(jù)進行補充得到種子補充值,具體為:所述動態(tài)令牌在所述第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)所述第三異或值的長度和所述第二數(shù)據(jù)的長度得到第二長度,將所述第二長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述種子補充值。
[0032]所述對所述第二種子中的第一數(shù)據(jù)進行所述第二單向運算得到第七運算值,具體為:
[0033]所述動態(tài)令牌對所述第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值;
[0034]所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第四異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第七運算值。
[0035]所述根據(jù)所述第五運算值、所述種子補充值和所述第七運算值得到第八運算值,具體為:
[0036]所述動態(tài)令牌根據(jù)單向算法和所述第五運算值對所述種子補充值進行運算,得到第六擴散值,根據(jù)所述第六擴散值和所述第五運算值得到第六運算值,根據(jù)所述單向算法和所述第七運算值對所述第六運算值進行運算,得到第八擴散值,根據(jù)所述第八擴散值和所述第七運算值得到第八運算值。
[0037]所述步驟S7包括:
[0038]步驟S7-1:所述動態(tài)令牌根據(jù)所述第八運算值得到字節(jié)位置標識;
[0039]步驟S7-2:所述動態(tài)令牌從所述第八運算值中與所述字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù);
[0040]步驟S7-3:所述動態(tài)令牌將獲取到的所述第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù);
[0041]步驟S7-4:所述動態(tài)令牌根據(jù)所述激活碼的長度從所述第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼。
[0042]所述根據(jù)第八運算值得到字節(jié)位置標識,具體為:所述動態(tài)令牌獲取所述第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為所述字節(jié)位置標識。
[0043]所述根據(jù)所述激活碼的長度從所述第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼,具體為:所述動態(tài)令牌將所述激活碼的長度的一半作為所述第二應(yīng)答碼的長度,根據(jù)所述第二應(yīng)答碼的長度從所述第二應(yīng)答數(shù)據(jù)的最低位開始獲取所述第二應(yīng)答碼。
[0044]本發(fā)明提供一種激活動態(tài)令牌的裝置,包括:接收模塊、第一計算模塊、第二計算模塊、第一生成模塊、第三計算模塊、第四計算模塊、第二生成模塊、第一判斷模塊、顯示模塊和第一更新模塊;
[0045]所述接收模塊,用于通過按鍵接收激活碼;所述激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼;
[0046]所述第一計算模塊,用于對預(yù)設(shè)的第一種子進行第一單向運算得到第一運算值,對所述接收模塊接收到的所述激活碼中的所述激活挑戰(zhàn)碼進行轉(zhuǎn)換得到第二轉(zhuǎn)換值,對所述第一種子進行第二單向運算得到第三運算值;
[0047]所述第二計算模塊,用于根據(jù)所述第一計算模塊計算得到的所述第一運算值、所述第二轉(zhuǎn)換值和所述第三運算值得到第四擴散值;
[0048]所述第一生成模塊,用于根據(jù)所述第二計算模塊計算得到的所述第四擴散值和所述第一計算模塊計算得到的所述第三運算值,生成第二種子;所述第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù);
[0049]所述第三計算模塊,用于對所述第一生成模塊生成的所述第二種子中的第一數(shù)據(jù)進行所述第一單向運算得到第五運算值,對所述第一生成模塊生成的所述第二種子中的第二數(shù)據(jù)進行補充得到種子補充值,對所述第一生成模塊生成的所述第二種子中的第一數(shù)據(jù)進行所述第二單向運算得到第七運算值;
[0050]所述第四計算模塊,用于根據(jù)所述第三計算模塊計算得到的所述第五運算值、所述種子補充值和所述第七運算值得到第八運算值;
[0051 ] 所述第二生成模塊,用于根據(jù)所述第四計算模塊計算得到的所述第八運算值生成第二應(yīng)答碼;
[0052]所述第一判斷模塊,用于判斷所述第二生成模塊生成的所述第二應(yīng)答碼和所述接收模塊接收到的所述激活碼中的激活應(yīng)答碼是否一致;
[0053]所述顯示模塊,用于在所述第一判斷模塊判斷所述第二應(yīng)答碼和所述激活應(yīng)答碼不一致時,顯示錯誤信息;
[0054]所述第一更新模塊,用于在所述第一判斷模塊判斷所述第二應(yīng)答碼和所述激活應(yīng)答碼一致時,根據(jù)所述第一生成模塊生成的所述第二種子更新預(yù)設(shè)的所述第一種子。
[0055]所述裝置包括第二判斷模塊,用于判斷所述接收模塊接收到的所述激活碼的長度是否為第一預(yù)設(shè)長度;
[0056]所述第一計算模塊,還用于在所述第二判斷模塊判斷為是時,進行工作;
[0057]所述顯示模塊,還用于在所述第二判斷模塊判斷為否時,顯示錯誤信息。
[0058]所述第一計算模塊包括:第一異或單元和第一運算單元;
[0059]所述第一異或單元,用于對所述預(yù)設(shè)的第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值;
[0060]所述第一運算單元,用于根據(jù)單向算法和第一常數(shù)對所述第一異或單元得到的所述第一異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第一運算值。
[0061]所述第一計算模塊還包括:第一轉(zhuǎn)換單元和第一補充單元;
[0062]所述第一轉(zhuǎn)換單元,用于將所述接收模塊接收到的所述激活碼中的激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值;
[0063]所述第一補充單元,用于對所述第一轉(zhuǎn)換單元得到的所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值。
[0064]所述第一補充單元具體用于在所述第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)所述第一異或值的長度和所述第一轉(zhuǎn)換值的長度得到第一長度,將所述第一長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述第二轉(zhuǎn)換值。
[0065]所述第一異或單元,還用于對所述預(yù)設(shè)的第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值;
[0066]所述第一運算單元,還用于根據(jù)單向算法和第一常數(shù)對所述第一異或單元得到的所述第二異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第三運算值。
[0067]所述第二計算模塊具體用于:根據(jù)單向算法和所述第一運算值對所述第二轉(zhuǎn)換值進行運算,得到第二擴散值,根據(jù)所述第二擴散值和所述第一運算值得到第二運算值,根據(jù)所述單向算法和所述第三運算值對所述第二運算值進行運算,得到第四擴散值。
[0068]所述第三計算模塊包括:第二異或單元和第二運算單元;
[0069]所述第二異或單元,用于對所述第一生成模塊得到的所述第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值;
[0070]所述第二運算單元,用于根據(jù)單向算法和第一常數(shù)對所述第二異或單元得到的所述第三異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第五運算值。
[0071]所述第三計算模塊還包括第二補充單元,用于在所述第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)所述第三異或值的長度和所述第二數(shù)據(jù)的長度得到第二長度,將所述第二長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述種子補充值。
[0072]所述第二異或單元,還用于對所述第一生成模塊得到的所述第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值;
[0073]所述第二運算單元,還用于根據(jù)單向算法和第一常數(shù)對所述第二異或單元得到的所述第四異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第七運算值。
[0074]所述第四計算模塊具體用于:根據(jù)單向算法和所述第五運算值對所述種子補充值進行運算,得到第六擴散值,根據(jù)所述第六擴散值和所述第五運算值得到第六運算值,根據(jù)所述單向算法和所述第七運算值對所述第六運算值進行運算,得到第八擴散值,根據(jù)所述第八擴散值和所述第七運算值得到第八運算值。
[0075]所述第二生成模塊包括:第一獲取單元、第二獲取單元、第二轉(zhuǎn)換單元和第三獲取單元;
[0076]所述第一獲取單元,用于根據(jù)所述第四計算模塊得到的所述第八運算值得到字節(jié)位置標識;
[0077]所述第二獲取單元,用于從所述第四計算模塊得到的所述第八運算值中,與所述第一獲取單元得到的所述字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù);
[0078]所述第二轉(zhuǎn)換單元,用于將所述第二獲取單元獲取到的所述第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù);
[0079]所述第三獲取單元,用于根據(jù)所述接收模塊接收到的所述激活碼的長度,從所述第二轉(zhuǎn)換單元得到的所述第二應(yīng)答數(shù)據(jù)中獲取所述第二應(yīng)答碼。
[0080]所述第一獲取單元具體用于,獲取所述第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為所述字節(jié)位置標識。
[0081]所述第三獲取單元,具體用于將所述激活碼的長度的一半作為所述第二應(yīng)答碼的長度,根據(jù)所述第二應(yīng)答碼的長度從所述第二應(yīng)答數(shù)據(jù)的最低位開始獲取所述第二應(yīng)答碼。
[0082]本發(fā)明與現(xiàn)有技術(shù)相比,具有以下優(yōu)點:
[0083]本發(fā)明提供的一種激活動態(tài)令牌的方法和裝置,由于動態(tài)令牌中的新種子(第二種子)是根據(jù)舊種子(第一種子)和用戶輸入的激活碼,通過包括單向算法的一系列運算生成的,保證了動態(tài)令牌中的新種子(第二種子)的安全性,提高了使用動態(tài)令牌的安全性;在激活過程中,動態(tài)令牌首先根據(jù)預(yù)設(shè)的種子和接收到的挑戰(zhàn)值生成新種子(第二種子),再根據(jù)新種子(第二種子)生成動態(tài)令牌的應(yīng)答值,根據(jù)接收到的應(yīng)答值和動態(tài)令牌生成的應(yīng)答值判斷是否激活成功,若激活成功則動態(tài)令牌用新種子(第二種子)更新舊種子(第一種子),這種激活的方式能夠保證動態(tài)令牌中的新種子(第二種子)和認證服務(wù)器中的新種子是一致的,即保證了新種子的正確性。
【專利附圖】
【附圖說明】
[0084]圖1是本發(fā)明實施例1提供的一種激活動態(tài)令牌的方法的流程圖;
[0085]圖2是本發(fā)明實施例2提供的一種激活動態(tài)令牌的方法的流程圖;
[0086]圖3是本發(fā)明實施例2中步驟103的流程圖;
[0087]圖4是本發(fā)明實施例2中步驟104的流程圖;
[0088]圖5是本發(fā)明實施例3提供的一種激活動態(tài)令牌的裝置的模塊圖。
【具體實施方式】
[0089]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0090]實施例1
[0091]本發(fā)明的實施例1提供了一種激活動態(tài)令牌的方法,如圖1所示,包括:
[0092]步驟S1:動態(tài)令牌通過按鍵接收激活碼;
[0093]具體地,激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼;
[0094]步驟S2:動態(tài)令牌對預(yù)設(shè)的第一種子進行第一單向運算得到第一運算值,對激活碼中的激活挑戰(zhàn)碼進行轉(zhuǎn)換得到第二轉(zhuǎn)換值,對第一種子進行第二單向運算得到第三運算值;
[0095]步驟S3:動態(tài)令牌根據(jù)第一運算值、第二轉(zhuǎn)換值和第三運算值得到第四擴散值;
[0096]步驟S4:動態(tài)令牌根據(jù)第四擴散值和第三運算值生成第二種子;
[0097]具體地,第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù);
[0098]步驟S5:動態(tài)令牌對第二種子中的第一數(shù)據(jù)進行第一單向運算得到第五運算值,對第二種子中的第二數(shù)據(jù)進行補充得到種子補充值,對第二種子中的第一數(shù)據(jù)進行第二單向運算得到第七運算值;
[0099]步驟S6:動態(tài)令牌根據(jù)第五運算值、種子補充值和第七運算值得到第八運算值;
[0100]步驟S7:動態(tài)令牌根據(jù)第八運算值生成第二應(yīng)答碼;
[0101]步驟S8:動態(tài)令牌判斷第二應(yīng)答碼和接收到的激活碼中的激活應(yīng)答碼是否一致,是則執(zhí)行步驟S9,否則顯示錯誤信息,結(jié)束;
[0102]步驟S9:動態(tài)令牌根據(jù)第二種子更新預(yù)設(shè)的第一種子,激活成功,結(jié)束。
[0103]本實施例提供的一種激活動態(tài)令牌的方法,由于動態(tài)令牌中的第二種子是根據(jù)第一種子和用戶輸入的激活碼,通過包括單向算法的一系列運算生成的,保證了動態(tài)令牌中的第二種子的安全性,提高了使用動態(tài)令牌的安全性;在激活過程中,動態(tài)令牌首先根據(jù)預(yù)設(shè)的種子和接收到的挑戰(zhàn)值生成第二種子,再根據(jù)第二種子生成動態(tài)令牌的應(yīng)答值,根據(jù)接收到的應(yīng)答值和動態(tài)令牌生成的應(yīng)答值判斷是否激活成功,若激活成功則動態(tài)令牌用第二種子更新第一種子,這種激活的方法能夠保證動態(tài)令牌中的第二種子和認證服務(wù)器中的新種子是一致的,即保證了新種子的正確性。
[0104]實施例2
[0105]本發(fā)明的實施例2提供了一種激活動態(tài)令牌的方法,如圖2所示,包括:
[0106]步驟101:動態(tài)令牌通過按鍵接收激活碼;
[0107]例如,本實施例中,激活碼為123456258656 ;
[0108]步驟102:動態(tài)令牌判斷接收到的激活碼的長度是否為第一預(yù)設(shè)長度,是則執(zhí)行步驟103,否則顯示錯誤信息,返回步驟101 ;
[0109]具體地,激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼;動態(tài)令牌將激活碼拆分成等長的兩部分,前一部分為激活挑戰(zhàn)碼,后一部分為激活應(yīng)答碼;
[0110]例如,激活碼為123456258656,其中,激活挑戰(zhàn)碼為123456,激活應(yīng)答碼為258656 ;
[0111]步驟103:動態(tài)令牌根據(jù)預(yù)設(shè)的第一種子和接收到的激活碼中的激活挑戰(zhàn)碼,生成第二種子;
[0112]例如,本實施例中,預(yù)設(shè)的第一種子為:
[0113]0102030405060708090a0b0c0d0e0fl011121314
[0114]接收到的激活碼中的激活挑戰(zhàn)碼為123456 ;
[0115]生成的第二種子為:302R)BC29A10D098676E4202A534B2C33E67DF4D;
[0116]具體地,第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù);動態(tài)令牌將第二種子拆分成等長的兩部分,前一部分為第一數(shù)據(jù),后一部分為第二數(shù)據(jù);
[0117]例如,第二種子中的第一數(shù)據(jù)為302R)BC29A10D098676E,第二種子中的第二數(shù)據(jù)為:4202A534B2C33E67DF4D ;
[0118]步驟104:動態(tài)令牌根據(jù)生成的第二種子,生成第二應(yīng)答碼;
[0119]例如,生成的第二應(yīng)答碼為258656 ;
[0120]步驟105:動態(tài)令牌判斷計算生成的第二應(yīng)答碼和接收到的激活碼中的激活應(yīng)答碼是否一致,是則執(zhí)行步驟106,否則顯示錯誤信息,結(jié)束;
[0121]例如,本實施例中,生成的第二應(yīng)答碼和接收到的激活碼中的激活應(yīng)答碼均為258656,則執(zhí)行步驟106 ;
[0122]步驟106:動態(tài)令牌根據(jù)生成的第二種子更新預(yù)設(shè)的第一種子,激活成功,結(jié)束;
[0123]例如,本實施例中,動態(tài)令牌用第二種子302F0BC29A10D098676E4202A534B2C33E67DF4D 更新第一種子 0102030405060708090a0b0c0d0e0fl011121314 ;
[0124]如圖3所示,本實施例中,步驟103中動態(tài)令牌根據(jù)預(yù)設(shè)的第一種子和接收到的激活碼中的激活挑戰(zhàn)碼,生成第二種子,包括:
[0125]步驟AOl:動態(tài)令牌對預(yù)設(shè)的第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值;
[0126]優(yōu)選地,第一預(yù)設(shè)值為0x36 ;
[0127]例如,預(yù)設(shè)的第一種子為0102030405060708090a0b0c0d0e0fl011121314,第一種子與0x36異或結(jié)果,即第一異或值為:
[0128]373435323330313E3F3C3D3A3B383926272425223636363636363636363636363636363636363636363636363636363636363636363636363636363636363636 ;
[0129]步驟A02:動態(tài)令牌根據(jù)單向算法和第一常數(shù)對第一異或值進行運算,得到第一擴散值;
[0130]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0131]例如,本實施例中,第一常數(shù)為:
[0132]67452301EFCDAB8998BADCFE10325476C3D2E1F0 ;
[0133]根據(jù)第一常數(shù)對第一異或值373435323330313E3F3C3D3A3B383926272425223636363636363636363636363636363636363636363636363636363636363636363636363636363636363636進行SHAl擴散運算,得到第一擴散值為:
[0134]9145DC6E9B7AE9B7CEAE940FE0FB70A09C36A8C7 ;
[0135]步驟A03:動態(tài)令牌根據(jù)第一擴散值和第一常數(shù),得到第一運算值;
[0136]具體地,本實施例中,動態(tài)令牌分別將第一擴散值和第一常數(shù)按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第一擴散值和第一常數(shù)對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)加,相鄰的組之間不進行進位,得到第一運算值;
[0137]例如,第一擴散值為:914roC6E9B7AE9B7CEAE940FE0FB70A09C36A8C7;
[0138]第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0139]得到的第一運算值為:F88AFF6F8B4895406769710DF12DC51660098AB7;
[0140]步驟A04:動態(tài)令牌將接收到的激活碼中的激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值;
[0141]例如,激活挑戰(zhàn)碼為123456,轉(zhuǎn)換為16進制整數(shù),即第一轉(zhuǎn)換值為:0X0001E240 ;
[0142]步驟A05:動態(tài)令牌對第一轉(zhuǎn)換值進行補充,得到第二轉(zhuǎn)換值;
[0143]具體地,動態(tài)令牌在第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)第一異或值的長度和第一轉(zhuǎn)換值的長度得到第一長度,將第一長度填充在第二預(yù)設(shè)值之后,并在第二預(yù)設(shè)值和第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到第二轉(zhuǎn)換值;
[0144]優(yōu)選地,第二預(yù)設(shè)值為0x80,第一異或值的長度加上第一轉(zhuǎn)換值的長度得到第一長度;
[0145]例如,第一轉(zhuǎn)換值為:0001E240,第一異或值的長度為64字節(jié),第一轉(zhuǎn)換值的長度為4字節(jié),得到的第一長度為出4+4)*8 = 0x0220 ;補充得到的第二轉(zhuǎn)換值為:
[0146]0001E240800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000220 ;
[0147]步驟A06:動態(tài)令牌根據(jù)單向算法和第一運算值對第二轉(zhuǎn)換值進行運算,得到第二擴散值;
[0148]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0149]例如,第一運算值為:F88AFF6F8B4895406769710DF12DC51660098AB7;
[0150]第二轉(zhuǎn)換值為:
[0151 ] 0001E240800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000220 ;
[0152]得到的第二擴散值為:C21C444A3A3CF97128A928618AFD2ED98272EF66;
[0153]步驟A07:動態(tài)令牌根據(jù)第二擴散值和第一運算值,得到第二運算值;
[0154]具體地,本實施例中,動態(tài)令牌分別將第二擴散值和第一運算值按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第二擴散值和第一運算值對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)力口,相鄰的組之間不進行進位,得到第二運算值;
[0155]例如,第二擴散值為:C21C444A3A3CF97128A928618AFD2ED98272EF66;
[0156]第一運算值為:F88AFF6F8B4895406769710DF12DC51660098AB7;
[0157]得到的第二運算值為:BAA743B9C5858EB19012996E7C2AF3EFE07C7A1D;
[0158]步驟A08:動態(tài)令牌對預(yù)設(shè)的第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值;
[0159]優(yōu)選地,第三預(yù)設(shè)值為0x5c ;
[0160]例如,預(yù)設(shè)的第一種子為0102030405060708090a0b0c0d0e0fl011121314,第一種子與0x5c異或結(jié)果,即第二異或值為:
[0161]5D5E5F58595A5B54555657505152534C4D4E4F485C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C ;
[0162]步驟A09:動態(tài)令牌根據(jù)單向算法和第一常數(shù)對第二異或值進行運算,得到第三擴散值;
[0163]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0164]例如,第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0165]根據(jù)第一常數(shù)對第二異或值OT5E5F58595A5B54555657505152534C4D4E4
[0166]F485C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C 進行 SHAl 擴散運算,得到第三擴散值為:478E9C59D5F2D4FD370495C36494C71984650018 ;
[0167]步驟AlO:動態(tài)令牌根據(jù)第三擴散值和第一常數(shù),得到第三運算值;
[0168]具體地,本實施例中,動態(tài)令牌分別將第三擴散值和第一常數(shù)按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第三擴散值和第一常數(shù)對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)加,相鄰的組之間不進行進位,得到第三運算值;
[0169]例如,第三擴散值為:478E9C59D5F2D4FD370495C36494C71984650018;
[0170]第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0171]得到的第三運算值為:AED3BF5AC5C08086CFBF72C174C71B8F4837E208;
[0172]步驟All:動態(tài)令牌根據(jù)單向算法和第三運算值對第二運算值進行運算,得到第四擴散值;
[0173]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0174]例如,第三運算值為:AED3BF5AC5C08086CFBF72C174C71B8F4837E208;
[0175]第二運算值為:BAA743B9C5858EB19012996E7C2AF3EFE07C7A1D;
[0176]得到的第四擴散值為:815B4C68D450501297AECF41306D9734F62FFD45;
[0177]步驟A12:動態(tài)令牌根據(jù)第四擴散值和第三運算值,得到第四運算值作為第二種子;
[0178]具體地,本實施例中,動態(tài)令牌分別將第四擴散值和第三運算值按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第四擴散值和第三運算值對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)力口,相鄰的組之間不進行進位,得到第四運算值;
[0179]例如,第四擴散值為:815B4C68D450501297AECF41306D9734F62FFD45;
[0180]第三運算值為:AED3BF5AC5C08086CFBF72C174C71B8F4837E208;
[0181]得到第四運算值作為第二種子,即第二種子為:
[0182]302F0BC29A10D098676E4202A534B2C33E67DF4D ;
[0183]如圖4所示,本實施例中,步驟104中動態(tài)令牌根據(jù)生成的第二種子生成第二應(yīng)答碼,包括:
[0184]步驟BOl:動態(tài)令牌獲取第二種子中的第一數(shù)據(jù),對第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值;
[0185]具體地,動態(tài)令牌將第二種子拆分成等長的兩部分,前一部分為第一數(shù)據(jù);
[0186]優(yōu)選地,第一預(yù)設(shè)值為0x36 ;
[0187]例如,第二種子中的第一數(shù)據(jù)為302F0BC29A10D098676E,第一數(shù)據(jù)與0x36異或結(jié)果,即第三異或值為:
[0188]06193DF4AC26E6AE5158363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636 ;
[0189]步驟B02:動態(tài)令牌根據(jù)單向算法和第一常數(shù)對第三異或值進行運算,得到第五擴散值;
[0190]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0191]例如,本實施例中,第一常數(shù)為:
[0192]67452301EFCDAB8998BADCFE10325476C3D2E1F0 ;
[0193]根據(jù)第一常數(shù)對第三異或值06193DF4AC26E6AE5158363636363636363636
[0194]363636363636363636363636363636363636363636363636363636363636363636363636363636363636363636進行SHAl擴散運算,得到第五擴散值為:
[0195]893F911A1A13AD83B9F01D9EEF554C72FA17C14D ;
[0196]步驟B03:動態(tài)令牌根據(jù)第五擴散值和第一常數(shù),得到第五運算值;
[0197]具體地,本實施例中,動態(tài)令牌分別將第五擴散值和第一常數(shù)按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第五擴散值和第一常數(shù)對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)加,相鄰的組之間不進行進位,得到第五運算值;
[0198]例如,第五擴散值為:893F911A1A13AD83B9R)1D9EEF554C72FA17C14D;
[0199]第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0200]得到的第五運算值為:
[0201]F084B41B09E1590C52AAFA9CFF87A0E8BDEAA33D ;
[0202]步驟B04:動態(tài)令牌獲取第二種子中的第二數(shù)據(jù),對第二數(shù)據(jù)進行補充,得到種子補充值;
[0203]具體地,動態(tài)令牌將第二種子拆分成等長的兩部分,前一部分為第一數(shù)據(jù),后一部分為第二數(shù)據(jù);動態(tài)令牌在第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)第三異或值的長度和第二數(shù)據(jù)的長度得到第二長度,將第二長度填充在第二預(yù)設(shè)值之后,并在第二預(yù)設(shè)值和第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到種子補充值;
[0204]例如,第二預(yù)設(shè)值為0x80,第三異或值的長度加上第二數(shù)據(jù)的長度得到第二長度;
[0205]例如,第二數(shù)據(jù)為:4202A534B2C33E67DF4D,第三異或值的長度為64字節(jié),第二數(shù)據(jù)的長度為10字節(jié),得到的第二長度為(64+10)*8 = 0x0250 ;補充得到的種子補充值為:
[0206]4202A534B2C33E67DF4D800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000250 ;
[0207]步驟B05:動態(tài)令牌根據(jù)單向算法和第五運算值對種子補充值進行運算,得到第六擴散值;
[0208]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0209]例如,第五運算值為:
[0210]F084B41B09E1590C52AAFA9CFF87A0E8BDEAA33D ;
[0211]種子補充值為:
[0212]4202A534B2C33E67DF4D800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000250 ;
[0213]得到的第六擴散值為:800D67401C55037C24521784F6F5C2225623FC7C;
[0214]步驟B06:動態(tài)令牌根據(jù)第六擴散值和第五運算值,得到第六運算值;
[0215]具體地,本實施例中,動態(tài)令牌分別將第六擴散值和第五運算值按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第六擴散值和第五運算值對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)力口,相鄰的組之間不進行進位,得到第六運算值;
[0216]例如,第六擴散值為:800D67401C55037C24521784F6F5C2225623FC7C;
[0217]第五運算值為:F084B41B09E1590C52AAFA9CFF87A0E8BDEAA33D;
[0218]得到的第六運算值為:70921B5B26365C8876FD1220F67D630A140E9FB9;
[0219]步驟B07:動態(tài)令牌對第二種子中的第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值;
[0220]優(yōu)選地,第三預(yù)設(shè)值為0x5c ;
[0221]例如,第二種子中的第一數(shù)據(jù)為302R)BC29A10D098676E,第二種子中的第一數(shù)據(jù)與0x5c異或結(jié)果,即第四異或值為:
[0222]6C73579EC64C8CC43B325C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C ;
[0223]步驟B08:動態(tài)令牌根據(jù)單向算法和第一常數(shù)對第四異或值進行運算,得到第七擴散值;
[0224]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0225]例如:第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0226]根據(jù)第一常數(shù)對第四異或值6C73579EC64C8CC43B325C5C5C5C5C5C5C5
[0227]C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C5C進行SHAl擴散運算,得到第七擴散值為:
[0228]A98BE59B0871A3DC41DB81B338FB26E9D2944583 ;
[0229]步驟B09:動態(tài)令牌根據(jù)第七擴散值和第一常數(shù),得到第七運算值;
[0230]具體地,本實施例中,動態(tài)令牌分別將第七擴散值和第一常數(shù)按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第七擴散值和第一常數(shù)對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)加,相鄰的組之間不進行進位,得到第七運算值;
[0231]例如,第七擴散值為:A98BE59B0871A3DC41DB81B338FB26E9D2944583;
[0232]第一常數(shù)為:67452301EFCDAB8998BADCFE10325476C3D2E1R);
[0233]得到的第七運算值為:10D1089CF83F4F65DA965EB1492D7B5F96672773;
[0234]步驟BlO:動態(tài)令牌根據(jù)單向算法和第七運算值對第六運算值進行運算,得到第八擴散值;
[0235]優(yōu)選地,本實施例中,單向算法為SHAl擴散運算;除此之外,單向算法還可以為SHA256運算,SHA512運算,SM3運算;
[0236]例如,第七運算值為:10D1089CF83F4F65DA965EB1492D7B5F96672773;
[0237]第六運算值為:70921B5B26365C8876FD1220F67D630A140E9FB9;
[0238]得到的第八擴散值為:
[0239]410EB70F2A19B2FBE83CF53AFBA3C9AA0D18D2A1 ;
[0240]步驟Bll:動態(tài)令牌根據(jù)第八擴散值和第七運算值,得到第八運算值;
[0241]具體地,本實施例中,動態(tài)令牌分別將第八擴散值和第七運算值按照每組4個字節(jié)的數(shù)據(jù)進行分組,將第八擴散值和第七運算值對應(yīng)的組中的4個字節(jié)的數(shù)據(jù)進行算術(shù)力口,相鄰的組之間不進行進位,得到第八運算值;
[0242]例如,第八擴散值為:410EB70F2A19B2FBE83CF53AFBA3C9AA0D18D2A1;
[0243]第七運算值為:10D1089CF83F4F65DA965EB1492D7B5F96672773;
[0244]得到的第八運算值為:51DFBFAB22590260C2D353EB44D14509A37FFA14;
[0245]步驟B12:動態(tài)令牌根據(jù)第八運算值得到字節(jié)位置標識;
[0246]具體地,動態(tài)令牌獲取第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為字節(jié)位置標識;
[0247]例如,第八運算值為51DFBFAB22590260C2D353EB44D14509A37FFA14,第八運算值的最后一個字節(jié)為0x14,第八運算值的最后一個字節(jié)的低四位數(shù)據(jù),即字節(jié)位置標識為4 ;
[0248]步驟B13:動態(tài)令牌從第八運算值中與字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù);
[0249]例如,第八運算值為51DFBFAB22590260C2D353EB44D14509A37FFA14,字節(jié)位置標識為4,動態(tài)令牌從第八運算值的第4個字節(jié)開始,獲取到的4個字節(jié)的數(shù)據(jù)為22590260,即第一應(yīng)答數(shù)據(jù)為22590260 ;
[0250]步驟B14:動態(tài)令牌將獲取到的第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù);
[0251]例如,第一應(yīng)答數(shù)據(jù)為22590260,轉(zhuǎn)換為10進制整數(shù),得到的第二應(yīng)答數(shù)據(jù)為:576258656 ;
[0252]步驟B15:動態(tài)令牌根據(jù)激活碼的長度從第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼;
[0253]具體地,本實施例中,動態(tài)令牌將激活碼的長度的1/2作為第二應(yīng)答碼的長度,根據(jù)第二應(yīng)答碼的長度從第二應(yīng)答數(shù)據(jù)的最低位開始獲取第二應(yīng)答碼;
[0254]例如,激活碼為123456258656,激活碼的長度為12位,則第二應(yīng)答碼的長度為6位,因此動態(tài)令牌獲取第二應(yīng)答數(shù)據(jù)的低6位數(shù)據(jù)作為第二應(yīng)答碼,即第二應(yīng)答碼為258656。
[0255]本實施例提供的一種激活動態(tài)令牌的方法,由于動態(tài)令牌中的新種子(第二種子)是根據(jù)舊種子(第一種子)和用戶輸入的激活碼,通過包括單向算法的一系列運算生成的,保證了動態(tài)令牌中的新種子(第二種子)的安全性,提高了使用動態(tài)令牌的安全性;在激活過程中,動態(tài)令牌首先根據(jù)預(yù)設(shè)的種子和接收到的挑戰(zhàn)值生成新種子(第二種子),再根據(jù)新種子(第二種子)生成動態(tài)令牌的應(yīng)答值,根據(jù)接收到的應(yīng)答值和生成的動態(tài)令牌的應(yīng)答值判斷是否激活成功,若激活成功則動態(tài)令牌用新種子(第二種子)更新舊種子(第一種子),這種激活的方式能夠保證動態(tài)令牌中的新種子(第二種子)和認證服務(wù)器中的新種子是一致的,即保證了新種子的正確性。
[0256]實施例3
[0257]本發(fā)明的實施例3提供了一種激活動態(tài)令牌的裝置,如圖5所示,包括:接收模塊301、第一計算模塊302、第二計算模塊303、第一生成模塊304、第三計算模塊305、第四計算模塊306、第二生成模塊307、第一判斷模塊308、顯示模塊309和第一更新模塊310 ;
[0258]接收模塊301,用于通過按鍵接收激活碼;
[0259]具體地,激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼;
[0260]第一計算模塊302,用于對預(yù)設(shè)的第一種子進行第一單向運算得到第一運算值,對接收模塊301接收到的激活碼中的激活挑戰(zhàn)碼進行轉(zhuǎn)換得到第二轉(zhuǎn)換值,對第一種子進行第二單向運算得到第三運算值;
[0261]第二計算模塊303,用于根據(jù)第一計算模塊302計算得到的第一運算值、第二轉(zhuǎn)換值和第三運算值得到第四擴散值;
[0262]第一生成模塊304,用于根據(jù)第二計算模塊303計算得到的第四擴散值和第一計算模塊302計算得到的第三運算值,生成第二種子;
[0263]具體地,第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù);
[0264]第三計算模塊305,用于對第一生成模塊304生成的第二種子中的第一數(shù)據(jù)進行第一單向運算得到第五運算值,對第一生成模塊304生成的第二種子中的第二數(shù)據(jù)進行補充得到種子補充值,對第一生成模塊304生成的第二種子中的第一數(shù)據(jù)進行第二單向運算得到第七運算值;
[0265]第四計算模塊306,用于根據(jù)第三計算模塊305計算得到的第五運算值、種子補充值和第七運算值得到第八運算值;
[0266]第二生成模塊307,用于根據(jù)第四計算模塊306計算得到的第八運算值生成第二應(yīng)答碼;
[0267]第一判斷模塊308,用于判斷第二生成模塊307生成的第二應(yīng)答碼和接收模塊301接收到的激活碼中的激活應(yīng)答碼是否一致;
[0268]顯示模塊309,用于在第一判斷模塊308判斷第二應(yīng)答碼和激活應(yīng)答碼不一致時,顯示錯誤信息;
[0269]第一更新模塊310,用于在第一判斷模塊308判斷第二應(yīng)答碼和激活應(yīng)答碼一致時,根據(jù)第一生成模塊304生成的第二種子更新預(yù)設(shè)的第一種子。
[0270]裝置包括第二判斷模塊,用于判斷接收模塊301接收到的激活碼的長度是否為第一預(yù)設(shè)長度;
[0271]第一計算模塊302,還用于在第二判斷模塊判斷為是時,進行工作;
[0272]顯示模塊309,還用于在第二判斷模塊判斷為否時,顯示錯誤信息。
[0273]第一計算模塊302包括:第一異或單元和第一運算單元;
[0274]第一異或單元,用于對預(yù)設(shè)的第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值;
[0275]第一運算單元,用于根據(jù)單向算法和第一常數(shù)對第一異或單元得到的第一異或值進行運算,再根據(jù)運算結(jié)果和第一常數(shù),得到第一運算值。
[0276]第一計算模塊302還包括:第一轉(zhuǎn)換單元和第一補充單元;
[0277]第一轉(zhuǎn)換單元,用于將接收模塊301接收到的激活碼中的激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值;
[0278]第一補充單元,用于對第一轉(zhuǎn)換單元得到的第一轉(zhuǎn)換值進行補充,得到第二轉(zhuǎn)換值。
[0279]第一補充單元具體用于在第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)第一異或值的長度和第一轉(zhuǎn)換值的長度得到第一長度,將第一長度填充在第二預(yù)設(shè)值之后,并在第二預(yù)設(shè)值和第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到第二轉(zhuǎn)換值。
[0280]第一計算模塊302中,
[0281]第一異或單元,還用于對預(yù)設(shè)的第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值;
[0282]第一運算單元,還用于根據(jù)單向算法和第一常數(shù)對第一異或單元得到的第二異或值進行運算,再根據(jù)運算結(jié)果和第一常數(shù),得到第三運算值。
[0283]第二計算模塊303具體用于:根據(jù)單向算法和第一運算值對第二轉(zhuǎn)換值進行運算,得到第二擴散值,根據(jù)第二擴散值和第一運算值得到第二運算值,根據(jù)單向算法和第三運算值對第二運算值進行運算,得到第四擴散值。
[0284]第三計算模塊305包括:第二異或單元和第二運算單元;
[0285]第二異或單元,用于對第一生成模塊304得到的第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值;
[0286]第二運算單元,用于根據(jù)單向算法和第一常數(shù)對第二異或單元得到的第三異或值進行運算,再根據(jù)運算結(jié)果和第一常數(shù),得到第五運算值。
[0287]第三計算模塊305還包括第二補充單元,用于在第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)第三異或值的長度和第二數(shù)據(jù)的長度得到第二長度,將第二長度填充在第二預(yù)設(shè)值之后,并在第二預(yù)設(shè)值和第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到種子補充值。
[0288]第三計算模塊305中,
[0289]第二異或單元,還用于對第一生成模塊304得到的第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值;
[0290]第二運算單元,還用于根據(jù)單向算法和第一常數(shù)對第二異或單元得到的第四異或值進行運算,再根據(jù)運算結(jié)果和第一常數(shù),得到第七運算值。
[0291]第四計算模塊306具體用于:根據(jù)單向算法和第五運算值對種子補充值進行運算,得到第六擴散值,根據(jù)第六擴散值和第五運算值得到第六運算值,根據(jù)單向算法和第七運算值對第六運算值進行運算,得到第八擴散值,根據(jù)第八擴散值和第七運算值得到第八運算值。
[0292]第二生成模塊307包括:第一獲取單元、第二獲取單元、第二轉(zhuǎn)換單元和第三獲取單元;
[0293]第一獲取單元,用于根據(jù)第四計算模塊306得到的第八運算值得到字節(jié)位置標識;
[0294]第二獲取單元,用于從第四計算模塊306得到的第八運算值中,與第一獲取單元得到的字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù);
[0295]第二轉(zhuǎn)換單元,用于將第二獲取單元獲取到的第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù);
[0296]第三獲取單元,用于根據(jù)接收模塊301接收到的激活碼的長度,從第二轉(zhuǎn)換單元得到的第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼。
[0297]第一獲取單元具體用于,獲取第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為字節(jié)位置標識。
[0298]第三獲取單元,具體用于將激活碼的長度的一半作為第二應(yīng)答碼的長度,根據(jù)第二應(yīng)答碼的長度從第二應(yīng)答數(shù)據(jù)的最低位開始獲取第二應(yīng)答碼。
[0299]本實施例提供的一種激活動態(tài)令牌的裝置,由于第二種子是根據(jù)第一種子和用戶輸入的激活碼,通過包括單向算法的一系列運算生成的,保證了第二種子的安全性,提高了使用動態(tài)令牌的安全性;在激活時,裝置首先根據(jù)預(yù)設(shè)的種子和接收到的挑戰(zhàn)值生成第二種子,再根據(jù)第二種子生成應(yīng)答值,根據(jù)接收到的應(yīng)答值和生成的應(yīng)答值判斷是否激活成功,若激活成功則用第二種子更新第一種子,這種激活的裝置能夠保證動態(tài)令牌中的第二種子和認證服務(wù)器中的新種子是一致的,即保證了新種子的正確性。
[0300]以上所述,僅為本發(fā)明較佳的【具體實施方式】,但本發(fā)明的保護范圍并不局限于此,任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明公開的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護范圍之內(nèi)。因此,本發(fā)明的保護范圍應(yīng)該以權(quán)利要求的保護范圍為準。
【權(quán)利要求】
1.一種激活動態(tài)令牌的方法,其特征在于,所述方法包括: 步驟S1:所述動態(tài)令牌通過按鍵接收激活碼,所述激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼; 步驟S2:所述動態(tài)令牌對預(yù)設(shè)的第一種子進行第一單向運算,得到第一運算值;對所述激活挑戰(zhàn)碼進行轉(zhuǎn)換,得到第二轉(zhuǎn)換值;對所述第一種子進行第二單向運算,得到第三運算值; 步驟S3:所述動態(tài)令牌根據(jù)所述第一運算值、所述第二轉(zhuǎn)換值和所述第三運算值,得到第四擴散值; 步驟S4:所述動態(tài)令牌根據(jù)所述第四擴散值和所述第三運算值,生成第二種子,所述第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù); 步驟S5:所述動態(tài)令牌對所述第一數(shù)據(jù)進行第一單向運算,得到第五運算值;對所述第二數(shù)據(jù)進行補充,得到種子補充值;對所述第一數(shù)據(jù)進行第二單向運算,得到第七運算值; 步驟S6:所述動態(tài)令牌根據(jù)所述第五運算值、所述種子補充值和所述第七運算值,得到第八運算值; 步驟S7:所述動態(tài)令牌根據(jù)所述第八運算值,生成第二應(yīng)答碼; 步驟S8:所述動態(tài)令牌判斷所述第二應(yīng)答碼和接收到的所述激活應(yīng)答碼是否一致,是則執(zhí)行步驟S9,否則顯示錯誤信息,結(jié)束; 步驟S9:所述動態(tài)令牌根據(jù)所述第二種子更新所述第一種子,激活成功,結(jié)束。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S2之前包括:所述動態(tài)令牌判斷所述激活碼的長度是否為第一預(yù)設(shè)長度,是則執(zhí)行步驟S2,否則顯示錯誤信息,返回步驟SI。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌對預(yù)設(shè)的第一種子進行第一單向運算,得到第一運算值,具體為: 所述動態(tài)令牌對所述第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值; 所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第一異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第一運算值。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述動態(tài)令牌對所述激活挑戰(zhàn)碼進行轉(zhuǎn)換,得到第二轉(zhuǎn)換值,具體為: 所述動態(tài)令牌將所述激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值; 所述動態(tài)令牌對所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述動態(tài)令牌對所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值,具體為: 所述動態(tài)令牌在所述第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)所述第一異或值的長度和所述第一轉(zhuǎn)換值的長度得到第一長度,將所述第一長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述第二轉(zhuǎn)換值。
6.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌對所述第一種子進行第二單向運算,得到第三運算值,具體為: 所述動態(tài)令牌對所述第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值; 所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第二異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第三運算值。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌根據(jù)所述第一運算值、第二轉(zhuǎn)換值和所述第三運算值,得到第四擴散值,具體為: 所述動態(tài)令牌根據(jù)單向算法和所述第一運算值對所述第二轉(zhuǎn)換值進行運算,得到第二擴散值;根據(jù)所述第二擴散值和所述第一運算值,得到第二運算值;根據(jù)所述單向算法和所述第三運算值對所述第二運算值進行運算,得到第四擴散值。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌對所述第一數(shù)據(jù)進行第一單向運算,得到第五運算值,具體為: 所述動態(tài)令牌對所述第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值; 所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第三異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第五運算值。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述動態(tài)令牌對所述第二數(shù)據(jù)進行補充,得到種子補充值,具體為: 所述動態(tài)令牌在所述第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)所述第三異或值的長度和所述第二數(shù)據(jù)的長度得到第二長度,將所述第二長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述種子補充值。
10.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌對所述第一數(shù)據(jù)進行第二單向運算,得到第七運算值,具體為: 所述動態(tài)令牌對所述第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值; 所述動態(tài)令牌根據(jù)單向算法和第一常數(shù)對所述第四異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第七運算值。
11.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述動態(tài)令牌根據(jù)所述第五運算值、所述種子補充值和所述第七運算值,得到第八運算值,具體為: 所述動態(tài)令牌根據(jù)單向算法和所述第五運算值對所述種子補充值進行運算,得到第六擴散值;根據(jù)所述第六擴散值和所述第五運算值,得到第六運算值;根據(jù)所述單向算法和所述第七運算值對所述第六運算值進行運算,得到第八擴散值;根據(jù)所述第八擴散值和所述第七運算值,得到第八運算值。
12.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟S7,具體包括: 步驟S7-1:所述動態(tài)令牌根據(jù)所述第八運算值得到字節(jié)位置標識; 步驟S7-2:所述動態(tài)令牌從所述第八運算值中與所述字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù); 步驟S7-3:所述動態(tài)令牌將所述第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù); 步驟S7-4:所述動態(tài)令牌根據(jù)所述激活碼的長度,從所述第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼。
13.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述動態(tài)令牌根據(jù)第八運算值得到字節(jié)位置標識,具體為:所述動態(tài)令牌獲取所述第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為所述字節(jié)位置標識。
14.根據(jù)權(quán)利要求12所述的方法,其特征在于,所述動態(tài)令牌根據(jù)所述激活碼的長度,從所述第二應(yīng)答數(shù)據(jù)中獲取第二應(yīng)答碼,具體為: 所述動態(tài)令牌將所述激活碼的長度的一半作為所述第二應(yīng)答碼的長度,根據(jù)所述第二應(yīng)答碼的長度從所述第二應(yīng)答數(shù)據(jù)的最低位開始獲取所述第二應(yīng)答碼。
15.一種激活動態(tài)令牌的裝置,其特征在于,包括:接收模塊、第一計算模塊、第二計算模塊、第一生成模塊、第三計算模塊、第四計算模塊、第二生成模塊、第一判斷模塊、顯示模塊和第一更新模塊; 所述接收模塊,用于通過按鍵接收激活碼,所述激活碼包括激活挑戰(zhàn)碼和激活應(yīng)答碼; 所述第一計算模塊,用于對預(yù)設(shè)的第一種子進行第一單向運算,得到第一運算值;對所述接收模塊接收到的所述激活挑戰(zhàn)碼進行轉(zhuǎn)換,得到第二轉(zhuǎn)換值;對所述第一種子進行第二單向運算,得到第三運算值; 所述第二計算模塊,用于根據(jù)所述第一計算模塊計算得到的所述第一運算值、所述第二轉(zhuǎn)換值和所述第三運算值,得到第四擴散值; 所述第一生成模塊,用于根據(jù)所述第二計算模塊計算得到的所述第四擴散值和所述第一計算模塊計算得到的所述第三運算值,生成第二種子,所述第二種子包括第一數(shù)據(jù)和第二數(shù)據(jù); 所述第三計算模塊,用于對所述第一生成模塊生成的第一數(shù)據(jù)進行第一單向運算,得到第五運算值;對所述第一生成模塊生成的第二數(shù)據(jù)進行補充,得到種子補充值;對所述第一生成模塊生成的第一數(shù)據(jù)進行第二單向運算,得到第七運算值; 所述第四計算模塊,用于根據(jù)所述第三計算模塊計算得到的所述第五運算值、所述種子補充值和所述第七運算值,得到第八運算值; 所述第二生成模塊,用于根據(jù)所述第四計算模塊計算得到的所述第八運算值,生成第二應(yīng)答碼; 所述第一判斷模塊,用于判斷所述第二生成模塊生成的所述第二應(yīng)答碼和所述接收模塊接收到的所述激活應(yīng)答碼是否一致; 所述顯示模塊,用于在所述第一判斷模塊判斷所述第二應(yīng)答碼和所述激活應(yīng)答碼不一致時,顯示錯誤信息; 所述第一更新模塊,用于在所述第一判斷模塊判斷所述第二應(yīng)答碼和所述激活應(yīng)答碼一致時,根據(jù)所述第一生成模塊生成的所述第二種子更新所述第一種子。
16.根據(jù)權(quán)利要求15所述的裝置,其特征在于,包括第二判斷模塊,用于判斷所述接收模塊接收到的所述激活碼的長度是否為第一預(yù)設(shè)長度; 所述第一計算模塊,還用于在所述第二判斷模塊判斷為是時,進行工作; 所述顯示模塊,還用于在所述第二判斷模塊判斷為否時,顯示錯誤信息。
17.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第一計算模塊包括:第一異或單元和第一運算單元; 所述第一異或單元,用于對所述第一種子和第一預(yù)設(shè)值進行異或運算,得到第一異或值; 所述第一運算單元,用于根據(jù)單向算法和第一常數(shù)對所述第一異或單元得到的所述第一異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第一運算值。
18.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述第一計算模塊還包括:第一轉(zhuǎn)換單元和第一補充單元; 所述第一轉(zhuǎn)換單元,用于將所述接收模塊接收到的所述激活挑戰(zhàn)碼轉(zhuǎn)換為16進制整數(shù),得到第一轉(zhuǎn)換值; 所述第一補充單元,用于對所述第一轉(zhuǎn)換單元得到的所述第一轉(zhuǎn)換值進行補充,得到所述第二轉(zhuǎn)換值。
19.根據(jù)權(quán)利要求18所述的裝置,其特征在于,所述第一補充單元具體用于在所述第一轉(zhuǎn)換值后面填充第二預(yù)設(shè)值,根據(jù)所述第一異或值的長度和所述第一轉(zhuǎn)換值的長度得到第一長度,將所述第一長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第一長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述第二轉(zhuǎn)換值。
20.根據(jù)權(quán)利要求17所述的裝置,其特征在于,所述第一異或單元,還用于對所述第一種子和第三預(yù)設(shè)值進行異或運算,得到第二異或值; 所述第一運算單元,還用于根據(jù)單向算法和第一常數(shù)對所述第一異或單元得到的所述第二異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第三運算值。
21.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第二計算模塊具體用于:根據(jù)單向算法和所述第一運算值對所述第二轉(zhuǎn)換值進行運算,得到第二擴散值;根據(jù)所述第二擴散值和所述第一運算值,得到第二運算值;根據(jù)所述單向算法和所述第三運算值對所述第二運算值進行運算,得到第四擴散值。
22.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第三計算模塊包括:第二異或單元和第二運算單元; 所述第二異或單元,用于對所述第一生成模塊得到的所述第一數(shù)據(jù)和第一預(yù)設(shè)值進行異或運算,得到第三異或值; 所述第二運算單元,用于根據(jù)單向算法和第一常數(shù)對所述第二異或單元得到的所述第三異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第五運算值。
23.根據(jù)權(quán)利要求22所述的裝置,其特征在于,所述第三計算模塊還包括第二補充單元,用于在所述第二數(shù)據(jù)后面填充第二預(yù)設(shè)值,根據(jù)所述第三異或值的長度和所述第二數(shù)據(jù)的長度得到第二長度,將所述第二長度填充在所述第二預(yù)設(shè)值之后,并在所述第二預(yù)設(shè)值和所述第二長度之間補0x00,使補充后的數(shù)據(jù)長度為512位的整數(shù)倍,得到所述種子補充值。
24.根據(jù)權(quán)利要求22所述的裝置,其特征在于,所述第二異或單元,還用于對所述第一生成模塊得到的所述第一數(shù)據(jù)和第三預(yù)設(shè)值進行異或運算,得到第四異或值; 所述第二運算單元,還用于根據(jù)單向算法和第一常數(shù)對所述第二異或單元得到的所述第四異或值進行運算,再根據(jù)運算結(jié)果和所述第一常數(shù),得到所述第七運算值。
25.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第四計算模塊具體用于:根據(jù)單向算法和所述第五運算值對所述種子補充值進行運算,得到第六擴散值;根據(jù)所述第六擴散值和所述第五運算值,得到第六運算值;根據(jù)所述單向算法和所述第七運算值對所述第六運算值進行運算,得到第八擴散值;根據(jù)所述第八擴散值和所述第七運算值,得到第八運算值。
26.根據(jù)權(quán)利要求15所述的裝置,其特征在于,所述第二生成模塊包括:第一獲取單元、第二獲取單元、第二轉(zhuǎn)換單元和第三獲取單元; 所述第一獲取單元,用于根據(jù)所述第四計算模塊得到的所述第八運算值得到字節(jié)位置標識; 所述第二獲取單元,用于從所述第四計算模塊得到的所述第八運算值中,與所述第一獲取單元得到的所述字節(jié)位置標識對應(yīng)的位置開始,獲取4個字節(jié)的數(shù)據(jù)作為第一應(yīng)答數(shù)據(jù); 所述第二轉(zhuǎn)換單元,用于將所述第二獲取單元獲取到的所述第一應(yīng)答數(shù)據(jù)轉(zhuǎn)換為10進制整數(shù),得到第二應(yīng)答數(shù)據(jù); 所述第三獲取單元,用于根據(jù)所述接收模塊接收到的所述激活碼的長度,從所述第二轉(zhuǎn)換單元得到的所述第二應(yīng)答數(shù)據(jù)中獲取所述第二應(yīng)答碼。
27.根據(jù)權(quán)利要求26所述的裝置,其特征在于,所述第一獲取單元具體用于,獲取所述第八運算值的最后一個字節(jié)的低四位數(shù)據(jù)作為所述字節(jié)位置標識。
28.根據(jù)權(quán)利要求26所述的裝置,其特征在于,所述第三獲取單元,具體用于將所述激活碼的長度的一半作為所述第二應(yīng)答碼的長度,根據(jù)所述第二應(yīng)答碼的長度從所述第二應(yīng)答數(shù)據(jù)的最低位開始獲取所述第二應(yīng)答碼。
【文檔編號】H04L9/32GK104184590SQ201410441637
【公開日】2014年12月3日 申請日期:2014年9月1日 優(yōu)先權(quán)日:2014年9月1日
【發(fā)明者】陸舟, 于華章 申請人:飛天誠信科技股份有限公司