CN102012978B - Iso文件安全升级的方法及系统 - Google Patents

Iso文件安全升级的方法及系统 Download PDF

Info

Publication number
CN102012978B
CN102012978B CN201010214141A CN201010214141A CN102012978B CN 102012978 B CN102012978 B CN 102012978B CN 201010214141 A CN201010214141 A CN 201010214141A CN 201010214141 A CN201010214141 A CN 201010214141A CN 102012978 B CN102012978 B CN 102012978B
Authority
CN
China
Prior art keywords
iso
upgrading
upgrade
instruction
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010214141A
Other languages
English (en)
Other versions
CN102012978A (zh
Inventor
陆舟
于华章
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Feitian Technologies Co Ltd
Beijing Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201010214141A priority Critical patent/CN102012978B/zh
Publication of CN102012978A publication Critical patent/CN102012978A/zh
Application granted granted Critical
Publication of CN102012978B publication Critical patent/CN102012978B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明公开了一种ISO文件安全升级的方法及系统,属于信息安全领域。方法包括:智能密钥装置等待接收ISO升级初始化指令,并通过验证后将ISO文件标志置为无效,同时存储验证信息设置算法初始化,并在等待接收ISO升级指令后,判断上述指令是ISO升级数据指令还是ISO升级完毕指令,为ISO升级数据指令时,计算ISO数据的校验值,并作为下一次计算的初始值,为ISO升级完毕指令时,计算ISO数据最终校验值,比较所述计算得到的ISO数据最终校验值与其存储的验证信息中的比对值是否一致,是,将ISO文件标志置为有效,安全升级,否,报错。

Description

ISO文件安全升级的方法及系统
技术领域:
本发明涉及信息安全领域,尤其涉及一种ISO文件安全升级的方法及系统。
背景技术:
信息安全设备是一种带有处理器和存储器的装置,内置智能卡芯片,保证内部数据不会被非法获取,同时具有可编程运算功能。主要用于信息传输、信息存储的安全以及对网络传输信息内容的审计和身份认证、数字签名等领域,具有抗攻击的特性,安全性极高,在现有技术中,信息安全设备内部通常采用COS来管理,USB Key是一种USB接口的信息安全设备,它内置单片机或智能卡芯片,可以存储用户的密钥或数字证书。
COS:COS是英文全称Chip Operating System(卡片操作系统)的缩写,是掩膜在智能卡芯片内单片机ROM中的可执行代码,从本质上说它是智能卡芯片内的一个监控软件,用于接收和处理外界发给智能卡的各种信息,管理卡内的存储器,并给出相应的应答信息。
智能卡芯片中存储器集成了ROM只读内存(Read-Only Memory)、FLASS、EEPROM(Electrically Erasable Programmable Read-OnlyMemory),电可擦可编程只读存储器等。
ISO(Isolation)文件一般以iso为扩展名,是复制光盘上全部信息而形成的镜像文件,关系到软件的版本。
然而,现有技术中ISO文件升级存在着不安全、混乱等问题。
发明内容:
为解决现有技术中存在的问题,本发明提供了一种ISO文件安全升级方法及系统,技术方案如下:
一种ISO文件安全升级的方法,具体包括:
A、智能密钥装置等待接收ISO升级初始化指令;
B、所述智能密钥装置判断所述ISO升级初始化指令的格式是否是预设格式,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束;
C、所述智能密钥装置等待接收ISO升级指令;
D、所述智能密钥装置判断所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,
是ISO升级数据指令,则所述智能密钥装置计算所述ISO升级数据指令中的ISO升级数据的校验值,并将所述校验值作为下一次计算的初始值,返回步骤C;
是ISO升级完毕指令,则所述智能密钥装置计算所述ISO升级数据指令中的ISO升级数据的最终校验值,并比较所述最终校验值与所述验证信息是否一致,是,将所述智能密钥装置内部ISO文件标志置为有效,升级,否,将所述智能密钥装置内部ISO文件标志置为无效,报错,结束。
所述智能密钥装置在生产阶段,写入验证标识及公钥。
所述步骤A替换为:智能密钥装置等待接收私钥加密后的ISO升级初始化指令;
相应地,所述步骤B替换为:所述智能密钥装置用公钥对所述私钥加密后的ISO升级初始化指令解密后,判断解密后的所述ISO升级初始化指令的格式是否是预设格式,是,将所述智能密钥装置内部ISO文件标志置为无效,并将解密后的所述ISO升级初始化指令中包含的验证信息写入其内部,继续执行步骤C,否,报错,结束。
所述步骤D中,所述智能密钥装置判断所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,具体为:所述智能密钥装置检测所述ISO升级指令中的指令参数,当所述指令参数为ISO升级数据指令标志时,所述ISO升级指令是ISO升级数据指令,当所述指令参数为ISO升级完毕指令标志时,所述ISO升级指令是ISO升级完毕指令。
所述步骤D中的校验值、最终校验值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
所述验证信息包括验证标识及ISO升级数据的比对值,所述ISO升级数据的比对值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
所述验证标识具体为:ISO文件版本和/或用户代码。
所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的ISO文件版本是否高于所述智能密钥装置生产阶段写入的验证标识中的ISO文件版本,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的用户代码与所述智能密钥装置生产阶段写入的验证标识中的用户代码是否一致,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的ISO文件版本是否高于所述智能密钥装置生产阶段写入的验证标识中的ISO文件版本、同时判断所述验证信息中包含的用户代码与所述智能密钥装置生产阶段写入的验证标识中的用户代码是否一致,二者都是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
所述步骤D中,所述智能密钥装置比较所述最终校验值与所述验证信息是否一致,具体为:所述智能密钥装置比较所述计算得到的ISO升级数据的最终校验值与写入其内部的验证信息中的ISO升级数据的比对值是否一致。
所述ISO文件标志置为无效或有效,置为无效表示初始化,置为有效表示所述ISO文件已升级。
一种ISO文件安全升级的系统,包括存储模块、接收模块、判断模块、设置模块、写入模块、计算模块、比对模块、报错模块;
所述存储模块,用于存储验证信息和ISO文件标志;
所述接收模块,用于等待接收ISO升级初始化指令及ISO升级指令;
所述比对模块,用于比较判断所述接收模块接收到的所述ISO升级初始化指令的格式是否是预设格式,
是,所述设置模块,用于将所述存储模块中存储的ISO文件标志置为无效和用于设置算法初始化;
所述写入模块,用于将所述ISO升级初始化指令中包含的所述验证信息写入所述存储模块中;否,所述报错模块,用于报错;
所述判断模块,用于判断所述接收模块接收到的所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,
当是ISO升级数据指令时:
所述计算模块,用于计算所述升级ISO升级数据指令中的ISO升级数据的校验值;
当是ISO升级完毕指令时:
所述计算模块,用于计算所述升级ISO升级数据指令中的ISO升级数据的最终校验值;
所述比对模块,还用于比对所述计算模块计算得到的ISO升级数据的最终校验值与所述存储模块存储的的验证信息是否一致,
是,所述设置模块,还用于将所述存储模块中存储的ISO文件标志置为有效;
否,所述设置模块,还用于将所述存储模块中存储的ISO文件标志置为无效,所述报错模块,用于报错。
所述存储模块还用于存储在智能密钥装置生产阶段时写入的验证标识及公钥。
当所述接收模块接收到的ISO升级初始化指令为私钥加密后的指令时,所述系统还包括解密模块,用于解密所述接收到的私钥加密后的ISO升级初始化指令。
所述验证信息包括:验证标识及ISO升级数据的比对值,所述ISO升级数据的比对值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
所述比对模块,具体用于比对所述计算模块计算得到的ISO升级数据的最终校验值与所述验证信息中的ISO升级数据的比对值是否一致。
所述验证标识包括ISO文件版本和/或用户代码。
所述比对模块还具体用于,比对所述验证信息中所含的ISO文件版本是否高于所述存储模块中存储的验证标识中的ISO文件版本。
所述比对模块还具体用于比对所述验证信息中所含的用户代码是否与所述存储模块存储的验证标识中的用户代码一致。
所述比对模块还具体用于比对所述验证信息中所含的ISO文件版本是否高于所述存储模块存储的验证标识中的ISO文件版本、同时用于比对所述验证信息中所含的用户代码是否与所述存储模块存储的验证标识中的用户代码一致。
所述判断模块,用于判断所述接收模块接收到所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,具体为:所述判断模块,用于判断所述ISO升级指令中的指令参数的类型,当所述指令参数是ISO升级数据指令的标志时,所述ISO升级指令是ISO升级数据指令,当所述指令参数是ISO升级完毕指令的标志时,所述ISO升级指令是ISO升级完毕指令。
所述ISO文件标志可置为无效或有效,置为无效表示初始化,置为有效表示该ISO文件是已升级的。
本发明提供的一种ISO文件安全升级的方法和系统,通过不公开私钥加密,智能密钥装置公钥解密,同时采取多次认证的方式,进行ISO文件升级,提高了ISO文件升级的安全性。
附图说明:
图1是本发明实施例1提供的一种ISO文件安全升级方法的方法流程图。
图2是本发明实施例2提供的一种ISO文件安全升级系统的系统结构示意图。
具体实施方式:
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
本发明实施例1提供了一种ISO文件安全升级的方法,参见图1,具体工作方法包括:
步骤101、智能密钥装置等待接收主机通过APDU(ApplicationProtocolDataUnit--应用协议数据单元)指令发送的ISO升级初始化指令;
本实施例中,智能密钥装置在生产阶段时,于其系统区中写入验证标识及公钥;
其中,智能密钥装置内部芯片的存储器集成了ROM只读内存(Read-Only Memory)、FLASS、EEPROM(Electrically ErasableProgrammable Read-Only Memory),电可擦可编程只读存储器等。Cos存储于ROM中,系统区是EEPROM(Electrically ErasableProgrammable Read-Only Memory)中一部分。
其中,验证标识具体为ISO文件版本、OEMID用户代码或ISO文件版本和OEMID用户代码,用来表征使用的ISO文件的身份或用户的身份,在ISO文件安装及升级过程中用于身份认证。
公钥写入系统区后不能被读出,与之对应的私钥存储于存有ISO文件的主机中,同样不能被读出,保证ISO文件安装及升级的安全性,并私钥只有一个,公钥可以多个。
实际应用中,智能密钥装置等待接收主机通过APDU指令发送的ISO升级初始化指令,可以是主机使用私钥加密后的ISO升级初始化指令。
步骤102、智能密钥装置判断上述ISO升级初始化指令的格式是否是预设的格式,是,执行步骤103,否则,报错;
实际应用中,鉴于步骤101中智能密钥装置等待接收主机通过APDU指令发送的ISO升级初始化指令,可以是主机使用私钥加密后的ISO升级初始化指令,则步骤102可以由智能密钥装置先使用公钥解密接收到的ISO升级初始化指令后,再判断该指令格式。
具体地,本实施例中发送ISO升级初始化指令的APDU具体为:80FC 18 00 80 Date,Date为:
00  01  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    00  30  21  30
09  06  05  2b    0e  03  02  1a    05  00  04  14    01  02  03  04
11  12  13  14    15  16  17  18    19  20  21  22    23  24  25  26
其中:  01  02  03  04  11  12  13  14  15  16  17  18  19  20  21  2223  24  25  26为验证信息;01  02  03  04为验证标识,11  12  13  14  1516  17  18    19  20  21    22  23  24  25  26为ISO升级数据的比对值,该比对值可以由ISO升级数据使用可分组计算的CRC、HASH、DES等算法计算得到或由ISO升级数据和/或版本信息和/或KEY序列号和/或产品号和/或生产日期等使用可分组计算的CRC、HASH、DES等算法计算得到。
本实施例中,预设的格式具体为:
00  01  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff
ff  ff  ff  ff    ff  ff  ff  ff    ff  ff  ff  ff    00  30  21  30
09  06  05  2b    0e  03  02  1a    05  00  04  14
即以00  01  开头,填充f,以00  30  21  30  09  06  05  2b     0e 0302  1a    05  00  04  14 结尾的固定字符。故知本实施例中智能密钥装置接收到的ISO升级初始化指令格式与预设格式相符,执行步骤103。
实际应用中,还可以进一步验证智能密钥装置接收到的ISO升级初始化指令中所含的ISO文件版本是否高于智能密钥装置生产阶段时其系统区中写入的ISO文件版本,并版本验证具体为:
本实施例以4个字节为例进行介绍,并不作为对本发明的限制。
1、提取APDU指令即ISO升级初始化指令中固定字符后的4个字节数据;
该4个字节数据是一种验证标识,该验证标识可以只是ISO文件版本,可以只是OEMID用户代码,还可以由ISO文件版本和OEMID用户代码共同组成(在步骤101中已述)。
当只为ISO文件版本时,即为版本验证;
2、将提取出的ISO文件版本与智能密钥装置生产阶段系统区中写入的版本比较,高于该智能密钥装置系统区中的版本即通过验证,否则,报错,本实施例中ISO文件版本可以是0100或0200等。
实际应用中,还可以进一步验证智能密钥装置接收到的ISO升级初始化指令中所含的OEMID用户代码与智能密钥装置生产阶段系统区中写入的OEMID用户代码是否相同,具体为:
1、提取APDU指令中固定字符后的4个字节数据;
该4个字节数据是一种验证标识,该验证标识可以只是ISO文件版本、OEMID用户代码,还可以由ISO文件版本和OEMID用户代码共同组成(在步骤101中已述)。
当只为OEMID用户代码时,即为OEMID用户代码验证;
2、将提取出的OEMID用户代码与智能密钥装置生产阶段系统区中写入的OEMID用户代码比较,一致即通过验证,否则,报错,本实施例中OEMID可以是表征用户身份的任意4字节数据。
实际应用中,当APDU指令中固定字符后的4个字节数据具体由ISO文件版本和OEMID用户代码共同组成时,即为ISO文件版本和OEMID用户代码验证,不再赘述。
步骤103、智能密钥装置将ISO文件标志置为无效,并将该ISO升级初始化指令中包含的验证信息写入其RAM中;
实际应用中,步骤103还包括设置算法初始化的过程,具体将在步骤106之后结合分组算法详述。
步骤104、智能密钥装置等待接收主机通过APDU指令发送的ISO升级指令;
步骤105、智能密钥装置判断上述指令是ISO升级数据指令还是ISO升级完毕指令,是ISO升级数据指令执行步骤106,是ISO升级完毕指令执行步骤107;
优选地,智能密钥装置接收到的ISO升级数据指令为:80fc 1801000804地址+数据,其中地址占用Flass中的地址,数据长度任意,该ISO升级指令与步骤102中相似,不再赘述。
智能密钥装置接收到的ISO升级完毕指令格式为:80FC 180280地址+数据。
判断ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,举例为:验证ISO升级指令的指令参数,即APDU指令的参数P2,当该参数P2是01时,ISO升级指令是ISO升级数据指令,当该参数P2是02时,ISO升级指令是ISO升级完毕指令。
步骤106、智能密钥装置计算ISO升级数据的校验值,并将该校验值作为下一次计算的初始值,返回步骤104;
实际应用中,还可以在步骤106即接收到第一个ISO升级数据指令时,将智能密钥装置内部ISO文件标志置为无效,即将步骤102中的部分内容ISO文件标志置为无效移至步骤106之后。
本实施例中,计算校验值前还包括当智能密钥装置第一次接收ISO升级数据指令时,提取ISO升级数据及其地址存储,第二次接收ISO升级数据指令时,提取ISO升级数据,地址,并比较该地址是否与第一次存储的地址衔接,是,存储ISO升级数据及地址,否,报错;再次接收ISO升级数据指令时,重复上述操作,即ISO升级数据至发送开始到发送完毕是衔接连续发送的。
鉴于步骤102,步骤106计算校验值是对ISO升级数据使用可分组计算的CRC、HASH、DES等算法计算实现的或对ISO升级数据和/或版本信息和/或KEY序列号和/或产品号和/或生产日期等使用可分组计算的CRC、HASH、DES等算法实现的。
该分组计算分为分组后块内计算和块间计算,块内计算校验值为:将一次接收到的ISO升级数据按照一定字节长度分成若干块,对每一块进行计算,并将前一块计算结果作为后一块计算的初始值再计算,依次进行,其中,在步骤103ISO升级初始化指令验证通过,接收第一次ISO升级数据指令之前还包括分组算法内含的设置算法初始化过程,具体为在第一次接收ISO升级数据指令之前,分组算法设置固定值作为计算第一块ISO升级数据的初始值。块间计算原理同上不再赘述。
本实施例中,ISO升级数据指令或者需要通过多次APDU指令发送给智能密钥装置,故存在返回步骤104的循环过程。
步骤107、智能密钥装置计算最终校验值,并比较该最终校验值与其存储的验证信息是否一致,是,执行步骤108,否,执行步骤109.
其中,最终校验值是与步骤102中的验证信息中的ISO升级数据的比对值进行比较的。
ISO升级完毕指令格式为:80 FC 18 02 80地址+数据,其数据长度可能小于前面ISO升级数据指令中ISO升级数据的长度,则分组计算时,长度不足的补位再计算。
步骤108、将智能密钥装置内部ISO文件标志置为有效,升级;
步骤109、将智能密钥装置内部ISO文件标志置为无效,报错。
实际应用中,本实施例步骤108之后还可以包括:
主机发送指令读取智能密钥装置中的ISO数据;
智能密钥装置接收指令后检查其内部ISO文件标志是否为有效,是,则向主机输出相应的ISO数据,否则,报错。
综合上述步骤101到步骤109,实现智能密钥装置内ISO文件升级。
本实施例中所涉及的指令、指令格式举例,仅是为了便于说明,并不作为对本发明的限制。
实施例2
本发明实施例还提供了一种ISO文件安全升级的系统,如图2所示,具体包括:智能密钥装置21和主机22,其中智能密钥装置21包括存储模块211、接收模块212、判断模块213、设置模块214、写入模块215、计算模块216、比对模块217、报错模块218;主机22包括写入模块221;
存储模块211,用于存储主机发送的验证信息;
接收模块212,用于等待接收ISO升级初始化信息指令及ISO升级指令;
比对模块217,用于比较判断智能密钥装置21接收到的ISO升级初始化信息指令的格式是否是预设格式,
是,设置模块214,用于将智能密钥装置21存储模块211中存储的ISO文件标志置为无效和用于设置算法初始化;
写入模块215,用于将ISO升级初始化信息指令中的验证信息写入智能密钥装置21内部;
否,报错模块218,用于报错;
判断模块213,用于判断智能密钥装置21接收到所ISO升级指令是ISO升级数据指令还是ISO升级完毕指令;
当是ISO升级数据指令时:
计算模块216,用于在计算升级ISO升级数据指令中的ISO数据的校验值;
当是ISO升级完毕指令时:
计算模块216,用于在计算升级ISO升级数据指令中的ISO数据的最终校验值;
比对模块217,用于比对计算模块26运算得到的ISO数据的最终校验值与所述写入模块213写入的验证信息是否一致:
是,设置模块214,用于将智能密钥装置21存储模块211中存储的ISO文件标志置为有效;
否,设置模块214,用于将智能密钥装置21存储模块211中存储的ISO文件标志置为无效;报错模块218,用于报错;
写入模块221,用于向所智能密钥装置211中写入ISO升级初始化信息指令及ISO升级指令。
设置模块214,用于设置算法初始化,具体为:设置模块214在比对模块217,比对ISO升级初始化信息指令的格式是预设格式后,设置固定值作为计算模块216计算ISO升级数据的初始值。
计算模块216计算ISO数据的校验值及最终校验值,具体为:对ISO升级数据使用可分组计算的CRC、HASH、DES等算法计算或对ISO升级数据、版本信息,KEY序列号,产品号,生产日期等使用可分组计算的CRC、HASH、DES等算法计算。
智能密钥装置21在生产阶段时,其系统区中写入验证标识及公钥。
智能密钥装置21还包括解密模块219,用于解密智能密钥装置接收到的私钥加密后的ISO升级初始化信息指令。
验证信息包括:验证标识及ISO升级数据的比对值,该比对值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
比对模块217,用于比较计算得到的ISO升级数据的最终校验值与写入其内部的验证信息中的ISO升级数据的比对值是否一致。
验证标识包括ISO文件版本,或OEMID用户代码或ISO文件版本和OEMID用户代码。
比对模块217还用于,比对验证信息中所含的ISO文件版本是否高于智能密钥装置21生产阶段时系统区中写入的验证标识中的ISO文件版本。
比对模块217还用于比对验证信息中所含的OEMID用户代码是否与智能密钥装置21生产阶段时系统区中写入的OEMID用户代码一致。
比对模块217还用于比对验证信息中所含的版本是否高于智能密钥装置21生产阶段时系统区中写入的版本,同时比对验证信息中所含的OEMID用户代码是否与智能密钥装置21生产阶段时系统区中写入的OEMID用户代码一致。
判断模块213,用于判断智能密钥装置21接收到ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,具体为:判断模块213,用于判断ISO升级指令中的指令参数的类型,当指令参数是ISO升级数据指令的标志时,ISO升级指令是ISO升级数据指令,当指令参数是ISO升级完毕指令的标志时,ISO升级指令是ISO升级完毕指令。
ISO文件标志可置为无效或有效,置为无效表示初始化,置为有效表示该ISO文件是已升级的。
本实施例,计算模块216,计算升级ISO数据的校验值分为块内计算校验值及块间计算校验值,块内计算校验值为:将ISO升级数据按照一定字节长度分成若干块,对每一块进行计算,并将前一块计算结果作为后一块计算的初始值再计算,依次进行。块间计算原理同上不再赘述。
本实施例中ISO升级数据指令具体为:80fc 18 01 00 08 04地址+数据,ISO升级完毕指令具体为::80FC 18 02 80地址+数据。
接收模块212、判断模块213、设置模块214、写入模块215、计算模块216、比对模块217、报错模块218集成与智能密钥装置21的卡内操作系统COS中。
本发明实施例提供的一种ISO文件安全升级的方法和系统,通过不公开私钥加密,智能密钥装置公钥解密,同时采取多次认证的方式,进行ISO文件升级,提高了ISO文件升级的安全性。
以上仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (23)

1.一种ISO文件安全升级的方法,其特征在于,具体包括:
A、智能密钥装置等待接收ISO升级初始化指令;
B、所述智能密钥装置判断所述ISO升级初始化指令的格式是否是预设格式,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束;
C、所述智能密钥装置等待接收ISO升级指令;
D、所述智能密钥装置判断所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,
是ISO升级数据指令,则所述智能密钥装置计算所述ISO升级数据指令中的ISO升级数据的校验值,并将所述校验值作为下一次计算的初始值,返回步骤C;
是ISO升级完毕指令,则所述智能密钥装置计算所述ISO升级数据指令中的ISO升级数据的最终校验值,并比较所述最终校验值与所述验证信息是否一致,是,将所述智能密钥装置内部ISO文件标志置为有效,升级,否,将所述智能密钥装置内部ISO文件标志置为无效,报错,结束。
2.根据权利要求1所述的一种ISO文件安全升级方法,其特征在于,所述智能密钥装置在生产阶段,写入验证标识及公钥。
3.根据权利要求2所述的一种ISO文件安全升级方法,其特征在于,所述步骤A替换为:智能密钥装置等待接收私钥加密后的ISO升级初始化指令;
相应地,所述步骤B替换为:所述智能密钥装置用公钥对所述私钥加密后的ISO升级初始化指令解密后,判断解密后的所述ISO升级初始化指令的格式是否是预设格式,是,将所述智能密钥装置内部ISO文件标志置为无效,将解密后的所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
4.根据权利要求1所述的一种ISO文件安全升级方法,其特征在于,所述步骤D中,所述智能密钥装置判断所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,具体为:所述智能密钥装置检测所述ISO升级指令中的指令参数,当所述指令参数为ISO升级数据指令标志时,所述ISO升级指令是ISO升级数据指令,当所述指令参数为ISO升级完毕指令标志时,所述ISO升级指令是ISO升级完毕指令。
5.根据权利要求1所述的一种ISO文件安全升级方法,其特征在于,所述步骤D中的校验值、最终校验值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
6.根据权利要求1所述的一种ISO文件安全升级方法,其特征在于,所述验证信息包括验证标识及ISO升级数据的比对值,所述ISO升级数据的比对值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
7.根据权利要求2或6所述的一种ISO文件安全升级方法,其特征在于,所述验证标识具体为:ISO文件版本和/或用户代码。
8.根据权利要求7所述的一种ISO文件安全升级方法,其特征在于,所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的ISO文件版本是否高于所述智能密钥装置生产阶段写入的验证标识中的ISO文件版本,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
9.根据权利要求7所述的一种ISO文件安全升级方法,其特征在于,所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的用户代码与所述智能密钥装置生产阶段写入的验证标识中的用户代码是否一致,是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
10.根据权利要求7所述的一种ISO文件安全升级方法,其特征在于,所述步骤B还包括:所述智能密钥装置判断所述验证信息中包含的ISO文件版本是否高于所述智能密钥装置生产阶段写入的验证标识中的ISO文件版本、同时判断所述验证信息中包含的用户代码与所述智能密钥装置生产阶段写入的验证标识中的用户代码是否一致,二者都是,将所述智能密钥装置内部ISO文件标志置为无效,将所述ISO升级初始化指令中包含的验证信息写入其内部,并设置算法初始化,继续执行步骤C,否,报错,结束。
11.根据权利要求6所述的一种ISO文件安全升级方法,其特征在于,所述步骤D中,所述智能密钥装置比较所述最终校验值与所述验证信息是否一致,具体为:所述智能密钥装置比较所述计算得到的ISO升级数据的最终校验值与写入其内部的验证信息中的ISO升级数据的比对值是否一致。
12.根据权利要求1所述的一种ISO文件安全升级方法,其特征在于,所述ISO文件标志置为无效或有效,置为无效表示初始化,置为有效表示所述ISO文件已升级。
13.一种ISO文件安全升级的系统,其特征在于,包括存储模块、接收模块、判断模块、设置模块、写入模块、计算模块、比对模块、报错模块;
所述存储模块,用于存储验证信息和ISO文件标志;
所述接收模块,用于等待接收ISO升级初始化指令及ISO升级指令;
所述比对模块,用于比较判断所述接收模块接收到的所述ISO升级初始化指令的格式是否是预设格式,
是,所述设置模块,用于将所述存储模块中存储的ISO文件标志置为无效和用于设置算法初始化;
所述写入模块,用于将所述ISO升级初始化指令中包含的所述验证信息写入所述存储模块中;否,所述报错模块,用于报错;
所述判断模块,用于判断所述接收模块接收到的所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,
当是ISO升级数据指令时:
所述计算模块,用于计算所述升级ISO升级数据指令中的ISO升级数据的校验值;
当是ISO升级完毕指令时:
所述计算模块,用于计算所述升级ISO升级数据指令中的ISO升级数据的最终校验值;
所述比对模块,还用于比对所述计算模块计算得到的ISO升级数据的最终校验值与所述存储模块存储的验证信息是否一致,
是,所述设置模块,还用于将所述存储模块中存储的ISO文件标志置为有效;
否,所述设置模块,还用于将所述存储模块中存储的ISO文件标志置为无效,所述报错模块,用于报错。
14.根据权利要求13所述的一种ISO文件安全升级的系统,其特征在于,所述存储模块还用于存储在智能密钥装置生产阶段时写入的验证标识及公钥。
15.根据权利要求14所述的一种ISO文件安全升级的系统,其特征在于,当所述接收模块接收到的ISO升级初始化指令为私钥加密后的指令时,所述系统还包括解密模块,用于解密所述接收到的私钥加密后的ISO升级初始化指令。
16.根据权利要求13所述的一种ISO文件安全升级的系统,其特征在于,所述验证信息包括:验证标识及ISO升级数据的比对值,所述ISO升级数据的比对值由可分组算法对ISO升级数据计算得到或由可分组算法对ISO升级数据和/或版本号和/或生产日期计算得到。
17.根据权利要求16所述的一种ISO文件安全升级的系统,其特征在于,所述比对模块,具体用于比对所述计算模块计算得到的ISO升级数据的最终校验值与所述验证信息中的ISO升级数据的比对值是否一致。
18.根据权利要求14或16所述的一种ISO文件安全升级的系统,其特征在于,所述验证标识包括ISO文件版本和/或用户代码。
19.根据权利要求18所述的一种ISO文件安全升级的系统,其特征在于,所述比对模块还具体用于,比对所述验证信息中所含的ISO文件版本是否高于所述存储模块中存储的验证标识中的ISO文件版本。
20.根据权利要求18所述的一种ISO文件安全升级的系统,其特征在于,所述比对模块还具体用于比对所述验证信息中所含的用户代码是否与所述存储模块存储的验证标识中的用户代码一致。
21.根据权利要求18所述的一种ISO文件安全升级的系统,其特征在于,所述比对模块还具体用于比对所述验证信息中所含的ISO文件版本是否高于所述存储模块存储的验证标识中的ISO文件版本、同时用于比对所述验证信息中所含的用户代码是否与所述存储模块存储的验证标识中的用户代码一致。
22.根据权利要求13所述的一种ISO文件安全升级的系统,其特征在于,所述判断模块,用于判断所述接收模块接收到所述ISO升级指令是ISO升级数据指令还是ISO升级完毕指令,具体为:所述判断模块,用于判断所述ISO升级指令中的指令参数的类型,当所述指令参数是ISO升级数据指令的标志时,所述ISO升级指令是ISO升级数据指令,当所述指令参数是ISO升级完毕指令的标志时,所述ISO升级指令是ISO升级完毕指令。
23.根据权利要求13所述的一种ISO文件安全升级的系统,其特征在于,所述ISO文件标志可置为无效或有效,置为无效表示初始化,置为有效表示该ISO文件是已升级的。
CN201010214141A 2010-06-29 2010-06-29 Iso文件安全升级的方法及系统 Active CN102012978B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010214141A CN102012978B (zh) 2010-06-29 2010-06-29 Iso文件安全升级的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010214141A CN102012978B (zh) 2010-06-29 2010-06-29 Iso文件安全升级的方法及系统

Publications (2)

Publication Number Publication Date
CN102012978A CN102012978A (zh) 2011-04-13
CN102012978B true CN102012978B (zh) 2012-10-03

Family

ID=43843151

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010214141A Active CN102012978B (zh) 2010-06-29 2010-06-29 Iso文件安全升级的方法及系统

Country Status (1)

Country Link
CN (1) CN102012978B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801705B (zh) * 2012-06-25 2014-12-10 飞天诚信科技股份有限公司 一种java卡上安全域的实现方法
CN105700863B (zh) * 2014-11-27 2019-03-26 英业达科技有限公司 无效分组处理方法
CN106951286A (zh) * 2017-03-16 2017-07-14 深圳Tcl新技术有限公司 系统安全升级的检测方法和待升级系统
CN107357670B (zh) * 2017-06-12 2020-09-18 卡斯柯信号有限公司 基于加密设备特征信息的配置数据自动校验方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512342A (zh) * 2002-12-27 2004-07-14 技嘉科技股份有限公司 智能型固化软件的升级控制方法
CN1648857A (zh) * 2004-01-28 2005-08-03 三星电子株式会社 供软件之用的自动版本管理系统和方法
CN101017435A (zh) * 2006-04-14 2007-08-15 北京瑞星国际软件有限公司 一种用于软件升级的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7600127B2 (en) * 2005-07-13 2009-10-06 Lenovo Singapore Pte. Ltd System and method for ISO image update and ISO image deconstruction into modular components

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1512342A (zh) * 2002-12-27 2004-07-14 技嘉科技股份有限公司 智能型固化软件的升级控制方法
CN1648857A (zh) * 2004-01-28 2005-08-03 三星电子株式会社 供软件之用的自动版本管理系统和方法
CN101017435A (zh) * 2006-04-14 2007-08-15 北京瑞星国际软件有限公司 一种用于软件升级的方法及装置

Also Published As

Publication number Publication date
CN102012978A (zh) 2011-04-13

Similar Documents

Publication Publication Date Title
CN107463838B (zh) 基于sgx的安全监控方法、装置、系统及存储介质
CN107743115B (zh) 一种终端应用的身份认证方法、装置和系统
EP1505470A2 (en) Terminal application generation apparatus and application authentication method
CN106656513B (zh) 安卓平台上apk文件的二次打包签名验证方法
CN101373440B (zh) 一种固件升级数据处理方法和装置
CN103366103B (zh) 读卡器的应用程序加密保护方法
CN104090790A (zh) 一种安全终端的双芯片方案的固件更新方法
CN101795263B (zh) 宽带安全接入方法、认证方法和装置及系统
CN107832589B (zh) 软件版权保护方法及其系统
CN102012978B (zh) Iso文件安全升级的方法及系统
CN101419557A (zh) 一种程序下载控制方法
CN104978531A (zh) 对智能卡进行编程的方法和可编程的智能卡
CN107092816A (zh) 一种Android应用程序加固方法
CN103902402A (zh) 射频标签安全芯片设备及其数据处理方法
CN101141250A (zh) 仪表设备、数据安全存取方法、装置和系统
CN108055585A (zh) 数据处理方法、机顶盒升级方法、终端和机顶盒
CN111160879A (zh) 一种硬件钱包及其安全性提升方法和装置
CN1945591A (zh) 一种电子标签加密防伪技术
CN102238135A (zh) 安全认证服务器
CN102831362B (zh) 一种安全生产智能密钥设备的方法及装置
CN108418677B (zh) 密钥备份、恢复方法及装置
CN105162605A (zh) 一种数字签名及认证方法
CN112688942B (zh) 基于esam的电能表固件程序升级方法、装置、介质及设备
CN109408085A (zh) 硬件钱包的升级方法、装置、系统和存储介质
CN109086576A (zh) 许可证发布方法、许可验证方法、系统及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant