問題タブ [prng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
346 参照

java - Fortuna ジェネレーター (gnu クラスパスからのもの) を正しく動作させるにはどうすればよいですか?

何らかの理由で、どのコードを試しても、このコードは常に

エラー。メッセージの下部にテスト コードを含めました。また、このジェネレーターのドキュメントを見つけることができませんでした。そして、私はgnuクラスパスを使用していません。Fortuna.javaが必要としていたクラスをインポートしただけです。

0 投票する
2 に答える
2085 参照

java - Java の SecureRandom が TRNG ではなく CS PRNG と呼ばれるのはなぜですか?

SecureRandom は、 の場合のように、他のアルゴリズムを内部的に使用LinuxNativePRNGます/dev/urandom。しかし/dev/urandom、実際には割り込みイベントなどを使用して、True Random Number Generator (TRNG) に似たエントロピーを生成しています。では、使用しているアルゴリズムの実装に依存しているにもかかわらず、なぜ Number Generator とSecureRandom呼ばれるのでしょうか?PseudoRandom

ありがとう

0 投票する
3 に答える
5661 参照

algorithm - 乱数生成アルゴリズム

(クレジットカード/デビットカード番号) のような乱数を生成するために銀行が使用するアルゴリズムは何ですか?

DBにすべての数値を保持しているとします。以下のアプローチを試してみると、

  1. 乱数を生成します。
  2. 番号がすでに割り当てられているかどうかを確認します。
  3. はいの場合は、手順 1 に進みます。
  4. いいえの場合、DB に新しい番号のレコードを作成し、結果を出力します。

カードのボリュームが増加すると、より多くの db ヒットが要求されます。

これについて他に何かありますか?? 助けてください。

0 投票する
1 に答える
698 参照

racket - ラケットでコントラクトアウトを使用する方法

私はRacketで無料のキャリー付き乗算PRNGを作成しました。provideライブラリ内の特定の関数へのアクセスのみを制限し、それらにコントラクトを課すために使用したいと思います。ラケットのドキュメント(上記のリンク)を使用して、ファイルの先頭に次のコードを配置しました。

しかし、DrRacketでファイルを実行すると、次のエラーが発生します。

上記のコードを挿入せずにDrRacketで実行すると、コードはエラーをスローせず、それ以外の場合は機能します。

ソースファイル外の特定の機能へのアクセスのみを制限し、Racketでそれらのコントラクトを適用する適切な方法は何ですか?

0 投票する
2 に答える
262 参照

random - 暗号ではなく、8ビットの可逆PRNGを書き込もうとしています

私は、バイトのセット(たとえば、10または15バイト)を取得して、そのバイトのリストを生成するシードのリストを返すことができるバイトのPRNGを構築しようとしています。私は暗号化について心配していませんが、それはほぼ均一に分散されている必要があり、可能なすべての2 ^ 8の組み合わせにヒットする必要があり、ときどき行き詰まることなく番号を繰り返すことができる必要があります。

問題は、私が読んだほとんどのアルゴリズムが暗号を使用していることです。これはおそらく繰り返しが許可されないことを意味するか、損失を引き起こして関数を逆にすることをせいぜい非現実的にするモジュラスまたは非循環シフトを使用します。また、アルゴリズムがカウントを使用した場合、バイトリスト入力は生成時に内部PRNGのカウンターが何であったかを認識しないため、逆方向に作業するのは困難です。

私が探しているのは、ケーキを食べて食べ過ぎの状況であることに気づきましたが、私が見逃していた別の解決策がないことを確認したかったのです。

検索中に、同様の要件を持つこの投稿に出くわしました。私はC#で書いていましたが、実際には構文は重要ではありません。

私が自分で作成しようとしたすべてのアルゴリズムは暗号であるため、繰り返しに失敗したり、分散が均一でなかったりします。インバージョン、サーキュラーシフト、シードマスキングを使用しました。

0 投票する
1 に答える
992 参照

ruby - RubyのSecureRandomとnの大きさ

私は6つのランダムな16進文字を探していて、Rubyを使用していますSecureRandom

SecureRandom.hex(3)3 バイトのランダム データからアンパックされた 6 つの 16 進文字を返します。

問題は、SecureRandom.hex(6)[0,6]アンパック前に 6 バイトのランダム データがあったため、よりランダムな 6 つの 16 進文字を返すかどうかです。さらに言えばSecureRandom.hex(16)[0,6]、さらにランダムになりますか?

私のアプリケーションでは、1,600 万を超える一意の値を持つ 6 文字だけが必要ですが、既に選択されている数字と衝突する可能性をできるだけ低くしたいと考えています。では、ランダム バイトに大きな値を使用nすると、空間全体のランダム値の分布が改善されますか、それとも不要ですか?

0 投票する
1 に答える
540 参照

c++ - g++ を使用した C++ ファイルのコンパイル エラー

cygwin から g++ を使用しています。.cpp ファイルをコンパイルしようとしていますが、エラーが発生しています。

コードは次のとおりです。

これは、cygwin ターミナルと g++ を使用してコンパイルしようとしたときに発生するエラーです。

.cpp ファイルとヘッダー ファイル randomc.h は、私の xampp の場所にあります。これはまったく問題にすべきではないと思いますよね?これをコンパイルして実行する方法を教えてください。ありがとう。

0 投票する
2 に答える
950 参照

java - Javaで安全な乱数をシードする

同じ値でシードされた2つのjava.security.SecureRandomインスタンスは、最初は同じ乱数シーケンスを提供しますか?

クライアントとサーバーの両方で同じ乱数のシーケンスが必要なため、これを求めています。両方が同じシード値を使用している場合はどうなりますか。シーケンスは同じですか、それともシーケンスを同じにする方法はありますか?

0 投票する
1 に答える
3290 参照

postgresql - PostgreSQLのrandom()関数の品質は?

非常に大きなランダムな整数である必要がある列バーを使用してテーブルfooを作成しているとしましょう。

これはこれを行うための最良の方法ですか?PostgreSQLのrandom()機能の品質について誰かが話すことができますか?ここでの乗算はエントロピーをマスクしていますか?

にフィードするハードウェアエントロピーが優れていることに注意してください/dev/random