2012-06-25 2 views
0

무엇이 더 안전합니까?암호 용 Sha1 또는 암호화

CodeIgniter를 사용하고 있지만 Sha1을 사용할 수 있습니다. 암호화로 할 수있는 것처럼 이상한 이유가 필요한 경우이를 되돌릴 수 없습니다.

하지만 여전히 PHP에 다소 익숙합니다. sha1 암호를 별표로 표시 할 수있는 방법이 있다면 암호가 "lala123"이라고 표시되면 나에게 다음과 같이 표시됩니다. "*******"그리고 절대로 "lala123"이 보이지 않을 수도 있습니다. sha1로 할 수 있습니까? 그렇다면 나를 도와주세요. 그렇지 않으면 암호를 사용하는 것이 안전 할 때만 암호화를 사용합니다. 알려 주시기 바랍니다 :)

답변

2

해싱은 암호를 복원 할 수없는 매우 안전한 이유로 간주됩니다. 암호 데이터베이스가 손상되고 암호 암호화가 되돌릴 수 있으면 baddie가 해독 할 수 있습니다. 특히 암호 해독을 수행하는 코드도 손상된 경우 특히 유용합니다. SHA1은 의도적으로 되돌릴 수 없습니다.

UI에 비밀번호를 표시하지 않아도됩니다. *은 그저 - 임의의 수의 별입니다. 길이가 인 사용자의 비밀번호를 공개하는 것은 그 자체로 추측하려는 사람에게 상당한 힌트를 제공합니다.

+1

정보를 제공해 주셔서 감사합니다. 그 방법을 사용하지 않을 것이며, SHA1을 계속 사용하겠습니다. – unlucky4ever

2

아니요. 다른 사람이 암호 데이터베이스를 얻는 경우 해시를 사용하여 암호를 안전하게 유지해야합니다. 그러나 일치 의견은 this answer에 설명 된 bcrypt를 사용하는 것으로 보입니다. 복어를 기반으로하는 해시 함수로 다양한 비용으로 보안과 성능을 조정할 수 있습니다.