麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁(yè) > 學(xué)院 > 開(kāi)發(fā)設(shè)計(jì) > 正文

信息加密之信息摘要加密MD2、MD4、MD5

2019-11-14 22:58:22
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
信息加密之信息摘要加密MD2、MD4、md5

   對(duì)于用戶(hù)數(shù)據(jù)的保密一直是各個(gè)互聯(lián)網(wǎng)企業(yè)頭疼的事,那如何防止用戶(hù)的個(gè)人信息泄露呢?今天為大家介紹一種最簡(jiǎn)單的加密方式--信息摘要算法MD。它如何來(lái)保護(hù)用戶(hù)的個(gè)人信息呢?其實(shí)很簡(jiǎn)單,當(dāng)獲得到用戶(hù)的信息后,先對(duì)其進(jìn)行加密,然后將加密的結(jié)果保存到數(shù)據(jù)庫(kù),這樣即使被盜,用戶(hù)的數(shù)據(jù)也不會(huì)丟失。下面上代碼:

  java的jdk提供了MD2和MD5的加密方式, JAVA不支持MD4的jdk加密方式,jdk的實(shí)現(xiàn)如下:

PRivate static void MD2_jdk(){        try {            MessageDigest digest = MessageDigest.getInstance("MD2");//獲得消息摘要MD2對(duì)象            byte[] md2Byte = digest.digest(src.getBytes());            System.out.println("md2Byte :"+md2Byte.toString());            System.out.println("md2Byte :"+Hex.encodeHexString(md2Byte));        } catch (NoSuchAlgorithmException e) {            e.printStackTrace();        }        }        private static void MD5_jdk(){        try {            MessageDigest digest = MessageDigest.getInstance("MD5");//獲得消息摘要MD5對(duì)象            byte[] md5Byte = digest.digest(src.getBytes());            System.out.println("md5Byte :"+md5Byte.toString());            System.out.println("md5Byte :"+Hex.encodeHexString(md5Byte));        } catch (NoSuchAlgorithmException e) {            e.printStackTrace();        }    }

  bc提供了MD2/4/5的加密實(shí)現(xiàn)(bc使用需要添加bc的jar包):

private static void MD2_bc(){        Digest digest = new MD2Digest();//通過(guò)BC獲得消息摘要MD2對(duì)象        digest.update(src.getBytes(), 0, src.getBytes().length);        byte[] md2Byte = new byte[digest.getDigestSize()];        digest.doFinal(md2Byte, 0);        System.out.println("md2Byte :"+md2Byte.toString());        System.out.println("md2Byte : "+org.bouncycastle.util.encoders.Hex.toHexString(md2Byte));    }        private static void MD4_bc(){        Digest digest = new MD4Digest();//通過(guò)BC獲得消息摘要MD4對(duì)象        digest.update(src.getBytes(), 0, src.getBytes().length);        byte[] md4Byte = new byte[digest.getDigestSize()];        digest.doFinal(md4Byte, 0);        System.out.println("md4Byte :"+md4Byte.toString());        System.out.println("md4Byte : "+org.bouncycastle.util.encoders.Hex.toHexString(md4Byte));    }        private static void MD5_bc(){        Digest digest = new MD5Digest();//通過(guò)BC獲得消息摘要MD5對(duì)象        digest.update(src.getBytes(), 0, src.getBytes().length);        byte[] md5Byte = new byte[digest.getDigestSize()];        digest.doFinal(md5Byte, 0);        System.out.println("md5Byte :"+md5Byte.toString());        System.out.println("md5Byte : "+org.bouncycastle.util.encoders.Hex.toHexString(md5Byte));    }

  通過(guò)bc為jdk添加一個(gè)動(dòng)態(tài)的MD4方法:

private static void MD4_bc_jdk(){        try {            Security.addProvider(new BouncyCastleProvider());            MessageDigest md = MessageDigest.getInstance("MD4");            byte[] md4Byte = md.digest(src.getBytes());            System.out.println("md4Byte :"+md4Byte.toString());            System.out.println("md4Byte :"+Hex.encodeHexString(md4Byte));        } catch (NoSuchAlgorithmException e) {            e.printStackTrace();        }    }

  最后為大家介紹一下CC的MD2/5的實(shí)現(xiàn):

DigestUtils.md2Hex(src.getBytes());DigestUtils.md5Hex(src.getBytes());

注:src為設(shè)置的一個(gè)字符串。

  到這里消息摘要加密算法的MD2/4/5的實(shí)現(xiàn)到此講解完畢,對(duì)Base64和對(duì)稱(chēng)加密算法有興趣的朋友可以看一下我之前分享的博客。小生很喜歡信息安全,那位有興趣,歡迎交流。(1453296946@QQ.com)


發(fā)表評(píng)論 共有條評(píng)論
用戶(hù)名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产免费让你躁在线视频 | 三人弄娇妻高潮3p视频 | 日韩av电影在线观看 | 久久久久久久久成人 | 亚洲精品一区国产精品丝瓜 | 福利在线免费 | 成人毛片网站 | 黄色a级片视频 | 久久区二区 | 视频h在线 | 成人午夜精品久久久久久久3d | 中文字幕精品在线视频 | 精品亚洲综合 | 免费国产在线视频 | 九九综合九九 | 一级毛片特黄 | 久久97视频| 国产精品一区在线免费观看 | 欧美精品免费一区二区三区 | 久久亚洲第一 | 九九热九九热 | 黄视频网站免费在线观看 | 黄色毛片免费看 | 日本在线不卡一区二区 | 中国洗澡偷拍在线播放 | 日韩毛片网| 91 成人 | 久久久精品视频国产 | 精品91av | 色综合久久久久久久久久久 | 亚洲精品com | 亚洲一区二区成人 | 做爰裸体激情2 | 久久av一区二区 | 污视频在线免费播放 | 91小视频在线观看免费版高清 | 黄在线免费| 色综合久久99 | 一级免费大片 | 欧美电影在线观看 | 韩国一级免费视频 |