javacard相关内容

用 byte 或 short 模拟 int 变量

如您所知,JavaCard 2.2.x 上没有 int 变量.我需要我正在开发的小程序的整数变量. 我想知道如何使用 byte 和 short 变量来模拟 int 变量及其算法. 解决方案 圣诞节特别回答. 使用单元测试进行了全面测试,但目前仅在 Java SE 上进行. 需要一些工作来实例化支持数组. 仍然可以通过内联左侧操作数来优化某些代码. 请注意,此代 ..
发布时间:2022-01-14 14:31:09 其他开发

使用 RSA 进行模乘会导致 Java Card 出错

您好,我正在研究 Java Card 上的一个项目,这意味着很多模乘.我设法在这个平台上使用 RSA 密码系统实现了模乘,但它似乎适用于某些数字. public byte[] modMultiply(byte[] x, short xOffset, short xLength, byte[] y,短 yOffset,短 yLength,短 tempOutoffset) {//将x值复制到临时ra ..
发布时间:2022-01-10 10:40:02 Java开发

Javacard - 垃圾收集期间断电

我注意到我的智能卡(带有 Omnikey 5121 读卡器的 NXP J2E145、J3A081、J3C145)上出现了一些非常奇怪的行为:调用 JavaCard 方法后立即断电 JCSystem.requestObjectDeletion() 可能会损坏卡:在大约 10% 的此类断电后,ATR 命令非常慢(1000 毫秒)并且我对任何其他 APDU(小程序选择、卡管理器身份验证等)都没有响应 ..
发布时间:2022-01-06 20:27:06 其他开发

在 JavaCard 中的 64 位字字节数组上向左旋转

我正在尝试对当前在 JavaCard 智能卡中表示为 8 个字节的字节数组的 64 位字的任意旋转量执行向左旋转 (ROTL) 操作. 丑陋的方法是在表示为 8 字节数组的 64 位字上硬​​编码 ROTL 的所有 64 种可能排列,但这只会使整个代码库膨胀. 如何使它更精简,以便我可以使用 byte 对 64 位字(在字节数组中)按需即时执行任意数量的 ROTL 操作和 short ..
发布时间:2021-11-25 07:29:25 C#

JCOP 3 预个性化 secid p60

我想知道如何对 jcop 3 卡进行预个性化我尝试了 JCOP 2 预个性化脚本,但它不起作用并进行了搜索,到目前为止我没有找到任何结果.我试过这个教程 https://re-ws.pl/2017/09/importunderstanding-jcop-pre-personalization/它在 jcop 2 中有效,但在 jcop 3 中无效 解决方案 您需要联系您的 NXP 代表,并 ..
发布时间:2021-11-16 22:42:01 其他开发

java卡中Applet的最大和最小大小是多少

我正在研究 java 卡,我想知道: java 卡中小程序的最大和最小大小是多少,它依赖于哪个参数? 我们可以在智能卡上安装多少个小程序? 我正在使用: 智能卡类型 = 名片 使用带有 apdu 的 jcop 的 java 卡 2.2.2 解决方案 没有官方的大小限制(在 Robert 已经发布的那些之上).根据可用内存的不同,卡可能有自己的限制 - 但没有固定的值; ..
发布时间:2021-11-16 22:39:31 Java开发

测试发送APDU时无法选择AID Card Manager

我正在尝试将小程序加载到智能卡中,然后我只想使用以下代码进行一些测试: import javax.smartcardio.*;导入 java.util.*;公共类 TestSmartCardIO {public static String toString(byte[] bytes) {StringBuffer sbTmp = new StringBuffer();for(字节 b : 字节){ ..
发布时间:2021-11-16 22:35:38 Java开发

Java Card 中的 AESKey LinkedList/Array

这篇文章与我前几天问的一个问题有关:存储对称密钥在 Java 卡中 我想在 Java Card 中实现 LinkedList 来存储 AESKey.所以我这样写了一个KeyElement类: 包链表;导入 javacard.security.AESKey;导入 javacard.security.KeyBuilder;类键元素{接下来是私有 KeyElement;私人短ID;私人 AESK ..
发布时间:2021-11-16 22:35:35 Java开发

Java Card发送数据而不获取数据APDU

我是这个领域的新手,如果我的问题很幼稚,请原谅我. 我想发行一个带有自动选择小程序的 Java 卡,几乎所有的 APDU 都将在这个小程序中得到处理.我需要这个小程序将数据发送到 CAD,而不使用 Java 卡标准中的常用格式(即不发送 0x61 0xbytesToRead 并等待 0x00 0xc0). 例如,我想发送 0x23 个字节来回答 0xA0A40000027F20 这几乎是一 ..
发布时间:2021-11-16 22:34:55 其他开发

在 javacard 中选择小程序时,是否可以返回一些数据以及状态字 9000?

我想知道我是否可以在选择 javacard 小程序时发回一些数据. 由于 select() 方法返回一个布尔值,我不知道如何从中返回数据字节. 谁能帮我解决这个问题?当我向卡发送选择命令时,我希望小程序返回一个简单的字节数组以及状态字 9000(这是成功的默认值). 即,当我发送以下命令时 00A4040006010203040506 我想要这样的回复, 010 ..
发布时间:2021-11-16 22:29:00 其他开发

从seek-for-android 访问时,Javacard 小程序RPDU 不包含任何数据

我有一个复杂的 Javacard 小程序,它是为普通智能卡(例如 NXP J3E145,T=1)开发和测试的.现在我必须在手机的 UICC 中使用它并从我的 Android 应用程序访问它.UICC 使用 T=0 协议. 当我从普通读卡器 (Omnikey 5321) 与 SIM 卡通信时,小程序工作正常. 然而,当我把它移到我的手机(Sony Xperia S)并通过seek-for ..
发布时间:2021-11-16 22:19:31 移动开发

Javacard 共享接口:lookupAID 返回 AID 但 getAppletShareableInterface 返回 null

编辑2:发现错误.我试图在构造函数中初始化 Shareable 对象.那时客户端的注册方法还没有被调用,所以 JCRE 没有它的 AID.虽然我的服务器的 getShareableInterfaceObject(AID clientaid, byte parameter) 方法不要求客户端的 AID 为 != null,但 JCRE 可能会这样做,因为它为我的客户端调用了这个方法.我现在在处理我的 ..
发布时间:2021-11-16 22:16:37 其他开发

jcop小程序上传错误

我是 Java 卡开发的新手.我使用 jcop 工具作为开发工具包.当我在 Eclipse 中运行简单的小程序时,它给出了这个错误.在运行配置中,我选择了 Java 卡模拟模式.在模拟模式下成功安装后,我想在java卡中安装应用程序. cm>上传 -b 250 "C:\Projects\Javacard\MyTestApp\bin\hms\javacatd\Myapp\javacard\Myap ..
发布时间:2021-11-16 22:16:19 Java开发

JavaCard中SDA和DDA的区别?

我有一个小程序(你可以在那里查看它JavaCard 小程序不适用于 RSA 加密).Applet 在构造函数中生成 RSA 公钥和私钥,并使用 APDU 命令加密一些字节数组. Applet 在随卡片提供的文档中使用 KeyBuilder.LENGTH_RSA_2048 生成公钥和私钥,遗憾的是 JavaCard 仅在 DDA 中支持 2048 位密钥长度. 那么问题是什么是 DDA ..
发布时间:2021-11-16 22:13:00 Java开发

如何RSA登录java卡?

我大概花了一周时间为我的 java 卡写了一个 2048 RSA 签名算法. 发送和接收大量字节等问题太多了... 有人可以帮忙吗: 1) 向卡发送和接收大于 256 字节的数量 2) 如何使用java卡正确Sign和Verify? 提前致谢, 解决方案 对于签名,您可以简单地使用 Signature 类 的update 方法.只要您使用包含散列算法的签名算法 ..
发布时间:2021-07-10 20:17:28 其他开发

验证在JavaCard上签名的数据时出现Java BadPaddingException

我正在用密码对JavaCard上的某些数据进行签名,然后将其输出到文本文件中,再将其读入Java程序并尝试进行验证.我不断收到BadPaddingException. 我正在JavaCard小程序上这样签名: 密码密码= Cipher.getInstance(Cipher.ALG_RSA_PKCS1,false);cipher.init(key.getPrivate(),Cipher.MO ..
发布时间:2021-05-04 19:22:45 Java开发