首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

使用bouncy castle签名的X509证书无效

使用Bouncy Castle签名的X509证书无效可能是由于以下原因导致的:

  1. 证书签名算法不匹配:X509证书通常使用数字签名算法对证书进行签名,常见的算法包括RSA、DSA、ECDSA等。如果使用的Bouncy Castle库不支持所使用的签名算法,那么生成的证书就会被认为是无效的。在这种情况下,可以尝试使用Bouncy Castle库支持的签名算法重新生成证书。
  2. 证书链不完整:X509证书通常是通过证书链验证其有效性的。证书链是由一系列证书组成,每个证书都签署了下一个证书,直到达到根证书。如果证书链中的任何一个证书缺失或者无效,那么整个证书链就会被认为是无效的。在这种情况下,可以检查证书链是否完整,并确保每个证书都是有效的。
  3. 证书过期:X509证书通常具有有效期限,超过有效期的证书将被认为是无效的。可以检查证书的有效期限,并确保证书在有效期内。
  4. 证书主题与颁发者不匹配:X509证书中包含了证书的主题和颁发者信息。如果证书的主题与颁发者不匹配,那么证书将被认为是无效的。可以检查证书的主题和颁发者信息,并确保它们匹配。

总结起来,要解决使用Bouncy Castle签名的X509证书无效的问题,可以检查签名算法是否支持、证书链是否完整、证书是否过期以及证书的主题与颁发者是否匹配。如果问题仍然存在,可以尝试使用其他的签名库或者咨询相关的技术支持。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

netty系列之:对聊天进行加密

而PKCS是美国RSA公司公钥加密标准,包括了证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封格式等方面的一系列相关协议。...熟悉OpenSSL童鞋应该知道使用openssl命令可以生成私钥文件和对应签名证书文件。 具体openssl操作可以查看我其他文章,这里就不详细讲解了。...看这个类名字就是知道它是一个自签名证书类,并且会自动将证书文件和私钥文件生成在系统temp文件夹中,所以这个类在生产环境中是不推荐使用。...默认情况下该类会使用OpenJDK’s X.509来生成证书私钥,如果不可以,则使用 Bouncy Castle作为替代。...使用openssl从证书中提取指纹步骤如下: openssl x509 -fingerprint -sha256 -in my_certificate.crt 总结 通过设置client和server

98400

C#版开源免费Bouncy Castle密码库

前言 今天大姚给大家分享一款C#版开源、免费Bouncy Castle密码库:BouncyCastle。...项目介绍 BouncyCastle是一款C#版开源、免费Bouncy Castle密码库,开发人员可以通过该项目在他们 C# 应用程序中使用 Bouncy Castle 提供各种密码学功能,从而加强数据安全性和保护隐私信息...Bouncy Castle介绍 Bouncy Castle是一个流行密码学库,提供了广泛密码算法和协议实现(包括对称加密、非对称加密、哈希函数、数字签名等)。...它由澳大利亚注册慈善组织“Bouncy Castle军团”开发,旨在提供可靠而安全加密解决方案。 项目源代码 创建控制台应用 创建一个名为:BouncyCastleExercise控制台。...安装BouncyCastle包 搜索名为:BouncyCastle.Cryptography包安装: BouncyCastle使用示例 internal class Program {

8110

基于NettyIM聊天加密技术学习:一文理清常见加密概念、术语等

于是,需要(认证机构)对公钥进行签名,从而确认公钥没有被篡改。加了数字签名公钥称为公钥证书,一般简称证书。有了证书来认证,可以有效防御中间人攻击,随之带来了一系列非技术性工作。例如:谁来发证书?...熟悉OpenSSL童鞋应该知道使用openssl命令可以生成私钥文件和对应签名证书文件。具体openssl操作可以查看我其他文章,这里就不详细讲解了。...看这个类名字就是知道它是一个自签名证书类,并且会自动将证书文件和私钥文件生成在系统temp文件夹中,所以这个类在生产环境中是不推荐使用。...默认情况下该类会使用OpenJDK's X.509来生成证书私钥,如果不可以,则使用 Bouncy Castle作为替代。...使用openssl从证书中提取指纹步骤如下:openssl x509 -fingerprint -sha256 -inmy_certificate.crt8、小结一下上面我们对Netty聊天用到加密技术和相关概念进行了梳理

97020

SM 国密算法踩坑指南

SM2 算法也可以使用软加密方案,底层主要依赖 Bouncy Castle 库。 软加密方案在于开箱即用,开发成本较低。...软件加密方案,Bouncy Castle 库封装工具类,已经大大降低国密开发难度。...我们申请获取两个证书需要给到对手方,同样对手方也需要把他们双证书给我们。 这个过程签名需要使用自身签名证书对应私钥,验签使用对手方签名证书包含公钥。...加密使用对手方加密证书包含公钥,解密需要使用自身加密证书对应私钥。 这个流程比 RSA 单证书情况复杂了很多。 我们拿到数字证书之后,如果需要从里面提取公钥,扩在下面的网站在线解析。...https://www.gmssl.cn/gmssl/index.jsp 下图选中就是证书中包含公钥 SM2 数字签名问题 SM2 国标规定加签数据格式使用 ASN.1,所以部分硬件厂商加签输出格式就是这种

6.2K21

nginx配置https转发到tomcat(使用签名证书

一、使用openSSL生成自签名证书 1、生成RSA私钥 命令:openssl genrsa -des3 -out server.key 1024 说明:生成rsa私钥,des3算法,1024强度,server.key...是秘钥文件名 2、生成证书签名请求CSR 命令: openssl req -new -key server.key -out server.csr -config openssl.cnf 说明:openssl.cnf...其中Common Name,必须写域名,若是测试可以写localhost 3、生成自签名证书 命令: openssl x509 -req -days 365 -in server.csr -signkey...https证书是很不安全,很多浏览器也会提示网址不完全,给用户不好映象。...建议大家还是去申请一个正式证书 文章借鉴自: OpenSSL生成自签名证书:https://www.cnblogs.com/hnxxcxg/p/7610582.html nginx配置https:https

6.2K30

Android应用程序使用代码签名证书重要性

所以,开发人员有责任确保他们Andriod应用程序代码安全,而实现代码安全性完美解决方案是使用代码签名证书。 图片 为什么Android应用需要代码签名证书?...代码签名证书可防止应用程序未经授权访问,不给恶意软件攻击者留下任何空间。为了保护 Android 应用程序免受恶意软件侵害,开发人员应考虑使用代码签名证书。...未使用数字签名软件可能无法正常运行,以Windows系统为例,如果用户下载运行未签名软件, Windows系统会发出红色安全警告;而未签名ActiveX控件,Windows会直接拦截不允许运行。...由此,最终用户可以决定是否下载和使用安卓应用程序。此外,代码签名证书还可以证明此应用程序代码自签名后未被篡改,确保代码完整有效。...开发者想要在竞争激烈安卓应用市场中证明其程序真实可靠,可以使用代码签名证书标识安卓程序真实身份,消除系统“未知发布者”警告,向最终用户证明该应用程序来源可信企业。

90690

pem、x509、asn1

X.509证书里含有公钥、身份信息(比如网络主机名,组织名称或个体名称等)和签名信息(可以是证书签发机构CA签名,也可以是自签名)。...对于一份经由可信证书签发机构签名或者可以通过其它方式验证证书证书拥有者就可以用证书及相应私钥来创建安全通信,对文档进行数字签名....此日期后无效 x509 := x509.Certificate{ SerialNumber: serialNumber, NotBefore:...X.509 v3 数字证书结构如下: 证书 版本号 序列号 签名算法 颁发者 证书有效期 此日期前无效 此日期后无效 主题 主题公钥信息 公钥算法 主题公钥 颁发者唯一身份信息(可选项) 主题唯一身份信息...另外v2在Internet也没有多大范围使用。 v3引入了扩展。CA使用扩展来发布一份特定使用目的证书(比如说仅用于代码签名) 所有的版本中,同一个CA颁发证书序列号都必须是唯一

93620

OpenSSL - 利用OpenSSL自签证书和CA颁发证书

查看证书请求 openssl req -noout -text -in cert.csr 生成证书签名证书,用于自己测试,不需要CA签发 openssl req -new -x509 -key private.key...自签是用自己私钥给证书签名,CA签发则是用CA私钥给自己证书签名来保证证书可靠性, 利用OpenSSL可以自己作为CA进行证书签发,当然这并不权威。.../CA (2) 创建配置文件 之前生成秘钥和证书可以进行命令行配置,但是在创建CA时候必须使用配置文件,因为做证书颁发时候只能使用配置文件。...1024 openssl req -new -x509 -key ca.key -out ca.pem -days 365 -config openssl.cnf   (CA只能自签名证书,注意信息与要颁发证书信息一致...) (4) 颁发证书 颁发证书就是用CA秘钥给其他人签名证书,输入需要证书请求,CA私钥及CA证书,输出签名还给用户证书 这里用户证书请求信息填写国家省份等需要与CA配置一致,否则颁发证书将会无效

6.3K171

分享一个Java开发都用得到密码摘要算法包

前言 Java 中使用密码算法、摘要算法是很常见,而且自行实现也是门槛较高,除了需要对对应算法规则了如执掌之外还要使用诸如位运算、十六进制、八进制等来回转换。你以为这样就完了?...今天就推荐一个专业密码类库。 2. Bouncy Castle Bouncy Castle 是 java 一个开源 JCE 提供者,提供了目前最全面的密码学算法。...Bouncy Castle 提供一部分算法实现 上图看上去不少,其实只占了很少一部分。这里就简单演示两个经常使用算法,一种摘要算法,一种加密算法。 MD5 摘要算法。...其它算法我提供了所有的演示 DEMO,有兴趣研究可以关注公众号:码农小胖哥 回复 bouncy 获取。 3....使用风险 这一点是很容易被很多人忽略,其实密码算法在各个国家,包括我国都是限制性管制技术。相关软件在出口时会被审查合规性。

2.1K41

使用签名证书内部分发 iOS7 应用

使用签名证书内部分发 iOS7 应用 iOS 升级到 7.1 之后, 原来通过网页分发应用方法出现错误, 提示 “无法安装应用, 服务器证书无效”, 原来 iOS 要求必需将 plist 文件放到...不过如果是通过内网分发 iOS 应用的话, 修改起来还是挺麻烦, 最好还是使用签名证书实现 https 链接, 这样对内网分发应用方式修改最小。...使用 OpenSSL 创建自签名CA根证书 使用 OpenSSL 创建 CA 根证书是很方便, 只需要输入下面的几个命令即可: # 创建 CA 私钥 openssl genrsa -out ca.key...1024 # 创建 CA 根证书, 30 年比较省心 openssl req -x509 -new -key ca.key -out ca.cer -days 10950 安装 CA 根证书 由于上面创建...现在在 iOS 设备上通过 https 访问原来分发应用网页, 就应该可以下载了。 参考资料: 在iOS上使用签名SSL证书 IIS8中使用OpenSSL来创建CA并且签发SSL证书

97710

分享一个Java开发都用得到密码摘要算法包

前言 Java 中使用密码算法、摘要算法是很常见,而且自行实现也是门槛较高,除了需要对对应算法规则了如执掌之外还要使用诸如位运算、十六进制、八进制等来回转换。你以为这样就完了?...今天就推荐一个专业密码类库。 2. Bouncy Castle Bouncy Castle 是 java 一个开源 JCE 提供者,提供了目前最全面的密码学算法。...简单演示 Bouncy Castle 提供一部分算法实现 上图看上去不少,其实只占了很少一部分。这里就简单演示两个经常使用算法,一种摘要算法,一种加密算法。 MD5 摘要算法。...使用风险 这一点是很容易被很多人忽略,其实密码算法在各个国家,包括我国都是限制性管制技术。相关软件在出口时会被审查合规性。...甚至在有些国家密码算法是有专利,涉及到相关进出口业务时可能需要考虑合规检查。 其它算法我提供了所有的演示 DEMO,有兴趣研究可以关注下方公众号, 回复 bouncy 获取。

76320

非对称加密与OpenSSL

获得一张证书流程通常是: 1)用私钥生成证书签名请求(csr), 2)将csr文件发送给CA,待其验证信息无误后, CA会用自己私钥对其进行签名表示确认....CA对csr文件进行签名 当CA收到csr文件并且对请求方域名,公司等内容校验无误后,便可以对csr请求进行确认(签名), openssl req -x509 -newkey rsa:4096 -nodes...另外值得一提是, 我们用自己私钥也可以生成证书, 并且也能用这个证书来对自己csr进行签名, 这通常称为自签名(self-signed), 上面CA生成证书cacert.pem就是自签名....查看和验证证书 CA对csr进行签名后, 我们就能得到对应证书, 这里是pppan.crt, 可以用openssl查看证书详细信息: openssl x509 -noout -text -in pppan.crt...我想说是, 这一切信任机制基石是对于CA信任, 如果说CA私钥泻露,或者我们错误地信任了一个坏CA, 那么https隐私性也就不复存在了, 因为其可能对无效csr进行签名, 从而使得https

86740

搭建个人国密CA(Certification Authority)

如果我们要实现一个完善SSL/TLS/HTTPS就需要把这些场景考虑进去,这时仅仅靠自签名证书是不够。 我们也可以通过CA申请证书,对于个人开发者而言,成本比较高。...本文将探讨使用GmSSL制作国密证书,包括制作自签名证书,并使用证书签发证书。这样在开发中可以调试证书处理流程。...serverCAcert.pem$ cat serverCAcert.pem serverCAkey.pem rootcert.pem > serverCA.pem 需要注意第三个命令多了 -CA 和 -CAkey 参数,表示使用证书签名...这样,生成 server.pem 包含了根证书、Server CA证书和Server证书,包含了完整证书链,可以投入测试使用了。 再次声明: 将key和证书打包在一起,只是为了开发和调试方便。...无效CA证书 -Error with certificate at depth: 1 err 24:invalid CA certificate 原因:CA证书 CA:true 扩展属性没加上

2.7K30

一文读懂 MD5 算法

一、什么是消息摘要 消息摘要算法是密码学算法中非常重要一个分支,它通过对所有数据提取指纹信息以实现数据签名、数据完整性校验等功能,由于其不可逆性,有时候会被用做敏感信息加密。...消息摘要算法不存在密钥管理与分发问题,适合于分布式网络上使用。消息摘要算法主要应用在 “数字签名” 领域,作为对明文摘要算法。...下面我们将介绍 JDK、Bouncy Castle 和 Guava MD5 使用示例。...为了保证以下示例正常运行,首先我们需要在 pom.xml 文件中添加 Bouncy Castle 和 Guava 坐标: org.bouncycastle...Castle 实现示例中使用了 bytesToHexString 方法,该方法用于把字节数组转换成十六进制,它具体实现如下: private static String bytesToHexString

3.4K30

《吐血整理》高级系列教程-吃透Fiddler抓包教程(27)-Fiddler如何抓取Android7.0以上Https包-中篇

2.宏哥点击夜神模拟器右边菜单里夜神多开器,如下图所示: 3.添加一个Android版本大于7.0模拟器,如下图所示: 4.设置好代理,再次使用Fiddler抓包百度手机助手。提示网络繁忙。...2.下载fiddlercertmaker.exe这个Bouncy Castle证书生成器,因为新版本Android拒绝超过两年有效期证书,双击下载好fiddlercertmaker.exe(确保已关闭...2.用md5方式显示pem证书hash值, 在cmd输入如下命令: openssl x509 -inform PEM -subject_hash_old -in C:\Users\DELL\Desktop...\FiddlerRoot.pem 从上面可以看到,咱们生成Fiddler证书hash值是269953fb  3.将pem证书重命名,使用上面显示值269953fb对pem证书进行重命名,以下命令仅适用于...3.记得要进入openssl安装目录bin,才能使用openssl命令,否则会提示命令不存在,如果需要在其他目录下使用openssl命令,需要你配置环境变量即可,具体配置方法自己可以查一下,毕竟宏哥今天这里不是主要讲解

2.2K80

URL安全Base64编码

然而,标准Base64并不适合直接放在URL里传输,因为URL编码器会把标准Base64中「/」和「+」字符变为形如「%XX」形式,而这些「%」号在存入数据库时还需要再进行转换,因为ANSI SQL...为解决此问题,可采用一种用于URL改进Base64编码,它不在末尾填充'='号,并将标准Base64中「+」和「/」分别改成了「*」和「-」,这样就免去了在URL编解码和数据库存储时所要作转换,避免了编码信息长度在此过程中增加...URL安全Base64编码适用于以URL方式传递Base64编码结果场景。...该编码方式基本过程是先将内容以Base64格式编码为字符串,然后检查该结果字符串,将字符串中加号+换成中划线-,并且将斜杠/换成下划线_。 详细编码规范请参考RFC4648标准中相关描述。...补充:对于末尾“=”占位符,Bouncy Castle将之用.代替,而Commons Codes杜绝任何补位符。下面的示例代码使用Bouncy Castle方法,将“=”用“.”代替。

6.4K101
领券