Java操作密钥库入门

1.用Java keytool这个密钥和证书管理工具,创建一个密钥并存入.keystore文件中,如下图,默认会存在一个别名为"mykey"的条目,也可以自己创建。

2.创建KeyStore实例,从.keystore文件中加密密钥库,而后通过别名来获取对应的条目,一定要制定正确的密码。

public class KeyStoreTest {
	public static void main(String[] args) throws Exception{
		// 加载密钥库文件
		FileInputStream in = new FileInputStream("C:\\data\\.keystore");
		System.out.println(KeyStore.getDefaultType());
		KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());

		// 加载密钥库,使用正确的密码
		//否则java.io.IOException: Keystore was tampered with, or password was incorrect
		ks.load(in, "vonzhou".toCharArray());

		// 获得别名"mykey"对应的私钥
		PrivateKey key = (PrivateKey)ks.getKey("mykey", "vonzhou".toCharArray());

		//或者这样
		ProtectionParameter protection = new KeyStore.PasswordProtection("vonzhou".toCharArray());
		KeyStore.PrivateKeyEntry pkEntry = (KeyStore.PrivateKeyEntry)ks.getEntry("mykey", protection);
		PrivateKey key2 = pkEntry.getPrivateKey();

		System.out.println(Arrays.toString(key.getEncoded()));
		System.out.println(Arrays.toString(key2.getEncoded()));

		in.close();

	}
}

参考:

1.keytool

时间: 2024-08-07 17:00:39

Java操作密钥库入门的相关文章

java程序实现对密钥库的管理

1 Java程序列出密钥库所有条目 import java.util.*; import java.io.*; import java.security.*; public class ShowAlias{     public static void main(String args[ ]) throws Exception{         String pass="080302";         String name=".keystore";      

WebLogic配置自定义密钥库和SSL的操作手册

(定制标识和定制信任&Keytool&TLS1.0) 1.启用SSL端口 保存,重启受管Server IE浏览器访问 谷歌浏览器访问 2.查看密钥库和SSL配置 密钥库 SSL 3.手动制作identity.jks和trust.jks 新建jks目录 [[email protected] ~]$ mkdir jksHL [[email protected] ~]$ cd jksHL/ 生成标识identity.jks密钥库 如下标黄色背景部分的说明: weblogicHL为"SS

基于密钥库和数字证书的加密解密和签名验证操作

package com.szzs; import java.io.FileInputStream; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.PrivateKey; import java.security.PublicKey; import java.security.Signature; import java.security.cert.Certif

java操作memcached入门教程demo代码

原文:java操作memcached入门教程demo代码 源代码下载地址:http://www.zuidaima.com/share/1550463754996736.htm 参考地址: http://www.open-open.com/lib/view/open1357831114183.html http://tech.idv2.com/2008/07/10/memcached-001/ 感谢 京-java牛-ID号1  感谢 锡-SuperPrivate-195 在网上搜索了部分代码,一个

Java 密钥库和数字证书

密钥库中可以存放多个条目(公钥/私钥对和证书),它们在密钥库中以别名(alias)区分. 1.cd C:\Program Files (x86)\Java\jdk1.6.0_10\bin 2.生成签名证书:keytool -genkey -v -keystore android.keystore -alias android -keyalg RSA -validity 20000 [-genkey:生成密钥] [-keystore:指定存储位置可加上路径C:\Users\dxcb\android

转 Java操作PDF之iText详细入门

转 Java操作PDF之iText详细入门 2016年08月08日 11:06:00 阅读数:19490 iText是著名的开放项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文件转化为PDF文件. http://itextpdf.com/ 版本:itextpdf-5.2.1.jar 1.生成一个PDF Java代码   //Step 1-Create a Document. Document document = new 

Java操作Oracle数据库自建工具库

在学习Java操作Oracle数据库的时候,忽然想到这个可不可以像php那样自己建立一个工具类,这样的话可以大大的减小代码的复杂度.也可以提高工作效率. java如果不能自己建立工具类,那是非常可笑的,但是,在建立的过程中,出现了一些问题,希望在以后不要犯类似的错误. 首先,我们在自建工具类之前必然是先模拟测试的,在这个例子当中,其过程如下: 1:引入Oracle的驱动程序 2:建立OracleTools类,并且定义其成员变量. 3:写OracleTools类的成员方法和构造函数. 4:如果全部

WebLogic配置自己定义密钥库和SSL的操作手冊

(定制标识和定制信任&Keytool&TLS1.0) 1.启用SSLport 保存.重新启动受管Server IE浏览器訪问 谷歌浏览器訪问 2.查看密钥库和SSL配置 密钥库 SSL 3.手动制作identity.jks和trust.jks 新建jks文件夹 [[email protected] ~]$ mkdir jksHL [[email protected] ~]$ cd jksHL/ 生成标识identity.jks密钥库 例如以下标黄色背景部分的说明: weblogicHL为&

JavaSE--【转】网络安全之证书、密钥、密钥库等名词解释

转载:http://www.cnblogs.com/alanfang/p/5600449.html 那些证书相关的名词解释(SSL,X.509,PEM,DER,CRT,CER,KEY,CSR,P12等) : http://www.360doc.com/content/15/0520/10/21412_471902987.shtmlKeystore介绍:http://blog.csdn.net/yangtao6888/article/details/796124使用CryptoAPI解析X509证