- 2
- 0
- 约1.28万字
- 约 11页
- 2017-11-10 发布于江苏
- 举报
java加密解密简单实现
java 加密解密简单实现加密算法有很多种:这里只大约列举几例:
1:消息摘要:(数字指纹):既对一个任意长度的一个数据块进行计算,产生一个唯一指纹。MD5/SHA1发送给其他人你的信息和摘要,其他人用相同的加密方法得到摘要,最后进行比较摘要是否相同。2:单匙密码体制:DES:比较简便高效,密钥简短,加解密速度快,破译极其困难,但其安全性依赖于密匙的安全性。DES(Data Encryption Standard)是发明最早的最广泛使用的分组对称加密算法。DES算法的入口参数有三个:Key、Data、Mode。其中Key为8个字节共64位,是DES算法的工作密钥;Data也为8个字节64位,是要被加密或被解密的数据;Mode为DES的工作方式,有两种:加密或解密3:数字签名:就是信息发送者用其私钥对从所传报文中提取出的特征数据(或称数字指纹)进行RSA算法操作,以保证发信人无法抵赖曾发过该信息(即不可抵赖性),同时也确保信息报文在经签名后末被篡改(即完整性)。当信息接收者收到报文后,就可以用发送者的公钥对数字签名进行验证。代表:DSA4:非对称密匙密码体制(公匙体系):加密密匙不同于解密密匙,加密密匙公之于众,谁都可以使用,解密密匙只有解密人自己知道。代表:RSA
下面是对上面几个例子进行的简单实现:
Java代码
package?test; ??
import?java.io.FileInputStream; ??
import?java.io.FileOutputStream; ??
import?java.io.IOException; ??
import?java.io.ObjectInputStream; ??
import?java.io.ObjectOutputStream; ??
import?java.security.*; ??
import?javax.crypto.Cipher; ??
import?javax.crypto.KeyGenerator; ??
import?javax.crypto.SecretKey; ??
/** ?
?*?加密解密 ?
?*? ?
?*?@author?shy.qiu ?
?*?@since??/qiushyfm ?
?*/??
public?class?CryptTest?{ ??
????/** ?
?????*?进行MD5加密 ?
?????*? ?
?????*?@param?info ?
?????*????????????要加密的信息 ?
?????*?@return?String?加密后的字符串 ?
?????*/??
????public?String?encryptToMD5(String?info)?{ ??
????????byte[]?digesta?=?null; ??
????????try?{ ??
????????????//?得到一个md5的消息摘要 ??
????????????MessageDigest?alga?=?MessageDigest.getInstance(MD5); ??
????????????//?添加要进行计算摘要的信息 ??
????????????alga.update(info.getBytes()); ??
????????????//?得到该摘要 ??
????????????digesta?=?alga.digest(); ??
????????}?catch?(NoSuchAlgorithmException?e)?{ ??
????????????e.printStackTrace(); ??
????????} ??
????????//?将摘要转为字符串 ??
????????String?rs?=?byte2hex(digesta); ??
????????return?rs; ??
????} ??
????/** ?
?????*?进行SHA加密 ?
?????*? ?
?????*?@param?info ?
?????*????????????要加密的信息 ?
?????*?@return?String?加密后的字符串 ?
?????*/??
????public?String?encryptToSHA(String?info)?{ ??
????????byte[]?digesta?=?null; ??
????????try?{ ??
????????????//?得到一个SHA-1的消息摘要 ??
????????????MessageDigest?alga?=?MessageDigest.getInstance(SHA-1); ??
?????????
您可能关注的文档
- DBJT重庆庆市建委聚苯板技术规程.doc
- C课程设计基于控制台的学校人员管理系统.doc
- DCDC主拓扑设计.doc
- DB的常用命令及与ORACLE的一些区别.doc
- DSMIV(DIAGNOSTICANDSTATISTICALMANUALOFMENTALDISORDERS)介绍.doc
- DSP经验之谈.doc
- DIY大头帖――浙教高一图像编辑软件ACDSee的使用.doc
- DSP参考程序.doc
- DudtrkCPA会计第三章合集.doc
- DXJ矿用隔爆兼本安型电源箱出厂使用说明书.doc
- 全过程工程管理造价咨询工程监理项目服务方案投标方案(技术部分).doc
- 招标代理服务投标技术服务方案(技术方案).doc
- AI大模型与AIGC技术在公安领域的应用解决方案(99页 PPT).pptx
- 工业4.0智能制造数字工厂规划方案.pptx
- 树立社会主义核心价值观.docx
- 三年(2023-2025)中考历史真题分类汇编(全国)专题21 科技文化与社会生活(解析版).docx
- 2025年中考道德与法治真题完全解读(吉林卷).pdf
- 2025年中考道德与法治真题完全解读(安徽卷).pdf
- 三年(2023-2025)中考历史真题分类汇编(全国)专题14 人民解放战争(解析版).pdf
- 三年(2023-2025)广东中考历史真题分类汇编:专题03 中国近代史(八年级上册)(解析版).docx
原创力文档

文档评论(0)