`
qingwei201314
  • 浏览: 163931 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

关于MD5加密,登录,随机码

阅读更多
1.用户登录时,用js对密码+随机码,进行md5,然后再传送到服务端.保证每次传送的字符串都不同,这样就算被窥探到信息,密码也不会被破.步骤如下:
    在登录页面,先对输入密码进行MD5加密,再对随机码进行MD5加密,再把加密后的两个字符串拼起来,再进行一次MD5加密,传到服务端.服务端进行验证时,先取出DB中的密码,再从session中取出随机码,将随机码MD5后与从DB取出的密码拼成一个字符串,再与客户端传过来的比较,相同则登录成功.
客户端MD5加密的js包可到:http://pajhome.org.uk/crypt/md5/index.html下载.
js加密码方法:hex_md5("密码");需引入md5.js文件(在附件中)
服务端MD5加密的java类如下:
public class Md5 {
public static String encrypt(String source){
StringBuffer sb = new StringBuffer("");
try {
MessageDigest messageDigest = MessageDigest.getInstance("MD5");
messageDigest.update(source.getBytes());
byte[] b = messageDigest.digest();
sb = new StringBuffer(2 * b.length);
for(int i = 0 ; i < b.length ; i ++){
int low = (int)(b[i] & 0x0f);
int hight = (int)((b[i] & 0xf0) >> 4);
sb.append(Integer.toHexString(hight));
sb.append(Integer.toHexString(low));
}
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}

return sb.toString();
}
}

2.新增用户,修改密码,都是在客户端先把密码进行MD5加密后,再传到服务端.

这样做能保存登录时足够安全(中间人攻击除外),但是新增用户,修改密码时,如果用户加密后的密码被窃取,依然存在隐患.
3.随机码用kaptcha(或jcaptcha),下载地址为:http://code.google.com/p/kaptcha/


附:javar 的MD5加密简便方法:
package org.apache.commons.codec.digest;
String passwordMd5 = DigestUtils.md5Hex("123456");
分享到:
评论

相关推荐

    随机编码生成器&MD5加密字符串工具(NO:79)

    功能和界面见介绍https://jiuai.blog.csdn.net/article/details/115982294 看清需求后如需要了再下载!自行决定不喜勿喷,欢迎指导

    MD5加密函数 for javascript

    MD5加密函数 for javascript 32位md5加密。例如用在用户登陆时的密码,可以在客户端...或者在某些特定的情况下用来生成风格统一的随机码---用时间组合随机数组成的字符串来进行md5加密,则得到一个类似guid的唯一编码。

    MD5盐值加密

    MD5加密,可以附带16位、19位、32位随机码做盐值

    防止md5撞库破解及逆向算法破解用户MD5密码 - 随机取样密码加密算法

    原理:对明文使用32位随机数组取指纹后重组字符串,再取md5值 echo '无法破解的MD5密文:'. Encrypt_PassWord('password');//无法通过字典破解原文的随机加密密文 echo "\r\n \r\n"; echo '可以被字典破解的MD...

    java MD5,AES及 六位随机码生成.rar

    1、JAVA MD5加密,AES加密解决; 2、项目需求,根据用户ID,软件名称,时间,硬件ID生成随机6位码,用户ID是可逆的。 基本思路是,两位存储用户ID,其他四位随机加密码,然后再讲两位 和四位二次混淆加密。

    有MD5加密和验证码自动识别的登录代码

    一个多次MD5加密限制自动登录的例子,外加验证码自动识别。成功自动登录。。。。源代码公开。 原文:http://club.excelhome.net/thread-962615-1-1.html 理解客户端和服务器的的会话顺序 step 1,客户端向服务器...

    如何给MD5加上salt随机盐值

    不知道大家知不知道,在开发的时候如果直接给密码散列,黑客可以通过查散列值字典(例如MD5密码破解网站),得到某用户的密码。但如果加上salt后就会难上很多,即便是你获得了其中的salt和最终密文,破解也是相当麻烦...

    Mybatics,前端AJAX技术,SpringBoot、mysql、md5加密算法实现登录注册

    Mybatics,前端AJAX技术,SpringBoot、md5加密算法实现登录注册,在后端随机生成Salt值,然后采用MD5算法加密密码,将密码密文和salt值存入MYSQL数据

    加密解密工具支持随机盐(带源码)

    一个多功能加密解密工具,支持QQtools、MD5、DES、AES、SHA256、Base64 等多种加密解密方式,并支持随机盐,附有源码,可直接编译使用。

    C#加密解密DeEncryptHelper.zip

    得到随机安全码(哈希加密)。 得到随机哈希加密字符串 哈希加密一个字符串 RSA加密解密及RSA签名和验证 RSA 的密钥产生 产生私钥 和公钥 RSA 方式加密 RSA的解密函数 获取Hash描述表 RSA签名 RSA 签名验证

    登陆加密MD5+Salt+SHA1附代码

    MD5 的全称是Message-Digest Algorithm 5(信息-摘要算法),在90年代初由MIT Laboratory for Computer Science和RSA Data Security Inc的Ronald L. Rivest开发出来,经MD2、MD3和MD4发展而来。 作用:把一个任意...

    MD5源码(C++)

    不管是MD2、MD4还是MD5,它们都需要获得一个随机长度的信息并产生一个128位的信息摘要。虽然这些算法的结构或多或少有些相似,但MD2的设计与MD4和MD5完全不同,那是因为MD2是为8位机器做过设计优化的,而MD4和MD5却...

    Android数据加密之Rsa加密

     •Android数据加密之MD5加密  •Android数据加密之Base64编码算法  •Android数据加密之SHA安全散列算法  什么是Rsa加密? RSA算法是最流行的公钥密码算法,使用长度可以变化的密钥。RSA是第一个既能用于数据...

    c# 加密和解密相关代码

    添加一个Button 控件,用来使用MD5算法对输入的数据进行加密。 (3)程序主要代码如下: public string Encrypt(string strPwd) { MD5 md5 = new MD5CryptoServiceProvider(); //创建MD5 对象 byte[] data = System....

    C# 10种加密解密方式

    1、MD5加密 2、根据CPU硬盘获取机器码 3、加密数据报 4、口令加密BAT、EXE、RAR 5、使用强名称标识软件 6、伪随机数加密 7、文件加密 8、异或加密数字 9、注册码注册机制

    在线密码生成器(CipherMaker) v2.0

    在线密码生成器(CipherMaker)是以.net进行开发的密码生成器,它可以随机的生成任意密码并加密成MD5格式,也可对指定的密码进行MD5的加密,还可对原有的加密字符串进行大小写的转换。在线密码生成器(CipherMaker) v...

    多重加密解密程序

    01&gt;使用多位伪随机钥码加密,可加密任何类型文件. 02&gt;加密与解密与破碎,...06&gt;校验:MD5与CRC32校验码比较(与通用的MD5有差异). 07&gt;密码可以是文本或文件,可以设置两组密码是否一致. 08&gt;可以直接用鼠标拖拉文件至窗体.

    基于SpringBoot + MySQL + Redis + RabbitMQ + Guava开发的高并发商品限时秒杀系统

    1. 两次MD5加密 将用户输入的密码和固定Salt通过MD5加密生成第一次加密后的密码,再讲该密码和随机生成的Salt通过MD5进行第二次加密,最后将第二次加密后的密码和第一次的固定Salt存数据库 好处: 第一次作用:...

    Discuz论坛密码与密保加密规则

     举例:假如密码为 123456789 ,固定字符串为jb51, 那么加密规则为:md5(md5(‘123456789′).’jb51’); 得出的结果就是:96122ff0dd306c912aab15adccf21df1 Discuz密保加密规则:  加密过程是value的值先加密一...

Global site tag (gtag.js) - Google Analytics