Java 加密解密的方法都有哪些

Python019

Java 加密解密的方法都有哪些,第1张

加密解密并非java才有的,所有编程语言都有加密和解密。

目前的加密解密主要可分为以下2大类:

对称秘钥加密:如DES算法,3DES算法,TDEA算法,Blowfish算法,RC5算法,IDEA算法等。其主要特点是加密方和解密方都有同一个密码,加密方和解密方可以使用秘钥任意加密解密。

非对称密码加密:这种加密方式加密方仅有加密秘钥,对加密后的密文无法反向解密,解密方仅有解密秘钥,无法对明文进行加密。

另外还有一些摘要算法,比如MD5和HASH此类算法不可逆,但经常用来作为确认字段或者对一些重要匹配信息签名防止明文内容被修改。

    /** 有很多加密方法,这里掩饰利用MD5进行加密

     * @param str  待加密的字符串

     * @return  加密后的字符串

     * @throws NoSuchAlgorithmException  没有这种产生消息摘要的算法

     * @throws UnsupportedEncodingException  

     */

    public String EncoderByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException{

        //确定计算方法

        MessageDigest md5=MessageDigest.getInstance("MD5")

        BASE64Encoder base64en = new BASE64Encoder()

        //加密后的字符串

        String newstr=base64en.encode(md5.digest(str.getBytes("utf-8")))

        return newstr

    }