사람들은 bcrypt
알고리즘을 사용하여 md5, sha1 및 sha256과 비교하여 속도가 느리다고 생각합니까?Bcrypt가 해독을 느리게하는 방법은 무엇입니까?
0
A
답변
2
BCrypt는 해싱의 많은 반복이 수행되는 방법을 제어하는 비용 요소을 가지고 있습니다. 이 비용 요소는 앞으로 더 빨라진 하드웨어에 적응하기 위해 증가 될 수 있습니다.
비용 요소는 2의 제곱으로 증가합니다. 즉, 비용 요소를 1만큼 증가 시키면 컴퓨팅 시간이 두 배 늘어납니다. 현재 권장 값은 서버에 따라 약 10-12입니다.
1
알고리즘의 SHA 계열은 큰 입력에 대해 해시를 효율적으로 생성하도록 설계되었습니다. 반면에 bcrypt
은 작은 입력에 대해 계산적으로 값 비싼 연산을 수행하도록 설계되었습니다 (대부분의 암호에 충분해야하지만 입력의 처음 72 바이트 만 사용됩니다).
특히, bcrypt
은 키 설정을 더 비싸게 만들기 위해 수정 된 Blowfish 블록 암호 버전에 대한 키 설정을 수행하기 위해 입력 salt 및 메시지를 사용합니다. 알고리즘은 그 암호문을 사용하여 알려진 일반 텍스트 (OrpheanBeholderScryDoubt
)를 암호화합니다. 이것이 입력 엔트로피에 72 바이트 제한이있는 이유입니다. Blowfish 알고리즘에는 초기화해야하는 제한된 수의 하위 키가 있습니다.
관련 문제
- 1. PHP Bcrypt가 Python3으로 이동
- 2. CCAnimation의 한 프레임 만 느리게하는 방법은 무엇입니까?
- 3. 코드를 통해 뼈 애니메이션을 느리게하는 방법은 무엇입니까?
- 4. Bcrypt가 설치되지 않습니다
- 5. SQL 쿼리를 느리게하는 방법?
- 6. 성공적인 설치 후 bcrypt가 실패합니다.
- 7. 이 jQuery 스크롤 스크립트에서 스크롤 속도를 더 느리게하는 방법은 무엇입니까?
- 8. 스레드를 느리게하는 가장 좋은 방법은 무엇입니까? 수면()을 사용하고 있습니까?
- 9. 할당 된 스크롤 휠 동작을 느리게하는 방법은 무엇입니까?
- 10. Delphi : IdHTTP.ConnectTimeout이 요청을 느리게하는 이유는 무엇입니까?
- 11. 비동기 NSURLConnection이 iOS에서 UI를 느리게하는 이유는 무엇입니까?
- 12. 기본 키가 내 쿼리를 느리게하는 이유는 무엇입니까?
- 13. 사인파를 느리게하는 방법?
- 14. ios 프로세스를 느리게하는 방법
- 15. javafx 애니메이션을 느리게하는 방법
- 16. grep을 느리게하는 대안
- 17. 인공 지능을 느리게하는 방법?
- 18. MKMapCamera 이동을 느리게하는 방법?
- 19. Java에서 암호 해독을 위해 IV를 얻는 방법은 무엇입니까?
- 20. mysql에서 암호 해독을 통해 원본 데이터를 보는 방법은 무엇입니까?
- 21. StAX를 사용하여 xml에서 암호화/암호 해독을 수행하는 방법은 무엇입니까?
- 22. Bcrypt가 해싱 또는 암호화에 사용됩니까? 약간의 혼란
- 23. 은 hmac'd passphrase로 bcrypt가 향상 되었습니까?
- 24. 안드로이드 카메라를 느리게하는 프레임 속도
- 25. Listview의 스크롤 속도를 느리게하는 방법?
- 26. while 루프가 스크립트를 느리게하는 동안
- 27. 커서 처리 속도를 느리게하는 방법
- 28. 개발 목적으로 MacOS에서 인터넷 연결을 느리게하는 방법
- 29. 암호화 : 문자열의 해독을 테스트하고 있습니까?
- 30. openssl : 암호 해독을 확인 하시겠습니까?
'bcrypt'는 느리게 설계되었으므로 보안 암호 해시 저장에 필요합니다. 요점은 침입자가 암호를 무차별하게 만드는 것입니다. MD5, SHA1, SHA256 등과 같은 단순한 암호가 있어도 소금을 추가하는 것은 안전하지 않으며, 공격자는 이러한 해시를 공통 암호 목록에 대해 신속하게 브 루핑 할 수 있습니다. – zaph