2011-02-08 3 views

답변

20

HMAC에서 사용될 때 SHA-1의 현재 알려진 취약점은 PBKDF2에서 사용될 때 a fortiori의 보안에 영향을 미치지 않습니다. 그 문제 때문에 MD5도 괜찮을 것입니다 (그러나 MD4는 아닙니다).

그러나 SHA-1은 홍보 활동으로 적합하지 않습니다. 2011 년 SHA-1을 사용한다면 그 선택을 정당화해야합니다. 다른 한편, SHA-256은 훌륭한 기본 기능이며 아무도 그것에 대해 질문하지 않습니다.

PBKDF2에는 성능 문제가 없습니다 (PBKDF2는 "반복 횟수"가 필요하므로 느리게 만듭니다). 따라서 SHA-1보다 SHA-1을 선호하는 이유는 거의 없습니다. 그러나 이 이미 인 경우 PBKDF2-with-SHA-1을 사용하는 시스템을 배포하면 즉각적인 수정이 필요하지 않습니다.

+1

[Stack Crypto] (http://crypto.stackexchange.com/questions/15218/is-pbkdf2-hmac-sha1-really-broken)에도 꽤 좋은 설명이 있습니다. 간단히 말해서 암호 충돌은 나쁜 것이 아니며 악의적 인 사용자 (또는 유효한 사용자)가 원래의 "실제"암호로 돌아갈 수있는 것이 아니라 서로 다른 두 개의 암호로 로그인 할 수 있음을 의미합니다. –

0

많은 공개적인 혼란을 야기한 SHA1에 대한 공격으로 다른 메시지와 동일한 해시를 갖는 메시지를 구성 할 수 있습니다. 해시 함수는 입력 비트보다 출력 비트가 적기 때문에 모든 해시 함수에 대해 (원칙적으로) 항상 가능합니다. 그러나 일반적으로 우발적으로 발생하는 것은 아니며 의도적으로 수행하는 것은 계산 상 불가능합니다.

"메시지 무결성 보장"관점에서 볼 때 재앙으로 간주 될 수 있습니다.

한편, 난수 생성을 위해 이것은 전혀 영향을주지 않습니다.

0

확실히. 더 많은 핵심 자료를 생성하려면 SHA-256 이상이 더 효율적일 수 있습니다. 하지만 PBKDF2-HMAC-SHA1이 좋습니다. 또한 표준 HMAC 사용은 손상되지 않았지만, 원칙적으로 더 긴 해시가이 시나리오에서 더 안전합니다.

관련 문제