通过Java生成.pfx(.p12)证书文件

通过openssl生成pfx证书 使用openssl生成pfx文件,及在项目中的使用 阅读详情
private void  createPfxCert() throws InvalidAlgorithmParameterException, NoSuchAlgorithmException, NoSuchProviderException, IOException, CertificateException, InvalidKeySpecException, KeyStoreException {
        String keyType = "RSA";//密钥算法
        String certPassword = "111111";//证书密码
        String commonName = "某某测试设备证书";//公司名称
        String ucsCode = "ait1234567890";//公司社会信用码
        String duration = "1";//证书有效期 单位为:月
        KeyPair keyPair = KeyUtils.generateKeyPair(keyType.toLowerCase());
        String dn = "CN="+commonName + ",OU="+ucsCode+",C=CN";
        PKCS10CertificationRequest pkcs10CertificationRequest = CertUtils.generateCSR(new X500Name(dn), keyPair.getPublic(), keyPair.getPrivate());
        String p10= Base64.encodeBytes(pkcs10CertificationRequest.getEncoded());
        JSONObject certResult = applySemiCert(p10,commonName,ucsCode,duration);//申请证书
        //log.info("certResult==="+certResult.toJSONString());
        String errorCode = certResult.getString("errorCode");
        if (StringUtils.equals("0", errorCode)) {
            JSONObject certInfo = certResult.getJSONObject("certInfo");
            String cert = certInfo.getString("cert");
            //String serialNumber = certInfo.getString("serialNumber");
            X509Certificate pubKey = new JcaX509CertificateConverter().setProvider("BC")
                    .getCertificate(new X509CertificateHolder(Base64.decode(cert)));

            String privateKeyStr = Base64.encodeBytes(keyPair.getPrivate().getEncoded());
            byte[] privateKeyBytes = Base64.decode(privateKeyStr);
            KeyFactory kf = KeyFactory.getInstance("RSA");
            PrivateKey privateKey = kf.generatePrivate(new PKCS8EncodedKeySpec(privateKeyBytes));

            // 创建KeyStore,存储证书ca
            Security.insertProviderAt(new BouncyCastleProvider(), 1);
            //KeyStore store = KeyStore.getInstance("BKS", "BC");
            KeyStore store = KeyStore.getInstance("PKCS12");
            store.load(null, null);
            store.setKeyEntry("pc", privateKey,
                    certPassword.toCharArray(), new Certificate[]{pubKey});
            String outPath = "D:\\"+commonName+".pfx";
            OutputStream outputStream = new FileOutputStream(outPath);
            store.store(outputStream, certPassword.toCharArray());
        } else {
            throw new RuntimeException("error");
        }
    }

关键点,获取到cert后的代码部分,把公钥和私钥及密码存储到一个文件中。

从cer和pfx证书文件获取公、私钥 一、背景 最近在对接chinapay支付接口。 chinapay会为每个商户号都会提供两个证书文件(cer和pfx),对接时使用chinapay提供的工具jar包,直接读取文件路径,进行请求体的签名、验签、加密、解密。 chinapay提供的jar包工具类需要两个配置文件: // 该文件是:对方的公钥证书,内部只有公钥信息,用于请求的加密及响应的验签 verify.file=/Users/macuser/Desktop/chinaPay/368_cp_test.cer // 该文件是:自己的证书, 阅读详情

相关推荐

创建数字证书PFX(Windows)

在Windows操作系统中,可以使用Microsoft提供的工具和API来创建数字证书,并将其导出为PFX文件格式。然后,我们创建一个包含私钥的新证书对象,并将私钥和密码关联到该证书对象中。最后,我们使用Export方法将证书导出为PFX文件,并存储在指定的路径下。然后,我们使用MakeCert工具创建证书,并将其存储为.pvk和.cer文件。创建证书的命令中包含了多个参数,用于指定证书的属性,如名称、密钥类型、算法等。在实际使用时,建议参考相关文档和安全最佳实践,以确保创建的数字证书的安全性和可靠性。

FcUnity的博客 2221

证书pfx的生成步骤

1、在IIS上生成一个证书申请 2、把生成出来的CSR提交到证书申请处 3、审核下来后,证书申请处会下发一个.cer文件 4、把这个文件导入到IIS中 5、在IIS上导出PFX文件,需要密码的 6、双击PFX文件把证书导入到WINDOWS证书库里 7、在WINDOWS证书库里找到这个证书,导出为pfx,这里要注意的是,需要选择导出需要私钥 在个人信息交换,勾上“如果可能,包括证书路径中所有证书” ...

江湖事,技术了 7501

制作自定义pfx证书(数字签名)

将 signtool.exe 文件存放在。

墨痕诉清风的博客 3105

java p12 一定要有jks,将PFX证书转换为JKS,P12,CRT

当您需要使用Java的客户端证书身份验证时,问题甚至从证书开头就开始,因为通常它不是您想要的方式。最近,我不得不使用PFX证书进行客户端身份验证(也许还会有其他帖子),因此我不得不将其转换为Java密钥库(JKS)。我们将同时创建一个信任库和一个密钥库,因为根据您的需求,您可能需要一个或另一个。 如果您不知道,则信任库和密钥库之间的区别是(摘自JSSE参考指南: TrustManager:确定是否...

weixin_34363835的博客 1055

用Python+OpenCV搞定线激光相机标定:从棋盘格到3D点云的保姆级实战

本文详细介绍了使用Python和OpenCV进行线激光相机标定的全流程实战,从硬件准备到3D点云重建。涵盖相机内参标定、激光平面方程拟合、三维重建等关键技术,提供完整的代码实现和工程优化建议,帮助开发者实现毫米级精度的工业检测和三维测量系统。

weixin_29227425的博客 283

SAP Joule for Consultants 与 Joule for Developers 全面解读

SAP推出面向不同用户群体的Joule AI助手:开发者版(Joule for Developers)专注于编码提效,嵌入开发工具链辅助生成、重构和测试代码;顾问版(Joule for Consultants)聚焦业务场景,集成SAP云应用知识库,为咨询项目提供方案设计、差距分析和实施指引。两者共享AI底座但功能侧重点不同:开发者版优化技术开发流程,顾问版加速项目交付周期。典型应用场景包括制造业云转型方案制定和ABAP代码迁移,分别展示了两版本在业务决策支持和技术实施中的价值。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 541

java 生成ecc证书_ECC加密证书与RSA证书

linux生成ECC证书openssl ecparam -out EccCA.key -name prime256v1 -genkeyopenssl req -config /etc/pki/tls/openssl.cnf -key EccCA.key -new -out EccCA.reqopenssl x509 -req -in EccCA.req -signkey EccCA.key -ou...

weixin_27038701的博客 659

HQChart实战教程64-自定义分时图标题栏

分时图标题栏显示的是当前十字光标所在位置的分钟信息,显示在分时图窗口顶部。一般会显示品种的名称,日期,时间,价格,均价 涨幅,成交量,金额等等,hqchart内置会显示这些信息。如果要额外显示其他的字段,就需要通过替换格式化标题输出函数来是现实。我们在hqchart实例创建完成以后,通过OnCreatedCallback回调函数替换自己的格式化输出函数。返回 { AryText:[ { Text:文字, Color:颜色},…入参 data={ Data: 当前十字光标所在位置的分钟线 }

小银 1056

linux自动生成证书,Linux环境下生成证书及使用方法

生成证书的方法(1)、环境要求:Linux环境要安装openssl(2)、生成密钥1024是指定密钥的长度,命令如下:openssl genrsa -out private.pem 1024执行命令结果如下: (3)、生成证书请求文件(公钥,组织信息,联系人信息等,这里会让你输入很多东西,只需依次输入即可,如果不知道输入什么可以随便填写):命令如下openssl req -new -key pri...

weixin_39776991的博客 1499

15、电科院FTU检测标准学习笔记-基本性能

作者简介:本人从事电力系统多年,岗位包含研发,测试,工程等,具有丰富的经验在配电自动化验收测试以及电科院测试中,本人全程参与,积累了不少现场的经验。

sixtome 1864

【100%通过率】华为OD机试真题 Java&Go 实现【微服务的集成测试】【2023 Q1 | 100分】

现在有n个容器服务,服务的启动可能有一定的依赖性(有些服务启动没有依赖),其次服务自身启动加载会消耗些时间。给你一个nxn 的二维矩阵 useTime,其中 useTime=10 表示服务i自身启动加载需要消耗10s,useTimeli[j]=1 表示服务i 启动依赖服务i 启动完成,useTimei[k]=0,表示服务i 启动不依赖服务 k其实 0

MISAYAONE的博客 1万+

数字证书

利用openssl 生成p12文件, 生成密钥对 openssl genrsa -out private.key 2048   证书申请     openssl req -new -out root.csr -key private.key   自签署证书 openssl x509 -req -in root.csr -out cert.pem -signkey private.ke...

代码之路 559

自动驾驶大模型---小鹏汽车VLA大模型

随着自动驾驶技术的进步,小鹏汽车正通过云端大模型蒸馏技术,将72B参数的VLA大模型轻量化后部署到车端,以提升自动驾驶系统的智能和安全性。这种技术路线不仅解决了“模态不统一”的问题,还通过强化学习增强了模型的表现。

智能汽车人的博客 2235

ssl 证书转化,crt、p12转换jks(tomcat需要)(windows操作版)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34106122的博客 3117

YOLO11改进策略【独家融合改进】| RCSOSA + SPD + WFU

SPD-Conv是一种新的 CNN 构建模块,用于替代传统 CNN 架构中使用的步长卷积(strided convolution)和池化(pooling)层,它由空间到深度(Space-to-depth,SPD)层和非步长卷积(non - strided convolution)层组成。WFU模块通过小波变换的频率分解与跨尺度融合机制,解决了传统上采样过程中的混叠和细节丢失问题,实现了高效、高保真的面部细节重建。

Limiiiing的博客 449

SAP 成本分摊逻辑与案例(含具体数据)

摘要: SAP成本分摊通过**分配(Allocation)与分摊(Assessment)**两种方式,将间接成本中心费用按预设规则(如人数、工时、比例等)结转至直接成本对象。分配保留原始成本要素(如电费、工资),适用于需明细追踪的场景;分摊则打包为次级成本要素(如管理费用),简化核算。实操案例涵盖行政费用分配(按人数)、水电车间分摊(按工时)、机修作业分摊(作业成本法)及内部订单结算,系统通过KSV1/KSU1配置循环规则,KSV5/KSU5执行结转。关键点在于选择匹配业务的分摊基础,合理配置次级成本要素,

金牌架构师 550

springboot中SSL的配置及使用

pfx:PFX证书是一种采用PKCS#12标准格式的文件,也称为Personal Information Exchange格式,是一种包含公钥和私钥的加密证书格式。PFX证书通常用于存储私钥和公钥信息,包括公钥证书、私钥及其相关的证书链等,用于身份验证和加密通信。PFX证书通常使用.pfx或.p12作为文件扩展名。.p12:P12证书实际上与PFX证书相同。两者都是基于PKCS#12标准的加密证书格式,包含公钥和私钥等信息。所有证书的都是基于ca.crt证书生成的。ca.key: ca证书的私钥。

qq_43675092的博客 1569

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

android der 编码,Android Studio 生成 keystore 签名文件

Android Studio 生成 keystore 签名文件常见 SSL 证书格式 :.DER .CER,文件是二进制格式,只保存证书,不保存私钥。.PEM,一般是文本格式,可保存证书,可保存私钥。.CRT,可以是二进制格式,可以是文本格式,与 .DER 格式相同,不保存私钥。.PFX .P12,二进制格式,同时包含证书和私钥,一般有密码保护。.JKS,二进制格式,同时包含证书和私钥,一般有密码...

weixin_39574708的博客 882

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

KeyStore中的别名

对所有的密钥仓库项(密钥项和可信任的证书项)的访问都要通过唯一的别名来进行。别名不区分大小写,即别名 Hugo 和 hugo 指的是同一密钥仓库项。 当用-genkey命令来生成密钥对(公钥和私钥)或用 -import 命令来将证书或证书链加到可信任证书的清单中,以增加一个实体到密钥仓库中,必须指定了一个别名。后续 keytool 命令必须使用这一相同的别名来引用该实体。 可以将pf

王浩的技术博客 1万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

android studio 创建签名文件,Android Studio 生成 keystore 签名文件

Android Studio 生成 keystore 签名文件常见 SSL 证书格式 :.DER .CER,文件是二进制格式,只保存证书,不保存私钥。.PEM,一般是文本格式,可保存证书,可保存私钥。.CRT,可以是二进制格式,可以是文本格式,与 .DER 格式相同,不保存私钥。.PFX .P12,二进制格式,同时包含证书和私钥,一般有密码保护。.JKS,二进制格式,同时包含证书和私钥,一般有密码...

weixin_33301143的博客 358

java net 配置局域网受信任的https

这时候会得到2个文件。

2401_89221704的博客 330

java读取pfx或P12格式的个人交换库公私钥

使用的是CFCA签发的用于银行间交换数据的证书,下载后直接添加到浏览器中 1、导出 从浏览器导出p12文件(包含私钥) 2、验证 两种方式: openssl 代码(请注意alias别名是如何获取的): package com.shengpay.mas.demo.cert; import org.apache.commons.codec.binary.Bas...

weixin_30448603的博客 236

证书学习(二)搞懂 keystore、jks、p12、pfx、cer、crt、csr、pem、key文件的区别

证书学习(二)搞懂 keystore、jks、p12、pfx、crt、csr、pem文件的区别

ACGkaka的博客 7129

java从 .pfx或.p12文件中获取公钥和私钥

java.security.KeyStore也支持PKCS12编码格式的文件解析,从.pfx或.p12文件中获取证书和私钥可以通过java.security.KeyStore来进行操作 要注意的地方是有关密钥的别名(alias) 我们用keytool工具产生证书和密钥时会被要求定义一个别名。 但用openssl之类的工具产生证书和密钥时,别名不是必须的。 获取密钥和证书时,需要指定

一个人,去做自己认为做不到的事情,才能进步 4133

使用openssl 生成RSA、SM2、ECC的P12证书的方法

使用openssl 生成RSA、SM2、ECC的P12证书的方法,使用keytool生成keystore证书

weixin_39891030的博客 5876
上一篇: pfx证书格式文件转keystore格式
下一篇: 安装Python开发环境
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值