KeyGenerator クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。
[Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)]
public class KeyGenerator : Java.Lang.Object
[<Android.Runtime.Register("javax/crypto/KeyGenerator", DoNotGenerateAcw=true)>]
type KeyGenerator = class
inherit Object
- 継承
- 属性
注釈
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。
キー ジェネレーターは、このクラスのいずれかのクラス メソッドを getInstance
使用して構築されます。
KeyGenerator オブジェクトは再利用可能です。つまり、キーが生成された後、同じ KeyGenerator オブジェクトを再利用して、さらにキーを生成できます。
キーを生成するには、アルゴリズムに依存しない方法とアルゴリズム固有の方法の 2 つの方法があります。 2 つの唯一の違いは、 オブジェクトの初期化です。
<ul><li><b>アルゴリズムに依存しない初期化</b>
すべてのキー ジェネレーターは、 keysize と ランダム性のソースの概念を共有します。 この KeyGenerator クラスには、 #init(int, java.security.SecureRandom) init
これら 2 つの汎用共有型の引数を受け取るメソッドがあります。 また、引数のみを keysize
受け取り、最も優先度の高いインストール済みプロバイダーの SecureRandom 実装をランダム性のソース (または、インストールされているプロバイダーのいずれも SecureRandom 実装を提供していない場合はシステム提供のランダム性ソース) として使用し、ランダム性のソースのみを受け取るプロバイダーもあります。
上記のアルゴリズムに依存しない init
メソッドを呼び出すときに他のパラメーターは指定されないので、各キーに関連付けるアルゴリズム固有のパラメーター (存在する場合) の処理はプロバイダーによって行われます。
<li><b>アルゴリズム固有の初期化</b>
アルゴリズム固有のパラメーターのセットが既に存在する場合は、引数を持つ AlgorithmParameterSpec
2 つの#init(java.security.spec.AlgorithmParameterSpec) init
メソッドがあります。 一方には SecureRandom
引数もあります。もう 1 つは、最も優先度の高いインストール済みプロバイダーの SecureRandom 実装をランダム性のソースとして使用します (または、インストールされているプロバイダーのいずれも SecureRandom 実装を提供していない場合は、システム提供のランダム性のソース) を使用します。 </ul>
クライアントが (メソッドの呼び出しを介して) KeyGenerator を明示的に init
初期化しない場合、各プロバイダーは既定の初期化を指定 (および文書化) する必要があります。
Android には、次KeyGenerator
のアルゴリズムが用意されています。<テーブル><thead<>tr<>th>Algorithm</th>><Supported API Levels</th<>/tr></thead><tbody<>tr<>td>AES</td td<>td>1+</td></tr tr<>class="deprecated"><td>AESWRAP</td td><td>1-8</td></tr tr><><td>ARC4</td><td>14+</td<>/tr tr><><td>BLOWFISH</td td<>td>10+</td></tr><td>><ChaCha20</td td><>28+</td></tr tr><td>><DES</td<>td td>1+</td></tr<><>td>DESede</td><td 1+</td td/>><tr>tr class="deprecated"><td>DESedeWRAP</td td<>td>1-8</td></tr tr><><td>HmacMD5</td><td>1+</td<>/tr<>td><>HmacSHA1</td td>><11+</td<>/tr<>td><HmacSHA224</td>td><>1-8,22+</td td<></tr tr><<>td>HmacSHA256</td td<>td>1+</td></tr tr<>td>><HmacSHA384</td><td td>1+</td></tr><td><><>td>< 1+</td></tr tr<>class="deprecated"><td>RC4</td td><>10-13</Td></tr></tbody></table>
これらのアルゴリズムについては、Java 暗号化アーキテクチャの標準アルゴリズム名に関するドキュメントの KeyGenerator セクション で説明されています。
1.4 で追加されました。
の Java ドキュメント javax.crypto.KeyGenerator
。
このページの一部は、によって作成および共有され、に記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
KeyGenerator(IntPtr, JniHandleOwnership) |
JNI オブジェクトのマネージド表現を作成するときに使用されるコンストラクター。ランタイムによって呼び出されます。 |
KeyGenerator(KeyGeneratorSpi, Provider, String) |
KeyGenerator オブジェクトを作成します。 |
プロパティ
Algorithm |
この |
Class |
この |
Handle |
基になる Android インスタンスへのハンドル。 (継承元 Object) |
JniIdentityHashCode |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
JniPeerMembers |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 |
PeerReference |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
Provider |
この |
ThresholdClass |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 |
ThresholdType |
この API は Android 用 Mono インフラストラクチャをサポートしており、コードから直接使用することを意図したものではありません。 |
メソッド
Clone() |
このオブジェクトのコピーを作成して返します。 (継承元 Object) |
Dispose() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
Dispose(Boolean) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
Equals(Object) |
他のオブジェクトがこのオブジェクトと "等しい" かどうかを示します。 (継承元 Object) |
GenerateKey() |
秘密鍵を生成します。 |
GetHashCode() |
オブジェクトのハッシュ コード値を返します。 (継承元 Object) |
GetInstance(String) |
指定したアルゴリズムの |
GetInstance(String, Provider) |
指定したアルゴリズムの |
GetInstance(String, String) |
指定したアルゴリズムの |
Init(IAlgorithmParameterSpec) |
指定したパラメーター セットを使用して、このキー ジェネレーターを初期化します。 |
Init(IAlgorithmParameterSpec, SecureRandom) |
指定したパラメーター セットとユーザー指定のランダム性のソースを使用して、このキー ジェネレーターを初期化します。 |
Init(Int32) |
特定のキーサイズに対してこのキー ジェネレーターを初期化します。 |
Init(Int32, SecureRandom) |
ユーザー指定のランダム性ソースを使用して、特定のキーサイズに対してこのキー ジェネレーターを初期化します。 |
Init(SecureRandom) |
このキー ジェネレーターを初期化します。 |
JavaFinalize() |
ガベージ コレクションがオブジェクトへの参照がなくなったと判断したときに、オブジェクトのガベージ コレクターによって呼び出されます。 (継承元 Object) |
Notify() |
このオブジェクトのモニターで待機している 1 つのスレッドをウェイクアップします。 (継承元 Object) |
NotifyAll() |
このオブジェクトのモニターで待機しているすべてのスレッドをウェイクアップします。 (継承元 Object) |
SetHandle(IntPtr, JniHandleOwnership) |
Handle プロパティを設定します。 (継承元 Object) |
ToArray<T>() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
ToString() |
オブジェクトの文字列形式を返します。 (継承元 Object) |
UnregisterFromRuntime() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
Wait() |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または <em>割り込み</em によって待機します>。 (継承元 Object) |
Wait(Int64) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
Wait(Int64, Int32) |
現在のスレッドが起動するまで待機します。通常<>は、通知</em> または>< em 割り込み</em>、または一定のリアルタイムが経過するまで待機します。 (継承元 Object) |
明示的なインターフェイスの実装
IJavaPeerable.Disposed() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.DisposeUnlessReferenced() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.Finalized() |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.JniManagedPeerState |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.SetJniIdentityHashCode(Int32) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
IJavaPeerable.SetPeerReference(JniObjectReference) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 (継承元 Object) |
拡張メソッド
JavaCast<TResult>(IJavaObject) |
Android ランタイムチェック型変換を実行します。 |
JavaCast<TResult>(IJavaObject) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 |
GetJniTypeName(IJavaPeerable) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 |