BASE64

来源:互联网 发布:dijstra属于什么算法 编辑:程序博客网 时间:2024/05/16 11:20

BASE64加密解密技术:

Base64编码的作用:由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。它使用下面表中所使用的字符与编码。

而且base64特别适合在http,mime协议下快速传输数据。

base64其实不是安全领域下的加密解密算法。虽然有时候经常看到所谓的base64加密解密。其实base64只能算是一个编码算法,对数据内容进行编码来适合传输。虽然base64编码过后原文也变成不能看到的字符格式,但是这种方式很初级,很简单。

 Base64编码方法要求把每三个8Bit的字节转换为四个6Bit的字节,其中,转换之后的这四个字节中每6个有效bit为是有效数据,空余的那两个 bit用0补上成为一个字节。因此Base64所造成数据冗余不是很严重,Base64是当今比较流行的编码方法,因为它编起来速度快而且简单

 

Base64编码的作用:由于某些系统中只能使用ASCII字符。Base64就是用来将非ASCII字符的数据转换成ASCII字符的一种方法。它使用下面表中所使用的字符与编码。

而且base64特别适合在http,mime协议下快速传输数据。

base64其实不是安全领域下的加密解密算法。虽然有时候经常看到所谓的base64加密解密。其实base64只能算是一个编码算法,对数据内容进行编码来适合传输。虽然base64编码过后原文也变成不能看到的字符格式,但是这种方式很初级,很简单。

 Base64编码方法要求把每三个8Bit的字节转换为四个6Bit的字节,其中,转换之后的这四个字节中每6个有效bit为是有效数据,空余的那两个 bit用0补上成为一个字节。因此Base64所造成数据冗余不是很严重,Base64是当今比较流行的编码方法,因为它编起来速度快而且简单.

 

 package com.wfc.servlet;import sun.misc.BASE64Decoder;     import sun.misc.BASE64Encoder;      /**    * BASE64加密解密    */    public class BASE64     {             public static byte[] decryptBASE64(String key) throws Exception {                       return (new BASE64Decoder()).decodeBuffer(key);                   }                                     public static String encryptBASE64(byte[] key) throws Exception {                       return (new BASE64Encoder()).encodeBuffer(key);                   }                    public static void main(String[] args) throws Exception         {             String data = BASE64.encryptBASE64("itjavawfc".getBytes());             System.out.println("加密前:"+data);                  //aXRqYXZhd2Zj       d2ZjODY4Njkw        byte[] byteArray = BASE64.decryptBASE64(data);             System.out.println("解密后:"+new String(byteArray));         }     }

使用的时候必须先导入jar包(该jar包时针对sun公司内部员工使用的,我们需要使用的时候必须让其可用)
 出现了"sun.misc.BASE64Encoder找不到jar"的错误,解决的办法是:右键项目》属性》Java Build Path》jre System Library 》access rules
》resolution选择accessible,下面填上**点击确定即可! 

 

      总结:1.Base64,是一种加密算法,在网站登录的时候结合cookie使用,对登录帐号和密码进行加密,可以起到部分安全的作用(部分安全是指将帐号密码加密后存储到cookie中去,一般人看不懂)

                  2.Base64是一种很好的编码,适合在http,mime协议下快速传输数据,在很多系统性只支持ASCII编码,这样就可以将非ASCII编码的文件、内容等在网络上传输。

0 0
原创粉丝点击