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>
クライアントが (メソッドの呼び出し init
を介して) KeyGenerator を明示的に初期化しない場合、各プロバイダーは既定の初期化を指定 (および文書化) する必要があります。
Android には、次KeyGenerator
のアルゴリズム<が用意されています。table<>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>1+</td/tr<>td>><>< DESede</td<>td td>1+</td/><tr>tr class="deprecated"><td>DESedeWRAP</td td>><1-8</td<>/tr<>tr><td>HmacMD5</td td>><1+</td></tr<>td><>HmacSHA1</td<>td>11+</td<>/tr tr><><td>HmacSHA224</td td><>1-8,22+</td td<></tr tr>><<td>HmacSHA256</td td>><1+</td<>/tr tr><td><>HmacSHA384</td<>td>1+</td></tr><tr<>td>HmacSHA512</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
このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。
コンストラクター
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) |
このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。 |