javax.security.cert

异常
java.lang.Object
  继承者 javax.security.cert.Certificate
直接已知子类:
X509Certificate

public abstract class Certificate
     
extends Object

管理各种身份证书的抽象类。身份证书是某个主体的保证,保证某个公钥是另一个主体的公钥。(主体表示一个实体,如个人用户、团体或公司。)

此类是具有不同格式但是很常用的证书的抽象。例如,不同的证书类型(如 X.509 和 PGP)共享通用的证书功能(如编码和验证)和某些信息类型(如公钥)。

虽然 X.509、PGP 和 SDSI 证书包含不同的信息集,并且它们以不同的方式存储和获取信息,但都可以通过扩展 Certificate 类来实现它们。

注:包 javax.security.cert 中的类用于与早期版本的 Java 安全套接字扩展(Java Secure Socket Extension,JSSE)保持兼容。新的应用程序应该使用 java.security.cert 中的标准 Java SE 证书类。

从以下版本开始:
1.4
另请参见:
X509Certificate

构造方法摘要
Certificate()
           
 
方法摘要
 boolean equals(Object other)
          比较此证书是否与指定对象相等。
abstract  byte[] getEncoded()
          返回此证书的编码形式。
abstract  PublicKey getPublicKey()
          从此证书中获取公钥。
 int hashCode()
          返回根据此证书的编码形式得出的证书的哈希码值。
abstract  String toString()
          返回此证书的字符串表示形式。
abstract  void verify(PublicKey key)
          验证是否已使用与指定公钥相对应的私钥签署了此证书。
abstract  void verify(PublicKey key, String sigProvider)
          验证是否已使用与指定公钥相对应的私钥签署了此证书。
 
从类 java.lang.Object 继承的方法
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

构造方法详细信息

Certificate

public Certificate()
方法详细信息

equals

public boolean equals(Object other)
比较此证书是否与指定对象相等。如果 other 对象是一个 Certificate实例,则获取其编码形式并且与此证书的编码形式进行比较。

覆盖:
Object 中的 equals
参数:
other - 要与此证书进行相等性测试的对象。
返回:
如果两个证书的编码形式匹配,则返回 true;否则返回 false。
另请参见:
Object.hashCode(), Hashtable

hashCode

public int hashCode()
返回根据此证书的编码形式得出的证书的哈希码值。

覆盖:
Object 中的 hashCode
返回:
哈希码值。
另请参见:
Object.equals(java.lang.Object), Hashtable

getEncoded

public abstract byte[] getEncoded()
                           throws CertificateEncodingException
返回此证书的编码形式。假定每种证书类型只有一种编码形式;例如 X.509 证书将以 ASN.1 DER 的形式进行编码。

返回:
此证书的编码形式
抛出:
CertificateEncodingException - 如果内部证书编码失败

verify

public abstract void verify(PublicKey key)
                     throws CertificateException,
                            NoSuchAlgorithmException,
                            InvalidKeyException,
                            NoSuchProviderException,
                            SignatureException
验证是否已使用与指定公钥相对应的私钥签署了此证书。

参数:
key - 用于进行验证的 PublicKey。
抛出:
NoSuchAlgorithmException - 如果签名算法不受支持。
InvalidKeyException - 如果密钥不正确。
NoSuchProviderException - 如果没有默认的提供者。
SignatureException - 如果发生签名错误。
CertificateException - 如果出现编码错误。

verify

public abstract void verify(PublicKey key,
                            String sigProvider)
                     throws CertificateException,
                            NoSuchAlgorithmException,
                            InvalidKeyException,
                            NoSuchProviderException,
                            SignatureException
验证是否已使用与指定公钥相对应的私钥签署了此证书。此方法使用指定提供者所提供的签名验证引擎。

参数:
key - 用于进行验证的 PublicKey。
sigProvider - 签名提供者的名称。
抛出:
NoSuchAlgorithmException - 如果签名算法不受支持。
InvalidKeyException - 如果密钥不正确。
NoSuchProviderException - 如果提供者不正确。
SignatureException - 如果发生签名错误。
CertificateException - 如果出现编码错误。

toString

public abstract String toString()
返回此证书的字符串表示形式。

覆盖:
Object 中的 toString
返回:
此证书的字符串表示形式。

getPublicKey

public abstract PublicKey getPublicKey()
从此证书中获取公钥。

返回:
公钥。