1.一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述方法為:POS機(jī)上傳設(shè)備唯一信息到后臺(tái)服務(wù)器;
所述后臺(tái)服務(wù)器根據(jù)接收的設(shè)備唯一信息,生成相應(yīng)的固件鏡像,做到一機(jī)一固件;不同POS機(jī)間的固件不通用,無法執(zhí)行;所述固件鏡像通過鏈接腳本設(shè)定幾個(gè)地址預(yù)留數(shù)據(jù)存儲(chǔ)的空間,該空間能保存程序運(yùn)行用的參數(shù)、標(biāo)記或者程序運(yùn)行需要的數(shù)據(jù);所述程序運(yùn)行時(shí)對(duì)所述設(shè)定的地址上的數(shù)據(jù)做校驗(yàn),程序內(nèi)需要在多個(gè)不同的地方對(duì)不同地址上的數(shù)據(jù)做校驗(yàn);程序正常運(yùn)行所需的一些參數(shù),要從所述設(shè)定的地址上來獲取,該些參數(shù)是以加密方式來存儲(chǔ);
所述固件鏡像中應(yīng)在多個(gè)執(zhí)行分支,多個(gè)點(diǎn)上進(jìn)行安全校驗(yàn)的操作;
所述POS即進(jìn)行固件升級(jí)時(shí),POS機(jī)燒寫的時(shí)候要聯(lián)網(wǎng)燒寫,不能本地?zé)龑?,POS機(jī)通過USB或者是串口連接到PC客戶端,PC客戶端通過網(wǎng)絡(luò)連接到后臺(tái)服務(wù)器,后臺(tái)服務(wù)器將固件鏡像傳遞下去進(jìn)行燒寫,從而做到一機(jī)一固件的升級(jí)。
2.根據(jù)權(quán)利要求1所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述設(shè)備唯一信息包括CPUID,WIFI或BT芯片的MAC地址,以及無線GSM模塊的IMEI號(hào)等。
3.根據(jù)權(quán)利要求1所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述POS機(jī)、PC客戶端、后臺(tái)服務(wù)器之間有通訊加密、身份驗(yàn)證機(jī)制;使用加密狗來限制和保護(hù)PC客戶端的執(zhí)行。
4.根據(jù)權(quán)利要求1所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述后臺(tái)服務(wù)器對(duì)燒寫記錄做保存,方便后續(xù)的跟蹤和處理。
5.根據(jù)權(quán)利要求2所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述后臺(tái)服務(wù)程序負(fù)責(zé)給每個(gè)設(shè)備生成一個(gè)能運(yùn)行的固件鏡像,該固件鏡像為二進(jìn)制程序;燒寫固件的時(shí)候后臺(tái)服務(wù)器會(huì)收到設(shè)備上送上來的CPUID,WIFI或BT芯片的MAC地址,以及無線GSM模塊的IMEI號(hào)信息,后臺(tái)服務(wù)程序以這些設(shè)備唯一標(biāo)識(shí)信息為依據(jù)生成對(duì)應(yīng)的數(shù)據(jù)標(biāo)識(shí),以及作為密鑰來加密數(shù)據(jù),并把這些內(nèi)容覆蓋到原始二進(jìn)制文件的指定位置上。
6.根據(jù)權(quán)利要求1所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述固件鏡像進(jìn)一步具體為:所述固件鏡像通過編譯器的編譯選項(xiàng)或是鏈接腳本的指令,在固件鏡像的特定地址上預(yù)留指定大小的數(shù)據(jù)空間;具體的數(shù)據(jù)由后臺(tái)服務(wù)程序?qū)懭?,程序的結(jié)構(gòu)中設(shè)置有“代碼”、“預(yù)留空間”、“數(shù)據(jù)”的字段;下載的時(shí)候后臺(tái)服務(wù)程序需要根據(jù)接收到的CPUID、MAC地址、IMEI號(hào)信息生成最終的二進(jìn)制文件即為固件鏡像;程序里面需要按照相同方式的校驗(yàn)指定地址上的數(shù)據(jù),或者是從指定的地址上解密數(shù)據(jù)。
7.根據(jù)權(quán)利要求6所述的一種安全的金融POS機(jī)固件升級(jí)方法,其特征在于:所述程序結(jié)構(gòu)如下:代碼1+預(yù)留空間1+代碼2+預(yù)留空間2+代碼3+數(shù)據(jù)1+預(yù)留空間3+數(shù)據(jù)2+預(yù)留空間4,或者代碼1+預(yù)留空間1+代碼2+預(yù)留空間2+代碼3+預(yù)留空間3+數(shù)據(jù)1+數(shù)據(jù)2+預(yù)留空間4;其中預(yù)留空間的個(gè)數(shù),位置、空間的大小能根據(jù)需求進(jìn)行自由定義;下載的時(shí)候后臺(tái)服務(wù)程序需要根據(jù)接收到的CPUID、MAC地址、IMEI號(hào)信息生成最終的二進(jìn)制文件即為固件鏡像;把CPUID和IMEI號(hào)做異或運(yùn)算,然后把結(jié)果寫入預(yù)留空間1位置;把CPUID取反寫入預(yù)留空間2位置;把CPUID加一個(gè)固定數(shù)據(jù)作為密鑰把數(shù)據(jù)加密寫入預(yù)留空間3位置;把CPUID加另外一個(gè)固定數(shù)據(jù)做為密鑰把數(shù)據(jù)加密寫入預(yù)留空間4位置,所述預(yù)留空間中數(shù)據(jù)的填充機(jī)制也能進(jìn)行自由設(shè)定;程序里面需要按照相同方式的校驗(yàn)指定地址上的數(shù)據(jù),或者是從指定的地址上解密數(shù)據(jù)。