什么是GlobalPlatform和JavaCard的关系?

8

我正在开始学习GlobalPlatfrom卡规范,但我无法理解GlobalPlatform功能如何与JavaCard相结合。 是否需要安装任何应用程序来使该卡GP兼容? 或者GP功能是在制造过程中作为JRE扩展提供给卡的吗? 甚至还有可能使非GP兼容卡变成GP兼容卡吗?


必须删除问题的最后一部分,因为明确规定询问参考资料/教程等是不被允许的。 - Maarten Bodewes
3个回答

10

全球平台(GP)主要处理智能卡上Applets的管理和生命周期管理。普通Applet没有此类权限,因此无法作为Applet加载。但是,GP可能会向Applet分配某些特权。GP是包含Java Card实现的运行时的一部分。

GP还提供了相对较小的API,供Java Card Applet使用。此GP API允许Java Cards请求并(如果它们有特权)更改Applet的生命周期。此外,GP身份验证和安全消息实现可用于个性化Applets。

大多数Java Card实现依赖于Global Platform执行管理,并且Global Platform与Java Card Forum之间确实存在合作关系。这当然很大程度上是由于许多公司都是两个组织的成员。


你能提供关于JC可用的GP API的进一步信息吗?我从未遇到过这样的东西! - Paul Bastian
它在卡规范中。它是一个独立的包,因此由GP控制。包名称为org.globalplatform,其中有3个类:CVM(PIN),GPSystemSecureChannel - Maarten Bodewes
谢谢,对于感兴趣的人:详细信息在GP 2.2附录A(或您需要的任何版本)中给出。 - Paul Bastian
@MaartenBodewes 我怎样才能在我的小程序中使用这些包?(GP API.)例如,它们是否可用于在Eclipse中包含并在我的小程序中使用? - Ebrahim Ghasemi
1
通常它们以 .jar.exp 文件的形式提供,您可以链接到这些文件,例如 gp211.jargp211.exp。这取决于 SDK 是否包含这些文件。我主要使用 JCOP,当我选择特定配置时,它已经包含了这些文件(因为在 Android 应用程序上误按了按钮,所以首先发布为答案)。 - Maarten Bodewes
我猜这是误点了。真的非常感谢。我对此一无所知! :) - Ebrahim Ghasemi

2

全球平台(Global Platform)是一种在智能卡上部署和管理多个应用程序的规范。可能每个Java Card智能卡都兼容全球平台。但通常您不需要担心全球平台的内部情况,因为用于上传和安装Java Card应用程序的工具会为您完成此操作(例如JCOP Tools、GP Shell、gpj等)。


1
GP确实有运行时API和组件。例如,可以使用此API来个性化小应用程序。因此,尽管您可以上传和安装纯Java Card小应用程序,但需要集中个性化的较大小应用程序通常包括GP功能。 - Maarten Bodewes

1
你可以在GP规范的“卡架构”章节中看到“运行环境”部分。图像“GlobalPlatform Card Architecture”展示了Java和GP之间的关系。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接