MD5로 서명 할 때 비밀이 끝나는 것이 왜 중요한가?


16

MD5 알고리즘을 사용하여 임의의 정보에 서명 할 때 공유 비밀이 끝나야한다고 종종 말합니다. 왜?


2
'종종 말했다'고 말하는 대신 더 구체적으로 설명해 주시겠습니까? 참고 문헌을 인용 할 수 있고 문제가 왜 관련이 있는지에 대해서도 설명 할 수 있습니까?
Suresh Venkat

질문 제목에 오타가 있습니다. "and"를 "end"로 변경할 수 있습니까?
Carlos Scheidegger

답변:


16

의 "확장 공격"을 참조하십시오 Merkle-Damgard 구성 . 이 문제는 해시 함수를 사용할 때 발생합니다. 메시지 인증을 합니다 .

요컨대, 비밀을 처음에두면 공격자는 메시지와 해시가 주어지면 주어진 메시지를 접두어로 사용하는 모든 메시지를 위조 할 수 있습니다. 이는 순진한 코드의 문제이지만 HMAC 와 같은 잘 알려진 코드에서는 피할 수 있습니다.


1
입력 스트림을 끊고 공유 키가 스트림의 시작 부분 인 경우 첫 번째 블록은 거의 항상 동일한 해시를 얻으므로 무지개 공격을 사용하여 공유 키를 추측 할 수 있습니다.
Alexandru
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.