最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java實(shí)現(xiàn)url加密處理的方法示例

 更新時(shí)間:2017年06月02日 11:36:36   作者:qq7342272  
這篇文章主要介紹了Java實(shí)現(xiàn)url加密處理的方法,涉及java基于base64、編碼轉(zhuǎn)換實(shí)現(xiàn)加密解密相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了Java實(shí)現(xiàn)url加密處理的方法。分享給大家供大家參考,具體如下:

package test;
import java.security.Key;
import java.security.SecureRandom;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
public class ThreeDES {
  public static String crypt(String content,String password,int i){
    try {
      KeyGenerator generator = KeyGenerator.getInstance("AES");
      generator.init(new SecureRandom(password.getBytes()));
      Key key = generator.generateKey();
      generator = null;
      if(i == 1){
        return getEncString(content,key);
      }
      else if(i == 2){
        return getDesString(content,key);
      }
    } catch (Exception e) {
      return null;
    }
    return null;
  }
  /**
   * 加密String明文輸入,String密文輸出
   *
   * @param strMing
   * @return
   */
  private static String getEncString(String strMing,Key key) {
    byte[] byteMi = null;
    byte[] byteMing = null;
    String strMi = "";
    BASE64Encoder base64en = new BASE64Encoder();
    try {
      byteMing = strMing.getBytes("UTF8");
      byteMi = getEncCode(byteMing,key);
      strMi = base64en.encode(byteMi);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      base64en = null;
      byteMing = null;
      byteMi = null;
    }
    return strMi;
  }
  /**
   * 解密 以String密文輸入,String明文輸出
   *
   * @param strMi
   * @return
   */
  private static String getDesString(String strMi, Key key) {
    BASE64Decoder base64De = new BASE64Decoder();
    byte[] byteMing = null;
    byte[] byteMi = null;
    String strMing = "";
    try {
      byteMi = base64De.decodeBuffer(strMi);
      byteMing = getDesCode(byteMi,key);
      strMing = new String(byteMing, "UTF8");
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      base64De = null;
      byteMing = null;
      byteMi = null;
    }
    return strMing;
  }
  /**
   * 加密以byte[]明文輸入,byte[]密文輸出
   *
   * @param byteS
   * @return
   */
  private static byte[] getEncCode(byte[] byteS,Key key) {
    byte[] byteFina = null;
    Cipher cipher;
    try {
      cipher = Cipher.getInstance("AES");
      cipher.init(Cipher.ENCRYPT_MODE, key);
      byteFina = cipher.doFinal(byteS);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      cipher = null;
    }
    return byteFina;
  }
  /**
   * 解密以byte[]密文輸入,以byte[]明文輸出
   *
   * @param byteD
   * @return
   */
  private static byte[] getDesCode(byte[] byteD,Key key) {
    Cipher cipher;
    byte[] byteFina = null;
    try {
      cipher = Cipher.getInstance("AES");
      cipher.init(Cipher.DECRYPT_MODE, key);
      byteFina = cipher.doFinal(byteD);
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      cipher = null;
    }
    return byteFina;
  }
  public static void main(String[] args) {
    System.out.println(ThreeDES.crypt("bindMobile=13023130171&fenjihao=107", "bbbbb", 1));
    System.out.println(ThreeDES.crypt("GT+F0fcFNGiq73/+FaX9pK9n9zqxwqz9sZ7MQdSp1BxWJXWn7EwnvniQpAOaGi0W", "bbbbb", 2));
  }
}

PS:關(guān)于加密解密感興趣的朋友還可以參考本站在線工具:

URL網(wǎng)址16進(jìn)制加密工具:
http://tools.jb51.net/password/urlencodepwd

MD5在線加密工具:
http://tools.jb51.net/password/CreateMD5Password

迅雷、快車、旋風(fēng)URL加密/解密工具:
http://tools.jb51.net/password/urlrethunder

在線散列/哈希算法加密工具:
http://tools.jb51.net/password/hash_encrypt

在線MD5/hash/SHA-1/SHA-2/SHA-256/SHA-512/SHA-3/RIPEMD-160加密工具:
http://tools.jb51.net/password/hash_md5_sha

在線sha1/sha224/sha256/sha384/sha512加密工具:
http://tools.jb51.net/password/sha_encode

更多關(guān)于java算法相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Java數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Java操作DOM節(jié)點(diǎn)技巧總結(jié)》、《Java文件與目錄操作技巧匯總》和《Java緩存操作技巧匯總

希望本文所述對(duì)大家java程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • java結(jié)束當(dāng)前循環(huán)常用代碼

    java結(jié)束當(dāng)前循環(huán)常用代碼

    在?Java中,當(dāng)我們要結(jié)束一個(gè)循環(huán)時(shí),通常會(huì)使用循環(huán)變量的實(shí)現(xiàn)類來結(jié)束,但在實(shí)際開發(fā)中,我們經(jīng)常會(huì)遇到某個(gè)循環(huán)結(jié)束后需要進(jìn)行其他的操作的情況,在本文中給大家分享java結(jié)束當(dāng)前循環(huán)常用代碼,感興趣的朋友跟隨小編一起看看吧
    2023-06-06
  • 開源項(xiàng)目ERM模型轉(zhuǎn)jpa實(shí)體maven插件使用

    開源項(xiàng)目ERM模型轉(zhuǎn)jpa實(shí)體maven插件使用

    這篇文章主要為大家介紹了開源項(xiàng)目ERM模型轉(zhuǎn)jpa實(shí)體maven插件的使用說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • spring?bean標(biāo)簽中的init-method和destroy-method詳解

    spring?bean標(biāo)簽中的init-method和destroy-method詳解

    這篇文章主要介紹了spring?bean標(biāo)簽中的init-method和destroy-method,在很多項(xiàng)目中,經(jīng)常在xml配置文件中看到init-method 或者 destroy-method ,因此整理收集下,方便以后參考和學(xué)習(xí),需要的朋友可以參考下
    2023-04-04
  • java?Spring?Boot的介紹與初體驗(yàn)

    java?Spring?Boot的介紹與初體驗(yàn)

    大家好,本篇文章主要講的是java?Spring?Boot的介紹與初體驗(yàn),感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-01-01
  • java實(shí)現(xiàn)仿射密碼加密解密

    java實(shí)現(xiàn)仿射密碼加密解密

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)仿射密碼加密解密的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-03-03
  • Java SpringBoot實(shí)現(xiàn)文件上傳功能的示例代碼

    Java SpringBoot實(shí)現(xiàn)文件上傳功能的示例代碼

    這篇文章主要介紹了如何利用Java SpringBoot實(shí)現(xiàn)文件上傳功能,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)有一定幫助,需要的可以參考一下
    2022-03-03
  • ssm實(shí)現(xiàn)分頁查詢的實(shí)例

    ssm實(shí)現(xiàn)分頁查詢的實(shí)例

    下面小編就為大家?guī)硪黄猻sm實(shí)現(xiàn)分頁查詢的實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • springboot項(xiàng)目中使用docker進(jìn)行遠(yuǎn)程部署的實(shí)現(xiàn)

    springboot項(xiàng)目中使用docker進(jìn)行遠(yuǎn)程部署的實(shí)現(xiàn)

    本文主要介紹了在Spring Boot項(xiàng)目中使用Docker進(jìn)行遠(yuǎn)程部署,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Spring?Boot監(jiān)控SQL運(yùn)行情況的全過程

    Spring?Boot監(jiān)控SQL運(yùn)行情況的全過程

    這篇文章主要給大家介紹了關(guān)于Spring?Boot監(jiān)控SQL運(yùn)行情況的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用SpringBoot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-02-02
  • java 完全二叉樹的構(gòu)建與四種遍歷方法示例

    java 完全二叉樹的構(gòu)建與四種遍歷方法示例

    本篇文章主要介紹了java 完全二叉樹的構(gòu)建與四種遍歷方法示例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。
    2017-03-03

最新評(píng)論

齐河县| 石屏县| 大安市| 兴仁县| 公安县| 桑日县| 株洲市| 唐河县| 河津市| 荥阳市| 霞浦县| 丰镇市| 句容市| 文山县| 雅江县| 黄陵县| 沙坪坝区| 蓝山县| 固原市| 斗六市| 叶城县| 遂平县| 马关县| 高淳县| 阿坝县| 文山县| 南投市| 罗平县| 景宁| 镇坪县| 盐源县| 博罗县| 建昌县| 恭城| 武胜县| 山东省| 揭阳市| 普陀区| 比如县| 招远市| 广昌县|