クラスTrustAnchor

java.lang.Object
java.security.cert.TrustAnchor

public class TrustAnchor extends Object
トラスト・アンカー、またはもっとも信 できる証明書発行局(CA)です。

このクラスは、X.509証明書パスの検証で信 できるアンカーとして使用される「もっとも信 できるCA」を表します。 もっとも信 できるCAには、CAの公開キー、CAの名前、およびこのキーを使って検証されるパスのセットに適用される制約が含まれます。 これらのパラメータは、信 できるX509Certificateの形式で、または個別のパラメータとして指定できます。

並行アクセス

すべてのTrustAnchorオブジェクトは、不変で、スレッドに対して安全である必要があります。 つまり、単一の(または複数の) TrustAnchorオブジェクト上で、このクラスに定義されたメソッドを複数のスレッドが同時に呼び出しても、悪影響はありません。 TrustAnchorオブジェクトは、不変かつスレッドに対して安全でなければならないので、アクセスの調整を心配することなく、オブジェクトをさまざまなコードに渡すことができます。 このことは、このクラスのすべてのpublicフィールドとメソッド、そしてサブクラスで追 またはオーバーライドされたpublicフィールドとメソッドに当てはまります。

導入されたバージョン:
1.4
関連 目:
  • コンストラクタのサマリー

    コンストラクタ
    コンストラクタ
    説明
    TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
    識別名と公開キーとでもっとも信 できるCAが指定されているTrustAnchorのインスタンスを作成します。
    TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
    指定したX509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追 するために使用されます。
    TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
    X500Principalと公開キーとでもっとも信 できるCAが指定されているTrustAnchorのインスタンスを作成します。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    もっとも信 できるCAのX500Principalとしての名前を返します。
    final String
    RFC 2253 String形式による、もっとも信 できるCAの名前を返します。
    final PublicKey
    もっとも信 できるCAの公開キーを返します。
    final byte[]
    名前制約のパラメータを返します。
    もっとも信 できるCA証明書を返します。
    TrustAnchorを説明する書式付き文字列を返します。

    クラスjava.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • コンストラクタの詳細

    • TrustAnchor

      public TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints)
      指定したX509Certificateと名前制約(オプション)でTrustAnchorのインスタンスを作成します。名前制約は、X.509証明書パスの妥当性を検査するときの制約を追 するために使用されます。

      名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280とX.509で定義されているNameConstraints構 体にあるような名前制約のDER符号化形式が含まれなければいけません。 この構 体のASN.1定義は次のとおりです。

      
        NameConstraints ::= SEQUENCE {
             permittedSubtrees       [0]     GeneralSubtrees OPTIONAL,
             excludedSubtrees        [1]     GeneralSubtrees OPTIONAL }
      
        GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
      
        GeneralSubtree ::= SEQUENCE {
             base                    GeneralName,
             minimum         [0]     BaseDistance DEFAULT 0,
             maximum         [1]     BaseDistance OPTIONAL }
      
        BaseDistance ::= INTEGER (0..MAX)
      
        GeneralName ::= CHOICE {
             otherName                       [0]     OtherName,
             rfc822Name                      [1]     IA5String,
             dNSName                         [2]     IA5String,
             x400Address                     [3]     ORAddress,
             directoryName                   [4]     Name,
             ediPartyName                    [5]     EDIPartyName,
             uniformResourceIdentifier       [6]     IA5String,
             iPAddress                       [7]     OCTET STRING,
             registeredID                    [8]     OBJECT IDENTIFIER}
       

      以後の変更から保護するために、提供される名前制約のバイト配列は複製されています。

      パラメータ:
      trustedCert - 信 されたX509Certificate
      nameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情 をASN.1 DERで符号化した値を含むバイト配列。 拡張情 の値 けが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する
      スロー:
      IllegalArgumentException - 名前制約が復号化できない 合
      NullPointerException - 指定されたX509Certificatenullである 合
      外部仕様
    • TrustAnchor

      public TrustAnchor(X500Principal caPrincipal, PublicKey pubKey, byte[] nameConstraints)
      X500Principalと公開キーとでもっとも信 できるCAが指定されているTrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追 するために使用されます。

      名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280とX.509で定義されているNameConstraints構 体にあるような、名前制約のDER符号化形式が含まれています。 この構 体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してく さい。

      以後の変更から保護するために、ここで提供されている名前制約のバイト配列は複製されています。

      パラメータ:
      caPrincipal - もっとも信 できるCAのX500Principalとしての名前
      pubKey - もっとも信 できるCAの公開キー
      nameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情 をASN.1 DERで符号化した値を含むバイト配列。 拡張情 の値 けが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する
      スロー:
      NullPointerException - 指定されたcaPrincipalパラメータかpubKeyパラメータがnullの 合
      導入されたバージョン:
      1.5
    • TrustAnchor

      public TrustAnchor(String caName, PublicKey pubKey, byte[] nameConstraints)
      識別名と公開キーとでもっとも信 できるCAが指定されているTrustAnchorのインスタンスを作成します。 名前制約はオプションのパラメータで、X.509証明書パスの妥当性を検査するときの制約を追 するために使用されます。

      名前制約はバイト配列で指定されます。 このバイト配列には、RFC 5280とX.509で定義されているNameConstraints構 体にあるような、名前制約のDER符号化形式が含まれています。 この構 体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してく さい。

      以後の変更から保護するために、ここで提供されている名前制約のバイト配列は複製されています。

      パラメータ:
      caName - RFC 2253 String形式による、もっとも信 できるCAのX.500識別名
      pubKey - もっとも信 できるCAの公開キー
      nameConstraints - 名前制約をチェックするために使用されるNameConstraints拡張情 をASN.1 DERで符号化した値を含むバイト配列。 拡張情 の値 けが含まれ、OIDやクリティカルの程度を表すフラグは含まれない。 このパラメータを無視するにはnullを指定する
      スロー:
      IllegalArgumentException - 指定されたcaNameパラメータが空である(caName.length() == 0)か、形式が正しくないか、または名前制約を復号化できない 合
      NullPointerException - 指定されたcaNameパラメータかpubKeyパラメータがnullの 合
      外部仕様
  • メソッドの詳細

    • getTrustedCert

      public final X509Certificate getTrustedCert()
      もっとも信 できるCA証明書を返します。
      戻り値:
      信 できるX509Certificate。トラスト・アンカーが信 できる証明書として指定されていない 合はnull
    • getCA

      public final X500Principal getCA()
      もっとも信 できるCAのX500Principalとしての名前を返します。
      戻り値:
      もっとも信 できるCAのX.500識別名。トラスト・アンカーが信 できる公開キーと名前またはX500Principalのペアとして指定されていない 合はnull
      導入されたバージョン:
      1.5
    • getCAName

      public final String getCAName()
      RFC 2253 String形式による、もっとも信 できるCAの名前を返します。
      戻り値:
      もっとも信 できるCAのX.500識別名。トラスト・アンカーが信 できる公開キーと名前またはX500Principalのペアとして指定されていない 合はnull
    • getCAPublicKey

      public final PublicKey getCAPublicKey()
      もっとも信 できるCAの公開キーを返します。
      戻り値:
      もっとも信 できるCAの公開キー。トラスト・アンカーが信 できる公開キーと名前またはX500Principalのペアとして指定されていない 合はnull
    • getNameConstraints

      public final byte[] getNameConstraints()
      名前制約のパラメータを返します。 指定した名前制約は、このトラスト・アンカーと関連付けられており、X.509証明書パスの妥当性を検査するときの制約を追 するために使用されます。

      名前制約はバイト配列で返されます。 このバイト配列には、RFC 5280とX.509で定義されているNameConstraints構 体にあるような、名前制約のDER符号化形式が含まれています。 この構 体のASN.1表記については、TrustAnchor(X509Certificate trustedCert, byte[] nameConstraints) のドキュメントを参照してく さい。

      以降の変更から保護するために、返されるバイト配列の複製が作成されます。

      戻り値:
      名前制約をチェックするために使用されるNameConstraints拡張情 をASN.1 DERで符号化した値を含むバイト配列。設定されていない 合はnull
    • toString

      public String toString()
      TrustAnchorを説明する書式付き文字列を返します。
      オーバーライド:
      toString、クラスObject
      戻り値:
      TrustAnchorを説明する書式付き文字列