java源代码加密(java非对称加密的源代码(RSA))

2024-04-12 22:00:13 13

java源代码加密(java非对称加密的源代码(RSA))

本文目录

java非对称加密的源代码(RSA)

  鉴于rsa加密的重要性和相关源代码的匮乏 经过整理特此贴出 需要下载bcprov jdk jar     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 工具类 提供加密 解密 生成密钥对等方法   * 需要到下载bcprov jdk jar   *  */  public class RSAUtil {    /**  * 生成密钥对  * @return KeyPair  * @throws EncryptException  */  public static KeyPair generateKeyPair() throws EncryptException {  try {  KeyPairGenerator keyPairGen = KeyPairGenerator getInstance( RSA   new bouncycastle jce provider BouncyCastleProvider());  final int KEY_SIZE = ;//没什么好说的了 这个值关系到块加密的大小 可以更改 但是不要太大 否则效率会低  keyPairGen initialize(KEY_SIZE new SecureRandom());  KeyPair keyPair = keyPairGen genKeyPair();  return keyPair;  } catch (Exception e) {  throw new EncryptException(e getMessage());  }  }  /**  * 生成公钥  * @param modulus  * @param publicExponent  * @return RSAPublicKey  * @throws EncryptException  */  public static RSAPublicKey generateRSAPublicKey(byte data = RSAUtil decrypt(recoveryPubKey raw);  file = new File( l );  out = new FileOutputStream(file);  out write(data);  out flush();  out close();  }  }    加密可以用公钥 解密用私钥 或者加密用私钥 通常非对称加密是非常消耗资源的 因此可以对大数据用对称加密如 des(具体代码可以看我以前发的贴子) 而对其对称密钥进行非对称加密 这样既保证了数据的安全 还能保证效率 lishixinzhi/Article/program/Java/gj/201311/27391

求java加密源代码(MD5,base64)

import java.security.*;import javax.crypto.*;/** * 本例解释如何利用DES私钥加密算法加解密 * * @author Devon * @version 1.0 04/03/10 */public class SingleKeyExample { public static void main(String args) { try { String algorithm = "DES"; //定义加密算法,可用 DES,DESede,Blowfish String message = "Hello World. 这是待加密的信息"; // 生成个DES密钥 KeyGenerator keyGenerator = KeyGenerator.getInstance(algorithm); keyGenerator.init(56); //选择DES算法,密钥长度必须为56位 Key key = keyGenerator.generateKey(); //生成密钥 // 生成Cipher对象 Cipher cipher = Cipher.getInstance("DES"); //用密钥加密明文(message),生成密文(cipherText) cipher.init(Cipher.ENCRYPT_MODE, key); //操作模式为加密(Cipher.ENCRYPT_MODE),key为密钥 byte cipherText = cipher.doFinal(message.getBytes()); //得到加密后的字节数组 System.out.println("加密后的信息: " + new String(cipherText)); //用密钥加密明文(plainText),生成密文(cipherByte) cipher.init(Cipher.DECRYPT_MODE, key); //操作模式为解密,key为密钥 byte sourceText = cipher.doFinal(cipherText); //获得解密后字节数组 System.out.println("解密后的信息: " + new String(sourceText)); } catch (Exception ex) { ex.printStackTrace(); } }}/** * @author Devon */import java.security.*;import java.security.spec.*;import javax.crypto.*;public class PairKeyExample { public static void main(String argv) { try { String algorithm = "RSA"; //定义加密算法,可用 DES,DESede,Blowfish String message = "张三,你好,我是李四"; //产生张三的密钥对(keyPairZhang) KeyPairGenerator keyGeneratorZhang = KeyPairGenerator.getInstance(algorithm); //指定采用的算法 keyGeneratorZhang.initialize(1024); //指定密钥长度为1024位 KeyPair keyPairZhang = keyGeneratorZhang.generateKeyPair(); //产生密钥对 System.out.println("生成张三的公钥对"); // 张三生成公钥(publicKeyZhang)并发送给李四,这里发送的是公钥的数组字节 byte publicKeyZhangEncode = keyPairZhang.getPublic().getEncoded(); //通过网络或磁盘等方式,把公钥编码传送给李四 //李四接收到张三编码后的公钥,将其解码 KeyFactory keyFacoryLi = KeyFactory.getInstance(algorithm); //得到KeyFactory对象 X509EncodedKeySpec x509KeySpec = new X509EncodedKeySpec(publicKeyZhangEncode); //公钥采用X.509编码 PublicKey publicKeyZhang = keyFacoryLi.generatePublic(x509KeySpec); //将公钥的KeySpec对象转换为公钥 System.out.println("李四成功解码,得到张三的公钥"); //李四用张三的公钥加密信息,并发送给李四 Cipher cipher = Cipher.getInstance("RSA/ECB/PKCS1Padding"); //得到Cipher对象 cipher.init(Cipher.ENCRYPT_MODE, publicKeyZhang); //用张三的公钥初始化Cipher对象 byte cipherMessage = cipher.doFinal(message.getBytes()); //得到加密信息 System.out.println("加密后信息:" + new String(cipherMessage)); System.out.println("加密完成,发送给李四..."); //张三用自己的私钥解密从李四处收到的信息 cipher.init(Cipher.DECRYPT_MODE, keyPairZhang.getPrivate()); //张三用其私钥初始化Cipher对象 byte originalMessage = cipher.doFinal(cipherMessage); //得到解密后信息 System.out.println("张三收到信息,解密后为:" + new String(originalMessage)); } catch (Exception ex) { ex.printStackTrace(); } }}

java源代码加密(java非对称加密的源代码(RSA))

本文编辑:admin

更多文章:


nba2k14霍华德面补(nba2k14mc模式怎么打面补)

nba2k14霍华德面补(nba2k14mc模式怎么打面补)

本文目录nba2k14mc模式怎么打面补nba2k14 MC模式面补NBA2K14的MC怎么套用面补NBA2K14的MC怎么套用面补已经下好的面补请问NBA2K14面补怎么用啊怎么我放进去没用怎么给nba2k13里的霍华德打上2014-20

2024年6月28日 10:51

应用软件下载中心(应用中心怎么下载)

应用软件下载中心(应用中心怎么下载)

大家好,应用软件下载中心相信很多的网友都不是很明白,包括应用中心怎么下载也是一样,不过没有关系,接下来就来为大家分享关于应用软件下载中心和应用中心怎么下载的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目录应用中心怎

2024年6月30日 06:28

房源系统软件哪个好(中介系统房产软件哪个好)

房源系统软件哪个好(中介系统房产软件哪个好)

“房源系统软件哪个好”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看房源系统软件哪个好(中介系统房产软件哪个好)!本文目录中介系统房产软件哪个好哪种租房软件比较靠谱房源系统软件哪个好租房app哪个比较好买房app十大排行榜出

2024年7月15日 16:31

德国乙级联赛比分排名?德国足球队世界杯战绩

德国乙级联赛比分排名?德国足球队世界杯战绩

大家好,德国大比分相信很多的网友都不是很明白,包括德国乙级联赛比分排名也是一样,不过没有关系,接下来就来为大家分享关于德国大比分和德国乙级联赛比分排名的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!本文目录德国乙级联赛比

2024年7月23日 23:40

下载一个手机导航软件(有什么全球性导航的手机软件吗)

下载一个手机导航软件(有什么全球性导航的手机软件吗)

各位老铁们好,相信很多人对下载一个手机导航软件都不是特别的了解,因此呢,今天就来为大家分享下关于下载一个手机导航软件以及有什么全球性导航的手机软件吗的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录有什么全球性导航

2024年7月17日 12:14

最近发现越来越多的人在学原画梦的课程,为什么会这么火,他们的课程好在哪?原画梦和涂鸦王国有什么区别

最近发现越来越多的人在学原画梦的课程,为什么会这么火,他们的课程好在哪?原画梦和涂鸦王国有什么区别

本文目录最近发现越来越多的人在学原画梦的课程,为什么会这么火,他们的课程好在哪原画梦和涂鸦王国有什么区别cg王和原画梦有什么区别原画梦和原画人什么关系最近发现越来越多的人在学原画梦的课程,为什么会这么火,他们的课程好在哪你可以先去【绘学霸】

2024年7月22日 22:33

17货源网一件代发(一手货源在哪里找)

17货源网一件代发(一手货源在哪里找)

本篇文章给大家谈谈17货源网一件代发,以及一手货源在哪里找对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。本文目录一手货源在哪里找17zwdcom一件代发怎么样怎么做电商,还不用囤货一件代发货源有哪些一件代发货源网有哪一些个人可以在1

2024年4月21日 16:26

交管12123手机app下载(交管12123下载二维码在哪,12123交管官网下载app123在哪)

交管12123手机app下载(交管12123下载二维码在哪,12123交管官网下载app123在哪)

本文目录交管12123下载二维码在哪,12123交管官网下载app123在哪威海交管12123官网是什么,威海交管12123 app下载在哪怎样下载交管12|23安装交管12123下载二维码在哪,12123交管官网下载app123在哪   

2024年5月19日 11:04

php用什么软件来编程(PHP需要用到什么软件)

php用什么软件来编程(PHP需要用到什么软件)

本篇文章给大家谈谈php用什么软件来编程,以及PHP需要用到什么软件对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。本文目录PHP需要用到什么软件p

2024年7月3日 18:00

极品飞车14怎么安装(极品飞车14怎么装)

极品飞车14怎么安装(极品飞车14怎么装)

本文目录极品飞车14怎么装极品飞车14中文版下载后怎么安装求详细解答!极品飞车14怎么安装 我已经下载好了刚下完极品飞车14,有谁能告诉我怎么安装吗极品飞车14怎么装,怎么就5.52G了?你下的文件坏了吧?去游讯上下载的。早在上个月,极品飞

2023年11月29日 19:00

卧龙传说下载(有没有类似于炉石传说的手机游戏另外画质最好好点)

卧龙传说下载(有没有类似于炉石传说的手机游戏另外画质最好好点)

本文目录有没有类似于炉石传说的手机游戏另外画质最好好点有没有什么手机游戏和炉石传说一样的啊有没有类似于炉石传说的手机游戏另外画质最好好点《全民英雄》、《魔幻卡牌》、《刀塔传奇》、《我叫MT》、还有《dota英雄》都是和炉石传说类似的。此类游

2024年3月12日 01:45

电脑免费下载歌曲的软件(还有什么软件可以免费下载音乐)

电脑免费下载歌曲的软件(还有什么软件可以免费下载音乐)

大家好,关于电脑免费下载歌曲的软件很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于还有什么软件可以免费下载音乐的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!本

2024年7月6日 14:15

日语语音翻译器在线翻译软件(有什么翻译日语的软件)

日语语音翻译器在线翻译软件(有什么翻译日语的软件)

大家好,如果您还对日语语音翻译器在线翻译软件不太了解,没有关系,今天就由本站为大家分享日语语音翻译器在线翻译软件的知识,包括有什么翻译日语的软件的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!本文目录有什么翻译日语的软件日

2024年5月26日 00:41

nba2k19手机中文版下载(NBA2K19手游在哪里可以下到啊)

nba2k19手机中文版下载(NBA2K19手游在哪里可以下到啊)

大家好,关于nba2k19手机中文版下载很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于NBA2K19手游在哪里可以下到啊的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位

2024年7月17日 11:57

option(option是什么意思)

option(option是什么意思)

这篇文章给大家聊聊关于option,以及option是什么意思对应的知识点,希望对各位有所帮助,不要忘了收藏本站哦。本文目录option是什么意思option是什么意思啊 option的含义option是什么意思option和choice的

2024年7月6日 23:58

bootxp(XP系统boot文件夹)

bootxp(XP系统boot文件夹)

本文目录XP系统boot文件夹如何设置Boot光启安装XP的xp电脑boot设置图解XP系统boot文件夹  winxp中boot不是文件夹,而是一个文件,其全名为boot.ini,默认具有系统及隐藏属性,查看方法如下:  1、打开“我的电

2023年6月21日 07:40

单机游戏《文明》的百科?求文明帝国2攻略和秘籍

单机游戏《文明》的百科?求文明帝国2攻略和秘籍

本文目录单机游戏《文明》的百科求文明帝国2攻略和秘籍文明帝国无法提供维护费怎么办文明帝国unciv无法提供维护费怎么办北美没发展出华夏文明,南美何以出现文明帝国单机游戏《文明》的百科《文明》(Civilization),又称《文明帝国》,由

2024年6月27日 03:55

盛大下载器官方下载(盛大热血传奇客户端哪里下)

盛大下载器官方下载(盛大热血传奇客户端哪里下)

本文目录盛大热血传奇客户端哪里下冒险岛怎么下载传奇1.76的客户端去哪下载就要1.76的~传奇世界下载步骤彩虹岛下载步骤热血传奇怎么下载盛大传奇客户端怎么下载在什么地方下盛大热血传奇客户端哪里下传奇客户端在盛大官网就可以下载,官网提供一键自

2024年6月12日 21:28

阿狸qq皮肤(怎样弄阿狸QQ皮肤)

阿狸qq皮肤(怎样弄阿狸QQ皮肤)

本文目录怎样弄阿狸QQ皮肤英雄联盟中阿狸的皮肤及其价格阿狸的皮肤介绍怎样弄阿狸QQ皮肤我的就是阿狸的,现在网上找个阿狸的皮肤你自己喜欢的,然后保存到电脑上,然后打开扣扣主面板,点那个小衣服换皮肤点击自定义找到那个阿狸的皮肤换上即可~搜阿狸皮

2024年5月18日 18:32

tt手游平台官网下载(tt手游平台在哪下载)

tt手游平台官网下载(tt手游平台在哪下载)

各位老铁们好,相信很多人对tt手游平台官网下载都不是特别的了解,因此呢,今天就来为大家分享下关于tt手游平台官网下载以及tt手游平台在哪下载的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!本文目录tt手游平台在哪下载最新

2024年7月20日 20:42

近期文章

本站热文

iphone vpn设置(ios设置vpn快捷开关)
2024-07-22 15:01:12 浏览:2334
windows12正式版下载(操作系统Windows Server 2012 R2,在哪能下载到,公司用的)
2024-07-20 17:26:53 浏览:1731
java安装教程(win10如何安装JAVA)
2024-07-19 19:55:49 浏览:1156
client mfc application未响应(每次进cf就提示client MFC Application未响应该怎么办啊!急急急)
2024-07-20 11:15:58 浏览:1153
标签列表

热门搜索