HarmonyOS 关于base64和aes加密相关问题
代码翻译成ArkTS
核心知识: Base64、AES、加密
尝试Base64Helper, 不太行
public class AESUtil {
public static final String KEYT = "aaaaaaaaaaaa";
private static final String MODEL = "AES/ECB/PKCS7Padding";
public static String encode(String key, String content) {
try {
SecretKeySpec skeySpec = getKey(key);
byte[] clearText = content.getBytes("UTF8");
Cipher cipher = Cipher.getInstance(MODEL);
cipher.init(Cipher.ENCRYPT_MODE, skeySpec);
byte[] result = cipher.doFinal(clearText);
String encrypedValue = Base64.encodeToString(result, Base64.DEFAULT);
return encrypedValue;
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
public static String decode(String key, String content) {
try {
SecretKeySpec skeySpec = getKey(key);
byte[] contentBytes = Base64.decode(content, Base64.DEFAULT);
Cipher cipher = Cipher.getInstance(MODEL);
cipher.init(Cipher.DECRYPT_MODE, skeySpec);
byte[] result = cipher.doFinal(contentBytes);
return new String(result);
} catch (Exception e) {
e.printStackTrace();
}
return "";
}
private static SecretKeySpec getKey(String password) throws UnsupportedEncodingException {
// 128位加密
int keyLength = 128;
byte[] keyBytes = new byte[keyLength / 8];
Arrays.fill(keyBytes, (byte) 0x0);
byte[] passwordBytes = password.getBytes("UTF-8");
int length = passwordBytes.length < keyBytes.length ? passwordBytes.length : keyBytes.length;
System.arraycopy(passwordBytes, 0, keyBytes, 0, length);
SecretKeySpec key = new SecretKeySpec(keyBytes, "AES");
return key;
}
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
HarmonyOS
赞
收藏 0
回答 1
相关问题
HarmonyOS 如何做base64加密?
930浏览 • 1回复 待解决
HarmonyOS 中文base64加密解密乱码
1327浏览 • 1回复 待解决
HarmonyOS base64编码问题
1390浏览 • 1回复 待解决
HarmonyOS 关于使用ArkTS进行Base64解码和GZIP解压
1082浏览 • 1回复 待解决
HarmonyOS RSA加密的base64秘钥转换
1131浏览 • 1回复 待解决
HarmonyOS 关于Image组件使用base64图片
1459浏览 • 1回复 待解决
HarmonyOS string怎么base64和decodeBase64
616浏览 • 1回复 待解决
HarmonyOS 图片压缩和图片转base64
1167浏览 • 1回复 待解决
HarmonyOS 图片Base64编码
832浏览 • 1回复 待解决
HarmonyOS base64编解码
977浏览 • 0回复 待解决
HarmonyOS base64解码报错
1956浏览 • 1回复 待解决
HarmonyOS base64转image
754浏览 • 1回复 待解决
HarmonyOS 图片转base64
937浏览 • 1回复 待解决
有没有base64转化的相关代码?
1559浏览 • 0回复 待解决
HarmonyOS AES加密相关
665浏览 • 1回复 待解决
HarmonyOS 网络传输BASE64转义问题
863浏览 • 1回复 待解决
HarmonyOS 音频文件base64编解码问题
966浏览 • 1回复 待解决
照片文件转Base64
622浏览 • 1回复 待解决
Native层有没有base64加密和解密的系统接口
2250浏览 • 1回复 待解决
HarmonyOS pixelMap怎么转base64
607浏览 • 1回复 待解决
HarmonyOS Image加载base64失败
944浏览 • 1回复 待解决
HarmonyOS base64编码的API
751浏览 • 1回复 待解决
HarmonyOS arraybuffer转base64乱码
860浏览 • 1回复 待解决
HarmonyOS base64解码内容缺少
621浏览 • 1回复 待解决
如何实现PixelMap和base64的相互转换
2799浏览 • 1回复 待解决
关于AES-ECB模式的加解密,可以参考一下这个demo:
index页面: