/* * Copyright (c) 2018. * 项目名称:auth-gateway-backend * 文件名称:SignUtil.java * Date:18-3-23 下午3:34 * Author:boni */ package com.irrigation.icl.utils; import org.apache.commons.codec.digest.DigestUtils; import java.text.SimpleDateFormat; import java.util.Arrays; import java.util.Date; import java.util.Map; /** * 签名方法 */ public class SignUtil { /** * 使用apiSecret对params进行签名,自动加入了当前日期 * @param params * @param apiSecret * @return */ public static String sign(Map params, String apiSecret) { String[] sortParams = params.keySet().toArray(new String[]{}); Arrays.sort(sortParams); StringBuilder stringBuilder = new StringBuilder(); for (String key : sortParams) { stringBuilder.append(key).append(params.get(key)); } String signRawData = apiSecret + ":" + getDate() + ":" + stringBuilder.toString(); String signedValue = DigestUtils.md5Hex(signRawData); return signedValue; } private static String getDate() { Date date = new Date(); SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); String sDateSuffix = dateFormat.format(date); return sDateSuffix; } }