知识大全 java RSA 加解密
Posted 知
篇首语:没有爱的教学,宛如无水池塘,终将群鲜枯竭。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 java RSA 加解密相关的知识,希望对你有一定的参考价值。
java RSA 加解密 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
import java security Key;
import java security KeyFactory;
import java security KeyPair;
import java security KeyPairGenerator;
import java security PrivateKey;
import java security PublicKey;
import java security interfaces RSAPrivateKey;
import java security interfaces RSAPublicKey;
import java security spec PKCS EncodedKeySpec;
import java security spec X EncodedKeySpec;
import javax crypto Cipher;
import sun misc BASE Decoder;
import sun misc BASE Encoder;
public class RSACoder
/**
* 得到公钥
* @param key 密钥字符串(经过base 编码)
* @throws Exception
*/
public static PublicKey getPublicKey(String key) throws Exception
byte[] keyBytes;
keyBytes = (new BASE Decoder()) decodeBuffer(key);
X EncodedKeySpec keySpec = new X EncodedKeySpec(keyBytes);
KeyFactory keyFactory = KeyFactory getInstance( RSA );
PublicKey publicKey = keyFactory generatePublic(keySpec);
return publicKey;
/**
* 得到私钥
* @param key 密钥字符串(经过base 编码)
* @throws Exception
*/
public static PrivateKey getPrivateKey(String key) throws Exception
byte[] keyBytes;
keyBytes = (new BASE Decoder()) decodeBuffer(key);
PKCS EncodedKeySpec keySpec = new PKCS EncodedKeySpec(keyBytes);
KeyFactory keyFactory = KeyFactory getInstance( RSA );
PrivateKey privateKey = keyFactory generatePrivate(keySpec);
return privateKey;
/**
* 得到密钥字符串(经过base 编码)
* @return
*/
public static String getKeyString(Key key) throws Exception
byte[] keyBytes = key getEncoded();
String s = (new BASE Encoder()) encode(keyBytes);
return s;
public static void main(String[] args) throws Exception
KeyPairGenerator keyPairGen = KeyPairGenerator getInstance( RSA );
//密钥位数
keyPairGen initialize( );
//密钥对
KeyPair keyPair = keyPairGen generateKeyPair();
// 公钥
PublicKey publicKey = (RSAPublicKey) keyPair getPublic();
// 私钥
PrivateKey privateKey = (RSAPrivateKey) keyPair getPrivate();
String publicKeyString = getKeyString(publicKey);
System out println( public:\\n + publicKeyString);
String privateKeyString = getKeyString(privateKey);
System out println( private:\\n + privateKeyString);
//加解密类
Cipher cipher = Cipher getInstance( RSA );//Cipher getInstance( RSA/ECB/PKCS Padding );
//明文
byte[] plainText = 我们都很好!邮件 getBytes();
//加密
cipher init(Cipher ENCRYPT_MODE publicKey);
byte[] enBytes = cipher doFinal(plainText);
//通过密钥字符串得到密钥
publicKey = getPublicKey(publicKeyString);
privateKey = getPrivateKey(privateKeyString);
//解密
cipher init(Cipher DECRYPT_MODE privateKey);
byte[]deBytes = cipher doFinal(enBytes);
publicKeyString = getKeyString(publicKey);
System out println( public:\\n +publicKeyString);
privateKeyString = getKeyString(privateKey);
System out println( private:\\n + privateKeyString);
String s = new String(deBytes);
System out println(s);
cha138/Article/program/Java/hx/201311/25516
相关参考
Java文件加解密 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 做网站有时会处理一些上传下载的
java非对称加密的源代码(RSA) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 鉴于rsa加
RSA算法的实现——java版 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! package
JAVA里面RSA加密算法的使用 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 打算写这个类用于
Java生成RSA非对称型加密的公钥和私钥 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 非对称
Java中常用的加密算法MD5,SHA,RSA 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! M
以下两个类可以很方便的完成字符串的加密和解密 加密CryptHelperencrypt(password) 解密CrypHelperdecrypt(password) 代码如下 Crypt
java字符串加密解密 tryStringtest=EncryptionDecryptiondes=newEncryptionDecryption(tourhb)//自定义密钥Systemout
Java多线程应用方法全解密 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Java多线程是我们
Java中3DES加密解密示例 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 在java中调用s