写点什么

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

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

关注

评论

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

什么是低代码(Low-Code)?

阿里巴巴云原生

程序员 云原生 代码

华为云MVP高浩:打破AI开发瓶颈,解决数据、算法、算力三大难题

华为云开发者联盟

人工智能 数据 华为云

MindSpore手写数字识别初体验,深度学习也没那么神秘嘛

华为云开发者联盟

人工智能 学习 手写识别

架构师训练营第十一周作业

邓昀垚

使用resilio实现多集群的k8s pod数据双向非实时同步

东风微鸣

Kubernetes 探索与实践 openshift

怎么保护自己的音乐作品不被盗用,用FL制作防盗水印片段。

奈奈的杂社

区块链商品溯源系统开发,区块链防伪追溯系统

13530558032

产业新基建,撬动数字经济发展新机遇

京东科技开发者

人工智能 新基建 京东

架构师训练营第 1 期 第 10 周作业

李循律

【行业分享】叮咚课堂邱明丰:在线教育的最终形态的探索

ZEGO即构

排查指南 | mPaaS 小程序提示“网络不给力”时该如何排查?

蚂蚁集团移动开发平台 mPaaS

小程序 网络 小程序生态 mPaaS

“摸爬滚打”多年,从月薪3K到30Kjava大神,我是怎么蜕变的?

比伯

Java 编程 架构 面试 计算机

使用 Jira Service Management 管理资产,您需要知道的5件事

Atlassian

数字化转型 Atlassian Jira ITSM ITIL

时空碰撞系列·终

誓约·追光者

数据分析 Sparksql

深入了解物理内存管理-伙伴(Buddy)算法

ShenDu_Linux

Linux 算法 内存管理 内核

多线程源码明白了吗?不明白的话来看腾讯大牛给你画的面试重点

996小迁

Java 学习 编程 架构 面试

RocketMQ 很慢?引出了一个未解之谜

阿里巴巴云原生

开源 云原生 中间件 Java 25 周年 Arthas

Spring Boot 2.4.0正式发布,全新的配置文件加载机制(不向下兼容)

YourBatman

云原生 Spring Boot 新特性

从应用迁移到平台微认证:鲲鹏技术解读

华为云开发者联盟

鲲鹏 代码迁移 arm

打工人、打工魂、高效MES助力打工者都是人上人

Learun

敏捷开发

Vim - 可能是投资回报率最高的 Editor

hbwtJLChslMpxA8n

vim

架构师训练营第二周框架设计学习总结

Geek_xq

架构师第一期作业(第 11 周)

Cheer

作业

一点就透的二分查找算法

比伯

Java 编程 程序员 面试 计算机

业务中台建设 - 自底向上演进

孝鹏

架构 中台 业务线 数字化转型 沟通

架构师训练营第十一周总结

邓昀垚

最近我发现瑞幸在这样做私域运营

Linkflow

营销数字化 客户数据平台 CDP 私域运营

对于CRM之于现代化企业的影响以及作用的分析

Marilyn

敏捷开发 快速开发 企业开发 CRM 企业应用

首家支持阿里云函数计算 APM技术为Serverless环境赋能

博睿数据

阿里云 Serverless 运维 APM 函数

LeetCode题解:121. 买卖股票的最佳时机,暴力法,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

区块链电子票据解决方案--区块链赋能纳税服务

13530558032

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