当前位置:   article > 正文

android -------- Base64 加密解密算法_base64.getdecoder().decode(sm4key)

base64.getdecoder().decode(sm4key)

Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法。可查看RFC2045~RFC2049,上面有MIME的详细规范。


Base64编码是从二进制到字符的过程,可用于在HTTP环境下传递较长的标识信息。例如,在Java Persistence系统Hibernate中,就采用了Base64来将一个较长的唯一标识符(一般为128-bit的UUID)编码为一个字符串,用作HTTP表单和HTTP GET URL中的参数。在其他应用程序中,也常常需要把二进制数据编码为适合放在URL(包括隐藏表单域)中的形式。此时,采用Base64编码具有不可读性,需要解码后才能阅读。

 

Java8.0之前,添加Jar包


Java 8之后的作法
Java 8的java.util套件中,新增了Base64的类别,可以用来处理Base64的编码与解码,用法如下:

  1. import java.nio.charset.StandardCharsets;
  2. public class ABase64 {
  3. public static void main(String[] args) {
  4. String password = "Hello 123456";
  5. //加密
  6. String encoded = java.util.Base64.getEncoder().encodeToString(password.getBytes(StandardCharsets.UTF_8));
  7. //解密
  8. String decoded = new String(java.util.Base64.getDecoder().decode(encoded), StandardCharsets.UTF_8);
  9. System.out.println(encoded);
  10. System.out.println(decoded);
  11. showBase64();
  12. }
  13. private static void showBase64() {
  14. try {
  15. final java.util.Base64.Decoder decoder = java.util.Base64.getDecoder();
  16. final java.util.Base64.Encoder encoder = java.util.Base64.getEncoder();
  17. final String text = "Hello 小笨蛋";
  18. final byte[] textByte = text.getBytes("UTF-8");
  19. //编码
  20. final String encodedText = encoder.encodeToString(textByte);
  21. System.out.println(encodedText);
  22. //解码
  23. System.out.println(new String(decoder.decode(encodedText), "UTF-8"));
  24. } catch (Exception e) {
  25. e.printStackTrace();
  26. }
  27. }
  28. }

日志:

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/神奇cpp/article/detail/881661
推荐阅读
相关标签
  

闽ICP备14008679号