java.lang.Object java.security.cert.Certificate
public abstract class Certificate
管理各种身份证书的抽象类。身份证书是一个主体与由另一个主体所担保的公钥之间的绑定关系。(一个主体表示一种实体,如个体用户、一个用户组或一家公司)。
此类是具有不同格式但是很常用的证书的抽象。例如,不同的证书类型(如 X.509 和 PGP)共享通用的证书功能(如编码和验证)和某些信息类型(如公钥)。
虽然 X.509、PGP 和 SDSI 证书包含不同的信息集,并且它们以不同的方式存储和获取信息,但都可以通过继承 Certificate 类来实现它们。
X509Certificate
,
CertificateFactory
,
序列化表格
嵌套类摘要 | |
---|---|
protected static class |
Certificate.CertificateRep 用于序列化的替换 Certificate 类。 |
构造方法摘要 | |
---|---|
protected |
Certificate(String type) 创建指定类型的证书。 |
方法摘要 | |
---|---|
boolean |
equals(Object other) 比较此证书与指定对象的相等性。 |
abstract byte[] |
getEncoded() 返回此证书的编码形式。 |
abstract PublicKey |
getPublicKey() 从此证书中获取公钥。 |
String |
getType() 返回此证书的类型。 |
int |
hashCode() 根据此证书的编码形式返回该证书的哈希码值。 |
abstract String |
toString() 返回此证书的字符串表示形式。 |
abstract void |
verify(PublicKey key) 验证是否已使用与指定公钥相应的私钥签署了此证书。 |
abstract void |
verify(PublicKey key, String sigProvider) 验证是否已使用与指定公钥相应的私钥签署了此证书。 |
protected Object |
writeReplace() 替换要被序列化的 Certificate。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
protected Certificate(String type)
type
- 证书类型的标准名称。有关标准证书类型的信息,请参见
Java Cryptography Architecture API Specification & Reference 中的 Appendix A。
方法详细信息 |
---|
public final String getType()
public boolean equals(Object other)
other
对象是一个
Certificate
实例,则获取其编码形式并且与此证书的编码形式进行比较。
other
- 要与此证书进行相等性测试的对象。
Object.hashCode()
,
Hashtable
public int hashCode()
Object.equals(java.lang.Object)
,
Hashtable
public abstract byte[] getEncoded() throws CertificateEncodingException
CertificateEncodingException
- 如果出现编码错误。
public abstract void verify(PublicKey key) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException, SignatureException
key
- 用于进行验证的 PublicKey。
NoSuchAlgorithmException
- 如果签名算法不受支持。
InvalidKeyException
- 如果 key 不正确。
NoSuchProviderException
- 如果没有默认的提供者。
SignatureException
- 如果出现签名错误。
CertificateException
- 如果出现编码错误。
public abstract void verify(PublicKey key, String sigProvider) throws CertificateException, NoSuchAlgorithmException, InvalidKeyException, NoSuchProviderException, SignatureException
key
- 用于进行验证的 PublicKey。
sigProvider
- 签名提供者的名称。
NoSuchAlgorithmException
- 如果签名算法不受支持。
InvalidKeyException
- 如果 key 不正确。
NoSuchProviderException
- 如果提供者不正确。
SignatureException
- 如果出现签名错误。
CertificateException
- 如果出现编码错误。
public abstract String toString()
public abstract PublicKey getPublicKey()
protected Object writeReplace() throws ObjectStreamException
ObjectStreamException
- 如果新对象表示无法创建此 Certificate