タグ

DBと#rubyに関するmytechnoteのブックマーク (1)

  • Rubyを用いたログインのセキュリティについて - Qiita

    ログイン分野において最も重要なのは、 全てのパスワードに常にソルトとハッシュをかける ことである。 ソルトとは、ユーザごとに設定したパスワードが同じものであっても、ハッシュによって得られる値がユーザによって違うものになるようにするプロセスである。 ソルト化しなかったパスワードはレインボー攻撃に弱くなる。 (ここではレインボー攻撃については割愛する) 次は、ソルトを適用したログイン名とパスワードの例である。 # -*- coding: utf-8 -*- require 'digest/sha1' $hashes = { } $salts = { } def hash(password, salt) # hash化の際にsaltを含む Digest::SHA1.hexdigest("#{salt}#{password}") end def generate_salt(login) Diges

    Rubyを用いたログインのセキュリティについて - Qiita
  • 1