本公開涉及安全領(lǐng)域,尤其涉及一種密碼生成方法、裝置、設(shè)備、介質(zhì)以及產(chǎn)品。
背景技術(shù):
1、一次性密碼(one?time?password,otp),又稱動(dòng)態(tài)密碼或單次有效密碼,是指計(jì)算器系統(tǒng)或其他數(shù)字設(shè)備上只能使用一次的密碼,有效期為只有一次登錄會(huì)話或交易,一次性密碼又分為基于時(shí)間戳算法的一次性密碼(time-based?one-time?password,totp)和基于hmac算法加密的一次性密碼(hmac-based?one-time?password,hotp)。
2、相關(guān)技術(shù)中,密鑰生成方生成密鑰后,密碼器讀取密鑰生成一次性密碼,然后密碼器再將一次性密碼進(jìn)行保存,但是,密碼器生成一次性密碼和保存一次性密碼的過(guò)程中,有將一次性密碼泄露的風(fēng)險(xiǎn),無(wú)法保證一次性密碼的安全性。
技術(shù)實(shí)現(xiàn)思路
1、本公開提供了一種密碼生成方法、裝置、設(shè)備、介質(zhì)以及產(chǎn)品。
2、根據(jù)本公開的第一方面,提供了一種密碼生成方法,應(yīng)用于密碼器,所述方法包括:
3、響應(yīng)于用戶的密鑰使用操作,向第三方平臺(tái)發(fā)送密鑰生成請(qǐng)求;其中,所述密鑰生成請(qǐng)求為請(qǐng)求生成對(duì)所述第三方平臺(tái)的使用密鑰;
4、獲取所述第三方平臺(tái)基于所述密鑰生成請(qǐng)求返回的鏈接標(biāo)識(shí)碼;其中,所述鏈接標(biāo)識(shí)碼中攜帶所述密碼器對(duì)sim卡運(yùn)營(yíng)方的訪問(wèn)鏈接;
5、基于所述鏈接標(biāo)識(shí)碼從所述sim卡運(yùn)營(yíng)方獲取認(rèn)證信息;
6、基于所述認(rèn)證信息從所述sim卡運(yùn)營(yíng)方獲取加密后的otp密鑰和密鑰參數(shù),并將所述加密后的otp密鑰和所述密鑰參數(shù)寫入所述用戶的sim卡。
7、進(jìn)一步地,所述基于所述鏈接標(biāo)識(shí)碼從所述sim卡運(yùn)營(yíng)方獲取認(rèn)證信息,包括:
8、基于所述鏈接標(biāo)識(shí)碼,訪問(wèn)所述sim卡運(yùn)營(yíng)方,并獲取所述sim卡運(yùn)營(yíng)方返回的第一確認(rèn)請(qǐng)求;其中,所述第一確認(rèn)請(qǐng)求用于確認(rèn)是否向?qū)?yīng)sim卡寫入otp密鑰;
9、在向所述sim卡運(yùn)營(yíng)方發(fā)送所述第一確認(rèn)請(qǐng)求的確認(rèn)寫入響應(yīng)之后,獲取所述sim卡運(yùn)營(yíng)方發(fā)送的所述第三方平臺(tái)的認(rèn)證信息;其中,所述認(rèn)證信息包含所述第三方平臺(tái)的回調(diào)地址和認(rèn)證標(biāo)識(shí)token,所述認(rèn)證標(biāo)識(shí)token與所述sim卡關(guān)聯(lián)。
10、進(jìn)一步地,所述基于所述認(rèn)證信息從所述sim卡運(yùn)營(yíng)方獲取加密后的otp密鑰和密鑰參數(shù),包括:
11、基于所述認(rèn)證信息中回調(diào)地址訪問(wèn)所述第三方平臺(tái),并將所述認(rèn)證標(biāo)識(shí)token發(fā)送給所述第三方平臺(tái);其中,所述第三方平臺(tái)將所述認(rèn)證標(biāo)識(shí)token、otp密鑰和密鑰參數(shù)發(fā)送至所述sim卡運(yùn)營(yíng)方;
12、獲取所述sim卡運(yùn)營(yíng)方返回的加密后otp密鑰和所述密鑰參數(shù);其中,所述加密后otp密鑰為所述sim卡運(yùn)營(yíng)方基于與所述認(rèn)證標(biāo)識(shí)token相匹配的sim卡密鑰對(duì)otp密鑰進(jìn)行加密得到。
13、進(jìn)一步地,所述將所述加密后的otp密鑰和所述密鑰參數(shù)寫入所述用戶的sim卡,包括:
14、展示提示信息;其中,所述提示信息用于指示是否寫入所述otp密鑰到對(duì)應(yīng)的sim卡;
15、響應(yīng)于所述用戶對(duì)所述提示信息的確認(rèn)操作,將所述加密后的otp密鑰和所述密鑰參數(shù)寫入所述用戶的sim卡;其中,所述加密后的otp密鑰用于被所述用戶的sim卡進(jìn)行解密,生成原文密鑰。
16、進(jìn)一步地,所述方法還包括:
17、在將所述加密后的otp密鑰和所述密鑰參數(shù)寫入所述用戶的sim卡之后,檢測(cè)所述用戶對(duì)所述第三方平臺(tái)的平臺(tái)訪問(wèn)操作;
18、在檢測(cè)到所述第三方平臺(tái)訪問(wèn)操作之后,向所述用戶的sim卡請(qǐng)求所述第三方平臺(tái)的一次性密碼。
19、進(jìn)一步地,所述向所述用戶的sim卡請(qǐng)求所述第三方平臺(tái)的一次性密碼,包括:
20、向所述sim卡發(fā)送密鑰查詢請(qǐng)求;
21、獲取所述sim卡基于所述密鑰查詢請(qǐng)求返回的密鑰列表;
22、基于所述密鑰列表中確定所述第三方平臺(tái)的一次性密碼。
23、進(jìn)一步地,所述基于所述密鑰列表中確定所述第三方平臺(tái)的一次性密碼,包括:
24、響應(yīng)于所述用戶對(duì)所述密鑰列表的選擇操作,在所述密鑰列表中確定與所述選擇操作相匹配的otp密鑰為目標(biāo)密鑰;
25、將所述目標(biāo)密鑰和當(dāng)前系統(tǒng)時(shí)間發(fā)送至所述sim卡;
26、獲取所述sim卡發(fā)送的所述一次性密碼;其中,所述用戶的sim卡根據(jù)所述目標(biāo)密鑰和所述當(dāng)前系統(tǒng)時(shí)間生成所述一次性密碼。
27、進(jìn)一步地,所述基于所述密鑰列表中確定所述第三方平臺(tái)的一次性密碼,包括:
28、響應(yīng)于所述用戶對(duì)所述密鑰列表的選擇操作,在所述密鑰列表中確定與所述選擇操作相匹配的otp密鑰為目標(biāo)密鑰;
29、獲取所述第三方平臺(tái)生成的臨時(shí)隨機(jī)碼;
30、將所述目標(biāo)密鑰和所述臨時(shí)隨機(jī)碼發(fā)送至所述用戶的sim卡;
31、獲取從所述用戶的sim卡發(fā)送的所述一次性密碼;其中,所述用戶的sim卡根據(jù)所述目標(biāo)密鑰和所述臨時(shí)隨機(jī)碼生成所述一次性密碼。
32、根據(jù)本公開的第二方面,提供了一種密碼生成方法,應(yīng)用于sim卡運(yùn)營(yíng)方,所述方法包括:
33、響應(yīng)于密碼器基于鏈接標(biāo)識(shí)碼發(fā)送的訪問(wèn)請(qǐng)求,確定認(rèn)證信息,并向所述密碼器發(fā)送所述認(rèn)證信息;其中,所述鏈接標(biāo)識(shí)碼為第三方平臺(tái)基于所述密碼器發(fā)送的密鑰生成請(qǐng)求,向所述密碼器返回的攜帶所述sim卡運(yùn)營(yíng)方的訪問(wèn)鏈接的標(biāo)識(shí)碼,所述密鑰生成請(qǐng)求為所述密碼器檢測(cè)到用戶的密鑰使用操作之后,向所述第三方平臺(tái)發(fā)送;
34、基于所述認(rèn)證信息確定加密后的otp密鑰和密鑰參數(shù),并向所述密碼器返回所述加密后的otp密鑰和密鑰參數(shù)。
35、進(jìn)一步地,所述基于所述認(rèn)證信息確定加密后的otp密鑰,包括:
36、獲取所述第三方平臺(tái)發(fā)送的認(rèn)證標(biāo)識(shí)token、otp密鑰和密鑰參數(shù);
37、在對(duì)所述認(rèn)證標(biāo)識(shí)token校驗(yàn)成功的情況下,基于與所述認(rèn)證標(biāo)識(shí)token相匹配的sim卡密鑰對(duì)所述otp密鑰進(jìn)行加密,生成加密后的otp密鑰。
38、進(jìn)一步地,所述響應(yīng)于密碼器基于鏈接標(biāo)識(shí)碼發(fā)送的訪問(wèn)請(qǐng)求,確定認(rèn)證信息,包括:
39、響應(yīng)于密碼器基于鏈接標(biāo)識(shí)碼發(fā)送的訪問(wèn)請(qǐng)求,生成第一確認(rèn)請(qǐng)求,并向所述密碼器發(fā)送所述第一確認(rèn)請(qǐng)求;其中,所述第一確認(rèn)請(qǐng)求用于確認(rèn)是否向?qū)?yīng)sim卡寫入otp密鑰;
40、在檢測(cè)到所述密碼器發(fā)送的對(duì)所述第一確認(rèn)請(qǐng)求的確認(rèn)寫入響應(yīng)之后,生成認(rèn)證信息,并向所述密碼器發(fā)送所述認(rèn)證信息;其中,所述認(rèn)證信息包含所述第三方平臺(tái)的回調(diào)地址和認(rèn)證標(biāo)識(shí)token,所述認(rèn)證標(biāo)識(shí)token與所述sim卡關(guān)聯(lián)。
41、根據(jù)本公開的第三方面,提供了一種密碼生成裝置,設(shè)置于密碼器,所述裝置包括:
42、發(fā)送模塊,用于響應(yīng)于用戶的密鑰使用操作,向第三方平臺(tái)發(fā)送密鑰生成請(qǐng)求;其中,所述密鑰生成請(qǐng)求為請(qǐng)求生成對(duì)所述第三方平臺(tái)的使用密鑰;
43、第一獲取模塊,用于獲取所述第三方平臺(tái)基于所述密鑰生成請(qǐng)求返回的鏈接標(biāo)識(shí)碼;其中,所述鏈接標(biāo)識(shí)碼中攜帶所述密碼器對(duì)sim卡運(yùn)營(yíng)方的訪問(wèn)鏈接;
44、第二獲取模塊,用于基于所述鏈接標(biāo)識(shí)碼從所述sim卡運(yùn)營(yíng)方獲取認(rèn)證信息;
45、寫入模塊,用于基于所述認(rèn)證信息從所述sim卡運(yùn)營(yíng)方獲取加密后的otp密鑰和密鑰參數(shù),并將所述加密后的otp密鑰和所述密鑰參數(shù)寫入所述用戶的sim卡。
46、根據(jù)本公開的第四方面,提供了一種密碼生成裝置,設(shè)置于sim卡運(yùn)營(yíng)方,所述裝置包括:
47、確定模塊,用于響應(yīng)于密碼器基于鏈接標(biāo)識(shí)碼發(fā)送的訪問(wèn)請(qǐng)求,確定認(rèn)證信息,并向所述密碼器發(fā)送所述認(rèn)證信息;其中,所述鏈接標(biāo)識(shí)碼為第三方平臺(tái)基于所述密碼器發(fā)送的密鑰生成請(qǐng)求,向所述密碼器返回的攜帶所述sim卡運(yùn)營(yíng)方的訪問(wèn)鏈接的標(biāo)識(shí)碼,所述密鑰生成請(qǐng)求為所述密碼器檢測(cè)到用戶的密鑰使用操作之后,向所述第三方平臺(tái)發(fā)送;
48、返回模塊,用于基于所述認(rèn)證信息確定加密后的otp密鑰和密鑰參數(shù),并向所述密碼器返回所述加密后的otp密鑰和密鑰參數(shù)。
49、根據(jù)本公開的第五方面,提供了一種電子設(shè)備。該電子設(shè)備包括:存儲(chǔ)器和處理器,所述存儲(chǔ)器上存儲(chǔ)有計(jì)算機(jī)程序,所述處理器執(zhí)行所述程序時(shí)實(shí)現(xiàn)如以上所述的方法。
50、根據(jù)本公開的第六方面,提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其上存儲(chǔ)有計(jì)算機(jī)程序,所述程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)本公開的上述方法。
51、根據(jù)本公開的第七方面,提供了一種計(jì)算機(jī)程序產(chǎn)品。該計(jì)算機(jī)程序產(chǎn)品包括計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)本公開的上述方法。
52、本公開實(shí)施例提供的一種密碼生成方法、裝置、設(shè)備、介質(zhì)以及產(chǎn)品,在本技術(shù)實(shí)施例中,首先,密碼器響應(yīng)于用戶的密鑰使用操作,向第三方平臺(tái)發(fā)送密鑰生成請(qǐng)求;其中,密鑰生成請(qǐng)求為請(qǐng)求生成對(duì)第三方平臺(tái)的使用密鑰;之后,密碼器獲取第三方平臺(tái)基于密鑰生成請(qǐng)求返回的鏈接標(biāo)識(shí)碼;其中,鏈接標(biāo)識(shí)碼中攜帶密碼器對(duì)sim卡運(yùn)營(yíng)方的訪問(wèn)鏈接;然后,密碼器基于鏈接標(biāo)識(shí)碼從sim卡運(yùn)營(yíng)方獲取認(rèn)證信息;最后,密碼器基于認(rèn)證信息從sim卡運(yùn)營(yíng)方獲取加密后的otp密鑰和密鑰參數(shù),并將加密后的otp密鑰和密鑰參數(shù)寫入用戶的sim卡。
53、上述實(shí)施方式中,密碼器基于鏈接標(biāo)識(shí)碼從sim卡運(yùn)營(yíng)方獲取認(rèn)證信息,然后再基于認(rèn)證信息從sim卡運(yùn)營(yíng)方獲取加密后的otp密鑰和密鑰參數(shù),密碼器獲取到的是加密后的otp密鑰,而不是otp的密鑰原文,最后密碼器再將加密后的otp密鑰和密鑰參數(shù)寫入用戶的sim卡,在整個(gè)過(guò)程中,密碼器都無(wú)法獲取到otp的密鑰原文,避免了密碼器將otp密鑰泄露的風(fēng)險(xiǎn),提高了密碼的安全性和可靠性。