네트워크 프로토콜 분석을 업으로 삼아 살아가고 있는 터라, 보통 1년에 10~15개정도의 프로토콜을 분석하는 편입니다. (물론 이거 말고도, 제품 엔진 작업이나 기타 여러 작업이 있는터라 프로토콜 분석쪽에 전념하고 있는 것은 아니지요.)
다양하고도 많은 프로토콜을 접하게 되는지라, 여러 프로토콜을 보고 있노라면 참 많은 생각이 듭니다. 정말 무식하게 짠 프로토콜도 있고, 감동을 먹을정도로 멋진 프로토콜도 있지요. 물론, 감사할 정도로 쉬운 녀석도 있는가하면, 진절머리가 날 정도로 복잡하고 어려운 프로토콜도 있답니다. (빌어먹을 오라클, MSN)
네트워크 프로토콜은 의외로 과도한 보안이 보안을 해치는 경우가 있습니다. 네트워크 솔루션은 그 통신내역에 의해 어느정도 투명성을 보장받지요. 솔루션 자체가 비밀정보나 프라이버시를 외부로 빼돌릴수 있으며, 이 가능성은 해당 네트워크 솔루션이 어떤 내용의 통신을 하고 있는지를 보면 어느정도 판단이 가능합니다. 리버스 엔지니어링에 의한 솔루션의 Clearness 보장이지요. 물론, 통신내역을 볼 수 있다는 것 자체가 개인정보의 유출 가능성을 항상 내재하고 있는 것이긴 합니다만, 솔루션 자체에 의한 정보유출 역시 무시할 수 없습니다. (Sony에서 발매된 CD에 들어있는 백도어를 생각해보면…)
Skype는 이런 면에서 Clearness를 전혀 보장받지 못합니다. 네트워크 통신내역을 분석해보면, 전혀 내용을 알 수 없을 뿐더러 어떤 패턴조차도 찾기 힘듭니다. 아마, 내용에 쓰레기값을 추가한 뒤 암호화를 해서 전송하는 것으로 보입니다. (PKI방식으로 추측되며, 키교환시에도 모종의 암호화가 사용되는 것으로 보입니다. 물론, 키교환시에도 쓰레기값이 추가됩니다. – 크기가 랜덤) 이것은 Skype의 제작사에서 사용자 정보를 유출시키는 backdoor류의 코드를 Skype에 탑재할경우 대책이 서지 않는다는 이야기입니다. 무엇이 나가는지, 어떤 정보가 유출되고 있는지 사용자는 알길이 없다는 것이지요. 더 무서운 점은 Skype의 극단적인 암호화 방벽을 뚫고 들어와 악성코드를 실행시킬 가능성입니다. 이런 경우, 현실적으로 악성코드만 걸러낼 수 있는 방법은 없다고 보여집니다.
사용자의 정보의 유출이 방지된다는 측면에서 Skype는 압도적인 우위를 점합니다. Kazaa의 P2P네트워크 기술에 기반한 분산처리와 극단적인 암호화 정책은 Skype에 대한 네트워크 제어 및 모니터링을 굉장히 힘들게 만들고 있으며, 이는 정말 멋지게 잘 만든 프로토콜이란 이야기이기도 합니다. 하지만, Skype의 소스코드는 공개되어있지도 않으며, 위의 이유로 제어도, 모니터링도 힘든 상태입니다. 소스코드가 공개라면 이야기가 달라지겠지만, 그렇지 않은 상황에서는 대형사고의 가능성이 점쳐집니다. 특히나 기업 네트워크에서는 말이죠. 생각만해도 끔찍한 악몽입니다.
저울질의 문제입니다. 하지만, 네트워크 상에서 정말로 보호받아야 할 통신내역이 있다면, GnuPG같은 걸로 암호화해서 메일을 쓰렵니다. 그게 제일 안전할테니까요. (아직 이정도까지 할 일은 없었습니다만..) 제게 있어 Skype는 “가까이 하기엔 너무 무서운 당신”이랍니다. 이런 이유로 저는 Skype를 믿지 않습니다. Skype를 설치한다는 것 자체가 껄끄럽습니다.
혹시 압니까? 터미네이터에 나오는 스카이넷처럼 될지. (오버 맞습니다. 농담입니다.. 하하 ^^)
Skype와 유사한 방식을 취하면서, Clearness를 보장받으며 대중적인 인기를 누릴 수 있는 오픈소스 솔루션이 있다면 참 좋겠다는 생각이 머릿속을 멤도는 아침입니다.
잘보고갑니다^^