[发明专利]一种基于智能卡COS的对称密码服务实现方法有效
申请号: | 201210185630.1 | 申请日: | 2012-06-07 |
公开(公告)号: | CN102752104B | 公开(公告)日: | 2017-10-31 |
发明(设计)人: | 祝世雄;张鲁国;吕永其;李峥;于飞;杨先文 | 申请(专利权)人: | 中国电子科技集团公司第三十研究所 |
主分类号: | H04L9/08 | 分类号: | H04L9/08 |
代理公司: | 工业和信息化部电子专利中心11010 | 代理人: | 张红玉 |
地址: | 610041 四川*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 智能卡 cos 对称 密码 服务 实现 方法 | ||
技术领域
本发明涉及芯片技术领域,特别涉及一种基于智能卡片内操作系统(ChipOperating System,COS)的对称密码服务实现方法。
背景技术
目前随着微电子技术的进步与SoC芯片设计技术的普及与应用,在单一的智能卡芯片中已能集成多种密码算法IP核,同时伴随智能卡芯片中存储容量的不断增加和CPU运算速度的提高,采用软件方法实现特定新增的对称密码算法也成为可能。由于智能卡的应用具有很强的行业准入性,且每个行业智能卡操作系统中规定的密码算法各不相同,如社会保障卡规定对称密码算法采用国产SF33算法,银行卡规定对称密码算法采用DES和TDES算法,居民健康卡规定对称密码算法采用国产SM1算法,SIM卡采用的A3、A5、A8算法,市民卡则有的采用AES算法,有的采用IDEA算法等,这就给COS在不同硬件平台与应用中的移植带来了障碍,特别是一卡多用的普及与推广,使得在同一硬件平台上运行的COS系统实现多种对称密码算法成为一种必然的发展趋势。
然而,目前智能卡COS设计中实现对称密码算法的方法还是采用为每一种密码算法及应用设计单独的应用接口,如常见的DES算法其实现方案一般设计有DES加解密接口、DES的MAC接口、TDES算法接口和TDES的MAC接口。随着一卡多用的增加,对称密码算法的接口还会相应增加,这不仅占用了智能卡宝贵的存储资源,带来密码服务效率的低下,同时也阻碍了COS在不同硬件平台之间的无缝移植和新增密码算法的扩展,给多种密码算法应用的COS系统带来算法管理的安全风险。
发明内容
为了解决上述问题,本发明提供一种基于智能卡COS的对称密码服务实现方法。
本发明的基于智能卡COS的对称密码服务实现方法,将智能卡COS系统中对称密码服务封装为密码服务的应用接口层、算法调用参数映射层和算法软硬件接口层,其中,密码服务的应用接口层传递相应待处理数据和控制参数,通过算法调用参数映射层传递对应的密码服务参数并进行安全环境检测,启动密码算法软硬件接口层的相应工作流程,并检测密码服务流程是否完成,当完成密码运算后,智能卡操作系统通过密码服务的应用接口层得到本次密码服务的结果。
其中,通过应用系统调用层、COS管理层和密码算法实现层实现对称密码算法,其中,应用系统调用层,用于向COS管理层提出密码服务请求,并依据密码服务的功能提供待处理的数据、算法和密钥版本标识,以及相关安全环境参数与信息,完成应用层到COS管理层的信息映射与传递,并接收来自COS管理层对相关信息处理的结果和状态;COS管理层,用于分析应用系统调用层的密码服务请求,检验请求者身份和安全环境属性,在满足相应安全条件下,设置相关参数,完成COS管理层到算法实现层的信息映射与传递,启动密码算法实现层,并监控密码算法实现层的工作,若不满足相关安全条件,则禁止系统向上层提供密码服务;密码算法实现层,用于接受COS管理层的监控,在满足相关安全属性下,实现算法下载、密钥管理、加脱密模式选择与参数设置,多种密码算法的映射管理,完成对待处理数据的加脱密运算,并给出运算结果和相应的状态指示;完成最后一个分组的加脱密运算后,在COS管理层的监控下,销毁本次密码运算的全部信息,返回到初始安全状态。
其中,所述密码算法为COS中对称密码算法,该算法有定长密钥和变长密钥2种定长分组选择,并在对称密码算法接口定义了COS安全系统可提供的对称密码算法的功能。
其中,在所述对称密码算法接口中,包括下列参数:
算法状态、分组长度、中间值、初始向量、密钥指示、缓冲区、密码服务模式、密码算法指示、算法接口方法。
其中:
算法状态BYTEbyOprState:用于指示分组算法的操作模式;
分组长度BYTEbyBlkLen:用于指示对称密码算法每个分组的字节长度;
中间值BYTEbyMVBuff[SE_MAX_BLKLEN]:是分组算法CBC、CFB、OFB工作模式时的链接中间值;
初始向量BYTE byIV[SE_MAX_BLKLEN]:是分组算法CBC、CFB、OFB工作模式时的链接初始值,通过算法设置命令或专用安全命令对其进行设置;
密钥指示BYTEbyKeyLen:用于指示分组算法密钥长度和密钥初始化状态,密钥未初始化时byKeyLen=0x00,否则byKeyLen指示密钥的字节长度;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电子科技集团公司第三十研究所,未经中国电子科技集团公司第三十研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210185630.1/2.html,转载请声明来源钻瓜专利网。