`

javaBASE64 编码

    博客分类:
  • java
阅读更多

(1)BASE64 编码:

BASE64 编码是一种常用的字符编码,在很多地方都会用到。JDK 中提供了非常方便的 BASE64Encoder 和 BASE64Decoder,用它们可以非常方便的完成基于 BASE64 的编码和解码。下面是本人编的两个小的函数,分别用于 BASE64 的编码和解码:

 

// 将 s 进行 BASE64 编码 
public static String getBASE64(String s) { 
if (s == null) return null; 
return (new sun.misc.BASE64Encoder()).encode( s.getBytes() ); 
} 

// 将 BASE64 编码的字符串 s 进行解码 
public static String getFromBASE64(String s) { 
if (s == null) return null; 
BASE64Decoder decoder = new BASE64Decoder(); 
try { 
byte[] b = decoder.decodeBuffer(s); 
return new String(b); 
} catch (Exception e) { 
return null; 
} 
}

 

(2)使用报文摘要

Java中提供了计算报文摘要的另一个简单的方法,那就是使用java.security.MessageDigest类。下列代码片断显示了如何将MD5报文摘要算法(128位的摘要)应用到密码字符串:
MassageDigest md=
MessageDigest.getInstance("MD5");
md.update(originalPwd.getByetes());
byte[] digestedBytes=md.digest();

也使用报文摘要创建校验和、文本的唯一ID(也叫做数字指纹)。在签写ARJ文件会发生:校验和是根据ARJ文件的内容计算出来的,然后被加密,并且用base64的加密格式存放在manifest.mf文件中。base64是编码任意二进制数据的一种方法,得到的结果仅包含可打印字符(注意,base64编码数据占用的空间比转换前多三分之一)。由于报文摘要算法输出的结果是字节数组,可以使用base64编码将哈希字节转换成字符串,以便能将该字符串存放在数据库的varchar字段中。现在有许多base64编码器,但是最简单的方法是使用weblogic.jar库中的编码器:weblogic.apache.xerces.utils.Base64。该类的作用微乎其微,如下面的代码例子所示:

String digestedPwdString =
new String(Base64.encode(digestedPwdBytes));


(3)MessageDigest

import javax.mail.internet.*;
import java.security.*;
public String getEncodedHash(String clearText){
ByteArrayOutputStream baos = new ByteArrayOutputStream();
OutputStream out = MimeUtility.encode(baos,"base64"
);
MessageDigest md = MessageDigest.getInstance(
"SHA"
);
if(clearText == null) clearText =
""
;
byte [] in = clearText.getBytes();
byte [] digested = md.digest(in);
out.write(digested);
out.close();
return new String(baos.toByteArray(),
"ISO-8859-1"
);
}


分享到:
评论
1 楼 showzh 2013-09-12  

相关推荐

    java和js相互base64编码解码

    在Java和JavaScript中,Base64编码和解码是两个重要的功能,用于处理这种编码格式。下面将详细阐述这两个编程语言中实现Base64编码和解码的方法。 首先,让我们关注Java。在Java 8及更高版本中,已经内置了`java....

    Java Base64编码和解码

    在Java中,处理Base64编码和解码的操作通常涉及到网络通信、数据序列化以及安全加密等方面。下面我们将详细探讨Java中的Base64编码和解码原理及其实现方式。 Base64编码的基本思想是将每3个字节(24位)的数据转换...

    Java Base64 编码和解码程序

    Java Base64 编码和解码程序,支持中文。

    Java base64编码图片代码,base64 jar包

    在Java中,Base64编码主要通过java.util.Base64工具类实现。这个类包含在Java 8及更高版本的标准库中,提供了多种编码和解码方法。下面我们将详细介绍如何使用Base64对图片进行编码以及如何引入jar包。 1. **Base64...

    Java Base64编码方法详解及实例分析

    总的来说,`Base64.encodeBase64String()`方法是Java中对二进制数据进行Base64编码的重要工具,尤其在网络通信和数据存储中非常有用。通过理解这个方法的工作原理和使用方式,开发者可以有效地处理二进制数据,确保...

    java Base64自定义码表

    在Java中,实现Base64编码和解码通常使用`java.util.Base64`类或Apache Commons Codec库中的`Base64`类。标准的Base64编码过程是将每3个字节的数据转换为4个6位的二进制数,然后将这些二进制数映射到编码表中的字符...

    java实现BASE64编码和解码程序

    实现BASE64编码和解码程序, 在类中实现如下函数并运行测试正确。 BASE64编码算法请在网上查询。 public String encode(byte[] data) { } public byte[] decode(String b) { }

    javabase64-1.3.1

    Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一。... javabase64-1.3.1.rar String encoded = Base64.encode("Hello, world!", "UTF-8"); String decoded = Base64.decode(encoded, "UTF-8");

    javabase64-1.2.jar

    【标题】"javabase64-1.2.jar" 是一个Java库,主要用于实现Base64编码和解码功能。Base64是一种常见的数据编码方法,尤其在处理二进制数据时,如图片或证书,将其转换为ASCII文本格式以便在网络传输或存储时使用。这...

    java-Base64编码

    5. **`javabase64-1.3.1.jar`**: 这是一个第三方库,可能是为了兼容旧版本的Java或者提供额外的功能。第三方库通常包含更丰富的API和功能,比如支持不同的编码风格,或者提供了线程安全的实现等。 6. **`README.txt...

    javabase64-1.3.1.jar

    JavaBase64-1.3.1.jar 是一个专门用于Base64编码和解码的Java工具包。在计算机编程中,Base64是一种将任意二进制数据转换为可打印字符的编码方式,通常用于在网络上传输包含二进制的数据,如图片、音视频文件等。...

    Java实现的Base64编码程序

    在Java中实现Base64编码,我们可以使用内置的`java.util.Base64`类,这个类提供了方便的方法来进行Base64的编码和解码。 Base64编码的原理是将每3个字节(24位)的数据分为4组,每组6位。由于ASCII码是7位的,因此6...

    base64编码工具类

    base64编码工具类,使用字节数组进行编码,使用十六进制表示的字符串进行编码

    javabase64-1.3.1.rar

    JavaBase64是一个Java库,专门用于处理Base64编码和解码操作。Base64是一种数据编码方法,常用于在网络上传输二进制数据,因为HTTP和电子邮件等协议主要处理ASCII字符,而不直接支持二进制数据。Base64编码可以将...

    Java基于Base64实现编码解码图片文件

    "Java基于Base64实现编码解码图片文件" Java基于Base64实现编码解码图片文件是Java语言中的一种常见的编码解码实现方式。Base64是一种常用的字符编码,在很多地方都会用到,但它并不是安全领域下的加密解密算法,...

    Base64编码jar包

    `javabase64-1.3.1.jar` 是一个专门用于Base64编码和解码的Java库。这个jar包包含了处理Base64操作所需的所有类和方法,可以方便地集成到Java工程中,帮助开发者轻松实现Base64的加解码功能。导入这个jar包后,无需...

    Java Base64位编码与String字符串的相互转换,Base64与Bitmap的相互转换实例代码

    Java Base64位编码与String字符串的相互转换、Base64与Bitmap的相互转换实例代码 Java Base64位编码与String字符串的相互转换是Java开发中常用的技术,Base64是一种常用的编码方式,它可以将二进制数据编码成可读的...

    简洁实用的Java Base64编码加密异常处理类代码

    Java Base64编码是一种将二进制数据转化为可打印字符的简单方式,广泛应用于网络传输和数据存储。这种编码方式将每3个字节的数据转换为4个Base64字符,每个字符代表6位二进制数,总共是24位。在解码时,这些字符再被...

    java base64的jar包

    `javabase64-1.3.1.jar` 是一个包含Base64编码和解码功能的Java库,它提供了一些关键类和方法供开发者使用。例如,主要类`Base64`包含了编码和解码的方法,如`encodeBytes()`用于编码字节数组,`decode()`用于解码...

Global site tag (gtag.js) - Google Analytics