web-dev-qa-db-ja.com

opensslで「「ランダムな状態」を書き込めない」を修正する方法

このコマンドを使用して秘密鍵を生成している間

genrsa -out my-prvkey.pem 1024

以下のようなエラーをスローします

「スクリーン」をランダムな状態にLoadind -done RSA秘密鍵、1024ビット長モジュラスの生成................................ ......... +++++++ ........................... +++++++ ++「ランダムな状態」を書き込めないeは65537(0 * 10001)

これにより、公開証明書の作成中に問題が発生します。このコマンドをWindowsで実行しています。誰でも修正のために私を助けることができますか?

69
arok

最も速い解決策は次のとおりです。環境変数RANDFILEを「ランダム状態」ファイルを書き込むことができるパスに設定します(もちろん、ファイルアクセス許可を確認します)。コマンドプロンプトで:

set RANDFILE=C:\MyDir\.rnd
openssl genrsa -out my-prvkey.pem 1024

詳細説明:Windows上のOpenSSLは、「ランダム状態」ファイルを次の順序で保存しようとします。

  1. RANDFILE環境変数から取得したパス
  2. HOME環境変数が設定されている場合:$ {HOME} \。rnd
  3. C:\。rnd

あなたの場合、C:\。rndに保存しようとすることはかなり確信しています(十分なアクセス権がないため失敗します)。残念ながら、OpenSSLは、エラーメッセージで実際に使用しようとしているパスを出力しません。

106
sirgeorge

コマンドラインに次の行を入力してください:

set RANDFILE=.rnd
28
eliprodigy

また、管理者としてコンソールを実行する必要がある場合もあります。 Windows 7では、ホールド ctrl+shift コンソールウィンドウを起動したとき。

28
alile

またはこれはWindows PowerShellで

$env:RANDFILE=".rnd"
4
konzo

.rndファイルの場所が見つからなかったため、管理者としてcmdを実行しました。

3
Vu Doan