voj*_*jta 5 applet smartcard javacard eeprom
来自Java Card API 2.2.1的一些引用:
Signature 课程描述:
撕裂或卡重置事件将初始化的Signature对象重置为先前通过调用init()初始化时所处的状态.对于支持与临时密钥数据集,如DES,三重DES,AES,和韩国SEED签名对象密钥成为与用来初始化签名对象的密钥对象相关联的清除事件未初始化密钥的算法.
Signature.init(...) 描述:
为了获得最佳性能,当theKey参数是临时密钥时,实现应尽可能使用瞬态空间进行内部存储.
这是否意味着有些算法需要在每次Signature.init(...)调用时重写持久性内存?如果是的话,这种不愉快的行为有什么理由吗?
我问这个问题,因为我在applet中遇到了一个奇怪的行为.它计算ECDSA签名.在大约10万个签名后,卡(J2X145 by NXP)似乎坏了(我不能再选择applet了).持续的内存损坏可能是原因,因为我Signature.init(...)每次收到输入数据时都会调用.这可能Signature.init(...)是这种行为的原因吗?
是的,Signature.init()将对关键对象的引用存储在持久内存中。但是,我相信 API 必须采用“磨损均衡”功能来实现,这样才能在这种情况下保持 EEPROM 的耐用性。
Cipher.init()我建议您在检查该卡是否继续其类似行为后得出结论。
| 归档时间: |
|
| 查看次数: |
89 次 |
| 最近记录: |