当前位置: 首页 > 知识库问答 >
问题:

让2个Cardle Java卡进行通信

董小林
2023-03-14

我有两个cardlets Java卡,在同一个智能卡上,我想进行通信。

我可以选择一个小程序,然后发送相应的APDU,然后取消选择它并选择另一个等等...我想知道是否可以使用逻辑通道更正确地完成它?我的意思是使用一种可以允许我不为每个APDU命令选择/取消选择每个小程序的方法?

提前感谢:)

共有2个答案

邹俊豪
2023-03-14

您应该阅读更多关于小程序防火墙、可共享对象和小程序间通信的信息。这些是标准的Javacard功能,也是(但不仅仅是)为此而设计的。

东门理
2023-03-14

是的,这是可能的。

您需要一个支持其他逻辑通道的卡。在这种情况下,您可以同时选择多个小程序。(每个通道一个小程序)幸运的是,当前的卡支持一些额外的逻辑通道。

但请记住,如果要同时选择(至少)一个软件包的两个小程序,必须在两个小程序(以及该软件包的所有其他小程序)中实现MultiSelectable接口。

如果你的小程序不是来自单个包,你就不需要实现这个接口。

之后,您可以使用MANAGE CHANNELS命令打开2个逻辑通道,并在通道0中选择App1,在通道1中选择App2(例如)。对于下一个命令,您可以使用APDU命令的CLA部分中的低半字节指定哪个通道(以及哪个小程序)是传入命令的目标。

请注意,SELECT APDU命令是MANAGE CHANNELS-Open命令的替代。(所以你实际上甚至不需要使用MANAGE CHANNELS命令)

 类似资料:
  • 我也看了这段视频,并阅读了以下问题: > 共享ViewModel以帮助片段和父活动之间的通信 从另一个片段调用fragmentMethod,但不能在ParentFragmentActivity的视图分页器中引用它们 “我的上帝”对这个问题的答复很有帮助,但我仍然不确定在我的情况下做什么是最好的事情,因为我有一个用户可以输入数据的片段,而相同的片段也应该查看数据作为输入的结果。(也许我的第一个错误是

  • 问题内容: 我有一个平均值,分别是样本1和样本2的标准差和n-样本是从样本总体中提取的,但是是由不同的实验室进行测量的。 样本1和样本2的n不同。我想进行加权(考虑n)两尾t检验。 我尝试通过创建带有scipy.stat的模块来使用scipy.stat模块,因为该模块仅获取数据,而不获取诸如mean和std dev之类的stat值(可以直接使用这些值)。但这没有用,因为数据数组必须大小相等。 对于

  • 问题内容: 我刚开始使用ReactJS,但对我遇到的问题有些困惑。 我的应用程序本质上是一个带有过滤器的列表和一个用于更改布局的按钮。目前我使用的三个组成部分:,和,现在很明显,当我更改设置,在我想引起一些方法来更新我的看法。 如何使这三个组件相互交互,或者我需要可以对其进行更改的某种全局数据模型? 问题答案: 最佳方法取决于您计划如何安排这些组件。现在想到的一些示例场景: 是的子组件 这两个和是

  • 我们的应用程序运行在8节点Weblogic集群中,并尝试与RMI服务器通信。由于RMI服务器中的错误,执行此操作的线程被卡住。我们正试图解决这个问题,但问题是在那之前,卡住的线程会减慢应用程序的速度,最终导致整个集群瘫痪。 我的问题是‘我们如何从客户端确保线程被释放?’ 任何帮助都非常感谢。 实现细节:-Weblogic 10.0MP2,具有8个节点的集群-Java 1.5 线程转储代码段: 应用

  • 对不起,我知道以前有人问过这个问题,但其他答案对我没有任何帮助。 PhpStorm一直使用4个空格来缩进,这让我抓狂。该文件是一个. php文件,我所知道的所有设置都设置正确。我已经检查了这些东西: 1.)编辑器|代码样式|“检测并使用现有文件缩进”未选中(文件仍使用2个空格) 2.)编辑器|代码样式|PHP|“选项卡大小” 3.)我已重新启动PhpStorm 4.)我已经关闭并重新打开了文件。

  • 问题内容: 我正在用Go编写负载平衡的服务器系统。 负载平衡服务器将与多个应用程序服务器通信并处理请求。这些服务器都可以在同一台计算机或网络上运行。 我已经找到了网络,但是现在我需要找到一种最佳的方式来使负载均衡器与本地应用程序服务器进行通信。使用-networking似乎并非最佳选择。 我正在尝试通过和系统调用共享内存,但是没有找到任何有效的示例,并且该软件包也完全没有文档说明。 有人可以为我提