Module java.base
Package javax.crypto
package javax.crypto
提供了用于加密操作的类和接口。此包中定义的加密操作包括加密、密钥生成和密钥协商,以及消息认证码(MAC)生成。
加密支持对称、非对称、块和流密码。此包还支持安全流和封闭对象。
此包中提供的许多类是基于提供程序的。类本身定义了应用程序可以编写的编程接口。然后,实现本身可以由独立的第三方供应商编写,并根据需要无缝地插入。因此,应用程序开发人员可以利用任意数量的基于提供程序的实现,而无需添加或重写代码。
相关文档
有关更多文档,请参阅:- 自版本:
- 1.4
-
ClassDescription当
Cipher
在AEAD模式(如GCM/CCM)中运行时,如果无法验证提供的认证标签,则会抛出此异常。当期望输入数据的特定填充机制但数据未正确填充时,会抛出此异常。此类提供了用于加密和解密的加密密码器的功能。CipherInputStream
由InputStream
和Cipher
对象组成,因此read()方法返回从底层InputStream
读取的数据,但已由Cipher
对象额外处理。CipherOutputStream
由OutputStream
和Cipher
对象组成,因此write()方法在将数据写入底层OutputStream
之前首先处理数据。此类为Cipher
类定义了“服务提供程序接口”(SPI)。由KEM.Decapsulator.decapsulate(byte[])
方法抛出的异常,表示解封装过程中出现错误。此类实现了PKCS#8中定义的EncryptedPrivateKeyInfo
类型。此类提供了例外机制的功能,例如“密钥恢复”、“密钥弱化”和“密钥托管”。这是通用的ExemptionMechanism异常。此类为ExemptionMechanism
类定义了“服务提供程序接口”(SPI)。当提供给块密码的数据长度不正确,即与密码的块大小不匹配时,会抛出此异常。此类提供了密钥封装机制(KEM)的功能。由KEM接收方在KEM解封装器上生成的解封装器。此类指定了密钥封装机制(KEM)的封装方法的返回值,其中包括共享密钥(作为SecretKey
)、密钥封装消息和可选参数。由KEM发送方在KEM封装器上生成的封装器。此类为KEM
类定义了“服务提供程序接口”(SPI)。由KEM接收方在KEM解封装器上生成的解封装器实现。由KEM发送方在KEM封装器上生成的封装器实现。此类提供了密钥协商(或密钥交换)协议的功能。此类为KeyAgreement
类定义了“服务提供程序接口”(SPI)。此类提供了“秘密(对称)密钥生成器”的功能。此类为KeyGenerator
类定义了“服务提供程序接口”(SPI)。此类提供了“消息认证码”(MAC)算法的功能。此类为Mac
类定义了“服务提供程序接口”(SPI)。当环境中请求了特定填充机制但该填充机制不可用时,会抛出此异常。NullCipher
类是提供“身份密码器”的类,即不转换明文的密码器。此类使程序员能够创建对象并使用加密算法保护其机密性。一个秘密(对称)密钥。此类表示秘密密钥的工厂。此类为SecretKeyFactory
类定义了“服务提供程序接口”(SPI)。当用户提供的输出缓冲区太短以容纳操作结果时,会抛出此异常。