[0180]優(yōu)選地,所述加密和/或解密算法為標(biāo)準(zhǔn)的HASH算法,所述簽名為數(shù)字簽名,采用HASH+RSA加密方式。對(duì)所述智能終端中重要數(shù)據(jù)進(jìn)行的保護(hù)具體可以為:
[0181]1、數(shù)據(jù)加密性保護(hù):
[0182](1)非系統(tǒng)軟件不能訪問(wèn)/讀寫安全存儲(chǔ)區(qū)域,防止黑客非法探測(cè)了竊取flash中的數(shù)據(jù),也防止了非法軟件和未被授權(quán)的軟件運(yùn)行在智能終端。
[0183](2)安全存儲(chǔ)區(qū)域不能受系統(tǒng)升級(jí)的影響,需要確保在升級(jí)過(guò)程中數(shù)據(jù)不能修改和丟失,除了保留使用數(shù)據(jù)不被丟失,也有效的防止黑客替換軟件的有效手段。
[0184](3)合理劃分flash中的數(shù)據(jù),對(duì)于Flash中的敏感數(shù)據(jù),除了完整性保護(hù)外,還必須進(jìn)行內(nèi)容加密保護(hù),其他的數(shù)據(jù)分區(qū)如果不太影響系統(tǒng)性能的話,對(duì)于flash中所有的數(shù)據(jù)都進(jìn)行一定的安全處理,并且應(yīng)盡量加密存儲(chǔ)。這樣可以防止黑客非法的使用flash中的數(shù)據(jù)安全漏洞。
[0185]加密的算法具體可以為:
[0186](1)使用標(biāo)準(zhǔn)的加解密算法;
[0187](2) RSA算法不能使用CRT ;
[0188](3) RSA key的長(zhǎng)度至少大于1024 ;
[0189]⑷Hash使用SHA256或更強(qiáng);
[0190](5)Block操作的加密模式使用CBC。
[0191]2、數(shù)據(jù)抗損毀性,目的是防止數(shù)據(jù)被惡意的損毀和意外的丟失,系統(tǒng)軟件具體可以:
[0192](1) BootLoader,OTALoader,Stbdata,keyladder 和固定的參數(shù) 0ΤΡ 保護(hù),且BootLoader,OTALoader的簽名放在同一分區(qū)中;
[0193](2)無(wú)關(guān)緊要的分區(qū)遭到破壞,直接跳過(guò)往下執(zhí)行,比如logo分區(qū);
[0194](3) Flashheader分區(qū)被破壞,貝lj OTALoader直接跳過(guò)版本比較;
[0195](4) OTALoader中應(yīng)內(nèi)置備份頻點(diǎn),以防止OTAParam被破壞;
[0196](5)增加一種用戶強(qiáng)制進(jìn)入升級(jí)的手段,比如有前控板按鍵強(qiáng)制進(jìn)入升級(jí),以防止system SW可以簽名校驗(yàn)通過(guò)但跑不起來(lái),導(dǎo)致盒子不可用的情況。
[0197]系統(tǒng)軟件采用運(yùn)行時(shí)代碼段的保護(hù)具體方法為:
[0198](1)簽名校驗(yàn)RAM中的代碼段;
[0199](2)代碼段地址空間監(jiān)視或限制;
[0200](3)Boot會(huì)計(jì)算出app代碼段的校驗(yàn)值,然后app會(huì)定時(shí)根據(jù)這個(gè)校驗(yàn)值判斷app代碼段的完整性。
[0201]通過(guò)以上方法對(duì)智能終端中的數(shù)據(jù)進(jìn)行保護(hù),可以有效的進(jìn)行數(shù)據(jù)異常情況下的修復(fù)工作,當(dāng)數(shù)據(jù)異常的時(shí)候可以第一時(shí)間通過(guò)自身軟件保護(hù)機(jī)制進(jìn)行數(shù)據(jù)還原,使其能夠馬上正常的工作運(yùn)行。
[0202]優(yōu)選地,對(duì)所述智能終端中硬件進(jìn)行的安全保護(hù),具體為:
[0203]1、硬件電路的安全設(shè)計(jì),包括:
[0204](1)主芯片與FLASH的距離在2-3毫米以內(nèi),極小的間距,可以防止黑客使用探測(cè)設(shè)備竊取主芯片與FLASH通信的數(shù)據(jù);
[0205](2)主芯片、FLASH和DDR等主要元器件要求采用BGA封裝,采用了 BGA封裝的主要元器件可以讓芯片管腳不外露,從而讓黑客無(wú)法通過(guò)芯片管腳探測(cè)重要信息。
[0206](3)采用多層PCB版設(shè)計(jì),主要元器件(主芯片、FLASH和DDR等)的電路走線要求走內(nèi)層線路。通過(guò)隱藏走線的方式,讓黑客更加難以尋找到主要元器件的數(shù)據(jù)傳輸路徑,從而防止黑客可以竊取重要信息。
[0207]2、元器件的選取,采用高安芯片作為主芯片,支持高安啟動(dòng)、硬件加密、內(nèi)存加擾和限制性接口功能;采用支持0ΤΡ功能的FLASH,以保護(hù)重要數(shù)據(jù)的完整性;采用支持BGA封裝的DDR,以防止管腳外漏。
[0208]硬件電路的安全設(shè)計(jì),主要目的是保護(hù)主要元器件的數(shù)據(jù)不被非法的探測(cè)和篡改。對(duì)比起其他未作安全保護(hù)的硬件,例如FLASH管腳外露,DDR采用非BGA封裝走表層線路等,很容易被黑客利用起來(lái)非法的獲得我們的代碼已經(jīng)被篡改運(yùn)行其他非法軟件,這樣不但損害了運(yùn)營(yíng)商的利用,也導(dǎo)致不良信息的傳播等有害影響。
[0209]以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,包括: 步驟1:當(dāng)系統(tǒng)上電時(shí),讀取預(yù)存在Flash中的秘鑰0 ; 步驟2:采用所述秘鑰0對(duì)Boot進(jìn)行校驗(yàn),如果校驗(yàn)通過(guò),則啟動(dòng)Boot,并轉(zhuǎn)到步驟3 ;步驟3:從Boot中讀取秘鑰1,并采用秘鑰1對(duì)所要加載的文件系統(tǒng)進(jìn)行校驗(yàn),如果校驗(yàn)通過(guò),則啟動(dòng)文件系統(tǒng),并轉(zhuǎn)到步驟4 ; 步驟4:讀取預(yù)存在Flash中的秘鑰2,采用秘鑰2對(duì)要加載的應(yīng)用軟件進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后則啟動(dòng)所述應(yīng)用軟件。2.如權(quán)利要求1所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,所述步驟3讀取Boot中的秘鑰1,并對(duì)加載的文件系統(tǒng)進(jìn)行校驗(yàn),進(jìn)一步包括: 如果校驗(yàn)未通過(guò)則轉(zhuǎn)步驟1:系統(tǒng)上電,讀取預(yù)存在Flash中的秘鑰0。3.如權(quán)利要求1所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,所述步驟4讀取Flash中的秘鑰2,并對(duì)加載的應(yīng)用軟件進(jìn)行校驗(yàn),進(jìn)一步包括: 如果校驗(yàn)未通過(guò)則轉(zhuǎn)步驟1:系統(tǒng)上電,讀取預(yù)存在Flash中的秘鑰0。4.如權(quán)利要求1所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,所述步驟4讀取Flash中的秘鑰2,并對(duì)加載的應(yīng)用軟件進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后啟動(dòng)應(yīng)用軟件的步驟還包括: 啟動(dòng)所述應(yīng)用軟件,當(dāng)所述應(yīng)用軟件不能升級(jí)或選擇不升級(jí)時(shí),啟動(dòng)代碼模式; 讀取并解密應(yīng)用,校驗(yàn)簽名,校驗(yàn)通過(guò)后運(yùn)行所述應(yīng)用軟件。5.如權(quán)利要求4所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,啟動(dòng)所述應(yīng)用軟件,當(dāng)所述應(yīng)用軟件不能升級(jí)或選擇不升級(jí)時(shí),啟動(dòng)代碼模式的步驟還包括: 啟動(dòng)所述應(yīng)用程序,當(dāng)所述應(yīng)用軟件可以升級(jí)時(shí),啟動(dòng)升級(jí)模式; 讀取并解密所述應(yīng)用軟件,校驗(yàn)簽名,校驗(yàn)未通過(guò)則提示升級(jí)失敗,校驗(yàn)通過(guò)則運(yùn)行簽名; 校驗(yàn)簽名升級(jí)數(shù)據(jù),校驗(yàn)簽名升級(jí)數(shù)據(jù)通過(guò)則設(shè)置應(yīng)用軟件的啟動(dòng)代碼和/或重啟。6.如權(quán)利要求4所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,讀取并解密應(yīng)用,校驗(yàn)簽名,校驗(yàn)通過(guò)后運(yùn)行所述應(yīng)用軟件的步驟還包括: 校驗(yàn)簽名未通過(guò),啟動(dòng)強(qiáng)制升級(jí)模式; 讀取并解密所述應(yīng)用軟件,校驗(yàn)簽名,校驗(yàn)未通過(guò)則提示升級(jí)失敗,校驗(yàn)通過(guò)則運(yùn)行簽名; 校驗(yàn)簽名升級(jí)數(shù)據(jù),校驗(yàn)簽名升級(jí)數(shù)據(jù)通過(guò)則設(shè)置應(yīng)用軟件的啟動(dòng)代碼和/或重啟。7.如權(quán)利要求5或6所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,校驗(yàn)簽名升級(jí)數(shù)據(jù),校驗(yàn)通過(guò)則設(shè)置啟動(dòng)代碼和/或重啟的步驟還包括: 校驗(yàn)簽名升級(jí)數(shù)據(jù)未通過(guò)則繼續(xù)步驟:啟動(dòng)所述應(yīng)用軟件,當(dāng)所述應(yīng)用軟件不能升級(jí)或選擇不升級(jí)時(shí),啟動(dòng)代碼模式。8.如權(quán)利要求1所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,所述步驟3從Boot中讀取秘鑰1,并采用秘鑰1對(duì)所要加載的文件系統(tǒng)進(jìn)行校驗(yàn),如果校驗(yàn)通過(guò),則啟動(dòng)文件系統(tǒng)的步驟中進(jìn)一步包括,對(duì)所述文件系統(tǒng)進(jìn)行權(quán)利劃分和資源分配,包括配置root用戶的權(quán)限、配置系統(tǒng)用的資源,以及簡(jiǎn)化腳本文件。9.如權(quán)利要求1所述的智能終端的應(yīng)用軟件調(diào)用方法,其特征在于,所述步驟4讀取預(yù)存在Flash中的秘鑰2,采用秘鑰2對(duì)要加載的應(yīng)用軟件進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后則啟動(dòng)所述應(yīng)用軟件的步驟中進(jìn)一步包括,對(duì)所述應(yīng)用軟件進(jìn)行安全加固,包括去除應(yīng)用軟件的調(diào)試信息、打開安全編譯選項(xiàng)。10.如權(quán)利要求7所述智能終端的應(yīng)用軟件調(diào)用方法,其特征在于, 所述對(duì)應(yīng)用軟件進(jìn)行解密進(jìn)一步包括:采用標(biāo)準(zhǔn)的HASH算法進(jìn)行解密; 所述簽名為數(shù)字簽名,采用HASH+RSA加密方式。
【專利摘要】本發(fā)明涉及智能終端的安全領(lǐng)域,尤其涉及一種智能終端的應(yīng)用軟件調(diào)用方法,包括以下步驟:系統(tǒng)上電,讀取Flash中的秘鑰0;采用所述秘鑰0對(duì)Boot進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后,啟動(dòng)Boot;讀取Boot中的秘鑰1,并對(duì)加載的文件系統(tǒng)進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后則啟動(dòng)文件系統(tǒng);讀取Flash中的秘鑰2,并對(duì)加載的應(yīng)用軟件進(jìn)行校驗(yàn),校驗(yàn)通過(guò)后啟動(dòng)應(yīng)用軟件,本發(fā)明提供的智能終端的應(yīng)用軟件調(diào)用方法,在智能終端啟動(dòng)和/或升級(jí)的過(guò)程中,能夠正確運(yùn)行授權(quán)的合法軟件或重新加載授權(quán)程序,不容易遭受黑客的攻擊。
【IPC分類】G06F9/445, G06F21/64, G06F21/51, G06F21/60
【公開號(hào)】CN105354050
【申請(qǐng)?zhí)枴緾N201510639478
【發(fā)明人】丘裕嘉
【申請(qǐng)人】深圳市九洲電器有限公司
【公開日】2016年2月24日
【申請(qǐng)日】2015年9月30日