IC卡智能燃?xì)獗碇?軟件必須接收和處理多種CPU卡:用戶購氣卡、檢查卡、廠家生產(chǎn)測試卡(如閥門檢測卡等6種)、修改主密鑰卡等。每種CPU卡的目錄文件結(jié)構(gòu)和認(rèn)證訪問方式不盡相同,以使用用戶購氣卡購氣后在燃?xì)獗砩喜蹇槔?說明軟件認(rèn)證過程:
(1)從卡的可讀二進(jìn)制文件中識別出卡的類型,即用戶購氣卡。
(2)燃?xì)獗韽挠脩艨ㄖ凶x取卡序列號和用戶號,并比較用戶號是否與SAM中存儲的一致,不一致則拒絕讀卡。
(3)若用戶號一致,IC卡智能燃?xì)獗韺⒖ㄐ蛄刑査椭罶AM模塊。SAM模塊對卡序列號進(jìn)行加密,并生成相應(yīng)的內(nèi)部認(rèn)證密鑰。
(4)燃?xì)獗碛脙?nèi)部認(rèn)證密鑰對用戶卡做內(nèi)部認(rèn)證。
(5)燃?xì)獗碛脷獗硗獠空J(rèn)證密鑰對用戶卡做外部認(rèn)證。
(6)燃?xì)獗韽挠脩艨ㄙ彋鈶?yīng)用二進(jìn)制文件中讀取購氣數(shù)據(jù),判斷其完整性,同時判斷購氣次數(shù)是否與IC卡智能燃?xì)獗韮?nèi)一致。若不一致則向IC卡燃?xì)獗矸祵憫?yīng)用二進(jìn)制文件(返寫數(shù)據(jù))退出;若判斷一致,則進(jìn)入(7)。
(7)由IC卡智能燃?xì)獗碛脷饬客獠空J(rèn)證密鑰對SAM模塊進(jìn)行外部認(rèn)證,若一致則將購氣量及狀態(tài)數(shù)據(jù)存入SAM模塊,并返寫數(shù)據(jù)退出,完成購氣操作;否則只返寫數(shù)據(jù)退出。