首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaCard的数学库?

JavaCard的数学库?
EN

Stack Overflow用户
提问于 2013-03-12 21:58:26
回答 2查看 713关注 0票数 1

我目前正在做一个JavaCard项目(v.2.2.2),我需要使用平方根、对数等来计算值……

我知道JavaCard应用程序接口中没有Math类,我想知道是否有其他库提供这样的操作?

此外,我不能使用double值,但我需要使用。有没有办法在JavaCard应用编程接口中表示SQRT值并执行操作(如double、sqrt等)?

感谢任何人的帮助!

EN

回答 2

Stack Overflow用户

发布于 2013-05-23 19:19:29

javacard 2.2.2只支持boolean、byte、short和可选的int。如果你真的需要执行Math,那么你需要用棘手的方法创建你自己的类,当然结果并不精确。

最佳实践是卡只存储数据并进行简单的计算/加密,而服务器/终端端计算复杂的事情。在卡中存储双精度的解决方法是使用字节数组。

票数 1
EN

Stack Overflow用户

发布于 2018-12-05 17:03:29

从2.2.2开始,JavaCard应用编程接口中有一个功能有限的javacardx.framework.math包(仅限加、减、乘)。但是,物理卡通常不支持,即使支持,它也可能是only 8 bytes long

JCAlgTest现在还提供所有JavaCard包的结果,包括数据库(包括javacardx.framework.math)中的卡支持的所有版本。

或者,您可以考虑尝试使用JCMathLib library。该库仅使用公共JC调用来提供任意长度的BigInteger (以及ECPoint操作),并且是旧版BigNat library的改进版本。它将消耗大约1KB内存,并需要支持ECC的卡(如果您喜欢使用ECPoint,仅对于BigInteger不是必需的)。实现部分在硬件中完成(使用RSA和ECC协处理器),部分在软件中完成,因此对旁路和故障诱导攻击的抵抗力较小。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15363244

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档