精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網(wǎng)站建設(shè)資訊

NEWS

網(wǎng)站建設(shè)資訊

Java信息摘要加密MD2、MD4、MD5實現(xiàn)詳解

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

創(chuàng)新互聯(lián)專注于連云港企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站開發(fā),商城網(wǎng)站建設(shè)。連云港網(wǎng)站建設(shè)公司,為連云港等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

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

private static void MD2_jdk(){
    try {
      MessageDigest digest = MessageDigest.getInstance("MD2");//獲得消息摘要MD2對象
      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對象
      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的加密實現(xiàn)(bc使用需要添加bc的jar包):

private static void MD2_bc(){
    Digest digest = new MD2Digest();//通過BC獲得消息摘要MD2對象
    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();//通過BC獲得消息摘要MD4對象
    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();//通過BC獲得消息摘要MD5對象
    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));
  }

通過bc為jdk添加一個動態(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的實現(xiàn):

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

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

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

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。


網(wǎng)頁標(biāo)題:Java信息摘要加密MD2、MD4、MD5實現(xiàn)詳解
瀏覽地址:http://m.jcarcd.cn/article/gpsdes.html
主站蜘蛛池模板: 日本三级全黄 | 欧美日韩成人精品 | 亚洲无码av午夜在线观看 | 欧美一区2区| 国产精品爽爽v | 国产精品最新网址 | 国产每日更 | 国产欧美一级精品 | 欧美日韩精品久 | 三年片在线 | 成人免费黄| 果冻传媒网站入口 | 精品国精 | 欧洲精品一区二区 | 91极品女神嫩 | 国产日产精品视频 | 黑人狂躁日 | 日韩欧美国产综合 | 国产在线看 | 91精选一区在线 | 精品国产丝袜 | 日韩中文精品 | 国产卡二卡三卡四卡 | 中文字幕v| 国产在线视频奶水 | 日本成人精品在线 | 九色熟女 | 中文字字幕 | 国产欧美精品一区二 | 99re在线 | 国产高清女主播 | 国产太嫩了在 | 国产天堂亚洲精品 | 日本成人一区在线 | 中文字幕日韩 | 欧美午夜激情免费看 | 韩漫画免费观看 | 欧美日韩国产亚洲一 | 国内成人免费视 | 日本视频免费 | 乱伦日韩中文字幕 |