【马化腾氪金病毒源码】【甘肃小程序源码厂家排名】【武侠手游源码怎么用】java 3des 源码

2025-01-14 10:38:13 来源:kafka源码详解 分类:娱乐

1.如何用Java进行3DES加密解
2.3des java (3key模式)
3.Java 接口数据加密和解密
4.java 进行3DES 加密解密

java 3des 源码

如何用Java进行3DES加密解

       æœ€è¿‘一个合作商提出使用3DES交换数据,本来有现成的代码,可惜只有.net版本,服务器都是Linux,而且应用都是Java。于是对照提供的代码改了一个Java的版本出来,主要是不熟悉3DES,折腾了一天,终于搞定。

       æ‰€è°“3DES,就是把DES做三次,当然不是简单地DES DES DES就行了,中途有些特定的排列。

       åœ¨ç½‘上搜索了一下3DES,找到很少资料。找到GNU Crypto和Bouncy Castle两个Java扩充包,里面应该有3DES的实现吧。

       ä»ŽGNU Crypto入手,找到一个TripleDES的实现类,发现原来3DES还有一个名字叫DESede,在网上搜索TripleDES和DESede,呵呵,终于发现更多的资料了。

       Java的安全API始终那么难用,先创建一个cipher看看算法在不在吧

       Cipher cipher = Cipher.getInstance("DESede");

       å¦‚果没有抛异常的话,就证明这个算法是有效的

       çªç„¶æƒ³çœ‹çœ‹JDK有没有内置DESede,于是撇开Crypto,直接测试,发现可以正确运行。在jce.jar里面找到相关的类,JDK内置了。

       äºŽæ˜¯ç›´æŽ¥ç”¨DES的代码来改&测试,最后代码变成这样

       SecureRandom sr = new SecureRandom();

       DESedeKeySpec dks = new DESedeKeySpec(PASSWORD_CRYPT_KEY.getBytes());

       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");

       SecretKey securekey = keyFactory.generateSecret(dks);

       Cipher cipher = Cipher.getInstance("DESede");

       cipher.init(Cipher.ENCRYPT_MODE,马化腾氪金病毒源码 securekey, sr);

       return new String(Hex.encodeHex(cipher.doFinal(str.getBytes())));

       éœ€è¦ç•™æ„çš„是,要使用DESede的Spec、Factory和Cipher才行

       äº‹æƒ…还没完结,合作商给过来的除了密钥之外,还有一个IV向量。搜索了一下,发现有一个IvParameterSpec类,于是代码变成这样

       SecureRandom sr = new SecureRandom();

       DESedeKeySpec dks = new DESedeKeySpec(PASSWORD_CRYPT_KEY.getBytes());

       SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");

       SecretKey securekey = keyFactory.generateSecret(dks);

       IvParameterSpec iv = new IvParameterSpec(PASSWORD_IV.getBytes());

       Cipher cipher = Cipher.getInstance("DESede");

       cipher.init(Cipher.ENCRYPT_MODE, securekey, iv, sr);

       return new String(Hex.encodeHex(cipher.doFinal(str.getBytes())));

       ä½†æ˜¯ï¼Œè¿è¡ŒæŠ¥é”™äº†

       java.security.InvalidAlgorithmParameterException: ECB mode cannot use IV

       ECB是什么呢?代码完全没有写ECB什么的

       åˆä¸Šç½‘搜索,结果把DES的来龙去脉都搞清楚了

       blogs.com/lianghuilin/archive////3des.html

更多资讯请点击:娱乐

热门资讯

uhd源码

2025-01-14 09:112072人浏览

resteasy源码

2025-01-14 08:212792人浏览

qwtlegend源码

2025-01-14 08:01319人浏览

推荐资讯

(有片)日本富士山變垃圾山 恐被世遺除名

大公報綜合路透社、法新社、CNN、日本靜岡朝日電視台報道:被視為日本象徵的富士山,已淪為一座髒亂惡臭的垃圾山。近年,富士山遊客過多,登山路線擁堵,沿途堆滿垃圾,廁所髒亂不堪,如今更面臨被聯合國教科文組

macverilog源码

1.macverilogԴ??2.Zynq GTX全网最细讲解,aurora 8b/10b协议,OV5640板对板视频传输,提供2套工程源码和技术支持3.Artix7系列FPGA实现SDI视频编解码+