安全证书常用工具介绍
ssl介绍
SSL是Secure Sockets Layer(安全套接层协议)的缩写,可以在Internet上提供秘密性传输。Netscape公司在推出第一个Web浏览器的同时,提出了SSL协议标准。其目标是保证两个应用间通信的保密性和可靠性,可在服务器端和用户端同时实现支持。已经成为Internet上保密通讯的工业标准。
SSL能使用户/服务器应用之间的通信不被攻击者窃听,并且始终对服务器进行认证,还可选择对用户进行认证。SSL协议要求建立在可靠的传输层协议(TCP)之上。SSL协议的优势在于它是与应用层协议独立无关的,高层的应用层协议(例如:HTTP,FTP,TELNET等)能透明地建立于SSL协议之上。SSL协议在应用层协议通信之前就已经完成加密算法、通信密钥的协商及服务器认证工作。在此之后应用层协议所传送的数据都会被加密,从而保证通信的私密性。
1.openssl
OpenSSL是一个开放源代码的软件库包,应用程序可以使用这个包来进行安全通信,避免窃听,同时确认另一端连接者的身份。这个包广泛被应用在互联网的网页服务器上。
Eric A. Young和Tim J. Hudson自1995年开始编写后来具有巨大影响的OpenSSL软件包,这是一个没有太多限制的开放源代码的软件包。Eric A. Young 和Tim J. Hudson是加拿大人,后来由于写OpenSSL功成名就之后就到大公司里赚大钱去了。1998年,OpenSSL项目组接管了OpenSSL的开发工作,并推出了OpenSSL的0.9.1版,到目前为止,OpenSSL的算法已经非常完善,对SSL2.0、SSL3.0以及TLS1.0都支持。
OpenSSL采用C语言作为开发语言,这使得OpenSSL具有优秀的跨平台性能,这对于广大技术人员来说是一件非常美妙的事情,可以在不同的平台使用同样熟悉的东西。OpenSSL支持Linux、Windows、BSD、Mac、VMS等平台,这使得OpenSSL具有广泛的适用性。但习惯C语言总比使用C++重新写一个跟OpenSSL相同功能的软件包轻松不少。
基本功能
OpenSSL整个软件包大概可以分成三个主要的功能部分:SSL协议库、应用程序以及密码算法库。OpenSSL的目录结构自然也是围绕这三个功能部分进行规划的。
作为一个基于密码学的安全开发包,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。
辅助功能
OpenSSL对于随机数的生成和管理也提供了一整套的解决方法和支持API函数。随机数的好坏是决定一个密钥是否安全的重要前提。
https://www.chinassl.net/upload/software/win32openssl-0_9_8.rar
2.keytool
一. Keytool创建和导入命令
创建keystore和密钥对
Generate a Java keystore and key pair
keytool -genkey -alias mydomain -keyalg RSA -keystore keystore.jks -keysize 2048
为存在的keystore生成证书请求文件CSR
Generate a certificate signing request (CSR) for an existing Java keystore
keytool -certreq -alias mydomain -keystore keystore.jks -file mydomain.csr
导入根证书或中级证书到keystore
Import a root or intermediate CA certificate to an existing Java keystore
keytool -import -trustcacerts -alias root -file mydomain.crt -keystore keystore.jks
导入SSL服务器证书到keystore
Import a signed primary certificate to an existing Java keystore
keytool -import -trustcacerts -alias mydomain -file mydomain.crt -keystore keystore.jks
为存在的keystore生成自签名证书
Generate a keystore and self-signed certificate
keytool -genkey -keyalg RSA -alias selfsigned -keystore keystore.jks -storepass password -validity 360 -keysize 2048
二. Keytool查看命令
查看单个证书
Check a stand-alone certificate
keytool -printcert -v -file mydomain.crt
列出keystore存在的所有证书
Check which certificates are in a Java keystore
keytool -list -v -keystore keystore.jks
使用别名查看keystore特定条目
Check a particular keystore entry using an alias
keytool -list -v -keystore keystore.jks -alias mydomain
三. 其他Keytool命令
删除keystore里面指定证书
Delete a certificate from a Java Keytool keystore
keytool -delete -alias mydomain -keystore keystore.jks
更改keysore密码
Change a Java keystore password
keytool -storepasswd -new new_storepass -keystore keystore.jks
导出keystore里面的指定证书
Export a certificate from a keystore
keytool -export -alias mydomain -file mydomain.crt -keystore keystore.jks
列出信任的CA证书
keytool -list -v -keystore $JAVA_HOME/jre/lib/security/cacerts
导入新的CA到信任证书
Import New CA into Trusted Certs
keytool -import -trustcacerts -file /path/to/ca/ca.pem -alias CA_ALIAS -keystore
3.KeyStore Explorer
KeyStore资源管理器
KeyStore Explorer是Java命令行实用程序keytool和jarsigner的开源GUI替代品。KeyStore Explorer通过直观的图形用户界面展示其功能等。
软件开发人员应该能够专注于手头的问题,而不必使用钝的命令行工具。使用KeyStore Explorer,密钥对生成和代码签名等难以执行的安全任务变得快速而简单。
KeyStore Explorer可用于通过其直观的图形界面创建和导航KeyStores。只需几个简单的对话框即可创建和修改,导入和导出KeyStores的内容。
KeyStore Explorer支持各种KeyStore,密钥对,私钥和证书格式,并且可以在它们之间进行转换。有关支持的格式列表,请参阅功能。
KeyStore Explorer可用于使用您自己的CA签署证书。支持各种证书扩展,请参阅规范。
KeyStore Explorer提供了以JAR和J2ME“MIDlet”形式对Java应用程序进行数字签名的功能。
KeyStore Explorer是用Java编写的,可以在任何安装了Oracle JRE的机器上运行。因此,它的功能可在Windows,Mac,Unix和Linux上使用。
http://keystore-explorer.org/downloads.html
安全证书常用工具介绍相关推荐
- 学习游戏服务器开发必看,C++游戏服务器开发常用工具介绍
C++游戏服务器开发常用工具介绍 在软件开发过程中需要使用的工具类型实属众多,从需求建模到软件测试,从代码编译到工程管理,这些工具都对项目有着不可替代的作用.庄子有云,"吾生也有涯,而知也无 ...
- web安全最亲密的战友Burp Suite—网络攻防常用工具介绍--burp suit工具初体验一
本文是我的免费专栏<网络攻防常用工具介绍>的第一篇文章 磨刀不误砍柴工! 在介绍攻防技术时,突然意识基础工具的使用很容易会被忽略,但是对不熟悉的同学来说,这将会极大影响该领域的学习. 所以 ...
- PS图片基础知识及常用工具介绍
一.PS图片基础知识及常用工具介绍 PS基础教程 http://zx.kaitao.cn/tupianchuli/20120919170827.htm 选框.套索.裁剪.画笔工具:http://zx. ...
- mysql 类似于check_【小白福利—初级DBA入门必看】MySQL常用工具介绍(六)——客户端工具MySQL_check...
作为程序员你对MySQLcheck了解多少呢?如果没有深入了解过那也不用担心,这里有最全最详细的介绍,现在跟着Amy了解也不算晚哦~ 1 . 简介 mysqlcheck用来维护表:check检查.re ...
- web开发常用工具介绍
web开发工具介绍: 主要浏览器:IE浏览器.火狐浏览器.谷歌浏览器.Edge浏览器.Safari浏览器.Opera浏览器等. 浏览器市场份额:http://tongji.baidu.com/data ...
- Linux常用工具介绍
Linux工具介绍
- 【Python进阶】7-数据分析概述及常用工具介绍
当今世界对信息技术的依赖程度在不断加深,每天都会有大量的数据产生,我们经常会感到数据越来越多,但是要从中发现有价值的信息却越来越难. 这里所说的信息,可以理解为对数据集处理之后的结果,是从数据集中提炼 ...
- 博客编写常用工具介绍
作者:三十三重天 博客: http://www.zhouhuibo.club 截图/录屏 ScreenToGif ScreenToGif是个强大的Gif录制/剪辑工具' 官网地址 snipaste S ...
- 软件开发工程师常用工具介绍
本文主要记录软件开发工程师在工作及学习中常用的工具,后面有时间把每个工具的基本用法都总结下. 工具合集 序号 工具名称 简述 使用指南 1 GitHub 适合团队开发人员之间共同开发时使用 GitHu ...
最新文章
- 【BZOJ】3751: [NOIP2014]解方程【秦九韶公式】【大整数取模技巧】
- android studio下载插件时出现的read time out问题
- jquery 流程图_使用 JQuery.Flowchart
- 在Salesforce中调用外部系统所提供的的Web Service
- linux curl 特殊字符,遇到问题--curl--- url参数中有+、空格、=、%、、#等特殊符号的导致传参不全 | 易学教程...
- mvn -DskipTests和-Dmaven.test.skip=true区别
- 考研分享:三战南大,考研的路上你从不孤独(内附500G最新考研资料分享)
- Impala SQL 语言参考
- 实验二 数据库和表的操作
- EXCEL 趋势图生成的公式应用说明
- java基础--接口
- 入行 AI,如何选个脚踏实地的岗位?
- 第一代电子计算机主要使用,第一代电子计算机主要采用的电子元件是什么?
- Jupyter Notebook又一懒人神器,拖拽生成Python代码!
- vue手机端打开高德地图app
- 工作日记---android lockscreen.java 在lock状态下显示charing和alarm
- 雅思阅读话题词汇-alluvial
- 如果做好一个管理者的反思
- 单反数码相机(百科名片)
- SpringBoot整合Swagger2实现接口文档
热门文章
- 西游记里最厉害的法宝——手机
- margin-right无效问题简析
- java 1.6.0 14_JDK 1.6.0_14 发布了
- 管理软件实施(6)——售前都是细节偏执狂
- PPT如何跨页让图像对齐?
- onClick和onDblClick并存的两种解决方法
- 阿里云机器上执行 locusts 命令出现 OSError: [Errno 97] Address family not supported by protocol...
- 设计模式8-外观模式(Facade)总结整理与练习
- Mysql 数据库(二)——数据库基础
- 【VUE基础】组件化高级