基于ARM平台的Java智能卡虚拟机研究与实现
发布时间:2017-03-25 04:13
本文关键词:基于ARM平台的Java智能卡虚拟机研究与实现,由笔耕文化传播整理发布。
【摘要】:Java智能卡是一种能够运行Java程序的智能卡,其以拥有平台无关特性、支持一卡多用和重用、安全稳定等众多优势正主导着网络时代智能卡技术的发展趋势,也使得该技术成为了智能卡领域的研究发展热点。我国智能卡技术虽然正在迅速发展,但仍处于追赶落后状态,许多运营商需要花费大量授权费引入国外技术,对我国的生产发展带来影响。在此背景下,基于国家自主可控安全技术的战略需要,与企业进行产学合作研究具有自主知识产权的Java卡产品将具有较大的现实意义。Java卡虚拟机是实现Java卡应用程序平台无关性的基础,负责为指定的硬件平台解释执行字节码,并进行存储空间的管理和异常处理等工作。本文研究的课题就是在基于ARM微处理器的嵌入式系统上实现一个能够和Sun公司的Java卡标准兼容的Java卡虚拟机方案。Sun公司提供的Java卡虚拟机规范只是纲领性文档,如何在资源十分有限的硬件环境中既实现Java卡规范的基本要求,又能尽可能确保系统运行的效率及安全控制是设计与实现Java卡虚拟机时需要研究的主要难点。本文首先基于Java卡的相关规范对Java卡技术进行了深入系统地分析研究,尤其是Java卡运行环境与虚拟机的相关规范和安全控制机制。接着详细叙述了基于ARM Cortex-M0核硬件平台的Java卡的软硬件架构,包括对主控芯片特性和软件平台框架的介绍,并着重分析了Java卡虚拟机卡内外模型。随后在仔细分析了虚拟机功能实现所需模块和各个模块之间的交互关系基础上,着重于设计与实现Java智能卡虚拟机内部的CAP文件解析模块,寄存器、Java栈、堆等内存管理模块,以及解释执行模块和异常处理模块,并归纳应用程序的格式和开发流程,同时对与Java卡运行环境协同下的安全控制机制进行了设计。在研究现有方案的同时对指令执行效率方面进行了研究并给出相应优化方案,并在随后的功能测试中对本方案进行了验证。此外,本文还在此基础上研究了Java智能卡的安全性,着重从逻辑攻击和混合攻击两种方式研究了Java智能卡当前存在的安全威胁,并给出相应解决措施。
【关键词】:Java智能卡 虚拟机 解释器 逻辑攻击
【学位授予单位】:上海交通大学
【学位级别】:硕士
【学位授予年份】:2015
【分类号】:TP302
【目录】:
- 摘要3-5
- ABSTRACT5-13
- 第一章 绪论13-19
- 1.1 课题研究背景13-14
- 1.2 课题研究现状14-16
- 1.2.1 国内外发展现状14
- 1.2.2 Java智能卡系统架构14-16
- 1.2.3 Java智能卡虚拟机研究热点16
- 1.3 课题研究意义16-17
- 1.4 论文主要研究内容及论文结构17-18
- 1.5 本章小结18-19
- 第二章 Java智能卡虚拟机技术基础19-29
- 2.1 JCRE基本概念及主要功能19-24
- 2.1.1 与外界环境的通信及数据交换19-21
- 2.1.2 Applet安装功能21-22
- 2.1.3 Applet生命周期控制功能22
- 2.1.4 原子性与事务机制22-23
- 2.1.5 防火墙与对象共享机制23-24
- 2.2 Java智能卡虚拟机基本概念及主要功能24-26
- 2.2.1 卡外转换器25
- 2.2.2 卡内解释器25
- 2.2.3 Java卡虚拟机生命周期25-26
- 2.3 Java智能卡关键技术26-27
- 2.3.1 存储管理机制与安全保护机制26
- 2.3.2 卡内安装器、解释器26-27
- 2.4 本章小结27-29
- 第三章 基于ARM核的Java智能卡虚拟机分析与设计29-55
- 3.1 Java智能卡总体框架29-34
- 3.1.1 Java智能卡硬件平台30-32
- 3.1.2 Java智能卡软件平台32
- 3.1.3 Java智能卡虚拟机架构32-34
- 3.2 Java智能卡卡外转换器34-36
- 3.2.1 CAP文件格式35-36
- 3.3 Java智能卡卡内安装器36-39
- 3.3.1 注册表创建与维护38
- 3.3.2 组件预处理38-39
- 3.4 寄存器管理模块39-41
- 3.5 Java栈管理模块41-45
- 3.5.1 Java栈帧结构41-43
- 3.5.2 空间共享方式的Java栈帧设计43-44
- 3.5.3 Java栈运行机制44-45
- 3.6 堆空间管理模块45-46
- 3.7 解释执行模块46-48
- 3.7.1 指令集46-47
- 3.7.2 Java智能卡虚拟机指令的解释执行47-48
- 3.8 异常处理模块48-49
- 3.9 安全机制的设计49-52
- 3.9.1 原子性操作的设计49-50
- 3.9.2 事务处理的设计50-51
- 3.9.3 共享访问机制原理51-52
- 3.9.4 防火墙的设计52
- 3.10本章小结52-55
- 第四章 Java智能卡虚拟机的实现55-69
- 4.1 Java卡虚拟机实现所需软硬件环境55
- 4.2 卡内安装器的实现55-60
- 4.2.1 注册表的实现细节55-57
- 4.2.2 下载安装过程实现细节57-58
- 4.2.3 CAP文件各组件解析实现细节58-60
- 4.3 寄存器管理模块的实现60-61
- 4.4 Java栈管理模块的实现61-62
- 4.5 堆空间管理模块的实现62-63
- 4.5.1 空间分配机制62-63
- 4.5.2 堆空间管理实现63
- 4.6 指令解释执行模块的实现63-67
- 4.6.1 指令集的实现63-65
- 4.6.2 解释执行字节码的实现65-67
- 4.7 异常处理模块的实现67-68
- 4.8 本章小结68-69
- 第五章 测试与运行效果69-73
- 5.1 测试方案69
- 5.2 功能验证测试及结果69-71
- 5.2.1 基本类型加法操作测试用例69-70
- 5.2.2 APDU交互测试用例70-71
- 5.3 本章小结71-73
- 第六章 Java智能卡虚拟机安全性研究73-85
- 6.1 逻辑攻击73-78
- 6.1.1 防火墙与共享机制的安全漏洞73-76
- 6.1.2 事务机制的安全威胁76-77
- 6.1.3 逻辑攻击防范措施77-78
- 6.2 混合攻击78-83
- 6.2.1 混合攻击方式78-83
- 6.2.2 混合攻击防范措施83
- 6.3 本章小结83-85
- 第七章 总结与展望85-87
- 7.1 本文总结85-86
- 7.1.1 核心技术85-86
- 7.1.2 创新点86
- 7.2 后续展望86-87
- 参考文献87-91
- 附录91-95
- 致谢95-97
- 攻读硕士学位期间已发表或录用的论文97-99
【参考文献】
中国期刊全文数据库 前1条
1 王涛,毛志刚,叶以正;一种JavaIC卡专用CPU结构研究[J];电子学报;2000年11期
本文关键词:基于ARM平台的Java智能卡虚拟机研究与实现,,由笔耕文化传播整理发布。
本文编号:266653
本文链接:https://www.wllwen.com/shoufeilunwen/xixikjs/266653.html