- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我知道如何使用 Java 验证证书,但由于 java 卡 API 的限制(没有 java.io/其他类,只有 javacard API + Object + Throwable,我不知道如何在 java 卡上执行此操作允许)。
我没有找到任何与 javacard 兼容的证书库。我错过了什么吗?
我需要验证证书是否由 CA 签名,并且我需要验证证书的有效性。
最佳答案
通常验证证书对于智能卡来说是一项艰巨的工作。这些证书的大小通常大于 2KiB。虽然这对于通用 PC 来说是微不足道的,但对于智能卡来说却不是这样,因为智能卡中的高端卡通常只有 8 KiB 的 RAM。这在操作系统、加密协处理器、APDU 缓冲区和 - 当然 - 您的小程序之间共享。
还有一个问题:智能卡通常不包含时钟。这使得验证证书是否在有效期内成为一件棘手的事情;基本上,您需要一些值得信赖的计时方式。
还有一个事实是,证书验证通常使用 CRL 或 OCSP 来检查证书的状态。正如您可能理解的那样,执行 OCSP 查找甚至只是解析 CRL 对于这样一个受限的平台来说并不容易。
通过证书验证 CA 的签名 如果您巧妙地对其进行编程,那当然是可能的。但总的来说Card Verifiable Certificates (CVC's or CV-certificates)被使用。这些是“扁平化”证书,花里胡哨的东西更少,更容易在智能卡中解析。
通过使用更新的、经过验证的证书的开始日期,您可以使用某种日期ratchet,其中使用证书本身中的日期更新时钟。但请注意,如果新证书有一段时间没有经过验证,您仍然无法检测到过时的证书。 CV 证书通常不使用 CRL,因此您要么必须信任每个证书,要么在某些证书遭到破坏时可能需要将其列入黑名单。
尽管 Java Card Connected 版本可能提供更多支持,但我认为这对您没有任何帮助,因为 Connected 版本很少在野外被发现。
CVC 的原始规范可以在 ISO/IEC 7816-8 standard: Identification cards — Integrated circuit cards — Part 8: Commands and mechanisms for security operations 中找到, Annex A & B。注意这个标准是付费软件。
ICAO eMRTD 和 BSI TR 03110 文档也定义了这些类型的证书,因此如果您更喜欢免费软件,最好以任何证书规范为基础。
关于java - 如何验证 Java Card 上的证书有效性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43984228/
除了源评论之外,我找不到关于 card.io 的文档。 CardIOCreditCardInfo.h 文件具有 CardIOCreditCardType 的枚举。 typedef NS_ENUM(NS
问题 我正在制作幻灯片。当我转到下一张幻灯片时,我会增加我的卡 ID,如下所示: cardId++; $('#card-' + (cardId)).show(); 我还有另一个 on keyup 监听
这是我的卡片结构头文件: #include "stdafx.h" enum Suits {clubs, diamonds, hearts, spades}; enum Ranks {two = 2,
请问gmail登录页面的div.card.signin-card.clearfix的css代码是多少?我只是 CSS 的初学者。提前致谢。 最佳答案 尝试借助 inspect 元素。 .clear
我正在尝试修改 Flutter 示例中的 cards_demo.dart。我的目的是不是将内置的两张卡片的高度固定为: static final double height=300.0(或一些强制和固
在Twitter上发布推文https://startcrowd.club时,我无法显示图像卡 但它在Facebook上完美运行。 我想出示这张卡:http://startcrowd.club/imag
有没有办法将 io.card.payment.DataEntryActivity 的 screenOrientation 设置为横向?我试图在 list 中设置它,但应用程序因错误而崩溃
有没有办法将 io.card.payment.DataEntryActivity 的 screenOrientation 设置为横向?我试图在 list 中设置它,但应用程序因错误而崩溃
我有一个宽度小于图像宽度的 block 。此图像用 Angular Material 的指令包裹: 我想保持该图像的纵横比,但这是我得到的: http
如果我有一个Web应用程序,并且接收到Web浏览器通过POST请求通过HTTPS通过POST请求传输的信用卡数据,并立即打开一个套接字(SSL)到远程PCI兼容卡处理器以转发数据并等待响应,我是否允许
我正在尝试制作一些新闻页面,以便在 Twitter 上共享时显示带有图像 (summary_large_image) 的 Twitter 卡片。我在页面上添加了必要的元标记。验证器说一切都很好,实际上
我正在与 Stripe 客户、订阅和卡合作。 现在,我有一个场景,客户可以拥有多张卡。 现在,客户添加了一张新卡。我必须将新添加的卡标记为 default_source。 所以我正在做的是 Map p
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 2 年前。
如何比较卡列表?我收到此错误,但我不知道这意味着什么或如何修复它。我得到的错误: the type 'Card' cannot be used as type parameter 'T' in gen
我写信给你是因为我在 PC 上用 Java 编写了一个带有椭圆曲线的签名算法,我想将它集成到 Java Card 上。在我的程序中,我使用加密库 BouncyCaSTLe。 所以我的问题如下:是否可以
我正在尝试将图像与描述它的文本并排放置: 但是,我正在尝试在 Angular 垫卡中执行此操作,并且我最初尝试使用 mat-card-content 来执行此操作,但失败了,所以我求助于调用 mat
我正在使用 Bootstrap 4 构建砖石卡片组。现在我有 3 列,其中有 3 张卡片。是否可以对每一列的最后一张卡片进行寻址? 我可以用下面的代码来定位牌组的最后一张牌: card-columns
我想在 Bootstrap 卡中的图像和卡体之间有一个边框。我有一个 CSS 如下- .card{ border-width: 6px; border-color: rgb(255, 255,
{{s.header}} {{s.Desc}}
我已将此卡数据添加到 this site : 但是,当我将链接粘贴到我的 twitter 帐户时,卡片不会呈现。 htt
我是一名优秀的程序员,十分优秀!