关于x.509java的信息

博主:adminadmin 2023-01-08 00:18:07 813

今天给各位分享x.509java的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

keytool 错误: java.lang.Exception: 所输入的不是 X.509 证书

Cause

This error occurs for three reasons:

Incorrect Alias used

Incorrect Keystore used

Incorrect Certificate used

Resolution

To resolve this issue

Check :

1. The original alias of the original keystore that was used to generate the csr must be used

2. The original keystore used to generate the CSR must be used.

3. The correct certificate must be downloaded.

java如何解读证书里的内容(通过string 来生成X509Certificate对象)

那个字符串是Base64编码后的

试着把String 转成inputStream,

InputStream inStream = new ByteArrayInputStream(caString.getBytes('UTF-8'));用这句替代 上面写的第二行代码。但是在执行第四行的时候报错。。

java.security.cert.CertificateException: Could not parse certificate: java.io.IOException: Unsupported encoding

就是把这个String 写到一个文件里,然后用上面的方法读这个文件。

关于信任锚的有关问题

信任锚指定包含可信根证书的密钥库。这些证书用来验证嵌入在 SOAP 消息中的 X.509 证书。

下列消息点使用这些密钥库来验证用于数字签名或 XML 加密的 X.509 证书:

请求使用者,如在 ibm-webservices-bnd.xmi 文件中定义的那样

响应使用者,如在 ibm-webservicesclient-bnd.xmi 文件中定义的那样(当 Web Service 正在充当另一个 Web Service 的客户机时)

密钥库对于数字签名验证的完整性很关键。如果密钥库被篡改,则数字签名验证结果将不可信。因此,建议您保护这些密钥库。ibm-webservices-bnd.xmi 文件中为请求使用者指定的绑定配置必须与 ibm-webservicesclient-bnd.xmi 文件中请求生成者的绑定配置匹配。

信任锚在 Java CertPath 应用程序编程接口(API)中定义为 java.security.cert.TrustAnchor。Java CertPath API 使用信任锚和证书库来验证嵌入在 SOAP 消息中的入局 X.509 证书。WebSphere Application Server 中的 Web Service 安全性实现支持此信任锚。在 WebSphere Application Server 中,信任锚表示为 Java 密钥库对象。密钥库的类型、路径和密码通过管理控制台或脚本编制传递给实现。

一个标准的x.509数字证书包括哪些内容?

X.509证书

X.509 标准规定了证书可以包含什么信息,并说明了记录信息的方法(数据格式)。除了签名外,所有 X.509 证书还包含以下数据:

版本

识别用于该证书的 X.509 标准的版本,这可以影响证书中所能指定的信息。迄今为止,已定义的版本有三个。

序列号

发放证书的实体有责任为证书指定序列号,以使其区别于该实体发放的其它证书。此信息用途很多。例如,如果某一证书被撤消,其序列号将放到证书撤消清单 (CRL) 中。

签名算法标识符

用于识别 CA 签写证书时所用的算法。

签发人姓名

签写证书的实体的 X.500 名称。它通常为一个 CA。 使用该证书意味着信任签写该证书的实体(注意:有些情况下(例如根或顶层 CA 证书),签发人会签写自己的证书)。

有效期

每个证书均只能在一个有限的时间段内有效。该有效期以起始日期和时间及终止日期和时间表示,可以短至几秒或长至一世纪。所选有效期取决于许多因素,例如用于签写证书的私钥的使用频率及愿为证书支付的金钱等。它是在没有危及相关私钥的条件下,实体可以依赖公钥值的预计时间。

主体名

证书可以识别其公钥的实体名。此名称使用 X.500 标准,因此在Internet中应是唯一的。它是实体的特征名 (DN),例如,

CN=Java Duke,OU=Java Software Division,O=Sun Microsystems Inc,C=US

(这些指主体的通用名、组织单位、组织和国家)。

主体公钥信息

这是被命名实体的公钥,同时包括指定该密钥所属公钥密码系统的算法标识符及所有相关的密钥参数。

X.509 1 版自 1988 年起有售,已得到广泛使用,是最常用的版本。

X.509 2 版引入了主体和签发人唯一标识符的概念,以解决主体和/或签发人名称在一段时间后可能重复使用的问题。大多数证书监视文档都极力建议不要重复使用主体或签发人名称,而且建议证书不要使用唯一标识符。版本 2 证书尚未得到广泛使用。

X.509 3 版是最新的版本(1996 年)。它支持扩展的概念,因此任何人均可定义扩展并将其纳入证书中。现在常用的扩展包括:KeyUsage(仅限密钥用于特殊目的,例如“只签”)和 AlternativeNames(允许其它标识与该公钥关联,例如 DNS 名、电子邮件地址、IP 地址)。扩展可标记为“极重要”,以表示应选中该扩展并强制执行或使用。例如,如果某一证书将 KeyUsage 扩展标记为“极重要”,而且设置为“keyCertSign”,则在 SSL 通信期间该证书出现时将被拒绝,因为该证书扩展表示相关私钥应只用于签写证书,而不应该用于 SSL。

证书中的所有数据均用两个名为 ASN.1/DER 的相关标准进行编码。抽象语法注释 1 (Abstract Syntax Notation 1) 对数据进行描述。确定性编码规则 (DER) 描述储存和传输数据的唯一方式。既有人称这一组合“强大而灵活”,也有人称之为“含混而笨拙”。

参考:百度

x.509java的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、x.509java的信息别忘了在本站进行查找喔。