公钥私钥生成工具
来源:互联网 发布:大数据应用软件 编辑:程序博客网 时间:2024/05/24 04:36
/**
*
*/
package com.hlmedicals.app.util;
import java.security.Key;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
import java.util.HashMap;
import java.util.Map;
import com.itextpdf.xmp.impl.Base64;
/**
* @author dell
*
*/
public class Keys {
public static final String KEY_ALGORITHM = "RSA";
public static final String SIGNATURE_ALGORITHM = "MD5withRSA";
private static final String PUBLIC_KEY = "RSAPublicKey";
private static final String PRIVATE_KEY = "RSAPrivateKey";
public static void main(String[] args) {
Map<String, Object> keyMap;
try {
keyMap = initKey();
String publicKey = getPublicKey(keyMap);
System.out.println(publicKey);
String privateKey = getPrivateKey(keyMap);
System.out.println(privateKey);
} catch (Exception e) {
e.printStackTrace();
}
}
public static String getPublicKey(Map<String, Object> keyMap) throws Exception {
Key key = (Key) keyMap.get(PUBLIC_KEY);
byte[] publicKey = key.getEncoded();
// return encryptBASE64(key.getEncoded());
return new String(new Base64().encode(publicKey));
}
public static String getPrivateKey(Map<String, Object> keyMap) throws Exception {
Key key = (Key) keyMap.get(PRIVATE_KEY);
byte[] privateKey =key.getEncoded();
//return encryptBASE64(key.getEncoded());
return new String(new Base64().encode(privateKey));
}
//
// public static byte[] decryptBASE64(String key) throws Exception {
//
// return (new Base64()).decodeBuffer(key);
//
// }
//
//
//
// public static String encryptBASE64(byte[] key) throws Exception {
//
// return (new BASE64Encoder()).encodeBuffer(key);
//
// }
public static Map<String, Object> initKey() throws Exception {
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance(KEY_ALGORITHM);
keyPairGen.initialize(1024);
KeyPair keyPair = keyPairGen.generateKeyPair();
RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic();
RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate();
Map<String, Object> keyMap = new HashMap<String, Object>(2);
keyMap.put(PUBLIC_KEY, publicKey);
keyMap.put(PRIVATE_KEY, privateKey);
return keyMap;
}
}
*
*/
package com.hlmedicals.app.util;
import java.security.Key;
import java.security.KeyPair;
import java.security.KeyPairGenerator;
import java.security.interfaces.RSAPrivateKey;
import java.security.interfaces.RSAPublicKey;
import java.util.HashMap;
import java.util.Map;
import com.itextpdf.xmp.impl.Base64;
/**
* @author dell
*
*/
public class Keys {
public static final String KEY_ALGORITHM = "RSA";
public static final String SIGNATURE_ALGORITHM = "MD5withRSA";
private static final String PUBLIC_KEY = "RSAPublicKey";
private static final String PRIVATE_KEY = "RSAPrivateKey";
public static void main(String[] args) {
Map<String, Object> keyMap;
try {
keyMap = initKey();
String publicKey = getPublicKey(keyMap);
System.out.println(publicKey);
String privateKey = getPrivateKey(keyMap);
System.out.println(privateKey);
} catch (Exception e) {
e.printStackTrace();
}
}
public static String getPublicKey(Map<String, Object> keyMap) throws Exception {
Key key = (Key) keyMap.get(PUBLIC_KEY);
byte[] publicKey = key.getEncoded();
// return encryptBASE64(key.getEncoded());
return new String(new Base64().encode(publicKey));
}
public static String getPrivateKey(Map<String, Object> keyMap) throws Exception {
Key key = (Key) keyMap.get(PRIVATE_KEY);
byte[] privateKey =key.getEncoded();
//return encryptBASE64(key.getEncoded());
return new String(new Base64().encode(privateKey));
}
//
// public static byte[] decryptBASE64(String key) throws Exception {
//
// return (new Base64()).decodeBuffer(key);
//
// }
//
//
//
// public static String encryptBASE64(byte[] key) throws Exception {
//
// return (new BASE64Encoder()).encodeBuffer(key);
//
// }
public static Map<String, Object> initKey() throws Exception {
KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance(KEY_ALGORITHM);
keyPairGen.initialize(1024);
KeyPair keyPair = keyPairGen.generateKeyPair();
RSAPublicKey publicKey = (RSAPublicKey) keyPair.getPublic();
RSAPrivateKey privateKey = (RSAPrivateKey) keyPair.getPrivate();
Map<String, Object> keyMap = new HashMap<String, Object>(2);
keyMap.put(PUBLIC_KEY, publicKey);
keyMap.put(PRIVATE_KEY, privateKey);
return keyMap;
}
}
0 0
- 公钥私钥生成工具
- 文档生成工具-NaturalDocs
- 代码生成工具下载
- JAVASCRIPT 文档生成工具
- 关于代码生成工具
- 代码生成工具
- 钢笔手写体生成工具
- php 代码生成工具
- 生成SVG的工具
- 生成静态页面工具
- WCF配置文件生成工具
- 帮助文档生成工具
- 密码字典生成工具
- 路径生成工具
- 数据库文档生成工具
- 数据库文档生成工具
- 生成网站工具
- 代码自动生成工具
- 你不可不知的static(3)-注意事项、区别成员变量、静态main
- linux定时任务提示-bash: crontab: command not found
- SRE运维解密&介绍
- DDR3布线的那些事
- 路由器到底怎么放才能让WIFI信号更好?(转)
- 公钥私钥生成工具
- xml文件(Activity_main)
- APUE——Chapter 5:标准I/O库
- deltav 安装过程
- Android屏幕适配全攻略(最权威的官方适配指导)
- app启动速度阶段指标
- javaweb读取配置文件的4种方法
- 21个实用的Javascript数据图表插件
- ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value