作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我可以从 X509Certificate
实例(例如 "SHA256WithRSA"
)中提取 OID 和签名算法的名称,但是我如何提取摘要算法的名称,例如例如“SHA256”
。
除了"with"
的字符串拆分或 OID 的固定映射之外,还有其他方法吗?
附带问题:拆分 “with”
是否安全?
最佳答案
证书仅包含签名算法 OID,它映射到唯一的一对摘要/算法。因此,找到摘要算法最简单的方法是使用映射表 OID -> 摘要算法。
不幸的是,我不知道您可以在哪个集中位置找到这些 OID。然而,它们可以收集在这些 RFC 中:
解析算法名称并根据“With”拆分应该可行,但有这些限制
getSigAlgName()
方法将返回 OID.a.b.c.d...
形式的字符串。例如旧的Java6不支持SHA256withDSA
算法,将打印OID.2.16.840.1.101.3.4.3.2
关于java - 如何从 X509Certificate 中提取摘要算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23294540/
我是一名优秀的程序员,十分优秀!