0

私はこれについて話している:

$ openssl passwd -1 -salt thesalt thepassword
$1$thesalt$HAWpBmvUCutuyTS4JwevI.

PHP では、次のようになります。

crypt('thepassword', ('$1$'.'thesalt')); # this gives the same output as above

Ruby 1.9で同じフォーマットを実現しようとしています。Ruby の String#crypt がこれを行うと言われましたが、そうではありません。私はどこでも答えを探しましたが、何も見つかりませんでした。

何か役立つ場合は、Windows XP でこれを実行しようとしています。Ruby バージョン: ruby​​ 1.9.3p0 (2011-10-30) [i386-mingw32]

MD5 以外のものを使用するようにというコメントを避けるためだけに、できればそうします。この選択は私次第ではありません。

ありがとう。

編集:opensslにシェルアウトせずにこれを行いたいのは、必要なものに対して遅すぎるためです。

4

2 に答える 2

0

ダーン。私は同じことを望んでいました。

Rubyにない理由については、Ruby で openssl パスワードを生成するも参照してください。

于 2014-01-23T14:28:38.793 に答える
0

他のすべてが失敗した場合は、opensslバックティックを使用して実行可能ファイルを呼び出すことができます。

password = "thepassword"
salt = "thesalt"
hashed = `openssl passwd -1 -salt #{salt} #{password}`

puts hashed  # => $1$thesalt$HAWpBmvUCutuyTS4JwevI.
于 2012-03-19T03:38:00.303 に答える