寻 RSA加密过程,解密算法?

请提供详细的RSA加密过程,解密算法?越详细越好。这种加密解密算法,主要应用于那些地方?... 请提供详细的 RSA加密过程,解密算法?
越详细越好。
这种加密解密算法,主要应用于那些地方?
展开
 我来答
匿名用户
2013-09-25
展开全部
用Java实现RSA加密  package net.52java.utils.security;   import javax.crypto.Cipher;   import java.security.*;   import java.security.spec.RSAPublicKeySpec;   import java.security.spec.RSAPrivateKeySpec;   import java.security.spec.InvalidKeySpecException;   import java.security.interfaces.RSAPrivateKey;   import java.security.interfaces.RSAPublicKey;   import java.io.*;   import java.math.BigInteger;   /**   * RSA 工具类。提供加密,解密,生成密钥对等方法。   * 需要到 http://www.bouncycastle.org下载bcprov-jdk14-123.jar。   * @author xiaoyusong   * mail: xiaoyusong@etang.com   * msn:xiao_yu_song@hotmail.com   * @since 2004-5-20   *   */   public class RSA{   /**   * 生成密钥对   * @return KeyPair   * @throws Exception   */   public static KeyPair generateKeyPair() throws Exception {   try {   KeyPairGenerator keyPairGen = KeyPairGenerator.getInstance("RSA",   new org.bouncycastle.jce.provider.BouncyCastleProvider());   final int KEY_SIZE = 1024;//没什么好说的了,这个值关系到块加密的大小,可以更改,但是不要太大,否则效率会低   keyPairGen.initialize(KEY_SIZE, new SecureRandom());   KeyPair keyPair = keyPairGen.genKeyPair();   return keyPair;   } catch (Exception e) {   throw new Exception(e.getMessage());   }   }   /**   * 生成公钥   * @param modulus   * @param publicExponent   * @return RSAPublicKey   * @throws Exception   */   public static RSAPublicKey generateRSAPublicKey(byte[] modulus, byte[] publicExponent) throws Exception {   KeyFactory keyFac = null;   try {   keyFac = KeyFactory.getInstance("RSA", new org.bouncycastle.jce.provider.BouncyCastleProvider());   } catch (NoSuchAlgorithmException ex) {   throw new Exception(ex.getMessage());   }   RSAPublicKeySpec pubKeySpec = new RSAPublicKeySpec(new BigInteger(modulus), new BigInteger(publicExponent));   try {   return (RSAPublicKey) keyFac.generatePublic(pubKeySpec);   } catch (InvalidKeySpecException ex) {   throw new Exception(ex.getMessage());   }   }   
匿名用户
2013-09-25
展开全部
你参考下《密码学》二版。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式