写点什么

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:551493
用户头像

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

关注

评论

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

岁末整理-2021

将军-技术演讲力教练

模块五作业:设计微博系统中”微博评论“的高性能高可用计算架构。

dean

架构实战营

模块5作业

忘记喝水的猫

架构训练营

迈向云原生:名企FreeWheel应用架构演进

博文视点Broadview

SpringCloudAliBaba之微服务常识扫盲

XiaoLin_Java

架构 微服务 springcloudAlibaba 签约计划第二季

将远程服务像本地一样调用?Feign来帮你!

XiaoLin_Java

架构 微服务 Feign springcloudAlibaba 12月日更

极客时间

Nydia

28天写作 12月日更

大厂算法面试之leetcode精讲15.链表

全栈潇晨

算法 链表 LeetCode

【LeetCode】相对名次Java题解

Albert

算法 LeetCode 12月日更

设计微博评论架构

张靖

#架构实战营

手把手搭建微服务项目,他到底有什么不一样?

XiaoLin_Java

架构 微服务 springcloudAlibaba 签约计划第二季 单体项目

[Pulsar] JDBC core sink connector介绍及实现

Zike Yang

Apache Pulsar 11月日更 12月日更

模块五:如何设计业务高性能高可用计算架构? --学习总结

小鹿

react源码解析9.diff算法

buchila11

React React Diff

「阿里云可观测系列公开课」正式发布,多维度助力企业强化可观测能力

阿里巴巴云原生

阿里云 云原生 直播 可观测 公开课

SpringCloudAliBaba组件之Nacos精讲【注册、配置中心】

XiaoLin_Java

微服务 nacos 配置中心 springcloudAlibaba 签约计划第二季

Redis之Pipeline详解

李子捌

redis pipeline 28天写作 12月日更

Linux里的“宝塔”,真正的宝塔!详细教程

老表

Linux 开发工具 安装宝塔 跟老表学云服务器

linux重要目录之usr和var

入门小站

Linux

在线火星文转简体中文工具

入门小站

工具

react源码解析10.commit阶段

buchila11

React react源码

刚提测就改需求,我是渣男吗?

小傅哥

Java 加班 小傅哥 需求迭代 产品功能

python 爬虫爱好者必须掌握的知识点“ 协程爬虫”,看一下如何用 gevent 采集女生用头像

梦想橡皮擦

12月日更

微博系统中“微博评论”的高性能计算架构

波波

「架构实战营」

【Dart 专题】Generics 泛型 <T>

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 12月日更

华云大咖说 | 安超信创桌面云金融行业解决方案

华云数据

SpringCloudAliBaba 组件之 Ribbon精讲【负载均衡】

XiaoLin_Java

负载均衡 微服务 Ribbon springcloudAlibaba 签约计划第二季

中年人的沉重1

张老蔫

28天写作

大厂算法面试之leetcode精讲16.set&map

全栈潇晨

LeetCode 算法面试

Git进阶(三):webstorm 的 git 切换分支

No Silver Bullet

git 12月日更

设计模式【4】-- 建造者模式详解

秦怀杂货店

设计模式

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