您的位置:首页 > 编程语言 > Java开发

java实现HMAC-MD5算法

2012-03-09 12:51 597 查看
private final String HMAC_MD5_NAME = "HmacMD5";

public HMACDataTransformer(String key) {
this(key, "hmac");
}
public HMACDataTransformer(String key, String name) {
super(key, name);
// TODO Auto-generated constructor stub
}
@Override
public byte[] encode(byte[] data) throws TransformerException {
SecretKeySpec sk = new SecretKeySpec(StringTools.getAsciiBytes(this.key), HMAC_MD5_NAME);
Mac mac;
try {
mac = Mac.getInstance(HMAC_MD5_NAME);
mac.init(sk);
return mac.doFinal(data);
} catch (NoSuchAlgorithmException e) {
throw new TransformerException(e);
} catch (InvalidKeyException e) {
throw new TransformerException(e);
}
}
@Override
public String encode(String data) throws TransformerException {
return StringTools.getUTF8String(encode(StringTools.getUTF8Bytes(data)));
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: