專利名稱:一種基于橢圓曲線公鑰密碼的無線終端安全鎖網(wǎng)鎖卡方法
技術(shù)領(lǐng)域:
本發(fā)明涉及移動通信終端,特別涉及一種基于橢圓曲線公鑰密碼的無線終端安全鎖網(wǎng)鎖卡方法。
背景技術(shù):
隨著WCDMA網(wǎng)絡(luò)在全球范圍內(nèi)的大規(guī)模商用,以及WCDMA用戶數(shù)量的增多,各運營商為了擴大和鞏固用戶數(shù)量,在無線終端或手機銷售模式上采用話費補貼或附送手機方式來吸引用戶。在一些國家和地區(qū),運營商為了保證手機用戶不流失,要求所采購的手機只能在自己的網(wǎng)絡(luò)使用,并且使用運營商自己發(fā)行的SIM/USIM卡,因此對手機提出了鎖網(wǎng)鎖卡的要求。通過鎖網(wǎng)及鎖卡技術(shù),可以防止部分3G運營商通過某個地區(qū)運營商低價獲得手機,然后轉(zhuǎn)到其它地區(qū)高價出售,從而賺取運營商為發(fā)展市場所進行的補貼。另一方面,為了防止黑客攻擊,各運營商對手機鎖網(wǎng)鎖卡的安全性提出了很高要求。
手機鎖網(wǎng)是指依照當初運營商與手機制造商達成的協(xié)議,此手機機型只能使用該運營商網(wǎng)內(nèi)的SIM/USIM卡,其他運營商提供的SIM/USIM卡均不能使用。手機鎖卡是指該手機只認插入的第一張卡,其他卡均不能使用。不能使用的技術(shù)原因在于,該手機是通過安全軟件加了鎖,解鎖需要進行軟件重寫。
關(guān)于鎖網(wǎng)鎖卡要求的相關(guān)標準規(guī)范有3GPP TS 22.022,但在安全實現(xiàn)方面,不存在任何3GPP相關(guān)標準,也沒有解決上述問題的方便可靠的方法從鎖網(wǎng)鎖卡安全技術(shù)及安全管理的角度來說,要求提供網(wǎng)絡(luò)鎖網(wǎng)鎖卡的安全實現(xiàn)及方法,在手機制造商內(nèi)仍然需要嚴格保密。另外,為保證鎖網(wǎng)鎖卡軟件不被偽造,要求只有經(jīng)過授權(quán)或數(shù)字簽名的相關(guān)軟件才可以在手機內(nèi)運行,同時,對鎖網(wǎng)鎖卡的敏感數(shù)據(jù)要進行安全保護。
為保障安全的鎖網(wǎng)鎖卡功能,對手機軟件進行編程/重編的軟件也應(yīng)嚴格進行安全管理,以便不能使用或發(fā)現(xiàn)任何軟件對手機進行去鎖網(wǎng)鎖卡功能,這就要求在手機安全引導進程中,要進行鎖網(wǎng)相關(guān)的軟件完整性檢查,同時,保證每種軟件使用之前經(jīng)過授權(quán),或要通過數(shù)字簽名與驗證。另外,也不能通過降低軟件版本,對軟件進行重新構(gòu)造,從而對鎖網(wǎng)鎖卡功能造成威脅。
按相關(guān)標準規(guī)范3GPP TS22.022要求,手機內(nèi)鎖網(wǎng)鎖卡功能的解鎖功能,只有通過解鎖密鑰DCK,即解鎖密碼,才可以解除。并要求解鎖密鑰不可被重新編碼,并且要阻止任何偽造/反向工程推導。解鎖密鑰DCK是需要嚴格保密的信息,在存儲與傳輸時要采取必要的安全手段和安全級別。只有廠家或運營商才有可能存取DCK。除了解鎖密鑰外,要防止任何黑客在可用商業(yè)機上,使用任何物理或軟件方法來解鎖手機的鎖網(wǎng)鎖卡功能。
基于以上鎖網(wǎng)鎖卡的安全技術(shù)與管理需求,要求手機鎖網(wǎng)鎖卡軟件安全機制應(yīng)足夠強,不能被逆向推導或受到一個非授權(quán)第三方的危害,同時要求安全機制不能被繞過。
而解決以上問題的有效途徑就是借助于公鑰密碼體制PKI技術(shù)。
目前實用的公鑰密碼體制根據(jù)其所依據(jù)的難題一般分為三類大整數(shù)分解問題類-RSA算法、離散對數(shù)問題類-數(shù)字簽名算法DSA、橢圓曲線類-橢圓曲線密碼ECC。
橢圓曲線密碼體制是目前已知公鑰密碼體制中,每比特所提供加密強度最高的一種體制。RSA公鑰密碼算法的特點之一是數(shù)學原理簡單、在工程應(yīng)用中比較易于實現(xiàn),但它的單位安全強度相對較低。目前國際上公認的對于RSA算法最有效的攻擊方法--數(shù)域篩NFS方法去破譯和攻擊,證明RSA算法的破譯或求解難度是亞指數(shù)級的。而ECC算法的數(shù)學理論非常深奧和復雜,在工程應(yīng)用中比較難于實現(xiàn),但它的單位安全強度相對較高。用國際上公認的對于ECC算法最有效的攻擊方法--Pollard rho方法去破譯和攻擊ECC算法,它的破譯或求解難度基本上是指數(shù)級的。正是由于RSA算法和ECC算法這一明顯不同,使得ECC算法的單位安全強度高于RSA算法,也就是說,要達到同樣的安全強度,ECC算法所需的密鑰長度遠比RSA算法低。這就有效地解決了為了提高安全強度必須增加密鑰長度所帶來的工程實現(xiàn)難度的問題,特別是對于手機這樣處理能力不強,內(nèi)存資源比較緊張的情況。例如,當RSA算法密鑰使用2048位時,ECC密鑰僅使用234位,而所獲得的安全強度要高出許多。它們之間的密鑰長度相差達9倍以上,當ECC密鑰更大時它們之間差距將更大。ECC密鑰短的優(yōu)點是非常明顯的,隨加密強度的提高,密鑰長度變化不大。
隨著全球范圍內(nèi)為避免預(yù)先設(shè)置的鎖網(wǎng)鎖卡功能不被運營商或用戶非法取消,各大運營商對手機安全鎖網(wǎng)鎖卡提出的越來越高的安全強度的需求。
發(fā)明內(nèi)容
本發(fā)明需要解決的技術(shù)問題是提供一種基于橢圓曲線公鑰密碼的無線終端安全鎖網(wǎng)鎖卡方法,能夠?qū)崿F(xiàn)鎖網(wǎng)鎖卡,同時在一定密鑰長度可以提供更高的安全強度。
本發(fā)明的上述第一個技術(shù)問題這樣解決,提供一種基于橢圓曲線公鑰密碼的無線終端安全鎖網(wǎng)鎖卡方法,包括以下步驟1.1)使用橢圓曲線公鑰證書簽名生成的數(shù)字簽名和存儲在該終端內(nèi)的橢圓曲線私鑰密碼在開機初始階段進行軟件的合法性檢查;1.2)通過驗證的軟件根據(jù)終端當前注冊的網(wǎng)絡(luò)與預(yù)存網(wǎng)絡(luò)信息比較結(jié)果決定提供網(wǎng)絡(luò)服務(wù)與否或者讀取USIM/SIM卡內(nèi)的IMSI號并與預(yù)存的IMSI號比較決定是否提供服務(wù)。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述預(yù)存的網(wǎng)絡(luò)信息和IMSI號是基于ElGamal算法模擬的橢圓曲線進行加密保存并解密讀取的;這些安全數(shù)據(jù)還保存在終端內(nèi)的安全存儲區(qū)域中,保證它們不被非法篡改。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述預(yù)存的網(wǎng)絡(luò)信息和IMSI號也可直接設(shè)置在軟件中,保證它們不被非法篡改但這種架構(gòu)不利于功能的完善和增加。(建議保留用于支撐較大的權(quán)利要求1)按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述步驟1.1)還包括使用對應(yīng)數(shù)字簽名對所述加密保存進行合法和完整性檢查;進一步確保了這些安全數(shù)據(jù)的安全和正確性。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述網(wǎng)絡(luò)信息可以是MNC,還可以是MNC和MCC。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述加密保存,即安全數(shù)據(jù),還包括軟件簽名的認證碼、HPLMN、FLEXFILE、EF_GID1、軟件版本號、網(wǎng)絡(luò)控制鎖NCK、運營商控制鎖SPC、鎖網(wǎng)鎖卡狀態(tài)標志、網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)、鎖卡校驗碼、公鑰、版本校驗碼、IMEI號校驗碼或鎖卡校驗碼,并保存在終端內(nèi)的安全存儲區(qū)域中。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,該方法還包括位于步驟1.1)和1.2)之間的步驟解密讀取鎖網(wǎng)鎖卡狀態(tài)標志,“鎖網(wǎng)/卡狀態(tài)”進入步驟1.2)“不鎖網(wǎng)/卡狀態(tài)”則跳過步驟1.2)進入正常開機流程。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,該方法還包括根據(jù)所述軟件版本號與通過橢圓曲線公鑰密碼加密、橢圓曲線私鑰密碼解密的待下載軟件版本號的比較是否在版本號的安全區(qū)域決定是否允許下載;進行版本控制。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)不為零,該方法還包括根據(jù)輸入所述網(wǎng)絡(luò)控制鎖NCK將鎖網(wǎng)鎖卡狀態(tài)標志從“鎖網(wǎng)/卡狀態(tài)”改為“不鎖網(wǎng)/卡狀態(tài)”。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)為零,該方法還包括根據(jù)輸入所述運營商控制鎖SPC將鎖網(wǎng)鎖卡狀態(tài)標志從“鎖網(wǎng)/卡狀態(tài)”改為“不鎖網(wǎng)/卡狀態(tài)”,同時再輸入所述網(wǎng)絡(luò)控制鎖NCK鎖網(wǎng)鎖卡狀態(tài)標志不發(fā)生變化。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述步驟1.1)中數(shù)字簽名源于所述軟件的二進制可加載格式映像文件。
按照本發(fā)明提供的鎖網(wǎng)鎖卡方法,所述無線終端包括但不限制于2G或3G終端。
本發(fā)明提供的一種基于橢圓曲線公鑰密碼的無線終端安全鎖網(wǎng)鎖卡方法,采用的橢圓曲線密碼體制在已知公鑰密碼系統(tǒng)中具有每比特最高強度安全性,最快的處理速度和最低的開銷,特別適用于具有低內(nèi)存與低處理能力手機終端實現(xiàn)鎖網(wǎng)鎖卡公鑰密碼安全技術(shù)。
下面結(jié)合附圖和具體實施例進一步對本發(fā)明進行詳細說明。
圖1為本發(fā)明實施例方法的手機鎖網(wǎng)鎖卡軟件及數(shù)據(jù)保護流程圖;圖2為本發(fā)明實施例方法手機終端基于橢圓曲線的加密解密流程圖;圖3為本發(fā)明實施例方法安全數(shù)據(jù)編碼為橢圓曲線上的點的流程圖;圖4為本發(fā)明實施例方法鎖網(wǎng)鎖卡安全軟件簽名流程圖;圖5為本發(fā)明實施例方法鎖網(wǎng)鎖卡安全軟件合法性認證流程圖;圖6為本發(fā)明實施例方法鎖網(wǎng)鎖卡的解鎖網(wǎng)/鎖卡功能流程圖。
具體實施例方式
首先,說明本發(fā)明關(guān)鍵(一)從橢圓曲線離散對數(shù)出發(fā),輔以抗碰撞散列函數(shù),利用橢圓曲線公鑰證書數(shù)字簽名方法,實現(xiàn)手機的鎖網(wǎng)與鎖卡方法,包括手機鎖網(wǎng)鎖卡軟件授權(quán)使用確認、軟件完整性檢查,對鎖網(wǎng)鎖卡相關(guān)安全參數(shù)的加密保存,及鎖網(wǎng)鎖卡安全實現(xiàn)及鎖網(wǎng)鎖卡的安全解鎖等方法。
(二)本發(fā)明安全基礎(chǔ)是基于橢圓曲線離散對數(shù)問題。給定一條定義在有限域GF(p)上橢圓曲線E,一個階為n的點P∈E及一個點Q=kP,其中0≤k≤n-1,確定k。橢圓曲線離散對數(shù)問題具有可證明的安全性,相對于目前流行的RSA公鑰密碼體制,具有速度快,安全性高及對終端的處理能力要求低等優(yōu)點。
(三)本發(fā)明實現(xiàn)3G網(wǎng)絡(luò)下的手機安全鎖網(wǎng)鎖卡方法,就是通過對手機開機引導過程中,通過對系統(tǒng)軟件或手機鎖網(wǎng)鎖卡相關(guān)軟件實施橢圓曲線數(shù)字簽名,保證保證手機鎖網(wǎng)鎖卡軟件是合法授權(quán)的,并且沒有經(jīng)過竄改的。在保證了鎖網(wǎng)鎖卡軟件的安全性后,通過對USIM/SIM卡內(nèi)鎖網(wǎng)鎖卡相關(guān)字段或信息的檢查,并與手機內(nèi)的鎖網(wǎng)鎖卡相關(guān)信息進行比較判斷,實現(xiàn)手機安全的鎖網(wǎng)與鎖卡技術(shù)。對于鎖網(wǎng)鎖卡相關(guān)的需要高強度安全保護的信息或數(shù)據(jù),利用橢圓曲線公鑰密碼技術(shù)實施加密進行保護。通過以上高安全強度的基于橢圓曲線數(shù)字簽名,加密與解密安全技術(shù)手段,保證手機只有在運營商網(wǎng)絡(luò)范圍及所發(fā)行的USIM/SIM卡上安全使用。
第二步,具體說明本發(fā)明工作原理本發(fā)明基于橢圓曲線上離散對數(shù)困難問題假設(shè)出發(fā),借助于哈希函數(shù),橢圓曲線公鑰密碼或證書,利用橢圓曲線加密及數(shù)字簽名方法實現(xiàn)3G手機安全鎖網(wǎng)鎖卡方法,包括手機安全鎖網(wǎng)鎖卡的安全實現(xiàn)過程;手機引導時安全軟件完整性或系統(tǒng)性檢測;鎖網(wǎng)鎖卡相關(guān)安全數(shù)據(jù),如IMEI手機軟件版本號、鎖網(wǎng)狀態(tài)等安全加密與解密方法,手機鎖網(wǎng)鎖卡安全解鎖過程等內(nèi)容。
所述手機鎖網(wǎng)鎖卡過程包括鎖網(wǎng)鎖卡安全軟件數(shù)字簽名,相關(guān)安全數(shù)據(jù)的加密。首先借助PC側(cè)軟件對手機鎖網(wǎng)鎖卡安全軟件進行編譯,構(gòu)造,其次對構(gòu)造的二進制映象文件進行橢圓曲線數(shù)字簽名;再次,對鎖網(wǎng)鎖卡相關(guān)安全信息基于橢圓曲線公鑰密碼技術(shù)進行加密與解密處理;最后,通過PC側(cè)提供的手機下載軟件,將相關(guān)軟件與安全數(shù)據(jù)通過數(shù)據(jù)線下載到手機內(nèi)存區(qū)域中,對于安全相關(guān)數(shù)據(jù),借助于物理手段,保存到手機內(nèi)安全存儲區(qū)域中,如公鑰證書,鎖網(wǎng)鎖卡相關(guān)數(shù)據(jù),鎖網(wǎng)鎖卡狀態(tài)等,防止外部用戶進行竊取,竄改等。本發(fā)明假定手機內(nèi)的橢圓曲線私鑰,是安全保存在手機中,不能被外部軟件、硬件所讀取。
所述手機鎖網(wǎng)鎖卡安全軟件的數(shù)字簽名方法,用于該軟件完整性與合法性檢查。首先對于安全軟件程序中的各種源文件,包括C語言程序,匯編程序,經(jīng)過編譯器編譯后生成嵌入式可加載格式ELF文件。這些目標文件與手機處理器系統(tǒng)所帶的C/C++運行時庫文件,經(jīng)過連接器處理后,生成ELF格式的映象文件image,這種映象文件然后寫入到手機ROM Flash內(nèi)。為實現(xiàn)數(shù)字簽名,本發(fā)明假設(shè)運營商或制造商有一個支持橢圓曲線公鑰密碼的證書中心CA網(wǎng)站,也可以利用一個支持橢圓曲線密碼的政府或商業(yè)公共CA。用戶安全申請一個橢圓曲線密碼公鑰證書,用于手機軟件安全與鎖網(wǎng)鎖卡實現(xiàn)中的根CA證書,以此證書完成對其它公鑰證書簽名,保證手機公鑰證書的不可偽造性及合法性證明。本發(fā)明利用根CA證書簽名的手機公鑰證書,完成手機安全軟件的簽名,及相關(guān)安全數(shù)據(jù)的簽名,以實現(xiàn)安全軟件的完整性及合法性等檢查,防止第三方惡意代碼的入侵。
所述手機鎖網(wǎng)鎖卡安全軟件的數(shù)字簽名過程,首先給出橢圓曲線密碼參數(shù)集D=(p,a,b,G,n,h),其中p為一個大素數(shù),如大于160bit的素整數(shù),指定了有限域GF(p);a,b指定橢圓曲線E;G=(xG,yG)∈E(GF(p))為一個基點;素數(shù)n為基點G的階; h=#E(GF(p))/n為協(xié)因子整數(shù);#E(GF(p))表示橢圓曲線點群的階;同時也得到了密鑰對(d,Q),其中d是私鑰,Q=dG是公鑰;其次,使用哈希函數(shù)對所構(gòu)造的手機安全軟件映象文件進行散列運算,生成固定長度的映象文件摘要,如20字節(jié)長。再次,針對映象文件摘要數(shù)據(jù)進行橢圓曲線簽名過程,生成一個簽名數(shù)據(jù)并存入到手機存儲器中。
生成了手機安全軟件數(shù)字簽名后,在手機引導時,可通過對手機鎖網(wǎng)鎖卡安全軟件的簽名認證過程完成手機安全軟件合法性及完整性檢查。首先,基于橢圓曲線根CA證書或手機公鑰證書,取出公共橢圓曲線參數(shù)集D={p,a,b,G,n,h}與相關(guān)公鑰Q。然后,手機引導程序檢查驗證手機鎖網(wǎng)鎖卡安全軟件文件的簽名(r,s)是否合法的簽名,如果是合法的,則進行手機鎖網(wǎng)鎖卡判別過程;如果是不合法的安全軟件,對于研發(fā)過程中的手機,則進入到JTAG普通文件映象文件下載模式;對于產(chǎn)品階段,手機終端檢測到安全不一致性,則直接關(guān)機,防止手機被非法使用。
所述手機安全加密與解密方法,是基于EIGamal算法模擬的橢圓曲線加密與解密方案來實現(xiàn)安全數(shù)據(jù)的加密保護。首先對加密的數(shù)據(jù)按橢圓曲線參數(shù)集中的模大小進行分組,然后對分組數(shù)據(jù)進行編碼,將加密的分組數(shù)據(jù)轉(zhuǎn)換成橢圓曲線上的點,然后利用ElGamal算法進行數(shù)據(jù)的加密運算。解密過程中,通過橢圓曲線根證書公鑰與手機內(nèi)安全存儲的橢圓曲線私鑰完成加密分組數(shù)據(jù)的解密,最后通過快速的解碼方法,恢復出明文安全數(shù)據(jù)。所給出的解密方法的特點是解密速度快,特別適于手機終端這種內(nèi)存與處理能力受限的設(shè)備。
借助于以上所述發(fā)明方法,可以實現(xiàn)手機開機過程中的軟件合法性安全檢查及鎖網(wǎng)鎖止的判斷,包括手機安全軟件完整性檢測,IMEI號、軟件版本號等安全數(shù)據(jù)的完整性檢查,以及網(wǎng)絡(luò)服務(wù)狀態(tài)確定后的鎖網(wǎng)鎖卡狀態(tài)檢測。
本發(fā)明所述鎖網(wǎng)實現(xiàn)方法、首先手機開機時,檢查手機鎖網(wǎng)狀態(tài)標識是否有效,如果是要求鎖網(wǎng),則把當前手機注冊上的MNC,MCC和手機內(nèi)安全區(qū)域中橢圓曲線加密或安全保存的移動網(wǎng)絡(luò)碼MNC,移動國家碼MCC列表相比較,如果在鎖網(wǎng)范圍內(nèi),則繼續(xù)運行;否則,彈出提示框,并限制手機業(yè)務(wù)。
鎖網(wǎng)鎖卡的狀態(tài)檢查過程中,手機判斷USIM卡或SIM卡型號,借助于USIM卡或SIM卡驅(qū)動接口函數(shù)讀出USIM/SIM卡內(nèi)的IMSI號,并從中析出HPLMN字段,讀出EF_GID1與運營商相關(guān)信息。檢查手機鎖網(wǎng)狀態(tài)標識是否有效,如果是要求鎖網(wǎng)或鎖卡,則把當前手機注冊上的MNC,MCC和手機中加密保存的鎖網(wǎng)鎖卡相關(guān)信息,如MNC,MCC值,解密出來后進行比較。如果一致,則說明手機是合法的,否則,手機可能是非法的,阻止手機進行網(wǎng)絡(luò)相關(guān)的業(yè)務(wù)或關(guān)機。手機鎖網(wǎng)鎖卡相關(guān)的網(wǎng)絡(luò)狀態(tài)值有鎖網(wǎng),不鎖網(wǎng),無效網(wǎng)絡(luò)狀態(tài)三種狀態(tài)。
手機安全版本號用于控制軟件版本的下載,對于不同型號的手機,分配不同的安全版本號區(qū)間。
所述手機軟件版本控制與版本號校驗方法是,利用PC側(cè)專門軟件與數(shù)據(jù)線連上手機,手機軟件下載工具連上手機后選擇待下載安全軟件版本。開始下載時,下載工具對下載的軟件進行數(shù)字簽名,軟件安全版本號數(shù)據(jù)通過橢圓曲線加密算法進行加密,發(fā)送給手機。手機接收到軟件安全版本號,與保存在手機中的安全版本號進行比較;如果待下載軟件安全版本號在合法安全版本號區(qū)間,并且下載的新的軟件版本通過手機內(nèi)的安全認證,則手機接受下載,繼續(xù)下載流程,否則手機應(yīng)拒絕下載。
以上所述方法中,所需要通過橢圓曲線密碼實施安全保護的相關(guān)數(shù)據(jù)有,軟件簽名的認證碼,HPLMN,F(xiàn)LEXFILE,EF_GID1,軟件版本號,網(wǎng)絡(luò)控制鎖NCK,運營商控制鎖SPC,MNC,MCC,鎖網(wǎng)鎖卡狀態(tài)標示,網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù),鎖卡校驗碼,公鑰,版本校驗碼,IMEI號校驗碼,鎖卡校驗碼等數(shù)據(jù)。
第三步,結(jié)合軟件流程和具體實現(xiàn)進一步詳細說明本發(fā)明本發(fā)明實施例方法所述的手機所實施的鎖網(wǎng)鎖卡軟件流程,具體如圖1所示,包括以下步驟步驟101中,為了完成鎖網(wǎng)鎖卡軟件的數(shù)字簽名,相關(guān)安全數(shù)據(jù)的加密,需要借助PC側(cè)軟件2實現(xiàn)手機1鎖網(wǎng)鎖卡等安全相關(guān)軟件的編譯,構(gòu)造與進行橢圓曲線數(shù)字簽名,及對相關(guān)安全信息進行加密處理。然后通過PC側(cè)提供的手機下載軟件,將相關(guān)軟件與安全數(shù)據(jù)通過數(shù)據(jù)線下載到手機內(nèi)存區(qū)域中,對于安全相關(guān)數(shù)據(jù),借助于物理手段,保存到手機內(nèi)安全存儲區(qū)域中,如公鑰證書,鎖網(wǎng)鎖卡相關(guān)數(shù)據(jù),鎖網(wǎng)鎖卡狀態(tài)等,防止外部用戶進行竊取,竄改等。
步驟102中,為實現(xiàn)手機1鎖網(wǎng)鎖卡數(shù)據(jù)安全及相關(guān)軟件合法性與完整性檢查,本發(fā)明假設(shè)運營商或制造商已經(jīng)建立起一個支持橢圓曲線公鑰密碼的證書中心CA網(wǎng)站,也可以利用一個支持橢圓曲線密碼的政府或商業(yè)公共CA,也可以運營商或制造商自己提供一個橢圓曲線安全軟件,可以生成制造商或運營商的根證書CA,以及手機終端或用戶使用橢圓曲線證書或公、私鑰的密鑰對。通過運營商或制造商的根證書,保證手機終端或用戶的證書是合法簽名的證書,而不是偽造的。另外在本發(fā)明中,根證書的作用除驗證軟件與數(shù)據(jù)完整性外,還完成對鎖網(wǎng)鎖卡相關(guān)安全數(shù)據(jù)的加密與解密功能。
所述方法步驟102中,橢圓曲線數(shù)字簽名證書內(nèi)部格式由CCITT X.509規(guī)定,可以包含以下幾方面內(nèi)容證書版本號、數(shù)字證書序列號、證書擁有者姓名(可以是手機的IEMI號)、簽名算法、頒發(fā)數(shù)字證書的單位(可以是運營商或手機制造商)、頒發(fā)數(shù)字證書的單位(可以是運營商或制造商)簽名、公開秘鑰有效期等。
步驟103所述方法中,用橢圓曲線公鑰加密相關(guān)鎖網(wǎng)鎖卡安全相關(guān)數(shù)據(jù)有,軟件簽名認證碼,HPLMN,相關(guān)配置數(shù)據(jù),鎖運營商卡相關(guān)信息EF_GID1,軟件版本號,網(wǎng)絡(luò)控制鎖NCK,運營商控制鎖SPC,MNC,MCC,鎖網(wǎng)鎖卡狀態(tài)標示,網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù),鎖卡校驗碼,IMEI號校驗碼,鎖卡認證碼等數(shù)據(jù)。如鎖網(wǎng)鎖卡狀態(tài)標示、(MCC,MNC)列表、軟件版本號等數(shù)據(jù)。本發(fā)明后面給出具體橢圓曲線實現(xiàn)安全數(shù)據(jù)加密與解密的過程。
步驟104中,對于鎖網(wǎng)鎖卡安全相關(guān)各種源文件,包括C語言程序或匯編程序,經(jīng)過編譯器(如ARM處理器系統(tǒng))編譯后生成嵌入式可加載格式ELF二進制目標文件。這些目標文件與手機終端處理器系統(tǒng)所帶的C/C++運行時庫文件,經(jīng)過ARM連接器處理后,生成ELF格式的映象文件image,這種映象文件,通過PC側(cè)下載軟件下載到手機ROM Flash內(nèi)。
步驟105中,利用手機終端證書對構(gòu)造的安全軟件進行橢圓曲線數(shù)字簽名,生成簽名數(shù)據(jù),用于手機開機時安全鎖網(wǎng)鎖卡軟件的合法性認證。
步驟106中,將安全軟件及簽名,相關(guān)加密數(shù)據(jù)下載到手機步驟107中,手機內(nèi)部生成鎖網(wǎng)鎖卡的解鎖碼,并保存在手機中。
步驟108中,手機將鎖網(wǎng)解鎖碼和IMEI號發(fā)送給PC側(cè)工具步驟109中,PC側(cè)軟件在數(shù)據(jù)庫中保存鎖網(wǎng)鎖卡的解鎖碼及手機IMEI號,與手機終端橢圓曲線公鑰證書與對應(yīng)私鑰,以方便制造商或運營商為手機進行鎖網(wǎng)鎖卡的解鎖之用。
上面步驟103所述安全數(shù)據(jù)加密與解密方法中,本發(fā)明給出ElGamal算法模擬的橢圓曲線加密與解密方案來實現(xiàn)安全數(shù)據(jù)的加密保護。
該方法的特點是解密速度快,特別適于手機終端這種內(nèi)存與處理能力受限的設(shè)備,下面結(jié)合圖2,詳細說明基于橢圓曲線加密與解密過程。
步驟201中,PC側(cè)安全軟件從根證書導出橢圓曲線參數(shù)集D={p,a,b,G,n,h},其中p為一個大素數(shù),如大于160bit的素整數(shù),指定了有限域GF(p);a,b指定橢圓曲線E;G=(xG,yG)∈E(GF(p))為一個基點;素數(shù)n為基點G的階;h=#E(GF(p))/n為協(xié)因子整數(shù);#E(GF(p))表示橢圓曲線點群的階;同時也得到了密鑰對(d,Q),其中d是私鑰,Q=dG是公鑰。
步驟202中,將要加密的安全數(shù)據(jù),如軟件版本號,軟件數(shù)字簽名、鎖網(wǎng)鎖卡密鑰等安全數(shù)據(jù),如果長度大于n的話就進行分組,如果加密的安全數(shù)據(jù)長度不夠,則在高字節(jié)處填充0?;贓CC的密碼體制中,在傳輸一個明文數(shù)據(jù)m之前,我們必須把它編碼嵌入到曲線E上的一個點。假設(shè)消息A是一個整數(shù),0<A<p/256-1以及曲線E是由橢圓曲線參數(shù)集D給出。我們試著填加二位十進制數(shù)字到A上,直到我們得到一個整數(shù)x,256A≤x<p,其中f(x)=x3+ax2+b=y(tǒng)A mod p是一個平方剩余(q.r.)。然后,我們解這個二次同余方程y2=f(x)mod p,以得到曲線E上的一個明文消息點PA=(xA,yA)。很明顯,只要去掉xA坐標中的最后2位十進制數(shù),我們可以容易地從PA中解出A。
步驟203中,將加密的數(shù)據(jù)轉(zhuǎn)換成橢圓曲線方程上的點的橫坐標xA,計算A=xA3+axA+b(mod p),Q=p,利用數(shù)論相關(guān)定理及圖3給出的平方剩余判斷算法,判斷大整數(shù)A是否模平方剩余數(shù)。如果A不是模p的平方剩余數(shù)時,則說明xA不是橢圓曲線上的點,即不滿足橢圓曲線方程等式成立。在最低字節(jié)內(nèi)重新選取xA并重復這個平方剩余算法進行判斷,直到滿足為止。在圖3的算法中,Q為橢圓曲線范圍Domain參數(shù)D中的模p的值,A為模Q或模p上的平方剩余時,xA則為所選的橫坐標。圖3中的J表示Jacobi符號,則J為1是表示A為模平方剩余,為-1是表示A為一個模平方非剩余?;贘與模p的值情況可以計算出yA。
步驟203與步驟204為根據(jù)明文安全數(shù)據(jù)轉(zhuǎn)換成橢圓曲線的點的橫坐標后,利用二次同余方程解的計算法,給出對應(yīng)橫坐標xA的縱坐標yA,從而完成了把明文的安全數(shù)據(jù)編碼為橢圓曲線上的點。然后基于橢圓曲線上的點完成安全數(shù)據(jù)的加密與解密步驟205中,如果p具有2u+1,u為奇數(shù)的形式時,即滿足p≡3(mod 4)或p≡7(mod 8)時,橢圓曲線方程的解為yA≡±A((p+1)/4)(mod p)步驟206中,當p具有4u+1,u為奇數(shù)的形式時,即滿足p≡1(mod 4)或p≡5(mod 8),如果A((p-1)/4)≡1(mod p),則yA≡±A((p+3)/8)(mod p);如果A((p-1)/4)≡1(mod p),則yA≡±2((p-1)/4)·A((p+3)/8)(mod p)步驟207,通過步驟202到步驟206的過程及圖3所示的過程,完成了將安全數(shù)據(jù)編碼為橢圓曲線上的點PA=(yA,yA)。為以后數(shù)據(jù)加密奠定基礎(chǔ)。
步驟208中是安全數(shù)據(jù)的加密運算。對安全數(shù)據(jù)編碼為橢圓曲線上的點后,就可能利用根證書私鑰dR及手機終端證書公鑰QR對數(shù)據(jù)進行加密運算。加密計算過程如下PA+dR QR=PA+dR(dAG),然后將根證書公鑰,與加密的點保存到手機內(nèi)存區(qū)域中,即點對(QR,PA+dR(dAG))。
步驟209中,手機在進行鎖網(wǎng)鎖卡過程中,當需要解密出安全數(shù)據(jù)時,使用其私鑰dA完成如下計算PA+dR(dAG)-dA(QR)=PA+dR(dAG)-dA(dRG)=PA;對解密出的點PA中的橫坐標xA進行解碼處理,即去掉xA中的最后二位數(shù)字即可,然后將該整數(shù)轉(zhuǎn)換成字節(jié)串,即可恢復出安全數(shù)據(jù)來。
本發(fā)明給出的基于橢圓曲線數(shù)據(jù)加、解密方案的優(yōu)點是解密與解碼速度快。編碼較復雜,但沒有實時性的要求。另外,通過運營商或制造商根證書與手機公鑰證書來實施數(shù)據(jù)的加密與解密,除了可以通過PC側(cè)軟件與手機相連完成手機安全鎖網(wǎng)鎖卡外,還可以便于通過網(wǎng)上下載來實現(xiàn)手機的鎖網(wǎng)鎖卡技術(shù)。
本發(fā)明中所述步驟105中,利用要證書可以驗證手機證書的合法性,利用手機終端證書對構(gòu)造的安全軟件進行橢圓曲線數(shù)字簽名,生成簽名數(shù)據(jù),用于手機開機時安全鎖網(wǎng)鎖卡軟件的合法性認證。下面結(jié)合圖4的代碼簽名流程,說明本發(fā)明中給出的手機安全軟件完整性與合法性檢查。
本發(fā)明實施例中,圖4所給出的流程假設(shè)以ARM系列嵌入式處理器系統(tǒng)進行代碼構(gòu)造說明。
步驟601中,對于安全引導程序中各種源文件,包括C語言程序或匯編程序,經(jīng)過ARM編譯器編譯后生成嵌入式可加載格式ELF文件。這些目標文件與ARM處理器系統(tǒng)所帶的C/C++運行時庫文件,經(jīng)過ARM連接器處理后,生成ELF格式的映象文件image,這種映象文件然后寫入到手機ROMFlash內(nèi)。
步驟602中,為實現(xiàn)手機終端軟件安全與鎖網(wǎng)鎖卡技術(shù)實現(xiàn),假設(shè)運營商或制造商有一個支持橢圓曲線公鑰密碼的證書中心CA網(wǎng)站,也可以利用一個支持橢圓曲線密碼的政府或商業(yè)公共CA。用戶通過橢圓曲線密碼CA中心,安全申請一個橢圓曲線密碼公鑰證書,用于手機軟件安全與鎖網(wǎng)鎖卡實現(xiàn)中的根CA證書,以此證書完成對其它公鑰證書簽名,保證手機公鑰證書的不可偽造性及合法性證明。本發(fā)明要利用根CA證書簽名的手機公鑰證書,完成手機安全軟件的簽名,及相關(guān)安全數(shù)據(jù)的簽名,以實現(xiàn)安全軟件的完整性及合法性等檢查,防止第三方惡意代碼的入侵。
所述方法步驟602中,橢圓曲線數(shù)字簽名證書內(nèi)部格式由CCITT X.509規(guī)定,可以包含以下幾方面內(nèi)容證書版本號、數(shù)字證書序列號、證書擁有者姓名、簽名算法、頒發(fā)數(shù)字證書的單位、頒發(fā)數(shù)字證書的單位的簽名、公開秘鑰有效期等。
步驟603所述方法中,基于步驟602中所獲得的橢圓曲線根公鑰證書,生成橢圓曲線密碼參數(shù)集D=(p,a,b,G,n,h),其中p為一個大素數(shù),如大于160bit的素整數(shù),指定了有限域GF(p);a,b指定橢圓曲線E;G=(xG,yG)∈E(GF(p))為一個基點;素數(shù)n為基點G的階;h=#E(GF(p))/n為協(xié)因子整數(shù);#E(GF(p))表示橢圓曲線點群的階;同時也得到了密鑰對(d,Q),其中d是私鑰,Q=dG是公鑰;向網(wǎng)守發(fā)送哈希函數(shù),橢圓曲線參數(shù)a,b和公鑰Q。
步驟604所述方法是使用安全哈希函數(shù)SHA,使用哈希函數(shù)對所構(gòu)造的操作系統(tǒng)軟件系統(tǒng)或應(yīng)用系統(tǒng)軟件映象文件進行散列運算,生成固定長度的映象文件摘要,如20字節(jié)長。
步驟605-步驟610的過程,是針對映象文件摘要數(shù)據(jù)進行橢圓曲線簽名的過程步驟606選擇一個隨機或偽隨機數(shù)k,1≤k≤n-1;步驟607計算kG=(x1,y1),r=x1 mod n,如果r=0,說明所選擇的橢圓曲線隨機點是一個特殊點,不符合簽名安全要求,返回步驟606進行重新選取。
步驟608計算s=k-1(e+dr)mod n,如果s=0,則返回步驟606。
步驟609完成對手機安全軟件映象文件的簽名(r,s)。該簽名將隨映象文件一起放到手機ROM Flash中;如圖5所示,為根據(jù)本發(fā)明實施例所述的手機引導過程中,對鎖網(wǎng)鎖卡安全軟件進行合法性檢查,其具體步驟為步驟701手機引導程序,基于橢圓曲線根CA證書或手機公鑰證書,取出公共橢圓曲線參數(shù)集D={p,a,b,G,n,h}與相關(guān)公鑰Q。
步驟702手機引導程序檢查驗證手機鎖網(wǎng)鎖卡安全軟件文件(操作系統(tǒng)或應(yīng)用系統(tǒng)軟件)的簽名(r,s)是否超過橢圓曲線基點群階的范圍,如果是,則表示不合法的簽名。引導程序轉(zhuǎn)到步驟708,安全認證失敗對于產(chǎn)品研發(fā)階段,則進入到JTAG普通文件映象文件下載模式,對于產(chǎn)品階段,手機終端檢測到安全不一致性,直接關(guān)機,防止手機非法使用。
步驟703生成手機安全軟件映象文件的消息摘要e。
步驟704分別計算w=s-1 mod n;u1=ew mod n;u2=rw mod n;及X=u1G+u2Q=(x1,y1)的值。
步驟705當X的橫坐標x1為0時,說明簽名無效,手機引導程序轉(zhuǎn)到步驟708,安全認證失敗,而后進到產(chǎn)品研發(fā)階段的JTAG普通文件映象文件下載模式,或手機終端檢測到安全不一致性,直接關(guān)機,防止手機非法使用。
步驟706當X的橫坐標x1不等于r時,則表示不合法的簽名。手機引導程序轉(zhuǎn)到步驟708,安全認證失敗。對于產(chǎn)品研發(fā)階段,則進入到JTAG普通文件映象文件下載模式,對于產(chǎn)品階段,手機終端檢測到安全不一致性,直接關(guān)機,防止手機非法使用。
步驟707驗證了手機安全軟件簽名的正確性后,說明了該軟件映象文件簽名沒有被竄改,手機引導程序可以完成鎖網(wǎng)鎖卡狀態(tài)檢查。
借助于以上所述發(fā)明方法,可以實現(xiàn)手機開機過程中的軟件合法性安全檢查及鎖網(wǎng)鎖止的判斷,包括手機安全軟件完整性檢測,IMEI號、軟件版本號等安全數(shù)據(jù)的完整性檢查,以及網(wǎng)絡(luò)服務(wù)狀態(tài)確定后的鎖網(wǎng)鎖卡狀態(tài)檢測。
鎖網(wǎng)鎖卡的狀態(tài)檢查過程中,手機判斷USIM卡或SIM卡型號,借助于USIM卡或SIM卡驅(qū)動接口函數(shù)讀出USIM/SIM卡內(nèi)的IMSI號,并從中析出HPLMN字段,讀出EF_GID1與運營商相關(guān)信息。檢查手機鎖網(wǎng)狀態(tài)標識是否有效,如果是要求鎖網(wǎng)或鎖卡,則把當前手機注冊上的MNC,MCC和手機中加密保存的鎖網(wǎng)鎖卡相關(guān)信息,如MNC,MCC值,解密出來后進行比較。如果一致,則說明手機是合法的,否則,手機可能是非法的,阻止手機進行網(wǎng)絡(luò)相關(guān)的業(yè)務(wù)或關(guān)機。手機鎖網(wǎng)鎖卡相關(guān)的網(wǎng)絡(luò)狀態(tài)值有鎖網(wǎng),不鎖網(wǎng),無效網(wǎng)絡(luò)狀態(tài)三種狀態(tài)。
對于手機鎖網(wǎng)鎖卡的解鎖方案,下面結(jié)合圖6說明具體過程。
步驟301用戶選擇手機鎖網(wǎng)/鎖卡的解鎖功能。用戶可以通過PC側(cè)專利軟件來實現(xiàn),也可以在手機提供相關(guān)解鎖網(wǎng)鎖卡界面實現(xiàn)。
步驟302判斷解鎖次數(shù)是否超過5次,這包括以前進行的已保存的安全解鎖次數(shù)累加比較。因此包括對安全解鎖次數(shù)數(shù)據(jù)的的解密過程,如前所述的橢圓曲線加密與解密過程。如果解鎖次數(shù)超過5次,則按標準要求,則手機將處于永遠鎖定狀態(tài)。
步驟303判斷手機是否在解鎖狀態(tài)。
步驟304如果手機已解鎖,則相關(guān)的解鎖密鑰,即鎖網(wǎng)控制密鑰NCK與運營商加鎖控制密鑰SPC,將恢復出明文狀態(tài),放在手機NV項中,即非易失內(nèi)存中。
步驟305如果手機在鎖定狀態(tài),則可通過手機或?qū)iT的PC側(cè)軟件提供一種提示用戶輸入解鎖碼,包括鎖網(wǎng)控制碼NCK,或SPC。
步驟306手機或PC側(cè)軟件解密出相關(guān)的NCK或SPC,與用戶輸入的相關(guān)值進行比較?步驟307判斷手機解密出的NCK或SPC與用戶輸入的解鎖碼是否相等?步驟308如果相等,則解鎖成功,相關(guān)的解鎖密鑰,即鎖網(wǎng)控制密鑰NCK與運營商加鎖控制密鑰SPC,將恢復出明文狀態(tài),放在手機NV項中。
步驟309在步驟307中比較值如果不相等,則失敗次數(shù)加1,并且用戶退出鎖網(wǎng)鎖卡應(yīng)用時,要將與此相關(guān)的安全數(shù)據(jù)進行加密保存。
步驟310提示用戶已進行失敗的解鎖次數(shù),并將返回到步驟305用戶解鎖碼輸入界面,給用戶嘗試解鎖機會。
最后,要特別說明的是(一)對于手機引導來說,無論什么時候手機安全軟件代碼發(fā)生改變或軟件版本發(fā)生變化,都要重新進行軟件簽名,以保證軟件的完整性、一致性。
(二)本領(lǐng)域技術(shù)人員在實施本發(fā)明實施例時,為簡化描述本發(fā)明思想,對于手機安全軟件及安全數(shù)據(jù)簽名認證中,采用的是同一個CA根證書,可選地也可以通過證書鏈方式對手機公鑰證書進行簽名,以驗證手機公鑰的合法性。其思想是本發(fā)明給的代碼簽名與認證思想相同。
(三)本發(fā)明方法所采用的橢圓曲線密碼體制在已知公鑰密碼系統(tǒng)中具有每比特最高強度安全性,最快的處理速度和最低的開銷,特別適用于具有低內(nèi)存與低處理能力的3G手機終端實現(xiàn)網(wǎng)絡(luò)鎖網(wǎng)鎖卡及其它安全接入。
(四)基于本發(fā)明思想,也完全可以實現(xiàn)3GPP TS22.022其它安全需求,如鎖內(nèi)容提供商應(yīng)用,鎖公司應(yīng)用及網(wǎng)絡(luò)子網(wǎng)鎖定等安全應(yīng)用。本發(fā)明思想也可以為手機終端提供一個3G終端可信計算平臺,以使手機安全接入3G網(wǎng)絡(luò)。
權(quán)利要求
1.一種基于橢圓曲線公鑰密碼的無線終端(1)安全鎖網(wǎng)鎖卡方法,其特征在于,包括以下步驟1.1)使用橢圓曲線公鑰證書簽名生成的數(shù)字簽名和存儲在該終端(1)內(nèi)的橢圓曲線私鑰密碼在開機初始階段進行軟件的合法性檢查;1.2)通過驗證的軟件根據(jù)終端當前注冊的網(wǎng)絡(luò)與預(yù)存網(wǎng)絡(luò)信息比較結(jié)果決定提供網(wǎng)絡(luò)服務(wù)與否或者讀取USIM/SIM卡內(nèi)的IMSI號并與預(yù)存的IMSI號比較決定是否提供服務(wù)。
2.根據(jù)權(quán)利要求1所述鎖網(wǎng)鎖卡方法,其特征在于,所述預(yù)存的網(wǎng)絡(luò)信息和IMSI號是基于ElGamal算法模擬的橢圓曲線進行加密保存并解密讀取的。
3.根據(jù)權(quán)利要求1或2所述鎖網(wǎng)鎖卡方法,其特征在于,所述步驟1.1)還包括使用對應(yīng)數(shù)字簽名對所述加密保存進行合法和完整性檢查。
4.根據(jù)權(quán)利要求1或2所述鎖網(wǎng)鎖卡方法,其特征在于,所述網(wǎng)絡(luò)信息可以是MNC,還可以是MNC和MCC。
5.根據(jù)權(quán)利要求2所述鎖網(wǎng)鎖卡方法,其特征在于,所述加密保存還包括軟件簽名的認證碼、HPLMN、FLEXFILE、EF_GID1、軟件版本號、網(wǎng)絡(luò)控制鎖NCK、運營商控制鎖SPC、鎖網(wǎng)鎖卡狀態(tài)標志、網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)、鎖卡校驗碼、公鑰、版本校驗碼、IMEI號校驗碼或鎖卡校驗碼,并保存在終端內(nèi)的安全存儲區(qū)域中。
6.根據(jù)權(quán)利要求1或5所述鎖網(wǎng)鎖卡方法,其特征在于,該方法還包括位于步驟1.1)和1.2)之間的步驟解密讀取鎖網(wǎng)鎖卡狀態(tài)標志,“鎖網(wǎng)/卡狀態(tài)”進入步驟1.2)“不鎖網(wǎng)/卡狀態(tài)”則跳過步驟1.2)進入正常開機流程。
7.根據(jù)權(quán)利要求5所述鎖網(wǎng)鎖卡方法,其特征在于,該方法還包括根據(jù)所述軟件版本號與通過橢圓曲線公鑰密碼加密、橢圓曲線私鑰密碼解密的待下載軟件版本號的比較決定是否允許下載。
8.根據(jù)權(quán)利要求5所述鎖網(wǎng)鎖卡方法,其特征在于,所述網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)不為零,該方法還包括根據(jù)用戶輸入所述網(wǎng)絡(luò)控制鎖NCK將鎖網(wǎng)鎖卡狀態(tài)標志從“鎖網(wǎng)/卡狀態(tài)”改為“不鎖網(wǎng)/卡狀態(tài)”。
9.根據(jù)權(quán)利要求5所述鎖網(wǎng)鎖卡方法,其特征在于,所述網(wǎng)絡(luò)/卡解鎖剩余嘗試次數(shù)為零,該方法還包括根據(jù)運營商輸入所述運營商控制鎖SPC將鎖網(wǎng)鎖卡狀態(tài)標志從“鎖網(wǎng)/卡狀態(tài)”改為“不鎖網(wǎng)/卡狀態(tài)”,同時再輸入所述網(wǎng)絡(luò)控制鎖NCK鎖網(wǎng)鎖卡狀態(tài)標志不發(fā)生變化。
10.根據(jù)權(quán)利要求1所述鎖網(wǎng)鎖卡方法,其特征在于,所述步驟1.1)中數(shù)字簽名源于所述軟件的二進制可加載格式映像文件。
全文摘要
本發(fā)明涉及一種基于橢圓曲線公鑰密碼的無線終端(1)安全鎖網(wǎng)鎖卡方法,包括使用橢圓曲線公鑰證書簽名生成的數(shù)字簽名和在該終端內(nèi)的橢圓曲線私鑰密碼在開機初始階段進行軟件合法性檢查;通過驗證的軟件根據(jù)終端當前注冊的網(wǎng)絡(luò)與預(yù)存網(wǎng)絡(luò)信息比較結(jié)果決定提供網(wǎng)絡(luò)服務(wù)與否或者讀取USIM/SIM卡內(nèi)的IMSI號并與預(yù)存的IMSI號比較決定是否提供服務(wù);進一步基于ElGamal算法模擬的橢圓曲線對數(shù)據(jù)進行加密和解密。這種方法基于橢圓曲線公鑰PKI技術(shù),實現(xiàn)了身份認證、訪問控制、信息加密和數(shù)字簽名,保障了鎖網(wǎng)鎖卡的安全性,同時相對于RSA公鑰在同等安全情況下密鑰長度又相對小許多,更適于處理能力和內(nèi)存較主機差的終端。
文檔編號H04L9/32GK101018125SQ20071008032
公開日2007年8月15日 申請日期2007年3月2日 優(yōu)先權(quán)日2007年3月2日
發(fā)明者盧忱, 王云峰, 胡焰龍, 張瑞娟, 于宏全, 郭艷玲 申請人:中興通訊股份有限公司