安卓开发 HMACSHA256加密结果转base64
时间: 2023-11-16 21:58:25 浏览: 278
android中Sha256加密算法
在安卓开发中,可以使用Java自带的HmacSHA256加密算法和Base64编码来实现HMACSHA256加密结果转Base64。具体步骤如下:
1. 导入Java自带的相关类库:import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.util.Base64;
2. 定义加密方法:
```
public static String hmacSha256(String key, String data) throws Exception {
Mac hmacSha256 = Mac.getInstance("HmacSHA256");
SecretKeySpec secretKeySpec = new SecretKeySpec(key.getBytes("UTF-8"), "HmacSHA256");
hmacSha256.init(secretKeySpec);
byte[] hash = hmacSha256.doFinal(data.getBytes("UTF-8"));
return Base64.getEncoder().encodeToString(hash);
}
```
其中,key为加密密钥,data为待加密数据。
3. 调用加密方法并将结果转为Base64编码:
```
String result = hmacSha256(key, data);
String base64Result = Base64.getEncoder().encodeToString(result.getBytes("UTF-8"));
```
注意,这里需要将加密结果先转为字节数组再进行Base64编码,否则会出现编码错误。
阅读全文