3.5 java.security.cert包详解
java. security.cert包提供用于解析和管理证书、证书撤销列表(CRL)和证书路径的类和接口。作为Java加密与解密实现的扩展。本节着重详述了Certificate类及其子类和CertificateFactory类的使用。作为补充,本节详述了有关证书撤销相关的CRL类及其子类和用于证书路径的类CertPath类的使用。对证书有兴趣的读者可以参考相应的Java API内容。
3.5.1 Certificate
Certificate类是一个用于管理证书的抽象类。证书有多种类型,如X.509、PGP和SDSI证书,并且它们以不同的方式存储和存储信息,但都可以通过继承Certificate类来实现它们。
//管理各种身份证书的抽象类。
public abstract class Certificate
extends Object
implements Serializable
❑方法详述
Certificate类提供3种基本操作,要求子类实现:
//返回此证书的编码形式。
public abstract byte[]getEncoded()
//验证是否已使用与指定公钥相应的私钥签署了此证书。
public abstract void verify(PublicKey key)
//验证是否已使用与指定公钥相应的私钥签署了此证书。
public abstract void verify(PublicKey key, String sigProvider)
//从此证书中获取公钥。
public abstract PublicKey getPublicKey()
Certificate类还要求子类必须实现以下方法:
//返回此证书的字符串表示形式。
public abstract String toString()
通过如下方法将得到该证书的类型:
//返回此证书的类型。如X.509、PGP和SDSI。
public final String getType()
此外,Certificate类覆盖了以下方法:
//根据此证书的编码形式返回该证书的散列码值。
public int hashCode()
//比较此证书与指定对象的相等性。
public boolean equals(Object other)
Certificate类有一个抽象子类—X509Certificate类,我们将在后面几节内容中介绍它。