问题标签 [globalplatform]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
179 浏览

smartcard - JCOP 小程序上传的阅读器问题

我已经成功使用 JCOP Tools 和 SCM SDI 010 Reader 有一段时间了。当我现在尝试更改我的读卡器时,我注意到对于其他读卡器(例如 SCM SCL 011),上传命令失败(GP Install for Load),响应为 6D00:

=> 80 E6 02 00 13 06 64 65 2E 62 64 72 08 A0 00 00 01 51 00 00 00 00 00 00 00 (29683 微秒)

<= 6D 00

状态:不支持 INS 值

我尝试了很多,但没有成功。

有任何想法吗?

0 投票
1 回答
293 浏览

applet - 在 javacard 上隐藏小程序

gpj -list如您所知,我们可以使用或使用其他工具(例如gpshellgpopensc-tool ...)中的类似命令看到驻留在智能卡上的小程序 AID 列表

我想知道有没有办法隐藏一个小程序以在这些命令的响应中列出?我的意思是上传一个小程序,当我们使用时gpj -list,智能卡不会返回它的 AID!

0 投票
1 回答
1477 浏览

javacard - MUTUAL AUTHENTICATION failed in EMV card

I am trying to send a STORE DATA command to my EMV card to store DGI values. I've got a document that describes the APDU command to install and personalize EMV application on JCOP 2.4.1 Revision 3.

In the document, the sequence of commands is:

Line written in this Document is:

the key value of issuer security domain(encryption, MAC,and key encryption key): 404142434445464748494a4b4c4d4e4f. and the value of sequence counter is 0.

I just downloaded GPSHELL 1.4.4 and try to run following script:-

however my output is:

Why does the authentication fail? To send the STORE command I need to passed authentication. How can I pass authentication?

0 投票
1 回答
501 浏览

smartcard - 智能卡中的多线程和逻辑通道

据我们所知,Java Cards 不支持多线程。问题是,他们怎么可以有多个逻辑通道但不支持多线程?为什么他们需要不止一个逻辑通道?

就我而言,我有一个支持三个逻辑通道的 java 卡。我安装Applet-AApplet-B在我的卡上。然后我通过逻辑通道 1 为 Applet-A发送了一个SELECT命令,然后我通过通道 2 为 Applet-B发送了另一个SELECT命令。

此时,我可以连续向 Applet-A 和 Applet-B 发送 APDU,而无需任何其他 Select 命令。这不是多线程吗?我的意思是 JCRE 必须同时选中 Applet-A 和 Applet-B,对吗?

0 投票
1 回答
157 浏览

smartcard - 收到 SELECT APDU 命令后的 JCRE 行为

据我所知,当JCRE接收到一个SELECT APDU 命令时,首先,它会在其注册表中搜索该命令指示的AID 。如果在其注册表中未找到 AID,则返回6A82. 但是如果JCRE找到它,它会调用被deselect()选择的小程序的方法,并且在收到一个 之后True,它会调用select()被请求的小程序的方法。如果它收到一个True从该方法接收到一个,则将该小程序标记为选中。

我的问题:

1- 如果第一个小程序(当前选定的小程序)FalseJCRE调用其deselect()方法时返回,会发生什么情况?小程序是否保留Selected

2- 如果第二个小程序(请求的小程序)FalseJCRE调用其select()方法时返回,会发生什么情况?在这种情况下,将选择哪一个小程序?默认是安全域?

0 投票
2 回答
938 浏览

javacard - JAVACARD2.2中selectingApplet()方法的作用是什么

正如此处的 JavaCard 2.2 API 文档中所述,selectingApplet()小程序方法使用该process()方法将选择此小程序的 SELECT APDU 命令与可能与文件或内部小程序状态选择相关的所有其他SELECT APDU 命令区分开来,它返回true如果这个小程序被选中。

我的问题是为什么我们需要这种方法?甚至更笼统:为什么选定的小程序需要接收 SELECT-applet 命令?我认为唯一需要知道SELECT -applet APDUs 的实体是JCRE

我建议以下场景:

  1. JCRECAD接收 APDU 命令
  2. 检查它是否是 SELECT APDU 命令。
  3. 如果不是SELECT APDU 命令,它将接收到的 APDU 发送到process()所选 Applet 的方法。和选定的小程序解释并执行它(使用开关和if表达式,不需要使用selectingApplet()方法)
  4. 如果是SELECT APDU 命令,请检查命令的数据字段的长度以查看它是SELECT File还是SELECT Applet
  5. 如果是SELECT File命令,JCRE将其process()再次发送到所选小程序的方法。但如果是SELECT Applet coomand,JCRE调用deselet()当前选择的 applet 的方法,然后调用select()新请求的 applet 的方法。并在接收到后True,将其选中并等待下一个 APDU 命令。(甚至不需要将先前的SELECT-AppletAPDU 命令发送到process()这个新选择的小程序的方法)

上述实现有什么问题?以及 JC 2.2 中当前实现的优点是什么(将所有接收的 APDU 发送到process()当前选择的小程序的方法并selectingApplet()区分不同的SELECT命令)

我认为当前的实现提供了一个漏洞!如果程序员以一种方式实现他/她的小程序,其process()方法将所有接收到的APDU写入EEPROM,他/她可以检索卡上其他已安装小程序的 AID。这是正确的吗?

0 投票
3 回答
3543 浏览

java - GlobalPlatform 和 JavaCard 是什么关系?

我开始使用 GlobalPlatfrom Card 规范,但我无法弄清楚 GLobalPlatform functinalify 是如何进入 JavaCard 的。是否应将任何小程序安装到卡中以使该卡与 GP 兼容?还是在制造过程中将 GP 功能作为 JRE 扩展提供到卡中?或者甚至可以使非 GP 兼容的卡成为 GP 兼容的吗?

0 投票
1 回答
2812 浏览

smartcard - JCOP 安全域的 AID 和“Card Not Fused”或“Not Pre-Personalized”的含义

我从这里下载了一个名为JCOP Manger的软件来处理我的CJ3A080 jcop java 卡。

它可以正确识别我的卡。但它不允许我安装或列出小程序!为什么?

该软件的输出:

在此处输入图像描述

我尝试使用CardTool(我用来将 APDU 发送到卡的软件)选择 ISD,但正如您在下面看到的,在卡上找不到任何常见的 AID:

请注意,CardTool输出格式如下:

所以,这是CardTool的输出:

我也尝试了 gp.exe工具,这是它的输出:

问题是:

  • 1-这是什么意思?“未融合(未预先个性化)
  • 2-我如何个性化它?
  • 3-我们如何才能找到卡是否熔断?
  • 4-安全域的AID是什么?

我在一个主题中问了所有这 4 个问题,因为它们彼此密切相关

0 投票
1 回答
1799 浏览

smartcard - 使用 GPSShell 在 JCOP 卡上列出小程序

我有一张 JCOP 智能卡 ( CJ3A080 )。我想列出卡上的默认小程序,所以我下载了最新版本的 GPSShell (1.4.4) 并运行名为listjcop10.txt. 但它失败了。这是脚本的内容:

列表jcop10.txt:

这是 GPSShell 的输出:

有谁知道问题的根源是什么?

请注意,这张卡与我在这里提到的卡相同

0 投票
2 回答
1108 浏览

smartcard - JCOP 识别小程序有什么用?

我有一个CJ3A080 v2.4.1 NXP JCOP智能卡。

当我想选择 AID=A0 00 00 01 67 41 30 00 FF时,我收到 SW1-SW2=6A82(未找到文件或应用程序)和一些其他数据,如下所示:

我在 google 中搜索了这个AID,我发现这是一个名为JCOP 识别 Applet的小程序的 AID,并且这个小程序不是 SELECTABLE。

我的问题:

  1. 那个数据是什么意思?
  2. 这个小程序有什么用?我何时以及如何使用它?
  3. 是否可以使它成为SELECTABLE