一種obdii讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法
【專利摘要】本發(fā)明提供了一種OBDII讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法,該設(shè)備包括:一主控MCU,及分別與主控MCU相連的數(shù)據(jù)存儲模塊、顯示按鍵模塊、診斷接口模塊和電源管理模塊,主控MCU包括應(yīng)用功能模塊和升級模塊;升級模塊包括一升級接口模塊,用于對外提供升級代碼和數(shù)據(jù)的接口,對內(nèi)提供更新數(shù)據(jù)和代碼的接口;應(yīng)用功能模塊用于實現(xiàn)OBDII讀碼卡的診斷應(yīng)用功能。本發(fā)通過對升級文件進(jìn)行安全驗證,不僅實現(xiàn)了對OBDII讀碼卡的無限次升級,保證了產(chǎn)品的及時更新,同時也防止了由于設(shè)備異常、用戶誤操作等導(dǎo)致升級異常問題,還可以有效防范第三方對升級過程的惡意破解和干擾,維護(hù)了產(chǎn)品的安全性和保密性。
【專利說明】一種OBDI I讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及汽車診斷【技術(shù)領(lǐng)域】,尤其涉及一種OBDII讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法。
【背景技術(shù)】
[0002]1994年美國汽車工程師協(xié)會(SAE)提出了第二代車輛隨車自診斷系統(tǒng)(0BDII:On-Board Diagnosis II)的標(biāo)準(zhǔn)規(guī)范,這一標(biāo)準(zhǔn)對OBD診斷系統(tǒng)的物理特性、硬件接口、應(yīng)用協(xié)議等都做出了相關(guān)規(guī)范,使得針對汽車OBD診斷的OBD讀碼卡行業(yè)得到良好的發(fā)展。雖然OBDII標(biāo)準(zhǔn)是一致的,但是OBD讀碼卡設(shè)備的應(yīng)用卻是各有不同,所要實現(xiàn)模式和應(yīng)用功能也不同,因此市場上出現(xiàn)了各種各樣的讀碼卡,行業(yè)的競爭也異常激烈。
[0003]OBD讀碼卡設(shè)備上市后要進(jìn)行功能的更新,以保證功能的不斷完善。以往的讀碼卡設(shè)備升級對于文件安全性考慮不足,容易導(dǎo)致不該升級的文件進(jìn)入了設(shè)備,造成系統(tǒng)混亂用戶體驗不佳;同時用于升級的文件及升級過程中沒有進(jìn)行有效安全防范,容易被第三方破解和捕獲到相關(guān)原始數(shù)據(jù),造成產(chǎn)品泄密,給產(chǎn)品開發(fā)者帶來不利。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的目的在于提供一種OBDII讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法,以解決升級過程中惡意破解和干擾,維護(hù)產(chǎn)品的安全性和保密性。
[0005]本發(fā)明的目的是通過以下技術(shù)方案實現(xiàn)的。
[0006]一種OBDII讀碼卡設(shè)備,包括:
[0007]一主控 MCU,
[0008]及分別與主控MCU相連的數(shù)據(jù)存儲模塊、顯示按鍵模塊、診斷接口模塊和電源管理模塊,
[0009]主控MCU包括應(yīng)用功能模塊和升級模塊;
[0010]升級模塊包括一升級接口模塊,用于對外提供升級代碼和數(shù)據(jù)的接口,對內(nèi)提供更新數(shù)據(jù)和代碼的接口;
[0011]應(yīng)用功能模塊用于實現(xiàn)OBDII讀碼卡的診斷應(yīng)用功能。
[0012]進(jìn)一步優(yōu)選的,所述升級模塊還用于對接收到的升級請求進(jìn)行安全驗證。
[0013]進(jìn)一步優(yōu)選的,所述升級接口模塊為串口、USB接口或CAN總線接口。
[0014]一種OBDII讀碼卡設(shè)備升級系統(tǒng),包括上述的OBDII讀碼卡設(shè)備;
[0015]及一升級設(shè)備,其通過升級接口模塊與升級模塊建立連接,用于向升級模塊發(fā)送升級請求。
[0016]一種OBDII讀碼卡設(shè)備升級方法,包括以下步驟:
[0017]a:升級設(shè)備與升級模塊建立連接并向升級模塊發(fā)送升級請求;
[0018]b:升級模塊對接收到的升級請求進(jìn)行安全驗證;
[0019]c:將待升級的數(shù)據(jù)文件進(jìn)行分割打包后傳輸?shù)缴壞K并分別對分包數(shù)據(jù)進(jìn)行驗證;
[0020]d:升級模塊對通過分包接收到的所有代碼和數(shù)據(jù)包進(jìn)行整合,對得到的升級文件按照預(yù)先規(guī)定的規(guī)則進(jìn)行驗證;
[0021]e:升級模塊將通過驗證的合法文件生效,完成升級功能。
[0022]進(jìn)一步優(yōu)選的,步驟b具體包括:
[0023]當(dāng)升級模塊接收到升級請求時,通過升級接口模塊反饋給升級設(shè)備,同時依據(jù)設(shè)備類型、序列號、MCU ID信息,計算出升級密碼口令,升級設(shè)備依據(jù)預(yù)先設(shè)定好的規(guī)則,回復(fù)升級口令,升級模塊驗證通過進(jìn)入下一步。
[0024]進(jìn)一步優(yōu)選的,所述升級接口模塊為串口、USB接口或CAN總線接口。
[0025]進(jìn)一步優(yōu)選的,所述升級設(shè)備為PC電腦。
[0026]本發(fā)明與現(xiàn)有技術(shù)相比,有益效果在于:本發(fā)明提供的OBDII讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法,通過對升級文件進(jìn)行安全驗證,不僅實現(xiàn)了對OBDII讀碼卡的無限次升級,保證了產(chǎn)品的及時更新,同時也防止了由于設(shè)備異常、用戶誤操作等導(dǎo)致升級異常問題,還可以有效防范第三方對升級過程的惡意破解和干擾,維護(hù)了產(chǎn)品的安全性和保密性。
【專利附圖】
【附圖說明】
[0027]圖1為本發(fā)明OBDII讀碼卡設(shè)備升級系統(tǒng)原理框圖;
[0028]圖2為本發(fā)明OBDII讀碼卡設(shè)備升級方法流程圖。
【具體實施方式】
[0029]為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0030]請參閱圖1所示,本發(fā)明OBDII讀碼卡設(shè)備升級系統(tǒng),包括:
[0031]一主控 MCU,
[0032]及分別與主控MCU相連的數(shù)據(jù)存儲模塊、顯示按鍵模塊、診斷接口模塊和電源管理模塊,
[0033]主控MCU(Micro-Controller-Unit)是讀碼卡設(shè)備的控制核心,其包括應(yīng)用功能模塊和升級模塊,
[0034]升級模塊包括一升級接口模塊,用于對外提供升級代碼和數(shù)據(jù)的接口,對內(nèi)提供更新數(shù)據(jù)和代碼的接口 ;升級接口模塊可以是串口、USB、CAN等主控MCU常用數(shù)據(jù)通訊接□。
[0035]應(yīng)用功能模塊用于實現(xiàn)OBDII讀碼卡的診斷應(yīng)用功能,這部分可以由具體的產(chǎn)品定義來實現(xiàn)各種不同的特色應(yīng)用。
[0036]一升級設(shè)備,其通過升級接口模塊與升級模塊建立連接,用于向升級模塊發(fā)送升級請求;
[0037]升級模塊還用于對接收到的升級請求進(jìn)行安全驗證,安全驗證包括了設(shè)備類型、設(shè)備序列號及升級密碼口令驗證。每個讀碼卡設(shè)備都有自己的設(shè)備類型、和自身的機身序號碼,當(dāng)升級模塊接收到升級請求時,通過升級接口模塊反饋給升級設(shè)備(例如PC),同時依據(jù)設(shè)備類型、序列號、MCU ID等信息,計算出升級密碼口令,升級設(shè)備依據(jù)預(yù)先設(shè)定好的規(guī)則,回復(fù)升級口令,升級模塊驗證通過進(jìn)入下一步,同時確定下一步中數(shù)據(jù)包安全格式類型。
[0038]主控MCU將經(jīng)過升級模塊安全性驗證后升級文件數(shù)據(jù)包寫入MCU中的應(yīng)用功能模塊及數(shù)據(jù)存儲模塊中。
[0039]數(shù)據(jù)存儲模塊用于存儲用戶功能代碼,其主要包含了文本庫、字體庫、應(yīng)用代碼所需的各種數(shù)據(jù)庫。
[0040]請參閱圖2所示,本發(fā)明OBDII讀碼卡設(shè)備升級方法,包括:
[0041]步驟201:升級設(shè)備與升級模塊建立連接并向升級模塊發(fā)送升級請求;
[0042]步驟202:升級模塊對接收到的升級請求進(jìn)行安全驗證;
[0043]具體地,安全驗證包括了設(shè)備類型、設(shè)備序列號及升級密碼口令驗證。每個讀碼卡設(shè)備都有自己的設(shè)備類型、和自身的機身序號碼,當(dāng)升級模塊接收到升級請求時,通過升級接口模塊反饋給升級設(shè)備(例如PC),同時依據(jù)設(shè)備類型、序列號、MCU ID等信息,計算出升級密碼口令,升級設(shè)備依據(jù)預(yù)先設(shè)定好的規(guī)則,回復(fù)升級口令,升級模塊驗證通過進(jìn)入下一步,同時確定下一步中數(shù)據(jù)包安全格式類型。
[0044]步驟203:將待升級的數(shù)據(jù)文件進(jìn)行分割打包后傳輸?shù)缴壞K并分別對分包數(shù)據(jù)進(jìn)行驗證;
[0045]具體地,由于升級的代碼和數(shù)據(jù)文件較大,不可能一次性進(jìn)行傳輸,于是將待升級的數(shù)據(jù)文件進(jìn)行分割打包,每次升級設(shè)備(例如PC)與讀碼卡升級模塊間傳輸一包數(shù)據(jù),每一包都有特定的規(guī)則,包中的數(shù)據(jù)進(jìn)行特定的運算及插入隨機的冗余數(shù)據(jù)。
[0046]例如將原始文件分為若干數(shù)據(jù)塊,每一塊數(shù)據(jù)由若干字節(jié)組成,生成的數(shù)據(jù)塊可分為有效數(shù)據(jù)和冗余數(shù)據(jù)兩部分。例如生成數(shù)據(jù)塊為64字節(jié),60個字節(jié)是有效數(shù)據(jù)E1-E60,最后四字節(jié)是冗余碼C1-C4,可用于數(shù)據(jù)校驗。60字節(jié)數(shù)據(jù)是由原始數(shù)據(jù)經(jīng)過運算得到,最后4個字節(jié)數(shù)據(jù)是和前面數(shù)據(jù)相關(guān)聯(lián)的冗余碼。有效數(shù)據(jù)和冗余碼生成規(guī)則可以是如下舉例:
[0047]一個數(shù)據(jù)塊的原始數(shù)據(jù)為Rl,R2,R3...R60 ;進(jìn)過運算生成的有效數(shù)據(jù)為El,E2,E3...E60 ;E和R的關(guān)系為:
[0048]El=Rl, En=Rn+En-1, (l〈n〈=64);即:
[0049]El=Rl
[0050]E2=R2+E1
[0051]E3=R3+E2
[0052]...[0053]E64=R64+E63
[0054]C1=E1+E5+E9+...+E57
[0055]C2=E2+E6+E10+...+E58
[0056]C3=E3+E7+E11+...+E59
[0057]C4=E4+E8+E12+...+E60
[0058]通過這樣的運算就可以從原始數(shù)據(jù)R1-R60得到有效數(shù)據(jù)E1-E60及其冗余數(shù)據(jù)C1-C4 ;接收設(shè)備收到E和C可以通過反向運算得出R,再將若干個數(shù)據(jù)塊中的R整合就可以得到整個原始文件了。例如口令里面代表隨冗余數(shù)據(jù)類型、有效數(shù)據(jù)計算方法等。
[0059]在實際使用過程中可以依據(jù)實際情況來更改數(shù)據(jù)塊的大小,以及有效數(shù)據(jù)和冗余數(shù)據(jù)的計算規(guī)則,來達(dá)到數(shù)據(jù)加密保護(hù)和驗算的效果。而這些規(guī)則又和上一步升級模式進(jìn)入有關(guān),在安全口令里面包含了相關(guān)信息。
[0060]步驟204:升級模塊對通過分包接收到的所有代碼和數(shù)據(jù)包進(jìn)行整合,對得到的升級文件按照預(yù)先規(guī)定的規(guī)則進(jìn)行驗證。
[0061]具體地,升級模塊分包接收待升級文件內(nèi)容,直到接收到所有的數(shù)據(jù)包。用于升級的文件本身包含有文件有效性驗證信息,這些驗證信息由用于升級的代碼、數(shù)據(jù)、設(shè)備信息等綜合生成,并存在與升級文件的特定位置。
[0062]步驟205:升級模塊將通過驗證的合法文件生效,完成升級功能。
[0063]本發(fā)明提供的OBDII讀碼卡設(shè)備、設(shè)備升級系統(tǒng)及方法,通過對升級文件進(jìn)行安全驗證,不僅實現(xiàn)了對OBDII讀碼卡的無限次升級,保證了產(chǎn)品的及時更新,同時也防止了由于設(shè)備異常、用戶誤操作等導(dǎo)致升級異常問題,還可以有效防范第三方對升級過程的惡意破解和干擾,維護(hù)了產(chǎn)品的安全性和保密性。
[0064]以上所述僅為本發(fā)明的較佳實施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種OBDII讀碼卡設(shè)備,其特征在于,包括: 一主控MCU, 及分別與主控MCU相連的數(shù)據(jù)存儲模塊、顯示按鍵模塊、診斷接口模塊和電源管理模塊, 主控MCU包括應(yīng)用功能模塊和升級模塊; 升級模塊包括一升級接口模塊,用于對外提供升級代碼和數(shù)據(jù)的接口,對內(nèi)提供更新數(shù)據(jù)和代碼的接口; 應(yīng)用功能模塊用于實現(xiàn)OBDII讀碼卡的診斷應(yīng)用功能。
2.如權(quán)利要求1所述的OBDII讀碼卡設(shè)備,其特征在于,所述升級模塊還用于對接收到的升級請求進(jìn)行安全驗證。
3.如權(quán)利要求1所述的OBDII讀碼卡設(shè)備,其特征在于,所述升級接口模塊為串口、USB接口或CAN總線接口。
4.一種OBDII讀碼卡設(shè)備升級系統(tǒng),其特征在于,包括如權(quán)利要求1-3任一項所述的OBDII讀碼卡設(shè)備; 及一升級設(shè)備,其通過升級接口模塊與升級模塊建立連接,用于向升級模塊發(fā)送升級請求。
5.一種OBDII讀碼卡設(shè)備升級方法,其特征在于,包括以下步驟: a:升級設(shè)備與升級模塊建立連接并向升級模塊發(fā)送升級請求; b:升級模塊對接收到的升級請求進(jìn)行安全驗證; c:將待升級的數(shù)據(jù)文件進(jìn)行分割打包后傳輸?shù)缴壞K并分別對分包數(shù)據(jù)進(jìn)行驗證; d:升級模塊對通過分包接收到的所有代碼和數(shù)據(jù)包進(jìn)行整合,對得到的升級文件按照預(yù)先規(guī)定的規(guī)則進(jìn)行驗證; e:升級模塊將通過驗證的合法文件生效,完成升級功能。
6.如權(quán)利要求5所述的OBDII讀碼卡設(shè)備升級方法,其特征在于,步驟b具體包括: 當(dāng)升級模塊接收到升級請求時,通過升級接口模塊反饋給升級設(shè)備,同時依據(jù)設(shè)備類型、序列號、MCU ID信息,計算出升級密碼口令,升級設(shè)備依據(jù)預(yù)先設(shè)定好的規(guī)則,回復(fù)升級口令,升級模塊驗證通過進(jìn)入下一步。
7.如權(quán)利要求5所述的OBDII讀碼卡設(shè)備升級方法,其特征在于,所述升級接口模塊為串口、USB接口或CAN總線接口。
8.如權(quán)利要求5所述的OBDII讀碼卡設(shè)備升級方法,其特征在于,所述升級設(shè)備為PC電腦。
【文檔編號】G06F13/38GK103577233SQ201310545831
【公開日】2014年2月12日 申請日期:2013年11月7日 優(yōu)先權(quán)日:2013年11月7日
【發(fā)明者】劉均, 張明虎 申請人:深圳市元征科技股份有限公司