java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.security.cert
类 Certificate

java.lang.Object
  继承者 java.security.cert.Certificate
所有已实现的接口:
Serializable
直接已知子类:
X509Certificate

public abstract class Certificate
extends Object
implements Serializable

管理各种身份证书的抽象类。身份证书是一个主体与由另一个主体所担保的公钥之间的绑定关系。(一个主体表示一种实体,如个体用户、一个用户组或一家公司)。

此类是具有不同格式但是很常用的证书的抽象。例如,不同的证书类型(如 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
 

构造方法详细信息

Certificate

protected Certificate(String type)
创建指定类型的证书。

参数:
type - 证书类型的标准名称。有关标准证书类型的信息,请参见《Java Cryptography Architecture API Specification & Reference 》中的 Appendix A。
方法详细信息

getType

public final String getType()
返回此证书的类型。

返回:
此证书的类型。

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 - 如果 key 不正确。
NoSuchProviderException - 如果没有默认的提供程序。
SignatureException - 如果出现签名错误。
CertificateException - 如果出现编码错误。

verify

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

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

toString

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

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

getPublicKey

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

返回:
公钥。

writeReplace

protected Object writeReplace()
                       throws ObjectStreamException
替换要被序列化的 Certificate。

返回:
要序列化的对象的替换 Certificate 对象
抛出:
ObjectStreamException - 如果新对象表示无法创建此 Certificate

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策