java md5 签名_java md5签名

签名算法

将所有请求参数(key,value 为一组),对数据结构按照 key 的升序,重新排序, 需要对 null 值进行过滤,需要将 boolean 型进行转换为 1 和 0

将排序后参数组合为新的字符串(keyvaluekeyvalue 中间无分割符)

将生成好的字符串进行 MD5 加密

将新的字符串,统一为大写字符串

将生成好的字符串加上“私钥”,形成新的字符串(私钥为 ONex-OMS 系统里面生成)

再进行一次 MD5 加密,得到加密后的字符串

再统一为大写字符串,得到最终的签名字符串 注意:从“系统级参数”开始到“业务级参数”全部作为请求参数.sign 可以不算入,如果 放进去,开始 sign = null ,也会被过滤掉的

package net.wit.util;

import java.io.UnsupportedEncodingException;

import java.net.URLDecoder;

import java.net.URLEncoder;

import java.util.Enumeration;

import java.util.HashMap;

import java.util.Map;

import java.util.Map.Entry;

import java.util.Set;

import java.util.TreeMap;

import javax.servlet.http.HttpServletRequest;

import org.apache.commons.codec.digest.DigestUtils;

/**

你可能感兴趣的:(java,md5,签名)