网站安全之Java加密体系(MD5算法)
来源:互联网 发布:淘宝的hottoys有假货吗 编辑:程序博客网 时间:2024/06/05 04:11
在上午写了一篇《网站入侵的攻击方法与原理》 我在那篇博客讲了一些我们现网络中常用的攻击方法原理,让大家不再于只把这些不安全因素归于一词“电脑中毒了”;其实有很多人,包括从事计算机的程序员,他们对网络管理也不太理解,也许是没有接触过,因此对网络攻击原理不太懂。
曾有一次我看过一个笑话——小红有一个程序员男朋友,有一天,小红的几个同事来到他们家玩,得知小红的男票是程序员,外行人对于程序员都很好奇,他们虽然不懂程序员具体是做什么,但一定是计算机很厉害的。于是开始请教起了计算机方面的事。A同事问"我最近想买台电脑,不知怎么样的配置好呢?";B同事问“最近我电脑越来越卡,不知是不是中毒了,可杀毒软件又杀不出来”;C同事也说“对对对,我的电脑偶尔还只能上QQ,不能打开网站,这是怎么回事呢?”。。。。。一人一句一大堆的问题出来,小红的男票的脸越来越红,脸色越来越难看。大家看到后怕怕的,偷偷问小红“你男票脾气不太好吧,我们请教一下问题,看他样子要发脾气了。”;可没想到的是结果小红的男票来一句话让大家愣住了,“我只会写程序,其他的我都不会,不要问我这些”
上面的故事我有改过,因为只是大概意思是那样的,也许有人看过此故事。但原理一样,这故事也告诉我们程序员,术有专攻没有错,但也要了解一些计算机其他知识,扩展自己的见识,有时候抽空了解一下计算机硬件与网络知识在生活与工作中还是很有用的,毕竟外行人真觉得我们程序员==计算机很厉害的那种概念。可别像故事那样出现尴尬情景,我自己以前在学校时也有学过一些硬件方面的知识和局域网的搭建,虽然几年过去了,我依然还记得网线插头上水晶头各颜色线的打发,所以我们了解一下计算机其他方面的知识,还是有必要的。当然,我们最主要的还是程序开发和网络知识;
我的每篇博客总是闲话太多,呵呵,谁让我不是那种内向又不爱说话的程序员呢。大家请包容啊,因为我是JAVA程序员,那接下来我都会讲一些JAVA加密体系方面的知识,我会分几篇来讲,以免太乱
Java加密体系
JCA——Java Cryptography Architecture
- 数字签名
- 信息摘要
JCE——Java Cryptography Extension
- MD5(消息摘要算法)
- SHA(安全散列算法)
- DES(数据加密算法)
- 初始化MessageDigest信息摘要对象
- 传入需要计算的字条串更新摘要对象
- 计算信息摘要
- 将byte[]转换为长度为32位的16进制字符串
源代码如下:
package com.qzh.test;import java.io.UnsupportedEncodingException;import java.security.MessageDigest;import java.security.NoSuchAlgorithmException;import java.util.Scanner;public class MD5Test {public void TestMD5(String input) throws NoSuchAlgorithmException, UnsupportedEncodingException{//1.初始化MessageDigest信息摘要对象MessageDigest md = MessageDigest.getInstance("md5");//2.传入需要计算的字条串更新摘要对象md.update(input.getBytes("UTF-8"));//3.计算信息摘要byte[] hashCode = md.digest();//4.将byte[]转换为长度为32位的16进制字符串StringBuffer sb = new StringBuffer();for(byte b:hashCode){sb.append(Character.forDigit((b>>4) & 0xf, 16));sb.append(Character.forDigit(b & 0xf, 16));}System.out.println("加密后:" + sb.toString());}public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {Scanner scanner = new Scanner(System.in);System.out.println("请输入你要加密的数据......");String input = scanner.nextLine();MD5Test md5 = new MD5Test();md5.TestMD5(input);}}
执行后如下图:
- 网站安全之Java加密体系(MD5算法)
- 修改MD5加密 提高网站安全
- Java 之 MD5加密
- Java之MD5加密
- Java 之md5加密
- java加密解密——单项加密之MD5(算法)
- java安全(三)摘要算法MD5
- MD5算法加密(基于Java)
- java实现MD5算法加密
- Android数据安全之MD5加密
- java安全架构____java MD5加密
- Java加密解密算法-MD5加密解密
- 【密钥算法】Java加密技术(八)---Java证书体系
- MD5加密(Java)
- Java 加密解密之消息摘要算法(MD5 SHA MAC)
- Java 加密解密之消息摘要算法(MD5 SHA MAC)
- 密码学4——Java 加密解密之消息摘要算法(MD5 SHA MAC)
- 密码学4——Java 加密解密之消息摘要算法(MD5 SHA MAC)
- jQuery mobile Data 属性
- Bootstrap3学习(二、排版)class="text-left"
- 理解Java对象序列化
- 玩命牛的成长记录(十八)——服务端后台实现
- 多边形三角化问题见闻
- 网站安全之Java加密体系(MD5算法)
- Android基础介绍
- 关于DoG角点检测matlab实现
- 史上最详细的八个皇后算法解析【php版本】
- list的遍历与删除
- struts2 标签的使用之一 s:if
- 函数调用过程探究
- 算法导论 改进快排(2)----针对相同元素值 7.2
- 关于中国象棋对弈程序ElephantEye(象眼)