openssl生成证书

使用openssl生成证书

生成EC证书

## 生成ec私钥
openssl ecparam -genkey -name prime256v1 -out eckey.pem
## 生成ec证书请求文件,指定私钥
openssl req -new -sha256 -key eckey.pem -subj /C=CN/ST=Shanghai/L=Yangpu/O=Tech./OU=IT/CN=www.xiaoma.cn -out eccsr.csr
## 生成ec证书,指定私钥和证书请求文件
openssl req -x509 -sha256 -days 365 -key eckey.pem -in eccsr.csr -out eccert.pem

生成RSA证书

## 生成rsa私钥
openssl genrsa -out rsa.key
## 生成rsa证书请求文件,指定私钥
openssl req -new -key rsa.key -nodes -sha256 -subj /C=CN/ST=Shanghai/L=Yangpu/O=Tech./OU=IT/CN=www.xiaoma.cn -out rsa.pem
## 生成rsa证书,指定私钥和证书请求文件
openssl x509 -in rsa.pem -days 100 -signkey rsa.key -req -sha256 -out rsacert.pem

获取公钥

## 通过证书获取公钥信息,rsa.pem为证书地址
openssl x509 -in rsa.pem -pubkey 

java解析证书为jwk

<dependency>
    <groupId>com.nimbusds</groupId>
    <artifactId>nimbus-jose-jwt</artifactId>
    <version>[ version ]</version>
</dependency>
import com.nimbusds.jose.jwk.JWK;
import com.nimbusds.jose.jwk.JWKSet;
import com.nimbusds.jwt.JWT;
import com.nimbusds.jwt.JWTParser;

import java.security.PrivateKey;
import java.util.List;

public class JWKConver{

    private static String privateKeyStr = "";

    private static String jwkStr = "";
    public static void main(String[] args) throws Exception{

        JWK jwk = JWK.parseFromPEMEncodedObjects(privateKeyStr);
        //私钥
        System.out.println(jwk);
        //ras证书
        PrivateKey privateKey = jwk.toRSAKey().toPrivateKey();
        //公钥
        System.out.println(jwk.toPublicJWK());

    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值