인터락 프로토콜
Interlock protocol론 리베스트와 아디 샤미르에 의해 기술된 인터락 프로토콜은 그들의 대화를 확보하기 위해 익명의 키 교환 프로토콜을 사용하는 두 당사자에 대한 도청 공격을 좌절시키기 위해 고안되었다.추가 논문에서 인증 프로토콜로 사용할 것을 제안했고, 이후 이 프로토콜은 깨졌다.
간략한 역사
대부분의 암호 프로토콜은 비밀키나 공개키나 암호의 사전 설정에 의존한다.그러나 디피-헬만 키 교환 프로토콜은 그러한 사전 합의 없이 양 당사자가 보안 채널(최소한 일부 바람직한 보안 속성으로)을 구축한다는 개념을 도입했다.인증되지 않은 디피-헬만(Hellman)은 익명의 핵심 합의 프로토콜로서, 오랫동안 중간 공격에서 인간의 대상이 되는 것으로 알려져 왔다.그러나 상호 인증된 '지우울림' 보안 채널의 꿈은 여전했다.
인터락 프로토콜은 익명의 핵심 합의서를 이용해 대화를 확보하는 두 당사자를 타협할 가능성이 있는 중간 인물을 폭로하는 방법으로 묘사됐다[1].
작동 방식
인터락 프로토콜은 대략 다음과 같이 작동한다.
- 앨리스는 밥의 열쇠로 메시지를 암호화한 다음, 암호화된 메시지의 절반을 밥에게 보낸다.
- 밥은 앨리스의 열쇠로 자신의 메시지를 암호화하여 그의 암호화된 메시지의 절반을 앨리스에게 보낸다.
- 그러자 앨리스는 나머지 반의 메시지를 밥에게 보내고, 밥은 밥의 나머지 반을 보낸다.
프로토콜의 강점은 암호화된 메시지의 절반이 해독될 수 없다는 사실에 있다.따라서 말로리가 공격을 시작하고 밥과 앨리스의 열쇠를 가로챈다면, 말로리는 앨리스의 반메시지(암호화된 그녀의 열쇠)를 해독하지 못하고 밥의 열쇠로 다시 암호화 할 수 없게 된다.그녀는 그것을 읽으려면 양쪽의 메시지가 모두 수신될 때까지 기다려야 하며, 완전히 새로운 메시지를 작성해야만 정당 중 하나를 속이는 데 성공할 수 있다.
벨로빈/메리트의 습격
데이비스와 프라이스는 컴퓨터 네트워크의 보안이라는 책에서 인증을 위한 인터락 프로토콜의 사용을 제안했다.[2]그러나 이에 대한 공격은 스티븐 M. 벨로빈과 마이클 메리트에 의해 묘사되었다.[3]이후 엘리슨에 의해 정교함이 제안되었다.[4]
벨로빈/메리트 공격은 제1자에게 보낼 가짜 메시지 작성을 수반한다.비밀번호는 다음과 같이 A와 B의 인터락 프로토콜을 이용하여 송신할 수 있다.
A B Ea,b(Pa)<1----------------------------------------------------------에아,b(Pb) 2
여기서 Ea,b(M)는 Diffie-에서 파생된 키로 암호화된 메시지 M이다.A와 B의 헬맨 교환, <1>/<2>는 상·하반기, Pa/Pb는 A와 B의 패스워드다.
공격자 Z는 A:에서 Pa를 끌어내기 위해 가짜 메시지의 절반인 P?를 보낼 수 있다.
A Z B Ea,z(Pa)<1>------> <------Ea,z(P?)<1> Ea,z(Pa)<2>------> Ez,b(Pa)<1>------> <------Ez,b(Pb)<1> Ez,b(Pa)<2>------> <------Ez,b(Pb)<2>
이 시점에서 Z는 Pa와 Pb 모두를 위태롭게 했다.암호는 부분 검증으로 물리칠 수 있어 Ea,z(P?)<1>을 보낼 때 무효라고 알려지고 Ea,z(Pa)<2>는 절대 보내지 않는다(데이비스가 제안함).그러나, Bellovin에 따르면, 해시의 절반은 쓸모없기 때문에 해시일 때는 이것이 작동하지 않는다.[3]또한 에 제안된 몇 가지 다른 방법이 있는데,[5][6][7][8] 여기에는 암호 외에 공유 암호를 사용하는 것이 포함된다.또한 강제적인 지연 시간 강화는 특정 공격을 예방할 수 있다.
강제 지연 인터록 프로토콜
이 섹션은 검증을 위해 추가 인용구가 필요하다.(2010년 5월)(이를 과 시기 |
수정된 인터락 프로토콜은 B(서버)가 알려진 기간 동안 모든 응답을 지연하도록 요구할 수 있다.
A B Ka-----------------------------------------------------------Kb Ea,b(Mb)<1><1><1><B는 응답을 일정시간 지연시키고 T) Ea,b(Mb)<2> <-----에아,b(Mb)<2><2><-----------자료 ->
여기서 "데이터"는 인터락 프로토콜 교환을 즉시 따르는 암호화된 데이터로, 메시지의 전송 중 수정을 방지하기 위해 전부 또는 아무것도 아닌 변환을 사용하여 인코딩된다.Ma<1>은 암호화된 요청과 카의 사본을 포함할 수 있다.Ma<2>는 Ma[1]에 대한 암호 해독 키를 포함할 수 있다.Mb<1>에는 암호화된 Kb 복사본이 포함될 수 있으며, Mb<2>에는 Mb<1>에 대한 암호 해독 키와 OK 또는 NOT Found와 같은 응답과 데이터의 해시 다이제스트가 포함될 수 있다.
MITM은 벨로빈 논문(Z는 가운데의 사나이)에 설명된 공격을 사용하여 시도할 수 있다.
AtoZBKa------------->, Kz------------->,<-------------Kz<,-----------Kb Ea,z(마)<, 1>.--><--Ea,z(Mz)<, 1>,(지연 반응)Ea,z(마)<, 2>.-->Ez,b(마)<, 1>.--->,<---Ez,b(메가 SD)<, 1>,(지연 반응)<--Ea,z(Mz)<, 2&g.t;Ez,b(마)<, 2>.--->,<---Ez,b(메가 SD)<.2> (신호응답) <------------데이터 <--------------데이터
이 경우, Z는 B와 연동 교환을 실시해야 하기 때문에 A는 대략 3*T 이후 데이터를 수신한다.따라서 시도된 MITM 공격을 탐지하여 세션을 중단할 수 있다.
물론 Z는 B와 인터락 프로토콜을 수행하지 않는 것을 선택할 수 있었지만(그 대신 자신의 Mb를 보내는 선택) 그러면 세션은 A와 Z 사이에 있을 것이고 A, Z와 B:Z는 중간에 있지 않을 것이다.이 때문에 인터락 프로토콜은 제3자가 감지 없이 전송 중인 메시지를 수정할 수 없도록 보장할 수는 있지만, 인증 제공에 효과적으로 사용할 수 없다.
참고 항목
참조
- ^ R. 리베스트와 A.샤미르도청자를 노출시키는 방법.CACM, Vol. 27, 1984년 4월 페이지 393-395 [1]
- ^ D. W. 데이비스와 W. L. 프라이스.컴퓨터 네트워크의 보안.존 와일리 & 선즈, 1989년 2부.
- ^ a b S. M. 벨로빈과 M.메리트.인증에 사용되는 인터락 프로토콜에 대한 공격(PDF). I.E.E.E.E.정보 이론에 관한 거래, v. 40, n. 1, 1994년 1월, 페이지 273-275.
- ^ C. 엘리슨인증 기관 없이 ID 설정.1996년 7월 제6회 USENIX 보안 심포지엄 산호세, 페이지 67-76.
- ^ R. H. 모리스와 K.Thompson, "Unix 비밀번호 보안", ACM의 통신, Vol. 22, 페이지 594, 1979년 11월
- ^ F. T. 그램프와 R.H Morris, "Unix 운영 체제 보안", AT&T Bell Laboratories Technical Journal, vol. 63 페이지 1649-1672, 1984년 10월
- ^ D. V. Klein, "Foiling the Cracker": USENIX UNIX Security Workshop, (포트랜드), 5-14페이지, 1990년 8월.
- ^ 렁과 C.Tham, Proc에서 "유닉스 암호 암호화가 안전하지 않다고 간주됨". Winter USENIX Conference, (Dallas), 1000