- すべての実装されたインタフェース:
Serializable
,RandomGenerator
強力な暗号化による乱数は、「FIPS 140-2, Security Requirements for Cryptographic Modules」のセクション4.9.1に指定されている統計的乱数生成テストに最低限適合しています。 また、SecureRandom
は非決定的な出力を生成する必要があります。 したがって、SecureRandom
オブジェクトに渡されるシード・マテリアルは予測できない必要があり、「RFC 4086: セキュリティのランダム性要件」で説明されているように、すべてのSecureRandom
出力シーケンスは暗号的に強力である必要があります。
多くのSecureRandom
実装は、疑似乱数ジェネレータ(PRNG(deterministic random bits generator、DRBGとも呼ばれる))の形式です。これは、決定的アルゴリズムを使用してランダム・シードから疑似乱数シーケンスを生成することを意味します。 実装の中には、真の乱数を生成するものもあれば、両方の技術の組み合わせを使用するものもあります。
呼出し側は、引数なしコンストラクタまたはgetInstance
メソッドのいずれかを介してSecureRandom
インスタンスを取得します。 たとえば、
SecureRandom r1 = new SecureRandom(); SecureRandom r2 = SecureRandom.getInstance("NativePRNG"); SecureRandom r3 = SecureRandom.getInstance("DRBG", DrbgParameters.instantiation(128, RESEED_ONLY, null));
前述の3番目の文は、特定のインスタンス化パラメータをサポートする特定のアルゴリズムのSecureRandom
オブジェクトを返します。 実装の有効なインスタンス化パラメータは、この最小リクエストと一致する必要がありますが、必ずしも同じではありません。 たとえば、リクエストに特定の機能が必要ない場合でも、実際のインスタンス化でその機能を提供できます。 実装は、実際に使用されるまでSecureRandom
を遅延的にインスタンス化できますが、有効なインスタンス化パラメータは作成直後に決定する必要があり、getParameters()
は常に同じ結果を変更せずに返す必要があります。
SecureRandom
の典型的な呼び出し元は、以下のメソッドを呼び出してランダムなバイトを取得します:
SecureRandom random = new SecureRandom(); byte[] bytes = new byte[20]; random.nextBytes(bytes);
呼び出し側は、generateSeed(int)
メソッドを呼び出して、指定された数のシード・バイトを生成することもできます。(他の乱数ジェネレータをシード):
byte[] seed = random.generateSeed(20);
新しく作成されたPRNG SecureRandom
オブジェクトは、(SecureRandom(byte[])
によって作成されている場合を除き)にシードされません。 nextBytes
への最初のコールは、実装固有のエントロピ・ソースから自身を強制的にシードします。 setSeed
が以前に呼び出されている場合、この自己シードは行われません。
SecureRandom
は、reseed
またはsetSeed
メソッドをコールして、いつでも再シードできます。 reseed
メソッドは、エントロピ・ソースからエントロピ入力を読み取り、自身をリ・シードします。 setSeed
メソッドでは、コール元がシードを提供する必要があります。
reseed
は、すべてのSecureRandom
実装でサポートされない場合があります。
一部のSecureRandom
実装では、メソッドの動作をさらに制御するために、nextBytes(byte[], SecureRandomParameters)
メソッドおよびreseed(SecureRandomParameters)
メソッドでSecureRandomParameters
パラメータを使用できます。
ノート: 実装によっては、generateSeed
、reseed
およびnextBytes
メソッドが、たとえば、様々なUnixに似たオペレーティング・システムでエントロピ・ソースが/dev/randomの場合に、エントロピが収集されるとブロックされることがあります。
スレッドの安全性
SecureRandom
オブジェクトは、複数の同時スレッドで安全に使用できます。- 実装要件:
SecureRandom
サービス・プロバイダは、プロバイダの登録時に「サービス・プロバイダ属性」 "ThreadSafe"を"true"に設定することで、それがスレッド・セーフであることを通知できます。 それ以外の場合、このクラスはかわりに、SecureRandomSpi
実装の次のメソッドへのアクセスを同期します:- 導入されたバージョン:
- 1.1
- 関連項目:
-
ネストされたクラスのサマリー
インタフェースjava.util.random.RandomGeneratorで宣言されたネストされたクラス/インタフェース
RandomGenerator.ArbitrarilyJumpableGenerator, RandomGenerator.JumpableGenerator, RandomGenerator.LeapableGenerator, RandomGenerator.SplittableGenerator, RandomGenerator.StreamableGenerator
-
コンストラクタのサマリー
修飾子コンストラクタ説明デフォルトの乱数アルゴリズムを実装する、セキュリティ保護された乱数ジェネレータ(RNG)を構築します。SecureRandom
(byte[] seed) デフォルトの乱数アルゴリズムを実装する、セキュリティ保護された乱数ジェネレータ(RNG)を構築します。protected
SecureRandom
(SecureRandomSpi secureRandomSpi, Provider provider) SecureRandom
オブジェクトを作成します。 -
メソッドのサマリー
修飾子と型メソッド説明byte[]
generateSeed
(int numBytes) 指定されたバイト数のシード・バイトを返します。シード・バイトの計算には、このクラスが自身をシードするのに使用するシード生成アルゴリズムが使用されます。このSecureRandom
オブジェクトによって実装されたアルゴリズムの名前を返します。static SecureRandom
getInstance
(String algorithm) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。static SecureRandom
getInstance
(String algorithm, String provider) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。static SecureRandom
getInstance
(String algorithm, Provider provider) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。static SecureRandom
getInstance
(String algorithm, SecureRandomParameters params) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。static SecureRandom
getInstance
(String algorithm, SecureRandomParameters params, String provider) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。static SecureRandom
getInstance
(String algorithm, SecureRandomParameters params, Provider provider) 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。static SecureRandom
securerandom.strongAlgorithms
Security
プロパティで指定されたアルゴリズムまたはプロバイダを使用して選択されたSecureRandom
オブジェクトを返します。このSecureRandom
インスタンスの有効なSecureRandomParameters
を返します。final Provider
このSecureRandom
オブジェクトのプロバイダを返します。static byte[]
getSeed
(int numBytes) 指定されたバイト数のシード・バイトを返します。シード・バイトの計算には、このクラスが自身をシードするのに使用するシード生成アルゴリズムが使用されます。protected final int
next
(int numBits) ユーザーが指定した数の擬似乱数ビット(右詰、ゼロ埋め込み)を含む整数を生成します。void
nextBytes
(byte[] bytes) ユーザーが指定したバイト数の乱数バイト数を生成します。void
nextBytes
(byte[] bytes, SecureRandomParameters params) 追加パラメータを使用して、ユーザー指定のランダム・バイト数を生成します。void
reseed()
このSecureRandom
を、エントロピ・ソースから読み取られたエントロピ入力で再シードします。void
reseed
(SecureRandomParameters params) このSecureRandom
を、エントロピ・ソースから読み取られたエントロピ入力で追加パラメータとともに再シードします。void
setSeed
(byte[] seed) このランダムなオブジェクトを、指定されたシードに再シードします。void
setSeed
(long seed) 指定されたlong seed
に含まれている8バイトを使用して、この乱数オブジェクトを再シードします。toString()
このSecureRandom
の人間が読める文字列表現を返します。クラスjava.util.Randomで宣言されたメソッド
doubles, doubles, doubles, doubles, from, ints, ints, ints, ints, longs, longs, longs, longs, nextBoolean, nextDouble, nextFloat, nextGaussian, nextInt, nextInt, nextLong
クラスjava.lang.Objectで宣言されたメソッド
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
インタフェースjava.util.random.RandomGeneratorで宣言されたメソッド
equiDoubles, isDeprecated, nextDouble, nextDouble, nextExponential, nextFloat, nextFloat, nextGaussian, nextInt, nextLong, nextLong
-
コンストラクタの詳細
-
SecureRandom
public SecureRandom()デフォルトの乱数アルゴリズムを実装する、セキュリティ保護された乱数ジェネレータ(RNG)を構築します。このコンストラクタは、最優先のProviderから順に、登録済みのセキュリティProviderのリストをトラバースします。
SecureRandom
(RNG)アルゴリズムをサポートする最初のプロバイダからSecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 どのプロバイダもRNGアルゴリズムをサポートしていない場合は、実装固有のデフォルトが返されます。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」の
SecureRandom
の項を参照してください。 -
SecureRandom
public SecureRandom(byte[] seed) デフォルトの乱数アルゴリズムを実装する、セキュリティ保護された乱数ジェネレータ(RNG)を構築します。SecureRandom
インスタンスは、指定されたシード・バイトでシードされます。このコンストラクタは、最優先のProviderから順に、登録済みのセキュリティProviderのリストをトラバースします。
SecureRandom
(RNG)アルゴリズムをサポートする最初のプロバイダからSecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 どのプロバイダもRNGアルゴリズムをサポートしていない場合は、実装固有のデフォルトが返されます。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」の
SecureRandom
の項を参照してください。- パラメータ:
seed
- シード。- 例外:
NullPointerException
-seed
がnull
の場合
-
SecureRandom
protected SecureRandom(SecureRandomSpi secureRandomSpi, Provider provider) SecureRandom
オブジェクトを作成します。- パラメータ:
secureRandomSpi
-SecureRandom
実装。provider
- プロバイダ
-
-
メソッドの詳細
-
getInstance
public static SecureRandom getInstance(String algorithm) throws NoSuchAlgorithmException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。このメソッドは、最優先のProviderから順に、登録済みのセキュリティProviderのリストをトラバースします。 指定されたアルゴリズムをサポートする最初のプロバイダから
SecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。- 実装上のノート:
- JDKリファレンス実装では、さらに
jdk.security.provider.preferred
Security
プロパティを使用して、指定したアルゴリズムの優先プロバイダ順序を決定します。 これは、Security.getProviders()
によって返されるプロバイダの順序とは異なる場合があります。 - パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
NoSuchAlgorithmException
-Provider
が、指定されたアルゴリズムのSecureRandomSpi
実装をサポートしていない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 1.2
- 関連項目:
-
getInstance
public static SecureRandom getInstance(String algorithm, String provider) throws NoSuchAlgorithmException, NoSuchProviderException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。指定したプロバイダから
SecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 指定したプロバイダは、セキュリティ・プロバイダ・リストに登録する必要があります。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。- パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。provider
- プロバイダ名。- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
IllegalArgumentException
- プロバイダ名がnull
または空の場合NoSuchAlgorithmException
- 指定されたアルゴリズムのSecureRandomSpi
実装が、指定されたプロバイダから利用可能でない場合NoSuchProviderException
- 指定されたプロバイダがセキュリティ・プロバイダ・リストに登録されていない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 1.2
- 関連項目:
-
getInstance
public static SecureRandom getInstance(String algorithm, Provider provider) throws NoSuchAlgorithmException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装するSecureRandom
オブジェクトを返します。指定したプロバイダから
SecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 指定されたプロバイダをプロバイダ・リストに登録する必要はありません。- パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。provider
- プロバイダ- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
IllegalArgumentException
- 指定されたプロバイダがnull
の場合NoSuchAlgorithmException
- 指定されたアルゴリズムのSecureRandomSpi
実装が、指定されたProvider
オブジェクトから使用できない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 1.4
- 関連項目:
-
getInstance
public static SecureRandom getInstance(String algorithm, SecureRandomParameters params) throws NoSuchAlgorithmException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。このメソッドは、最も優先されるプロバイダから始まる登録済セキュリティ・プロバイダのリストを横断します。 指定されたアルゴリズムをサポートし、指定された
SecureRandomParameters
をサポートする最初のプロバイダからSecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。- 実装上のノート:
- JDKリファレンス実装では、さらに
jdk.security.provider.preferred
プロパティを使用して、指定されたアルゴリズムの優先プロバイダ順序を決定します。 これは、Security.getProviders()
によって返されるプロバイダの順序とは異なる場合があります。 - パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。params
- 新しく作成されたSecureRandom
オブジェクトがサポートするSecureRandomParameters
。- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
IllegalArgumentException
- 指定されたパラメータがnull
の場合NoSuchAlgorithmException
- 指定されたアルゴリズムとパラメータに対してSecureRandomSpi
実装をサポートするプロバイダがない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 9
- 関連項目:
-
getInstance
public static SecureRandom getInstance(String algorithm, SecureRandomParameters params, String provider) throws NoSuchAlgorithmException, NoSuchProviderException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。指定したプロバイダから
SecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 指定したプロバイダは、セキュリティ・プロバイダ・リストに登録する必要があります。登録済みプロバイダのリストは、
Security.getProviders()
メソッド経由で取得できます。- パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。params
- 新しく作成されたSecureRandom
オブジェクトがサポートするSecureRandomParameters
。provider
- プロバイダ名。- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
IllegalArgumentException
- プロバイダ名がnull
または空の場合、またはパラメータがnull
の場合NoSuchAlgorithmException
- 指定されたプロバイダが、指定されたアルゴリズムおよびパラメータのSecureRandomSpi
実装をサポートしていない場合NoSuchProviderException
- 指定されたプロバイダがセキュリティ・プロバイダ・リストに登録されていない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 9
- 関連項目:
-
getInstance
public static SecureRandom getInstance(String algorithm, SecureRandomParameters params, Provider provider) throws NoSuchAlgorithmException 指定された乱数ジェネレータの(RNG)アルゴリズムを実装し、指定されたSecureRandomParameters
リクエストをサポートするSecureRandom
オブジェクトを返します。指定したプロバイダから
SecureRandomSpi
実装をカプセル化する新しいSecureRandom
オブジェクトが返されます。 指定されたプロバイダをプロバイダ・リストに登録する必要はありません。- パラメータ:
algorithm
- RNGアルゴリズムの名前。 標準RNGアルゴリズム名の詳細は、「Javaセキュリティ標準アルゴリズム名仕様」のSecureRandom
の項を参照してください。params
- 新しく作成されたSecureRandom
オブジェクトがサポートするSecureRandomParameters
。provider
- プロバイダ- 戻り値:
- 新しい
SecureRandom
オブジェクト - 例外:
IllegalArgumentException
- 指定されたプロバイダまたはパラメータがnull
の場合NoSuchAlgorithmException
- 指定されたプロバイダが、指定されたアルゴリズムおよびパラメータのSecureRandomSpi
実装をサポートしていない場合NullPointerException
-algorithm
がnull
である場合- 導入されたバージョン:
- 9
- 関連項目:
-
getProvider
public final Provider getProvider()このSecureRandom
オブジェクトのプロバイダを返します。- 戻り値:
- この
SecureRandom
オブジェクトのプロバイダ。
-
getAlgorithm
public String getAlgorithm()このSecureRandom
オブジェクトによって実装されたアルゴリズムの名前を返します。- 戻り値:
- アルゴリズムの名前。アルゴリズム名を特定できない場合は
unknown
。 - 導入されたバージョン:
- 1.5
-
toString
-
getParameters
public SecureRandomParameters getParameters()このSecureRandom
インスタンスの有効なSecureRandomParameters
を返します。戻り値は、
getInstance
メソッドに渡されるSecureRandomParameters
オブジェクトと異なる場合がありますが、このSecureRandom
オブジェクトの存続期間中は変更できません。呼出し側は、戻り値を使用して、この
SecureRandom
がサポートする機能を確認できます。- 戻り値:
- 有効な
SecureRandomParameters
パラメータ、またはパラメータが使用されていない場合はnull
。 - 導入されたバージョン:
- 9
- 関連項目:
-
setSeed
public void setSeed(byte[] seed) このランダムなオブジェクトを、指定されたシードに再シードします。 シードは、既存のシードを置き換えるのではなく、補足します。 これにより、呼出しを繰り返しても、ランダム性が減少しないことが保証されます。nextBytes
またはreseed
コールの前にsetSeed
がコールされた場合、PRNGSecureRandom
は自動的にシードされません。 呼び出し側は、seed
引数に、このSecureRandom
のセキュリティのための十分なエントロピが含まれていることを確認する必要があります。- パラメータ:
seed
- シード。- 例外:
NullPointerException
-seed
がnull
の場合- 関連項目:
-
setSeed
public void setSeed(long seed) 指定されたlong seed
に含まれている8バイトを使用して、この乱数オブジェクトを再シードします。 与えられたシードは、既存のシードと置き換わるのではなく、既存のシードに追加されます。 これにより、呼出しを繰り返しても、ランダム性が減少しないことが保証されます。nextBytes
またはreseed
コールの前にsetSeed
がコールされた場合、PRNGSecureRandom
は自動的にシードされません。 呼び出し側は、seed
引数に、このSecureRandom
のセキュリティのための十分なエントロピが含まれていることを確認する必要があります。このメソッドは、
java.util.Random
との互換性のために定義されています。 -
nextBytes
public void nextBytes(byte[] bytes) ユーザーが指定したバイト数の乱数バイト数を生成します。- 定義:
- インタフェース
RandomGenerator
内のnextBytes
- オーバーライド:
nextBytes
、クラスRandom
- パラメータ:
bytes
- 乱数バイトを充填する配列。- 例外:
NullPointerException
-bytes
がnull
の場合
-
nextBytes
public void nextBytes(byte[] bytes, SecureRandomParameters params) 追加パラメータを使用して、ユーザー指定のランダム・バイト数を生成します。- パラメータ:
bytes
- 乱数バイトを充填する配列params
- 追加パラメータ- 例外:
NullPointerException
-bytes
がnull
の場合UnsupportedOperationException
- 基本のプロバイダ実装がこのメソッドをオーバーライドしていない場合IllegalArgumentException
-params
がnull
の場合、このSecureRandom
によって不正またはサポートされていない- 導入されたバージョン:
- 9
-
next
protected final int next(int numBits) ユーザーが指定した数の擬似乱数ビット(右詰、ゼロ埋め込み)を含む整数を生成します。 このメソッドはjava.util.Random
メソッドをオーバーライドし、そのクラス(例:nextInt
、nextLong
およびnextFloat
)から継承されたすべてのメソッドにランダム・ビットのソースを提供します。 -
getSeed
public static byte[] getSeed(int numBytes) 指定されたバイト数のシード・バイトを返します。シード・バイトの計算には、このクラスが自身をシードするのに使用するシード生成アルゴリズムが使用されます。 この呼出しを使うと、ほかの乱数ジェネレータをシードできます。このメソッドは、下位互換のためだけに提供されています。 呼出し側は、代替の
getInstance
メソッドのいずれかを使用してSecureRandom
オブジェクトを取得し、generateSeed
メソッドをコールしてそのオブジェクトからシード・バイトを取得することをお薦めします。- パラメータ:
numBytes
- 生成するシード・バイト数。- 戻り値:
- シード・バイト。
- 例外:
IllegalArgumentException
-numBytes
が負の場合- 関連項目:
-
generateSeed
public byte[] generateSeed(int numBytes) 指定されたバイト数のシード・バイトを返します。シード・バイトの計算には、このクラスが自身をシードするのに使用するシード生成アルゴリズムが使用されます。 この呼出しを使うと、ほかの乱数ジェネレータをシードできます。- パラメータ:
numBytes
- 生成するシード・バイト数。- 戻り値:
- シード・バイト。
- 例外:
IllegalArgumentException
-numBytes
が負の場合
-
getInstanceStrong
public static SecureRandom getInstanceStrong() throws NoSuchAlgorithmExceptionsecurerandom.strongAlgorithms
Security
プロパティで指定されたアルゴリズムまたはプロバイダを使用して選択されたSecureRandom
オブジェクトを返します。RSA公開/非公開キーのような付加価値の高い永続的な秘密情報を作成する場合など、状況によっては強力な乱数値が必要になります。 アプリケーションが適切で強力な
SecureRandom
実装を選択できるようにするため、Javaディストリビューションでは、securerandom.strongAlgorithms
セキュリティ・プロパティに既知の強力なSecureRandom
実装のリストが含まれています。Javaプラットフォームのすべての実装は、強力な
SecureRandom
実装を1つ以上サポートする必要があります。- 戻り値:
securerandom.strongAlgorithms
セキュリティ・プロパティで示される強力なSecureRandom
実装- 例外:
NoSuchAlgorithmException
- アルゴリズムが存在しない場合- 導入されたバージョン:
- 1.8
- 関連項目:
-
reseed
public void reseed()このSecureRandom
を、エントロピ・ソースから読み取られたエントロピ入力で再シードします。- 例外:
UnsupportedOperationException
- 基礎となるプロバイダ実装がこのメソッドをオーバーライドしていない場合。- 導入されたバージョン:
- 9
-
reseed
public void reseed(SecureRandomParameters params) このSecureRandom
を、エントロピ・ソースから読み取られたエントロピ入力で追加パラメータとともに再シードします。エントロピはエントロピ源から取得されることに注意してください。
params
の一部のデータにはエントロピが含まれている場合がありますが、その主な用途は多様性を提供することです。- パラメータ:
params
- 余分なパラメータ- 例外:
UnsupportedOperationException
- 基礎となるプロバイダ実装がこのメソッドをオーバーライドしていない場合。IllegalArgumentException
-params
がnull
の場合、このSecureRandom
によって不正またはサポートされていない- 導入されたバージョン:
- 9
-