JavaCard和Native之比较

更新时间:2023-10-01 01:58:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

JavaCard和Native之比较

JavaCard 功能特性 开发语言 纯面向对象的Java语言的子汇编和标准C,面向过程的语集。 言。 Native Java语言先进灵活,开发调试汇编语言作为机器语言,比较速度快,实现灵活。 晦涩,开发速度慢,使现有局Java没有指针,并且有内部安限,但是运行速度快,效率高。 全机制可以有效的避免越界访C语言有指针,可以灵活的实问造成的程序的错误和崩溃。 现各种内存操作,但容易因为l 所有的变量在Java中创建越界访问造成错误和崩溃。 时,都会被自动进行初始化。 C中的变量需要手工初始化,容易因为忽略造成错误。 体系构架 分为两层结构。 统一通过卡片操作系统(COS)底层为按照JavaCard规范实现来实现所有的功能。 的JavaCard平台,向上提供规COS内部也按照功能的不同,范定义的接口(API),通常支持分为多个层次,包括应用层具JavaCard API和GP API。 体交易APDU的实现,通讯协上层为按照应用需求开发的议层的实现,以及和芯片的具Applet,相当于Native卡片上的体交互等等。 ADF。可以根据不同类型的应通常通过创建不同的ADF文件用,开发多个Applet。这些的方式,来区分不同的应用。 Applet相互独立,通过AID来选择。 应用(ADF)选择 JavaCard规范定义,只支持通过可以通过AID或者DFID选择应AID选择应用(ADF)。 在应用内部,可以通过程序实用(ADF)。 1

现,用AID或者DFID选择ADF。 个人化流程 JavaCard规范推荐统一的通用不同厂家定义完全不同的个人个人化流程(CPS),在创建安全化流程,采用完全不同的个人通道后,通过统一的Store Data化指令,纷繁复杂,不便于掌命令完成卡片的个人化。 卡片锁定 握,也不便于统一。 卡片锁定后,再向卡片发送指卡片锁定后,在向卡片发送指令,由卡片上的JavaCard平台令,仍然由卡片操作系统按照规范定义统一处理,不受(COS)处理,应用指令通过具体应用(Applet)的控制。 程序内部予以屏蔽。 RSA密钥长度支按照JavaCardAPI接口V2.2.1,可以支持芯片所能支持的按8持 支持512,736,768,896,1024,字节或者4字节长度递增的密1280,1536,1984,2048位长钥长度。 度的密钥。 协作开发 可以开发一种特殊的Applet,源代码级别上的协作开发,通作为可以被其他应用Applet调过代码的重用,实现功能上的用的通用的功能模块(Library),协作。 以便于统一提供一些功能的实现。 可以通过Shareable Interface安全的调用其他Applet授权可以访问的方法。 安全性 规范定义 JavaCard规范,目前普遍支持没有统一的国际性规范。 2.2.1版本。 安全性由各卡片COS生产厂GP规范,目前普遍支持2.1.1家,通过管理和测试进行保证。 版本。 安全性由这些规范定义和保证,并经过SUN的权威认证。 2

安全控制机制 多种安全机制的参与,包括主要通过状态机来实现。特殊Applet之间的防火墙,安全域指令使状态机跳转,访问文件和安全通道的控制。 时判断状态机是否满足条件。 应用数据独立性 不同应用之间的数据直接访问将不同应用的数据组织为不同是严格禁止的,由JavaCard平的ADF文件,靠的是卡片存储台实现的防火墙实现物理隔空间上的边界来区分。 离。 数据访问 存储在RAM上的缓存数据,可存储在RAM上的缓存数据,在以在应用失去选择,或者卡片卡片Reset之后自动清除,无Reset之后自动清除,无法再次法再次访问,确保临时数据不访问,确保临时数据不会泄密。 会泄密。 数据存储 数据存储分为文件和内部数据数据统一按照文件的形式组织对象两种方式。 和存储。 对于像密钥一类的敏感数据,不论是密钥还是数据,不论是采用JavaCard规范定义的内部敏感数据还是普通数据,都存数据对象存储,该对象由放在文件中。 JavaCard平台实现,对这些敏感对密钥等敏感数据可能采取加数据进行特殊保护。 密存储的方式,或者存放在特其他的普通存储数据,以文件殊访问权限的文件中。 形式组织,便于访问和管理。 功能的修改、增加、删除 修改APDU指令 对相应的Applet源代码进行单对卡片操作系统(COS)进行独的修改,不影响其他应用的修改,可能会影响其他应用的实现和稳定性,不影响底层的指令的实现和稳定性。 JavaCard平台的实现和稳定性。需要重新进行整体的测试和认只需要对修改的Applet进行测证。 试和认证。 添加全新的指令 对相应的Applet源代码进行单对卡片操作系统(COS)进行3

独的修改,不影响其他应用的修改,可能会影响其他应用的实现和稳定性,不影响底层的指令的实现和稳定性。 JavaCard平台的实现和稳定性。 需要重新进行整体的测试和认只需要对修改的Applet进行测证。 试和认证。 不同应用下,相分别对不同应用对应的Applet对卡片操作系统(COS)进行同的指令支持不进行单独修改,互不影响,也修改,因为对相同的指令要有同功能 不会造成冲突。 实现简单,安全。 不同的解释,所以可能会有冲突。 需要通过转义表的方式,判断当前在哪一个应用对应的ADF文件下,来进行何种解释。 实现起来比较复杂,有一定风险。 添加全新的应用开发一个全新的Applet应用。对卡片操作系统(COS)进行和交易 不影响其他应用的实现和稳定修改,增加新的应用和交易。性,不影响底层的JavaCard平可能会影响其他应用的指令的台的实现和稳定性。 实现和稳定性。 只需要对新增的Applet进行测需要重新进行整体的测试和认试和认证。 证。 删除对某种应用直接将应用对应的Applet从卡对卡片操作系统(COS)进行的支持 片中删除即可。 修改,删除对应的应用的交易和指令。 应用和案例 主要应用范围 EMV2000借贷记应用(VSDC, EMV 96,PBOC1.0 ED/EP; MChip, PBOC2.0 DC); 积分; ED/EP; PBOC2.0 DC; 社保; PSAM或者ESAM; 4

NFC等新业务应用领域; Key卡; 复合应用,例如金融应用+积分USBKey。 应用,NFC应用+电信应用; 电信SIM卡。 案例数量 数量逐步增加,突出表现在借已经广泛的应用在一些传统的贷记应用领域、新业务领域和领域,或者有一定历史的项目复合应用领域。 容量和价格 EEPROM空间大通常为20K,36K,72K或者更通常为8K,16K或者32K,36K,小 芯片平台 大,便于对于多应用的支持 通常采用高端芯片平台, 通常支持RSA和双界面, 芯片频率高,处理速度快。 卡片价格 由于卡片EEPROM空间通常比由于卡片EEPROM空间通常小较大,芯片平台比较高端,所一些,所以价格相对比较便宜。 以价格比较高。 还存在JavaCard授权的问题,可能需要向SUN支付授权费用,这个费用包含在卡片费用中,由卡片生产厂家支付。

便于节约成本,大批量展开。 采用中高低端各种芯片平台, 可选支持RSA和双界面。 中。 5

本文来源:https://www.bwwdw.com/article/mo2d.html

Top