本發(fā)明實施例涉及通信技術(shù),尤其涉及一種口令更新方法、用戶設備、用戶位置服務器及域路由器。
背景技術(shù):
隨著網(wǎng)絡技術(shù)的發(fā)展,電子商務、即時網(wǎng)絡通信等基于網(wǎng)絡的應用席卷全球,網(wǎng)絡安全問題越來越嚴重。當前網(wǎng)絡中,多通過對用戶進行訪問控制,從而對用戶身份的合法性進行驗證。最常見的訪問控制方法,為通過對用戶口令的匹配來確認用戶身份進行驗證。這就需要用戶在注冊時設置用戶口令,服務器側(cè)保存該用戶的用戶口令,以便該用戶接入網(wǎng)絡時進行驗證。若該用戶更改用戶口令,則需告知該服務器,從而使得服務器將已保存的用戶口令更新為該更改后的用戶口令。
目前常見的口令更新方法,可以是若用戶需更改用戶口令,該用戶可通過用戶設備(user equipment,簡稱UE)根據(jù)舊用戶口令對新的用戶口令進行加密,并將該加密后的信息發(fā)送給服務器。該服務器可根據(jù)該舊用戶口令對接收到的該加密后的信息進行解密,從而獲得該新用戶口令。
雖然該新用戶口令是加密后發(fā)送至服務器的,若該舊用戶口令被攻擊者獲取,該加密后的信息容易被攻擊者截獲進而通過離線字典攻擊獲取該新的用戶口令,從而使得口令更新的安全性較低。
技術(shù)實現(xiàn)要素:
本發(fā)明實施例提供一種口令更新方法、用戶設備、用戶位置服務器及域路由器,以提高口令更新的安全性。
第一方面,本發(fā)明實施例提供一種口令更新方法,包括:
用戶設備UE接收用戶位置服務器SLS發(fā)送的第一密鑰協(xié)商參數(shù);所述第一密鑰協(xié)商參數(shù)為所述SLS根據(jù)所述SLS的私鑰采用密鑰交換算法生成 的;
所述UE根據(jù)所述UE的私鑰采用所述密鑰交換算法生成第二密鑰協(xié)商參數(shù);
所述UE根據(jù)所述第二密鑰協(xié)商參數(shù)及原口令獲得所述第二密鑰協(xié)商參數(shù)的保護標識;
所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)、所述UE的私鑰及目的口令獲得所述目的口令的保護標識;
所述UE將所述第二密鑰協(xié)商參數(shù)的保護標識及所述目的口令的保護標識發(fā)送至所述SLS;所述第二密鑰協(xié)商參數(shù)的保護標識用于使所述SLS根據(jù)所述原口令獲得所述第二密鑰協(xié)商參數(shù),繼而根據(jù)所述第二密鑰協(xié)商參數(shù)、所述SLS的私鑰、所述目的口令的保護標識獲得所述目的口令。
根據(jù)第一方面,在第一方面的第一種可能實現(xiàn)的方式中,所述UE根據(jù)所述第二密鑰協(xié)商參數(shù)及原口令獲得所述第二密鑰協(xié)商參數(shù)的保護標識包括:
所述UE根據(jù)所述第二密鑰協(xié)商參數(shù)和所述原口令的哈希值的乘積,獲得所述第二密鑰協(xié)商參數(shù)的保護標識。
根據(jù)第一方面或第一方面的第一種可能實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)、所述UE的私鑰及目的口令獲得所述目的口令的保護標識包括:
所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)及所述UE的私鑰采用所述密鑰交換算法獲得主會話密鑰;
所述UE根據(jù)所述主會話密鑰和所述目的口令獲得所述目的口令的保護標識。
根據(jù)第一方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述UE根據(jù)所述主會話密鑰和所述目的口令獲得所述目的口令的保護標識包括:
所述UE根據(jù)所述主會話密鑰對所述目的口令的哈希值進行加密,獲得所述目的口令的保護標識;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰,繼而根據(jù)所述主 會話密鑰對所述目的口令的保護標識進行解密獲得所述目的口令的哈希值。
根據(jù)第一方面的第二種可能實現(xiàn)的方式,在第四種可能實現(xiàn)的方式中,所述UE根據(jù)所述主會話密鑰和所述目的口令獲得所述目的口令的保護標識包括:
所述UE根據(jù)所述主會話密鑰的哈希值與所述目的口令的哈希值的乘積,獲得所述目的口令的保護標識;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰,繼而通過所述目的口令的保護標識除以所述主會話密鑰的哈希值獲得所述目的口令的哈希值。
根據(jù)第一方面的第三種或第四種可能實現(xiàn)的方式,在第五種可能實現(xiàn)的方式中,所述UE將所述第二密鑰協(xié)商參數(shù)的保護標識及所述目的口令的保護標識發(fā)送至所述SLS包括:
所述UE將所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及第一認證向量發(fā)送至所述SLS;所述第一認證向量用于使所述SLS對所述UE進行認證,若所述UE認證通過,所述SLS確定所述SLS與所述UE間的所述原口令相同。
根據(jù)第一方面的第五種可能實現(xiàn)的方式,在第六種可能實現(xiàn)的方式中,所述UE將所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及第一認證向量發(fā)送至所述SLS之前,所述方法還包括:
所述UE根據(jù)所述主會話密鑰采用安全哈希函數(shù)獲得所述第一認證向量;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述主會話密鑰采用所述安全哈希函數(shù)獲得第二認證向量,繼而根據(jù)所述第二認證向量和所述第一認證向量對所述UE進行認證。
根據(jù)第一方面的第五種或第六種可能實現(xiàn)的方式,在第七種可能實現(xiàn)的方式中,所述方法還包括:
所述UE接收域路由器DR發(fā)送的隨機值、第一完整性效驗碼及所述DR的標識;所述第一完整性效驗碼為所述DR根據(jù)第一校驗密鑰、所述DR的標識及所述隨機值生成的哈希認證碼;所述第一校驗密鑰為所述DR根據(jù)第一會話子密鑰生成的;所述第一會話子密鑰為所述DR根據(jù)第一切換子密鑰 采用偽隨機函數(shù)生成的;所述第一切換子密鑰為所述SLS根據(jù)所述第一認證向量對所述UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成并發(fā)送至所述DR的;所述第一切換根密鑰為所述SLS根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成的;
所述UE根據(jù)所述隨機值、所述第一完整性校驗碼及所述DR的標識對所述DR進行校驗;
若所述DR校驗通過,所述UE確定所述UE與所述SLS間的所述目的口令相同。
根據(jù)第一方面的第七種可能實現(xiàn)的方式,在第八種可能實現(xiàn)的方式中,所述UE根據(jù)所述第一隨機值、所述第一完整性校驗碼及所述DR的標識對所述DR進行校驗包括:
所述UE根據(jù)所述主會話密鑰及所述目的口令獲得第二校驗密鑰;
所述UE根據(jù)所述第二校驗密鑰、所述DR的標識及所述隨機值采用哈希認證碼生成函數(shù)生成第二完整性校驗碼;
所述UE根據(jù)所述第一完整性校驗碼和所述第二完整性校驗碼對所述DR進行校驗。
根據(jù)第一方面的第八種可能實現(xiàn)的方式,在第九種可能實現(xiàn)的方式中,所述UE根據(jù)所述主會話密鑰及所述目的口令獲得第二校驗密鑰包括:
所述UE根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成第二切換根密鑰;
所述UE根據(jù)所述第二切換根密鑰采用所述密鑰生成函數(shù)生成第二切換子密鑰;
所述UE根據(jù)所述第二切換子密鑰采用所述偽隨機函數(shù)生成第二會話子密鑰;
所述UE根據(jù)所述第二會話子密鑰的生成所述第二校驗密鑰。
根據(jù)第一方面的第九種可能實現(xiàn)的方式,在第十種可能實現(xiàn)的方式中,所述UE根據(jù)所述第一完整性校驗碼和所述第二完整性校驗碼對所述DR進行校驗包括:
所述UE判斷所述第一完整性校驗碼和所述第二完整性校驗碼是否相同;
若相同,所述UE確定所述DR通過校驗。
根據(jù)第一方面的第十種可能實現(xiàn)的方式,在第十一種可能實現(xiàn)的方式中,所述方法還包括:
所述UE根據(jù)所述第二校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成第三完整性校驗碼;
所述UE將所述UE的用戶ID、所述UE的設備ID、所述隨機值及所述第三完整性校驗碼發(fā)送至所述DR;所述第三完整性校驗碼用于使所述DR結(jié)合第四完整性校驗碼對所述UE進行校驗,若所述UE校驗通過,所述DR確定所述第一會話子密鑰與所述第二會話子密鑰相同;其中,所述第四完整性校驗碼為所述DR根據(jù)所述第一校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成的;
所述UE接收所述DR對所述UE校驗通過并將所述DR保存的會話密鑰更新為所述第一會話子密鑰后,發(fā)送的密鑰更新消息;
所述UE根據(jù)所述密鑰更新消息將所述UE保存的會話密鑰更新為所述第二會話子密鑰。
第二方面,本發(fā)明實施例還提供一種口令更新方法,包括:
用戶位置服務器SLS根據(jù)所述SLS的私鑰采用密鑰交換算法生成第一密鑰協(xié)商參數(shù);
所述SLS向用戶設備UE發(fā)送所述第一密鑰協(xié)商參數(shù);
所述SLS接收所述UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識;其中,所述第二密鑰協(xié)商參數(shù)的保護標識為所述UE根據(jù)第二密鑰協(xié)商參數(shù)及原口令獲得的;所述第二密鑰協(xié)商參數(shù)為所述UE根據(jù)所述UE的私鑰采用所述密鑰交換算法生成的;所述目的口令的保護標識為所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)、所述UE的私鑰及所述目的口令獲得的;
所述SLS根據(jù)所述原口令及所述第二密鑰協(xié)商參數(shù)的保護標識獲得所述第二密鑰協(xié)商參數(shù);
所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)、所述SLS的私鑰、所述目的口令的保護標識獲得所述目的口令。
根據(jù)第二方面,在第二方面的第一種可能實現(xiàn)的方式中,所述第二密鑰協(xié)商參數(shù)的保護標識為所述UE根據(jù)所述第二密鑰協(xié)商參數(shù)及所述原口令的哈希值的乘積獲得的。
根據(jù)第二方面或第二方面的第一種可能實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述目的口令的保護標識為所述UE根據(jù)主會話密鑰和所述目的口令獲得的;所述主會話密鑰為所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)及所述UE的私鑰采用所述密鑰交換算法獲得的;
所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)、所述SLS的私鑰、所述目的口令的保護標識獲得所述目的口令包括:
所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰;
所述SLS根據(jù)所述主會話密鑰和所述目的口令的保護標識獲得所述目的口令的哈希值。
根據(jù)第二方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述目的口令的保護標識為所述UE根據(jù)所述主會話密鑰對所述目的口令的哈希值進行加密獲得的;
所述SLS根據(jù)所述主會話密鑰和所述目的口令的保護標識獲得所述目的口令的哈希值包括:
所述SLS根據(jù)所述主會話密鑰對所述目的口令的保護標識進行解密獲得所述目的口令的哈希值。
根據(jù)第二方面的第二種可能實現(xiàn)的方式,在第四種可能實現(xiàn)的方式中,所述目的口令的保護標識為所述UE根據(jù)所述主會話密鑰的哈希值與所述目的口令的哈希值的乘積獲得的;
所述SLS根據(jù)所述主會話密鑰和所述目的口令的保護標識獲得所述目的口令的哈希值包括:
所述SLS通過所述目的口令的保護標識除以所述主會話密鑰獲得所述目的口令的哈希值。
根據(jù)第二方面的第三種或第四種可能實現(xiàn)的方式,在第五種可能實現(xiàn)的方式中,所述SLS接收UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識包括:
所述SLS接收所述UE發(fā)送的所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及第一認證向量;
所述方法還包括:
所述SLS根據(jù)所述第一認證向量對所述UE進行認證;
若所述UE認證通過,所述SLS確定所述SLS與所述UE間的所述原口令相同。
根據(jù)第二方面的第五種可能實現(xiàn)的方式,在第六種可能實現(xiàn)的方式中,所述第一認證向量為所述UE根據(jù)所述主會話密鑰采用安全哈希函數(shù)獲得的;
所述SLS根據(jù)所述第一認證向量對所述UE進行認證包括:
所述SLS根據(jù)所述主會話密鑰采用所述安全哈希函數(shù)獲得第二認證向量;
所述SLS根據(jù)所述第一認證向量和所述第二認證向量對所述UE進行認證。
根據(jù)第二方面的第五種或第六種可能實現(xiàn)的方式,在第七種可能實現(xiàn)的方式中,所述方法還包括:
所述SLS根據(jù)所述主會話密鑰及所述目的口令的哈希值采用密鑰生成函數(shù)生成第一切換根密鑰;
所述SLS根據(jù)所述第一切換根密鑰采用所述密鑰生成函數(shù)生成第一切換子密鑰;
所述SLS將所述第一切換子密鑰發(fā)送至域路由器DR;所述第一切換子密鑰用于使所述DR根據(jù)所述第一切換子密鑰對采用偽隨機函數(shù)生成第一會話子密鑰,根據(jù)所述第一會話子密鑰生成第一校驗密鑰,繼而根據(jù)所述第一校驗密鑰、所述DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性校驗碼,并向所述UE發(fā)送所述第一完整性校驗碼;所述第一完整性校驗碼用于使所述UE對所述DR進行校驗。
第三方面,本發(fā)明實施例還提供一種口令更新方法,包括:
域路由器DR接收用戶位置服務器SLS發(fā)送的第一切換子密鑰;所述第一切換子密鑰為所述SLS對所述UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成的;所述第一切換根密鑰為所述SLS根據(jù)主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成的;所述SLS對所述UE認證通過后,所述SLS與所述UE具有相同的所述主會話密鑰;
所述DR根據(jù)所述第一切換子密鑰采用偽隨機函數(shù)生成所述第一會話子密鑰;
所述DR根據(jù)所述第一會話子密鑰生成的第一校驗密鑰;
所述DR根據(jù)所述第一校驗密鑰、所述DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性效驗碼;
所述DR向用戶設備UE發(fā)送所述隨機值、所述第一完整性效驗碼及所述DR的標識;所述隨機值、所述第一完整性效驗碼及所述DR的標識用于使所述UE對所述DR進行校驗,若所述DR校驗通過所述UE確定所述UE與所述SLS間的所述目的口令相同。
根據(jù)第三方面,在第三方面的第一種可能實現(xiàn)的方式中,所述隨機值、所述第一完整性效驗碼及所述DR的標識用于使所述UE根據(jù)第二校驗密鑰、所述DR的標識及所述隨機值采用所述哈希認證碼生成函數(shù)生成第二完整性校驗碼,并根據(jù)所述第一完整性校驗碼和所述第二完整性校驗碼對所述DR進行校驗;所述第二校驗密鑰為所述UE根據(jù)所述主會話密鑰及所述目的口令獲得的。
根據(jù)第三方面的第一種可能實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述第二校驗密鑰為所述UE根據(jù)第二會話子密鑰生成的;所述第二會話子密鑰為所述UE根據(jù)第二切換子密鑰采用偽隨機函數(shù)生成的;所述第二切換子密鑰為所述UE根據(jù)第二切換根密鑰采用所述密鑰生成函數(shù)生成的;所述第二切換根密鑰為所述UE根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成的。
根據(jù)第三方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述方法還包括:
所述DR接收所述UE對所述DR校驗通過后發(fā)送的所述UE的用戶ID、所述UE的設備ID、所述隨機值及第三完整性校驗碼;其中,所述第三完整性校驗碼為所述UE根據(jù)所述第二校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成的;
所述DR根據(jù)所述第一校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成第四完整性校驗碼;
所述DR根據(jù)所述第三完整性校驗碼及所述第四完整性校驗碼對所述UE進行校驗;
若所述UE校驗通過,所述DR確定所述第一會話子密鑰與所述第二會 話子密鑰相同;
所述DR將保存的會話密鑰更新為所述第一會話子密鑰;
所述DR向所述UE發(fā)送密鑰更新消息,所述密鑰更新消息用于使所述UE保存的會話密鑰更新為所述第二會話子密鑰。
第四方面,本發(fā)明實施例還提供一種用戶設備UE,包括:
接收模塊,用于接收用戶位置服務器SLS發(fā)送的第一密鑰協(xié)商參數(shù);所述第一密鑰協(xié)商參數(shù)為所述SLS根據(jù)所述SLS的私鑰采用密鑰交換算法生成的;
生成模塊,用于根據(jù)所述UE的私鑰采用所述密鑰交換算法生成第二密鑰協(xié)商參數(shù);根據(jù)所述第二密鑰協(xié)商參數(shù)及原口令獲得所述第二密鑰協(xié)商參數(shù)的保護標識;根據(jù)所述第一密鑰協(xié)商參數(shù)、所述UE的私鑰及目的口令獲得所述目的口令的保護標識;
發(fā)送模塊,用于將所述第二密鑰協(xié)商參數(shù)的保護標識及所述目的口令的保護標識發(fā)送至所述SLS;所述第二密鑰協(xié)商參數(shù)的保護標識用于使所述SLS根據(jù)所述原口令獲得所述第二密鑰協(xié)商參數(shù),繼而根據(jù)所述第二密鑰協(xié)商參數(shù)、所述SLS的私鑰、所述目的口令的保護標識獲得所述目的口令。
根據(jù)第四方面,在第四方面的第一種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述第二密鑰協(xié)商參數(shù)和所述原口令的哈希值的乘積,獲得所述第二密鑰協(xié)商參數(shù)的保護標識。
根據(jù)第四方面或第四方面的第一種可能過實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述第一密鑰協(xié)商參數(shù)及所述UE的私鑰采用所述密鑰交換算法獲得主會話密鑰;根據(jù)所述主會話密鑰和所述目的口令獲得所述目的口令的保護標識。
根據(jù)第四方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述主會話密鑰對所述目的口令的哈希值進行加密,獲得所述目的口令的保護標識;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰,繼而根據(jù)所述主會話密鑰對所述目的口令的保護標識進行解密獲得所述目的口令的哈希值。
根據(jù)第四方面的第二種可能實現(xiàn)的方式,在第四種可能實現(xiàn)的方式中, 所述生成模塊,還用于根據(jù)所述主會話密鑰的哈希值與所述目的口令的哈希值的乘積,獲得所述目的口令的保護標識;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰,繼而通過所述目的口令的保護標識除以所述主會話密鑰的哈希值獲得所述目的口令的哈希值。
根據(jù)第四方面的第三種或第四種可能實現(xiàn)的方式,在第五種可能實現(xiàn)的方式中,所述發(fā)送模塊,還用于將所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及第一認證向量發(fā)送至所述SLS;所述第一認證向量用于使所述SLS對所述UE進行認證,若所述UE認證通過,所述SLS確定所述SLS與所述UE間的所述原口令相同。
根據(jù)第四方面的第五種可能實現(xiàn)的方式,在第六種可能實現(xiàn)的方式中,所述生成模塊,還用于在所述發(fā)送模塊將所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及所述第一認證向量發(fā)送至所述SLS之前,根據(jù)所述主會話密鑰采用安全哈希函數(shù)獲得所述第一認證向量;
對應的,所述第二密鑰協(xié)商參數(shù)的保護標識還用于使所述SLS根據(jù)所述主會話密鑰采用所述安全哈希函數(shù)獲得第二認證向量,繼而根據(jù)所述第二認證向量和所述第一認證向量對所述UE進行認證。
根據(jù)第四方面的第五種或第六種可能實現(xiàn)的方式,在第七種可能實現(xiàn)的方式中,所述接收模塊,用于接收域路由器DR發(fā)送的隨機值、第一完整性效驗碼及所述DR的標識;所述第一完整性效驗碼為所述DR根據(jù)第一校驗密鑰、所述DR的標識及所述隨機值生成的哈希認證碼;所述第一校驗密鑰為所述DR根據(jù)第一會話子密鑰生成的;所述第一會話子密鑰為所述DR根據(jù)第一切換子密鑰采用偽隨機函數(shù)生成的;所述第一切換子密鑰為所述SLS根據(jù)所述第一認證向量對所述UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成并發(fā)送至所述DR的;所述第一切換根密鑰為所述SLS根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成的;
所述UE還包括:
校驗模塊,用于根據(jù)所述隨機值、所述第一完整性校驗碼及所述DR的標識對所述DR進行校驗;若所述DR校驗通過,則確定所述UE與所述SLS 間的所述目的口令相同。
根據(jù)第四方面的第七種可能實現(xiàn)的方式,在第八種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述主會話密鑰及所述目的口令獲得第二校驗密鑰;根據(jù)所述第二校驗密鑰、所述DR的標識及所述隨機值采用哈希認證碼生成函數(shù)生成第二完整性校驗碼;
所述校驗模塊,還用于根據(jù)所述第一完整性校驗碼和所述第二完整性校驗碼對所述DR進行校驗。
根據(jù)第四方面的第八種可能實現(xiàn)的方式,在第九種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成第二切換根密鑰;根據(jù)所述第二切換根密鑰采用所述密鑰生成函數(shù)生成第二切換子密鑰;根據(jù)所述第二切換子密鑰采用所述偽隨機函數(shù)生成第二會話子密鑰;根據(jù)所述第二會話子密鑰的生成所述第二校驗密鑰。
根據(jù)第四方面的第九種可能實現(xiàn)的方式,在第十種可能實現(xiàn)的方式中,所述校驗模塊,還用于判斷所述第一完整性校驗碼和所述第二完整性校驗碼是否相同;若相同,確定所述DR通過校驗。
根據(jù)第四方面的第十種可能實現(xiàn)的方式,在第十一種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述第二校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成第三完整性校驗碼;
所述發(fā)送模塊,還用于將所述UE的用戶ID、所述UE的設備ID、所述隨機值及所述第三完整性校驗碼發(fā)送至所述DR;所述第三完整性校驗碼用于使所述DR結(jié)合第四完整性校驗碼對所述UE進行校驗,若所述UE校驗通過,所述DR確定所述第一會話子密鑰與所述第二會話子密鑰相同;其中,所述第四完整性校驗碼為所述DR根據(jù)所述第一校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成的;
所述接收模塊,還用于接收所述DR對所述UE校驗通過并將所述DR保存的會話密鑰更新為所述第一會話子密鑰后,發(fā)送的密鑰更新消息;
所述UE還包括:
更新模塊,用于根據(jù)所述密鑰更新消息將所述UE保存的會話密鑰更新 為所述第二會話子密鑰。
第五方面,本發(fā)明實施例還提供一種用戶位置服務器SLS,包括:
生成模塊,用于根據(jù)所述SLS的私鑰采用密鑰交換算法生成第一密鑰協(xié)商參數(shù);
發(fā)送模塊,用于向用戶設備UE發(fā)送所述第一密鑰協(xié)商參數(shù);
接收模塊,用于接收所述UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識;其中,所述第二密鑰協(xié)商參數(shù)的保護標識為所述UE根據(jù)第二密鑰協(xié)商參數(shù)及原口令獲得的;所述第二密鑰協(xié)商參數(shù)為所述UE根據(jù)所述UE的私鑰采用所述密鑰交換算法生成的;所述目的口令的保護標識為所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)、所述UE的私鑰及所述目的口令獲得的;
獲取模塊,用于根據(jù)所述原口令及所述第二密鑰協(xié)商參數(shù)的保護標識獲得所述第二密鑰協(xié)商參數(shù);根據(jù)所述第二密鑰協(xié)商參數(shù)、所述SLS的私鑰、所述目的口令的保護標識獲得所述目的口令。
根據(jù)第五方面,在第五方面的第一種可能實現(xiàn)的方式中,所述第二密鑰協(xié)商參數(shù)的保護標識為所述UE根據(jù)所述第二密鑰協(xié)商參數(shù)及所述原口令的哈希值的乘積獲得的。
根據(jù)第五方面或第五方面的第一種可能實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述目的口令的保護標識為所述UE根據(jù)主會話密鑰和所述目的口令獲得的;所述主會話密鑰為所述UE根據(jù)所述第一密鑰協(xié)商參數(shù)及所述UE的私鑰采用所述密鑰交換算法獲得的;
所述獲取模塊,還用于根據(jù)所述第二密鑰協(xié)商參數(shù)及所述SLS的私鑰獲得所述主會話密鑰;根據(jù)所述主會話密鑰和所述目的口令的保護標識獲得所述目的口令的哈希值。
根據(jù)第五方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述目的口令的保護標識為所述UE根據(jù)所述主會話密鑰對所述目的口令的哈希值進行加密獲得的;
所述獲取模塊,還用于根據(jù)所述主會話密鑰對所述目的口令的保護標識進行解密獲得所述目的口令的哈希值。
根據(jù)第五方面的第三種可能實現(xiàn)的方式,在第四種可能實現(xiàn)的方式中, 所述目的口令的保護標識為所述UE根據(jù)所述主會話密鑰的哈希值與所述目的口令的哈希值的乘積獲得的;
所述獲取模塊,還用于通過所述目的口令的保護標識除以所述主會話密鑰獲得所述目的口令的哈希值。
根據(jù)第五方面的第三種或第四種可能實現(xiàn)的方式,在第五種可能實現(xiàn)的方式中,所述接收模塊,還用于接收所述UE發(fā)送的所述第二密鑰協(xié)商參數(shù)的保護標識、所述目的口令的保護標識及第一認證向量;
所述SLS還包括:
認證模塊,用于根據(jù)所述第一認證向量對所述UE進行認證;若所述UE認證通過,則確定所述SLS與所述UE間的所述原口令相同。
根據(jù)第五方面的第五種可能實現(xiàn)的方式,在第六種可能實現(xiàn)的方式中,所述第一認證向量為所述UE根據(jù)所述主會話密鑰采用安全哈希函數(shù)獲得的;
所述獲取模塊,還用于根據(jù)所述主會話密鑰采用所述安全哈希函數(shù)獲得第二認證向量;
所述認證模塊,還用于根據(jù)所述第一認證向量和所述第二認證向量對所述UE進行認證。
根據(jù)第五方面的第五種或第六種可能實現(xiàn)的方式,在第七種可能實現(xiàn)的方式中,所述生成模塊,還用于根據(jù)所述主會話密鑰及所述目的口令的哈希值采用密鑰生成函數(shù)生成第一切換根密鑰;根據(jù)所述第一切換根密鑰采用所述密鑰生成函數(shù)生成第一切換子密鑰;
所述發(fā)送模塊,還用于將所述第一切換子密鑰發(fā)送至域路由器DR;所述第一切換子密鑰用于使所述DR根據(jù)所述第一切換子密鑰對采用偽隨機函數(shù)生成第一會話子密鑰,根據(jù)所述第一會話子密鑰生成第一校驗密鑰,繼而根據(jù)所述第一校驗密鑰、所述DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性校驗碼,并向所述UE發(fā)送所述第一完整性校驗碼;所述第一完整性校驗碼用于使所述UE對所述DR進行校驗。
第六方面,本發(fā)明實施例還提供一種域路由器DR,包括:
接收模塊,用于接收用戶位置服務器SLS發(fā)送的第一切換子密鑰;所述第一切換子密鑰為所述SLS對所述UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成的;所述第一切換根密鑰為所述SLS根據(jù)主會話密鑰及所 述目的口令的哈希值采用所述密鑰生成函數(shù)生成的;所述SLS對所述UE認證通過后,所述SLS與所述UE具有相同的所述主會話密鑰;
生成模塊,用于根據(jù)所述第一切換子密鑰采用偽隨機函數(shù)生成所述第一會話子密鑰;根據(jù)所述第一會話子密鑰生成的第一校驗密鑰;根據(jù)所述第一校驗密鑰、所述DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性效驗碼;
發(fā)送模塊,用于向用戶設備UE發(fā)送所述隨機值、所述第一完整性效驗碼及所述DR的標識;所述隨機值、所述第一完整性效驗碼及所述DR的標識用于使所述UE對所述DR進行校驗,若所述DR校驗通過所述UE確定所述UE與所述SLS間的所述目的口令相同。
根據(jù)第六方面,在第六方面的第一種可能實現(xiàn)的方式中,所述隨機值、所述第一完整性效驗碼及所述DR的標識用于使所述UE根據(jù)第二校驗密鑰、所述DR的標識及所述隨機值采用所述哈希認證碼生成函數(shù)生成第二完整性校驗碼,并根據(jù)所述第一完整性校驗碼和所述第二完整性校驗碼對所述DR進行校驗;所述第二校驗密鑰為所述UE根據(jù)所述主會話密鑰及所述目的口令獲得的。
根據(jù)第六方面的第一種可能實現(xiàn)的方式,在第二種可能實現(xiàn)的方式中,所述第二校驗密鑰為所述UE根據(jù)第二會話子密鑰生成的;所述第二會話子密鑰為所述UE根據(jù)第二切換子密鑰采用偽隨機函數(shù)生成的;所述第二切換子密鑰為所述UE根據(jù)第二切換根密鑰采用所述密鑰生成函數(shù)生成的;所述第二切換根密鑰為所述UE根據(jù)所述主會話密鑰及所述目的口令的哈希值采用所述密鑰生成函數(shù)生成的。
根據(jù)第六方面的第二種可能實現(xiàn)的方式,在第三種可能實現(xiàn)的方式中,所述接收模塊,還用于接收所述UE對所述DR校驗通過后發(fā)送的所述UE的用戶ID、所述UE的設備ID、所述隨機值及第三完整性校驗碼;其中,所述第三完整性校驗碼為所述UE根據(jù)所述第二校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成的;
所述生成模塊,還用于根據(jù)所述第一校驗密鑰、所述UE的用戶ID、所述UE的設備ID及所述隨機值采用所述哈希認證碼生成函數(shù)生成第四完整性校驗碼;
所述DR還包括:
校驗模塊,用于根據(jù)所述第三完整性校驗碼及所述第四完整性校驗碼對所述UE進行校驗;若所述UE校驗通過,確定所述第一會話子密鑰與所述第二會話子密鑰相同;
更新模塊,用于將保存的會話密鑰更新為所述第一會話子密鑰;
所述發(fā)送模塊,還用于向所述UE發(fā)送密鑰更新消息,所述密鑰更新消息用于使所述UE保存的會話密鑰更新為所述第二會話子密鑰。
本發(fā)明實施例本發(fā)明實施例提供的口令更新方法、用戶設備、用戶位置服務器及域路由器,通過UE發(fā)送至SLS的第二密鑰協(xié)商參數(shù)的保護標識,是該UE根據(jù)該UE的私鑰采用密鑰交換算法生成第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得的;該UE發(fā)送至SLS的目的口令的保護標識是UE根據(jù)接收到的該SLS發(fā)送的第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得的。由于該UE是將該第二密鑰協(xié)商參數(shù)的保護標識及口令保護標識發(fā)送給SLS,攻擊者無法同時獲取該第一密鑰協(xié)商參數(shù)和該第二密鑰協(xié)商參數(shù),即便攻擊者截獲該第二密鑰協(xié)商參數(shù)的保護標識及口令保護標識,也無法通過發(fā)起中間人攻擊來達到進一步獲取該目的口令的目的,因而提高口令更新的安全性。
附圖說明
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖做一簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1為本發(fā)明實施例應用的UIP網(wǎng)絡的結(jié)構(gòu)圖;
圖2為本發(fā)明實施例一提供的口令更新方法的流程圖;
圖3為本發(fā)明實施例二提供的口令更新方法的流程圖;
圖4為本發(fā)明實施例三提供的口令更新方法的流程圖;
圖5為本發(fā)明實施例四提供的口令更新方法的流程圖;
圖6為本發(fā)明實施例五提供的口令更新方法的流程圖;
圖7為本發(fā)明實施例六提供的口令更新方法的流程圖;
圖8為本發(fā)明實施例七提供的UE的結(jié)構(gòu)示意圖;
圖9為本發(fā)明實施例八提供的SLS的結(jié)構(gòu)示意圖;
圖10為本發(fā)明實施例九提供的DR的結(jié)構(gòu)示意圖。
具體實施方式
為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明各實施例的方案可適用于對用戶身份標識協(xié)議(User Identity Protocol,簡稱UIP)網(wǎng)絡中進行口令更新。在UIP網(wǎng)絡中,其用戶身份標識及位置標識可分別作為獨立的標識。
圖1為本發(fā)明實施例應用的UIP網(wǎng)絡的結(jié)構(gòu)圖。如圖1所示,該UIP網(wǎng)絡可包括至少一個UIP域。該至少一個UIP域可以是按照預先設定的區(qū)域劃分對該UIP網(wǎng)絡進行劃分獲得。其中,一個UIP域中可包括一個用戶位置服務器(Subscriber Location Server,簡稱SLS)、至少一個域路由器(Domain Router,簡稱DR)及至少一個網(wǎng)關(guān)(Gateway,簡稱GW)。該UE所在UIP域,即為該UE的當前域(current Domain),該當前UIP域中的SLS可稱本地用戶位置服務器(Local Subscriber Location Server,簡稱Local SLS)。該UE與運營商簽約的UIP域可稱為該UE的歸屬域(Home Domain),該UE歸屬的UIP域中的SLS可稱歸屬用戶位置服務器(Local Subscriber Location Server,簡稱Home SLS)。該至少一個UIP域中一個UIP域的SLS,通過全局用戶位置服務器(Global Subscriber Location Server,簡稱Global SLS),與另一個UIP域中SLS進行信息傳輸。
其中,該UE的位置標識(Locator Identity,簡稱Locator ID)可以為該UE所在UIP域中的GW為該UE分配的。該UE的身份標識可以為該UE的用戶標識(User Identity,簡稱User ID)和該UE的設備標識(Device Identity,簡稱Device ID)。
本發(fā)明各實施例的方案可以是在該UE修改口令,即該UE在UE側(cè)將用戶口令從原口令修改為目的口令后,通過該UE與其所在的UIP域中的SLS及對應的DR相互消息來實現(xiàn),從而使得網(wǎng)絡側(cè)的該SLS可獲得該修改后的口令即該目的口令,并將該SLS保存到該原口令修改為該目的口令。
實施例一
圖2為本發(fā)明實施例一提供的口令更新方法的流程圖。該方法由UE執(zhí)行。本實施例的方法包括如下步驟:
S201、UE接收SLS發(fā)送的第一密鑰協(xié)商參數(shù);該第一密鑰協(xié)商參數(shù)為該SLS根據(jù)該SLS的私鑰采用密鑰交換算法生成的。
可選的,該SLS可以為該UE所在UIP域中的SLS。該第一密鑰協(xié)商參數(shù)可以為該SLS的密鑰協(xié)商參數(shù),該第一密鑰協(xié)商參數(shù)可以作為第一挑戰(zhàn)信息用于產(chǎn)生該UE和該SLS間的主會話密鑰。該第一密鑰協(xié)商參數(shù)可表示為ChallengeSLS。該SLS的私鑰可以為該SLS產(chǎn)生的隨機值。該密鑰交換算法可以為Diffie-Hellman密鑰交換算法。
該SLS例如可以根據(jù)如下公式(1)獲得該第一密鑰協(xié)商參數(shù)。
ChallengeSLS=gxmod p 公式(1)
其中,g和p為D-H密鑰方法中該UE和該SLS雙發(fā)約定的參數(shù),也就是說,g和p對于該UE和該SLS都是公開的。g為整數(shù),p是素數(shù),且g為p的原根。x為該SLS的私鑰。
需要說明的是,上述S201中該UE接收到的SLS發(fā)送的該第一密鑰協(xié)商參數(shù),可以是該UE接收該SLS通過DR發(fā)送的該第一密鑰協(xié)商參數(shù)。其中,該SLS在預設的定時器到期時主動發(fā)送至該UE的,也可以是該SLS在接收到的該UE發(fā)送的請求消息如口令更新請求消息后通過口令更新響應發(fā)送至該UE的。
其中,該UE在接收到的該SLS發(fā)送的該第一密鑰協(xié)商參數(shù)的同時,還可接收到的該UE發(fā)送的該SLS的標識。該SLS的標識可以表示為SLSID。若該第一密鑰協(xié)商參數(shù)是該SLS通過該DR發(fā)送的,該UE接收到的消息中還可包括該DR的標識。該DR的標識可表示為DRID。
S202、該UE根據(jù)該UE的私鑰采用該密鑰交換算法生成第二密鑰協(xié)商參數(shù)。
該第二密鑰協(xié)商參數(shù)為該UE的密鑰協(xié)商參數(shù),可稱為設備密鑰協(xié)商參數(shù)。該第二密鑰協(xié)商參數(shù)可作為第二挑戰(zhàn)信息用于產(chǎn)生該UE和該SLS間的主會話密鑰。該第二密鑰協(xié)商參數(shù)可表示為ChallengeUE。該UE的私鑰可以為該UE產(chǎn)生的隨機值。該密鑰交換算法可以為D-H密鑰交換算法。
該UE例如可以根據(jù)如下公式(2)獲得該第二密鑰協(xié)商參數(shù)。
ChallengeUE=gymod p 公式(2)
其中,g和p為D-H密鑰方法中該UE和該SLS雙發(fā)約定的參數(shù),也就是說,g和p對于該UE和該SLS都是公開的。g是p的原根,p是素數(shù)。y為該UE的私鑰。
S203、該UE根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得該第二密鑰協(xié)商參數(shù)的保護標識。
該原口令可以是該UE修改前的用戶口令,即舊口令。該原口令可以是通過哈希值保存在該SLS中的。該原口令的哈希值可以表示為PWold。
該原口令的哈希值例如可以是采用全域哈希函數(shù)對該原口令進行處理,可以如下公式(3)所示。
PWold=Hash(password-old) 公式(3)
其中,Hash為全域哈希函數(shù),password-old為原口令。
該UE可以采用該UE與該SLS都已知的預設算法,根據(jù)該第二密鑰協(xié)商參數(shù)及該原口令獲得該第二密鑰協(xié)商參數(shù)的保護標識,可使得攻擊者即便獲取該第二密鑰協(xié)商參數(shù)的保護標識也無法獲取該第二密鑰協(xié)商參數(shù),同時由于該原口令對于該SLS已知的,還可使得僅該SLS可破解該第二密鑰協(xié)商參數(shù)的保護標識,繼而獲得該第二密鑰協(xié)商參數(shù)。
該第二密鑰協(xié)商參數(shù)的保護標識可以表示為ChallengeUE*。該UE可以是根據(jù)該第二密鑰協(xié)商參數(shù)及該原口令的乘積獲得該第二密鑰協(xié)商參數(shù)的保護標識,也可以是根據(jù)該第二密鑰協(xié)商參數(shù)及該原口令采用其他算法獲得該第二密鑰協(xié)商參數(shù)的保護標識。
S204、該UE根據(jù)該第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得該目的口令的保護標識。
該目的口令可以為該UE修改后的用戶口令即新口令,可表示為PWnew。
該目的口令的哈希值例如可以是采用全域哈希函數(shù)對該目的口令進行處 理,可以如下公式(4)所示。
PWnew=Hash(password-new) 公式(4)
其中,Hash為全域哈希函數(shù),password-new為目的口令。
該UE根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰對該目的口令進行加密,或是采用其他算法對該目的口令進行處理后獲得的該目的口令的保護標識,即該目的口令的保護標識。該目的口令的保護標識可以表示為Protection-PW。
S205、該UE將該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識發(fā)送至該SLS;該第二密鑰協(xié)商參數(shù)的保護標識用于使該SLS根據(jù)該原口令獲得該第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令。
該SLS可以是根據(jù)該原口令及該第二密鑰協(xié)商參數(shù)的保護標識,采用該UE獲取該第二密鑰協(xié)商參數(shù)的保護標識所處采用的該預設算法的逆運算,從而獲得該第二密鑰協(xié)商參數(shù)。由于該第一密鑰協(xié)商參數(shù)為該SLS根據(jù)該SLS的私鑰采用密鑰交換算法獲得的,該第二密鑰協(xié)商參數(shù)為該UE根據(jù)該UE的私鑰采用密鑰交換算法獲得的。
因此,對于該UE側(cè)的該第一密鑰協(xié)商參數(shù)及該UE的私鑰可滿足如下公式(5)。
(ChallengeSLS)ymod p=(gxmod p)ymod p=(gx)ymod p=gxymod p
公式(5)
因此,對于該SLS側(cè)的該第二密鑰協(xié)商參數(shù)及該SLS的私鑰可滿足如下公式(6)。
(ChallengeUE)xmod p=(gymod p)xmod p=(gy)x mod p=gxymod p
公式(6)
如公式(5)和公式(6)可知,該UE根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰獲得的參數(shù),可等于該SLS根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰根據(jù)相同算法獲得的參數(shù),因此,該UE向該SLS發(fā)送該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識,該SLS也可通過使用該原口令獲得該第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令。
該SLS獲得該目的口令可以是獲得該目的口令的哈希值。該SLS在獲得 該目的口令的哈希值后,還將該SLS保存的原口令的哈希值更新為該目的口令的哈希值,從而實現(xiàn)該SLS對口令的更新。
本發(fā)明實施例提供的口令更新方法,UE發(fā)送至SLS的第二密鑰協(xié)商參數(shù)的保護標識,是該UE根據(jù)該UE的私鑰采用密鑰交換算法生成第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得的;該UE發(fā)送至SLS的目的口令的保護標識是UE根據(jù)接收到的該SLS發(fā)送的第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得的。由于該UE是將該第二密鑰協(xié)商參數(shù)的保護標識及口令保護標識發(fā)送給SLS,攻擊者無法同時獲取該第一密鑰協(xié)商參數(shù)和該第二密鑰協(xié)商參數(shù),即便攻擊者截獲該第二密鑰協(xié)商參數(shù)的保護標識及口令保護標識,也無法通過發(fā)起中間人攻擊來達到進一步獲取該目的口令的目的,因而提高口令更新的安全性。
同時,由于該UE的私鑰可為該UE產(chǎn)生的隨機值,該SLS的私鑰為該SLS產(chǎn)生的隨機值,即該UE的私鑰和該SLS的私鑰均為隨機值,因此該UE的私鑰和該SLS的私鑰的安全性則更高,那么攻擊者獲取的難度更大,從而提高口令更新的安全性。
實施例二
本發(fā)明實施例二還提供一種口令更新方法。圖3為本發(fā)明實施例二提供的口令更新方法的流程圖。如圖3所示,該方法在上述實施例一的S203中該UE根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得該第二密鑰協(xié)商參數(shù)的保護標識可包括:
S301、該UE根據(jù)該第二密鑰協(xié)商參數(shù)和該原口令的哈希值的乘積,獲得該第二密鑰協(xié)商參數(shù)的保護標識。
該UE可以是根據(jù)該第二密鑰協(xié)商參數(shù)和該原口令的哈希值,采用如下公式(7)獲得該第二密鑰協(xié)商參數(shù)的保護標識。
ChallengeUE*=(ChallengeUE)*(PWold) 公式(7)
其中,ChallengeUE*為第二密鑰協(xié)商參數(shù)的保護標識;ChallengeUE為第二密鑰協(xié)商參數(shù);PWold為原口令的哈希值。
該UE根據(jù)該第二密鑰協(xié)商參數(shù)和該原口令的哈希值的乘積獲得該第二密鑰協(xié)商參數(shù)的保護標識,消耗的計算量可小于加密運算的計算量。
可選的,上述實施例一的S204中該UE根據(jù)該第一密鑰協(xié)商參數(shù)、該 UE的私鑰及目的口令獲得目的口令的保護標識可以包括:
S302、該UE根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得主會話密鑰。
該主會話密鑰(Main Session Key,簡稱MSK)可以為該UE和該SLS間的會話密鑰。該UE例如可以是將該第一密鑰協(xié)商參數(shù)結(jié)合該UE的私鑰獲得該主會話密鑰。
該UE可以是根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得該MSK,可以是根據(jù)如下公式(8)獲得。
MSK=(ChallengeSLS)ymod p=(gxmod p)ymod p=(gx)ymod p=gxymod p
公式(8)
S303、該UE根據(jù)該主會話密鑰和該目的口令獲得該目的口令的保護標識。
可選的,該S303中該UE根據(jù)該主會話密鑰和該目的口令獲得該目的口令的保護標識可以包括:
該UE根據(jù)該主會話密鑰對該目的口令的哈希值進行加密,獲得該目的口令的保護標識。
具體地,該UE例如可以采用如下公式(9),根據(jù)該主會話密鑰對該目的口令的哈希值進行加密獲得該目的口令的保護標識。
Protection-PW=E(MSK,PWnew) 公式(9)
其中,Protection-PW為該口令包括標識;MSK為該主會話密鑰,PWnew為該目的口令的哈希值。E為加密函數(shù)。該加密函數(shù)可以為數(shù)據(jù)加密標準(Data Encryption Standard,簡稱DES)對應的加密函數(shù)。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得該主會話密鑰,繼而根據(jù)該主會話密鑰對該目的口令的保護標識進行解密獲得該目的口令的哈希值。
具體地,該SLS例如可以是根據(jù)該第二密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得該MSK,可以是根據(jù)如下公式(10)獲得。
MSK=(ChallengeUE)xmod p=(gymod p)x mod p=(gy)xmod p=gxy mod p
公式(10)
由該公式(8)和公式(10)可知,該UE獲得的該主會話密鑰與該SLS 獲得的該主會話密鑰相同。
該SLS例如可以是采用如下公式(11),根據(jù)該主會話密鑰對該目的口令的保護標識進行解密,獲得該目的口令的哈希值。
PWnew=D(MSK,Protection-PW) 公式(11)
其中,D為解密算法,該解密算法為DES對應的解密算法。
可替代地,該S303中該UE根據(jù)該主會話密鑰和該目的口令獲得該目的口令的保護標識可以包括:
該UE根據(jù)該主會話密鑰的哈希值與該目的口令的哈希值的乘積,獲得該目的口令的保護標識。
具體地,該UE可以是根據(jù)該主會話密鑰的哈希值與該目的口令的哈希值采用如下公式(12)獲得該目的口令的保護標識。
Protection-PW=Hash(MSK)*(PWnew) 公式(12)
其中,該Hash為全域哈希函數(shù)。Hash(MSK)為該主會話密鑰的哈希值。PWnew為該目的口令的哈希值。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該第二密鑰協(xié)商參數(shù)該SLS的私鑰獲得該主會話密鑰,繼而通過該目的口令的保護標識除以該主會話密鑰的哈希值獲得該目的口令的哈希值。
具體地,該SLS例如可以是根據(jù)該第二密鑰協(xié)商參數(shù)及該UE的私鑰采用上述公式(10)獲得該主會話密鑰。
該SLS例如可以是采用如下公式(13),根據(jù)該主會話密鑰和該目的口令的保護標識獲得該目的口令的哈希值。
PWnew=(Protection-PW)/Hash(MSK) 公式(13)
可選的,上述實施例一的S205中該UE將該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識發(fā)送至該SLS可以包括:
S304、該UE將該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及第一認證向量發(fā)送至該SLS;該第一認證向量用于使該SLS對該UE進行認證,若該UE認證通過,該SLS確定該SLS與該UE間的該原口令相同。
該第一認證向量可以是該UE根據(jù)該原口令的哈希值直接生成的,也可以是根據(jù)該原口令的哈希值間接生成的。
該第一認證向量可以為該UE的認證向量。該第一認證向量可以表示為AuthUE。
可選的,S304中該UE將該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及第一認證向量發(fā)送至該SLS之前,該方法還包括:
S304a、該UE根據(jù)該主會話密鑰采用安全哈希函數(shù)得該第一認證向量。
可選的,該UE可以是根據(jù)該主會話密鑰采用如下公式(14)獲得該第一認證向量。
AuthUE=SHA-256(MSK) 公式(14)
其中,SHA-256為輸出為256位的安全哈希函數(shù)(Secure Hash Algorithm,簡稱SHA)。需要說明的是,該安全哈希函數(shù)還可以是其他位數(shù)的安全哈希函數(shù),如SHA-384,SHA-512等。
為保證該SLS根據(jù)該第一認證向量對該UE的認證更精確,該第一認證向量還可以是該UE根據(jù)該UE的身份標識,如該UE的用戶標識和該UE的設備標識、第一密鑰協(xié)商參數(shù)、該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識以及該主會話密鑰依次組成的字符串采用如下公式(15)獲得。
AuthUE=SHA-256(UserID||DeviceID||ChallengeSLS||ChallengeUE*||Protecti on-PW||MSK) 公式(15)
其中,||為串聯(lián)符號。
(UserID||DeviceID||ChallengeSLS||ChallengeUE*||Protection-PW||MSK)表示UserID、DeviceID、ChallengeSLS、ChallengeUE*、Protection-PW及MSK依次組成的字符串。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該主會話密鑰采用該安全哈希函數(shù)獲得第二認證向量,繼而根據(jù)該第二認證向量和該第一認證向量對該UE進行認證。
可選的,該第二認證向量為該SLS的認證向量,可表示為AuthSLS。
若該第一認證向量為該UE根據(jù)該公式(14)獲得,那么該SLS可以是根據(jù)該公式(14)獲得。若該第一認證向量為該UE根據(jù)該公式(15)獲得,那么該SLS可以是根據(jù)該公式(15)獲得。
該SLS根據(jù)該第二認證向量和該第一認證向量對該UE進行認證,可以是該SLS比較該第二認證向量和該第一認證向量是否相同,若相同,則該UE認證通過。
即便獲得該第一認證向量和該第二認證向量時還包括其他參數(shù),也就是 采用公式(15)獲得,由于該其他參數(shù)均為該UE和SLS通過傳輸告知對方的。然而,由于該第一認證向量和該第二認證向量分別為該UE和該SLS根據(jù)該主會話密鑰采用該安全哈希函數(shù)獲得的,而UE的主會話密鑰為該UE根據(jù)該第一密鑰協(xié)商參數(shù)和該UE的私鑰獲得,該SLS主會話密鑰為該SLS根據(jù)該原口令和該第二密鑰協(xié)商參數(shù)的保護標識確定的該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得的。若UE確定該第二密鑰協(xié)商參數(shù)的保護標識使用的原口令,也就是該UE的原口令,和該SLS根據(jù)該第二密鑰協(xié)商參數(shù)的保護標識確定該第二密鑰協(xié)商參數(shù)使用的原口令,即該SLS的原口令相同,那么該SLS獲得的該第二密鑰協(xié)商參數(shù)便與該UE所生成的該第二密鑰協(xié)商參數(shù)相同,該主會話密鑰便相同,則根據(jù)該主會話密鑰各自生成的認證向量,即該第一認證向量和第二認證向量則相同。
若該SLS對該UE認證通過,則該SLS確定該SLS保存到的該原口令與該UE的原口令相同。
本發(fā)明實施例二的口令更新方法,還通過提供多種該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識的實現(xiàn)方法,可更好的保證口令更新的安全性。同時,還該UE還向該SLS發(fā)送第一認證向量,可使得該SLS根據(jù)該第一認證向量對該UE進行認證,繼而根據(jù)接收到的該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識獲得該目的口令,從而實現(xiàn)該SLS對口令的更新,可更好地保證口令更新的安全性。
實施例三
本發(fā)明實施例三還提供一種口令更新方法。圖4為本發(fā)明實施例三提供的口令更新方法的流程圖。如圖4所示,該方法在上述實施例二中的任一口令更新方法的基礎(chǔ)上,還可包括:
S401、該UE接收DR發(fā)送的隨機值、第一完整性效驗碼及該DR的標識;該第一完整性效驗碼為該DR根據(jù)第一校驗密鑰、該DR的標識及該隨機值生成的哈希認證碼。
其中,該第一校驗密鑰為該DR根據(jù)第一會話子密鑰生成的;該第一會話子密鑰為該DR根據(jù)第一切換子密鑰采用偽隨機函數(shù)生成的;該第一切換子密鑰為該SLS根據(jù)該第一認證向量對該UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成并發(fā)送至該DR的;該第一切換根密鑰為該SLS根 據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的。
具體地,該DR發(fā)送的隨機值可以為該DR產(chǎn)生的隨機值,該DR發(fā)送的隨機值可表示為NonceDR。第一完整性效驗碼可以為該DR發(fā)送包括該隨機值、該第一完整性效驗碼及該DR的標識的消息的消息完整性編碼(Message Integrity Code,簡稱MIC),該第一完整性校驗碼可表示為MIC1。
該第一校驗密鑰為密鑰信息校驗密鑰(Key Confirmation Key,簡稱KCK)。該第一校驗密鑰可表示為KCK1。該第一完整性校驗碼例如可以是該DR根據(jù)該第一校驗密鑰、該DR的標識及該隨機值,采用如下公式(16)獲得。
MIC1=HMAC-SHA-256(KCK1,DRID||NonceDR) 公式(16)
其中,HMAC為密鑰相關(guān)的哈希運算消息認證碼(Hash-based Message Authentication Code,簡稱HMAC)函數(shù)。SHA-256為265位的安全哈希算法。DRID||NonceDR為DRID及NonceDR依次組成的字符串。
該第一校驗密鑰例如可以為該第一會話子密鑰中的部分比特位組成的密鑰。該第一會話子密鑰為該DR生成的該DR與該UE間的會話密鑰,該DR與該UE間的會話密鑰可以為成對瞬時密鑰(Pairwise Transient Key,簡稱PTK)。該DR可根據(jù)該第一會話子密鑰對該DR發(fā)送至該UE的業(yè)務數(shù)據(jù)信息進行加密傳輸。該第一會話子密鑰可表示為PTK1。該第一校驗密鑰例如可以為該DR根據(jù)該第一會話子密鑰,采用如下公式(17)獲得。也就是說,該第一校驗密鑰可以為該第一會話子密鑰,從第n位開始的M個比特位組成的密鑰。
KCK1=L(PTK1,n,M) 公式(17)
其中,L(PTK1,n,M)表示該PTK1中從第n位開始的M個比特位。若n為0,M為128,則該L(PTK1,0,128),那么該KCK1為PTK1中從第0位開始的128個比特位。
該第一切換子密鑰可以為該DR側(cè)的該DR與該UE間的切換子密鑰,可以表示為PMK-r1。該DR側(cè)的該第一切換子密鑰為該SLS生成并發(fā)送至該DR的。
該DR例如可以是根據(jù)該第一切換子密鑰采用如下公式(18)獲得該第一會話子密鑰。
PTK1=PRF-256(PMK-r1) 公式(18)
其中,PRF為偽隨機函數(shù)(Pseudo Random Function,簡稱PRF)。PRF-256為256位的偽隨機函數(shù)。該偽隨機函數(shù)還可以為其他位數(shù)的偽隨機函數(shù),如如PRF-384,PRF-512等。
為保證該UE根據(jù)該隨機值、該第一完整性校驗碼及該DR的標識對該DR進行校驗更精確,該DR生成該第一完整性校驗碼所使用的第一會話子密鑰還可以是該DR根據(jù)該第一切換子密鑰、“Paiwise Key”的字符串、該UE的身份標識、該DR的標識及該隨機值依次組成的字符串采用如下公式(19)獲得。其中,該UE的身份標識如該UE的用戶標識和該UE的設備標識。
PTK1=PRF-256(PMK-r1,“Paiwise Key”,UserID||DevicID||DRID||Nonc eID) 公式(19)
其中,“Paiwise Key”為字符串。||為串聯(lián)符號。UserID||DevicID||DRID||NonceDR為UserID、DevicID、DRID及NonceDR依次組成的字符串。
該第一切換子密鑰為該SLS根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成的;該第一切換根密鑰為該SLS根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的。該SLS根據(jù)該第一認證向量對該UE認證通過后,該SLS可確定該SLS的該主會話密鑰與該UE的該主會話密鑰相同。
該第一切換根密鑰為SLS產(chǎn)生的該UE與該DR間的切換主密鑰,該切換主密鑰可以為成對主密鑰(Pairwise Master Key,簡稱PMK)。該第一切換根密鑰可表示為PMK1。該SLS例如可以是根據(jù)該第一切換根密鑰采用密鑰生成函數(shù),采用如下公式(20)生成該第一切換子密鑰。
PMK-r1=KDF-256(PMK1) 公式(20)
其中,KDF為該密鑰生成函數(shù)(Key Derivation Function,簡稱KDF)。KDF-256為256位的密鑰生成函數(shù)。該密鑰生成函數(shù)還可以為其他位數(shù)的密鑰生成函數(shù)。
可選的,該第一切換子密鑰還可以是該SLS根據(jù)PMK1、字符串“FT-R1”、UserID、DeviceID及DRID采用如下公式(21)獲得的。
PMK-r1=KDF-256(PMK1,“FT-R1”,UserID||DeviceID||DRID)
公式(21)
其中,“FT-R1”為FT-R1組成的字符串。||為串聯(lián)符號。 UserID||DeviceID||DRID為UserID、DeviceID、DRID依次組成的字符串。
該第一切換根密鑰為該SLS根據(jù)該主會話密鑰和該目的口令的哈希值采用如下公式(22)生成的。
PMK1=KDF-256(MSK,PWnew) 公式(22)
可選的,該第一切換根密鑰還可以為該SLS根據(jù)MSK、字符串“PMK”、UserID、DeviceID、ChallengeSLS及PWnew依次組成的字符串采用如下公式(23)生成的。
PMK1=KDF-256(MSK,“PMK”,UserID||DeviceID||ChallengeSLS||PWnew)
公式(23)
S402、該UE根據(jù)該隨機值、該第一完整性校驗碼及該DR的標識對該DR進行校驗。
S403、若該DR校驗通過,該UE確定該UE與該SLS間的該目的口令相同。
若該UE確定該UE與該SLS間的該目的口令相同,即該UE可確定該SLS已將該目的口令存入該SLS中該UE對應的數(shù)據(jù)庫中,作為該UE的新口令,該UE與該SLS間口令同步。
可選的,S402中該UE根據(jù)該第一隨機值、該第一完整性校驗碼及該DR的標識對該DR進行校驗可以包括:
該UE根據(jù)該主會話密鑰及該目的口令獲得第二校驗密鑰;
該UE根據(jù)該第二校驗密鑰、該DR的標識及該隨機值采用哈希認證碼生成函數(shù)生成第二完整性校驗碼;
該UE根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗。
具體地,該UE可以是根據(jù)該主會話密鑰及該目的口令生成該第二切換根密鑰,繼而根據(jù)該第二切換根密鑰生成該第二切換子密鑰,根據(jù)該第二切換子密鑰生成該第二會話子密鑰,并根據(jù)該第二會話子密鑰生成該第二校驗密鑰。
第二完整性校驗碼可表示為MIC2,該第二完整性校驗碼為該UE接收該DR發(fā)送的包括該隨機值、該第一完整性效驗碼及該DR的標識的消息的完整性校驗碼。該UE可以是根據(jù)該第二校驗密鑰、該DR的標識及該隨機值采 用哈希認證碼生成函數(shù),通過如下公式(24)生成第二完整性校驗碼。
MIC2=HMAC-SHA-256(KCK2,DRID||NonceDR) 公式(24)
其中,KCK2為第二校驗密鑰。HMAC為哈希認證碼生成函數(shù)。SHA-256為265位的安全哈希算法。DRID||NonceDR為DRID及NonceDR依次組成的字符串。
該UE根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗,可以是對該第一完整性校驗碼和該第二完整性校驗碼進行比較,并根據(jù)比較結(jié)果與該DR進行校驗。
可選的,上述該UE根據(jù)該主會話密鑰及該目的口令獲得第二校驗密鑰可以是包括:
該UE根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成第二切換根密鑰;
該UE根據(jù)該第二切換根密鑰采用該密鑰生成函數(shù)生成第二切換子密鑰;
該UE根據(jù)該第二切換子密鑰采用該偽隨機函數(shù)生成第二會話子密鑰;
該UE根據(jù)該第二會話子密鑰的生成該第二校驗密鑰。
具體地,該第二切換根密鑰可以為該UE產(chǎn)生的該UE與該DR間的切換主密鑰,該第二切換根密鑰可以表示為PMK2。若該第一切換根密鑰為該SLS根據(jù)上述公式(22)生成的,那么該第二切換根密鑰則可以為該UE根據(jù)該主會話密鑰和該目的口令的哈希值采用下述公式(25)生成的。
PMK2=KDF-256(MSK,PWnew) 公式(25)
若該第一切換根密鑰為該SLS根據(jù)上述公式(23)生成的,那么該第二切換根密鑰則可以為該UE根據(jù)MSK、字符串“PMK”、UserID、DeviceID、ChallengeSLS及PWnew依次組成的字符串采用下述公式(26)生成的。
PMK2=KDF-256(MSK,“PMK”,UserID||DeviceID||ChallengeSLS||PWnew)
公式(26)
該第二切換子密鑰可以為該UE側(cè)的該DR與該UE間的切換子密鑰,可以表示為PMK-r2。若該第一切換子密鑰為該SLS根據(jù)上述公式(20)生成的,該UE可以是根據(jù)該第二切換根密鑰采用密鑰生成函數(shù),采用如下公式(27)生成該第二切換子密鑰。
PMK-r2=KDF-256(PMK2) 公式(27)
若該第一切換子密鑰為該SLS根據(jù)上述公式(21)生成的,該UE可以是根據(jù)該PMK2、字符串“FT-R2”、UserID、DeviceID及DRID采用如下公式(28)獲得的。
PMK-r2=KDF-256(PMK2,“FT-R2”,UserID||DeviceID||DRID) 公式(28)
該第二會話子密鑰生成的該DR與該UE間的會話密鑰。該UE根據(jù)該第二切換子密鑰采用該偽隨機函數(shù)生成第二會話子密鑰。該UE可根據(jù)該第二會話子密鑰對該UE發(fā)送至該DR的業(yè)務數(shù)據(jù)信息進行加密傳輸。該第二會話子密鑰可以表示為PTK2。若該第一會話子密鑰為該DR根據(jù)上述公式(18)獲得的,則該UE可根據(jù)該第二切換子密鑰采用偽隨機函數(shù),采用公式(29)生成該第二會話子密鑰。
PTK2=PRF-256(PMK-r2) 公式(29)
若該第一會話子密鑰為該DR根據(jù)上述公式(19)生成的,則該UE可根據(jù)PMK-r2、字符串“Paiwise Key”、UserID、DevicID、DRID及NonceID依次組成的字符串采用如下公式(30)生成該第二會話子密鑰。
PTK2=PRF-256(PMK-r2,“Paiwise Key”,UserID||DevicID||DRID||NonceID) 公式(30)
該UE可以是第二會話子密鑰采用如下公式(18)生成該第二校驗密鑰。
KCK2=L(PTK2,n,M) 公式(30)
可選的,上述該UE根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗可以包括:
該UE判斷該第一完整性校驗碼和該第二完整性校驗碼是否相同;
若相同,該UE確定該DR通過校驗。
具體的,該第一完整性校驗碼為該DR第一校驗密鑰生成的,該第二完整性校驗碼為該UE根據(jù)第二校驗密鑰。其中,第一校驗密鑰為該DR根據(jù)SLS發(fā)送的該SLS根據(jù)該第一切換根密鑰生成的第一切換子密鑰生成第一會話子密鑰,繼而根據(jù)該第一會話子密鑰所生成的;該第二完整性密鑰為UE根據(jù)第二切換根密鑰生成第二切換子密鑰,繼而根據(jù)該第二切換子密鑰生成第二會話子密鑰,并根據(jù)該第二會話子密鑰所生成的。由于該第一切換根密鑰和該第二切換根密鑰分別為該SLS和該UE根據(jù)該主會話密鑰和該目的口令生成的,該SLS根據(jù)該第一認證向量對該UE認證通過后,該SLS的主會 話密鑰和該UE的該主會話密鑰相同。因此,若該UE根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR認證通過,那么,該UE的該目的口令和該SLS的該目的口令相同。也就是說,該SLS已完成口令的更新,即將原口令更新為該目的口令。因此,該SLS與該UE間口令同步,從而保證該UE可根據(jù)該目的口令正常接入網(wǎng)絡,避免由于口令不同步帶來的接入異常。
可選的,該方法還可包括:
S404、該UE根據(jù)該第二校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成第三完整性校驗碼。
其中,該第二校驗密鑰為KCK2,該UE的用戶ID為UserID,該UE的設備ID為DeviceID,該隨機值為NonceDR。該哈希認證碼生成函數(shù)例如可以為HMAC-SHA-256。該第三完整性校驗碼可表示為MIC3。該UE例如可以是根據(jù)如下公式(31)生成該第三完整性校驗碼。
MIC3=HMAC-SHA-256(KCK2,UserID||DeviceID||NonceDR) 公式(31)
公式(31)中,UserID||DeviceID||NonceDR為UserID、DeviceID、NonceDR依次組成的字符串。
S405、該UE將該UE的用戶ID、該UE的設備ID、該隨機值及該第三完整性校驗碼發(fā)送至該DR;該第三完整性校驗碼用于使該DR結(jié)合第四完整性校驗碼對該UE進行校驗,若該UE校驗通過,該DR確定該第一會話子密鑰與該第二會話子密鑰相同。
其中,該第四完整性校驗碼為該DR根據(jù)該第一校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成的。
具體地,該第四完整性校驗碼可表示為MIC4。該DR例如可以是根據(jù)如下公式(32)生成該第四完整性校驗碼。
MIC4=HMAC-SHA-256(KCK1,UserID||DeviceID||NonceDR) 公式(32)
該DR例如可以是通過比較該第三完整性校驗碼和該第四完整性校驗碼對該UE進行校驗,若該第三完整性校驗碼與該第三完整性校驗碼相同,該DR確定該第一校驗密鑰與該第二校驗密鑰相同。由于該第一校驗密鑰為該DR根據(jù)該第一會話子密鑰生成的,該第二校驗密鑰為該UE根據(jù)該第二會話 子密鑰生成的,因此,若該第三完整性校驗碼與該第三完整性校驗碼相同,該DR可確定對該UE校驗通過,即該UE的身份合法,并且該第一會話子密鑰和該第二會話子密鑰相同。
S406、該UE接收該DR對該UE校驗通過并將該DR保存的會話密鑰更新為該第一會話子密鑰后,發(fā)送的密鑰更新消息。
S407、該UE根據(jù)該密鑰更新消息將該UE保存的會話密鑰更新為該第二會話子密鑰。
為保證該密鑰更新消息的準確性,該DR發(fā)送至該UE的該密鑰更新消息中還可包括第四完整性校驗碼。該UE在接收到該密鑰更新消息后,根據(jù)該第四完整性校驗碼對該密鑰更新消息進行校驗,若校驗通過,該UE則將保存的會話密鑰更新為該第二會話子密鑰。
該UE和該SLS已完成口令的更新,且該UE與該DR也完成基于新口令的會話密鑰更新,從而更好地保證業(yè)務數(shù)據(jù)傳輸?shù)陌踩浴1景l(fā)明實施例三提供的口令更新方法,在上述實施例中UE與該SLS完成口令更新的基礎(chǔ)上,還完成該UE與該DR間基于該目的口令的會話密鑰更新,可更好地保證該UE與該DR間的業(yè)務數(shù)據(jù)信息的傳輸安全性。
需要說明的是,該DR根據(jù)該第三完整性校驗碼和該第四完整性校驗碼對該UE校驗通過后,該DR還向該SLS發(fā)送密鑰更新成功消息,該SLS可根據(jù)該密鑰更新成功消息確定該UE和該DR已根據(jù)該更新后的口令即該目的口令,對會話密鑰的更新完成。
由于本發(fā)明實施例三的方法,還在口令更新的同時還進行接入認證,即將口令更新與基于更新的口令對會話密鑰進行更新的過程結(jié)合在一起,從而避免口令更新與接入認證分時進行的步驟重復,簡化各設備之間的交互流程。并且由于口令更新與接入認證過程的結(jié)合,在完成口令更新的同時,完成了接入認證過程,無需用戶重新登錄進行認證,提高用戶體驗。
若用戶在一個UE上完成本發(fā)明實施例所提供的口令更新方法,即在口令更新的同時還完成接入認證,那么網(wǎng)絡設備,如SLS或DR需通知用戶接入同一用戶信息的其他UE下線,提醒重新接入網(wǎng)絡,以保證用戶的多個UE在整個UIP網(wǎng)絡中密鑰的統(tǒng)一。
實施例四
本發(fā)明實施例四還提供一種口令更新方法。圖5為本發(fā)明實施例四提供的口令更新方法的流程圖。該方法可該UE所在UIP域中的SLS執(zhí)行。如圖5所示,該方法可包括:
S501、SLS根據(jù)該SLS的私鑰采用密鑰交換算法生成第一密鑰協(xié)商參數(shù)。
S502、該SLS向UE發(fā)送該第一密鑰協(xié)商參數(shù)。
S503、該SLS接收該UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識;其中,該第二密鑰協(xié)商參數(shù)的保護標識為該UE根據(jù)第二密鑰協(xié)商參數(shù)及原口令獲得的;該第二密鑰協(xié)商參數(shù)為該UE根據(jù)該UE的私鑰采用該密鑰交換算法生成的;該目的口令的保護標識為該UE根據(jù)該第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得的。
S504、該SLS根據(jù)該原口令及該第二密鑰協(xié)商參數(shù)的保護標識獲得該第二密鑰協(xié)商參數(shù)。
S505、該SLS根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令。
可選的,該第二密鑰協(xié)商參數(shù)的保護標識為該UE根據(jù)該第二密鑰協(xié)商參數(shù)及該原口令的哈希值的乘積獲得的。
可選的,該目的口令的保護標識為該UE根據(jù)主會話密鑰和該目的口令獲得的;該主會話密鑰為該UE根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得的。
S505中SLS根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令可以包括:
該SLS根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得該主會話密鑰;
該SLS根據(jù)該主會話密鑰和該目的口令的保護標識獲得該目的口令的哈希值。
可選的地,該目的口令的保護標識還可以為該UE根據(jù)該主會話密鑰對該目的口令的哈希值進行加密獲得的。
本實施例中上述步驟該SLS根據(jù)該主會話密鑰和該目的口令的保護標識獲得該目的口令的哈希值可以包括:
該SLS根據(jù)該主會話密鑰對該目的口令的保護標識進行解密獲得該目的口令的哈希值。
可替代地,該目的口令的保護標識還可以為該UE根據(jù)該主會話密鑰的哈希值與該目的口令的哈希值的乘積獲得的。
本實施例中上述步驟該SLS根據(jù)該主會話密鑰和該目的口令的保護標識獲得該目的口令的哈希值可以包括:
該SLS通過該目的口令的保護標識除以該主會話密鑰獲得該目的口令的哈希值。
上述S503中該SLS接收該UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識可以包括:
該SLS接收該UE發(fā)送該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及第一認證向量。
該方法還包括:
該SLS根據(jù)該第一認證向量對該UE進行認證;
若該UE認證通過,該SLS確定該SLS與該UE間的該原口令相同。
可選的,該第一認證向量為該UE根據(jù)該主會話密鑰采用安全哈希函數(shù)獲得的。
上述步驟中SLS根據(jù)該第一認證向量對該UE進行認證可以包括:
該SLS根據(jù)該主會話密鑰采用該安全哈希函數(shù)獲得第二認證向量;
該SLS根據(jù)該第一認證向量和該第二認證向量對該UE進行認證。
可選的,該方法還可包括:
該SLS根據(jù)該主會話密鑰及該目的口令的哈希值采用密鑰生成函數(shù)生成第一切換根密鑰;
該SLS根據(jù)該第一切換根密鑰采用該密鑰生成函數(shù)生成第一切換子密鑰;
該SLS將該第一切換子密鑰發(fā)送至DR;所述第一切換子密鑰用于使該DR該所述第一切換子密鑰對采用偽隨機函數(shù)生成第一會話子密鑰,根據(jù)該第一會話子密鑰生成第一校驗密鑰,繼而根據(jù)該第一校驗密鑰、該DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性校驗碼,并向該UE發(fā)送該第一完整性校驗碼;該第一完整性校驗碼用于使該UE對該DR進行校驗。
本發(fā)明實施例四提供的口令更新方法,為上述實施例一至實施例三中任一UE執(zhí)行的方法對應的該SLS執(zhí)行的口令更新方法,其有益效果與上述實 施例類似,在此不再贅述。
實施例五
本發(fā)明實施例五還提供一種口令更新方法。圖6為本發(fā)明實施例五提供的口令更新方法的流程圖。該方法可由該UE所在UIP域中的DR執(zhí)行。如圖6所示,該方法可包括:
S601、DR接收SLS發(fā)送的第一切換子密鑰;該第一切換子密鑰為該SLS對該UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成的;該第一切換根密鑰為該SLS根據(jù)主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的;該SLS對該UE認證通過后,該SLS與該UE具有相同的該主會話密鑰。
S602、該DR根據(jù)該第一切換子密鑰采用偽隨機函數(shù)生成該第一會話子密鑰。
S603、該DR根據(jù)該第一會話子密鑰生成的第一校驗密鑰。
S604、該DR根據(jù)該第一校驗密鑰、該DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性效驗碼。
S605、該DR向UE發(fā)送該隨機值、該第一完整性效驗碼及該DR的標識;該隨機值、該第一完整性效驗碼及該DR的標識用于使該UE對該DR進行校驗,若該DR校驗通過該UE確定該UE與該SLS間的該目的口令相同。
可選的,該隨機值、該第一完整性效驗碼及該DR的標識用于使該UE根據(jù)第二校驗密鑰、該DR的標識及該隨機值采用該哈希認證碼生成函數(shù)生成第二完整性校驗碼,并根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗;該第二校驗密鑰為該UE根據(jù)該主會話密鑰及該目的口令獲得的。
可選的,該第二校驗密鑰為該UE根據(jù)第二會話子密鑰生成的;該第二會話子密鑰為該UE根據(jù)第二切換子密鑰采用偽隨機函數(shù)生成的;該第二切換子密鑰為該UE根據(jù)第二切換根密鑰采用該密鑰生成函數(shù)生成的;該第二切換根密鑰為該UE根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的。
可選的,該方法還包括:
該DR接收該UE對該DR校驗通過后發(fā)送的該UE的用戶ID、該UE的 設備ID、該隨機值及第三完整性校驗碼;其中,該第三完整性校驗碼為該UE根據(jù)該第二校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成的;
該DR根據(jù)該第一校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成第四完整性校驗碼;
該DR根據(jù)該第三完整性校驗碼及該第四完整性校驗碼對該UE進行校驗;
若該UE校驗通過,該DR確定該第一會話子密鑰與該第二會話子密鑰相同;
該DR將保存的會話密鑰更新為該第一會話子密鑰;
該DR向該UE發(fā)送密鑰更新消息,該密鑰更新消息用于使該UE保存的會話密鑰更新為該第二會話子密鑰。
本發(fā)明實施例五提供的口令更新方法,為上述實施例一至實施例三中任一UE執(zhí)行的方法對應的該DR執(zhí)行的口令更新方法,其有益效果與上述實施例類似,在此不再贅述。
實施例六
本發(fā)明實施例六還提供一種口令更新方法。該實施例六提供一個UE、SLS及DR交互執(zhí)行的口令更新方法。圖7為本發(fā)明實施例六提供的口令更新方法的流程圖。如圖7所述,該方法可包括:
S701、UE向DR發(fā)送口令更新請求消息,該口令更新請求消息包括:UserID、DeviceID。
S702、DR向SLS發(fā)送該口令更新請求消息。
S703、SLS根據(jù)UserID、DeviceID確定該UE注冊在SLS,并根據(jù)該SLS的私鑰生成ChallengeSLS。
該SLS可以是根據(jù)該SLS的私鑰采用密鑰交換算法生成ChallengeSLS。
S704、SLS向DR發(fā)送第一口令更新響應消息,該第一口令更新響應消息包括:UserID、DeviceID、SLSID、ChallengeSLS。
S705、DR根據(jù)UserID、DeviceID確定UE。
S706、DR向UE發(fā)送第二口令更新響應消息,該第二口令更新響應消息包括DRID、SLSID、ChallengeSLS。
需要說明的是,上述S704中第一口令更新響應消息也可不包括SLSID,由該DR在接收到該第一口令更新響應消息后將該SLSID和DRID添加至該第一口令更新響應消息中,獲得該第二口令更新響應消息,繼而發(fā)送至UE。
S707、UE根據(jù)UE的私鑰生成ChallengeUE;根據(jù)PWold和ChallengeUE的乘積生成ChallengeUE*;根據(jù)ChallengeSLS和UE的私鑰生成MSK;根據(jù)MSK和PWnew生成Protection-PW;根據(jù)MSK生成AuthUE。
該UE可以是通過MSK對PWnew進行加密生成Protection-PW,也可以是通過MSK的哈希值和PWnew的乘積,生成Protection-PW。該UE可以是根據(jù)MSK采用上述公式(15)生成AuthUE。
該UE可以是根據(jù)UE的私鑰采用密鑰交換算法生成ChallengeUE。
S708、UE向DR發(fā)送口令更新校驗消息,該口令更新校驗消息包括:UserID、DeviceID、ChallengeSLS、ChallengeUE*、Protection-PW、AuthUE。
S709、DR向SLS發(fā)送該口令更新校驗消息。
S710、SLS根據(jù)ChallengeUE*除以通過UserID、DeviceID確定的SLS保存的該UE對應的PWold,獲得ChallengeUE根據(jù)ChallengeUE和SLS的私鑰生成MSK;根據(jù)MSK生成AuthSLS,根據(jù)AuthSLS對AuthUE進行校驗;根據(jù)MSK和Protection-PW獲得PWnew;根據(jù)PWnew和MSK生成PMK1,根據(jù)PMK1生成PMK-r1。
需要說明的是,在S710之前,該SLS可根據(jù)該ChallengeSLS判斷該口令更新校驗消息是否合法,即判斷該口令更新校驗消息是否為該SLS發(fā)送ChallengeSLS所對應的UE發(fā)送的消息,若該口令更新校驗消息合法,則該SLS執(zhí)行S710。
S711、SLS向DR發(fā)送口令更新確認消息,該口令更新確認消息包括:UserID、DeviceID、PMK-r1。
S712、DR根據(jù)PMK-r1生成PTK1;根據(jù)PTK1生成KCK1;產(chǎn)生NonceDR;根據(jù)KCK1、NonceDR及DRID生成MIC1。
S713、DR向UE發(fā)送口令更新反饋消息,該口令更新反饋消息包括:DRID、NonceDR及MIC1。
S714、UE根據(jù)根據(jù)PWnew和MSK生成PMK2,根據(jù)PMK2生成PMK-r2;根據(jù)PMK-r2生成PTK2;根據(jù)PTK2生成KCK2;根據(jù)KCK2、Nonce DR及DRID生成MIC2;根據(jù)MIC2對MIC1進行校驗;若校驗通過,根據(jù)KCK2、UserID、DeviceID及NonceDR生成KCK3。
需要說明的是,若該校驗失敗,則該UE可通過DR向SLS發(fā)送拒絕更新口令消息,以使得SLS不對該UE對應的口令進行更新,從而避免UE與該SLS的口令不同步。
S715、UE向DR發(fā)送接入確認消息,該接入確認消息包括:UserID、DeviceID、NonceDR及MIC3。
S716、DR根據(jù)KCK1、UserID、DeviceID及NonceDR生成MIC4;根據(jù)MIC4對MIC3進行校驗;若校驗通過,DR將保存的會話密鑰更新為PTK1;根據(jù)字符串“updatePTK”、DRID、NonceDR、MIC3生成MIC5。
S717、UE向DR發(fā)送更新會話密鑰消息,該更新會話密鑰消息包括:字符串“updatePTK”、DRID、NonceDR、MIC3,MIC5。
S718、UE根據(jù)字符串“updatePTK”、DRID、NonceDR、MIC3生成MIC6;根據(jù)MIC6對MIC5進行校驗;若校驗通過,將保存的會話密鑰更新為PTK2。
S719、DR向SLS發(fā)送口令更新成功消息,該口令更新成功消息包括:字符串“Update PW Success”、UserID、DeviceID及DRID。
本發(fā)明實施例六提供的口令更新方法,由于將口令更新與接入認證過程相結(jié)合,可使得該SLS根據(jù)該口令更新方法將用戶口令更新為UE更改的目的口令,同時還可使得DR和SLS對該UE進行接入認證,即根據(jù)該目的口令協(xié)商該UE和該DR間的會話密鑰,從而避免步驟重復,簡化交互流程。并且由于口令更新與接入認證過程的結(jié)合,在完成口令更新的同時,完成了接入認證過程,無需用戶重新登錄進行認證,提高用戶體驗。
該UE通過向SLS發(fā)送第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識,其中,該第二密鑰協(xié)商參數(shù)的保護標識為該UE根據(jù)該UE的私鑰采用密鑰交換算法生成第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得的,該目的口令的保護標識是UE根據(jù)接收到的該SLS發(fā)送的第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得的。由于該UE的私鑰和該SLS的私鑰都是保密且不進行傳輸而無法被獲取,那么即便攻擊者獲取原口令也無法破解該目的口令的保護標識并獲得該目的口令。因此,本發(fā)明實施例可 提高口令更新的安全性。并且,由于該UE的私鑰可為該UE產(chǎn)生的隨機值,該SLS的私鑰為該SLS產(chǎn)生的隨機值,即該UE的私鑰和該SLS的私鑰均為隨機值,因此該UE的私鑰和該SLS的私鑰的安全性則更高,那么攻擊者獲取的難度更大,從而提高口令更新的安全性。
實施例七
本發(fā)明實施例七還提供一種用戶設備。圖8為本發(fā)明實施例七提供的UE的結(jié)構(gòu)示意圖。如圖8所示,該UE 800可包括:接收模塊801、生成模塊802及發(fā)送模塊803。
接收模塊801,用于接收SLS發(fā)送的第一密鑰協(xié)商參數(shù);該第一密鑰協(xié)商參數(shù)為該SLS根據(jù)該SLS的私鑰采用密鑰交換算法生成的。
生成模塊802,用于根據(jù)該UE的私鑰采用該密鑰交換算法生成第二密鑰協(xié)商參數(shù);根據(jù)該第二密鑰協(xié)商參數(shù)及原口令獲得該第二密鑰協(xié)商參數(shù)的保護標識;根據(jù)該第一密鑰協(xié)商參數(shù)、該UE的私鑰及目的口令獲得該目的口令的保護標識。
發(fā)送模塊803,用于將該第二密鑰協(xié)商參數(shù)的保護標識及該目的口令的保護標識發(fā)送至該SLS。該第二密鑰協(xié)商參數(shù)的保護標識用于使該SLS根據(jù)該原口令獲得該第二密鑰協(xié)商參數(shù),繼而根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令。
可選的,生成模塊802,還用于根據(jù)該第二密鑰協(xié)商參數(shù)和該原口令的哈希值的乘積,獲得該第二密鑰協(xié)商參數(shù)的保護標識。
可選的,生成模塊802,還用于根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得主會話密鑰;根據(jù)該主會話密鑰和該目的口令獲得該目的口令的保護標識。
可選的,生成模塊802,還用于根據(jù)該主會話密鑰對該目的口令的哈希值進行加密,獲得該目的口令的保護標識。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得該主會話密鑰,繼而根據(jù)該主會話密鑰對該目的口令的保護標識進行解密獲得該目的口令的哈希值。
可替代地,生成模塊802,還用于根據(jù)該主會話密鑰的哈希值與該目的口令的哈希值的乘積,獲得該目的口令的保護標識。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得該主會話密鑰,繼而通過該目的口令的保護標識除以該主會話密鑰的哈希值獲得該目的口令的哈希值。
可選的,發(fā)送模塊803,還用于將該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及第一認證向量發(fā)送至該SLS;該第一認證向量用于使該SLS對該UE進行認證,若該UE認證通過,該SLS確定該SLS與該UE間的該原口令相同。
可選的,生成模塊802,還用于在發(fā)送模塊803將該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及該第一認證向量發(fā)送至該SLS之前,根據(jù)該主會話密鑰采用安全哈希函數(shù)獲得該第一認證向量。
對應的,該第二密鑰協(xié)商參數(shù)的保護標識還用于使該SLS根據(jù)該主會話密鑰采用該安全哈希函數(shù)獲得第二認證向量,繼而根據(jù)該第二認證向量和該第一認證向量對該UE進行認證。
可選的,接收模塊801,用于接收DR發(fā)送的隨機值、第一完整性效驗碼及該DR的標識;該第一完整性效驗碼為該DR根據(jù)第一校驗密鑰、該DR的標識及該隨機值生成的哈希認證碼;該第一校驗密鑰為該DR根據(jù)第一會話子密鑰生成的;該第一會話子密鑰為該DR根據(jù)第一切換子密鑰采用偽隨機函數(shù)生成的;該第一切換子密鑰為該SLS根據(jù)該第一認證向量對該UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成并發(fā)送至該DR的;該第一切換根密鑰為該SLS根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的。
該UE 800還包括:
校驗模塊,用于根據(jù)該隨機值、該第一完整性校驗碼及該DR的標識對該DR進行校驗;若該DR校驗通過,則確定該UE與該SLS間的該目的口令相同。
可選的,生成模塊802,還用于根據(jù)該主會話密鑰及該目的口令獲得第二校驗密鑰;根據(jù)該第二校驗密鑰、該DR的標識及該隨機值采用哈希認證碼生成函數(shù)生成第二完整性校驗碼。
校驗模塊,還用于根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗。
可選的,生成模塊802,還用于根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成第二切換根密鑰;根據(jù)該第二切換根密鑰采用該密鑰生成函數(shù)生成第二切換子密鑰;根據(jù)該第二切換子密鑰采用該偽隨機函數(shù)生成第二會話子密鑰;根據(jù)該第二會話子密鑰的生成該第二校驗密鑰。
可選的,校驗模塊,還用于判斷該第一完整性校驗碼和該第二完整性校驗碼是否相同;若相同,則確定DR通過校驗。
可選的,生成模塊802,還用于根據(jù)該第二校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成第三完整性校驗碼。
發(fā)送模塊803,還用于將該UE的用戶ID、該UE的設備ID、該隨機值及該第三完整性校驗碼發(fā)送至該DR;該第三完整性校驗碼用于使該DR結(jié)合第四完整性校驗碼對該UE進行校驗,若該UE校驗通過,該DR確定該第一會話子密鑰與該第二會話子密鑰相同;其中,該第四完整性校驗碼為該DR根據(jù)該第一校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成的。
接收模塊801,還用于接收該DR對該UE校驗通過并將該DR保存的會話密鑰更新為該第一會話子密鑰后,發(fā)送的密鑰更新消息。
UE 800還包括:
更新模塊,用于根據(jù)該密鑰更新消息將該UE保存的會話密鑰更新為該第二會話子密鑰。
本發(fā)明實施例七提供的UE,可用于執(zhí)行上述實施例一至實施例三中提供的口令更新方法,其具體的實現(xiàn)過程及有益效果,可參照上述實施例,在此不再贅述。
實施例八
本發(fā)明實施例八還提供一種SLS。圖9為本發(fā)明實施例八提供的SLS的結(jié)構(gòu)示意圖。如圖9所示,該SLS 900可包括:生成模塊901、發(fā)送模塊902、接收模塊903及獲取模塊904。
生成模塊901,用于根據(jù)該SLS的私鑰采用密鑰交換算法生成第一密鑰協(xié)商參數(shù)。
發(fā)送模塊902,用于向UE發(fā)送該第一密鑰協(xié)商參數(shù)。
接收模塊903,用于接收該UE發(fā)送的第二密鑰協(xié)商參數(shù)的保護標識及目的口令的保護標識。其中,該第二密鑰協(xié)商參數(shù)的保護標識為該UE根據(jù)第二密鑰協(xié)商參數(shù)及原口令獲得的;該第二密鑰協(xié)商參數(shù)為該UE根據(jù)該UE的私鑰采用該密鑰交換算法生成的;該目的口令的保護標識為該UE根據(jù)該第一密鑰協(xié)商參數(shù)、該UE的私鑰及該目的口令獲得的。
獲取模塊904,用于根據(jù)該原口令及該第二密鑰協(xié)商參數(shù)的保護標識獲得該第二密鑰協(xié)商參數(shù);根據(jù)該第二密鑰協(xié)商參數(shù)、該SLS的私鑰、該目的口令的保護標識獲得該目的口令。
可選的,該第二密鑰協(xié)商參數(shù)的保護標識為該UE根據(jù)該第二密鑰協(xié)商參數(shù)及該原口令的哈希值的乘積獲得的。
可選的,該目的口令的保護標識為該UE根據(jù)主會話密鑰和該目的口令獲得的;該主會話密鑰為該UE根據(jù)該第一密鑰協(xié)商參數(shù)及該UE的私鑰采用該密鑰交換算法獲得的。
獲取模塊904,還用于根據(jù)該第二密鑰協(xié)商參數(shù)及該SLS的私鑰獲得該主會話密鑰;根據(jù)該主會話密鑰和該目的口令的保護標識獲得該目的口令的哈希值。
可選的,該目的口令的保護標識為該UE根據(jù)該主會話密鑰對該目的口令的哈希值進行加密獲得的。
獲取模塊904,還用于根據(jù)該主會話密鑰對該目的口令的保護標識進行解密獲得該目的口令的哈希值。
可選的,該目的口令的保護標識為該UE根據(jù)該主會話密鑰的哈希值與該目的口令的哈希值的乘積獲得的。
獲取模塊904,還用于通過該目的口令的保護標識除以該主會話密鑰獲得該目的口令的哈希值。
可選的,接收模塊903,還用于接收該UE發(fā)送的該第二密鑰協(xié)商參數(shù)的保護標識、該目的口令的保護標識及第一認證向量。
SLS 900還包括:
認證模塊,用于根據(jù)該第一認證向量對該UE進行認證;若該UE認證通過,則確定該SLS與該UE間的該原口令相同。
可選的,該第一認證向量為該UE根據(jù)該主會話密鑰采用安全哈希函數(shù) 獲得的。
獲取模塊904,還用于根據(jù)該主會話密鑰采用該安全哈希函數(shù)獲得第二認證向量。
認證模塊,還用于根據(jù)該第一認證向量和該第二認證向量對該UE進行認證。
可選的,生成模塊901,用于根據(jù)該主會話密鑰及該目的口令的哈希值采用密鑰生成函數(shù)生成第一切換根密鑰;根據(jù)該第一切換根密鑰采用該密鑰生成函數(shù)生成第一切換子密鑰。
發(fā)送模塊902,還用于將該第一切換子密鑰發(fā)送至DR;該第一切換子密鑰用于使該DR根據(jù)該第一切換子密鑰對采用偽隨機函數(shù)生成第一會話子密鑰,根據(jù)該第一會話子密鑰生成第一校驗密鑰,繼而根據(jù)該第一校驗密鑰、該DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性校驗碼,并向該UE發(fā)送該第一完整性校驗碼;該第一完整性校驗碼用于使該UE對該DR進行校驗。
本發(fā)明實施例八提供的SLS,可用于執(zhí)行上述實施例四提供的口令更新方法,其實現(xiàn)過程及有益效果可參照上述實施例,在此不再贅述。
實施例九
本發(fā)明實施例九還提供一種DR。圖10為本發(fā)明實施例九提供的DR的結(jié)構(gòu)示意圖。如圖10所示,DR 1000,可包括:接收模塊1001、生成模塊1002及發(fā)送模塊1003。
接收模塊1001,用于接收SLS發(fā)送的第一切換子密鑰;該第一切換子密鑰為該SLS對該UE認證通過后根據(jù)第一切換根密鑰采用密鑰生成函數(shù)生成的;該第一切換根密鑰為該SLS根據(jù)主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的;該SLS對該UE認證通過后,該SLS與該UE具有相同的該主會話密鑰。
生成模塊1002,用于根據(jù)該第一切換子密鑰采用偽隨機函數(shù)生成該第一會話子密鑰;根據(jù)該第一會話子密鑰生成的第一校驗密鑰;根據(jù)該第一校驗密鑰、該DR的標識及隨機值采用哈希認證碼生成函數(shù)生成第一完整性效驗碼。
發(fā)送模塊1003,用于向UE發(fā)送該隨機值、該第一完整性效驗碼及該DR 的標識;該隨機值、該第一完整性效驗碼及該DR的標識用于使該UE對該DR進行校驗,若該DR校驗通過該UE確定該UE與該SLS間的該目的口令相同。
可選的,該隨機值、該第一完整性效驗碼及該DR的標識用于使該UE根據(jù)第二校驗密鑰、該DR的標識及該隨機值采用該哈希認證碼生成函數(shù)生成第二完整性校驗碼,并根據(jù)該第一完整性校驗碼和該第二完整性校驗碼對該DR進行校驗;該第二校驗密鑰為該UE根據(jù)該主會話密鑰及該目的口令獲得的。
可選的,該第二校驗密鑰為該UE根據(jù)第二會話子密鑰生成的;該第二會話子密鑰為該UE根據(jù)第二切換子密鑰采用偽隨機函數(shù)生成的;該第二切換子密鑰為該UE根據(jù)第二切換根密鑰采用該密鑰生成函數(shù)生成的;該第二切換根密鑰為該UE根據(jù)該主會話密鑰及該目的口令的哈希值采用該密鑰生成函數(shù)生成的。
可選的,接收模塊1001,還用于接收該UE對該DR校驗通過后發(fā)送的該UE的用戶ID、該UE的設備ID、該隨機值及第三完整性校驗碼;其中,該第三完整性校驗碼為該UE根據(jù)該第二校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成的。
生成模塊1002,還用于根據(jù)該第一校驗密鑰、該UE的用戶ID、該UE的設備ID及該隨機值采用該哈希認證碼生成函數(shù)生成第四完整性校驗碼。
DR 1000還包括:
校驗模塊,用于根據(jù)該第三完整性校驗碼及該第四完整性校驗碼對該UE進行校驗;若該UE校驗通過,確定該第一會話子密鑰與該第二會話子密鑰相同。
更新模塊,用于將保存的會話密鑰更新為該第一會話子密鑰;
發(fā)送模塊1003,還用于向該UE發(fā)送密鑰更新消息,該密鑰更新消息用于使該UE保存的會話密鑰更新為該第二會話子密鑰。
本發(fā)明實施例九提供的DR,可用于執(zhí)行上述實施例五提供的口令更新方法,其實現(xiàn)過程及有益效果可參照上述實施例,在此不再贅述。
本領(lǐng)域普通技術(shù)人員可以理解:實現(xiàn)上述各方法實施例的全部或部分步驟可以通過程序指令相關(guān)的硬件來完成。前述的程序可以存儲于一計算機可 讀取存儲介質(zhì)中。該程序在執(zhí)行時,執(zhí)行包括上述各方法實施例的步驟;而前述的存儲介質(zhì)包括:ROM、RAM、磁碟或者光盤等各種可以存儲程序代碼的介質(zhì)。
最后應說明的是:以上各實施例僅用以說明本發(fā)明的技術(shù)方案,而非對其限制;盡管參照前述各實施例對本發(fā)明進行了詳細的說明,本領(lǐng)域的普通技術(shù)人員應當理解:其依然可以對前述各實施例所記載的技術(shù)方案進行修改,或者對其中部分或者全部技術(shù)特征進行等同替換;而這些修改或者替換,并不使相應技術(shù)方案的本質(zhì)脫離本發(fā)明各實施例技術(shù)方案的范圍。