




已阅读5页,还剩66页未读, 继续免费阅读
(信号与信息处理专业论文)基于javacard的智能存储卡多行业应用研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
北京邮电大学硕上学位论文 基于j a v a c a r d 的智能存储卡多行业应用研究 摘要 智能卡在银行、通信、交通等领域发挥着越来越重要的作用,它 具有大容量、稳定性高、易携带、安全性好等优点。传统的智能卡的 开发是基于芯片的,开发语言必须采用该芯片的汇编指令集,并且调 试也要依赖基于该芯片的仿真器,这就造成了开发期长,开发难度大, 并且应用程序不可移植的一系列缺陷随着智能卡的越来越广泛的应 用,传统的智能卡的以上局限性就越来越突出,人们急切需要一种开 发简便,通用且独立于平台的智能卡来满足应用需求。而以j a v a 卡为 代表的多应用智能卡平台,既继承了智能卡的安全性,又有着特有的 开放性、统一性的特点,这些因素都决定了它是一个开展多行业应用 的很好的安全载体。 本文主要研究基于j a v a c a r d 技术的普天智能存储卡的设计,以 及提出了在软件保护、移动支付等多行业的应用解决方案,并进行了 简单的安全性分析本文的主要成果如下: 1 j a v a 卡的研究:分别从j a v a c a r d 虚拟机、运行环境、应用编程 接口三部分对j a v a c a r d 的体系结构进行了全面的分析:然后对 j a v a 卡文件系统、j a v a 卡平台的安全性和j a v a c a r d 应用开发 做了详细介绍; 2 g l o b a l p l a t f o r m 规范研究:分别从运行环境、卡管理器、安全 域等方面介绍了g l o b a l p l a t f o r m 规范的体系结构,并按照安全 通信下载协议设计和开发了a p p l e t 下载软件; 3 j a v a c a r d 在软件版权保护方面的应用:首先介绍了现代密码 学中常见的几种安全算法;然后介绍了普天智能存储卡母卡 的认证协议和设计实现流程,并对其安全性做了简要分析; 4 j a v a c a r d 在移动支付上的应用:首先介绍了移动支付的业务 类型和发展趋势,以及存在的安全问题;然后详细说明了普 天金融智能存储卡应用层的开发接口和开发环境;最后提出 了普天金融智能存储卡在移动支付上的解决方案,并对内部 涉及到的安全算法进行了仿真。 关键词:j a v a 卡移动支付软件版权保护身份认证 h 北京邮电大学硕l 学位论文 t h en n t i i n d u s t r ya p p l i c a t i o no f s m a i u c a r db a s e do nj a v a c a r d a b s t r a c t s m a r tc a r d sp l a ya ni n c r e a s i n g l yi m p o r t a n tr o l e i nt h eb a n k i n g , c o m m u n i c a t i o n s ,t r a n s p o r t a t i o na n do t h e rf i e l d sw i t hi t sl a r g ec a p a c i t y , h i g hs t a b i l i t y , e a s yt oc a r r y , s e c u r i t ya n do t h e rg o o db e n e f i t s t h e d e v e l o p m e n to ft r a d i t i o n a ls m a r t c a r d s a p p l i c a t i o n si s b a s e do nt h e s p e c i f i cc h i p su s e di ns m a r t c a r d s ,w h i c hm e a n st h a tt h el a n g u a g e so ft h e d e v e l o p m e n ta r e t h ea s s e m b l el a n g u a g e sf o rt h o s e c h i p s a n dt h e d e b u g g i n gi sd e p e n d e n to nt h es p e c i a le m u l a t o r s s u c hs i t u a t i o nr e s u l t si n t h ed e l a yo ft h ep e r i o do ft h ed e v e l o p m e n ta n dt h ei n c r e a s ei nt h e d i f f i c u l t yo fd e v e l o p m e n t ,m u c hw o r s e ,a l ls o u r c ec o d e sa r ed e p e n d e n to n t h ep l a t f o r ma n dc a nn o tb et r a n s p l a n t e do rr e u s e d n o w ,w i t hm o r ea n d m o r es m a r t c a r d su s e di nt h e w o r l d ,t h e l i m i t a t i o no ft r a d i t i o n a l s m a r t c a r d si sm o r ea n dm o r ee x p o s e d ,w h i c hm a k e si tn o tk e e pt h ep a c e s o ft h en e e di nt h eb u s i n e s s p e o p l en o wn e e dan e wk i n do fs m a r t c a r d s ,e a s yt od e v e l o pa n dn o td e p e n d e n to ns p e c i f i cp l a t f o r m j a v ac a r di st h e r e p r e s e n t a t i v eo ft h em u l t i a p p l i c a t i o n ss m a r tc a r dp l a t f o r m ,w h i c ha d o p t s t h es e c u r i t yo ft h es m a r tc a r da n dh a sc h a r a c t e r so f o p e n i n ga n du n i f o r m t h ed i s s e r t a t i o nf o c u s e so nt h ei m p l e m e n t a t i o no ft h ep o t e v i os m a r t s t o r a g ec a r d ,a sw e l la sp u tf o r w a r di nt h ep r o t e c t i o no fs o f t w a r e ,m o b i l e p a y m e n t s ,a n do t h e rm u l t i i n d u s t r ya p p l i c a t i o ns o l u t i o n s ,a n dt h es a f e t y a n a l y s i s t h ef o l l o w i n gr e s u l t sa r ea c h i e v e da tt h i sd i s s e r t a t i o n : 1 t h er e s e a r c ho fj a v a c a r d :t h es y s t e ms t r u c t u r eo fj a v a c a r di s a n a l y z e df r o mt h r e ep a r t s - j a v a c a r dv i r t u a lm a c h i n e ,o p e r a t i n g e n v i r o n m e n t ,a p p l i c a t i o np r o g r a m m i n gi n t e r f a c e ;a n d t h e n d e s c r i b e di nd e t a i lo nt h ej a v a c a r df i l es y s t e m j a v a c a r d p l a t f o r ms e c u r i t ya n da p p l i c a t i o nd e v e l o p m e n t ; 1 1 1 北京邮电人学硕一i 二学位论文 g l o b a l p l a t f o r ms t a n d a r dr e s e a r c h :t h es t a n d a r da r c h i t e c t u r ei s i n t r o d u c e df r o mt h er u n n i n ge n v i r o n m e n t ,c a r dm a n a g e m e n t , s e c u r i t yd o m a i na n ds oo n ,a n di na c c o r d a n c ew i t ht h ea g r e e m e n t d o w n l o a ds e c u r ec o m m u n i c a t i o n s ,t h ea p p l e td o w n l o a ds o f t w a r e i sd e s i g n e da n dd e v e l o p e d ; t h ea p p l i c a t i o no fj a v a c a r di ns o f t w a r ec o p y r i g h tp r o t e c t i o n : f i r s ti n t r o d u c e dm o d e mc r y p t o g r a p h ys e v e r a lc o m m o ns e c u r i t y a l g o r i t h m s ;t h e ni n t r o d u c e dt h ea u t h e n t i c a t i o np r o t o c o lo ft h e m o t h e rp o t e v i os m a r t s t o r a g ec a r d ,a s w e l la s d e s i g n i m p l e m e n t a t i o np r o c e s s ,a n da n a l y z e di t ss a f e t y ; j a v a c a r di nt h ea p p l i c a t i o no fm o b i l ep a y m e n t :f i r s ti n t r o d u c e d t h ek i n do fm o i l ep a y m e n ta n di t sd e v e l o p m e n tt r e n d s ,a sw e l la s t h es e c u r i t yi s s u e ;t h e nd e t a i l e dd e s c r i p t i o no ft h ed e v e l o p m e n t i n t e r f a c ea n dd e v e l o p m e n te n v i r o n m e n to ft h ep o t e v i os m a r t s t o r a g ec a r do nt h ea p p l i c a t i o nl a y e r ;a tl a s tc o n c l u d e sa s o l u t i o n o fm o b i l ep a y m e n tw i t hp o t e v i os m a r ts t o r a g ec a r da n d s i m u l a t e st h er e l a t e di n t e m a ls e c u r i t ya l g o r i t h m k e yw o r d s :j a v a c a r d ,m o b i l ep a y m e n t s ,s o f t w a r ec o p y r i g h t p r o t e c t i o n ,a u t h e n t i c a t i o n i v 乙 王 禾 独创性( 或创新性) 声明 本人声明所呈交的论文是本人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果,也不包含为获得北京邮电大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:主巡日期:丝堡:三! 坠 关于论文使用授权的说明 学位论文作者完全了解北京邮电大学有关保留和使用学位论文的规定,即: 研究生在校攻读学位期间论文工作的知识产权单位属北京邮电大学。学校有权保 留并向国家有关部门或机构送交论文的复印件和磁盘,允许学位论文被查阅和借 阅;学校可以公布学位论文的全部或部分内容,可以允许采用影印、缩印或其它 复制手段保存、汇编学位论文。( 保密的学位论文在解密后遵守此规定) 保密论文注释:本学位论文属于保密在一年解密后适用本授权书。非保密论 文注释:本学位论文不属于保密范围,适用本授权书。 本人签名一主t 鱼生, 同期: 导师签名:j 玉j 平日期: 力够多万 北京邮电大学硕十学位论文第一章绪论 1 1 j a v ac a r d 技术的发展 第一章绪论弟一早三百t 匕 j a v ac a r d 1 】的概念是由斯伦贝谢公司在1 9 9 6 年提出来的,当时的想法是在一 个s m a r tc a r d 的操作系统里加入一个轻量级的j a v a 字节码解释器,然后把c l a s s 文 件转换成一种结构更加小巧、为卡专门定制的文件,下载到卡上执行。这种卡操 作系统的最初功能是下载、管理和执行应用程序代码和它的数据,但是还存在一 些限制。接下来的几年,在几大智能卡制造商、s u n m i c r o s y s t e m s 公司以及国际 标准化组织的共同努力下,j a v a c a r d 技术日臻完善起来。 1 9 9 6 年1 0 月,s u n 基于斯伦贝谢的研究经验发布了第一版j a v ac a r d 技术规范, 虽然那时对这种与平台无关的j a v a 智能卡所应具有的抽象特性还不十分清晰。这 一版规范很简单,仅仅规定了j a v ac a r d 的基本目标和它的体系结构:应该提供对 j a v a 语言子集的支持和一套专用于智能卡应用的a p i ,比如加密操作。 1 9 9 7 年2 月,金普斯和斯伦贝谢发起了j a v ac a r d 论坛,多家智能卡制造商先 后加入到这个组织中,并于1 9 9 7 年底发布了j a v ac a r d 技术规范的2 0 版。2 0 版包 含了更多技术细节,比如定义了具体的a p i 接口函数,并引入一个l g j a v a 虚拟机 小得多,但同样满足j a v a 语言基本特性的j a v ac a r d 虚拟机。 接下来的问题是不同j a v a 卡内的应用程序( a p p l e t ) 缺少必要的可移植性和互 操作性,例女i l c l a s s 文件的转换格式、下载流程和可执行指令的定义仍然没有统一 的规定,a p i 规范缺少必要的细节描述,这使得不同j a v a 卡应用程序几乎不可能 互相移植,所有这些工作都留给了j a v a 卡的实现者。 为了更进一步地把多应用智能卡领域向前推进,v i s a 组织在1 9 9 8 年引入了 o p e np l a t f 0 1 t 1 1 体系结构,这是一种面向智能卡的开放式的体系结构,它定义了 如何管理多应用智能卡内的应用程序,即如何下载安装新的应用以及删除原有的 应用。从一开始,v i s a 的o p e np l a t f o r i l l 就是与j a v ac a r d 紧密相关的,这从它直 接定义了a p p l e t 如何调用卡上的安全管理对象的a p i 接口就可以看出来。1 9 9 9 年,v i s a 公开了o p e np l a t f o r m 规范2 0 版,同时它还放弃对这个规范的独立维 护权并把它交给e t s i ( e u r o p et e c h n o l o g ys t a n d a r d i z a t i o ni n s t i t u t e ) 管理。由于 s u n 公司和j a v a c a r d 论坛都没有建立一套开放性的标准来规范j a v a c a r d 应用程 序的安全下载,所以o p 就成为事实上的多应用智能卡的管理标准。但o p 并没 有定义j a v ac a r d 应用程序代码的文件格式和指令集,这方面的定义涉及到j a v a 北京邮电人学硕士学位论义 第一章绪论 卡的底层安全结构,而安全性恰好是j a v a 卡的主要卖点之一。于是在1 9 9 9 年3 月,j a v ac a r d2 1 规范诞生。除了定义文 牛格式和指令集外,2 1 版j a v a c a r d 规 范引入了一种j a v a 世界独有的概念:软件防火墙安全机制。对象与其所属的 a p p l e t 明确地关联起来,当访问卡内的某个对蒙时虚拟机进行一些额外的安全检 查以确定访问的合法性。同时,因为备应用领域的文件系统格式差别巨大,所以 把访问文件系统的a p i 完全抛弃了,并且把用于加密的a p i 扩充成几个c l a s s 从j a v a c a r d 2 1 裁范发布起,j a v a c a r d 技术进入了一令成熟阶段。 1 2 j a v ac a r d 技术的应用 国外对j a v a 卡的研究比较早,如今j a v a 卡已经广泛运用于用户身份识别、 交通、数字内容发行、通讯以及金融等领域。在国内,j a v a 卡的研究和开发正在 开始起步。 美国运通银行与v i s a 组织已经选择j a v a c a r d 技术作为智能卡应用的开发平 台。基于j a v a c a r d 技术的智能卡解决方案能支持许多增值业务,如储值卡e r u o p a y , m a s t e r c a r d ,v i s a 转帐信用卡、信用卡忠诚系统与霹际网路的公钥验证等。 许多国家的政府机构新发行的身份卡采用含有j a v a c a r d 技术的智能卡来取 代原来的“纸张 式身份证。美国联邦航空总署采用了j a v ac a r d 技术平台制作了 第一个用于全美国运输工作者身份识别的运输工会卡。美国国防部也发出四百三 十万张的通用进出卡,绘美阑现役人员与合格的聘雇人员。台湾也将为二千四百 万的公民换发内含j a v ac a r d 技术的健保新卡。 电信业者如中囡移动、法国电信、香港电信、o r a n g e , s w i s s c o m ,t e l e c o mi t a l i a m o b i l e 和t e l e f o n i c a 等各国运营商,都已经发行了数百万个内含j a v ac a r d 技术的 s m 卡。 在2 0 0 7 年中国阑际金融( 银行) 技术暨设备展览会上,中国普天首次推了自 主开发研制的全球第一片智能存储卡,受到业界高度关注。中国普天是国家移动 存储器标准工作组组长单位。作为标准制定的旗手,中因普天创新性地提出并制 定了智能移动存储标准,构成新一代移动存储标准的核心。我国智能移动存储标 准瞄准了图外已有标准的不足,强调应用和服务,解决了目前移动存储标准中功 能定位单一、缺乏附加价值的缺点,是划分新旧移动产业的标志,将带动整个移 动存储产业进入一个新的高速发展阶段,给整个产业带来发展应用的新机遇。智 能存储卡是新一代移动存储国家标准应用于实践的第一个创新产品,它紧密结合 市场的需求,把存储、安全、r f i d 三者有机融合,成为一个应用平台,可在手 机、移动数字电褫、p m p 等便携终端上使用,具有大容量数据存储、用户鉴权、 北京邮电大学硕士学位论文第一章绪论 数据加解密、非接触式刷卡、移动支付等功能,可广泛应用于金融移动支付、电 信增值业务、广电移动数字电视、出版业数字内容发行等领域,市场前景非常广 阔。 本文作者在普天信息技术研究院实习期间,参与了智能存储卡的研发以及在 金融领域、数字内容发行领域、软件保护以及数字电视领域的应用开发。本文的 重点是介绍普天智能存储卡在多行业的应用和实现。 1 3 j a v ac a r d 技术的特点 j a v a 卡砼1 是一种可以运行j a v a 程序的智能卡。它充分利用了j a v a 的平台无关性, 使得j a v a 技术“一次编写,随处运行”的思想在智能卡上得以实现。 传统智能卡应用一般都是在专用开发环境,使用汇编或c 语言进行开发。由 于不同卡生产商对其智能卡定义了独特的指令集和编程接口,开发人员需要花费 大量的时间熟悉底层通信接口协议、内存管理等智能卡硬件细节。此外,由于不 同智能卡的开发环境不通用,使得应用在不同生产商的卡上进行移植变得非常复 杂。与传统的智能卡相比,j a v a 卡有许多优点: 第一,平台无关性。符合j a v a 卡规范的应用程序可以在不同制造商发行的j a v a 卡中运行。以前在智能卡上开发一种增值业务,智能卡的制造商必须根据运营商 的要求修改底层的卡上操作系统,新定制一套c o s ( c h i p so p e r a t i n gs y s t e m ) 。而 且几乎所有的c o s 都是用汇编语言等特定于某款芯片的低级语言开发,具有开发 周期长、成本高的缺点。此外,每张卡片上的应用都是固定的,售出后在卡片的 整个生命周期内不可能增加新的应用。但这些对j a v a c a r d 来说都不是问题。这是 因为j a v a c a r d 上有一个核心组件虚拟机,负责解释执行字节码( j a v a 源代码经 编译后生成的一种目标代码) ,这也正是j a v a c a r d 与普通s m a r t c a r d 的本质区别。 有了这个虚拟机,卡上的所有应用都可以用j a v a 语言来开发,开发人员不需要了 解底层的硬件结构和相关指令集,只需调用卡上提供的一套通用a p i 就可以了。 新业务的增加也没有必要修改底层系统,底层系统对应用开发都来说是透明的, 这无疑就大大缩短了增值业务的开发时间,既降低了开发人员的工作强度又节约 成本。 第二,支持一卡多用和重用。j a v a 卡允许多个应用程序安全地运行在同一卡 上,而且可以在不更换卡片的情况下,根据需要动态添加或删除卡中的应用。这些 应用可以来自同一个卡供应商,也可以来自不同的卡供应商。这样一张j a v a 卡就 可以完成不同的功能,例如,它可以有电子钱包功能,同时也可以有身份鉴别功 能。由于应用程序与操作系统是分离的,应用程序存放在e e p r o m 中,可以随时 北京邮i 乜人学硕上学位论文 第一章绪论 删除和加载,从而实现了重用,而无需更换新的智能卡,这样大大增强智能卡的 灵活性。 第三,灵活性。j a v a 语言的面向对象特性使得编程极为灵活,可利用通用的 j a v a 开发工具进行应用的开发。开发人员可以任意选择他们所熟悉和喜欢的开发 工具,几乎当今所有流行的j a v a 开发环境,如v j + + ,j b u i l d e r ,e c l i p s e 等,都可以 被用来进行j a v a 卡的开发。正因如此,快速完成和调试j a v a 卡的应用程序也变为 了可能。而在这之前,调试卡的应用程序是一个极复杂漫长的过程,因为应用程 序首先要被装载到卡的r o m 中,而装载到卡的r o m 中的程序是无法更新的,所 以对一个应用程序的调试将占用大量的时间。同时由于任何j a v a 丌发人员都可以 变为j a v a 卡开发人员,这就为智能卡的发展提供了强有力的人才保证。 第四,安全性。j a v a 卡继承了j a v a 语言的安全特性,包括原子事务、应用防火 墙等。j a v a 卡内提供了支持多种安全算法的a p i ,例如d e s 、3 d e s 、r s a 、e c c 等加密、解密以及数字签名的接口。由于其独特的优势,j a v a 卡技术已经成为智 能卡的主流发展趋势。 1 4 论文结构与主要研究成果 本章主要介绍了j a v a c a r d 技术的发展趋势、应用和特点。并对中国普天首次 推出的自主开发研制的全球第一片智能存储卡进行了详细说明。 第二章是对j a v a 卡研究的总结:首先从三个方面介绍j a v a c a r d 体系结构: 分别是j a v a c a r d 虚拟机、j a v a c a r d 运行环境、j a v a c a r d 应用编程接口;接着从 文件组织结构和基本文件结构来描述j a v a 卡的文件系统;然后从原子性和事务 处理、防火墙两方面来说明j a v a 卡平台的安全性;最后概述了j a v a 卡体系各部 分的生命周期,并介绍了j a v a c a r d 应用开发所涉及的几个方面:包括相关文件、 a p p l e t 的生成、通信协议以及客户端程序的开发。 第三章是对g l o b a lp l a t f o r m 规范的研究和实现:首先从运行环境、卡管理器、 安全域和卡的内容等方面介绍g p 规范的体系结构;然后按照安全信道初始化协 议设计和实现了应用程序安全下载软件。 第四章是j a v a c a r d 在软件版权保护上的应用和实现:首先介绍了密码学中 广泛使用的几种安全算法;然后对普天智能存储母卡的认证协议进行了分析,并 对各模块进行设计和实现;最后对普天智能存储母卡在软件版权保护上的应用进 行了安全性分析,这种离线的认证方式,可以有效地防止软件的恶意传播。 第五章是j a v a c a r d 在移动支付上的应用:首先对目前移动支付的发展趋势 进行了研究,并对基于普天金融智能存储卡的移动支付项目背景进行了介绍;接 北京邮电大学硕士学位论文 第一章绪论 着是分析了普天金融智能存储卡的体系结构,并提出了普天金融智能存储卡在移 动支付上的解决方案。 论文的最后是结束语、参考文献和致谢。 论文的主要研究成果包括:按照g p 规范中定义的安全信道下载认证协议实 现了a p p l e t 下载软件:包括密钥的存储和a p d u 指令的实现。针对目前广泛关 注的软件版权保护问题,提出了基于智能卡的离线方式解决方案,并进行了模块 设计和代码实现。对移动支付技术进行了研究,并提出了基于普天金融智能卡进 行移动支付的解决方案。 北京邮f 乜人学硕上学位论文第二章j a v a 卡的研究 第二章j a v a 卡的研究 2 1j a v ac a r d 体系结构 j a v a 卡的系统结构包含了3 个部分,每部分都定义了一个规范。 j a v a 虚拟机( j c v m ) 规范,为智能卡应用程序定义了虚拟机和一个j a v a 编程语言的子集。 j a v ac a r d 运行环境( j c b e ) 规范,描述了j a v ac a r d 的运行机制,包括内存 的管理、a p p l e t 的管理和其它一些运行特性。 j a v a c a r d 应用编程接口( a p i ) 规范,描述了一套完整的核心和扩展的j a v a 包,提供了编写智能卡应用程序的类。 回困回 2 1 1j a v ac a r d 虚拟机 图2 - 1j a v a 卡的内部结构 j c v m 是通过两个部分来实现的口1 :j a v ac a r d 虚拟机的卡内( o n c a r d ) 部分和 卡外( o f f - c a r d ) 部分。卡内部分包括j a v ac a r d 字节码解释器( i n t e r p r e t e r ) ,卡外部 分包括j a v ac a r d 的转换器( c o n v e r t e r ) j a v ac a r d 的转换器可以运行在台式p c 机或 工作站上,它把源代码通过j a v a - 编译器编译后产生的类文件( 也称为字节码) 转换 成一个c a p 文件。转换器主要的功能是对字节码文件进行优化以适合在卡中有限 的内存中运行。j a v ac a r d 解释器提供了对j a v a 语言的支持,执行字节码指令,控 北京邮电大学硕士学位论文第一章绪论 数据加解密、非接触式刷卡、移动支付等功能,可广泛应用于金融移动支付、电 信增值业务、广电移动数字电视、出版业数字内容发行等领域,市场前景非常广 阔。 本文作者在普天信息技术研究院实习期间,参与了智能存储卡的研发以及在 金融领域、数字内容发行领域、软件保护以及数字电视领域的应用开发。本文的 重点是介绍普天智能存储卡在多行业的应用和实现。 1 3 j a v ac a r d 技术的特点 j a v a 卡砼1 是一种可以运行j a v a 程序的智能卡。它充分利用了j a v a 的平台无关性, 使得j a v a 技术“一次编写,随处运行”的思想在智能卡上得以实现。 传统智能卡应用一般都是在专用开发环境,使用汇编或c 语言进行开发。由 于不同卡生产商对其智能卡定义了独特的指令集和编程接口,开发人员需要花费 大量的时间熟悉底层通信接口协议、内存管理等智能卡硬件细节。此外,由于不 同智能卡的开发环境不通用,使得应用在不同生产商的卡上进行移植变得非常复 杂。与传统的智能卡相比,j a v a 卡有许多优点: 第一,平台无关性。符合j a v a 卡规范的应用程序可以在不同制造商发行的j a v a 卡中运行。以前在智能卡上开发一种增值业务,智能卡的制造商必须根据运营商 的要求修改底层的卡上操作系统,新定制一套c o s ( c h i p so p e r a t i n gs y s t e m ) 。而 且几乎所有的c o s 都是用汇编语言等特定于某款芯片的低级语言开发,具有开发 周期长、成本高的缺点。此外,每张卡片上的应用都是固定的,售出后在卡片的 整个生命周期内不可能增加新的应用。但这些对j a v a c a r d 来说都不是问题。这是 因为j a v a c a r d 上有一个核心组件虚拟机,负责解释执行字节码( j a v a 源代码经 编译后生成的一种目标代码) ,这也正是j a v a c a r d 与普通s m a r t c a r d 的本质区别。 有了这个虚拟机,卡上的所有应用都可以用j a v a 语言来开发,开发人员不需要了 解底层的硬件结构和相关指令集,只需调用卡上提供的一套通用a p i 就可以了。 新业务的增加也没有必要修改底层系统,底层系统对应用开发都来说是透明的, 这无疑就大大缩短了增值业务的开发时间,既降低了开发人员的工作强度又节约 成本。 第二,支持一卡多用和重用。j a v a 卡允许多个应用程序安全地运行在同一卡 上,而且可以在不更换卡片的情况下,根据需要动态添加或删除卡中的应用。这些 应用可以来自同一个卡供应商,也可以来自不同的卡供应商。这样一张j a v a 卡就 可以完成不同的功能,例如,它可以有电子钱包功能,同时也可以有身份鉴别功 能。由于应用程序与操作系统是分离的,应用程序存放在e e p r o m 中,可以随时 北京邮i 乜人学硕上学位论文 第一章绪论 删除和加载,从而实现了重用,而无需更换新的智能卡,这样大大增强智能卡的 灵活性。 第三,灵活性。j a v a 语言的面向对象特性使得编程极为灵活,可利用通用的 j a v a 开发工具进行应用的开发。开发人员可以任意选择他们所熟悉和喜欢的开发 工具,几乎当今所有流行的j a v a 开发环境,如v j + + ,j b u i l d e r ,e c l i p s e 等,都可以 被用来进行j a v a 卡的开发。正因如此,快速完成和调试j a v a 卡的应用程序也变为 了可能。而在这之前,调试卡的应用程序是一个极复杂漫长的过程,因为应用程 序首先要被装载到卡的r o m 中,而装载到卡的r o m 中的程序是无法更新的,所 以对一个应用程序的调试将占用大量的时间。同时由于任何j a v a 丌发人员都可以 变为j a v a 卡开发人员,这就为智能卡的发展提供了强有力的人才保证。 第四,安全性。j a v a 卡继承了j a v a 语言的安全特性,包括原子事务、应用防火 墙等。j a v a 卡内提供了支持多种安全算法的a p i ,例如d e s 、3 d e s 、r s a 、e c c 等加密、解密以及数字签名的接口。由于其独特的优势,j a v a 卡技术已经成为智 能卡的主流发展趋势。 1 4 论文结构与主要研究成果 本章主要介绍了j a v a c a r d 技术的发展趋势、应用和特点。并对中国普天首次 推出的自主开发研制的全球第一片智能存储卡进行了详细说明。 第二章是对j a v a 卡研究的总结:首先从三个方面介绍j a v a c a r d 体系结构: 分别是j a v a c a r d 虚拟机、j a v a c a r d 运行环境、j a v a c a r d 应用编程接口;接着从 文件组织结构和基本文件结构来描述j a v a 卡的文件系统;然后从原子性和事务 处理、防火墙两方面来说明j a v a 卡平台的安全性;最后概述了j a v a 卡体系各部 分的生命周期,并介绍了j a v a c a r d 应用开发所涉及的几个方面:包括相关文件、 a p p l e t 的生成、通信协议以及客户端程序的开发。 第三章是对g l o b a lp l a t f o r m 规范的研究和实现:首先从运行环境、卡管理器、 安全域和卡的内容等方面介绍g p 规范的体系结构;然后按照安全信道初始化协 议设计和实现了应用程序安全下载软件。 第四章是j a v a c a r d 在软件版权保护上的应用和实现:首先介绍了密码学中 广泛使用的几种安全算法;然后对普天智能存储母卡的认证协议进行了分析,并 对各模块进行设计和实现;最后对普天智能存储母卡在软件版权保护上的应用进 行了安全性分析,这种离线的认证方式,可以有效地防止软件的恶意传播。 第五章是j a v a c a r d 在移动支付上的应用:首先对目前移动支付的发展趋势 进行了研究,并对基于普天金融智能存储卡的移动支付项目背景进行了介绍;接 北京邮电大学硕士学位论文 第一章绪论 着是分析了普天金融智能存储卡的体系结构,并提出了普天金融智能存储卡在移 动支付上的解决方案。 论文的最后是结束语、参考文献和致谢。 论文的主要研究成果包括:按照g p 规范中定义的安全信道下载认证协议实 现了a p p l e t 下载软件:包括密钥的存储和a p d u 指令的实现。针对目前广泛关 注的软件版权保护问题,提出了基于智能卡的离线方式解决方案,并进行了模块 设计和代码实现。对移动支付技术进行了研究,并提出了基于普天金融智能卡进 行移动支付的解决方案。 北京邮f 乜人学硕上学位论文第二章j a v a 卡的研究 第二章j a v a 卡的研究 2 1j a v ac a r d 体系结构 j a v a 卡的系统结构包含了3 个部分,每部分都定义了一个规范。 j a v a 虚拟机( j c v m ) 规范,为智能卡应用程序定义了虚拟机和一个j a v a 编程语言的子集。 j a v ac a r d 运行环境( j c b e ) 规范,描述了j a v ac a r d 的运行机制,包括内存 的管理、a p p l e t 的管理和其它一些运行特性。 j a v a c a r d 应用编程接口( a p i ) 规范,描述了一套完整的核心和扩展的j a v a 包,提供了编写智能卡应用程序的类。 回困回 2 1 1j a v ac a r d 虚拟机 图2 - 1j a v a 卡的内部结构 j c v m 是通过两个部分来实现的口1 :j a v ac a r d 虚拟机的卡内( o n c a r d ) 部分和 卡外( o f f - c a r d ) 部分。卡内部分包括j a v ac a r d 字节码解释器( i n t e r p r e t e r ) ,卡外部 分包括j a v ac a r d 的转换器( c o n v e r t e r ) j a v ac a r d 的转换器可以运行在台式p c 机或 工作站上,它把源代码通过j a v a - 编译器编译后产生的类文件( 也称为字节码) 转换 成一个c a p 文件。转换器主要的功能是对字节码文件进行优化以适合在卡中有限 的内存中运行。j a v ac a r d 解释器提供了对j a v a 语言的支持,执行字节码指令,控 北京邮电大学硕士学位论文第二章j a v a 卡的研究 制内存的分配和对象的产生,确保运行时安全性。j a v a c a r d 解释器的功能如同使 用不同语言的人在交流时所需要的翻译一样,使得用j a v a 语言编写的程序可以运 行在不同的系统上,使“一次编写,到处运行”得以实现。 2 1 2j a v ac a r d 运行环境 j a v ac a r d 的运行环境。”建立在最底层的硬件和卡的操作系统之上,它由j a v a c a r d 虚拟机( 卡内的字节码解释器) 和本地方法、j a v a c a r d 应用程序编程接口、特 定行业的扩展类、安装器( i n s t a l l e r ) 和j c r e 系统类组成。 j c r e 负责卡资源的管理、网络通信、a p p l e t 的执行、卡内系统和a p p l e t 的 安全,可以说j c r e 实质上成为了智能卡的操作系统。j c r e 的本地方法提供对 j c v m 和底层系统类的支持、负责处理低级的通信协议、内存的管理和加密的支 持。j c r e 系统类承担了j c r e 的执行任务,类似操作系统的核心。它负责管理上 的事务,管理主机上的应用程序和j a v a c a r d 中的a p p l e t 之间的通信( 主机上的应用 程序是指运行在p c 机上用来和卡中a p p l e t 通信的应用程序) ,控审1 a p p l e t 的产生、 选择和解除选择。为了完成上面提到的任务,系统类要调用本地方法。 j a v a c a r d 应用程序编程接口包含了3 个核心包和1 个扩展包,编程人员使用 这些a p i 包为j a v a c a r d 开发应用程序。特定行业的扩展类是为一些特定工业和商 业部门增加的库文件,主要是为这些部门使用的卡提供一些特殊的功能。 安装器和卡外的安装程序协同工作,使卡在生产出来并发行到卡持有者的手 里后,持卡者还可以通过一些途径把所需的软件或应用程序安全地下载到卡中。 安装器是j a v a c a r d 的一个可选部件,没有它的话,所有卡的软件包括a p p l e t 必须 在卡的生产过程中写到卡的内存中。 2 1 3j a v ac a r d 应用编程接口a p i j a v ac a r da p i 3 1 用于智能卡的编程,包含了3 个核心包和1 个扩展包,3 个核 心包是j a v a 1 a n g ,j a v a c a r d f r a m e w o r k , j a v a c a r d s e c u r i t y ,扩展包局a v a c a r d c r y p t o 。 由于卡中存储器资源和计算能力有限,所以j a v a c a r d 并不能支持j a v a 语言中所 有的功能( 比如动态类装载,线程与同步) 。 j a v a 1 a n g 包 j a v a c a r d 的j a v a 1 a n g 包是j a v a 平台的j a v a 1 a n g 包的一个子集。支持 o b j e c t ,t h r o w a b l e 和一些与虚拟机相关的e x c e p t i o n 类,j a v a 1 a n g 包提供了对基本j a v a 语言的支持。 i a v a e a r d f r a m e w o r k 包 北京邮电大学硕士学位论文第二章j a v a 卡的研究 j a v a c a r d f r a m e w o r k 是j a v a c a r d 的内核包,定义了基本的a p p l e t 类、j c s y s t e m 类和支持p i n ,u t i l i t y 和e x c e p t i o n 类,这些类是j a v a c a r d 系统的基本构件。一个应 用程序的a p p l e t 类必须是基本的a p p l e t 类的扩展,这个包中还有一个重要的类是 a p d u 类,a p d u 是通过传输协议来传送的。有两个标准的传输协议t = 0 和t = i a p d u 类被设计出来作为独立的传输协议,换一句话说,通过对a p d u 类的精心 地设计使得t = 0 和t = i 协议之间差别和具有的复杂性对a p p l e t 的开发者来说被隐 藏起来了。a p p l e t 开发者通过在a p d u 类中提供的方法很容易地处理a p d u 命令, 因此a p p l e t 可以正常地工作而不管平台支持的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 班干部培训课件
- 2025年人力资源管理师中级知识点详解与模拟题集
- 2025年软件测试工程师必-备技能手册
- 2025年物资运输调度员职业技能考试题库及解析
- 2025年高考数学冲刺模拟试题及答案解析
- 班主任智能大赛课件
- 2025年软件开发高级编程技能测试题库
- 新乡工程学院《建筑动画》2024-2025学年第一学期期末试卷
- 2025年项目经验大解密产品经理面试实战模拟题及解析技巧
- 四年级数学(除数是两位数)计算题专项练习及答案
- 蝴蝶的色彩课件
- 2025年秋季新学期教学工作会议上校长讲话:扎根课堂、走近学生、做实教学-每一节课都值得全力以赴
- 2025年度船舶抵押贷款合同范本:航运融资与风险规避手册
- 2025年《药品管理法》试题(附答案)
- 2025年新人教版小升初分班考试数学试卷
- 2025劳动合同范本【模板下载】
- 以课程标准为导向:上海市初中信息科技教学设计的探索与实践
- 2025年公共基础知识考试试题(附完整答案)
- 北川羌族自治县农业农村局北川羌族自治县测雨雷达建设项目环评报告
- 2025社区工作者必考试题库(含答案)
- 友邦资讯面试题目及答案
评论
0/150
提交评论