发明名称 一种java卡上安全域的实现方法
摘要 本发明公开了一种java卡上安全域的实现方法,涉及智能卡领域,该方法包括:当前安全域接收到第一命令并解析,得到应用相关信息,将第一状态设为等待接收第二命令;接收到第二命令并解析得到装载文件数据块,将装载文件数据块存储到第一存储区,验证所述第二命令是否合法,是则继续,否则报错;接收到第三命令并解析,根据解析得到的数据验证第三命令是否合法,是则调用安装方法,根据第一存储区的数据安装应用;接收到第四命令并解析,并判断第四命令是否合法,是则将第一状态设置为接收到等待接收第五命令;接收到第五命令,执行应用个人化操作。通过该方案,保证了卡片应用下载、安装及个人化过程的安全性。<!--1-->
申请公布号 CN102801705B 申请公布日期 2014.12.10
申请号 CN201210213195.9 申请日期 2012.06.25
申请人 飞天诚信科技股份有限公司 发明人 陆舟;于华章
分类号 H04L29/06(2006.01)I;H04L9/32(2006.01)I 主分类号 H04L29/06(2006.01)I
代理机构 代理人
主权项 一种java卡上安全域的实现方法,其特征在于,包括:S1:卡片上电,所述卡片的当前安全域开始工作;S2:所述当前安全域等待接收上位机发送的命令,当接收到APDU命令时,检测所述APDU命令的类型,若为第一命令,则执行S3;若为第二命令,则执行S4;若为第三命令,则执行S11;若为第四命令,则执行S13;若为第五命令,则执行S14;若为其他APDU命令,则根据所述APDU命令进行操作;S3:所述当前安全域对所述第一命令进行解析得到命令头和数据域,按照第二预设方式对所述第一命令的数据域进行解析得到装载文件标识符,装载文件所关联的安全域标识符、装载文件哈希值和装载令牌,将所述装载文件标识符,装载文件所关联的安全域标识符写入到注册表中,并将所述装载文件哈希值缓存在第一缓存区,根据所述装载文件哈希值和所述装载令牌验证所述第一命令是否合法,是则将第一状态设为等待接收第二命令,返回S2,否则直接返回S2;S4:所述当前安全域对所述第二命令进行解析得到命令头和数据域,获取所述第二命令的第四字节上的值并判断其是否为0,是则执行S5,否则执行S7;S5:所述当前安全域判断所述第一状态是否为等待接收第二命令,是则执行S6,否则初始化所述第一状态和第二状态,返回S2;S6:所述当前安全域按照第一预设方式对所述第二命令的数据域进行解析并存储解析结果得到验证数据块及第一装载文件数据块,并将所述第一装载文件数据块存储于第一存储区,根据所述验证数据块验证所述第二命令是否合法,如合法则执行S9,如不合法则初始化第一状态和第二状态并清空所述第一存储区,返回S2;S7:所述当前安全域判断所述命令的第四字节上的值与所述第二状态的值是否相符,是则执行S8,否则初始化所述第一状态和所述第二状态,返回S2;S8:所述当前安全域按照第一预设方式对所述命令的数据域进行解析,并从解析得到的数据中获得第二装载文件数据块,并将所述第二装载文件数据块存储于所述第一存储区,顺序执行S9;S9:所述当前安全域用所述命令的第四字节上的值更新第二状态的值,获取所述命令的第三字节上的数据,并判断所述命令的第三字节上的数据的最高位是否为1,是则执行S10,否则返回S2;S10:所述当前安全域对所述第一存储区中的数据进行哈希算法得到验证哈希值,判断所述验证哈希值与所述第一缓存区的所述装载文件哈希值是否一致,是则初始化所述第一状态及第二状态,返回S2,否则报错,初始化第一状态及第二状态并清空第一存储区,返回S2;S11:所述当前安全域对所述第三命令进行解析,并根据解析得到的数据验证所述第三命令是否合法,是则执行S12,否则报错,返回S2;S12:所述当前安全域调用安装方法对所述第一存储区的装载文件数据进行安装,并在安装结束后,返回S2;S13:所述当前安全域对所述第四命令进行解析,并根据解析结果验证所述第四命令是否合法,是则将所述第一状态设置为等待接收第五命令状态,返回S2,否则报错,返回S2;S14:所述当前安全域验证所述第一状态是否为等待接收第五命令,是则执行S15,否则报错,返回S2;S15:所述当前安全域执行个人化操作,执行完成后返回S2。
地址 100085 北京市海淀区学清路9号汇智大厦B座17层