论文部分内容阅读
随着微芯片的发展,智能卡已经广泛应用到人们生活的方方面面,卡片种类与数量的急剧增长为居民携带带来诸多不便,为改善这种现状,多应用智能卡技术开始发展起来。目前,“一卡通”技术已经成熟,“公交一卡通”、“校园一卡通”已经普及到各个城市和学校,但跨行业多应用智能卡的发展比较缓慢。国外智能卡多应用技术发展表明Java Card具有跨平台、开发便捷、安全性能好以及可实现卡内多应用的动态更新等优点,国内Java Card也开始在金融、医疗和移动通信等领域应用。在研究Java Card一卡多用的过程中,我们发现过去单一行业应用的密钥分发管理体系在多应用数据访问中存在逻辑缺陷和非法终端共享模式的访问,这可能导致严重的安全问题,也限制了Java Card的多应用实现。本文首先研究分析了Java Card技术标准和Global Platform规范的安全机制,并在此基础上设计了一种基于Java Card授权平台框架的密钥管理系统,系统包括管理架构、模块功能以及密钥分类等。其次,详细阐述了Java Card在密钥管理系统中密钥的生成与分发方法。该方法主要应用基于椭圆曲线算法的密钥证书进行密钥的生成、分发等,将多个行业的密钥灌装在Java Card的主安全域以及辅助安全域中,实现了密钥的分发和行业应用授权,方便卡内各个行业数据的安全加载,可有效地解决卡内数据访问潜在的安全隐患,并增强读卡器与卡片会话的安全性。密钥生成是将智能卡中存放的密钥进行分级,使用杂凑算法生成一级密钥,即Java Card中根密钥,由分散算法分散根密钥生成下属各级密钥。密钥的分发时采用SAM认证方式进行分发,即读卡器与卡的安全认证方式。最后,通过搭建Java Card多应用验证平台的密钥管理系统对该方法进行了测试验证,系统可完成密钥的分发功能,包括密钥的生成、灌装、分发、备份及更新。