この記事はアピリッツの技術ブログ「DoRuby」から移行した記事です。情報が古い可能性がありますのでご注意ください。
こんにちは、KBMJの中平@railsエンジニアです。
今回はrubyでパスワード生成する方法を書きたいと思います。
これは、私がユーザー登録のプログラム作成時などで、自動的にランダムな文字列のパスワードを生成する際に使っているrubyのパスワード生成コードを紹介いたします。
みなさんの参考になれば幸いです。
rubyのソースコードは以下になります。
pass_size = 12
a = (‘a’..’z’).to_a + (‘A’..’Z’).to_a + (‘0’..’9′).to_a
password = Array.new(pass_size){a[rand(a.size)]}.join
簡単にソースコード説明いたしますと
まず、パスワード生成に使用する文字を配列に格納します。(今回は英数字)
それを、パスワード登録で必要な文字数分(ここでは12文字)配列からランダムに一文字ずつ取得し、
別配列に入れた後、 それを文字列に変換しているだけの単純なプログラムになります。
パスワード生成はいろいろやり方はあると思いますが、
これはrubyでの一例になりますので、参考にしていただければと思います。