/dev/urandom
本質的には、 Linux 上のWindows と同等のものを探しています。
C++ API 経由で Windows CNG を使用できることはわかっていますが、コマンドライン経由で最新の Windows システム上のランダム バイトにアクセスできる (移植可能な) メソッドがあるかどうかはわかりません。
答え1
.NETで使用できるもの(C#など)はすべてPowerShellでも使用できます。これには以下が含まれます。暗号化.乱数ジェネレータクラス。(.NET Core 2.xでは、このクラスはCNG経由で実装されています。BCryptGenRandom()WindowsではOpenSSLRAND_バイト()Linuxでは、AppleCryptoCCRandomGenerateBytes()macOS の場合。
$bytes = New-Object byte[](8)
$rng = [System.Security.Cryptography.RandomNumberGenerator]::Create()
$rng.GetBytes($bytes)
(コードは以下から改変)暗号取得ランダム.ps1Microsoft の「スクリプト センター」から。元のスクリプトはRNGCryptoServiceProvider
クラスを使用しますが、これはほぼ同じものですが、古い .NET 1.x ランタイム バージョンでは使用できません。