public abstract class CertificateFactorySpi extends Object
CertificateFactory
クラスのサービス・プロバイダ・インタフェース (SPI)を定義します。このクラスのすべての抽象メソッドは、X.509などの特定の証明書タイプの証明書ファクトリの実装を提供する各暗号化サービス・プロバイダによって実装される必要があります。
証明書ファクトリは証明書オブジェクト、証明書パス(CertPath
)および証明書の取消しリスト(CRL)オブジェクトを符号から生成するために使用します。
X.509の証明書ファクトリは、java.security.cert.X509Certificate
のインスタンスである証明書、およびjava.security.cert.X509CRL
のインスタンスであるCRLを返します。
CertificateFactory
, Certificate
, X509Certificate
, CertPath
, CRL
, X509CRL
コンストラクタと説明 |
---|
CertificateFactorySpi() |
修飾子と型 | メソッドと説明 |
---|---|
abstract Certificate |
engineGenerateCertificate(InputStream inStream)
証明書オブジェクトを生成し、入力ストリーム
inStream から読み込まれたデータで初期化します。 |
abstract Collection<? extends Certificate> |
engineGenerateCertificates(InputStream inStream)
指定された入力ストリーム
inStream から読み込まれた証明書のコレクション・ビュー(空の場合もある)を返します。 |
CertPath |
engineGenerateCertPath(InputStream inStream)
CertPath オブジェクトを生成し、InputStream であるinStreamから読み込まれたデータで初期化します。 |
CertPath |
engineGenerateCertPath(InputStream inStream, String encoding)
CertPath オブジェクトを生成し、InputStream であるinStreamから読み込まれたデータで初期化します。 |
CertPath |
engineGenerateCertPath(List<? extends Certificate> certificates)
CertPath オブジェクトを生成し、Certificate のList で初期化します。 |
abstract CRL |
engineGenerateCRL(InputStream inStream)
証明書の取消しリスト(CRL)オブジェクトを生成し、入力ストリーム
inStream から読み込まれたデータで初期化します。 |
abstract Collection<? extends CRL> |
engineGenerateCRLs(InputStream inStream)
指定された入力ストリーム
inStream から読み込まれたCRLのコレクション・ビュー(空の場合もある)を返します。 |
Iterator<String> |
engineGetCertPathEncodings()
この証明書ファクトリでサポートする
CertPath のエンコーディングの繰返しを返します。繰返しの最初はデフォルトのエンコーディングになります。 |
public abstract Certificate engineGenerateCertificate(InputStream inStream) throws CertificateException
inStream
から読み込まれたデータで初期化します。
この証明書ファクトリによってサポートされている特殊形式の証明書を利用するために、返された証明書オブジェクトを対応する証明書クラスに型キャストできます。たとえば、この証明書ファクトリがX.509証明書を実装する場合、返された証明書オブジェクトをX509Certificate
クラスに型キャストできます。
X.509証明書の証明書ファクトリの場合は、inStream
で提供される証明書はDERで符号化される必要があり、バイナリまたはプリント可能(Base64)な符号で提供されることもあります。証明書がBase64の符号で提供された場合、先頭は -----BEGIN CERTIFICATE----- によって区切られ、終端は -----END CERTIFICATE----- によって区切られる必要があります。
指定された入力ストリームがmark
およびreset
をサポートしていない場合、このメソッドは入力ストリーム全体を使用します。そうでない場合、このメソッドが呼び出されるたびに証明書を1つ消費し、入力ストリームの読込み位置は、固有のend-of-certificateマーカーのあとで次に使用可能なバイトに設定されます。固有のend-of-certificateマーカー(EOF以外)が入力ストリームのデータに含まれず、証明書が構文解析されたあとでデータが続く場合は、CertificateException
がスローされます。
inStream
- 証明書データを持つ入力ストリーム。CertificateException
- 構文解析エラーの場合。public CertPath engineGenerateCertPath(InputStream inStream) throws CertificateException
CertPath
オブジェクトを生成し、InputStream
であるinStreamから読み込まれたデータで初期化します。データはデフォルトの符号化がされていると仮定されます。
このメソッドは、Java 2 Platform Standard Editionのバージョン1.4で追加されました。既存のサービス・プロバイダとの下位互換性を維持するため、このメソッドはabstract
にはできず、デフォルトでUnsupportedOperationException
をスローします。
inStream
- データが含まれるInputStream
InputStream
からのデータで初期化されたCertPath
CertificateException
- 復号化中に例外が発生した場合UnsupportedOperationException
- メソッドがサポートされていない場合public CertPath engineGenerateCertPath(InputStream inStream, String encoding) throws CertificateException
CertPath
オブジェクトを生成し、InputStream
であるinStreamから読み込まれたデータで初期化します。データは指定した符号化がされていると仮定されます。
このメソッドは、Java 2 Platform Standard Editionのバージョン1.4で追加されました。既存のサービス・プロバイダとの下位互換性を維持するため、このメソッドはabstract
にはできず、デフォルトでUnsupportedOperationException
をスローします。
inStream
- データが含まれるInputStream
encoding
- データで使用される符号化InputStream
からのデータで初期化されたCertPath
CertificateException
- 復号化中に例外が発生した場合、または要求された符号化がサポートされていない場合UnsupportedOperationException
- メソッドがサポートされていない場合public CertPath engineGenerateCertPath(List<? extends Certificate> certificates) throws CertificateException
CertPath
オブジェクトを生成し、Certificate
のList
で初期化します。
提供される証明書は、CertificateFactory
でサポートされているタイプである必要があります。これらは、指定されたList
オブジェクトからコピーされます。
このメソッドは、Java 2 Platform Standard Editionのバージョン1.4で追加されました。既存のサービス・プロバイダとの下位互換性を維持するため、このメソッドはabstract
にはできず、デフォルトでUnsupportedOperationException
をスローします。
certificates
- Certificate
のList
CertPath
CertificateException
- 例外が発生する場合UnsupportedOperationException
- メソッドがサポートされていない場合public Iterator<String> engineGetCertPathEncodings()
CertPath
のエンコーディングの繰返しを返します。繰返しの最初はデフォルトのエンコーディングになります。標準のエンコーディング名については、Java暗号化アーキテクチャ標準アルゴリズム名のドキュメントのCertPath符号化の項を参照してください。
返されたIterator
をremove
メソッドで変更しようとすると、UnsupportedOperationException
がスローされます。
このメソッドは、Java 2 Platform Standard Editionのバージョン1.4で追加されました。既存のサービス・プロバイダとの下位互換性を維持するため、このメソッドはabstract
にはできず、デフォルトでUnsupportedOperationException
をスローします。
CertPath
符号化の名前(String
)を反復するIterator
UnsupportedOperationException
- メソッドがサポートされていない場合public abstract Collection<? extends Certificate> engineGenerateCertificates(InputStream inStream) throws CertificateException
inStream
から読み込まれた証明書のコレクション・ビュー(空の場合もある)を返します。
この証明書ファクトリによってサポートされている特殊な形式の証明書を利用するために、返されたコレクション・ビューの各要素を対応する証明書クラスに型キャストできます。たとえば、この証明書ファクトリがX.509証明書を実装する場合、返されたコレクション内の要素をX509Certificate
クラスに型キャストできます。
X.509証明書で使う証明書ファクトリの場合、inStream
には、generateCertificate
で説明されている形式の、DERで符号化された単一の証明書が格納されます。また、inStream
にはPKCS#7証明書チェーンが格納されます。これはPKCS#7 SignedDataオブジェクトであり、上位フィールドはcertificatesだけです。特に、署名および内容は無視されます。この形式の場合、複数の証明書を1回でダウンロードできます。証明書がない場合は、空のコレクションが返されます。
指定された入力ストリームがmark
およびreset
をサポートしていない場合、このメソッドは入力ストリーム全体を使用します。
inStream
- 証明書を持つ入力ストリーム。CertificateException
- 構文解析エラーの場合。public abstract CRL engineGenerateCRL(InputStream inStream) throws CRLException
inStream
から読み込まれたデータで初期化します。
この証明書ファクトリによってサポートされている特殊な形式のCRLを利用するために、返されたCRLオブジェクトを対応するCRLクラスに型キャストできます。たとえば、この証明書ファクトリがX.509 CRLを実装する場合、返されたCRLオブジェクトをX509CRL
クラスに型キャストできます。
指定された入力ストリームがmark
およびreset
をサポートしていない場合、このメソッドは入力ストリーム全体を使用します。そうでない場合、このメソッドが呼び出されるたびにCRLを1つ消費し、入力ストリームの読込み位置は、固有のend-of-CRLマーカーのあとで次に使用可能なバイトに設定されます。固有のend-of-CRLマーカー(EOF以外)が入力ストリームのデータに含まれず、CRLが構文解析されたあとでデータが続く場合は、CRLException
がスローされます。
inStream
- CRLデータを持つ入力ストリーム。CRLException
- 構文解析エラーの場合。public abstract Collection<? extends CRL> engineGenerateCRLs(InputStream inStream) throws CRLException
inStream
から読み込まれたCRLのコレクション・ビュー(空の場合もある)を返します。
この証明書ファクトリによってサポートされている特殊な形式のCRLを利用するために、返されたコレクション・ビューの各要素を対応するCRLクラスに型キャストできます。たとえば、この証明書ファクトリがX.509 CRLを実装する場合、返されたコレクション内の要素をX509CRL
クラスに型キャストできます。
X.509 CRLの証明書ファクトリの場合は、inStream
には、DERで符号化された1つのCRLが格納されます。また、inStream
にはPKCS#7 CRLセットが格納されます。これはPKCS#7 SignedDataオブジェクトであり、上位フィールドはcrlsだけです。特に、署名および内容は無視されます。この形式の場合、複数のCRLを1回でダウンロードできます。CRLがない場合は、空のコレクションが返されます。
指定された入力ストリームがmark
およびreset
をサポートしていない場合、このメソッドは入力ストリーム全体を使用します。
inStream
- CRLを持つ入力ストリーム。CRLException
- 構文解析エラーの場合。 バグまたは機能を送信
詳細なAPIリファレンスおよび開発者ドキュメントについては、Java SEのドキュメントを参照してください。そのドキュメントには、概念的な概要、用語の定義、回避方法、有効なコード例などの、開発者を対象にしたより詳細な説明が含まれています。
Copyright© 1993, 2014, Oracle and/or its affiliates. All rights reserved.