言語

KeyPairGenerator クラス

定義

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

[Android.Runtime.Register("java/security/KeyPairGenerator", DoNotGenerateAcw=true)]
public abstract class KeyPairGenerator : Java.Security.KeyPairGeneratorSpi
[<Android.Runtime.Register("java/security/KeyPairGenerator", DoNotGenerateAcw=true)>]
type KeyPairGenerator = class
    inherit KeyPairGeneratorSpi
継承
属性

注釈

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。 キー ペア ジェネレーターは、 getInstance ファクトリ メソッド (特定のクラスのインスタンスを返す静的メソッド) を使用して構築されます。

特定のアルゴリズムのキー ペア ジェネレーターは、このアルゴリズムで使用できる公開キーと秘密キーのペアを作成します。 また、アルゴリズム固有のパラメーターを、生成された各キーに関連付けます。

キー ペアを生成するには、アルゴリズムに依存しない方法とアルゴリズム固有の方法の 2 つの方法があります。 2 つの唯一の違いは、オブジェクトの初期化です。

<ul><li><b>Algorithm-Independent Initialization</b>

すべてのキー ペア ジェネレーターは、キーサイズとランダム性のソースの概念を共有します。 キーサイズはアルゴリズムによって解釈が異なります (たとえば、 DSA アルゴリズムの場合、keysize は剰余の長さに対応します)。 この KeyPairGenerator クラスには、これら 2 つの汎用共有型の引数を受け取る #initialize(int, java.security.SecureRandom) initialize メソッドがあります。 keysize引数のみを受け取り、最も優先度の高いインストール済みプロバイダーのSecureRandom実装をランダム性のソースとして使用するものもあります。 (インストールされているプロバイダーのいずれも SecureRandom の実装を提供していない場合は、システムによって提供されるランダム性のソースが使用されます)。

上記のアルゴリズムに依存しない initialize メソッドを呼び出すときに他のパラメーターは指定されないので、各キーに関連付けるアルゴリズム固有のパラメーター (存在する場合) の対処方法はプロバイダーが行う必要があります。

アルゴリズムが DSA アルゴリズムで、キーサイズ (剰余サイズ) が 512、768、1024、または 2048 の場合、 Sun プロバイダーは、 pq、および g パラメーターに事前計算された値のセットを使用します。 剰余サイズが上記の値の 1 つでない場合、 Sun プロバイダーは新しいパラメーター セットを作成します。 他のプロバイダーでは、上記の剰余サイズ以上のパラメーター セットが事前計算されている場合があります。 ただし、他のユーザーには事前計算済みパラメーターの一覧がまったく含まれていない場合があり、代わりに常に新しいパラメーター セットを作成します。

<li><b>Algorithm-Specific Initialization</b>

アルゴリズム固有のパラメーターのセットが既に存在する場合 (DSA のいわゆるコミュニティ パラメーターなど)、#initialize(java.security.spec.AlgorithmParameterSpec) initialize引数を持つ 2 つのAlgorithmParameterSpecメソッドがあります。 一方には SecureRandom 引数もあります。もう 1 つは、最も優先度の高いインストール済みプロバイダーの SecureRandom 実装をランダム性のソースとして使用します。 (インストールされているプロバイダーのいずれも SecureRandom の実装を提供していない場合は、システムが提供するランダム性のソースが使用されます)。) </ul>

クライアントが ( initialize メソッドの呼び出しを介して) KeyPairGenerator を明示的に初期化しない場合、各プロバイダーは既定の初期化を指定 (および文書化) する必要があります。 たとえば、 Sun プロバイダーでは、1024 ビットの既定の剰余サイズ (キーサイズ) が使用されます。

このクラスは抽象であり、歴史的な理由から KeyPairGeneratorSpi から拡張されていることに注意してください。 アプリケーション開発者は、この KeyPairGenerator クラスで定義されているメソッドのみを認識する必要があります。スーパークラス内のすべてのメソッドは、キー ペア ジェネレーターの独自の実装を提供する暗号化サービス プロバイダーを対象としています。

Android KeyPairGenerator には、<table><thead><tr><th>Algorithm</th><th>Supported API Levels</th></tr></thead><tbody><tr><td>DH </td><td>1+</td></tr><tr><td></td><td>1+</td></tr><tr><td>EC</td><td>11+</td></tr><tr><td>RSA</td><td>1+</td ></tr><tr><td>XDH</td><td>33+</td></tr></tbody></table>

これらのアルゴリズムについては、「Java Cryptography Architecture Standard Algorithm Name」ドキュメントの KeyPairGenerator セクションで説明されています。

1.1 で追加されました。

Javaドキュメント。

このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。

コンストラクター

名前 説明
KeyPairGenerator(IntPtr, JniHandleOwnership)

JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。

KeyPairGenerator(String)

指定したアルゴリズムの KeyPairGenerator オブジェクトを作成します。

プロパティ

名前 説明
Algorithm

このキー ペア ジェネレーターのアルゴリズムの標準名を返します。

Class

この Objectのランタイム クラスを返します。

(継承元 Object)
Handle

基になる Android インスタンスへのハンドル。

(継承元 Object)
JniIdentityHashCode

相互運用ランタイムによってこのJava ピアに割り当てられた ID ハッシュ コードを取得します。

(継承元 Object)
JniManagedPeerState

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
JniPeerMembers

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

PeerReference

このJava ピアの JNI オブジェクト参照を取得します。

(継承元 Object)
Provider

このキー ペア ジェネレーター オブジェクトのプロバイダーを返します。

ThresholdClass

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

ThresholdType

この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用するためのものではありません。

メソッド

名前 説明
Clone()

このオブジェクトのコピーを作成して返します。

(継承元 Object)
Construct(JniObjectReference, JniObjectReferenceOptions)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
Dispose()

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
Dispose(Boolean)

このJava ピアによって保持されているリソースを解放します。

(継承元 Object)
DisposeUnlessReferenced()

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
Equals(Object)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
Equals(Object)

他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。

(継承元 Object)
GenerateKeyPair()

キー ペアを生成します。

GenKeyPair()

キー ペアを生成します。

GetHashCode()

オブジェクトのハッシュ コード値を返します。

(継承元 Object)
GetInstance(String, Provider)

指定したアルゴリズムの公開キーと秘密キーのペアを生成する KeyPairGenerator オブジェクトを返します。

GetInstance(String, String)

指定したアルゴリズムの公開キーと秘密キーのペアを生成する KeyPairGenerator オブジェクトを返します。

GetInstance(String)

指定したアルゴリズムの公開キーと秘密キーのペアを生成する KeyPairGenerator オブジェクトを返します。

Initialize(IAlgorithmParameterSpec, SecureRandom)

指定したパラメーター セットとユーザー指定のランダム性ソースを使用して、キー ペア ジェネレーターを初期化します。

(継承元 KeyPairGeneratorSpi)
Initialize(IAlgorithmParameterSpec)

指定したパラメーター セットと、最も優先度の高いインストール済みプロバイダーの SecureRandom 実装をランダムのソースとして使用して、キー ペア ジェネレーターを初期化します。

Initialize(Int32, SecureRandom)

特定のキー サイズのキー ペア ジェネレーターを、指定されたランダムなソース (および既定のパラメーター セット) で初期化します。

Initialize(Int32)

既定のパラメーター セットと、最も優先度の高いインストール済みプロバイダーの SecureRandom 実装をランダムのソースとして使用して、特定のキー サイズのキー ペア ジェネレーターを初期化します。

JavaFinalize()

オブジェクトへの参照がなくなったとガベージ コレクションによって判断されたときに、オブジェクトのガベージ コレクターによって呼び出されます。

(継承元 Object)
Notify()

このオブジェクトのモニターで待機している 1 つのスレッドを起動します。

(継承元 Object)
NotifyAll()

このオブジェクトのモニターで待機しているすべてのスレッドを起動します。

(継承元 Object)
SetHandle(IntPtr, JniHandleOwnership)

Handle プロパティを設定します。

(継承元 Object)
SetPeerReference(JniObjectReference, JniObjectReferenceOptions)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
ToArray<T>()

このJava配列ラッパーからマネージド配列を作成します。

(継承元 Object)
ToString()

オブジェクトの文字列形式を返します。

(継承元 Object)
UnregisterFromRuntime()

相互運用ランタイムからこのJava ピアの登録を解除します。

(継承元 Object)
Wait()

現在のスレッドが起動するまで待機します。通常は、 <em>notified</em> または <em>interrupted</em>。

(継承元 Object)
Wait(Int64, Int32)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)
Wait(Int64)

現在のスレッドは、通常、 <em>notified</em> または <em>interrupted</em>、または一定のリアルタイムが経過するまで、起動されるまで待機します。

(継承元 Object)

明示的なインターフェイスの実装

名前 説明
IJavaPeerable.Disposed()

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
IJavaPeerable.Finalized()

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
IJavaPeerable.JniObjectReferenceControlBlock

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
IJavaPeerable.SetJniIdentityHashCode(Int32)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)
IJavaPeerable.SetPeerReference(JniObjectReference)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

(継承元 JavaObject)

拡張メソッド

名前 説明
GetJniTypeName(IJavaPeerable)

インスタンス selfの型の JNI 名を取得します。

JavaAs<TResult>(IJavaPeerable)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

JavaCast<TResult>(IJavaObject)

Android ランタイムチェック型変換を実行します。

JavaCast<TResult>(IJavaObject)

KeyPairGenerator クラスは、公開キーと秘密キーのペアを生成するために使用されます。

TryJavaCast<TResult>(IJavaPeerable, TResult)

selfを強制的にTResult入力し、強制型がJava側で有効であることを確認します。

適用対象