openssl的md5标准算法.....对加密出来的128bit原始数据 再进行base64编码 如题目:对一个字符串使用openssl的md5标准算法.....对加密出来的128bit原始数据 再进行base64编码(请贴实例) 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 md5和base64都是通用算法随便哪个写的MD5、base64算出来的结果都一样。import java.io.IOException;import java.security.MessageDigest;import sun.misc.BASE64Encoder;import sun.misc.BASE64Decoder;/** * 本类提供通用的安全算法 * @author */public class SecurityArithmetic { public final static byte[] md5(String s) { byte[] md=null; try { byte[] btInput = s.getBytes(); MessageDigest mdInst = MessageDigest.getInstance("MD5"); mdInst.update(btInput); md = mdInst.digest(); } catch (Exception e) { // e.printStackTrace(); return null; } return md; } public static String base64Encode(byte[] b){ return new BASE64Encoder().encode(b); } public static byte[] base64Decode(String b){ try { return new BASE64Decoder().decodeBuffer(b); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); return null; } } public static String md5AndHex(String s){ byte[] b=md5(s); String temp=""; for (int i=0;i<b.length;i++){ temp+=StringUtils.pad(Integer.toHexString(b[i] & 0xff), 2, '0', true); } return temp; } public static String md5AndBase64(String s){ return base64Encode(md5(s)); } /** * @param args */ public static void main(String[] args) { //d41d8cd98f00b204e9800998ecf8427e //d41d8cd98f00b204e9800998ecf8427e System.out.println(md5AndBase64("XXX")); System.out.println(md5AndHex("")); }} 这是OPENSSL的标准算法么? MD5 BASE64算法是通用算法,跟OPENSSL没有关系 java 按钮问题 vector容量增大时是否需要转移原数据 javassisst 问题 高手,帮帮忙吧 XML 的问题 Applet如何跟服务器通讯? 如何使用命令行运行不再当前目录下的.class 如何修改框架源代码 谁帮我解决! 有CCNA,Scjp2,高程的计算机本科生能卖多少?(答者有分,只能给33分,没办法) 校园网自动出校软件---校园网登入器 数据连接池的资源无法释放
随便哪个写的MD5、base64算出来的结果都一样。
import java.io.IOException;
import java.security.MessageDigest;import sun.misc.BASE64Encoder;
import sun.misc.BASE64Decoder;/**
* 本类提供通用的安全算法
* @author
*/
public class SecurityArithmetic {
public final static byte[] md5(String s) {
byte[] md=null;
try {
byte[] btInput = s.getBytes();
MessageDigest mdInst = MessageDigest.getInstance("MD5");
mdInst.update(btInput);
md = mdInst.digest();
}
catch (Exception e) {
// e.printStackTrace();
return null;
}
return md;
}
public static String base64Encode(byte[] b){
return new BASE64Encoder().encode(b);
} public static byte[] base64Decode(String b){
try {
return new BASE64Decoder().decodeBuffer(b);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return null;
}
}
public static String md5AndHex(String s){
byte[] b=md5(s);
String temp="";
for (int i=0;i<b.length;i++){
temp+=StringUtils.pad(Integer.toHexString(b[i] & 0xff), 2, '0', true);
}
return temp;
}
public static String md5AndBase64(String s){
return base64Encode(md5(s));
}
/**
* @param args
*/
public static void main(String[] args) {
//d41d8cd98f00b204e9800998ecf8427e
//d41d8cd98f00b204e9800998ecf8427e
System.out.println(md5AndBase64("XXX"));
System.out.println(md5AndHex(""));
}}