2010-05-16 2 views
3

F2F 네트워크 응용 프로그램에 대한 아이디어를 가지고 방금 보안 통신에 대해 읽었습니다. TLS/SSL을 프로토콜 수준에서 공개 키 암호화를 사용하므로 내 요구에 완벽하기 때문에 모든 통신의 기초로 TLS/SSL을 사용한다는 생각에 빨리 정착했습니다. 그러나 TLS의 최신 버전 인 SSLv3은 MD5와 SHA-1의 혼합을 사용한다는 사실에 놀랐습니다. "이 알고리즘 중 하나에서 취약점이 발견되면 다른 하나는 SSLv3을 손상시키지 못하기 때문에 MD5와 SHA-1이 혼합되어 있습니다." 그러나, 나는 그것을 받아, 요즘 모두 결함이 발견되었습니다!TLS/SSLv3이 안전하지 않습니까?

따라서 내 질문은 다음과 같습니다.
기본적으로 SSLv3에 결함이 있거나 충분히 읽지 않았습니까?
그렇다면 SSLv3에 대한 "안전한"대안이 있습니까?

+0

더 파고 나면 TLS 1.2를 지정하는 RFC5246을 발견했습니다. http://tools.ietf.org/html/rfc5246#section-1.2 흥미롭게도 이미 문제를 해결했지만 불행히도 구현이있는 것 같습니다. 여전히 뒤에 : http://old.nabble.com/TLS-1.2-Support-td22843864.html 그럼에도 불구하고 누구에게나 좋은 대안이 있습니까? – CSkau

+0

Windows 7은 TLS 1.2를 구현했습니다. – Nasko

답변

4

TLSv1 및 모든 이전 SSL 버전에서 사용 된 PRF는 MD5 및 SHA1의 xor를 사용합니다. 두 해시 알고리즘 모두에 대한 충돌이 가능합니다. MD5 충돌은 훨씬 쉽게 생성됩니다. 위키 백과에서 2^24 MD5 대 2^63 SHA1 작업. TLSv2에서 하드 코딩되지 않고 PRF는 이전 버전의 SSL에서 기본 암호와 동일한 방식으로 협상 될 수 있습니다. TLSv2의 초기 구현은 혼합되지 않은 SHA2입니다.

그러나 해시가 충돌에 취약하기 때문에 반드시 모든 응용 프로그램에 안전하지는 않습니다.

예를 들어 원래 서명을 유지하는 방식으로 데이터를 변경하는 것이 매우 쉽기 때문에 취약한 해시 만 사용하여 파일의 서명을 확인하는 것은 매우 위험합니다. (충돌을 찾아 냄으로써)

PRF (Pseudo random function)의 경우 입력 비밀을 얻기 위해 역 공학 할 수없는 비밀 지식을 기반으로 예측 가능한 출력을 제공합니다. 이 경우 충돌을 성공적으로 검색하는 것이 이전 사례만큼 유용하지는 않습니다.

히스토리가 훨씬 더 심각한 취약점에 대한 미래 발견에 대한 문호를 열 수 있음을 보여 주므로 충돌을 찾는 것은 해시 알고리즘을 사용하는 것과 관련되어 있어야합니다.

개인적으로 TLS에 대해 가장 경고하는 것은 MD5/SHA1이 루트 인증서와 중간 인증서 간의 트러스트 체인을 확인할 때 서명 확인에 일반적으로 사용되는 이전 사례입니다. 충돌을 발생시켜 중개자를 단련하는 것이 성공적으로 입증되었습니다.

+0

TLS <1.2의 해시는 배타적 논리합이 아니므로 본질적으로 모든 입력에 대해 가장 강한 것만 큼 해시를 얻습니다. –

+0

사실이 아닙니다. RFC 2246의 초 5부터 : PRF (secret, label, seed) = P_MD5 (S1, label + seed) XOR P_SHA-1 (S2, label + seed); – Einstein

+0

죄송합니다, 실수. –

5

MD5 및 SHA-1의 약점은 TLS에서 MD5 및 SHA-1의 사용에 영향을 미치지 않습니다. 그러나 MD5 또는 SHA-1 사용으로 인해 TLS가 허용되지 않는 경우 (예 : MD5 및 SHA-1을 단계적으로 중단해야하는 규제 또는 악의적 인 홍보 활동을 발견했기 때문에) SSH을 조사 할 수 있습니다. 유사한 개념을 사용합니다.

+0

MD5/SHA-1의 약점이 왜 적용되지 않는지 배우는 데 관심이 있습니다. 어떤 버전이 사실입니까? – LamonteCristo

+2

MD5 및 SHA-1의 알려진 취약점은 충돌입니다. SSL/TLS (모든 버전)에서 MD5 및/또는 SHA-1은 의사 난수 생성, 디지털 서명 및 무결성 검사에 사용됩니다. 이러한 용도 중 어떤 것도 충돌에 의해 영향을받지 않습니다. 그들은 MD5 및 SHA-1이 이전과 같이 견고한 (즉, 아직 알려진 약점이 없음) 프리 이미지 저항 (및 일부 관련 속성)에 의존합니다. –

관련 문제