1

考えはありますが、実行する方法がわかりません。やや長い USB ケーブルを使用して、両端を同じマシンに接続したいと考えています。次に、一方の端から信号を送信し、もう一方の端に到達するまでにかかる時間を測定したいと思います。これにより、信号が異なる時間に到着し、乱数が発生する可能性があると思います。

誰かがこれを最も速く行うことができる言語を提案できますか? USB経由で信号を送信した経験がなく、どこから始めればよいのか、どのように始めればよいのかわかりません。どんな助けでも大歓迎です。

私は単にこれを家のプロジェクトで楽しみたいだけなので、公式なものは必要ありません。このアイデアが機能するかどうかを確認したいだけです.

編集:信号をできるだけ遅くするために、USBケーブルを液体窒素または同じように冷たい物質に保管するとどうなりますか(液体窒素にアクセスできます)。

4

2 に答える 2

1

申し訳ありませんが、コメントできません (十分な担当者がいません) が、遅延は常に同じである必要があります。これにより、数値の真のランダム性が制限される可能性があります。さらに、ワイヤの実際の遅延時間は、CPU サイクルよりも短い場合があります。

オペレーティング システムが Windows の場合、次のような問題が発生する可能性があります。

.NET タイマーが 15 ミリ秒の解像度に制限されているのはなぜですか?

どうやら、Windows の最小時間分解能は約 15ms です。

編集: あなたの液体窒素の編集に応じて、これらのグラフによると、あなたは暑さにもっと恵まれているかもしれません! 大変興味深いことに...

温度と導電率 http://www.emeraldinsight.com/content_images/fig/1740240120008.png

于 2013-07-01T18:41:46.930 に答える
0

やや長い USB ケーブルを使用して、両端を同じマシンに接続したいと考えています。

うまくいきません。USB 接続は常にHost -> Device、PC はホストにしかできません。また、通信では予測可能な 1 ミリ秒間隔が使用されます。これは、ランダム性に悪影響を及ぼします。

一部の新しいマイクロコントローラーには、RNG と USB の両方がオンチップで搭載されているため、実際の USB RNG を作成できます。

信号を遅くするために、USBケーブルを液体窒素または同じように冷たい物質に保管するとどうなりますか

ケーブルの抵抗が低いため、信号は少し速く移動します。

于 2013-07-03T17:20:54.580 に答える