写点什么

Java Card 3 包含了 Java 6 支持及一个嵌入式 Servlet 容器

  • 2009-11-15
  • 本文字数:1270 字

    阅读完需:约 4 分钟

诞生于 1997 年的 Java Card 技术旨在让智能卡、安全令牌及其他内存受限设备能够运行 Java Applet。Sun 宣称世界上有 35 亿多个 Java 智能卡设备,因此我们能够看出该项技术的应用范围是相当广泛的。自从 1997 年以来 Sun 针对该平台发布了 6 个更新,而核心架构却基本没变。但随着 Java Card 3 的发布,Sun 对其进行了大刀阔斧的改革以充分利用高端智能卡硬件领域日新月异的变革。

Java Card 3 具有两个版本:Classic Edition 和 Connected Edition。这两个版本都以具有持久化对象的持久化虚拟机为特色,多个应用能够在虚拟机上运行,同时可以基于防火墙的上下文隔离机制来防止外来的侵袭。他们都兼容于 Java Card 2,现有的 Applet(称作“Classic Applet”)也都能运行于其上。以上就是两个版本相似的一面。

Classic Edition 基于现有的 2.2.2 架构并引入了一些增强,如支持新的加密算法(s4096-bit RSA 及 NSA Suite B 等)。像旧版本的 Java Card 平台一样,Classic Edition 使用了一种分离的虚拟机技术,这充分考虑了加载到卡片上的应用的预处理问题。这种方式可以保证实现 Java Card 平台所需的内存和 CPU 可以降到最低,同时 Classic Edition 还适合于那些只有 8 位或 16 位 CPU 的低成本卡片。

Connected Edition 的目标在于具有 32 位 CPU 的高端智能卡。它引入了一个全新的虚拟机和大量新 API 与服务,但却没有使用分离的虚拟机技术来加载应用而是充分利用高端智能卡的优势,使用标准的 Java Archive(JAR)文件格式和卡片上的类文件验证来直接加载类文件。

新架构旨在让智能卡成为安全的网络结点,要么为网络提供安全服务,要么请求访问网络资源。开发者可以通过一个兼容于 Servlet 2.5 的嵌入式 Web 容器或是直接管理连接的方式将智能卡与 IP 网络和 Web Services 集成起来。由于充分利用了新虚拟机中多线程的优势,该 Web 容器可以同时分发多个 HTTP 和 HTTPS 请求。平台为那些想要直接管理网络连接的开发者提供了 Generic Connection Framework,该框架提供了一套相关的抽象层来请求和管理网络与 I/O 连接。除了 HTTP 与 HTTPS 以外,Generic Connection Framework 还支持很多其他的协议,如 TCP、TLS 以及可选的 UDP。

Connected Edition 的虚拟机基于 Connected Limited Device Configuration(CLDC)VM 1.1 之上,而由 Java ME 平台所定义的 CLDC 在移动电话上得到了广泛的应用。 相对于 Classic Edition 虚拟机来说,Connected Edition 虚拟机除了支持多线程以外还支持多位包装(multiple package)和垃圾收集。Connected Edition 虚拟机兼容于 JDK 6,除了浮点数以外支持所有的 Java 语言特性包括注解和泛型。使用新特性的 Applet 叫做“Extended Applet”。

尽管提供了这么多的增强,内存使用量依然是非常小的。James Gosling说到它适合于“24K RAM,128K EEPROM,512K ROM,32 位处理器”。

大家可以访问项目团队的 Kenai 主页来进一步了解相关信息。目前 Sun 正在开发一个 NetBeans 插件以简化 Smart Card 的 Applet 开发工作。

查看英文原文: Java Card 3 Includes Java 6 Support and an Embedded Servlet Container

2009-11-15 12:551485
用户头像

发布了 88 篇内容, 共 264.3 次阅读, 收获喜欢 8 次。

关注

评论

发布
暂无评论
发现更多内容

系统设计 | 微服务权限检查点

少个分号

系统设计

Tableau Desktop 2019 for Mac(全能数据分析工具) v2019.1.0中文激活版

mac

数据分析工具 Tableau Desktop 2019 苹果mac Windows软件 Tableau Desktop

QEMU之CPU虚拟化(三):虚拟机的创建

Linux内核拾遗

Linux Kenel 虚拟化 qemu kvm VT-x

C++中的语法知识虚继承和虚基类

芯动大师

系统设计 | 数据字典方案

少个分号

系统设计

2023-09-03:用go编写。给你一个 n 个节点的无向无根树,节点编号从 0 到 n - 1 给你整数 n 和一个长度为 n - 1 的二维整数数组 edges , 其中 edges[i] =

福大大架构师每日一题

福大大架构师每日一题

系统设计 | 敏捷项目的快速启动指南

少个分号

系统设计

系统设计 | 业务编号生成

少个分号

系统设计

系统设计 | 分布式事务场景、概念和方案整理(含概念图)

少个分号

系统设计

系统设计 | RESTful API 使用问题和建议

少个分号

系统设计

Parallels Desktop 18 for Mac(Pd虚拟机) 18.3.2中文版

mac

pd虚拟机 苹果mac Windows软件

系统设计 | 术语管理初探讨

少个分号

系统设计

探索图像数据中的隐藏信息:语义实体识别和关系抽取的奇妙之旅

汀丶人工智能

关系抽取 命名实体识别 智能文档

基于状态模式: 没有实践,再多的理论都是扯淡!!!

Immerse

ARTS打卡第3周

Johnson

ARTS 打卡计划

系统设计 | 如何管理应用系统中的配置?

少个分号

系统设计

系统设计 | 应用系统缓存策略

少个分号

系统设计

BetterMouse for Mac(鼠标增强软件) v1.5 (4028)永久激活版

mac

鼠标增强工具 苹果mac Windows软件 BetterMouse

系统设计 | 打样工程:增删改查真的那么简单吗?

少个分号

系统设计

Rhino 7 for Mac(犀牛3D建模软件) 7.32 中文激活版

mac

Rhino 7 苹果mac Windows软件 三维构建软件

系统设计 | "胖瘦" BFF:常见的两种微服务形态

少个分号

系统设计

重识Flutter状态管理 — 探索Flutter中的状态

编程的平行世界

flutter android 前端

Java Card 3包含了Java 6支持及一个嵌入式Servlet容器_Java_Charles Humble_InfoQ精选文章