`
zzzzzz5530041
  • 浏览: 32588 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

JKS生成数字签名+JBOSS配置SSL

    博客分类:
  • java
阅读更多

第一步:

生成JKS文件

配置环境  JAVA_HOME: C:\bea\jdk150_10

                Path: C:\bea\jdk150_10\bin

运行一下脚本

keytool -genkey -keyalg RSA -alias jbosskey -keystore jbosskey.jks

得到下图


-keyalg RSA  算法是RSA

-alias jbosskey 别名jbosskey

-keystore jbosskey.jks生成的JKS名字

上面的步骤完成后可在C:\Documents and Settings\yz45177 下生成jbosskey.jks文件.

 

第二步:

导出证书

keytool -export -alias jbosskey -file jbosskey.cer -keystore jbosskey.jks



-alias jbosskey---jks的别名

-file jbosskey.cer---导出的cer文件名

-keystore jbosskey.jks--jks文件

password--生成jks文件时的密码

 

第三步:

查看jks文件的详情

keytool -list -keystore jbosskey.jks



 

第四步:

生成数字签名:

直接运行下面的代码.

 

package com.zhuyang.test;

import java.io.FileInputStream;
import java.security.KeyStore;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.Signature;
import java.security.cert.Certificate;
import java.util.HashMap;
import java.util.Map;

import sun.misc.BASE64Encoder;

public class DigitalSignatureTest {

	private static String alias="jbosskey";
	private static String keystoretype="jks";
	private static String certPath="C:\\workspace1\\digital_signature\\jbosskey.cer";
	private static String keystorePath="C:\\workspace1\\digital_signature\\jbosskey.jks";
	private static String password="1qazxsw2";
	private static byte[] testData = "Hello, this is Young from SH".getBytes();
	private static byte[] validateTest = "Hello, this is Young from SH".getBytes();
	 
	public static Map initial ()throws Exception{
		Map map = new HashMap();
		KeyStore keystore = KeyStore.getInstance("jks");
		keystore.load(new FileInputStream(keystorePath), password.toCharArray());
		PrivateKey senderKey = (PrivateKey) keystore.getKey(alias, password.toCharArray()); 
		Certificate cert = (Certificate) keystore.getCertificate(alias);
		System.out.println("Algorithm===>"+senderKey.getAlgorithm());
		map.put("senderKey", senderKey);
		map.put("cert", cert);
		return map;
	}
	public static byte[] getSignature(Map map)throws Exception{
		PrivateKey senderKey = (PrivateKey) map.get("senderKey");
		Certificate cert = (Certificate) map.get("cert");
		System.out.println(cert.getType());
		Signature sig = Signature.getInstance("SHA1withRSA");
		sig.initSign(senderKey);
		sig.update(testData);
		byte [] result = sig.sign();
		return result;
	}
	public static boolean varifySignature() throws Exception{
		boolean ret=false;
		Map map = initial();
		byte [] signature = getSignature(map);
		Certificate cert = (Certificate) map.get("cert");
		PublicKey pk = (PublicKey) cert.getPublicKey();
		Signature sig = Signature.getInstance("SHA1withRSA");
		sig.initVerify(pk);
		sig.update(validateTest);
		ret =sig.verify(signature);
		System.out.println(ret);
		return ret;
	}
	public static void main(String[] args) throws Exception {
		Map map = initial();
		byte[] signature =getSignature(map);
		BASE64Encoder encoder = new BASE64Encoder();
		String DIGITAL_SIGNATURE = encoder.encodeBuffer(signature);
		DIGITAL_SIGNATURE=DIGITAL_SIGNATURE.replaceAll("\\n", "").replaceAll("\\r", "");
		System.out.println("DIGITAL_SIGNATURE====>"+DIGITAL_SIGNATURE);
		varifySignature();
	}

}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

如何配置JBOSS的SSL

我用的是jboss-5.0.1.GA

第一步:

拷贝jks和cer文件到C:\zhuyang\jboss-5.0.1.GA\jboss-5.0.1.GA\server\default\conf

第二步:

编辑文件C:\zhuyang\jboss-5.0.1.GA\jboss-5.0.1.GA\server\default\deploy\jbossweb.sar\server.xml

添加下面内容

<!-- SSL/TLS Connector configuration using the admin devl guide keystore-->
      <Connector protocol="HTTP/1.1" SSLEnabled="true" 
           port="8443" address="${jboss.bind.address}"
           scheme="https" secure="true" clientAuth="false" 
           keystoreFile="${jboss.server.home.dir}/conf/jbosskey.jks"
           keystorePass="1qazxsw2" sslProtocol = "TLS" />

 

keystorePass="1qazxsw2"这是你jks的密码
keystoreFile这是jks文件目录
port="8443"https访问的时候的短裤

这样http和https都能访问了.

 

HTTP



 

 

 

HTTPS

 



 

 

 

 

 

 



 

 

 

 

 

 

好像已经狠详细了哦...

 

 

 

 

  • 大小: 9.7 KB
  • 大小: 2.1 KB
  • 大小: 3.1 KB
  • 大小: 48.9 KB
  • 大小: 42 KB
  • 大小: 52 KB
分享到:
评论

相关推荐

    系统签名JKS生成工具.rar

    系统签名所需JKS的制作工具,内含各文件和操作指导说明。懂的人会懂,不多说。

    SSL中各证书的转换

    1. cer格式——&gt;JKS (keytool 为JDK自带的,可以在bin目录下找到) keytool -import -alias mycert -file d:\def.cer -keystore mykeystore.jks (导入证书到keystore) 2. JKS——&gt;cer格式 keytool -import -...

    SSL转换工具jks2pfx

    java实现ssl自签名。 由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。 jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件...

    Androidstudio模拟器系统签名(.jks)

    用于Androidstudio模拟器的系统签名,方便进行需要系统签名方面的调试,内含一个生成的platform.jks和系统签名源文件(.pk8和x509.pem等等) ,拿到源文件你也可以自己生成jks或者keystore。 内含jks签名信息: Key ...

    含系统签名*.jks的Android系统签名的Windows和Linux方法教程

    C. keytool-importkeypair Linux环境(shell环境)的自动生成签名脚本 D. signature.sh 配套第C项目文件中签名入口脚本 Windows平台方法 方法1(建议) 将第A项2个文件和b项bat文件放入同级目录. 配置第B项文件的路径...

    Android Studio自动生成带系统签名的apk

    如果你需要开发一个带有系统...给apk加上开发者签名(jks文件),使用keytool-importkeypair 对jks文件进行系统签名,在出包的时候,直接使用带有系统签名的jks对apk进行签名,这样编译生成的apk文件就自带系统签名了

    Tomcat更换SSL证书方法(jks与pfx转换)

    该文档提供JKS转换为PFX的方法 使用JWSDP工具包中的工具 •安装J2SE 1.5,下载并运行jdk-1_5_0_09-windows-i586-p.exe •下载并安装jave web service develop pack, jwsdp-2_0-windows-i586.exe •创建一个新的...

    Tomcat6和5.5配置使用SSL双向认证(使用openssl生成密钥)

    一:生成CA证书 二.生成server证书。 三.生成client证书。 四.根据ca证书生成jks文件 五.配置tomcat ssl 六.导入证书 七.验证ssl配置是否正确

    Tomcat6和5.5配置使用SSL双向认证(使用openssl生成密钥).rar

    一:生成CA证书 二.生成server证书。 三.生成client证书。 四.根据ca证书生成jks文件 五.配置tomcat ssl 六.导入证书 七.验证ssl配置是否正确

    jks与pfx转换工具

    将jks文件生成pfx文件的工具,亲测可以使用。 例如: JKS2PFX server.jks 123456 tomcat exportfile c:\progra~1\Java\jre1.5.0_06\bin 该命令将server.jks中别名为tomcat的SSL证书导出,运行后将产生3个文件 ...

    WebLogic配置SSL.doc

    转载百度文库获得的文章,WebLogic配置SSL

    jks证书格式转换nginx使用格式

    由于生成的证书是jks格式,nginx不能直接用,需要要转成PEM格式,这要用到jks2pfx工具进行转换。 jks2pfx的命令格式:JKS2PFX.bat keystore password alias exportname keystore:KeyStore文件绝对路径 password:...

    openssl 生成client.jks与server.jks文件的方法

    openssl 生成client.jks与server.jks文件的方法 在做WS安全性设计的时候 利用rampat时候需要使用的jks文件

    Tomcat9.0安装JKS格式SSL证书.rar

    Tomcat9.0安装JKS格式SSL证书;资源装包含了tomcat需要配置的文件,下载下来覆盖原始的文件,要把证书名和密码换成自己的就行

    Android系统签名文件生成工具

    signature.sh脚本文件中的test.jks就是是生成签名文件的名称,123456是签名的密码,key0是签名的别名,可以自行编辑这三个内容,然后双击便可以得到签名文件了,后续用这个签名文件进行打包或者调试就行了

    weblogic配置

    weblogic配置ssl 缺省安装中使用DemoIdentity.jks和DemoTrust.jks KeyStore实现SSL

    Linux Centos7 系统Tomcat8.5.54 配置SSL证书

    2.我们选取Tomcat的ssl证书,有jks文件和key的文件。  3.我下载了Tomcat8.5.54的压缩包  wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-8/v8.5.54/bin/apache-tomcat-8.5.54.tar.gz  下载成

    配置文件与jks

    初登友盟官网,“【友盟+】全球领先的第三方全域大数据服务提供商。”这句话就醒目地显示在眼前。可以明确的知道,友盟在移动端app开发,确实具备了很大的影响力。而国内Android市场众多渠道,为了统计每个渠道的...

    jks2pfx工具

    jks2pfx jks文件生成pfx文件工具

    APK签名工具+添加谷歌原生签名教程

    APK签名工具+添加谷歌原生签名教程 1,如何将谷歌platform.pk8、platform.x509.pem转为可用签名文件.jks 2, 如何给apk添加谷歌签名

Global site tag (gtag.js) - Google Analytics