KeyGenerator クラス

定義

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

[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
継承
KeyGenerator
属性

注釈

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

キー ジェネレーターは、このクラスのいずれかのクラス メソッドを 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

この KeyGenerator オブジェクトのアルゴリズム名を返します。

Class

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

(継承元 Object)
Handle

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

(継承元 Object)
JniIdentityHashCode

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

(継承元 Object)
JniPeerMembers

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

PeerReference

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

(継承元 Object)
Provider

この KeyGenerator オブジェクトのプロバイダーを返します。

ThresholdClass

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

ThresholdType

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

メソッド

Clone()

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

(継承元 Object)
Dispose()

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

(継承元 Object)
Dispose(Boolean)

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

(継承元 Object)
Equals(Object)

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

(継承元 Object)
GenerateKey()

秘密鍵を生成します。

GetHashCode()

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

(継承元 Object)
GetInstance(String)

指定したアルゴリズムの KeyGenerator 秘密鍵を生成するオブジェクトを返します。

GetInstance(String, Provider)

指定したアルゴリズムの KeyGenerator 秘密鍵を生成するオブジェクトを返します。

GetInstance(String, String)

指定したアルゴリズムの KeyGenerator 秘密鍵を生成するオブジェクトを返します。

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)

このクラスは、シークレット (対称) キー ジェネレーターの機能を提供します。

適用対象