Most visited

Recently visited

Added in API level 1

KeyFactorySpi

public abstract class KeyFactorySpi
extends Object

java.lang.Object
   ↳ java.security.KeyFactorySpi


该类定义了KeyFactory类的 ( SPI )。 该类中的所有抽象方法都必须由每个希望为特定算法提供关键工厂实现的加密服务提供者来实现。

密钥工厂用于将 密钥Key类型的不透明密码密钥)转换为 密钥规范 (底层密钥材料的透明表示),反之亦然。

主要工厂是双向的。 也就是说,它们允许您从给定的密钥规范(密钥材料)构建不透明的密钥对象,或者以合适的格式检索密钥对象的基础密钥材料。

同一个密钥可能存在多个兼容密钥规范。 例如,可以使用DSAPublicKeySpecX509EncodedKeySpec来指定DSA公钥。 一个关键工厂可以用来在兼容的密钥规范之间进行转换。

供应商应记录其关键工厂支持的所有关键规格。

也可以看看:

Summary

Public constructors

KeyFactorySpi()

Protected methods

abstract PrivateKey engineGeneratePrivate(KeySpec keySpec)

根据提供的密钥规范(密钥材料)生成私钥对象。

abstract PublicKey engineGeneratePublic(KeySpec keySpec)

根据提供的密钥规范(密钥材料)生成公钥对象。

abstract <T extends KeySpec> T engineGetKeySpec(Key key, Class<T> keySpec)

返回给定密钥对象的规范(密钥材料)。

abstract Key engineTranslateKey(Key key)

将提供者可能未知或可能不可信的密钥对象转换为此密钥工厂的相应密钥对象。

Inherited methods

From class java.lang.Object

Public constructors

KeyFactorySpi

Added in API level 1
KeyFactorySpi ()

Protected methods

engineGeneratePrivate

Added in API level 1
PrivateKey engineGeneratePrivate (KeySpec keySpec)

根据提供的密钥规范(密钥材料)生成私钥对象。

Parameters
keySpec KeySpec: the specification (key material) of the private key.
Returns
PrivateKey the private key.
Throws
InvalidKeySpecException if the given key specification is inappropriate for this key factory to produce a private key.

engineGeneratePublic

Added in API level 1
PublicKey engineGeneratePublic (KeySpec keySpec)

根据提供的密钥规范(密钥材料)生成公钥对象。

Parameters
keySpec KeySpec: the specification (key material) of the public key.
Returns
PublicKey the public key.
Throws
InvalidKeySpecException if the given key specification is inappropriate for this key factory to produce a public key.

engineGetKeySpec

Added in API level 1
T engineGetKeySpec (Key key, 
                Class<T> keySpec)

返回给定密钥对象的规范(密钥材料)。 keySpec标识了应该返回密钥材料的规范类。 例如,它可以是DSAPublicKeySpec.class ,表示在DSAPublicKeySpec类的实例中应该返回关键材料。

Parameters
key Key: the key.
keySpec Class: the specification class in which the key material should be returned.
Returns
T the underlying key specification (key material) in an instance of the requested specification class.
Throws
InvalidKeySpecException if the requested key specification is inappropriate for the given key, or the given key cannot be dealt with (e.g., the given key has an unrecognized format).

engineTranslateKey

Added in API level 1
Key engineTranslateKey (Key key)

将提供者可能未知或可能不可信的密钥对象转换为此密钥工厂的相应密钥对象。

Parameters
key Key: the key whose provider is unknown or untrusted.
Returns
Key the translated key.
Throws
InvalidKeyException if the given key cannot be processed by this key factory.

Hooray!