首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java jce 非对称加密算法范例(jdk1.6)

2012-11-04 
java jce 非对称加密算法实例(jdk1.6)[sizemedium]package com.simon.securityimport java.io.Unsupport

java jce 非对称加密算法实例(jdk1.6)
[size=medium]

package com.simon.security;import java.io.UnsupportedEncodingException;import java.security.Key;import java.security.KeyPair;import java.security.KeyPairGenerator;import java.security.NoSuchAlgorithmException;import java.security.NoSuchProviderException;import java.security.PrivateKey;import java.security.PublicKey;import java.security.SecureRandom;import javax.crypto.Cipher;public class JcePairTest {public static void main(String[] args) throws NoSuchAlgorithmException, NoSuchProviderException, UnsupportedEncodingException{KeyPairGenerator kpg = null;kpg = KeyPairGenerator.getInstance("RSA");kpg.initialize(1024, new SecureRandom());KeyPair kp = kpg.generateKeyPair();PrivateKey priKey = kp.getPrivate();PublicKey pubKey = kp.getPublic(); byte[] encode = getEncCode(new String("hello").getBytes(), pubKey);byte[] decode = getDesCode(encode, priKey);System.out.println( encode );System.out.println( new String(decode,"UTF-8") );}public static byte[] getEncCode(byte[] byteS, Key key) {byte[] byteFina = null;Cipher cipher;try {cipher = Cipher.getInstance("RSA");cipher.init(Cipher.ENCRYPT_MODE, key);byteFina = cipher.doFinal(byteS);} catch (Exception e) {e.printStackTrace();} finally {cipher = null;}return byteFina;}public static byte[] getDesCode(byte[] byteD , Key key) {Cipher cipher;byte[] byteFina = null;try {cipher = Cipher.getInstance("RSA");cipher.init(Cipher.DECRYPT_MODE, key);byteFina = cipher.doFinal(byteD);} catch (Exception e) {e.printStackTrace();} finally {cipher = null;}return byteFina;}}
[/size]

热点排行