记录下: java8 Base64加密方式与传统方式加密

java8 新特性
加解密方式
Base64.Encoder base64Encoder 加密
Base64.Decoder base64Decoder解密
动笔之前: 想想以前处理java加密加盐,文章链接: ——> 文章名: java代码实现MD5加密

这次写加密,目的处理

  1. 传统Base64 加密解密在性能方面损耗比较大,从而大程度上限制着其作用范围。
  2. JDK8新推出的Base64加解密方式对于传统方式在性能上做出了优化。

解释:

  1. Base64就是一种基于64个可打印字符来表示二进制数据的方法。
  2. Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法基于64个字符A-Z,a-z,0-9,+,/的编码方式,是一种能将任意二进制数据用64种字元组合成字符串的方法,而这个二进制数据和字符串资料之间是可以互相转换的,在实际应用上,Base64除了能将二进制数据可视化之外,也常用来表示字串加密过后的内容。

作用:
偶尔需要用这条纯文本通道传一张图片之类的情况发生的时候,就会用到base64。
前端向服务器传递重要数据时可以通过base64加密。

JDK8 新加解密方式
代码示例:

package com.yk.demo_1220.test;

import java.io.IOException;
import java.util.Base64;
import java.util.Base64.Decoder;
import java.util.Base64.Encoder;

public class Test0128 {
     

        // JDK8 新加解密方式
        public static void main(String[] args) throws IOException {
     
            Encoder base64Encoder = Base64.getEncoder();
            Decoder base64Decoder = Base64.getDecoder();
            String str = "JDK8新加解密方式123456abcdef";
            byte[] bytes = str.getBytes("UTF-8");
            String encodeText = base64Encoder.encodeToString(bytes);//进行加密
            System.out.println(encodeText);
            String decodeText = new String(base64Decoder.decode(encodeText));//进行解密
            System.out.println(decodeText);
        }


}

红框框为: 控制台打印结果
记录下: java8 Base64加密方式与传统方式加密_第1张图片

传统方式加解密
代码示例:

package com.yk.demo_1220.test;

import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;

import java.io.IOException;

public class Test0129 {
     

        public static void main(String[] args) throws IOException {
     
            BASE64Encoder base64Encoder = new BASE64Encoder();
            BASE64Decoder base64Decoder = new BASE64Decoder();
            String str = "传统方式123ABC";
            byte[] bytes = str.getBytes("UTF-8");
            String encodeText = base64Encoder.encode(bytes);
            System.out.println(encodeText);
            String decodeText = new String(base64Decoder.decodeBuffer(encodeText));
            System.out.println(decodeText);
        }

}

红框框为: 控制台打印结果
记录下: java8 Base64加密方式与传统方式加密_第2张图片

你可能感兴趣的:(java8,java)