A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 29198102shihao 中级黑马   /  2013-7-8 13:58  /  1059 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

md5算法,得到数据摘要!最常用!
1保存用户密码,在数据库里不能保存明码,不能让别人看到,服务器将密码用md5编码后存!!反向编码是40亿年,可以暴力破解,知道密码长度,生成所有可能的密码的字符,再生成数据摘要,再去对照密码
2校验数据的完整性,下载的程序时有个md5码,下载完的软件也可以生成md5码,如果一致,代表下载过程中没有丢掉一个字节,而且没有被植入木马程序

java中每个任何类型数据都有个摘要,前128位 16个字节 的长度的数据摘要
String s=“额外绯闻纷纷“
byte []md5=MessegeDiget.getInstance(“md5”).digest(s.getBytes());  指定md5算法生成摘要
构建成字符串:不能直接构建new String 编码时gb2313  会乱码!!!
base64算法
需要用到base64编码算法:将三个字节24个进制位,转化为4个字节,每个字节装6位,在每个字节前面补两个0就好了。这时候最小数是00000000最大数00111111   {0-63}64个数,作为一个码表,比如:0代表a  base64的码都是键盘上所见的明文字符。
任何数据经过base64编码后,都会转化成人眼看到的键盘上的字符

非常重要!!!网络数据传递 一般都需要先用base64编码再传输!
一段数据包括1数据开始符2数据体3数据结束符,如果不编码,数据体很可能存在数据结束符,会导致数据没有传完就结束了
需要对数据体进行base64编码,数据结束符 开始符是base64以外的字符

1 个回复

倒序浏览
您需要登录后才可以回帖 登录 | 加入黑马