Key
接口和 KeySpec
类
类型为 PKDS 的专用硬件密钥的明确密钥材料永远不会返回到应用程序,并且永远无法传输到其他系统上使用。 因此,无法使用 java.security.Key 接口的实现来表示这些接口。
public byte [] getToken()
public byte [] getLabelString()
对于 DSA 密钥对, getLabelString()
返回表示 CCA 密钥存储区中存储的密钥的标签。
对于类型为 CLEAR 的 RSA 或 EC 密钥对,应使用 getToken()
来返回内部 CCA 令牌。 对于类型为 PKDS 的 RSA 或 EC 密钥对,应该使用 getLabelString()
来返回表示 CCA 密钥存储区中存储的密钥的标签。
KeyLabelKeySpec class
此类 (实现 KeySpec
接口) 指定存储在 CCA 密钥存储区中的 AES , DES 或 DESede 密钥的 CCA 标签。 如果将 KeyLabelKeySpec
传递到 AESKeyFactory
, DESKeyFactory
或 DESedeKeyFactory
的 generateSecret()
方法,那么返回的密钥对象表示已存储在 CCA 密钥存储区中的密钥。 请注意, generateSecret()
不会在 CCA 密钥存储区域中创建新密钥,也不会验证 CCA 密钥存储区域中是否存在此类条目。
此类还指定存储在系统密钥存储区中的 DSA , RSA 或 EC 密钥对的 CCA 密钥存储区标签。 如果将 KeyLabelKeySpec
传递到 RSAKeyFactory
或 ECKeyFactory
的 generatePrivate()
或 generatePublic()
方法,或者传递到 DSAKeyFactory
的 generatePrivate()
方法,那么返回的密钥对象表示已存储在 CCA 密钥存储区中的密钥对的相应密钥。 请注意, generatePublic()
和 generatePrivate()
不会在 CCA 密钥存储区域中创建新密钥,也不会验证 CCA 密钥存储区域中当前是否存在此类条目。
public String getLabelString()
- 此方法返回密钥或密钥对的 CCA 标签。
DSAPrivateHWKeySpec
类
KeySpec
接口) 指定 DSA 专用硬件密钥及其关联参数。 此类具有以下方法:public byte[] getLabel()
- 此方法返回专用密钥标签。
public DSAKeyHWAttributes getAttributes()
- 此方法返回用于计算密钥的 DSA 算法参数。
public DSAParameterSpec getDSAParamSpec()
- 此方法返回与密钥关联的 DSA 硬件属性。
请参阅 Java™ API 文档,以了解与此类关联的特定方法,缺省值和限制。
RSAPrivateHWKeySpec
类
此类 (实现 KeySpec
接口) 指定 RSA 专用硬件密钥及其关联参数。 此类具有以下方法:
public byte[] getToken()
- 此方法返回专用密钥令牌,该令牌可以是内部 CCA 令牌或 CCA 密钥存储区密钥记录标签。
public RSAKeyHWAttributes getAttributes()
- 此方法返回与密钥关联的 RSA 硬件属性。
请参阅 Java API 文档以了解与此类关联的特定方法,缺省值和限制。
ECPrivateHWKeySpec
类
此类 (实现 KeySpec
接口) 指定 EC 专用硬件密钥及其关联参数。 此类具有以下方法:
public byte[] getToken()
- 此方法返回专用密钥令牌,该令牌可以是外部 CCA 令牌或 CCA 密钥存储区密钥记录标签。
public ECHWKeyAttributes getAttributes()
- 此方法返回与密钥关联的 EC 硬件属性。
public ECParameterSpec getParams()
- 此方法返回与键关联的椭圆曲线域参数。
请参阅 Java API 文档以了解与此类关联的特定方法,缺省值和限制。