当前位置: 首页 > news >正文

数字证书管理工具 openssl keytool

 

OPENSSL 命令

openssl command [ command_opts ] [ command_args ]

常用command:

version    用于查看版本信息

enc        用于加解密

ciphers    列出加密套件

genrsa     用于生成私钥

 

-des|-des3|-idea:用来加密私钥文件的三种对称加密算法。

rsa        RSA密钥管理(例如:从私钥中提取公钥,加密私钥,或去除加密)

req        生成证书签名请求(CSR)

crl        证书吊销列表(CRL)管理

ca         CA管理(例如对证书进行签名)

dgst       生成信息摘要

rsautl     用于完成RSA签名、验证、加密和解密功能

passwd     生成散列密码

s_client   通用的SSL/TLS客户端测试工具

X509       X.509证书管理

verify      X.509证书验证

pkcs7       PKCS#7协议数据管理

 

查看证书

openssl x509 -in server.cer -text

查看私钥

openssl rsa -text -noout -in server.key

 

验证server.crt 是否是由该私有CA签发的

openssl verify -CAfile ca.crt server.crt

 

 

openssl s_client 用于建立和测试SSL/TLS连接

参数

-connect host:ip 指定要连接的目标主机和端口

-CAfile 指定CA证书文件名,用于服务器证书的验证

-cert 指定客户端证书文件

-key 指定客户端私钥文件

-showcerts 显示服务器证书链

-debug 显示调试信息,包括SSL握手过程

 

验证服务器证书

openssl s_client -connect ossip:10511 -CAfile trust.cer

显示服务器证书链

openssl s_client -connect ossip:10511 -showcerts

 

[keytool]

keytool为java原生自带,安装java后不需要再进行安装,是jdk提供的密钥和证书管理工具,用于管理自己的公钥/私钥及证书申请,导入,位于JAVA_HOME\bin\keytool.exe。

 

-certreq:生成证书请求(少用)
-changealias:更改条目的别名
-delete:删除条目
-exportcert:导出证书 (jdk1.6之前export)
-genkeypair:生成密钥对(jdk1.6之前genkey)
-genseckey:生成密钥(对称加密)
-gencert:根据证书请求生成证书
-importcert:导入证书或证书链

-importpass:导入口令
-importkeystore:从其他密钥库导入一个或所有条目
-keypasswd:更改条目的密钥口令
-list:列出密钥库中的条目
-printcert:打印证书内容
-printcertreq:打印证书请求的内容
-printcrl:打印 CRL 文件的内容
-storepasswd:更改密钥库的存储口令


1、-genkeypair(生成密钥对/创建数字证书)
选项

    -alias key的别名,每一个key通过alias区分

    -keystore 密钥库名称

    -keyalg 密钥算法名称(RSA)

    -keypass 密钥口令

    -storepass 密钥库口令

 

[KeyStore]

是一个存储库,可用于存储一系列密钥 证书,jdk提供了keytool命令来管理该存储库

java的JAVA_HOME/jre/lib/security/cacerts 是java标准信任库,存储了预信任的证书颁发机构的根证书

cacerts证书库默认密码 changeit

 

列出证书库中所有条目

keytool -list -keystore JAVA_HOME/jre/lib/security/cacerts

生成密钥

keytool -genkey -alias James -keyalg RSA -keystore mystore

导出生成证书

keytool -export -alias james -keystore mystore -file james.cer

将证书导入到java标准信任库cacerts中

keytool -import -alias james -keystore JAVA_HOME/jre/lib/security/cacerts -file james.cer

如果别名已经在cacerts中存在,删除别名

keytool -delete -alias james -keystore cacerts

 

 

 

 

http://www.lryc.cn/news/503581.html

相关文章:

  • Polars数据聚合与旋转实战教程
  • 引用类型集合的深拷贝,无需手动写循环:Apache Commons Lang (SerializationUtils)
  • HTML、CSS表格的斜表头样式设置title 画对角线
  • docker 安装mysql 5.7 详细保姆级教程
  • Kioptrix level3
  • UE5 Lyra项目源码分析-关卡配置加载
  • Cursor重置机器码-解决Too many free trials.
  • transformer学习笔记-自注意力机制(2)
  • 呼叫中心呼入大模型如何对接传统呼叫中心系统?
  • [Unity] Text文本首行缩进两个字符
  • 最新版Chrome浏览器加载ActiveX控件之Adobe PDF阅读器控件
  • springboot 对接 ollama
  • 【数据库】选择题+填空+简答
  • 从0开始写android 之xwindow
  • The Past, Present and Future of Apache Flink
  • 多模块应用、发布使用第三方库(持续更新中)
  • An error happened while trying to locate the file on the Hub and we cannot f
  • UE5安装Fab插件
  • Linux C语言操作sqlite3数据库
  • 【人工智能】因果推断与数据分析:用Python探索数据间的因果关系
  • freeswitch(30秒自动挂断)
  • 大模型呼入机器人有哪些功能特点?(转)
  • 网络工程师常用软件之配置对比软件
  • Linux之远程登录
  • #渗透测试#漏洞挖掘#红蓝攻防#js分析(上)
  • 数智读书笔记系列006 协同进化:人类与机器融合的未来
  • 操作系统(7)处理机调度
  • folly之侵入式链表
  • GPT-5 训练遇阻:预期目标难达成与交付延期的深度剖析
  • C缺陷与陷阱 — 3 深入理解表达式