一種同步sqn的處理方法
2023-07-19 08:39:01 2
專利名稱:一種同步sqn的處理方法
技術領域:
本發明涉及通信安全技術,具體涉及一種同步SQN的處理方法。
背景技術:
現有的第三代移動通信系統中的鑑權流程,在移動終端中保存國際移動用戶標識IMSI、鑑權密鑰KI和序列號SQNMS,HLR/AUC中針對該移動終端對應保存IMSI、KI和序列號SQNHE,以用於移動終端和網絡相互鑑權。
3G通信系統的現有鑑權流程主要為HLR/AUC產生隨機數RAND,根據隨機數RAND和KI產生期望響應XRES、加密密鑰CK、完整性密鑰IK;根據隨機數RAND、序列號SQNHE、鑑權密鑰KI和鑑權管理域AMF產生出MAC-A,根據MAC-A,SQNHE、AK和AMF得到鑑權標記AUTN(Authentication Token)。由RAND和XRES、CK、IK和AUTN組成鑑權五元組,將該五元組發送給MSC/VLR保存。當然,實際當中,HLR/AUC是應MSC/VLR的請求才將產生的相應的一個或多個五元組發送給MSC/VLR的。鑑權時,MSC/VLR將對應五元組中RAND和AUTN發送給終端,終端根據自己保存的KI驗證AUTN的一致性,如果一致性驗證不通過,則向MSC/VLR返回鑑權失敗信息;若一致性驗證通過,則判斷SQNHE是否屬於可接受的範圍若屬於,則終端判斷出對網絡鑑權通過,終端向MSC/VLR返回自己產生的鑑權響應,並根據AUTN中的SQNHE更新SQNMS,MSC/VLR比較終端返回的鑑權響應和對應五元組中的XRES是否一致來判斷終端的合法性;若判斷出SQNHE不屬於可接受範圍,則終端根據SQNMS產生再同步標記AUTS(Resynchronisation Token),對MSC/VLR返回再同步請求或同步失敗(Synchronisation failure)消息,同時附上產生的再同步標記AUTS,也即消息中包含AUTS。MSC/VLR接收到再同步標記AUTS時,將AUTS和對應五元組中的RAND發送給HLR/AUC,HLR/AUC根據對應保存的KI和接收到的RAND,判斷AUTS的合法性,如果不合法,則HLR/AUC向MSC/VLR返回AUTS不合法信息;如果判斷出AUTS合法,則HLR/AUC根據AUTS中的SQNMS更新SQNHE,並產生一個新的鑑權五元組發送給MSC/VLR,MSC/VLR接收到新的五元組後,刪除對應的舊的五元組並利用新五元組重新對終端鑑權。
終端通過比較自己保存的SQNMS和AUTN中的SQNHE是否滿足預定的條件來判斷SQNHE是否可以接受,該預定條件可以是SQNHE和SQNMS的差值在一個預定範圍內,例如,是否(SQNHE-SQNMS)大於0,或者是否(SQNHE-SQNMS)大於0且小於256。如果SQNHE和SQNMS的差值在所述預定範圍內,則判斷出SQNHE是可接受的;否則判斷出SQNHE是不可接受的。
關於3G鑑權流程的詳細內容,可以參照3GPP規範,為了突出本發明重點,本文不對其進行詳細闡述。
由上可見在3G通信系統的現有鑑權流程中,SQNMS主要用於判斷AUTN中SQNHE是否是最新的或SQNHE是否在可接受範圍內,以及更新SQNHE時使用。而同步SQN流程也主要用於向HLR/AUC傳送真實的SQNMS。
在現實當中,存在用戶卡克隆現象,這種現象不但給合法用戶帶來損失,還會影響到運營商的服務質量。後來有人發現,通過不斷地更新用戶卡的鑑權密鑰,可以避免或發現合法用戶卡被克隆。具體過程是終端產生一個隨機數,用隨機數和原鑑權密鑰進行計算得到一個新的鑑權密鑰,並向HLR/AUC發送一個更新密鑰的命令,命令中包括了所述隨機數;HLR/AUC接收到密鑰更新命令後,也用所述隨機數和原鑑權密鑰進行計算,產生一個新的鑑權密鑰。這樣,終端和網絡在下次鑑權時,都用新的鑑權密鑰進行鑑權。不難看出,該密鑰更新過程存在如下問題密鑰更新後,MSC/VLR中如果還有沒有用完的鑑權五元組,HLR/AUC如何讓MSC/VLR來清除這些老的五元組,並將新的五元組發送給MSC/VLR,要解決這個問題,就需要在HLR/AUC和MSC/VLR間增加相應的協議。
還有一種情況,終端在連接網絡時,可能需要將終端設備的能力,比如是否支持GPS定位,是否是GSM/WCDMA雙模手機等等信息傳送給網絡。
還有一種情況,終端採用密鑰託管HLR/AUC的方式來實現防盜功能,用戶設置防盜功能和取消防盜功能時,都需要給HLR/AUC發送相應的通知消息。在實現這種密鑰託管HLR/AUC的防盜方法中,還有一種鑑權密鑰置換方案,即用終端的安全密鑰替代用戶卡的鑑權密鑰來實現與網絡側的相互鑑權。這種情況下,HLR/AUC產生鑑權元組時,使用的對應的終端安全密鑰替代用戶卡密鑰來產生鑑權五元組。這個過程中,終端不但要向HLR/AUC傳送設置防盜和取消防盜命令信息,HLR/AUC還要在設置防盜功能時將根據安全密鑰產生的鑑權五元組發送給MSC/VLR,並讓MSC/VLR刪除老的鑑權元組;同樣,HLR/AUC也要在取消防盜功能時,將根據鑑權密鑰產生的鑑權五元組發送給MSC/VLR,並讓MSC/VLR刪除老的鑑權元組。要實現這些功能,顯然需要增加終端到HLR/AUC的協議,以及增加HLR/AUC到MSC/VLR的協議。
還有一種情況,終端採用密鑰託管HLR/AUC的方式來實現鎖網功能,終端初次運行時,需要告訴網絡終端是一個鎖網手機,要求網絡採用終端的密鑰替代用戶卡的鑑權密鑰來進行鑑權,這種情況下,終端向HLR/AUC傳送鎖網手機信息,以及HLR/AUC根據得到該信息後,獲取對應終端的初始密鑰,並根據初始密鑰產生新鑑權元組,將新鑑權元組發送給MSC/VLR,由MSC/VLR根據新鑑權元組來進行鑑權,這個過程,也需要增加手機到HLR/AUC以及HLR/AUC到MSC/VLR的協議。
上述各種情況,增加協議都將導致對HLR/AUC和MSC/VLR的大量更改,因此,實現成本較高。另外,上述終端向HLR/AUC傳送命令時還存在假終端對HLR/AUC採取消息重放的攻擊。如何在不增加現有通信協議、信令資源和運營成本的基礎上,方便地解決終端到HLR/AUC/AUC,以及HLR/AUC到MSC/VLR的信息傳遞是一個值得解決的問題。
發明內容
有鑑於此,本發明要解決技術問題是提供一種同步SQN的處理方法,通過該方法方便安全地實現終端向HLR/AUC傳送信息以及HLR/AUC處理該信息後向MSC/VLR做出不同的反饋。特別地,在終端與網絡建立連接之前,例如在鑑權的過程中,向HLR/AUC傳送有效信息以及HLR/AUC向MSC/VLR做出相應的反饋。
本發明提供的解決上述問題的技術方案為一種同步SQN的處理方法,MSC/VLR在對終端進行鑑權時,將接收自HLR/AUC的鑑權五元組中的相應鑑權參數通過鑑權請求消息發送給終端,終端根據自己的鑑權密鑰KI和鑑權序列號SQNMS對網絡進行鑑權,所述方法包括以下步驟a.終端對網絡鑑權通過後,終端用約定的特定值代替SQNMS來產生再同步標記AUTS,對網絡發送再同步請求命令且附上所述再同步標記AUTS;b.網絡側HLR/AUC接收到所述再同步請求命令,執行判斷所述再同步標記AUTS是否合法,以及判斷所述再同步標記AUTS中的SQNMS是否為所述約定的特定值的操作;HLR/AUC根據不同判斷結果向MSC/VLR返回包括不同內容信息的同步處理結果消息,並在判斷所述再同步標記AUTS合法且再同步標記AUTS中的SQNMS為所述約定的特定值時,執行所述約定的特定值對應的操作;c.MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,根據同步處理結果消息中包含的不同內容信息執行相應的處理操作。
根據本發明的優選實施方案,其中,所述MSC/VLR在對終端進行鑑權之前進一步包括終端對網絡側發送可引起鑑權流程的命令或請求,所述命令或請求可以是位置更新請求或業務請求。
其中,所述鑑權五元組包括隨機數RAND、期望響應XRES、加密密鑰CK、完整性密鑰IK和鑑權標記AUTN;所述鑑權標記AUTN包括鑑權序列號SQNHE、鑑權管理域AMF和消息鑑權編碼MAC-A;所述相應鑑權參數包括隨機數RAND和鑑權標記AUTN。
優選地,步驟a中,終端對網絡鑑權通過後,進一步包括根據所述AUTN中的SQNHE更新自己的SQNMS。
優選地,所述終端對網絡鑑權通過是指終端根據自己的鑑權密鑰KI和接收的RAND對接收的AUTN進行一致性判斷通過,且根據自己的SQNMS判斷AUTN中的SQNHE在可接受範圍內。
優選地,步驟a還包括終端根據自己的鑑權密鑰KI和接收的RAND對接收的AUTN進行一致性判斷通過,且根據自己的SQNMS判斷AUTN中的SQNHE不屬於可接受範圍內時,直接根據SQNMS產生再同步標記AUTS,對網絡發送再同步請求命令且附上所述再同步標記AUTS。
優選地,步驟a中,終端直接根據SQNMS來產生再同步標記AUTS是指終端直接根據自己的SQNMS、鑑權密鑰KI和接收到的RAND以及AUTN中的AMF進行計算產生再同步標記AUTS。
優選地,步驟a中,終端用約定的特定值代替SQNMS來產生再同步標記AUTS是指終端用約定的特定值代替SQNMS來根據自己的鑑權密鑰KI、接收到的RAND以及AUTN中的AMF進行計算產生再同步標記AUTS。
優選地,所述步驟b中HLR/AUC在判斷所述再同步標記AUTS合法且再同步標記AUTS中的SQNMS不是所述約定的特定值時,根據SQNMS更新SQNHE。
優選地,所述步驟b進一步包括所述HLR/AUC判斷所述AUTS是否合法,如果非法,則向MSC/VLR返回包括非法同步信息的同步處理結果消息;如果合法,則HLR/AUC判斷所述AUTS中的SQNMS是否為所述約定的特定值,如果是,則執行所述特定值對應的操作,並向MSC/VLR返回包括特殊同步信息的同步處理結果信息,否則,根據SQNMS更新SQNHE,並重新產生鑑權元組,向MSC/VLR返回包括新鑑權元組且需要重新鑑權信息的同步處理結果信息。
優選地,所述特殊同步處理信息可以是用於指示以下內容中的一個或多個對終端鑑權通過,新產生的鑑權元組,新鑑權元組是否是用於鑑權,特定值所指示的同步類型信息,以及是否需要重新對終端鑑權。
優選地,所述步驟c進一步包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,判斷同步處理結果消息中是否包含了非法同步信息,如果是,則結束處理流程;否則,MSC/VLR判斷同步處理結果消息中是否包含了新鑑權元組信息如果包含了新鑑權元組信息,則刪除舊鑑權,並進一步判斷同步處理結果消息中是否包含了需要重新對終端鑑權信息,如果需要重新鑑權則用新鑑權元組對終端重新發起鑑權,否則,保存新鑑權元組以用於後續鑑權,判斷出對終端鑑權通過並進行相應的處理;如果不包含所述新鑑權元租信息,則MSC/VLR直接判斷出對終端鑑權通過,並根據包含的相應的特殊同步處理信息進行相應的處理。
優選地,所述需要重新對終端鑑權信息是通過對HLR/AUC返回給MSC/VLR的帶有鑑權元組的同步處理結果消息進行擴展來攜帶給MSC/VLR的。
優選地,所述相應的特殊同步處理信息是通過對HLR/AUC返回給MSC/VLR的非法同步處理結果消息進行擴展來攜帶給MSC/VLR的。
優選地,所述相應的特殊同步處理信息可以是同步用於終端和HLR/AUC協商防盜密鑰並設置防盜功能,可以是同步用於終端和HLR/AUC協商取消防盜功能,可以是同步用於終端向HLR/AUC傳輸特殊信息,所述特殊信息可以是終端是GSM/WCDMA雙模終端,終端支持GPS定位功能,終端支持自動將呼叫轉移到固定網絡功能,終端向HLR/AUC返回特殊操作執行結果信息。
優選地,所述約定的特定值是指約定某一範圍內的值或某個或多個具體值。
優選地,所述執行約定內容可以是執行密鑰更新、執行鑑權算法更新、執行防盜驗證、取消防盜驗證、獲得相關信息和返回特殊操作執行結果信息中一個或多個。
本發明提供的解決上述問題的另一技術方案為提供一種MSC/VLR處理HLR/AUC返回的同步處理結果消息的方法,所述方法包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,根據同步處理結果消息中包含的不同內容信息執行相應的處理操作。
優選地,所述方法進一步包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,判斷同步處理結果消息中是否包含了非法同步信息,如果是,則結束處理流程;否則,MSC/VLR判斷同步處理結果消息中是否包含了新鑑權元組信息如果包含了新鑑權元組信息,則刪除舊鑑權,並判斷同步處理結果消息中是否包含了需要重新對終端鑑權信息,如果需要重新鑑權,則用新鑑權元組對終端重新發起鑑權,否則,保存新鑑權元組以用於後續鑑權,判斷出對終端鑑權通過並進行相應的處理;如果不包含新鑑權元組信息,則MSC/VLR直接判斷出對終端鑑權通過,並根據包含的相應的特殊同步處理信息進行相應的處理。
優選地,所述需要重新對終端鑑權信息是通過對HLR/AUC返回給MSC/VLR的帶有鑑權元組的同步處理結果消息進行擴展來攜帶給MSC/VLR的。
21.根據權利要求19所述的方法,其特徵在於,所述相應的特殊同步處理信息是通過對HLR/AUC返回給MSC/VLR的非法同步處理結果消息進行擴展來攜帶給MSC/VLR的。
圖1是本發明的具體實施方式
的流程圖;圖2是本發明的具體實施方式
的第一實施例的流程圖;圖3是本發明的具體實施方式
的第二實施例的流程圖;圖4是本發明的具體實施方式
的第三實施例的流程圖;圖5是本發明MSC/VLR綜合考慮各種可能的特殊同步流程時,處理HLR/AUC發送的同步處理結果消息的流程圖。
具體實施例方式
本發明同步SQN的處理方法通過對SQN取值空間的劃分,使得可以利用同步處理流程完成終端向網絡上傳特殊命令的操作以及HLR/AUC執行相應操作後對MSC/VLR進行適應性反饋,並通過上傳的特殊命令和對MSC/VLR的適應性反饋來完成一些特殊功能。例如,終端向HLR/AUC傳送更新密鑰信息和MSC/VLR進行相應的鑑權元組的處理,等等。該方案可以保證終端到HLR/AUC和HLR/AUC到MSC/VLR的流程的完整性。
當終端需要向網絡側傳送例如需要更新鑑權密鑰等的特殊信息時,可以利用現有的鑑權流程,通過擴展改造其中的同步處理流程,即在終端對網絡側鑑權通過,也即終端根據自己保存的KI對AUTN的一致性驗證通過並且AUTN中的SQNHE在可接受範圍內的情況下,也產生再同步標記和發送再同步請求命令,並利用終端向網絡側發送的再同步請求命令和所附的再同步標記AUTS中的SQNMS來向HLR/AUC傳遞例如更新密鑰的特殊信息。本發明中終端對網絡側鑑權通過後,用約定的特定值代替SQNMS,例如用128代替SQNMS來產生再同步標記AUTS,向網絡側發送同步請求命令並附上該再同步標記,HLR/AUC接收到所述同步請求命令時,判斷AUTS是否合法,如果不合法,則向MSC/VLR返回包括非法同步信息的同步處理結果消息;如果判斷出AUTS合法,則判斷AUTS中SQNMS是否為約定的特定值128,若是,則執行約定的內容,即執行例如密鑰更新的操作,並產生新的鑑權元組發送給MSC/VLR;否則按正常同步處理流程處理,即根據SQNMS更新SQNHE並作後續處理。相應地,MSC/VLR在接收到HLR/AUC的同步處理結果信息後,根據不同的處理結果判斷對終端鑑權是否通過、同步是否合法、是否取得新的鑑權元組以及是否需要重新對終端鑑權等等。本發明的方法充分利用了現有鑑權參數方便地向HLR/AUC傳遞信息,以及HLR/AUC根據相應信息做出處理後,對MSC/VLR進行的不同反饋、MSC/VLR針對不同反饋做相應的處理,本方法在豐富了同步處理流程的功能的同時,又由於HLR/AUC處理再同步請求命令時對AUTS進行了合法性驗證,因此提高了終端向網絡側傳遞信息的安全性和完整性。
本發明提供的同步SQN流程,不僅應用於終端向HLR/AUC傳送密鑰更新消息,還可以向HLR/AUC傳送終端的能力支持,比如終端是否支持GPS定位,是否支持自動呼叫轉移的藍牙功能,等等。
下面結合附圖對本發明的具體實施方式
進行詳細的說明請參閱圖1,圖1為本發明具體實施方式
的流程圖。
在步驟101中,終端向網絡側發起位置更新請求。
本步驟也可以是向網絡側發起業務請求。實際當中可以是終端發送的任何可以引起網絡側對終端進行鑑權的消息。
步驟102,網絡側MSC/VLR接收到該位置更新請求後將產生的鑑權元組中的相應鑑權參數發送給終端。
所述鑑權元組可以包括隨機數RAND、期望響應XRES、加密密鑰CK、完整性密鑰IK和鑑權標記AUTN(Authentication Token)。
所述相應鑑權參數包括RAND和AUTN。
產生鑑權元組時,HLR/AUC用隨機數發生器產生的RAND和自身保存的鑑權密鑰KI分別計算出XRES、CK、IK。還根據RAND、KI、序列號SQNHE、鑑權管理域AMF產生AUTN。
所述鑑權標記AUTN長16位元組,包括以下內容1)SQNHE^AK,也即用AK加密了的SQNHE,其中序列號SQNHE與匿名密鑰AK分別長6位元組,SQNHE指保存在網絡側的SQN,以區別於保存在終端的SQNMS;當需要對SQNHE進行加密時,HLR/AUC根據RAND和KI產生AK,使用AK對SQNHE作異或運算,從而加密SQNHE;當不需要對SQNHE進行加密時,AK=0;2)鑑權管理域AMF長2位元組。3)消息鑑權編碼MAC-A長8位元組;MAC-A用於驗證RAND、SQNHE、AMF的數據完整性,用於終端對HLR/AUC進行鑑權。HLR/AUC根據RAND、SQNHE、KI和AMF計算出AUTN中的消息鑑權編碼MAC-A。
這樣,由RAND、AUTN、XRES、CK、IK等組成了鑑權五元組。
HLR/AUC產生了鑑權五元組後將相應的國際移動用戶識別碼IMSI和鑑權五元組RAND、CK、IK、XRES和AUTN發送給MSC/VLR。MSC/VLR為電路域設備,對於分組域的網絡,對應的設備可以為SGSN。鑑權時,網絡側的MSC/VLR將接收自HLR/AUC的鑑權元組中的隨機數RAND和鑑權標記AUTN傳送給終端MS。
步驟103,終端MS接收到MSC/VLR發送的相應鑑權參數即隨機數RAND和鑑權標記AUTN並判斷出對網絡側鑑權通過後,用約定的特定值代替SQNMS產生再同步標記AUTS,向網絡發起再同步請求命令,並附上再同步標記AUTS。這裡,向網絡發起再同步請求命令,並附上再同步標記AUTS,也即,向網絡側發送同步失敗消息,消息中包含了AUTS。
所述再同步標記AUTS包括以下內容1)SQNMS^AK,也即用AK加密了的SQNMS,其中序列號SQNMS與匿名密鑰AK分別長6位元組,SQNMS指保存在終端側的SQN,以區別於保存在網絡側的SQNHE;當需要對SQNMS進行加密時,終端根據RAND和KI產生AK,使用AK對SQNMS作異或運算,從而加密SQNMS;當不需要對SQNMS進行加密時,AK=0;2)消息鑑權編碼MAC-S長8位元組;MAC-S用於驗證RAND、SQNMS的數據完整性,也用於HLR/AUC對終端進行鑑權,也即,用於HLR/AUC驗證AUTS的合法性。一般的,終端根據自己的SQNMS、KI和接收到的RAND以及AMF等計算得到MAC-S,再根據SQNMS、AK和MAC-S產生再同步標記AUTS。
具體地說,終端根據接收到的RAND與自身保存的鑑權密鑰KI和接收到的AUTN中的SQNHE以及AMF採用與HLR/AUC計算AUTN中MAC-A一致的算法計算出MAC-A,然後進行一致性驗證,即,比較自己計算得到的MAC-A與接收到的AUTN中的MAC-A是否一致,例如是否相同,若不一致,則向MSC/VLR返回鑑權失敗信息;若一致則進一步判斷SQNHE是否屬於可接受的範圍若屬於,則終端判斷出對網絡側的鑑權通過;若判斷出SQNHE不屬於可接受範圍,則根據SQNMS產生再同步標記AUTS,即,根據SQNMS、KI和接收到的RAND以及AMF等計算得到MAC-S,再根據SQNMS、AK和MAC-S產生再同步標記AUTS,即用AK對SQNMS進行加密,將密文和MAC-S組合來產生AUTS。終端產生了AUTS後,對網絡側MSC/VLR返回再同步請求命令或同步失敗(Synchronisation failure)消息,同時附上產生的再同步標記AUTS。
終端對網絡側鑑權通過後,用約定的特定值代替SQNMS來根據自己的KI和接收到的RAND以及AMF等計算得到MAC-S,再根據該特定值代替SQNMS來和AK以及MAC-S產生再同步標記AUTS,即用AK對該特定值進行加密,將密文和MAC-S組合來產生AUTS。終端產生了AUTS後向網絡側發送再同步請求命令並附上所述再同步標記AUTS,或者向網絡側發送同步失敗消息,並在該消息中包含AUTS。
關於具體產生AUTS過程,以及產生時使用的算法還可以參照3GPP相關規範,在此不再贅述。
步驟104,MSC/VLR接收到再同步請求命令後,將對應本次鑑權的五元組中的RAND和AUTS發送給HLR/AUC;步驟105,HLR/AUC接收到再同步請求命令後,對同步消息進行合法性判斷,即HLR/AUC先解析出SQNMS,並根據自己保存的KI、AMF值、SQNMS和接收到的同步消息中的RAND進行計算,得到一個計算結果,比較自己計算得到的MAC-S和同步消息中AUTS中的MAC-S是否一致,如果一致,則判斷同步消息合法並執行步驟107,否則,判斷同步消息非法並執行步驟106。
所述解析出SQNMS是指當SQNMS採用了加密模式,則HLR/AUC先根據KI和RAND計算出AK,用AK從AUTS中解密出SQNMS明文;當SQNMS採用了明文模式,即AK值設置為0的情況下,HLR/AUC從AUTS中直接得到SQNMS明文。可以參照3GPP相關規範。
步驟106,HLR/AUC向MSC/VLR返回同步處理結果消息,消息中包括非法同步信息。然後,流程進入步驟110。
步驟107,HLR/AUC判斷SQNMS是否為約定的特定值時,如果不是,則執行步驟108;否則執行步驟109。
步驟108;根據SQNMS更新SQNHE,並重新產生鑑權元組,並向MSC/VLR返回同步處理結果消息,消息中包括新產生的鑑權元組。然後,流程進入步驟110。
步驟109;根據SQNMS值執行對應約定的內容,也即執行對應操作,並向MSC/VLR返回同步處理結果消息,消息中包括特殊同步信息;然後,流程進入步驟110。
例如,特殊同步信息可以是用於協商執行防盜驗證的同步,以告訴MSC/VLR,終端同步不是SQNMS與SQNHE不一致引起的,而是終端需要向網絡側傳送協商執行防盜驗證相應的信息。
步驟110,MSC/VLR對接收到的HLR/AUC的同步處理結果消息進行處理。也即,當消息中包括非法同步信息時,MSC/VLR結束流程;當消息中包括鑑權元組時,用新鑑權元組對終端重新鑑權;當消息中包括特殊同步信息時,MSC/VLR判斷出對終端鑑權通過。
在步驟110中,MSC/VLR判斷出對終端鑑權通過後,可以進一步創建用戶信息,相關處理流程和MSC/VLR接收到鑑權響應並判斷終端產生的鑑權響應和對應本次鑑權的鑑權五元組中的期望響應一致時進行的後續處理一致。
同步處理結果消息中還可以進一步包括是否需要重新對終端進行鑑權的信息。該信息可以通過多種方式來表達例如,可以對同步處理結果消息進行分類,使用分類碼來區分是否需要重新對終端進行鑑權;也可以在消息中擴展一個信元來表達是否需要重新對終端進行鑑權。當所有情況的特殊同步消息中都不包括新鑑權元組時,也即,僅有因SQNHE與SQNMS不同步引起的同步流程中,HLR/AUC傳送給MSC/VLR的同步處理結果信息中才有新鑑權元組時,MSC/VLR可以根據新鑑權元組得知需要重新鑑權,因此,可以不需要特別在同步處理結果消息中包括是否需要重新鑑權的信息,或者說,這種情況下,新鑑權元組本身就隱含了需要重新鑑權的信息。
當然,對於當同步處理結果消息中包括了非法同步信息時,該消息中就沒有必然包括否需要重新對終端進行鑑權的信息了。
實際當中,還可以在不需要重新對終端進行鑑權時,在消息中包括不需要對終端進行鑑權的信息;而在需要重新對終端進行鑑權時,在消息中不包括不需要對終端進行鑑權的信息,而不是在消息中包括需要對終端進行鑑權的信息。反之,還可以在需要重新對終端進行鑑權時,在消息中包括需要對終端進行鑑權的信息;而在不需要重新對終端進行鑑權時,在消息中不包括需要對終端進行鑑權的信息,而不是在消息中包括不需要對終端進行鑑權的信息。
終端和HLR/AUC預先約定HLR/AUC在接收到終端的再同步請求命令後,如果判斷出SQNMS為約定的特定值時,則根據該特定值執行對應的約定內容,也即執行對應操作。所述執行對應約定的內容可以是執行密鑰更新、執行鑑權算法更新、執行防盜驗證、取消防盜驗證,等等。
上述步驟105及其以後步驟,HLR/AUC接收到再同步請求命令後,對AUTS合法性進行判斷的步驟也可以在放在判斷再同步標記AUTS中的SQNMS是否為約定的特定值的步驟之後進行。具體如下一、HLR/AUC接收到再同步請求命令後,HLR/AUC判斷出SQNMS為所述約定的特定值時,先根據RAND、KI、SQMMS和AMF等採用與終端一致的算法計算得出MAC-S,再將之與接收到的AUTS中的MAC-S比較,若一致,判斷出AUTS合法,否則,判斷出AUTS非法。HLR/AUC判斷AUTS非法時,向MSC/VLR返回同步處理結果的消息,消息中包括了同步失敗信息。HLR/AUC判斷AUTS合法時,執行所述約定的內容,而後向MSC/VLR返回同步處理結果消息,消息中包括了特殊同步信息。
二、HLR/AUC接收到再同步請求命令後,HLR/AUC判斷出SQNMS不是所述約定的特定值時,按正常同步流程處理,即判斷AUTS合法時,根據SQNMS更新SQNHE,並產生新的鑑權元組,向MSC/VLR返回同步處理結果消息,消息中包括新的鑑權元組和重新鑑權信息;判斷AUTS非法時,向MSC/VLR返回同步處理結果消息,消息中包括非法同步信息。
MSC/VLR接收到同步處理結果消息後,仍然按照上述步驟110所述進行相應處理。關於正常同步處理流程可以參照3GPP規範。
為了更好地展現本發明的思想和意義,以下將通過幾個具體實施例來對本發明進行詳細闡述。
請參閱圖2,圖2所示為本發明具體實施方式
的第一實施例,本實施是使用本發明的同步處理方法進行鑑權密鑰更新的流程,在本實施例中,終端和HLR/AUC協商對鑑權密鑰進行更新。這裡約定用特定值128表示需要更新鑑權密鑰,該特定值對應的約定內容,也即網絡側識別到該特定值時執行的內容為「產生新的鑑權密鑰以根據新的鑑權密鑰進行鑑權」。
在步驟201,終端向網絡發起位置更新請求;本步驟也可以是向網絡側發起業務請求。實際當中可以是終端發送的任何可以引起網絡側對終端進行鑑權的消息。
在步驟202,網絡側MSC/VLR接收到所述請求後,對終端進行鑑權,並通過對終端發送鑑權請求,將對應該終端的當前鑑權五元組中的鑑權參數RAND和AUTN發送給終端。
具體地說,HLR/AUC根據隨機數發生器產生隨機數RAND,根據RAND和鑑權密鑰KI分別計算出期望響應XRES、加密密鑰CK、完整性密鑰IK。根據隨機數RAND、序列號SQNHE、鑑權密鑰KI和AMF計算產生出消息鑑權編碼MAC-A,再根據MAC-A、SQNHE、匿名密鑰AK及鑑權管理域AMF產生鑑權標記AUTN。這裡,當需要對SQNHE進行加密時,HLR/AUC根據RAND和KI產生AK,使用AK對SQNHE作異或運算,從而加密SQNHE;當不需要對SQNHE進行加密時,AK=0;然後HLR/AUC將RAND、AUTN、XRES、CK和IK組成的五元組和對應的IMSI一起發送給MSC/VLR。HLR/AUC是在接收到MSC/VLR的請求鑑權五元組的請求後才將產生的鑑權元組發送給MSC/VLR的。更加詳細的細節請參見3GPP相關協議規定,由於是公知技術,這裡不再贅述。
鑑權時,MSC/VLR向終端發起鑑權請求,並同時將五元組中的鑑權參數RAND和AUTN發送給終端。
步驟203,終端接收到鑑權請求時,先根據自己保存的KI對接收的RAND和AUTN進行一致性驗證,也即先根據自己保存的KI和所述RAND對AUTN進行一致性驗證,若驗證通過,則執行步驟205,否則,執行步驟204。
具體地說,終端接收到來自MSC/VLR的RAND和AUTN時,根據自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF採用與HLR/AUC計算AUTN中MAC-A一致的算法生成MAC-A,然後終端對自身生成的MAC-A與AUTN中的MAC-A進行比較,若相等則判斷出對RAND和AUTN的一致性驗證通過,否則,判斷出對RAND和AUTN的一致性驗證不通過。
步驟204中,終端向網絡返回「鑑權失敗」的信息,然後結束本次協商鑑權密鑰更新的流程。
步驟205,終端判斷SQNHE是否在可接受範圍內,如果是,則判斷出對網絡鑑權通過,終端根據SQNHE更新保存的SQNMS,根據RAND和KI產生新的鑑權密鑰,並執行步驟206;否則,判斷出同步失敗,並執行步驟207。
步驟206,終端用約定的特定值128代替SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上再同步標記AUTS。具體地說,終端用特定值128代替SQNMS來根據自己保存的KI和接收到的RAND以及AMF等計算得到MAC-S,再用AK對特定值128進行加密,將密文和MAC-S組合來產生AUTS。終端向網絡側發送再同步請求命令並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟208。
步驟207,終端直接根據SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上AUTS。具體地說,終端根據自己的KI、SQNMS和接收到的RAND以及AMF等計算得到MAC-S,再根據SQNMS、AK和MAC-S產生AUTS,然後對網絡側發起再同步請求命令,並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟208。
步驟208,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,將消息中的AUTS和對應五元組中的RAND一併發送給HLR/AUC。然後執行步驟209。
實際當中,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,向HLR/AUC請求新鑑權元組,請求消息中包括了接收自終端的AUTS和對應鑑權五元組中的RAND。
步驟209,HLR/AUC接收到MSC/VLR發送的AUTS和RAND時,根據AMF、保存的KI、接收到的RAND和AUTS中的SQNMS等採用與終端一致的算法計算得到MAC-S,然後比較自身產生的MAC-S與接收到的AUTS中的MAC-S是否一致,若一致,則認為AUTS合法,然後執行步驟210;否則,認為AUTS非法,然後執行步驟213;需要說明的是,如果AUTS中SQNMS根據AK進行了加密,HLR/AUC可以根據RAND和KI產生AK來解密SQNMS密文,得到SQNMS明文。由於這是3GPP協議規範內容,因此,這裡不對其進行詳細敘述。
步驟210,HLR/AUC判斷AUTS中的SQNMS是否為約定的特定值128。如果為特定值128則執行步驟211;如果不為特定值128則執行步驟212;步驟211,HLR/AUC執行特定值128對應的約定內容,即執行鑑權密鑰更新動作,也就是根據RAND和KI採用與終端一致的算法產生新的鑑權密鑰,然後使用新鑑權密鑰產生新鑑權元組,向MSC/VLR發送同步處理結果消息,消息中包括了特殊同步消息,該特殊同步消息為新鑑權元組和不需要重新對終端進行鑑權。然後執行步驟214。
本實施例中通過擴展信元來向MSC/VLR表示是否需要重新對終端進行鑑權的信息,具體可以參見3GPP有關鑑權的相關協議處理規定。
步驟212,HLR/AUC根據SQNMS的值更新SQNHE,產生新鑑權元組,向MSC/VLR發送同步處理結果消息,消息中包括了新鑑權元組和需要重新對終端進行鑑權的信息。然後執行步驟214。
本實施例中通過擴展信元來向MSC/VLR表示是否需要重新對終端進行鑑權的信息,具體可以參見3GPP有關鑑權的相關協議處理規定。
步驟213,向MSC/VLR發送同步處理結果消息,消息中包括了非法同步信息。然後執行步驟214。
步驟214,MSC/VLR判斷接收到的同步處理結果消息中是否包括非法同步信息,如果不包括非法同步信息則執行步驟215;否則,執行步驟218。
步驟215,MSC/VLR刪除舊鑑權元組,保存該新鑑權元組,並通過相應的擴展信元來判斷同步處理結果消息中是否包括需要重新對終端鑑權的信息,如果包括,則執行步驟216,否則執行步驟217。
步驟216,使用新鑑權元組重新發起對終端鑑權,然後結束流程。
步驟217,判斷出對終端鑑權通過,然後結束流程。
步驟218,MSC/VLR結束相關處理,然後結束整個流程。
MSC/VLR判斷出對終端鑑權通過時,可以進行後續的處理,比如對於位置更新請求引起的鑑權流程來說,MSC/VLR檢查是否已經創建了用戶信息,如果沒有,則從HLR/AUC請求用戶的相關籤約信息,等等。相關處理流程和MSC/VLR接收到鑑權響應並判斷終端產生的鑑權響應和對應本次鑑權的鑑權五元組中的期望響應一致時進行的後續處理一致。
當然,本實施例中,HLR/AUC接收到MSC/VLR發送的再同步請求命令時,也可以先判斷AUTS中的SQNMS是否為約定的特定值,後判斷AUTS的合法性。
請參閱圖3,圖3所示為本發明具體實施方式
的第二實施例,本實施是使用本發明同步SQN的處理方法實現關於密鑰託管HLR/AUC的終端防盜方法中終端啟動防盜功能的流程,在本實施例中,終端和HLR/AUC進行防盜密鑰的協商。這裡約定用特定值1023表示終端需要和HLR/AUC協商防盜密鑰以及啟動防盜驗證,該特定值對應的約定內容,也即網絡側識別到該特定值1023時執行的內容為「產生防盜密鑰,以在終端請求對網絡進行鑑權時,根據該防盜密鑰產生鑑權信息並向終端返回該鑑權信息」。
關於密鑰託管HLR/AUC的防盜方法,可以參閱申請號為「PCT/CN2004/001325」的專利申請。
在步驟301,終端向網絡發起位置更新請求;在步驟302,網絡側MSC/VLR接收到所述請求後,對終端進行鑑權,並通過對終端發送鑑權請求,將對應該終端的當前鑑權五元組中的鑑權參數RAND和AUTN發送給終端。
步驟303,終端接收到鑑權請求時,先根據自己保存的KI對接收的RAND和AUTN進行一致性驗證,也即先根據自己保存的KI和所述RAND對所述AUTN進行一致性驗證,若驗證通過,則執行步驟305,否則,執行步驟304。
步驟304中,終端向網絡返回「鑑權失敗」的信息,然後結束本次協商鑑權密鑰更新的流程。
步驟305,終端判斷SQNHE是否在可接受範圍內,如果是,則判斷出對網絡鑑權通過,終端根據SQNHE更新保存的SQNMS,並根據防盜密鑰產生的規則產生一個新的防盜密鑰並保存該防盜密鑰用於終端對終端自己的合法性驗證。比如,防盜密鑰的產生規則可以是根據所述RAND、IMSI和KI等進行摘要運算,得到一個128bit的摘要結果,將該摘要結果作為新防盜密鑰。終端產生新防盜密鑰後將該新防盜密鑰保存於終端的安全模塊中,並執行步驟306;終端判斷SQNHE不在可接受範圍內時,判斷出同步失敗,並執行步驟307。
步驟306,終端用約定的特定值1023代替SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上再同步標記AUTS。具體地說,終端用特定值1023代替SQNMS來根據自己保存的KI和接收到的RAND以及AMF等計算得到MAC-S,再用AK對特定值1023進行加密,將密文和MAC-S組合來產生AUTS。終端向網絡側發送再同步請求命令並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟308。
步驟307,終端直接根據SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上AUTS。具體地說,終端根據自己的KI、SQNMS和接收到的RAND以及AMF等計算得到MAC-S,再根據SQNMS、AK和MAC-S產生AUTS,然後對網絡側發起再同步請求命令,並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟308。
步驟308,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,將消息中的AUTS和對應五元組中的RAND一併發送給HLR/AUC。
實際當中,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,向HLR/AUC請求新鑑權元組,請求消息中包括了接收自終端的AUTS和對應鑑權五元組中的RAND。
步驟309,HLR/AUC接收到MSC/VLR發送的AUTS和RAND時,根據AMF、保存的KI、接收到的RAND和AUTS中的SQNMS等採用與終端一致的算法計算得到MAC-S,然後比較自身產生的MAC-S與接收到的AUTS中的MAC-S是否一致,若一致,則認為AUTS合法,然後執行步驟310;否則,認為AUTS非法,然後執行步驟313;步驟310,HLR/AUC判斷AUTS中的SQNMS是否為約定的特定值1023。如果為特定值1023則執行步驟311;如果不為特定值1023則執行步驟312;步驟311,HLR/AUC執行特定值1023對應的約定內容,即根據防盜密鑰產生的規則產生一個新的防盜密鑰並保存該防盜密鑰用於終端對終端自己的合法性驗證。比如,防盜密鑰的產生規則可以是根據RAND、IMSI和KI等進行摘要運算,得到一個128bit的摘要結果,將該摘要結果作為新防盜密鑰。然後向MSC/VLR發送同步處理結果消息,消息中包括了特殊同步信息,該特殊同步信息為同步流程因協商防盜密鑰引起。然後執行步驟314。
本實施例中,HLR/AUC通過擴展信元來向MSC/VLR表示同步流程因協商防盜密鑰引起的信息,具體可以參見3GPP有關鑑權的相關協議處理規定。
步驟312,HLR/AUC根據SQNMS的值更新SQNHE,產生新鑑權元組,向MSC/VLR發送同步處理結果消息,消息中包括了新鑑權元組。然後執行步驟314;實際當中,可以通過只傳送一個新鑑權元組來向MSC/VLR表示需要對終端重新進行鑑權。
步驟313,向MSC/VLR發送同步處理結果消息,消息中包括了非法同步信息。然後執行步驟314。
步驟314,MSC/VLR判斷同步處理結果消息中是否包含了非法同步信息,如果不包括則執行步驟315;否則,執行步驟318。
步驟315,MSC/VLR判斷消息中是否包括了新鑑權元組,如果是,在執行步驟316,否則,執行步驟317。
步驟316,MSC/VLR刪除舊的鑑權元組,使用所述新鑑權元組重新發起對終端鑑權。然後結束流程。
步驟317,MSC/VLR判斷出對終端鑑權通過。然後結束流程。
步驟318,MSC/VLR結束相關處理。然後結束流程。
MSC/VLR判斷出對終端鑑權通過時,可以進行後續的處理,比如對於位置更新請求引起的鑑權流程來說,MSC/VLR檢查是否已經創建了用戶信息,如果沒有,則從HLR/AUC請求用戶的相關籤約信息,等等。相關處理流程和MSC/VLR接收到鑑權響應並判斷終端產生的鑑權響應和對應本次鑑權的鑑權五元組中的期望響應一致時進行的後續處理一致。
在一種密鑰長期託管鎖網中心LC,和臨時託管HLR/AUC的鎖網實現方法中,在移動終端中設置安全密鑰SKey;在網絡側鎖網中心LC中保存移動終端標識和預設安全密鑰SKey的對應關係以及對應的IMSI匹配碼,本發明用移動終端的國際移動臺標識IMEI來作為移動終端標識;移動終端開機後,如果判斷終端支持鎖網,且根據安全密鑰對網絡鑑權不通過時,需要和網絡側HLR/AUC協商,需要用安全密鑰SKey代替鑑權密鑰KI來產生鑑權元組,以用於終端和網絡側相互鑑權。終端和網絡側完成所述協商後,終端可以通過和網絡側的鑑權流程獲得根據安全密鑰SKEY產生的電子鑰匙,也即MSC/VLR鑑權時,發送給終端的鑑權參數RAND和AUTN,終端根據對該電子鑰匙進行的合法性判斷的結果來判斷移動終端是否被合法使用,從而滿足運營商對租機進行鎖網的要求。這裡,移動終端在和HLR/AUC進行上述協商時,如果HLR/AUC發現在移動終端用戶的籤約數據裡沒有對應該終端的SKey,HLR/AUC將根據該移動終端的國際行動裝置臺標識IMEI和移動用戶的IMSI號從鎖網中心LC中獲取對應該終端的SKey,保存該SKey,以用於代替鑑權密鑰KI產生鑑權五元組,也即,用SKey替代KI來產生鑑權元組,以用於終端對網絡鑑權。這樣,通過在LC中對每個IMEI,SKey對進行IMSI匹配碼限制,來限制該移動終端可以使用哪些用戶卡來連接網絡,從而達到對移動終端進行鎖網的目的。
請參閱圖4,圖4所示為本發明具體實施方式
的第三實施例,本實施展示了通過本發明的同步處理流程,終端和網絡側協商鎖網鑑權,即協商使用安全密鑰SKey替代鑑權密鑰KI產生鑑權元組,以用於移動終端和網絡相互鑑權,從而實現上述鎖網目的。在本實施例中,終端和HLR/AUC協商鎖網鑑權,也即HLR/AUC使用安全密鑰SKey代替鑑權密鑰KI來產生鑑權元組,以用於終端和網絡側相互鑑權。這裡約定用特定值63表示所述協商請求,該特定值對應的約定內容,也即網絡側HLR/AUC在處理再同步消息時識別到該特定值時執行的內容為獲得移動終端對應的安全密鑰SKey,並使用該SKey代替鑑權密鑰KI來產生鑑權五元組,同時,指示MSC/VLR利用新鑑權元組重新和終端進行鑑權。
執行流程之前,首先在移動終端中設置安全密鑰SKey,鎖網鑑權序列號LCSQNMS,LCSQNMS初始值可以為1或一個隨機數;在網絡側鎖網中心LC中根據該移動終端IMEI保存對應的安全密鑰SKey,IMSI匹配碼,以及鎖網鑑權序列號LCSQNLC,LCSQNLC初始值可以為1或一個隨機數;在HLR/AUC中保存該移動終端用戶的籤約數據裡保存移動終端的IMEI信息,並設置LCSQNHE。可以在用戶租機並辦理籤約手續時將該IMEI信息保存在用戶的籤約數據中,也可以移動終端開機後,通過簡訊息或者USSD業務操作將移動終端的IMEI傳送給HLR/AUC保存。
如下所示處理流程在步驟401,終端開機後,向網絡發起位置更新請求;在步驟402,網絡側MSC/VLR接收到所述請求後,對終端進行鑑權,並通過對終端發送鑑權請求,將對應該終端的當前鑑權五元組中的鑑權參數RAND和AUTN發送給終端。
步驟403,終端接收到鑑權請求時,判斷是否支持鎖網,終端判斷是否支持鎖網可以這樣實現,預先在終端設置一是否鎖網的鎖網標記,終端根據所述標記判斷是否支持鎖網。如果不支持,則執行步驟404;否則,執行步驟405。
步驟404,結束本次協商鎖網鑑權流程,按卡鑑權流程處理,也即,按卡的正常鑑權流程處理,也即,判斷先根據自己保存的KI對接收的RAND和AUTN進行一致性驗證,也即先根據自己保存的KI和所述RAND對AUTN進行一致性驗證,若驗證不通過則向網絡返回鑑權失敗信息,否則,進一步判斷SQNHE是否在可接受範圍內,如果不是,則根據SQNMS產生同步標記AUTS,並向網絡返回再同步消息,消息中包括該AUTS。如果終端判斷出SQNHE在可接受範圍內,則產生鑑權響應,加密密鑰、完整性密鑰,並向網絡返回鑑權響應,網絡根據終端返回的鑑權響應判斷對終端鑑權是否通過,從而決定是否允許終端正常地接入網絡。
步驟405,終端先根據自己保存的SKey對接收的RAND和AUTN進行一致性驗證,也即根據自己保存的SKey和所述RAND對AUTN進行一致性驗證,若驗證通過,說明HLR/AUC處於終端鑑權狀態,然後執行步驟406,否則,執行步驟408。
具體地說,終端接收到來自MSC/VLR的RAND和AUTN時,根據自身保存的SKey、接收到的RAND和接收到的AUTN中的SQNHE以及AMF採用與HLR/AUC計算AUTN中MAC-A一致的算法生成MAC-A,然後終端對自身生成的MAC-A與AUTN中的MAC-A進行比較,若相等則判斷出對RAND和AUTN的一致性驗證通過,否則,判斷出對RAND和AUTN的一致性驗證不通過。
所述終端鑑權狀態是指,HLR/AUC產生鑑權元組是,使用SKey替代KI,使用LCSQNHE代替SQNHE來進行,終端對網絡鑑權時,使用SKey來判斷RAND和AUTN的一致性,使用LCSQNMS來判斷AUTN中的SQNHE是否在可以接受的範圍內。
步驟406,結束本次協商鎖網鑑權流程,按終端鑑權流程處理,也即,按終端的正常鑑權流程處理。也即,終端根據LCSQNMS判斷AUTN中的SQNHE是否在可接受範圍內,如果是,則判斷出對網絡鑑權通過,並進入正常運行狀態,也即,終端判斷出對網絡鑑權通過後根據SQNHE更新保存的LCSQNMS,根據SKey產生鑑權響應、加密密鑰、完整性密鑰,並向網絡返回鑑權響應,網絡根據終端返回的鑑權響應判斷對終端鑑權是否通過,從而決定是否允許終端正常地接入網絡;如果終端根據LCSQNMS判斷AUTN中的SQNHE不在可接受範圍內,則判斷出同步失敗,即SQNHE與LCSQNMS不同步,終端直接根據SKey和LCSQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上該AUTS。具體地說,終端根據自己的SKey、LCSQNMS和接收到的RAND以及AMF等計算得到MAC-S,再根據LCSQNMS、AK和MAC-S產生AUTS,然後對網絡側發起再同步請求命令,並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。通過該再同步請求,使得HLR/AUC根據LCSQNMS更新LCSQNHE。HLR/AUC可以根據自己處於終端鑑權狀態得知同步目的是要更新LCSQNHE,而不是SQNHE。
步驟408,終端根據自己保存的KI對接收的RAND和AUTN進行一致性驗證,也即根據自己保存的KI和所述RAND對AUTN進行一致性驗證,若驗證通過,則說明HLR/AUC處於卡鑑權狀態,然後執行步驟410,否則,執行步驟409。
具體地說,終端接收到來自MSC/VLR的RAND和AUTN時,根據自身保存的KI、接收到的RAND和接收到的AUTN中的SQNHE以及AMF採用與HLR/AUC計算AUTN中MAC-A一致的算法生成MAC-A,然後終端對自身生成的MAC-A與AUTN中的MAC-A進行比較,若相等則判斷出對RAND和AUTN的一致性驗證通過,否則,判斷出對RAND和AUTN的一致性驗證不通過。
所述卡鑑權狀態是指,HLR/AUC產生鑑權元組是,使用KI,SQNHE來進行,終端對網絡鑑權時,使用KI來判斷RAND和AUTN的一致性,使用SQNMS來判斷AUTN中的SQNHE是否在可以接受的範圍內。
步驟409中,終端向網絡返回「鑑權失敗」的信息,然後結束本次協商鑑權密鑰更新的流程。
步驟410,終端判斷SQNHE是否在可接受範圍內,如果是,則判斷出對網絡鑑權通過,終端根據SQNHE更新保存的SQNMS,並執行步驟411;否則,判斷出SQNHE和SQNMS不同步,並執行步驟412。
步驟411,終端用約定的特定值63代替SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上再同步標記AUTS。具體地說,終端用特定值63代替SQNMS來根據自己保存的KI和接收到的RAND以及AMF等計算得到MAC-S,再用AK對特定值63進行加密,將密文和MAC-S組合來產生AUTS。終端向網絡側發送再同步請求命令並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟413。
步驟412,終端直接根據SQNMS產生再同步標記AUTS,對網絡發起再同步請求命令,並附上AUTS。具體地說,終端根據自己的KI、SQNMS和接收到的RAND以及AMF等計算得到MAC-S,再根據SQNMS、AK和MAC-S產生AUTS,然後對網絡側發起再同步請求命令,並附上該AUTS。也即,向MSC/VLR發送同步失敗消息,該同步失敗消息中包含了AUTS。然後執行步驟413。
步驟413,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,將消息中的AUTS和對應五元組中的RAND一併發送給HLR/AUC。然後執行步驟414。
實際當中,網絡側的MSC/VLR接收到終端發送的同步失敗消息時,向HLR/AUC請求新鑑權元組,請求消息中包括了接收自終端的AUTS和對應鑑權五元組中的RAND。
步驟414,HLR/AUC接收到MSC/VLR發送的AUTS和RAND時,根據AMF、保存的KI、接收到的RAND和AUTS中的SQNMS等採用與終端一致的算法計算得到MAC-S,然後比較自身產生的MAC-S與接收到的AUTS中的MAC-S是否一致,若一致,則認為AUTS合法,然後執行步驟415;否則,認為AUTS非法,執行步驟423;步驟415,HLR/AUC判斷AUTS中的SQNMS是否為約定的特定值63。如果不為特定值63則執行步驟416;如果為特定值63則執行步驟417;步驟416,HLR/AUC判斷處於卡鑑權狀態時,根據SQNMS的值更新SQNHE,根據KI,SQNHE產生新鑑權元組;HLR/AUC判斷處於終端鑑權狀態時,根據SQNMS,也即LCSQNMS的值更新LCSQNHE,根據SKey代替KI,根據LCSQNHE代替SQNHE產生新鑑權元組。當然,由於該步驟緊接著步驟415執行,因此,HLR/AUC是處於卡鑑權狀態的。然後向MSC/VLR發送同步處理結果消息,消息中包括了新鑑權元組的信息,然後執行步驟424。
步驟417,HLR/AUC執行特定值63對應的約定內容,即HLR/AUC首先檢查籤約數據中是否存在該移動終端的安全密鑰SKey,如果存在,則執行步0驟422,否則,執行步驟418。
步驟418,HLR/AUC從籤約數據中獲取該移動終端的IMEI,向鎖網中心LC請求該移動終端的安全密鑰SKey和LCSQNLC,消息中包括了該移動終端的IMEI和移動終端用戶的IMSI,執行步驟419。
步驟419,鎖網中心LC根據IMEI查找鎖網記錄,如果查找不到,說明終端沒有被納入本鎖網中心LC的管理,LC向HLR/AUC返回得不到SKey信息,然後執行步驟421,如果查找到該IMEI對應的SKey、LCSQNLC和IMSI匹配碼,則執行步驟420。
步驟420,向HLR/AUC返回IMSI匹配判斷信息,也即,LC判斷該移動終端用戶的IMSI是否匹配得到的IMSI匹配碼,如果不匹配,則向HLR/AUC返回不允許得到SKey信息,否則,向HLR/AUC返回得到的SKey和LCSQNLC。執行步驟421。
步驟421,HLR/AUC得到LC返回得消息後,判斷LC是否得到Skery,判斷出LC得不到SKey時,向MSC/VLR返回同步處理結果消息,消息中包括得不到終端的SKey信息,然後執行步驟425;判斷出LC不允許得到SKey時,向MSC/VLR返回同步處理結果消息,消息中包括不允許得到終端的SKey信息,然後執行步驟425;判斷出消息中包括了得到的SKey和LCSQNLC時,根據該移動終端用戶的IMSI保存該SKey,並再根據LCSQNLC更新LCSQNHE,或者,將該SKey保存在該移動終端用戶的籤約數據中,並將對應的LCSQNHE的值設置為LCSQNLC,然後執行步驟422。
步驟422,HLR/AUC將該用戶設置為終端鑑權狀態,並使用SKey代替KI,使用LCSQNHE代替SQNHE來產生新鑑權元組,向MSC/VLR發送同步處理結果消息,消息中包括了特殊同步消息,該特殊同步消息為新鑑權元組的信息。然後執行步驟424。
本實施例中HLR/AUC向MSC/VLR傳送各種同步處理結果消息時,可以通過擴展原有的協議消息來實現。比如,對於需要向MSC/VLR返回新鑑權元組的情況,通過擴展原來的執行同步成功的協議消息,即HLR/AUC判斷AUTS合法時產生新鑑權元組並向MSC/VLR發送新鑑權元組的協議協議消息;對於不需要向MSC/VLR發送新鑑權元組信息的情況,通過擴展原來的執行同步失敗的協議消息,即HLR/AUC判斷AUTS非法時向MSC/VLR發送同步消息非法信息的協議消息。具體可以參見3GPP有關鑑權的相關協議處理規定。
步驟423,向MSC/VLR發送同步處理結果消息,消息中包括了非法同步信息,然後執行步驟426。
步驟424,MSC/VLR判斷出同步處理結果消息中包括新鑑權元組時,刪除舊鑑權元組,並使用該新鑑權元組重新對終端進行鑑權;在步驟424,當MSC/VLR使用新鑑權元組對終端進行鑑權時,如果終端判斷自己先前剛剛執行過步驟411描述特定值為63的特殊同步時,說明本次鑑權根據的鑑權元組是HLR/AUC因為所述特殊同步,剛剛根據SKey產生的,因此,終端將通過自己的SKey對網絡進行鑑權,從而判斷自身是否被合法使用。此時,如果移動終端根據自己保存的SKey和接收自MSC/VLR的RAND對接收自MSC/VLR的AUTN進行的一致性驗證不通過,移動終端將判斷終端被非法使用。因為,這種情況說明保存在移動終端用戶的籤約數據裡的IMEI和該移動終端的IMEI不一致。移動終端可以先更新籤約數據裡對應的IMEI,而後在按照步驟408及其以後步驟來進行。
步驟425,MSC/VLR判斷終端合法,結束本次協商鎖網流程。MSC/VLR判斷出消息中包括得不到終端的SKey信息時,判斷對終端鑑權通過;判斷出消息中包括不允許得到終端的SKey信息時,也判斷對終端鑑權通過。當然,MSC/VLR還可以增對這兩種情況作不同的處理,比如將不同的原因值返回給終端由終端提示給用戶,這樣,將是更人性化的用戶界面。
當MSC/VLR判斷對終端鑑權通過時,從HLR/AUC獲取用戶信息,並插入用戶信息。這種情況下,終端無法對網絡進行鑑權,因為得不到MSC/VLR的相關鑑權信息,終端在一段預設的時間後將自動關機,或者進入不正常運行狀態,並提示用戶,終端被非法使用,從而達到鎖網目的。
步驟426,MSC/VLR判斷出終端不合法,結束本次協商鎖網流程。具體而言,MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,判斷出同步處理結果消息中包括非法同步信息時,說明移動終端上的用戶卡本身就不合法。
綜合上述各個實施例,考慮到各種同步處理流程可能同時被要求由HLR/AUC和MSC/VLR支持,因此,MSC/VLR在處理HLR/AUC發送的同步處理結果消息時,需要綜合考慮各種可能的特殊同步流程。請參閱圖5,圖5所示為本發明MSC/VLR綜合考慮各種可能的特殊同步流程時,處理HLR/AUC發送的同步處理結果消息的流程步驟501,MSC/VLR接收到HLR/AUC發送的同步處理消息後,判斷消息中是否包括非法同步消息,如果包括,則執行步驟507;否則,執行步驟502。
步驟502,MSC/VLR判斷消息中是否包括新鑑權元組,如果不包括,則執行步驟506;如果包括,則刪除舊鑑權元組,並執行步驟503;步驟503,MSC/VLR判斷是否需要重新對終端鑑權,如果需要,則執行步驟504;否則,執行步驟505。
步驟504,根據新鑑權元組對終端鑑權。
步驟505,保存新鑑權元組,以用於下一次鑑權。
步驟506,判斷出對終端鑑權通過,並作相應處理。
步驟507,MSC/VLR結束相關處理。
本發明所述的方法,不只可用於向網絡側傳送協商密鑰更新的請求信息以及終端需要和HLR/AUC協商防盜密鑰以及啟動防盜驗證功能,還可以向HLR/AUC傳送協商更新鑑權算法的請求信息,還可以向HLR/AUC傳送終端是否執行防盜驗證和取消防盜驗證信息,當然,也可以向HLR/AUC傳送終端是否為GSM/WCDMA雙模終端的信息等。
對於HLR/AUC發起協商密鑰更新的情況下,終端可以利用本發明方法向HLR/AUC返回密鑰更新操作是否執行成功的信息。此時,HLR/AUC向MSC/VLR傳送的信息是特殊同步信息,HLR/AUC因為此同步流程重新產生鑑權元組,MSC/VLR根據該消息判斷對終端鑑權通過,並創建用戶信息。
上述實約定將SQNMS=63表示為終端和HLR/AUC協商啟動鎖網鑑權,即HLR/AUC使用安全密鑰SKey代替鑑權密鑰KI來產生鑑權元組,以用於終端和網絡側相互鑑權,將SQNMS=128表示為終端向HLR/AUC傳送請求更新鑑權密鑰的信息,將SQNMS=1023表示為終端需要和HLR/AUC協商防盜密鑰以及啟動防盜驗證功能,實際當中,還可以約定將SQNMS=1024表示為終端需要和HLR/AUC協商取消防盜驗證,將SQNMS=15表示為終端向HLR/AUC傳送終端屬於鎖網手機的信息,將SQNMS=16表示為終端向HLR/AUC傳送協商更新鑑權算法的請求信息,以及將SQNMS=17表示為終端向HLR/AUC傳送終端為GSM/WCDMA雙模終端的信息等。
上述MSC/VLR為電路域設備,對於分組域的網絡,對應的MSC/VLR設備為SGSN,因此本發明可以等同應用於分組域。
上述各個具體實施方式
或實施例中,終端和HLR/AUC產生新鑑權密鑰可以是使用成熟的摘要算法,相應摘要算法可以參見《應用密碼學》一書或相關的算法論文或報告;當然,產生新密鑰時,也可以使用3GPP協議中提到的由隨機數RAND和鑑權密鑰KI產生加密密鑰CK或完整性密鑰IK的算法來進行。
上述各個具體實施方式
或實施例中,終端對於AUTN一致性驗證,對於SQNHE是否屬於可接受範圍的判斷,HLR/AUC對於AUTS合法性的驗證,以及HLR/AUC產生鑑權元組時,對於SQNHE的更新;產生鑑權元組的算法,以及產生AUTS的算法,等等,可以參見3GPP相關協議,由於是公知技術,這裡不再贅述。
可以理解,以上所述僅為本發明的較佳實施例,並不用以限制本發明,凡在本發明的精神和原則之內所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。
權利要求
1.一種同步SQN的處理方法,MSC/VLR在對終端進行鑑權時,將接收自HLR/AUC的鑑權五元組中的相應鑑權參數通過鑑權請求消息發送給終端,終端根據自己的鑑權密鑰KI和鑑權序列號SQNMS對網絡進行鑑權,其特徵在於,所述方法包括以下步驟a.終端對網絡鑑權通過後,終端用約定的特定值代替SQNMS來產生再同步標記AUTS,對網絡發送再同步請求命令且附上所述再同步標記AUTS;b.網絡側HLR/AUC接收到所述再同步請求命令,執行判斷所述再同步標記AUTS是否合法,以及判斷所述再同步標記AUTS中的SQNMS是否為所述約定的特定值的操作;HLR/AUC根據不同判斷結果向MSC/VLR返回包括不同內容信息的同步處理結果消息,並在判斷所述再同步標記AUTS合法且再同步標記AUTS中的SQNMS為所述約定的特定值時,執行所述約定的特定值對應的操作;c.MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,根據同步處理結果消息中包含的不同內容信息執行相應的處理操作。
2.根據權利要求1所述的方法,其特徵在於,所述MSC/VLR在對終端進行鑑權之前進一步包括終端對網絡側發送可引起鑑權流程的命令或請求,所述命令或請求可以是位置更新請求或業務請求。
3.根據權利要求1所述的方法,其特徵在於,所述鑑權五元組包括隨機數RAND、期望響應XRES、加密密鑰CK、完整性密鑰IK和鑑權標記AUTN;所述鑑權標記AUTN包括鑑權序列號SQNHE、鑑權管理域AMF和消息鑑權編碼MAC-A;所述相應鑑權參數包括隨機數RAND和鑑權標記AUTN。
4.根據權利要求3所述的方法,其特徵在於,步驟a中,終端對網絡鑑權通過後,進一步包括根據所述AUTN中的SQNHE更新自己的SQNMS。
5.根據權利要求3所述的方法,其特徵在於,所述終端對網絡鑑權通過是指終端根據自己的鑑權密鑰KI和接收的RAND對接收的AUTN進行一致性判斷通過,且根據自己的SQNMS判斷AUTN中的SQNHE在可接受範圍內。
6.根據權利要求5所述的方法,其特徵在於,步驟a還包括終端根據自己的鑑權密鑰KI和接收的RAND對接收的AUTN進行一致性判斷通過,且根據自己的SQNMS判斷AUTN中的SQNHE不屬於可接受範圍內時,直接根據SQNMS產生再同步標記AUTS,對網絡發送再同步請求命令且附上所述再同步標記AUTS。
7.根據權利要求6所述的方法,其特徵在於,步驟a中,終端直接根據SQNMS來產生再同步標記AUTS是指終端直接根據自己的SQNMS、鑑權密鑰KI和接收到的RAND以及AUTN中的AMF進行計算產生再同步標記AUTS。
8.根據權利要求3所述的方法,其特徵在於,步驟a中,終端用約定的特定值代替SQNMS來產生再同步標記AUTS是指終端用約定的特定值代替SQNMS來根據自己的鑑權密鑰KI、接收到的RAND以及AUTN中的AMF進行計算產生再同步標記AUTS。
9.根據權利要求3所述的方法,其特徵在於,所述步驟b中HLR/AUC在判斷所述再同步標記AUTS合法且再同步標記AUTS中的SQNMS不是所述約定的特定值時,根據SQNMS更新SQNHE。
10.根據權利要求3所述的方法,其特徵在於,所述步驟b進一步包括所述HLR/AUC判斷所述AUTS是否合法,如果非法,則向MSC/VLR返回包括非法同步信息的同步處理結果消息;如果合法,則HLR/AUC判斷所述AUTS中的SQNMS是否為所述約定的特定值,如果是,則執行所述特定值對應的操作,並向MSC/VLR返回包括特殊同步信息的同步處理結果信息,否則,根據SQNMS更新SQNHE,並重新產生鑑權元組,向MSC/VLR返回包括新鑑權元組且需要重新鑑權信息的同步處理結果信息。
11.根據權利要求10所述的方法,其特徵在於,所述特殊同步處理信息可以是用於指示以下內容中的一個或多個對終端鑑權通過,新產生的鑑權元組,新鑑權元組是否是用於鑑權,特定值所指示的同步類型信息,以及是否需要重新對終端鑑權。
12.根據權利要求10所述的方法,其特徵在於,所述步驟c進一步包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,判斷同步處理結果消息中是否包含了非法同步信息,如果是,則結束處理流程;否則,MSC/VLR判斷同步處理結果消息中是否包含了新鑑權元組信息如果包含了新鑑權元組信息,則刪除舊鑑權,並進一步判斷同步處理結果消息中是否包含了需要重新對終端鑑權信息,如果需要重新鑑權則用新鑑權元組對終端重新發起鑑權,否則,保存新鑑權元組以用於後續鑑權,判斷出對終端鑑權通過並進行相應的處理;如果不包含所述新鑑權元租信息,則MSC/VLR直接判斷出對終端鑑權通過,並根據包含的相應的特殊同步處理信息進行相應的處理。
13.根據權利要求12所述的方法,其特徵在於,所述需要重新對終端鑑權信息是通過對HLR/AUC返回給MSC/VLR的帶有鑑權元組的同步處理結果消息進行擴展來攜帶給MSC/VLR的。
14.根據權利要求12所述的方法,其特徵在於,所述相應的特殊同步處理信息是通過對HLR/AUC返回給MSC/VLR的非法同步處理結果消息進行擴展來攜帶給MSC/VLR的。
15.根據權利要求12所述的方法,其特徵在於,所述相應的特殊同步處理信息可以是同步用於終端和HLR/AUC協商防盜密鑰並設置防盜功能,可以是同步用於終端和HLR/AUC協商取消防盜功能,可以是同步用於終端向HLR/AUC傳輸特殊信息,所述特殊信息可以是終端是GSM/WCDMA雙模終端,終端支持GPS定位功能,終端支持自動將呼叫轉移到固定網絡功能,終端向HLR/AUC返回特殊操作執行結果信息。
16.根據權利要求1所述的方法,其特徵在於,所述約定的特定值是指約定某一範圍內的值或某個或多個具體值。
17.根據權利要求1所述的方法,其特徵在於,所述執行約定內容可以是執行密鑰更新、執行鑑權算法更新、執行防盜驗證、取消防盜驗證、獲得相關信息和返回特殊操作執行結果信息中一個或多個。
18.一種MSC/VLR處理HLR/AUC返回的同步處理結果消息的方法,其特徵在於,MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,根據同步處理結果消息中包含的不同內容信息執行相應的處理操作。
19.根據權利要求18所述的方法,其特徵在於,所述方法進一步包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,判斷同步處理結果消息中是否包含了非法同步信息,如果是,則結束處理流程;否則,MSC/VLR判斷同步處理結果消息中是否包含了新鑑權元組信息如果包含了新鑑權元組信息,則刪除舊鑑權,並判斷同步處理結果消息中是否包含了需要重新對終端鑑權信息,如果需要重新鑑權,則用新鑑權元組對終端重新發起鑑權,否則,保存新鑑權元組以用於後續鑑權,判斷出對終端鑑權通過並進行相應的處理;如果不包含新鑑權元組信息,則MSC/VLR直接判斷出對終端鑑權通過,並根據包含的相應的特殊同步處理信息進行相應的處理。
20.根據權利要求19所述的方法,其特徵在於,所述需要重新對終端鑑權信息是通過對HLR/AUC返回給MSC/VLR的帶有鑑權元組的同步處理結果消息進行擴展來攜帶給MSC/VLR的。
21.根據權利要求19所述的方法,其特徵在於,所述相應的特殊同步處理信息是通過對HLR/AUC返回給MSC/VLR的非法同步處理結果消息進行擴展來攜帶給MSC/VLR的。
全文摘要
本發明提供了一種同步SQN的處理方法,尤其涉及一種MSC/VLR處理HLR/AUC返回的同步處理結果消息的方法,所述方法包括MSC/VLR接收到HLR/AUC發送的同步處理結果消息後,根據同步處理結果消息中包含的不同內容信息執行相應的處理操作。通過該方法可方便安全地實現終端向HLR/AUC傳送信息以及HLR/AUC處理該信息後向MSC/VLR做出不同的反饋。特別地,在終端與網絡建立連接之前,例如在鑑權的過程中,向HLR/AUC傳送有效信息以及HLR/AUC向MSC/VLR做出相應的反饋。
文檔編號H04W12/06GK1859709SQ20051003622
公開日2006年11月8日 申請日期2005年7月26日 優先權日2005年7月26日
發明者王正偉, 劉斐 申請人:華為技術有限公司