All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.frameworkset.security.SHA1 Maven / Gradle / Ivy

Go to download

bboss is a j2ee framework include aop/ioc,mvc,persistent,taglib,rpc,event ,bean-xml serializable and so on.http://www.bbossgroups.com

There is a newer version: 6.2.5
Show newest version
/**
 *
 * @copyright Copyright (c) 1998-2014 Tencent Inc.
 */

// ------------------------------------------------------------------------

package org.frameworkset.security;

import java.security.MessageDigest;
import java.util.Arrays;

import org.frameworkset.security.AesException;

/**
 * SHA1 class
 *
 * 计算消息签名接口.
 */
public class SHA1 {

	 
	public static String getSHA1(String token,String data, String timestamp, String nonce) throws AesException {
		try {
			String[] array = new String[] { token, timestamp, nonce ,data};
			StringBuilder sb = new StringBuilder();
			// 字符串排序
			Arrays.sort(array);
			for (int i = 0; i < array.length; i++) {
				sb.append(array[i]);
			}
			String str = sb.toString();
			// SHA1签名生成
			MessageDigest md = MessageDigest.getInstance("SHA-1");
			md.update(str.getBytes());
			byte[] digest = md.digest();

			StringBuilder hexstr = new StringBuilder();
			String shaHex = "";
			for (int i = 0; i < digest.length; i++) {
				shaHex = Integer.toHexString(digest[i] & 0xFF);
				if (shaHex.length() < 2) {
					hexstr.append(0);
				}
				hexstr.append(shaHex);
			}
			return hexstr.toString();
		} catch (Exception e) {
			e.printStackTrace();
			throw new AesException(AesException.ComputeSignatureError);
		}
	}
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy