인터락 프로토콜

Interlock protocol

론 리베스트아디 샤미르에 의해 기술된 인터락 프로토콜은 그들의 대화를 확보하기 위해 익명의 키 교환 프로토콜을 사용하는 두 당사자에 대한 도청 공격을 좌절시키기 위해 고안되었다.추가 논문에서 인증 프로토콜로 사용할 것을 제안했고, 이후 이 프로토콜은 깨졌다.

간략한 역사

대부분의 암호 프로토콜은 비밀키나 공개키나 암호의 사전 설정에 의존한다.그러나 디피-헬만 교환 프로토콜은 그러한 사전 합의 없이 양 당사자가 보안 채널(최소한 일부 바람직한 보안 속성으로)을 구축한다는 개념을 도입했다.인증되지 않은 디피-헬만(Hellman)은 익명의 핵심 합의 프로토콜로서, 오랫동안 중간 공격에서 인간의 대상이 되는 것으로 알려져 왔다.그러나 상호 인증된 '지우울림' 보안 채널의 꿈은 여전했다.


인터락 프로토콜은 익명의 핵심 합의서를 이용해 대화를 확보하는 두 당사자를 타협할 가능성이 있는 중간 인물을 폭로하는 방법으로 묘사됐다[1].

작동 방식

인터락 프로토콜은 대략 다음과 같이 작동한다.

  1. 앨리스는 밥의 열쇠로 메시지를 암호화한 다음, 암호화된 메시지의 절반을 밥에게 보낸다.
  2. 밥은 앨리스의 열쇠로 자신의 메시지를 암호화하여 그의 암호화된 메시지의 절반을 앨리스에게 보낸다.
  3. 그러자 앨리스는 나머지 반의 메시지를 밥에게 보내고, 밥은 밥의 나머지 반을 보낸다.

프로토콜의 강점은 암호화된 메시지의 절반이 해독될 수 없다는 사실에 있다.따라서 말로리가 공격을 시작하고 밥과 앨리스의 열쇠를 가로챈다면, 말로리는 앨리스의 반메시지(암호화된 그녀의 열쇠)를 해독하지 못하고 밥의 열쇠로 다시 암호화 할 수 없게 된다.그녀는 그것을 읽으려면 양쪽의 메시지가 모두 수신될 때까지 기다려야 하며, 완전히 새로운 메시지를 작성해야만 정당 중 하나를 속이는 데 성공할 수 있다.

벨로빈/메리트의 습격

데이비스와 프라이스는 컴퓨터 네트워크의 보안이라는 책에서 인증을 위한 인터락 프로토콜의 사용을 제안했다.[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] 여기에는 암호 외에 공유 암호를 사용하는 것이 포함된다.또한 강제적인 지연 시간 강화는 특정 공격을 예방할 수 있다.

강제 지연 인터록 프로토콜

수정된 인터락 프로토콜은 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자가 감지 없이 전송 중인 메시지를 수정할 수 없도록 보장할 수는 있지만, 인증 제공에 효과적으로 사용할 수 없다.

참고 항목

참조

  1. ^ R. 리베스트와 A.샤미르도청자를 노출시키는 방법.CACM, Vol. 27, 1984년 4월 페이지 393-395 [1]
  2. ^ D. W. 데이비스와 W. L. 프라이스.컴퓨터 네트워크의 보안.존 와일리 & 선즈, 1989년 2부.
  3. ^ a b S. M. 벨로빈과 M.메리트.인증에 사용되는 인터락 프로토콜에 대한 공격(PDF). I.E.E.E.E.정보 이론에 관한 거래, v. 40, n. 1, 1994년 1월, 페이지 273-275.
  4. ^ C. 엘리슨인증 기관 없이 ID 설정.1996년 7월 제6회 USENIX 보안 심포지엄 산호세, 페이지 67-76.
  5. ^ R. H. 모리스와 K.Thompson, "Unix 비밀번호 보안", ACM의 통신, Vol. 22, 페이지 594, 1979년 11월
  6. ^ F. T. 그램프와 R.H Morris, "Unix 운영 체제 보안", AT&T Bell Laboratories Technical Journal, vol. 63 페이지 1649-1672, 1984년 10월
  7. ^ D. V. Klein, "Foiling the Cracker": USENIX UNIX Security Workshop, (포트랜드), 5-14페이지, 1990년 8월.
  8. ^ 렁과 C.Tham, Proc에서 "유닉스 암호 암호화가 안전하지 않다고 간주됨". Winter USENIX Conference, (Dallas), 1000

외부 링크