com.supermap.data
类 AESCipher
- java.lang.Object
-
- com.supermap.data.InternalHandle
-
- com.supermap.data.InternalHandleDisposable
-
- com.supermap.data.AESCipher
-
- 所有已实现的接口:
- IDisposable
public class AESCipher extends com.supermap.data.InternalHandleDisposable
AES加解密工具, 目前支持CTR和CBC模式- 示范代码:
- 示范如何使用AES加解密工具
// 密钥key 长度必须是 32 byte即256 bit
String
key = "12345678abcdefgh12345678abcdefgh"; // 初始向量iv 长度必须是 16 byte即128 bitString
iv = "12345678abcdefgh";String
msg = "Hello the world!";AESCipher
cipher =AESCipher
.getInstance("CTR", key.getBytes(), iv.getBytes()); byte[] encrypted = cipher.encrypt(msg.getBytes()); byte[] result = cipher.decrypt(encrypted);String
resultString = newString
(result);
-
-
方法详细资料
-
getInstance
public static AESCipher getInstance(String transformation, byte[] key, byte[] iv)
创建AES加解密对象,目前支持CTR和CBC模式- 参数:
transformation
- 模式字符串,目前支持'CTR'和'CBC'key
- 加解密密钥, 长度只能是 32 byte即256 bitiv
- 初始向量, 长度只能是 16 byte即128 bit- 返回:
- AES加解密工具对象
- 抛出:
IllegalArgumentException
- transformation为空或者长度为0IllegalArgumentException
- key为空IllegalArgumentException
- key长度不为32位IllegalArgumentException
- iv为空IllegalArgumentException
- iv长度不为16位- 从以下版本开始:
- 11.1.1
-
encrypt
public byte[] encrypt(byte[] input)
加密操作- 参数:
input
- 输入的缓冲区- 返回:
- 结果缓冲区
- 抛出:
IllegalStateException
- 对象已经被disposeIllegalArgumentException
- 输入的缓冲区为空- 从以下版本开始:
- 11.1.1
- 另请参阅:
查看示例
-
decrypt
public byte[] decrypt(byte[] input)
解密操作- 参数:
input
- 输入的缓冲区- 返回:
- 结果缓冲区
- 抛出:
IllegalStateException
- 对象已经被disposeIllegalArgumentException
- 输入的缓冲区为空- 从以下版本开始:
- 11.1.1
- 另请参阅:
查看示例
-
dispose
public void dispose()
释放资源
-
-
Copyright © 2021–2024 SuperMap. All rights reserved.