2012-07-11 8 views
0

과 비교하면 인증에 실패합니다. 그러나 내가 stdout 해시를 인쇄하는 경우, 그것은 동일합니다. 누구나 잘못된 아이디어가 있습니까? 아무튼 그래서 당신의 passwordCheck 변수가 뒤에 줄 바꿈을 가지고 File#each에 의해 반환어떤 이유로 bcrypt 해시를

bob:$2a$10$1xNjCZxjv0R06qUm1lQEEeZ1uKuZ9ELQIkT2h5/TxCI9eHDurr.dW 

답변

1

선이 줄 끝에 줄 바꿈을 포함하지만, bcrypt는 해시를 생성 :

if File.exists?(passwdFile) 
    File.open("#{passwdFile}",'r').each do |account| 
     @account = account.split(':') 
     usernameCheck = @account[0] # Stored username 
     passwordCheck = @account[1] # Stored hashed password 
     if username == usernameCheck 
     # Create hash for given password to compare againts our stored one. 
     password_hash = BCrypt::Engine.hash_secret(password, password_salt) 
     puts "#{password_hash}" 
     puts "#{passwordCheck}" 
     if passwordCheck == password_hash 
      @log.info 'Successfull authentication' 
      return true 

는 암호 파일은 다음과 같다 '티.

chomp

+0

물론 줄 바꿈을 제거 할 수 있습니다! 감사! – daemonza

관련 문제