MD5算法加密(基于Java)

来源:互联网 发布:windows内核编程有前景 编辑:程序博客网 时间:2024/06/05 18:10

MD5算法的原理

MD5算法原理
http://www.eepw.com.cn/article/275283.htm
Md5加密算法原理 | 夏冰加密软件技术博客
http://www.jiamisoft.com/blog/index.php/2271-md5jiamisuanfa-2.html


参考博客

MD5加密算法原理及实现 - 九天之方 - 博客园
http://www.cnblogs.com/hjgods/p/3998570.html


MD5加密算法

    /**     * 给制定的字符串按照MD5算法加密     * @param pwd表示需要加密的字符串     */    public static void encoder(String pwd) {        // TODO Auto-generated method stub        try {            // 1,制定使用的算法类型            MessageDigest digest = MessageDigest.getInstance("MD5");            // 2,将需要加密的字符串中转换成byte类型,然后进行随机Hash过程            byte[] bs = digest.digest(pwd.getBytes());            // 3,拼接字符串过程            StringBuffer sb = new StringBuffer();            // 4,循环遍历bs,然后让其生成32位字符串,固定写法            for (byte b : bs) {                int i = b & 0xff;                String string = Integer.toHexString(i);                //判断16为的数字是否有2位,没有2为的补0补到2位                if (string.length() < 2) {                    string = 0 + string;                }                // 将转为32位的字符串不断拼接到Stringbuffer对象中                sb.append(string);            }        } catch (NoSuchAlgorithmException e) {            // TODO Auto-generated catch block            e.printStackTrace();        }    }

最后说明:由于本人的方向不是研究密码学的,仅是在学习开发安卓的时候了解一下,不深入研究如何实现,所以注释仅仅是本人的理解,所以有误的地方欢迎大家留言指出来哈

0 0
原创粉丝点击