码迷,mamicode.com
首页 > 编程语言 > 详细

java安全——BASE64

时间:2014-08-20 17:47:12      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   java   使用   io   strong   数据   

这个主题主要是关于java安全的,应该来说算是个大杂烩吧,但是又不缺乏实用性,算是作为一个总结,用的时候可以作为参考。

1、使用BASE64加解密

在java加密技术中,BASE64算是一种最简单、最基本的加密技术。详见如下例子:

import java.io.IOException;

import Decoder.BASE64Decoder;
import Decoder.BASE64Encoder;

public class Base64Test {
  public static void main(String[] args) throws IOException{
      String data = "我是一个需要加密的数据";
      System.out.println("加密前:"+data);
      String data1 = encryptBASE64(data.getBytes());
      System.out.println("加密后:"+data1);
      byte[] data2 = decryptBASE64(data1);
      System.out.println("解密后:"+new String(data2));
  }
  
  private static String encryptBASE64(byte[] data){
      return(new BASE64Encoder()).encodeBuffer(data);
  }
  
  private static byte[] decryptBASE64(String data) throws IOException{
      return (new BASE64Decoder()).decodeBuffer(data);
  }
}

结果:

加密前:我是一个需要加密的数据
加密后:ztLKx9K7uPbQ6NKqvNPD3LXEyv2+3Q==

解密后:我是一个需要加密的数据

使用BASE64加密后的字符串个数都是4的倍数,一个字符占两个字节,也就是说BASE64加密以后的字符串必须是8个字节的倍数,如果不足,需要在后面补“=”号,所以很多时候能看到使用BASE64加密后的字符以“=”结束。

使用BASE64加密后的字符串每隔76个字符都会插入一个回车符,所以即使明文很长,打印出来的密文也不会在一行显示。但是在解密时,这些回车符显得无足轻重,即使密文不含回车符也可以正常解密。

java安全——BASE64,布布扣,bubuko.com

java安全——BASE64

标签:style   blog   color   java   使用   io   strong   数据   

原文地址:http://www.cnblogs.com/zengdan-develpoer/p/3925152.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!