public class GCMParameterSpec
extends Object
implements AlgorithmParameterSpec
java.lang.Object | |
↳ | javax.crypto.spec.GCMParameterSpec |
使用伽罗瓦/计数器模式(GCM)模式指定 Cipher
所需的一组参数。
简单的分组密码模式(如CBC)通常只需要一个初始化向量(如 IvParameterSpec
),但GCM需要这些参数:
IV
: Initialization Vector (IV) tLen
: length (in bits) of authentication tag T除了这里描述的参数外,其他GCM输入/输出(附加认证数据(AAD),密钥,分组密码,普通/密文和认证标签)在 Cipher
类中处理。
请参阅 RFC 5116了解更多关于带有关联数据的认证加密(AEAD)算法的信息,以及 NIST Special Publication 800-38D ,“分组加密模式操作的NIST推荐:伽罗瓦/计数器模式(GCM)和GMAC”。
GCM规范规定,对于某些应用程序, tLen
的值可能只有{ tLen
}或{ tLen
}。 其他值可以为这个类指定,但并不是所有的CSP实现都会支持它们。
也可以看看:
Public constructors |
|
---|---|
GCMParameterSpec(int tLen, byte[] src) 使用指定的认证标签位长和IV缓冲区构造GCMParameterSpec。 |
|
GCMParameterSpec(int tLen, byte[] src, int offset, int len) 使用指定的认证标记位长和指定缓冲区的子集构建一个GCMParameterSpec对象作为IV。 |
Public methods |
|
---|---|
byte[] |
getIV() 返回初始化向量(IV)。 |
int |
getTLen() 返回认证标签的长度。 |
Inherited methods |
|
---|---|
From class java.lang.Object
|
GCMParameterSpec (int tLen, byte[] src)
使用指定的认证标签位长和IV缓冲区构造GCMParameterSpec。
Parameters | |
---|---|
tLen |
int : the authentication tag length (in bits) |
src |
byte : the IV source buffer. The contents of the buffer are copied to protect against subsequent modification. |
Throws | |
---|---|
IllegalArgumentException |
if tLen is negative, or src is null. |
GCMParameterSpec (int tLen, byte[] src, int offset, int len)
使用指定的认证标记位长和指定缓冲区的子集构建一个GCMParameterSpec对象作为IV。
Parameters | |
---|---|
tLen |
int : the authentication tag length (in bits) |
src |
byte : the IV source buffer. The contents of the buffer are copied to protect against subsequent modification. |
offset |
int : the offset in src where the IV starts |
len |
int : the number of IV bytes |
Throws | |
---|---|
IllegalArgumentException |
if tLen is negative, src is null, len or offset is negative, or the sum of offset and len is greater than the length of the src byte array. |
byte[] getIV ()
返回初始化向量(IV)。
Returns | |
---|---|
byte[] |
the IV. Creates a new array each time this method is called. |
int getTLen ()
返回认证标签的长度。
Returns | |
---|---|
int |
the authentication tag length (in bits) |