• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    java易懂易用的MD5加密(可直接运行) (1)第1/2页
    1、md5加密,该加密算法是单向加密,即加密的数据不能再通过解密还原。相关类包含在java.security.MessageDigest包中。
    2、3-DES加密,该加密算法是可逆的,解密方可以通过与加密方约定的密钥匙进行解密。相关类包含在javax.crypto.*包中。
    3、base64编码,是用于传输8bit字节代码最常用的编码方式。相关类在sun.misc.BASE64Decoder 和sun.misc.BASE64Encoder 中。
    4、URLEncoder编码,是一种字符编码,保证被传送的参数由遵循规范的文本组成。相关类在java.net.URLEncoder包中。
    细节:
    1、进行MD5加密,得到byte[] 
    复制代码 代码如下:

    /**
    * 进行MD5加密
    * @param String 原始的SPKEY
    * @return byte[] 指定加密方式为md5后的byte[]
    */
    private byte[] md5(String strSrc)
    {
    byte[] returnByte = null;
    try
    {
    MessageDigest md5 = MessageDigest.getInstance("MD5");
    returnByte = md5.digest(strSrc.getBytes("GBK"));
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }
    return returnByte;
    }

    2、得到3-DES的密钥匙 
    复制代码 代码如下:

    /**
    * 得到3-DES的密钥匙
    * 根据根据需要,如密钥匙为24个字节,md5加密出来的是16个字节,因此后面补8个字节的0
    * @param String 原始的SPKEY
    * @return byte[] 指定加密方式为md5后的byte[]
    */
    private byte[] getEnKey(String spKey)
    {
    byte[] desKey=null;
    try
    {
    byte[] desKey1 = md5(spKey);
    desKey = new byte[24];
    int i = 0;
    while (i desKey1.length i 24) {
    desKey[i] = desKey1[i];
    i++;
    }
    if (i 24) {
    desKey[i] = 0;
    i++;
    }
    }
    catch(Exception e){
    e.printStackTrace();
    }
    return desKey;
    }

    3、3-DES加密
    复制代码 代码如下:

    /**
    * 3-DES加密
    * @param byte[] src 要进行3-DES加密的byte[]
    * @param byte[] enKey 3-DES加密密钥
    * @return byte[] 3-DES加密后的byte[]
    */
    public byte[] Encrypt(byte[] src,byte[] enKey)
    {
    byte[] encryptedData = null;
    try
    {
    DESedeKeySpec dks = new DESedeKeySpec(enKey);
    SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
    SecretKey key = keyFactory.generateSecret(dks);
    Cipher cipher = Cipher.getInstance("DESede");
    cipher.init(Cipher.ENCRYPT_MODE, key);
    encryptedData = cipher.doFinal(src);
    }
    catch(Exception e)
    {
    e.printStackTrace();
    }
    return encryptedData;
    }

    4、对字符串进行Base64编码
    复制代码 代码如下:

    /**
    * 对字符串进行Base64编码
    * @param byte[] src 要进行编码的字符
    *
    * @return String 进行编码后的字符串
    */
    public String getBase64Encode(byte[] src)
    {
    String requestValue="";
    try{
    BASE64Encoder base64en = new BASE64Encoder();
    requestValue=base64en.encode(src);
    //System.out.println(requestValue);
    }
    catch(Exception e){
    e.printStackTrace();
    }

    return requestValue;
    }

    12下一页阅读全文
    您可能感兴趣的文章:
    • Java实现MD5加密及解密的代码实例分享
    • 分享Java常用几种加密算法(四种)
    • java常用工具类之DES和Base64加密解密类
    • java实现md5加密示例
    • Java生成MD5加密字符串代码实例
    • 兼容PHP和Java的des加密解密代码分享
    • java使用des加密解密示例分享
    • java实现MD5加密算法的实例代码
    • 使用java自带des加密算法实现文件加密和字符串加密
    • java自带的MessageDigest实现文本的md5加密算法
    • java 易懂易用的MD5加密(可直接运行)(2)
    • 基于Java实现的Base64加密、解密原理代码
    • des加密解密JAVA与.NET互通实例
    • java实现的AES加密算法完整实例
    • Apache Commons DbUtils工具包使用介绍
    • Apache Commons fileUpload实现文件上传之一
    • Apache commons fileupload文件上传实例讲解
    • Apache Commons fileUpload文件上传多个示例分享
    • java利用Apache commons codec进行MD5加密,BASE64加密解密,执行系统命令
    上一篇:【算法】扑克发牌算法实现
    下一篇:java 易懂易用的MD5加密(可直接运行)(2)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    java易懂易用的MD5加密(可直接运行) (1)第1/2页 java,易懂,易用的,易,用的,