如何RSA登录java卡?

How to RSA Sign in java card?

我大约花了一周时间为我的 java 卡编写 2048 RSA 签名算法。

发送和接收大量字节等问题太多...

任何人都可以帮助:

1) 向卡发送和接收大于 256 字节的数据

2) 如何正确地SignVerify使用java网卡?

提前致谢,

对于签名,您可以简单地使用 update method of the Signature class. You should be able to send as much data as you want as long as you use a signature algorithm that contains a hash algorithm, such as ALG_RSA_SHA_256_PKCS1_PSS. For older card implementations use ALG_RSA_SHA_256_PKCS1。要发送数据,您可以只使用多个命令而不是一个命令,或者您可以使用 IS 7816-4 中指定的 命令链接

或者您应该能够离线计算(部分)散列值并使用 this method,如果它存在并实现(它相对较新,从 3.0.4 开始)。

对于 99% 的实现,256 字节的输出大小应该正好适合一个响应 APDU,因此发送响应应该没有任何问题。