keytool

Java实现 SSL双向认证

痴心易碎 提交于 2020-03-26 16:53:27
我们常见的SSL验证较多的只是验证我们的服务器是否是真实正确的,当然如果你访问的URL压根就错了,那谁也没有办法。这个就是所谓的SSL单向认证。 但是实际中,我们有可能还会验证客户端是否符合要求,也就是给我们每个用户颁发一个证书,比且每个数字证书都是唯一的,不公开的。这样就能通过这个数字证书保证当前访问我服务器的这个用户是经过服务器认可的,其他人不可访问。 双向认证 从第一个层面上 确保了服务器 与客户端 都是互相认可的。那么他们之间要进行通信,就会在通信协议上附加SSL协议,确保通信的内容是加密的,即使是sniffer这样的网络嗅探工具看到的都是 乱码。以后给大家演示下不加密的情况下,用sniffer看到的是什么。恐怕这样你就能提高警惕了。 以下内容从网络上摘抄 加以实际验证后修改的。 模拟场景: Server端和Client端通信,需要进行授权和身份的验证,即Client只能接受Server的消息,Server只能接受Client的消息。 实现技术: JSSE(Java Security Socket Extension) 是Sun为了解决在Internet上的安全通讯而推出的解决方案。它实现了SSL和TSL(传输层安全)协议。在JSSE中包含了数据加密,服务器验 证,消息完整性和客户端验证等技术。通过使用JSSE,开发人员可以在客户机和服务器之间通过TCP

Android签名总结

柔情痞子 提交于 2020-03-24 13:37:38
转:http://www.cnblogs.com/wanqieddy/p/3556060.html signapk.jar与eclipse export插件默认赋予程序一个DEBUG权限的签名 signapk.jar包含有系统权限(system api, permission),而eclipse export插件默认赋予程序一个DEBUG权限的签名。 D:\work_feixun\GalleryBack>java -jar signapk.jar platform.x509.pem platform.pk8 D:\work_feixun\Gallery2\bin\Gallery.apk Gallery_signed.apk 注: signapk.jar 位于 out/host/linux-86/framework/signapk.jar platform.x509.pem platform.pk8 位于 build/target/product/security/platform.x509.pem, platform.pk8 Gallery.apk的生成,先在eclipse中对project->clean,然后 run ->android application.在bin目录下会生成Gallery.apk。 最后 D:\work_feixun\GalleryBack>java

Android应用签名

ε祈祈猫儿з 提交于 2020-03-24 12:53:53
http://www.cnblogs.com/ghj1976/archive/2011/07/18/2109381.html 为了要签名? 开发Android的人这么多,完全有可能大家都把类名,包名起成了一个同样的名字,这时候如何区分?签名这时候就是起区分作用的。 由于开发商可能通过使用相同的Package Name来混淆替换已经安装的程序,签名可以保证相当名字,但是签名不同的包不被替换。 APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉。 这样签名其实也是开发者的身份标识。交易中抵赖等事情发生时,签名可以防止抵赖的发生。 签名的注意事项 所有的Android应用都必须有数字签名,没有不存在数字签名的应用,包括模拟器上运行的。Android系统不会安装没有数字证书的应用。 签名的数字证书不需要权威机构来认证,是开发者自己产生的数字证书,即所谓的自签名。 模拟器开发环境,开发时通过ADB接口上传的程序会先自动被签有Debug权限,然后才传递到模拟器。如下图所示,Eclipse菜单的Window -> Preferences -> Android –> Build 下显示的是我们默认的调试用的签名数字证书。 正式发布一个Android应用时,必须使用一个合适的私钥生成的数字证书来给程序签名

Logstash 运行报 setting default path failed: the trustAnchors parameter must be non-empty

纵饮孤独 提交于 2020-03-20 10:18:28
3 月,跳不动了?>>> 前提 jdk: /opt/jdk # version: jdk8 logstash: /opt/logstash # version:6.5.1 环境变量已配置 如果是通过apt install 安装的jdk 解决方案很简单 # 强制更新证书 最终会在 /etc/ssl/certs/java目录下生成此文件cacerts sudo update-ca-certificates -f # 检验文件是否有内容, 不为空基本上就解决了Logstash无法运行的问题 sudo keytool -list -keystore /etc/ssl/certs/java/cacerts 由于我是自定义安装,且文件/opt/jdk/jre/lib/security/cacerts内容为空 # 所以我要做得就是让cacerts中存在内容即可 # 简单的解决方案就是导入一个证书即可 密码: changeit keytool -import -keystore ./cacerts -file /etc/ssl/certs/ca-certificates.crt 另外关于keytool的 详细用法 请看 来源: oschina 链接: https://my.oschina.net/u/3054299/blog/3206990

配置Tomcat使用https协议(配置SSL协议)

耗尽温柔 提交于 2020-03-17 16:43:45
   内容概览: 如果希望 Tomcat 支持 Https,主要的工作是配置 SSL 协议 1.生成安全证书 2.配置tomcat --------------------------------------------------------------------------------------------------------------------------- 预备知识: sso cas ssl https ca --------------------------------------------------------------------------------------------------------------------------- 环境: 1.java 1.6 2.tomcat 6_0_26 --------------------------------------------------------------------------------------------------------------------------- 生成安全证书: 1.java环境:因为SUN公司提供了制作证书的工具keytool。 在JDK 1.4以后的版本中都包含了这一工具,它的位置为<JAVA_HOME>\bin\keytool.exe。 2

对apk进行数字签名

半腔热情 提交于 2020-03-15 06:29:32
APK签名用处主要有两种:   1. 使用特殊的key签名可以获取到一些不同的权限。   2. APK如果使用一个key签名,发布时另一个key签名的文件将无法安装或覆盖老的版本,这样可以防止你已安装的应用被恶意的第三方覆盖或替换掉,这个很有用哦。   目前Google在Android系统方面的态度和策略也都是非盈利性质的,和Symbian的签名有本质的区别,而我们使用Eclipse+ADT插件从开发环境安装到手机中的APK文件已经包含了ADT插件的Debug签名文件,所以没有安装,但是最终发行的版本需要自己的key去签名。 (1)必备工具:Sun官方网站下载JDK,安装后产生的keytool和jarsigne两个系统工具。 http://java.com/zh_CN/download/installed.jsp 安装后到(2) 而对于两个工具和keystore的介绍请看: jdk工具keytool和jarsigner帮助Part1(jdk keytool&jarsigner tool manual) 和 jdk工具keytool和jarsigner帮助Part2(jdk keytool&jarsigner tool manual) (2)生成keystore cmd下:   进入到jdk的bin目录,这样的话,android.keystore文件就会生成在这个目录下

如何为SpringBoot服务添加HTTPS证书

为君一笑 提交于 2020-03-13 10:12:22
HTTPS是HTTP的安全版本,旨在提供数据传输层安全性(TLS)。当你的应用不使用HTTP协议的时候,浏览器地址栏就会出现一个不安全的提示。HTTPS加密每个数据包以安全方式进行传输,并保护敏感数据免受窃听者或黑客的攻击。 您可以通过在Web应用程序上安装SSL证书来实现HTTPS,互联网上受信任的证书通常是需要(CA)颁发的证书。为了学习目的,您也可以使用自签名证书,比如:使用Java Keytool生成自签名证书。 一、自签名证书 您可以使用位于JDK bin文件夹下的Keytool生成证书。例如, C:\Program Files\Java\jdk1.8.0_161\bin 。可以使用两种自签名证书,如下所示。 通过您自己的Java应用程序可以轻松访问JKS(Java密钥库)。JKS仅限于Java,不能从Java外部访问。 PKCS12:该证书使用的公钥加密标准与语言无关,用于存储加密的私钥和证书。 本作者技术博客是:字母哥博客(z i m u g 点 康 姆),里面包含精品技术文章集合,欢迎您的访问。 二、如何生成自签名证书 在Windows的搜索字段中键入cmd以找到命令提示符,然后以“以管理员身份运行”右键单击。使用如下的keytool命令。您可以提及所需的证书名称,如下所示。 C:\Program Files\Java\jdk1.8.0_161\bin>

如何为SpringBoot服务添加HTTPS证书

南楼画角 提交于 2020-03-13 09:35:40
HTTPS是HTTP的安全版本,旨在提供数据传输层安全性(TLS)。当你的应用不使用HTTP协议的时候,浏览器地址栏就会出现一个不安全的提示。HTTPS加密每个数据包以安全方式进行传输,并保护敏感数据免受窃听者或黑客的攻击。 您可以通过在Web应用程序上安装SSL证书来实现HTTPS,互联网上受信任的证书通常是需要(CA)颁发的证书。为了学习目的,您也可以使用自签名证书,比如:使用Java Keytool生成自签名证书。 一、自签名证书 您可以使用位于JDK bin文件夹下的Keytool生成证书。例如, C:\Program Files\Java\jdk1.8.0_161\bin 。可以使用两种自签名证书,如下所示。 通过您自己的Java应用程序可以轻松访问JKS(Java密钥库)。JKS仅限于Java,不能从Java外部访问。 PKCS12:该证书使用的公钥加密标准与语言无关,用于存储加密的私钥和证书。 本作者技术博客是:字母哥博客(z i m u g 点 康 姆),里面包含精品技术文章集合,欢迎您的访问。 二、如何生成自签名证书 在Windows的搜索字段中键入cmd以找到命令提示符,然后以“以管理员身份运行”右键单击。使用如下的keytool命令。您可以提及所需的证书名称,如下所示。 C:\Program Files\Java\jdk1.8.0_161\bin>

weblogic12c配置ssl https

痞子三分冷 提交于 2020-03-12 04:24:33
因项目需要,weblogic进行安全扫描后不合格,需要对weblogic配置https进行安全加固。 网上看了很多遍文章写的都很复杂,经过实际测试发现,只需要生成一对非对称密钥就可以了,其它的都是非必要操作。下面直接开始,步骤如下: 1、环境介绍 环境 版本 weblogic版本 12.2.1.3 操作系统版本 red hat 7.4 2、keytool生成密钥库证书 2.1、在weblogic域目录下创建keystores目录用来保存密钥库 [ yhwls@wtapp4 ~ ] $ cd / u01 / Middleware / user_projects / domains / base_domain [ yhwls@wtapp4 base_domain ] $ mkdir keystores 2.2、使用Keytool创建密钥库 [ yhwls@wtapp4 base_domain ] $ cd keystores [ yhwls@wtapp4 keystores ] $ keytool - genkeypair - alias server_cert - keyalg RSA - keysize 2048 - keystore keystore . jks - keypass qwer1234 - storepass qwer1234 - validity 3650

nginx + tomcat + java SSL客服端

不羁岁月 提交于 2020-03-02 10:55:43
=====nginx + tomcat + java SSL客服端======= 1. 通过keytool 生成密钥库 【注意 CN 为服务端访问域名地址或者IP地址或者主机名 比如 config.ebnew.com】(密钥库密码为:bidconfig) keytool -genkey -alias configserver -keystore configstore.jks -keypass bidconfig -storepass bidconfig -keyalg RSA -validity 7300 -v -dname "CN =config.ebnew.com,O = BID,DC = Server Https,DC = BID,OU = Firefly Technology And Operation" 2. 通过keytool将密钥库导出为P12 (密钥库密码为:bidconfig, p12 密钥库密码为:bidconfig) keytool -importkeystore -srckeystore configstore.jks -destkeystore config.p12 -srcstoretype JKS -deststoretype PKCS12 -srcstorepass bidconfig -deststorepass bidconfig