public interface Key extends Serializable
这是该键的关键算法。 关键算法通常是加密或非对称运算算法(如DSA或RSA),可以与这些算法和相关算法(如RSA,RSA,RSA,MDA,Raw DSA等)相结合。使用getAlgorithm
方法获得密钥的算法。
这是当在Java虚拟机之外需要密钥的标准表示时使用的密钥的外部编码形式,就像将密钥发送给其他方一样。 密钥根据标准格式(如X.509 SubjectPublicKeyInfo
或PKCS#8)进行编码,并使用getEncoded
方法返回。 注意:ASN.1类型SubjectPublicKeyInfo
的语法定义如下:
SubjectPublicKeyInfo ::= SEQUENCE {
algorithm AlgorithmIdentifier,
subjectPublicKey BIT STRING }
AlgorithmIdentifier ::= SEQUENCE {
algorithm OBJECT IDENTIFIER,
parameters ANY DEFINED BY algorithm OPTIONAL }
有关详细信息,请参阅RFC 3280: Internet X.509 Public Key Infrastructure Certificate and CRL Profile 。 这是编码密钥格式的名称。 它由getFormat
方法返回。
KeyFactory
)。
Key应该使用KeyRep作为其序列化表示。 请注意,序列化的密钥可能包含不应在不受信任的环境中暴露的敏感信息。 有关更多信息,请参阅序列化规范Security Appendix。
PublicKey
, PrivateKey
, KeyPair
, KeyPairGenerator
, KeyFactory
, KeyRep
, KeySpec
, Identity
, Signer
Modifier and Type | Field and Description |
---|---|
static long |
serialVersionUID
类指纹被设置为指示与以前版本的类的序列化兼容性。
|
Modifier and Type | Method and Description |
---|---|
String |
getAlgorithm()
返回此键的标准算法名称。
|
byte[] |
getEncoded()
返回其主要编码格式的密钥,如果此密钥不支持编码,则返回null。
|
String |
getFormat()
返回此键的主编码格式的名称,如果此键不支持编码,则返回null。
|
static final long serialVersionUID
String getAlgorithm()
String getFormat()
"X.509"
。
类似地,私钥的ASN.1数据格式的名称是由PKCS#8标准定义的PrivateKeyInfo ;
在这种情况下,返回的格式为"PKCS#8"
。
byte[] getEncoded()