本文是一篇信息安全論文,論述了關(guān)于提高稅控收款機(jī)的信息安全性的設(shè)計(jì)方法,信息類論文發(fā)表期刊推薦《信息技術(shù)》是由中國(guó)電子信息產(chǎn)業(yè)發(fā)展研究院、黑龍江省信用信息中心主辦;主管部門黑龍江省信息產(chǎn)業(yè)廳;由黑龍江移動(dòng)通信公司、黑龍江省誠(chéng)信建設(shè)促進(jìn)會(huì)、黑龍江省軟件行業(yè)協(xié)會(huì)、黑龍江省農(nóng)業(yè)信息中心、黑龍江省農(nóng)墾通信有限公司等單位協(xié)辦。
摘要:為防止惡意攻擊,文章從稅控信息加密、稅控軟件系統(tǒng)在線升級(jí)、異常情況處理等方面闡述了進(jìn)一步提高稅控收款機(jī)安全性的設(shè)計(jì)方法
關(guān)鍵詞:稅控收款機(jī),信息加密,軟件在線升級(jí),異常情況處理
稅控系統(tǒng)由于涉及信息的敏感性,自然成為黑客的攻擊目標(biāo)。為防止惡意攻擊,并保證稅控收款機(jī)在諸如掉電、異常拔卡等異常事件發(fā)生時(shí)的信息安全,根據(jù)信息技術(shù)安全性評(píng)估準(zhǔn)則(GB/T18336—2001)的要求,稅控收款機(jī)必須達(dá)到以下信息安全目標(biāo):應(yīng)用軟件的維護(hù)、升級(jí)應(yīng)嚴(yán)格授權(quán)管理;稅控收款機(jī)應(yīng)保證存儲(chǔ)數(shù)據(jù)的完整性;當(dāng)異常事件發(fā)生時(shí),應(yīng)保證存儲(chǔ)數(shù)據(jù)的一致性;能夠記錄任何對(duì)稅控收款機(jī)的訪問(wèn)、操作;稅控收款機(jī)保留的所有接口必須受控,不允許留有通用調(diào)試接口,不允許留有隱蔽通道;對(duì)于嵌入式操作系統(tǒng),應(yīng)只提供與稅控收款機(jī)業(yè)務(wù)相關(guān)的功能;確保稅控IC卡與稅控收款機(jī)間的數(shù)據(jù)一致性。鑒于篇幅所限,且有關(guān)稅控收款機(jī)掉電保護(hù)方面的信息安全設(shè)計(jì)之前已撰文論述,以下只從稅控信息加密、稅控軟件系統(tǒng)在線升級(jí)、異常情況處理等方面闡述進(jìn)一步提高稅控收款機(jī)的信息安全性的設(shè)計(jì)方法。
l稅控信息加密
為防止黑客攻擊稅控收款機(jī)的信息系統(tǒng),稅控收款機(jī)采用MD5加密算法進(jìn)行數(shù)據(jù)加密,為稅控收款機(jī)的信息安全提供了多重保護(hù)。
1.1MD5加密算法簡(jiǎn)介
MD5算法是一種著名的Hash算法。MD5的全稱是Message-DigestAlgorithm5(信息一摘要算法),在20世紀(jì)90年代初由MitLaboratoryforComputerScience和RsaDataSecurityInc的Ronald1.Rivest開(kāi)發(fā),經(jīng)MD2、MD3和MD4發(fā)展而來(lái),如今它在技術(shù)上更加成熟,安全性也更高。Hash算法(也稱雜湊函數(shù)或雜湊算法)是把任意長(zhǎng)的輸入消息串變化成固定長(zhǎng)的輸出串的一種算法。這個(gè)輸出串稱為該消息的雜湊值。一個(gè)安全的雜湊函數(shù)應(yīng)該至少滿足以下四個(gè)條件:
(1)輸入長(zhǎng)度是任意的;
(2)輸出長(zhǎng)度是固定的;
(3)對(duì)每一個(gè)給定的輸入,計(jì)算輸出即雜湊值是很容易的;
(4)給定雜湊函數(shù)的描述,找到兩個(gè)不同的輸入消息雜湊到同一個(gè)值是計(jì)算上可行的,或給定雜湊函數(shù)的描述和一個(gè)隨機(jī)選擇的消息,找到另一個(gè)與該消息不同的消息,使得它們雜湊到同一個(gè)值是計(jì)算上不可行的,這樣就保證了加密數(shù)據(jù)的安全。
1.2稅務(wù)申報(bào)數(shù)據(jù)加密
本機(jī)軟件系統(tǒng)的稅控密鑰(包括主控密鑰、數(shù)據(jù)加密解密密鑰、稅控?cái)?shù)據(jù)鑒別密鑰、發(fā)票管理密鑰、外部認(rèn)證密鑰等)、軟件升級(jí)、電子簽名、通訊口令等都采用了MD5加密方式。數(shù)據(jù)加密流程如圖1所示:
本機(jī)軟件系統(tǒng)存放和校驗(yàn)經(jīng)過(guò)加密的數(shù)據(jù),防止因?yàn)榭诹顏G失而給用戶造成不必要的損失。稅控收款機(jī)內(nèi)置大容量稅控存儲(chǔ)器,保存每筆交易記錄。每筆交易記錄包含的信息有;發(fā)票流水號(hào)、開(kāi)票時(shí)間、交易金額、稅額、稅種、稅率、記錄號(hào)等。這些信息應(yīng)以MD5密文方式存儲(chǔ),防止篡改數(shù)據(jù)。
稅控收款機(jī)開(kāi)出的累計(jì)發(fā)票或退票金額以及近期稅務(wù)申報(bào)數(shù)據(jù)同時(shí)保存在稅控IC卡中。稅控IC卡中累計(jì)發(fā)票金額和稅務(wù)申報(bào)數(shù)據(jù)應(yīng)與稅控存儲(chǔ)器保存的數(shù)據(jù)一致,這樣可以有效地防止篡改、刪除記錄。
2稅控系統(tǒng)軟件在線升級(jí)的信息安全設(shè)計(jì)
為了確保嵌入式系統(tǒng)軟件在線升級(jí)的安全性,系統(tǒng)采用地址向量跳轉(zhuǎn)的方式來(lái)指向不同的系統(tǒng)軟件程序。所有系統(tǒng)程序的人口地址保存在NandFlash的一個(gè)指針向量表中,這個(gè)向量表正常運(yùn)行期間不能改變且地址固定。
系統(tǒng)上電后,通過(guò)BootLoader建立系統(tǒng)的運(yùn)行環(huán)境,接著到指針向量表中讀取向量指針;然后跳轉(zhuǎn)到向量指針?biāo)傅牡刂纷x取數(shù)據(jù),即將NandFlash中的系統(tǒng)程序復(fù)制到Sdram中;BootLoader把控制權(quán)交給操作系統(tǒng),系統(tǒng)開(kāi)始運(yùn)行;然后嵌入式系統(tǒng)根據(jù)網(wǎng)絡(luò)數(shù)據(jù)來(lái)決定是否升級(jí);軟件升級(jí)執(zhí)行完畢后,修改指針向量表中的向量指針,使之指向新的系統(tǒng)模塊。
本機(jī)稅控軟件的在線升級(jí),應(yīng)該遵循《XX信息軟件產(chǎn)業(yè)集團(tuán)有限公司一稅控事業(yè)部一軟硬件發(fā)布和升級(jí)細(xì)則》。
研發(fā)部開(kāi)發(fā)的硬件產(chǎn)品,經(jīng)過(guò)ESD和EMI等測(cè)試合格以后,形成正式版本,交由信息安全管理辦公室登記備案。經(jīng)過(guò)測(cè)試和安全評(píng)估的新版軟件,連同信息安全內(nèi)部測(cè)試和評(píng)估報(bào)告,一同提交信息安全管理辦公室,經(jīng)過(guò)確認(rèn)以后,形成本稅控收款機(jī)嵌入式軟件的正式版本。信息安全管理辦公室再進(jìn)行加密處理
(如圖2,軟件在線升級(jí)加密流程),并在公司產(chǎn)品庫(kù)里登記,登記完成的新版軟件才可以通過(guò)各種媒介向工廠和產(chǎn)品代理商發(fā)布。信息安全管理辦公室應(yīng)確保將與新版本配套的軟硬件下發(fā)給工廠安裝及生產(chǎn)。本機(jī)軟硬件版本號(hào)為18位ASCII碼,包括:1/0(1為硬件,0為軟件)+公司代碼(3位)+公司產(chǎn)品型號(hào)代碼(3位)+此產(chǎn)品型號(hào)的版本(2位)+“一”+軟硬件發(fā)布的日期(8位,YYYYMMDD)。本公司所有軟硬件維護(hù)人員,包經(jīng)過(guò)培訓(xùn)后的代理商的維護(hù)人員都在公司數(shù)據(jù)庫(kù)中注冊(cè),這些在冊(cè)人員只有憑借其注冊(cè)密碼才能獲取公司的維護(hù)許可派工單。維護(hù)人員只有使用本公司開(kāi)發(fā)的專用下載軟件才能對(duì)稅控收款機(jī)進(jìn)行如升級(jí)程序等操作。下載升級(jí)稅控軟件工作流程如圖3所示。
在圖3的第2步中,工作內(nèi)容是可選擇的,如升級(jí)軟件程序等;工作密碼就是派工單上面的校驗(yàn)碼。在圖3的第3步中,“下載軟件”可根據(jù)其選擇的工作內(nèi)容,開(kāi)放不同的工作程序供其操作。下載軟件與稅款收款機(jī)中的稅控專用BIOS通訊必須使用加密校驗(yàn)機(jī)制,防止非法下載。通訊加密校驗(yàn)機(jī)制流程如圖4所示。
下載軟件應(yīng)該記錄所有的通訊記錄,形成日志文件。稅控收款機(jī)中的稅控B10S也應(yīng)該記錄部分重要的通訊記錄,如升級(jí)程序等,形成日志文件。記錄的內(nèi)容應(yīng)該包括:下載人員ID和下載時(shí)問(wèn)等。這樣做到每一次下載都有記錄可循、有人可查,確保下載升級(jí)軟件過(guò)程中的信息安全。
3異常拔卡情況下信息安全保護(hù)的硬件及軟件設(shè)計(jì)
3.1異常拔卡保護(hù)設(shè)計(jì)需求
如果在與IC卡交換數(shù)據(jù)的時(shí)候,IC卡被拔出,將會(huì)導(dǎo)致通訊異常,導(dǎo)致稅控?cái)?shù)據(jù)出錯(cuò)。所以在稅控收款機(jī)設(shè)計(jì)過(guò)程中,應(yīng)該充分考慮這種異常情況,特別針對(duì)用戶卡,因?yàn)槠涓菀妆话纬觥?/p>
3.2異常拔卡保護(hù)的硬件設(shè)計(jì)
(1)稅控卡拔卡保護(hù)的硬件設(shè)計(jì)。稅控卡采用PLUG—IN型IC卡卡座,此卡座無(wú)插卡檢測(cè)功能?梢栽诳ㄗ腺N“鉛封”,防止人為地惡意拔卡操作,保證稅控?cái)?shù)據(jù)的完整。
(2)用戶卡拔卡保護(hù)的硬件設(shè)計(jì)。用戶卡采用ID一1型IC卡卡座,其引腳CRD_DET能夠檢測(cè)IC卡是否插入,將其接入CPU的一個(gè)I/0口,卡座內(nèi)無(wú)卡的時(shí)候,此引腳為高電平;卡插入后,產(chǎn)生低電平。通訊查詢CPU此I/0口狀態(tài),可以得知IC卡是否存在。
3.3異常拔卡保護(hù)的軟件實(shí)現(xiàn)
拔卡保護(hù)的軟件實(shí)現(xiàn)主要考慮用戶卡被拔出的異常情況。與用戶卡通訊屬于可逆轉(zhuǎn)事件,異常拔卡軟件保護(hù)的基本流程如圖5所示:
4其他異常情況下的信息安全保護(hù)的軟件設(shè)計(jì)
其他異常情況是指在與卡進(jìn)行稅控?cái)?shù)據(jù)交換的時(shí)候出現(xiàn)的除系統(tǒng)異常掉電和異常拔卡以外的異常情況,如卡錯(cuò)誤、RAM錯(cuò)誤等異常情況。其他異常情況通常是由不可預(yù)測(cè)的硬件錯(cuò)誤導(dǎo)致。通常只能在軟件設(shè)計(jì)上采用容錯(cuò)設(shè)計(jì),與系統(tǒng)硬件設(shè)計(jì)無(wú)關(guān)。其他異常情況的軟件處理從兩方面考慮:不可逆轉(zhuǎn)事件和可逆轉(zhuǎn)事件。
4.1不可逆轉(zhuǎn)事件的軟件處理
對(duì)于不可逆轉(zhuǎn)事件只能執(zhí)行一次,如果出現(xiàn)異常后重新再執(zhí)行一次,則可能導(dǎo)致數(shù)據(jù)出錯(cuò),所以需要先把數(shù)據(jù)備份,再執(zhí)行不可逆轉(zhuǎn)事件。不可逆轉(zhuǎn)事件軟件執(zhí)行流程如圖6所示。
Step作為一個(gè)全局變量,保存在存儲(chǔ)器中,保證了步驟信息不會(huì)丟失,掉電重啟后不會(huì)重復(fù)已完成的步驟。如果不可逆操作過(guò)程出現(xiàn)異常,不能未經(jīng)任何處理繼續(xù)執(zhí)行下面的步驟,否則數(shù)據(jù)A可能已經(jīng)被更改,成為臟數(shù)據(jù)。等異常消除后,重新執(zhí)行該步驟,因Step不變,則臟數(shù)據(jù)A不會(huì)影響數(shù)據(jù)B,數(shù)據(jù)A將會(huì)被數(shù)據(jù)B還原為一塊干凈的數(shù)據(jù)后再執(zhí)行此操作,那么執(zhí)行結(jié)果將不會(huì)發(fā)生錯(cuò)誤。
4.2可逆轉(zhuǎn)事件的軟件處理
在可逆轉(zhuǎn)事件處理過(guò)程中出現(xiàn)異常,不會(huì)導(dǎo)致數(shù)據(jù)紊亂。可以等異常消除后,再執(zhí)行一遍,軟件無(wú)需作過(guò)多的處理,只需對(duì)異常錯(cuò)誤作簡(jiǎn)單提示即可。
5結(jié)束語(yǔ)
稅控收款機(jī)的信息安全性的設(shè)計(jì)是一項(xiàng)較為復(fù)雜的系統(tǒng)工程,隨著黑客攻擊手段的不斷翻新,信息安全設(shè)計(jì)人員應(yīng)不斷提高加密軟件的破解難度。
轉(zhuǎn)載請(qǐng)注明來(lái)自:http://www.jinnzone.com/xinxianqlw/24581.html