MSN 메신저 (or 프로토콜)의 라이센스가 어떻게 되나요?

행복한고니의 이미지

MSN 메신저와 연동되던 국내 메신저들이 MS측의 라이센스 정책변경으로 연동하지 않게된 것으로 알고 있는데요...
여전히 오픈소스 진영의 메신저들은 MSN 프로토콜을 지원하고 있지 않나요? 그렇다면 MSNM 의 라이센스가 특정 조건에만 제한적인 라이센스라는 얘기가 되는 것 같은데, 자료를 찾아보려해도 쉽게 찾아볼 수가 없네요.

Q&A 로 가는게 옳을 것도 같은데, 분류가 애매하네요.
뭘 만들어보려고 물어보는 것은 아니라... ^^;;

maddie의 이미지

글쎄요, 그건 리버스 엔지니어이기 때문에 허용이 되는 게 아닐까 싶습니다. 게다가 그걸로 돈을 벌려는 것도 아니구요. 아니면 icq를 죽이기 위해 방조하고 있거나 겠죠. 실상 기술적 스펙은 공개한 것으로 알고 있습니다.

힘없는자의 슬픔

Necromancer의 이미지

프로토콜 덤프를 떠서 분석한 뒤 개발한 것이지 정식으로 M$와 뭔가의 합의를 본 게 아니죠.
문제의 소지 있습니다.
네이트온 등등의 다른 메신저에서 MSN 접속 불가능한 것도 이와 연관이 있고요.
(개인이 몰래 어쩌구저쩌구 했다면 몰라도, 회사급이면 법적인 문제에서 자유로울 수 없습니다.)

그리고 MSN 접속 가능한 최신 프로토콜 버전까지도 다 덤프된 걸로 알고 있습니다.

Written By the Black Knight of Destruction

훌륭한녀석의 이미지

그럼 GAIM은 어떻게 되는겁니까?

Viz의 이미지

리버스 엔지니어링의 허용정도는...
아무래도 일관된 기준이 없어서죠.

원래는 리버스 엔지니어링은 제한할 수 없지만... MS에서는 이런저런 이유로 무지 제한하고 싶어하는듯. MS에게 못보여서 좋을게 없는 국내 기업들은 그래서 두손을 들어버린 것 같습니다.

아무튼... 순수한 리버스 엔지니어링 자체는 절대 불법이 될 수 없습니다만... 국내라던지, 국외(일반적으로 미국)에서 그렇다고 알고 있습니다.

ps. 뭐 많은 EULA에서 '이 제품에 대한 모든 리버스 엔지니어링을 불허한다.. 등등' 라는 문구를 볼 수 있지만... 이거야 회사와 사용자의 계약이니.. 민사의 문제여서 불법이다... 라고는 할 수 없는거죠. 그리고 해석이 논란이 있는지라..;; 법에서는 명백히 (연구목적등의) 리버스 엔지니어링은 허용된다고 되어 있습니다.( 미국의 밀레니엄 어쩌구-_- 하는 법에 언급되어 있습니다 )

My Passion for the Vision!

perky의 이미지

프로토콜의 라이선스는 저작권을 인정받기 힘듭니다. 일반적으로 저작물이 아니기 때문이죠.
프로토콜에 대해서는 특허권이나 프로토콜의 실제 구현에 대한 리버스 엔지니어링에 대한 저작권법 제한 조항을 이용한 제재가 가능합니다.
그러나, 특허권은 출원이 되어 있어야 소송이 가능하고, 구현의 저작권에 대한 리버스 엔지니어링으로 실제로 걸고 넘어지는 경우는 저작권법이 친고죄에 해당하기 때문에 회사에 아주 치명적인 영향을 미치는 경우이거나 망하기 직전의 회사가 아니라면 보통은 협박선에서 끝납니다.
또한, MSNM의 프로토콜같은 경우에는 네덜란드나 덴마크같은 합법적으로 호환성 목적의 리버스 엔지니어링과 그 파생 저작물의 재배포가 허용되는 국가에 국적을 가진 프로그래머가 구현한 것으로 법적으로 처리하면, 오픈소스 프로그램들에서도 그 구현된 소스를 사용 가능합니다. 단, 미국의 DMCA처럼 모호한 판단 기준이 들어가 있는 저작권법을 채택한 나라들은 수입조차도 문제가 있을 수 있긴 합니다. 그렇지만 우리나라는 아직은 안전한 편입니다.

You need Python

행복한고니의 이미지

그렇다면 단순히 M$의 눈치를 보느라 연동은 안한다는 건가요? 혹은 골치아픈 일에 휘말리기 싫어서라거나... 어쨌거나 법적인 문제는 아니라는 건가요?
빵집 제작자인 양병규님 홈페이지에서 alz 포맷에 관한 글 중 리버스 엔지니어링이 인정되었던 판례가 있다고 들었는데, MSNM도 마찬가지로 문제가 안되는걸까요?
제 상식으로는 관계없을 것 같은데 말이죠... 단 하나 꺼림칙한게 있다면, MSN 서버를 이용하게 된다는거죠. 프로토콜 규약을 사용한다 안한다가 문제가 아니라, 그걸로 태클걸까봐 더 걱정됩니다. ^^;;

__________________________________
나는 세상에서 가장 중요한 사람이다.

perky의 이미지

행복한고니 wrote:
그렇다면 단순히 M$의 눈치를 보느라 연동은 안한다는 건가요? 혹은 골치아픈 일에 휘말리기 싫어서라거나... 어쨌거나 법적인 문제는 아니라는 건가요?

법적인 문제는 있지만, 실질적으로 MS가 그걸로 법적인 대응을 할 가능성이 극히 희박하기 때문에 사실상 별 문제가 없다는 말씀이었습니다. 큰 회사는 아무래도 작은 가능성도 무시할 수 없고, MS와 공식적인 관계도 유지해야하기 때문에 이런 법적인 문제를 무시하고 지나갈 수 없죠. 특히나 MS의 라이선스들은 특허권이나 저작권 사용에 대해서 상호 인정을 요구하는 조항이 많아서, 큰 회사일 수록 쓰는 소프트웨어가 많은 경우 잡힐 꼬투리가 많아집니다.

행복한고니 wrote:
빵집 제작자인 양병규님 홈페이지에서 alz 포맷에 관한 글 중 리버스 엔지니어링이 인정되었던 판례가 있다고 들었는데, MSNM도 마찬가지로 문제가 안되는걸까요?

한국의 저작권법에서는 호환성 목적의 리버스 엔지니어링까지는 인정되지만, 그 파생 저작물의 타인 배포를 금지하고 있습니다. 따라서, 한국 사람이 리버스 엔지니어링으로 한국에 등록된 저작물의 권리를 침해하는 것은 불법입니다. 그렇지만, MSNM의 경우에는 지금 리버스 엔지니어링이 아니면 도저히 해결할 수 없다고 주장할 수 있는 유일한 부분인 QRY 메시지의 경우에도 라운드로빈 시도로 리버스 엔지니어링을 안 거치고도 똑같이 따라할 수 있기 때문에, 어떻게 판결될 지는 변호사를 얼마나 비싼 (그리고 능력있는) 사람을 고용할 수 있는가로 결정된다고 볼 수 있습니다. 그리고, 이런 저작권 문제나 약관의 관련 조항 문제는 회사에서도 가급적이면 대부분 법원으로 끌고가지 않으려는 특징이 있습니다. 법원에서 명백히 판결이 나와서 뭐는 약관에서 인정되고 뭐가 약관에서 인정이 되지 않는가가 정확하게 구분이 된다면, FUD(Fear, Uncertainity and Doubt)에 의한 잠재적인 약관의 효용이 없어지게 되기 때문에 보통 오히려 우회적인 방법으로 스스로 피해를 입는 길을 열어주는 꼴이 되는 경우가 많습니다.

행복한고니 wrote:
제 상식으로는 관계없을 것 같은데 말이죠... 단 하나 꺼림칙한게 있다면, MSN 서버를 이용하게 된다는거죠. 프로토콜 규약을 사용한다 안한다가 문제가 아니라, 그걸로 태클걸까봐 더 걱정됩니다. ^^;;

이 부분에 대해서도 통상적으로 망하기 직전의 회사이거나 돈벌이에 직접적으로 관련이 되지 않는 한은 법원까지 끌고갈 이유가 별로 없습니다. 특히 MS의 경우에는 당분간은 전혀 걱정 안 해도 된다고 할 수 있겠죠. 단지 걱정해야할 것은 SCO의 사례처럼 MS가 다른 망해가는 회사를 부추기는 경우입니다.

You need Python

방준영의 이미지

인터페이스는 저작권 보호 대상이 아니기 때문에 프로토콜을 리버스하는 것은 완전히 합법적인 행위입니다. 그런 면에서 볼 때 국내 업체들의 몸사리기는 다소 이해가 가지 않기도 합니다. 뭔가 말못할 속사정이 있는 건지..

그리고 DMCA를 약간 오해한 분이 계신 것 같은데, DMCA는 일반적인 리버스 엔지니어링을 금지하는 것이 아니고, 복사 방지 장치를 푸는 행위를 금지한 것입니다.

Necromancer의 이미지

통합코덱의 경우는 리버스 엔지니어링이 아니라 상용 소프트웨어의 코덱을
뽑아서 가공한 다음 합했기 때문에 문제가 된거죠.

그런데 최신버전에서는 코덱이 별로 없던데 -_- mplayer에서 재생되는 avi 파일들
다 재생 안되고

Written By the Black Knight of Destruction

sangheon의 이미지

IVY 라는 국산 메신저가 MSN 연동이 됩니다.

--

Minimalist Programmer

perky의 이미지

방준영 wrote:
인터페이스는 저작권 보호 대상이 아니기 때문에 프로토콜을 리버스하는 것은 완전히 합법적인 행위입니다. 그런 면에서 볼 때 국내 업체들의 몸사리기는 다소 이해가 가지 않기도 합니다. 뭔가 말못할 속사정이 있는 건지..

변호사의 능력에 따라서 리버스 엔지니어링 없이는 따라하기가 불가능하다고 주장할 수 있는 부분이 있기 때문입니다. MSNM의 NS프로토콜에서 CHL과 QRY메시지는 MSNPv6에서 추가됐는데, 서버가 보내는 메시지에 알 수 없는 프로그램 속의 문구와 MD5를 해서 결과값을 서버로 보내주도록 되어있습니다. 프로토콜 스펙과 법적인 논의는 http://www.hypothetic.org/docs/msn/sitev2.0/notification/pings_challenges.php 에서 보실 수 있습니다.

방준영 wrote:
그리고 DMCA를 약간 오해한 분이 계신 것 같은데, DMCA는 일반적인 리버스 엔지니어링을 금지하는 것이 아니고, 복사 방지 장치를 푸는 행위를 금지한 것입니다.

DMCA 1201의 (f)항입니다.

(f) Reverse Engineering. -

  • (1) Notwithstanding the provisions of subsection (a)(1)(A), a person who has lawfully obtained the right to use a copy of a computer program may circumvent a technological measure that effectively controls access to a particular portion of that program for the sole purpose of identifying and analyzing those elements of the program that are necessary to achieve interoperability of an independently created computer program with other programs, and that have not previously been readily available to the person engaging in the circumvention, to the extent any such acts of identification and analysis do not constitute infringement under this title.
  • (2) Notwithstanding the provisions of subsections (a)(2) and (b), a person may develop and employ technological means to circumvent a technological measure, or to circumvent protection afforded by a technological measure, in order to enable the identification and analysis under paragraph (1), or for the purpose of enabling interoperability of an independently created computer program with other programs, if such means are necessary to achieve such interoperability, to the extent that doing so does not constitute infringement under this title.
  • (3) The information acquired through the acts permitted under paragraph (1), and the means permitted under paragraph (2), may be made available to others if the person referred to in paragraph (1) or (2), as the case may be, provides such information or means solely for the purpose of enabling interoperability of an independently created computer program with other programs, and to the extent that doing so does not constitute infringement under this title or violate applicable law other than this section.
  • (4) For purposes of this subsection, the term ''interoperability'' means the ability of computer programs to exchange information, and of such programs mutually to use the information which has been exchanged.

호환성 목적의 리버스 엔지니어링과 저작물의 배포는 허용하고 있지만 "independently developed" 등 몇가지 상황에 따라 다르게 해석할 수 있는 문구가 숨어있습니다.

[/]

You need Python

방준영의 이미지

perky wrote:
방준영 wrote:
인터페이스는 저작권 보호 대상이 아니기 때문에 프로토콜을 리버스하는 것은 완전히 합법적인 행위입니다. 그런 면에서 볼 때 국내 업체들의 몸사리기는 다소 이해가 가지 않기도 합니다. 뭔가 말못할 속사정이 있는 건지..

변호사의 능력에 따라서 리버스 엔지니어링 없이는 따라하기가 불가능하다고 주장할 수 있는 부분이 있기 때문입니다. MSNM의 NS프로토콜에서 CHL과 QRY메시지는 MSNPv6에서 추가됐는데, 서버가 보내는 메시지에 알 수 없는 프로그램 속의 문구와 MD5를 해서 결과값을 서버로 보내주도록 되어있습니다. 프로토콜 스펙과 법적인 논의는 http://www.hypothetic.org/docs/msn/sitev2.0/notification/pings_challenges.php 에서 보실 수 있습니다.


리버스 엔지니어링이 불법의 소지가 있다면 마이크로소프트는 클론을 차단하기 위해 프로토콜을 변경할 필요도 없습니다. 그냥 관련 업체를 고소하기만 하면 됩니다. 단지 도메인 발음이 비슷하다는 이유로 개인 사이트 운영자를 위협하는 회사라면 그 정도는 아주 쉽게 할 수 있었겠죠.

Quote:
방준영 wrote:
그리고 DMCA를 약간 오해한 분이 계신 것 같은데, DMCA는 일반적인 리버스 엔지니어링을 금지하는 것이 아니고, 복사 방지 장치를 푸는 행위를 금지한 것입니다.

DMCA 1201의 (f)항입니다.

(f) Reverse Engineering. -

  • (1) Notwithstanding the provisions of subsection (a)(1)(A), a person who has lawfully obtained the right to use a copy of a computer program may circumvent a technological measure that effectively controls access to a particular portion of that program for the sole purpose of identifying and analyzing those elements of the program that are necessary to achieve interoperability of an independently created computer program with other programs, and that have not previously been readily available to the person engaging in the circumvention, to the extent any such acts of identification and analysis do not constitute infringement under this title.
  • (2) Notwithstanding the provisions of subsections (a)(2) and (b), a person may develop and employ technological means to circumvent a technological measure, or to circumvent protection afforded by a technological measure, in order to enable the identification and analysis under paragraph (1), or for the purpose of enabling interoperability of an independently created computer program with other programs, if such means are necessary to achieve such interoperability, to the extent that doing so does not constitute infringement under this title.
  • (3) The information acquired through the acts permitted under paragraph (1), and the means permitted under paragraph (2), may be made available to others if the person referred to in paragraph (1) or (2), as the case may be, provides such information or means solely for the purpose of enabling interoperability of an independently created computer program with other programs, and to the extent that doing so does not constitute infringement under this title or violate applicable law other than this section.
  • (4) For purposes of this subsection, the term ''interoperability'' means the ability of computer programs to exchange information, and of such programs mutually to use the information which has been exchanged.

호환성 목적의 리버스 엔지니어링과 저작물의 배포는 허용하고 있지만 "independently developed" 등 몇가지 상황에 따라 다르게 해석할 수 있는 문구가 숨어있습니다.


independent란, 예를 들면 MSN 메신저와 네이트온 메신저는 "independently created" 프로그램입니다. 물론 네이트온이 MSN의 코드를 훔쳐서 만든 프로그램이 아니라는 전제하에서요(반대 경우도 물론 8)).[/]