專利名稱:一種智能sim卡及通過該卡實(shí)現(xiàn)數(shù)據(jù)短消息傳輸和處理的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種智能SIM卡及通過該卡實(shí)現(xiàn)數(shù)據(jù)短消息傳輸和處理的方法。
背景技術(shù):
在日常生活中,經(jīng)常會(huì)有人通過手機(jī)短信來傳遞銀行帳號(hào)、密碼、身份證號(hào)、充值 卡號(hào)等信息,這些信息不僅僅是用戶的絕對(duì)隱私信息,更直接關(guān)系到用戶的經(jīng)濟(jì)利益。但 是,在通過短信發(fā)送這些關(guān)鍵信息的同時(shí),存在嚴(yán)重的安全隱患,一旦這些信息被別有用心 的人截獲,可能會(huì)給用戶帶來巨大的經(jīng)濟(jì)損失。另外,通過短信進(jìn)行欺詐、竊取隱私的事件, 也非常常見。同時(shí),隨著手機(jī)功能和計(jì)算能力的不斷增強(qiáng),手機(jī)上出現(xiàn)了不少的惡意程序,手機(jī) 短信的私密性和安全性也因此受到了前所未有的挑戰(zhàn)。SIM卡具有存儲(chǔ)用戶相關(guān)數(shù)據(jù)、存儲(chǔ)加密算法和密鑰、用戶身份鑒權(quán)等重要的安全 功能,因此它的安全性至關(guān)重要。本發(fā)明正是為了解決以上問題,提供一種智能SIM卡,以及通過該卡實(shí)現(xiàn)數(shù)據(jù)短 消息傳輸和處理的方法,從而實(shí)現(xiàn)加密、安全地發(fā)送手機(jī)短信。
發(fā)明內(nèi)容
通過本發(fā)明的智能SIM卡,用數(shù)據(jù)短消息來實(shí)現(xiàn)對(duì)短信的加密傳送,同時(shí)在SIM卡 上實(shí)現(xiàn)對(duì)短信加密存儲(chǔ),以及密碼驗(yàn)證身份等功能,讓用戶放心的使用數(shù)據(jù)短消息來傳遞 銀行賬號(hào)、密碼、身份證號(hào)、充值卡號(hào)等重要私密數(shù)據(jù),徹底保護(hù)用戶的隱私不受到侵害。本發(fā)明的數(shù)據(jù)短消息與普通短信不同的是,數(shù)據(jù)短消息是以密文傳送,移動(dòng)終端 收到數(shù)據(jù)短消息后,直接透明地傳遞給智能SIM卡。智能SIM卡收到數(shù)據(jù)短消息后,在智能 SIM卡加密存儲(chǔ)。需輸入密碼后,才可閱讀。根據(jù)本發(fā)明的智能SIM卡,其帶有微型操作系統(tǒng),所述智能SIM卡包括CPU、串行 I/O、程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、工作存儲(chǔ)器,在所述程序存儲(chǔ)器中存儲(chǔ)有操作系統(tǒng)以及應(yīng)用 程序代碼和函數(shù),在所述數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)有數(shù)據(jù)文件,在所述工作存儲(chǔ)器中存儲(chǔ)所述智 能SIM卡與手機(jī)之間通信的I/O緩沖區(qū)及應(yīng)用程序、函數(shù)中用到的臨時(shí)變量,所述智能SIM 卡還包括數(shù)據(jù)短消息收發(fā)器,將所述智能SIM卡用戶編寫的短消息進(jìn)行加密處理后,以 數(shù)據(jù)短消息形式發(fā)送出去;或者接收方移動(dòng)終端接收到數(shù)據(jù)短消息后,將數(shù)據(jù)短消息透明 傳遞給所述數(shù)據(jù)短消息收發(fā)器進(jìn)行校驗(yàn),并將校驗(yàn)通過后的所述數(shù)據(jù)短消息保存在所述智 能SIM卡上的數(shù)據(jù)存儲(chǔ)器中;動(dòng)態(tài)密鑰更新器,定期從應(yīng)用服務(wù)器接收動(dòng)態(tài)密鑰;所述智能 SIM卡成功接收所述動(dòng)態(tài)密鑰數(shù)據(jù)短消息后將原來的密鑰替換。根據(jù)本發(fā)明的智能SIM卡,其中所述數(shù)據(jù)短消息收發(fā)器將加密處理后的數(shù)據(jù)短消 息發(fā)送給所述應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器接收該數(shù)據(jù)短消息后,首先驗(yàn)證該數(shù)據(jù)短消息 的合法性,如果合法,將數(shù)據(jù)重新組織處理后,以數(shù)據(jù)短消息形式發(fā)送給移動(dòng)終端,否則放棄該數(shù)據(jù)短消息的發(fā)送。根據(jù)本發(fā)明的智能SIM卡,其中對(duì)于存在多對(duì)原始密鑰的系統(tǒng),可以同時(shí)接收應(yīng)用服務(wù)器產(chǎn)生的多條所述下行命令,所述智能SIM卡成功接收密鑰數(shù)據(jù)后所述動(dòng)態(tài)密鑰更 新器用新接收到的動(dòng)態(tài)密鑰替換原來的密鑰。根據(jù)本發(fā)明的智能SIM卡,其中所述智能SIM卡處理完所述下行命令后向應(yīng)用服 務(wù)器上發(fā)更新密鑰是否成功的確認(rèn)信息,如果應(yīng)用服務(wù)器沒有收到該確認(rèn)信息,將會(huì)再次 向該用戶發(fā)送密鑰更新信息。根據(jù)本發(fā)明的智能SIM卡,其分層結(jié)構(gòu)包括如下各層Hardware層,包括CPU、協(xié)處理器、I/O、存儲(chǔ)器。Kernel層,存儲(chǔ)有GSM規(guī)范規(guī)定的基本命令,將Shell層命令轉(zhuǎn)換為對(duì)所述智能 SIM卡進(jìn)行的相應(yīng)操作;實(shí)現(xiàn)所述智能SIM卡與手機(jī)終端的數(shù)據(jù)通信;為Application層提 供操作所述存儲(chǔ)器的應(yīng)用程序接口;Shell層,完成GSM規(guī)范定義的主動(dòng)式命令;Application層,利用底層提供的應(yīng)用程序接口,在所述智能SIM卡上實(shí)現(xiàn)收發(fā)數(shù) 據(jù)短消息,Application是通過所述Shell層提供的主動(dòng)式命令進(jìn)行工作的。根據(jù)本發(fā)明,還提供一種通過智能SIM卡進(jìn)行數(shù)據(jù)短消息傳輸和處理的方法,包 括如下步驟通過所述智能SIM卡上的數(shù)據(jù)短消息收發(fā)器將用戶編寫的短消息進(jìn)行加密處理, 然后以數(shù)據(jù)短消息形式發(fā)送給應(yīng)用服務(wù)器;所述應(yīng)用服務(wù)器接收該數(shù)據(jù)短消息后,驗(yàn)證該數(shù)據(jù)短消息的合法性,如果合法,將 數(shù)據(jù)重新組織處理后,以數(shù)據(jù)短消息形式發(fā)送給接收方移動(dòng)終端;否則放棄該數(shù)據(jù)短消息 的發(fā)送;所述接收方移動(dòng)終端接收到所述數(shù)據(jù)短消息后,將所述數(shù)據(jù)短消息透明傳遞給所 述接收方移動(dòng)終端的智能SIM卡進(jìn)行校驗(yàn),并將校驗(yàn)通過后的數(shù)據(jù)短消息保存在所述智能 SIM卡上的數(shù)據(jù)存儲(chǔ)器中;根據(jù)本發(fā)明的數(shù)據(jù)短消息傳輸和處理的方法,其中對(duì)數(shù)據(jù)短消息的加密處理是通 過動(dòng)態(tài)密鑰進(jìn)行的,所述智能SIM卡通過其動(dòng)態(tài)密鑰更新器接收應(yīng)用服務(wù)器下行的動(dòng)態(tài)密 鑰數(shù)據(jù)短消息;所述智能SIM卡成功接收所述數(shù)據(jù)短消息后將替換原來的密鑰。根據(jù)本發(fā)明的數(shù)據(jù)短消息傳輸和處理的方法,其中所述智能SIM卡處理完所述下 行命令后向應(yīng)用服務(wù)器上發(fā)更新密鑰是否成功的確認(rèn)信息,如果應(yīng)用服務(wù)器沒有收到該確 認(rèn)信息,將會(huì)再次向該用戶發(fā)送密鑰更新信息。
參照如下附圖將更加易于理解本發(fā)明圖1所示為智能SIM卡上應(yīng)用開發(fā)的分層結(jié)構(gòu);圖2所示為移動(dòng)終端開機(jī)工作流程圖;圖3所示為數(shù)據(jù)短消息發(fā)送流程;圖4所示為數(shù)據(jù)短消息接收流程;圖5所示為數(shù)據(jù)短消息瀏覽顯示流程;
圖6所示為數(shù)據(jù)短消息收發(fā)系統(tǒng)體系結(jié) 構(gòu)圖;圖7所示為詳細(xì)的數(shù)據(jù)短消息收發(fā)過程圖。
具體實(shí)施例方式SIM卡具有存儲(chǔ)用戶相關(guān)數(shù)據(jù)、存儲(chǔ)加密算法和密鑰、用戶身份鑒權(quán)等重要的安全 功能,因此它的安全性至關(guān)重要。SIM卡在物理特性上是通過一個(gè)觸點(diǎn)使用IS07816模式與 手機(jī)終端之間傳送數(shù)據(jù),進(jìn)行半雙工的通信,除非將芯片進(jìn)行物理上的拆除,通過分析存儲(chǔ) 器得到SIM上存儲(chǔ)的相關(guān)信息,否則只能通過該半雙工接口訪問SIM卡。根據(jù)本發(fā)明,智能SIM卡是一個(gè)帶有微型操作系統(tǒng)的接觸式芯片,它由CPU、串行 I/O、程序存器(ROM)、數(shù)據(jù)存儲(chǔ)器(EEPR0M或者FLASH)、工作存儲(chǔ)器(RAM)等組成??ú僮?系統(tǒng)(COS)、相對(duì)成熟的應(yīng)用程序代碼和函數(shù)被固化在ROM中,數(shù)據(jù)文件等保存在EPROM中, 卡與手機(jī)之間通信的I/O緩沖區(qū)及應(yīng)用程序、函數(shù)中用到的臨時(shí)變量等使用RAM。智能SIM卡上應(yīng)用開發(fā)的分層結(jié)構(gòu)如圖1所示,各層的解釋如下Hardware :CPU、協(xié)處理器、I/O、存儲(chǔ)器等硬件設(shè)施。Kernel 實(shí)現(xiàn)GSM規(guī)范規(guī)定的基本命令;負(fù)責(zé)將Shell層命令轉(zhuǎn)換為對(duì)硬件進(jìn)行 的相應(yīng)操作;負(fù)責(zé)智能SIM卡與移動(dòng)終端的數(shù)據(jù)通信;為Aplication層提供操作硬件(主 要是存儲(chǔ)器管理,例如讀寫文件、拷貝數(shù)據(jù)等)的應(yīng)用程序接口。其中,GSM規(guī)范是標(biāo)準(zhǔn)智 能SIM卡的文件結(jié)構(gòu)、文件屬性的GSM規(guī)范,也是GSM規(guī)范中智能SIM卡最基本和最主要的 規(guī)范。Shell 實(shí)現(xiàn)GSM規(guī)范定義的主動(dòng)式命令。Application最終是通過該層提供的主 動(dòng)式命令進(jìn)行工作的。Application 利用Kernel層提供的應(yīng)用程序接口,就可在智能SIM卡上開發(fā)各種 應(yīng)用。數(shù)據(jù)短消息的收發(fā)應(yīng)用就是在Application實(shí)現(xiàn)。在本發(fā)明中,智能SIM卡用戶利用智能SIM卡上提供的數(shù)據(jù)短消息收發(fā)模塊,編寫 數(shù)據(jù)短消息,經(jīng)過智能SIM組織加密處理后,發(fā)送給應(yīng)用服務(wù)器。應(yīng)用服務(wù)器接收到該信息 后,首先驗(yàn)證該信息的合法性,如果合法,將數(shù)據(jù)重新組織處理后,則向接收方移動(dòng)終端的 智能SIM卡用戶發(fā)送,否則放棄該過程。同時(shí)應(yīng)用服務(wù)器為合法用戶保存用戶信息收發(fā)日 志,以供日后查詢使用;用戶通過移動(dòng)終端接收到數(shù)據(jù)短消息后,移動(dòng)終端將數(shù)據(jù)短消息透 明傳遞給智能SIM卡,卡片校驗(yàn)這些數(shù)據(jù)通過后,將其保存到卡片的數(shù)據(jù)存儲(chǔ)器中,并呈現(xiàn) 給用戶瀏覽。上述的過程是用戶收發(fā)數(shù)據(jù)短消息的第一個(gè)途徑,也是主要途徑,即用戶從智能 SIM卡提供的數(shù)據(jù)短消息收發(fā)菜單來實(shí)現(xiàn)數(shù)據(jù)短消息的接受與發(fā)送。第二個(gè)途徑就是應(yīng)用服務(wù)器主動(dòng)下發(fā)數(shù)據(jù)給用戶。第三個(gè)途徑就是通過因特網(wǎng)。用戶通過在因特網(wǎng)上注冊(cè)使得網(wǎng)上的用戶帳號(hào)和用 戶手機(jī)號(hào)碼進(jìn)行綁定,當(dāng)用戶登錄網(wǎng)上系統(tǒng),可根據(jù)網(wǎng)上提供的信息發(fā)送頁面實(shí)現(xiàn)數(shù)據(jù)短 消息發(fā)送。通過這種方式發(fā)送信息的同時(shí)也會(huì)被應(yīng)用服務(wù)器記錄保存為日志,并且通過短 消息中心下發(fā)到用戶智能SIM卡中。數(shù)據(jù)短信編碼的數(shù)據(jù)組成為短消息頭(包括目的地址、編碼方式等)+安全應(yīng)用 數(shù)據(jù)+用戶數(shù)據(jù)。安全數(shù)據(jù)的使用,保證了數(shù)據(jù)傳輸?shù)陌踩浴?br>
安全機(jī)制分析1)雙向身份認(rèn)證數(shù)據(jù)短信收發(fā)的過程如下首先,用戶使用移動(dòng)終端通過智能SIM提供的菜單界 面發(fā)送數(shù)據(jù)短信,該數(shù)據(jù)短信經(jīng)由短消息中心和短信網(wǎng)關(guān),最后通過Internet發(fā)送至應(yīng)用 服務(wù)器;然后,應(yīng)用服務(wù)器檢查數(shù)據(jù)短消息的合法性和安全性,檢查不通過則拋棄該信息, 否則將數(shù)據(jù)數(shù)據(jù)短消息經(jīng)由反向的路徑發(fā)送至手機(jī),手機(jī)將該數(shù)據(jù)短消息透明傳輸給智能 SIM卡最后,智能SIM卡檢查數(shù)據(jù)短信的合法性和安全性,檢查不通過則拋棄該短信,否則 將保存數(shù)據(jù)短信,并將數(shù)據(jù)短信顯示給用戶。2)數(shù)據(jù)的完整性和邏輯性數(shù)據(jù)短信的完整性和邏輯性應(yīng)進(jìn)行檢查,以防止由于網(wǎng)絡(luò)傳輸錯(cuò)誤或者惡意攻擊 者發(fā)出的非法數(shù)據(jù)。下面兩個(gè)方面的檢測(cè)能夠保證數(shù)據(jù)的完整性和邏輯性。(1)數(shù)據(jù)的完整性檢測(cè)主要使用MAC校驗(yàn)機(jī)制。其主要作用是保證消息的接收者 能夠判斷消息在傳輸過程中是否被修改、刪除或者重組,防止不法入侵者用虛假消息代替 合法消息或者篡改消息,保證了消息的發(fā)送者是合法用戶。應(yīng)用服務(wù)器將下行數(shù)據(jù)中的一 部分重要的信息利用算法DES CBC進(jìn)行加密,并作為下行數(shù)據(jù)的一部分傳輸給智能SIM卡。 智能SIM卡收到該數(shù)據(jù)后,不是直接處理用戶數(shù)據(jù),而是對(duì)安全數(shù)據(jù)進(jìn)行MAC校驗(yàn)。只有本 地計(jì)算的MAC和下行數(shù)據(jù)中的MAC值一致的情況下才接收數(shù)據(jù),否則就會(huì)拋棄數(shù)據(jù)。同樣, 應(yīng)用服務(wù)器對(duì)智能SIM卡上行的數(shù)據(jù)也使用MAC校驗(yàn)。這樣雙方就保證了對(duì)方的數(shù)據(jù)的完 整性。MAC算法采用標(biāo)準(zhǔn)的DES CBC算法。(2)數(shù)據(jù)的邏輯性檢測(cè)也可以稱之為異常處理。下行數(shù)據(jù)中有一些重要的字節(jié)信 息是需要智能SIM卡進(jìn)行檢測(cè)的,特別是一些后續(xù)長度的值,它們必須是邏輯一致的,如果 不一致,很可能導(dǎo)致將“BUG”下載到智能SIM卡上,就會(huì)出現(xiàn)意想不到的錯(cuò)誤,導(dǎo)致數(shù)據(jù)短 信應(yīng)用甚至智能SIM卡不可用。所以一旦智能SIM卡檢測(cè)出下行數(shù)據(jù)有邏輯上的錯(cuò)誤,就 要拋棄該數(shù)據(jù)。3)數(shù)據(jù)的加密和解密數(shù)據(jù)加密算法為3DES CBC,同時(shí)需要校驗(yàn)MAC和計(jì)數(shù)器。3DES加密算法要求數(shù)據(jù) 的字節(jié)數(shù)為8的倍數(shù),如果不是8的倍數(shù),則需要用固定的字節(jié)填充,一般是Hex數(shù)據(jù)00,并 將填充的個(gè)數(shù)通知給解密方。智能SIM現(xiàn)有的會(huì)話密鑰Kc,一般是用智能SIM卡的國際移動(dòng)識(shí)別號(hào)或者卡片的 序列號(hào)對(duì)智能SIM卡和應(yīng)用服務(wù)器共享的主密鑰進(jìn)行分散,分散算法采用PBOC算法。為了 保證數(shù)據(jù)短消息更加安全可靠,利用智能SIM卡中現(xiàn)有的安全機(jī)制??梢栽趹?yīng)用服務(wù)器產(chǎn) 生動(dòng)態(tài)密鑰(通常的方法是利用隨機(jī)數(shù)生成器),新增加一條下行命令,該命令的作用是向 智能SIM卡發(fā)送新產(chǎn)生的動(dòng)態(tài)密鑰。對(duì)存有多對(duì)原始密鑰的系統(tǒng),可以發(fā)送多條這樣的下 行命令,并用原來的密鑰加密這條數(shù)據(jù),智能SIM卡成功接收數(shù)據(jù)后將原來的密鑰替換。這 條下行命令的安全性和有效性的保證機(jī)制為(1)采用3DES算法加密短信體,加密密鑰為欲更新的密鑰;(2)為了增加安全性,要求應(yīng)用服務(wù)器在檢測(cè)到用戶開機(jī)后,就進(jìn)行PUSH密鑰更新短信的操作;(3)短信數(shù)據(jù)中應(yīng)該有本次更新的密鑰的版本信息,以更好地管理動(dòng)態(tài)密鑰;
(4)為了增加密鑰更新的成功率,對(duì)智能SIM卡的要求是處理完該命令后要向應(yīng) 用服務(wù)器上發(fā)更新密鑰是否成功的確認(rèn)信息,如果服務(wù)器沒有收到該確認(rèn)信息,將會(huì)再次 向該用戶發(fā)送密鑰更新信息。該短信雖然采用3DES算法的加密密鑰仍然是舊密鑰,但由于 采用了雙重加密體制(移動(dòng)終端與基站之間采用鑒權(quán)時(shí)產(chǎn)生的會(huì)話密鑰加密,本條短信從 智能SIM卡發(fā)出時(shí)又是3DES算法加密的),并且傳輸?shù)拇螖?shù)非常有限(正常情況下一次就 可以完成密鑰更新),所以該條短信中的密鑰在傳輸時(shí)就被截獲的可能性非常小。 數(shù)據(jù)短消息在智能SIM卡上的實(shí)現(xiàn)移動(dòng)終端是移動(dòng)網(wǎng)絡(luò)的一個(gè)組成部分。SIM卡是移動(dòng)終端的組成部分,是移動(dòng)網(wǎng)絡(luò) 中的用戶識(shí)別模塊,起著重要的安全性保障作用,運(yùn)營商可以通過該模塊對(duì)用戶進(jìn)行識(shí)別、 計(jì)費(fèi)以及提供各種各樣的個(gè)性化服務(wù)。系統(tǒng)在符合GSM網(wǎng)絡(luò)的所有標(biāo)準(zhǔn)功能的基礎(chǔ)上,實(shí) 現(xiàn)基于SIM卡收發(fā)數(shù)據(jù)短信的功能。本發(fā)明的智能SIM卡實(shí)現(xiàn)卡中的應(yīng)用與支持該應(yīng)用的移動(dòng)終端進(jìn)行交互操作,即 支持智能SIM卡與智能終端之間的主動(dòng)式對(duì)話,從而基于SIM的數(shù)據(jù)短信的收發(fā)功能。主動(dòng)式命令的交互主要由SIM卡和手機(jī)間的四個(gè)基本命令和一個(gè)狀態(tài)字信息完 成的(1)終端檢測(cè)命令將移動(dòng)終端是否支持?jǐn)?shù)據(jù)短信的信息報(bào)告給SIM卡,從而SIM卡 能夠判斷是否可以進(jìn)行數(shù)據(jù)短信的收發(fā);(2)數(shù)據(jù)傳遞命令的功能是向SIM傳遞數(shù)據(jù);(3)指令執(zhí)行命令的功能是,SIM卡使用該命令向手機(jī)傳遞主動(dòng)式命令,手機(jī)接受 到命令后將執(zhí)行這些命令,如顯示文本信息、發(fā)送短信、要求用戶輸入等;(4)終端應(yīng)答命令的功能是,手機(jī)使用此命令通知SIM卡主動(dòng)式命令執(zhí)行的結(jié)果, SIM卡根據(jù)該結(jié)果進(jìn)行后續(xù)的操作;(5)命令狀態(tài)字的作用是,SIM卡用它通知手機(jī)命令執(zhí)行的結(jié)果。本發(fā)明的智能SIM的工作過程如下開機(jī),移動(dòng)終端向智能SIM卡發(fā)送終端檢測(cè)命令,告訴智能SIM卡是否支持?jǐn)?shù)據(jù) 短消息,智能SIM卡返回狀態(tài)位,并向移動(dòng)終端發(fā)送菜單顯示指令,移動(dòng)終端顯示菜單給用 戶。如圖2所示。用戶選擇進(jìn)入數(shù)據(jù)短消息人機(jī)接口界面,手機(jī)告訴智能SIM卡用戶所選擇的是哪 個(gè)菜單,并在程序中保存該信息。如果用戶選擇的是數(shù)據(jù)短消息發(fā)送菜單,此時(shí)智能SIM卡 將會(huì)返回狀態(tài)字,并組織上行數(shù)據(jù)短消息,向終端發(fā)送數(shù)據(jù)短消息發(fā)送指令。如圖3所示。當(dāng)移動(dòng)終端接收到數(shù)據(jù)短信時(shí),將信息透明傳遞給智能SIM卡,智能SIM卡接收數(shù) 據(jù)并對(duì)數(shù)據(jù)作處理,包括安全檢查、存儲(chǔ)等,然后返回狀態(tài)字,告訴手機(jī)命令執(zhí)行結(jié)束。如圖 4所示。用戶在移動(dòng)終端選擇信息列表,并將信息列表ID告訴智能SIM卡。智能SIM卡得 到該信息ID后,組織該ID的信息內(nèi)容,并向移動(dòng)終端返回狀態(tài)字,告訴終端顯示信息內(nèi)容。 移動(dòng)終端執(zhí)行信息顯示命令,組織信息內(nèi)容,并顯示。然后告訴智能SIM卡信息顯示完成。 如圖5所示。以上是智能SIM的工作流程。本發(fā)明的SIM卡在主動(dòng)式命令中提供了一套用于監(jiān) 視的事件。事件機(jī)制用于當(dāng)事件發(fā)生時(shí)向SIM卡傳送事件細(xì)節(jié),移動(dòng)終端可以報(bào)告給SIM卡的事件,包括呼入、位置狀態(tài)和應(yīng)用的屏幕顯示能力。在設(shè)計(jì)數(shù)據(jù)短消息收發(fā)系統(tǒng)時(shí),要 設(shè)計(jì)這些事件的處理內(nèi)容,使得整個(gè)數(shù)據(jù)短消息應(yīng)用能開展開來。一般常用的事件由以下 幾種(1)終端檢測(cè)事件當(dāng)重新啟動(dòng)移動(dòng)終端時(shí)觸發(fā)該事件。移動(dòng)終端利用該事件將 其是否支持?jǐn)?shù)據(jù)短消息功能信息傳送給SIM卡。(2)菜單選擇事件選擇目錄菜單時(shí)觸發(fā)該事件。根據(jù)用戶選擇的目錄菜單的ID 號(hào),進(jìn)行不同的相關(guān)操作。
(3)數(shù)據(jù)短消息觸發(fā)事件移動(dòng)終端接收到數(shù)據(jù)短消息時(shí)即會(huì)觸發(fā)該事件,并將 數(shù)據(jù)短消息透明傳遞給SIM卡。部分樽塊的詳細(xì)描述1)重點(diǎn)函數(shù)的設(shè)計(jì)模塊中有以下幾個(gè)重點(diǎn)部分,是由函數(shù)實(shí)現(xiàn)的,下面分別介紹一下這幾個(gè)關(guān)鍵函數(shù)。(1)信息是否已經(jīng)存在函數(shù)描述查找SIM卡上是否已經(jīng)存在該信息。如果存在則返回索引值,從而找到該信息的 存儲(chǔ)位置;如果不存在則返回一個(gè)特定值,告訴主程序這是一個(gè)新信息,開始保存服務(wù)。(2)找出可下載服務(wù)的空間,如整個(gè)空間夠用但沒有完整的空間,需整合空間。函數(shù)描述檢查空閑空間處是否有足夠的空間下載該信息,如果空間不足,則在SIM找到足 夠大的空間“碎塊”,將其整合成一塊可以下載整個(gè)信息的完整的存儲(chǔ)區(qū);如果空間足夠則 直接保存該服務(wù)。(3)整合空間“碎塊”函數(shù)描述根據(jù)下載信息所需空間的大小,“從后向前”找到空間大小加起來大于等于所需空 間的最前面的一個(gè)“碎塊”的位置,從該位置開始按“從前向后”的順序?qū)⑦@些“碎塊”整合 成一個(gè)比較大的空間,返回這個(gè)較大空間的索引值。2)重要的接口信息除了設(shè)計(jì)本模塊的函數(shù)作為下載主程序的接口函數(shù)外,本模塊還需要和其他模塊 之間共享信息,這些共享的接口信息的描述如下(I)SIM卡剩余空間的大小這里用全局變量存儲(chǔ)剩余空間的大小。該變量的大小由程序在每次開機(jī)時(shí)計(jì)算一 次,之后每下載一個(gè)信息,該變量就減去所下載服務(wù)所占空間大小,每刪除一個(gè)信息,該變 量就增加所刪除的服務(wù)的空間大小,維持該變量的動(dòng)態(tài)更新。該變量的使用,使得需要統(tǒng)計(jì) SIM卡剩余下載空間的程序能夠很方便地得到想要的值,由于需要該值的程序很多,例如每 次下載信息時(shí)都要判斷剩余空間是否足夠,因此該變量的引入,大大提高了程序處理的效 率。(2)新的地址索引這里用全局變量存儲(chǔ)最后一塊空閑空間。這個(gè)變量的使用給程序的處理帶來很大的方便,體現(xiàn)在以下幾個(gè)方面每次存儲(chǔ)信息時(shí)程序都會(huì)首選存儲(chǔ)到該索引指向的區(qū)域,使得程序不用每下載一次都得遍歷整個(gè)空間;如果存儲(chǔ)空間不足的話就需要整合空間,將前 面足夠的空間“碎片”整合到一起,每整合一個(gè)“碎片”,該變量就將減1 每下載一個(gè)服務(wù), 該變量就會(huì)加1 ;在搜索已存在的信息時(shí),該變量往往作為索引的上限值。數(shù)據(jù)短消息收發(fā)系統(tǒng)體系結(jié)構(gòu)數(shù)據(jù)短消息收發(fā)系統(tǒng)體系結(jié)構(gòu)如圖6所示。由圖6可以看出整個(gè)系統(tǒng)主要由應(yīng) 用服務(wù)器、后臺(tái)數(shù)據(jù)庫、WEB服務(wù)器、移動(dòng)終端組成。配合短消息網(wǎng)關(guān)和短消息中心,以GSM 網(wǎng)絡(luò)與Internet為數(shù)據(jù)傳輸媒介,來實(shí)現(xiàn)整個(gè)業(yè)務(wù)功能。下面說明數(shù)據(jù)短消息應(yīng)用系統(tǒng)主要組成部分的功能。應(yīng)用服務(wù)器是整個(gè)系統(tǒng)中負(fù)責(zé)通訊服務(wù)和業(yè)務(wù)邏輯處理的功能模塊。主要與移動(dòng)運(yùn)營商短信 網(wǎng)關(guān)連接,并完成二者之間的數(shù)據(jù)接收、數(shù)據(jù)分流、數(shù)據(jù)發(fā)送等功能。當(dāng)移動(dòng)運(yùn)營商的用戶 容量和短信吞吐量增大時(shí),可以通過部署多個(gè)應(yīng)用服務(wù)器,來提升整個(gè)系統(tǒng)的性能,以支持 用戶量的提升和短信處理能力。應(yīng)用服務(wù)器是整個(gè)應(yīng)用系統(tǒng)的核心,它的運(yùn)行模式和效率 直接關(guān)系到整個(gè)系統(tǒng)的性能。后臺(tái)數(shù)據(jù)庫負(fù)責(zé)記錄整個(gè)系統(tǒng)相關(guān)的所有數(shù)據(jù),包括用戶數(shù)據(jù)、信息數(shù)據(jù)、日志數(shù)據(jù)等。wra服務(wù)器TOB服務(wù)器以TOB的方式向手機(jī)用戶和客服人員提供網(wǎng)上應(yīng)用功能。用戶可通過 WEB方式瀏覽(可對(duì)發(fā)送或接收到的數(shù)據(jù)短消息進(jìn)行無限量存儲(chǔ))、發(fā)送、刪除數(shù)據(jù)短消息。數(shù)據(jù)短消息收發(fā)業(yè)各流稈移動(dòng)終端發(fā)送用戶通過操作點(diǎn)擊SIM卡上的數(shù)據(jù)短消息發(fā)送菜單選項(xiàng)進(jìn)行信息發(fā)送。移動(dòng)終端將用戶信息組織處理后,發(fā)送給短消息網(wǎng)關(guān)。短消息網(wǎng)關(guān)將數(shù)據(jù)短消息 透明傳遞給應(yīng)用服務(wù)器。應(yīng)用服務(wù)器接收到數(shù)據(jù)短消息后,檢查收到數(shù)據(jù)的完整性、合法性。然后對(duì)數(shù)據(jù)組 織處理后,將數(shù)據(jù)提交給發(fā)送程序。如驗(yàn)證未通過,則流程終止。發(fā)送程序?qū)?shù)據(jù)提交給短消息網(wǎng)關(guān),同時(shí)寫入數(shù)據(jù)庫的用戶信息表中和日志表 中。短消息網(wǎng)關(guān)將數(shù)據(jù)以數(shù)據(jù)短消息的形式發(fā)送到用戶手機(jī)。用戶的移動(dòng)終端接收到數(shù)據(jù)短消息后,透明傳遞給SIM卡。SIM卡接收到數(shù)字短信 后,首先驗(yàn)證數(shù)據(jù)的完整性和合法性,若數(shù)據(jù)未通過驗(yàn)證則被丟棄,反之則由用戶SIM卡完 成數(shù)據(jù)存儲(chǔ),并將數(shù)據(jù)短信顯示給用戶。ffEB 發(fā)送用戶在第一次使用網(wǎng)上功能時(shí),首先需要在Internet網(wǎng)上注冊(cè)。注冊(cè)時(shí)用戶輸入 手機(jī)號(hào)碼,向系統(tǒng)申請(qǐng)注冊(cè)。系統(tǒng)判定其是否為合法用戶。如是合法用戶,系統(tǒng)生成隨機(jī)密 碼,存入用戶信息表中,同時(shí)將密碼以普通短信方式發(fā)送給用戶。如果用戶遺忘密碼,用戶需先輸入手機(jī)號(hào)碼,向系統(tǒng)申請(qǐng)注冊(cè)。系統(tǒng)注冊(cè)模塊查詢 數(shù)據(jù)庫中的用戶信息表,將用戶信息表中的密碼以普通短信方式通知用戶。
用戶收到密碼后,在頁面中輸入手機(jī)號(hào)和密碼,進(jìn)行登錄。在通過登錄模塊的驗(yàn)證 后,系統(tǒng)判斷該用戶是否為第一次登錄,如果是則要求用戶輸入個(gè)人基本資料,成功提交后 方可正常使用網(wǎng)上服務(wù)。網(wǎng)上頁面提供數(shù)據(jù)短消息的發(fā)送、查詢、刪除。數(shù)據(jù)短消息收發(fā)實(shí)例在手機(jī)菜單中找到并選擇“SIM卡應(yīng)用”,然后選擇“數(shù)據(jù)短消息應(yīng)用”菜單。要進(jìn) 入“數(shù)據(jù)短消息應(yīng)用,,應(yīng)用,需要輸入PIN密碼,輸入正確后才可進(jìn)入。數(shù)據(jù)短消息應(yīng)用下 有四個(gè)子菜單,分別為“發(fā)送數(shù)據(jù)短消息”、“發(fā)送普通信息”、“閱讀信息”、“設(shè)置”。發(fā)送數(shù)據(jù)短消息首先輸入接收人的手機(jī)號(hào)碼,也可在手機(jī)通訊錄中選擇號(hào)碼。然后編寫數(shù)據(jù)短消 息,確定發(fā)送。發(fā)送普通信息除發(fā)送數(shù)據(jù)短消息外,還可完成普通短消息的發(fā)送。閱讀信息用戶可以點(diǎn)擊“閱讀信息”菜單,進(jìn)入后查詢?yōu)g覽收到的數(shù)據(jù)短消息。在閱讀信息 的過程中,用戶可進(jìn)行刪除、轉(zhuǎn)發(fā)、回復(fù)(可以以數(shù)據(jù)短消息和普通短信兩種方式回復(fù))等 操作。設(shè)置信息提醒可設(shè)置是否信息提醒。如需提醒,在客戶收到數(shù)據(jù)短消息后,系統(tǒng)給客 戶發(fā)送一條提醒短信。存儲(chǔ)用于設(shè)置發(fā)送的數(shù)據(jù)短消息是否需要存儲(chǔ)。有三個(gè)選項(xiàng)發(fā)送并存儲(chǔ)、僅發(fā) 送、僅存儲(chǔ)。列表信息用于設(shè)置列表信息的顯示有三個(gè)選項(xiàng)內(nèi)容、發(fā)件人、時(shí)間。自動(dòng)刪除用于設(shè)置在空間滿的情況下,是否自動(dòng)清除最早的信息。如沒有設(shè)置自動(dòng)刪除,在用戶進(jìn)去數(shù)據(jù)短消息應(yīng)用后,將提示用戶“收件箱將滿,請(qǐng)定時(shí)清理,否則將無法 收到數(shù)據(jù)短消息”。詳細(xì)的數(shù)據(jù)短消息收發(fā)過程如圖7所示。其中,在圖7中,信息提醒,可設(shè)置是否信息提醒,如提醒,在客戶收到數(shù)據(jù)短消息后,系統(tǒng)給客戶發(fā)送一條提醒短信。存儲(chǔ),用于設(shè) 置發(fā)送的數(shù)據(jù)短消息是否需要存儲(chǔ),有三個(gè)選項(xiàng)發(fā)送并存儲(chǔ)、僅發(fā)送、僅存儲(chǔ)。列表信息, 用于設(shè)置列表信息的現(xiàn)實(shí),有三個(gè)選項(xiàng)內(nèi)容、發(fā)件人、時(shí)間。自動(dòng)刪除,用于設(shè)置在空間允 許的情況下,是否自動(dòng)刪除最早的信息。
權(quán)利要求
一種智能SIM卡,其帶有微型操作系統(tǒng),所述智能SIM卡包括CPU、串行I/O、程序存儲(chǔ)器、數(shù)據(jù)存儲(chǔ)器、工作存儲(chǔ)器,在所述程序存儲(chǔ)器中存儲(chǔ)有操作系統(tǒng)以及應(yīng)用程序代碼和函數(shù),在所述數(shù)據(jù)存儲(chǔ)器中存儲(chǔ)有數(shù)據(jù)文件,在所述工作存儲(chǔ)器中存儲(chǔ)所述智能SIM卡與手機(jī)之間通信的I/O緩沖區(qū)及應(yīng)用程序、函數(shù)中用到的臨時(shí)變量,其特征在于,所述智能SIM卡還包括數(shù)據(jù)短消息收發(fā)器,將所述智能SIM卡用戶編寫的短消息進(jìn)行加密處理后,以數(shù)據(jù)短消息形式發(fā)送出去;或者接收方移動(dòng)終端接收到數(shù)據(jù)短消息后,將數(shù)據(jù)短消息透明傳遞給所述數(shù)據(jù)短消息收發(fā)器進(jìn)行校驗(yàn),并將校驗(yàn)通過后的所述數(shù)據(jù)短消息保存在所述智能SIM卡上的數(shù)據(jù)存儲(chǔ)器中;動(dòng)態(tài)密鑰更新器,定期從應(yīng)用服務(wù)器接收動(dòng)態(tài)密鑰;所述智能SIM卡成功接收所述動(dòng)態(tài)密鑰數(shù)據(jù)短消息后將原來的密鑰替換。
2.如權(quán)利要求1所述的智能SIM卡,其中所述數(shù)據(jù)短信接收器將加密處理后的數(shù)據(jù)短 消息發(fā)送給所述應(yīng)用服務(wù)器,所述應(yīng)用服務(wù)器接收該數(shù)據(jù)短消息后,首先驗(yàn)證該數(shù)據(jù)短消 息的合法性,如果合法,將數(shù)據(jù)重新組織處理后,以數(shù)據(jù)短消息形式發(fā)送給移動(dòng)終端,否則 放棄該數(shù)據(jù)短消息的發(fā)送。
3.如權(quán)利要求1所述的智能SIM卡,其中對(duì)于存在多對(duì)原始密鑰的系統(tǒng),可以同時(shí)接收 應(yīng)用服務(wù)器產(chǎn)生的多條所述下行命令,所述智能SIM卡成功接收密鑰數(shù)據(jù)后所述動(dòng)態(tài)密鑰 更新器用新接收到的動(dòng)態(tài)密鑰替換原來的密鑰。
4.如權(quán)利要求3所述的智能SIM卡,其中所述智能SIM卡處理完所述下行命令后向應(yīng) 用服務(wù)器上發(fā)更新密鑰是否成功的確認(rèn)信息,如果應(yīng)用服務(wù)器沒有收到該確認(rèn)信息,將會(huì) 再次向該用戶發(fā)送密鑰更新信息。
5.如權(quán)利要求1所述的智能SIM卡,其分層結(jié)構(gòu)包括如下各層Hardware層,包括CPU、協(xié)處理器、I/O、存儲(chǔ)器。Kernel層,存儲(chǔ)有GSM規(guī)范規(guī)定的基本命令,將Shell層命令轉(zhuǎn)換為對(duì)所述智能SIM卡 進(jìn)行的相應(yīng)操作;實(shí)現(xiàn)所述智能SIM卡與手機(jī)終端的數(shù)據(jù)通信;為Application層提供操 作所述存儲(chǔ)器的應(yīng)用程序接口;Shell層,完成GSM規(guī)范定義的主動(dòng)式命令;Application層,利用底層提供的應(yīng)用程序接口,在所述智能SIM卡上實(shí)現(xiàn)收發(fā)數(shù)據(jù)短 消息,Application是通過所述Shell層提供的主動(dòng)式命令進(jìn)行工作的。
6.一種通過智能SIM卡進(jìn)行數(shù)據(jù)短消息傳輸和處理的方法,包括如下步驟通過所述智能SIM卡上的數(shù)據(jù)短消息收發(fā)器將用戶編寫的短消息進(jìn)行加密處理,然后以數(shù)據(jù)短消息形式發(fā)送給應(yīng)用服務(wù)器;所述應(yīng)用服務(wù)器接收該數(shù)據(jù)短消息后,驗(yàn)證該數(shù)據(jù)短消息的合法性,如果合法,將數(shù)據(jù) 重新組織處理后,以數(shù)據(jù)短消息形式發(fā)送給接收方移動(dòng)終端;否則放棄該數(shù)據(jù)短消息的發(fā) 送;所述接收方移動(dòng)終端接收到所述數(shù)據(jù)短消息后,將所述數(shù)據(jù)短消息透明傳遞給所述接 收方移動(dòng)終端的智能SIM卡進(jìn)行校驗(yàn),并將校驗(yàn)通過后的數(shù)據(jù)短消息保存在所述智能SIM 卡上的數(shù)據(jù)存儲(chǔ)器中;
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)短消息傳輸和處理的方法,其中對(duì)數(shù)據(jù)短消息的加密處理是通過動(dòng)態(tài)密鑰進(jìn)行的,所述智能SIM卡通過其動(dòng)態(tài)密鑰更新器接收應(yīng)用服務(wù)器下行的 動(dòng)態(tài)密鑰數(shù)據(jù)短消息;所述智能SIM卡成功接收所述數(shù)據(jù)短消息后將替換原來的密鑰。
8.如權(quán)利要求7所述的數(shù)據(jù)短消息傳輸和處理的方法,其中所述智能SIM卡處理完所 述下行命令后向應(yīng)用服務(wù)器上發(fā)更新密鑰是否成功的確認(rèn)信息,如果應(yīng)用服務(wù)器沒有收到 該確認(rèn)信息,將會(huì)再次向該用戶發(fā)送密鑰更新信息。
全文摘要
本發(fā)明提供一種智能SIM卡以及在智能SIM卡上實(shí)現(xiàn)數(shù)據(jù)短消息傳送的方法。短消息經(jīng)智能SIM卡重新組織并加密處理后,以數(shù)據(jù)短消息形式發(fā)送出去,接收端接收到后,透明傳遞給智能SIM卡,智能SIM卡將信息加密存儲(chǔ)在指定的存儲(chǔ)區(qū)域,輸入密碼后,經(jīng)智能SIM卡解密處理后,才可閱讀。
文檔編號(hào)H04W12/02GK101820593SQ20091014237
公開日2010年9月1日 申請(qǐng)日期2009年6月4日 優(yōu)先權(quán)日2009年6月4日
發(fā)明者岳曙光 申請(qǐng)人:岳曙光