所有类
javax.crypto
类 SecretKeyFactorySpi
java.lang.Object
javax.crypto.SecretKeyFactorySpi
-
public abstract class SecretKeyFactorySpi
- extends Object
此类定义 SecretKeyFactory
类的服务提供程序接口 (SPI)。此类中的所有抽象方法必须由希望为特定算法提供秘密密钥工厂实现的各个加密服务提供程序来实现。
提供程序应当对其秘密密钥工厂支持的所有密钥规范加以注释。例如,"SunJCE" 提供程序提供的 DES 秘密密钥工厂支持 DESKeySpec
作为 DES 密钥的透明表示形式,并且该提供程序的 Triple DES 密钥的秘密密钥工厂支持 DESedeKeySpec
作为 Triple DES 密钥的透明表示形式。
-
从以下版本开始:
-
1.4
-
另请参见:
-
SecretKey
, DESKeySpec
, DESedeKeySpec
从类 java.lang.Object 继承的方法 |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
SecretKeyFactorySpi
public SecretKeyFactorySpi()
engineGenerateSecret
protected abstract SecretKey engineGenerateSecret(KeySpec keySpec)
throws InvalidKeySpecException
-
根据提供的密钥规范(密钥材料)生成
SecretKey
对象。
-
-
参数:
-
keySpec
- 秘密密钥的规范(密钥材料)
-
返回:
-
秘密密钥
-
抛出:
-
InvalidKeySpecException
- 如果给定密钥规范不适合生成秘密密钥的秘密密钥工厂。
engineGetKeySpec
protected abstract KeySpec engineGetKeySpec(SecretKey key,
Class keySpec)
throws InvalidKeySpecException
-
以所需格式返回给定密钥对象的规范(密钥材料)。
-
-
参数:
-
key
- 密钥
-
keySpec
- 返回密钥材料的所需格式
-
返回:
-
以所需格式返回基础密钥规范(密钥材料)
-
抛出:
-
InvalidKeySpecException
- 如果所需密钥规范不适合给定的密钥(例如,与 key
和 keySpec
相关的算法不匹配,或者 key
在加密硬件设备上引用一个密钥而 keySpec
是基于软件的密钥规范),或者无法处理给定的密钥(例如,给定的密钥具有此秘密密钥工厂不支持的算法或格式)。
engineTranslateKey
protected abstract SecretKey engineTranslateKey(SecretKey key)
throws InvalidKeyException
-
将一个密钥对象(其提供程序未知或可能不受信任)转换为此密钥工厂的相应密钥对象。
-
-
参数:
-
key
- 其提供程序未知或不受信任的密钥
-
返回:
-
已转换的密钥
-
抛出:
-
InvalidKeyException
- 如果此秘密密钥工厂无法处理给定的密钥。
所有类