GPLv3와 DRM
리누스 토발즈와의 격렬한 논쟁의 핵심이 되고 있는 GPLv3의 DRM 금지조항에 대해서
생각해 봐야할 것 같습니다.
일단, 이 문제를 이해하기 위해서는 RMS와 FSF의 GPL의 기본 이념을 이해해야 합니다.
1. 소프트웨어를 사용할 수 있는 자유
2. 소프트웨어를 복사하고 공유할 수 있는 자유
3. 소프트웨어를 수정할 수 있는 자유(이를 위해서는 사용가능한 소스가 함께 제공되어야 합니다.)
4. 수정된 소프트웨어를 사용하고, 다시 배포할 수 있는 자유
이러한 이념(GPL)하에 배포되는 소프트웨어 사용자들은,
소프트웨어 제공자에 의해 어떠한 구속도 받지 않습니다.
구속되는 것이란 무엇인가... 대표적인 예가 정부와 MS의 관계입니다.
한때 논란이 되는 것이 Windows 98이었는데, MS가 더이상 Windows 98에 대해서
업데이트를 하지 않겠다고 하자, 정부가 안절부절해졌는데,
이는 강제적으로 차기 버전으로 업그레이드를 하지 않을 수 없는 결과를 낳게 되었습니다.
즉, 소프트웨어 제공자가 그 사용자의 자유를 구속시킴으로서
차기버전으로 강매를 요구할 수 있는 것이죠.
만약, 정부가 오픈소스 운영체제를 이용했다면,
원한다면 스스로 여전히 그 운영체제를 관리하고 유지할 수 있습니다.
이러한 것이 구속과 자유입니다.
다시 논점으로 돌아와서 문제의 DRM 기술은 이중 4와 대치되는 기술로 활용될 수 있습니다.
이러한 DRM기술을 이용하는 것의 대표적인 것이 바로 Tivo 입니다.
그리고, 이러한 기술을 적용하는 행위를 소위 tivoization이라고 합니다.
Tivo는 디지털 비디오 레코더로서, 일반 비디오 레코더와 같은 녹화기능은
물론, 실시간 녹화 및 재생을 할 수 있으며,
이는 우리에게는 타임머쉰 기능등으로 알려진 시간 지연 및 시청도중 돌려보기 등이 가능한 장치입니다.
미국에서는 거의 생활필수품화가 되었다고 합니다.
이 제품은 리눅스를 기반으로 만들어져 있습니다.
그리고, 이 Tivo라는 회사는 자신들이 향상 시킨 기술을
오픈소스커뮤니티에도 충실히 반환하고 있는 것으로 알고 있고,
표면상으로는 GPLv2에 있어서 윤리적 문제가 전혀 없어 보입니다.
그런데, 이 회사 제품의 특징은 firmware에 DRM 기술을 적용해서,
회사가 출시당시 같이 배포한 소프트웨어가 아니면, 실행하는 것을 막고 있습니다.
즉, Tivo를 구입해서, Tivo 홈페에지에서 소스를 받을 수도 있고,
이를 수정할 수도 있고, 비슷하게 구성된 하드웨어에서 사용할 수도 있지만,
다시 Tivo에 올려서는 사용할 수 없습니다.
얼핏 생각하면, 이게 크게 문제가 되지 않을 지도 모른다는 생각이 들지도 모릅니다.
분명 4를 만족하지 않는 것도 아니고, 만족시키는 것도 아닌 아주 미묘한 부분이기 때문입니다.
하지만, 만약, 자신이 구입한 Tivo에 대해서, Tivo 제작사가 더 이상 관리를 하지 않게 됬을 경우를
고려해 보면, 상황은 정확히 정부와 MS와 관계와 같아집니다.
하드웨어적인 문제가 아닌 단순한 약간의 소프트웨어의 버그가 있을 경우라도,
사용자는 이 부분을 해결할 수 없습니다.
그럼, 새로운 Tivo를 구입할 수 밖에 없지요.
즉,하드웨어를 이용해서 소프트웨어를 강매할 수 있는
다르게 말해서 구속시킬 수 있는 편법이 생긴 것입니다.
RMS는 그렇다면 이 기술은 GPL의 이념에서 어긋난다고 보는 것입니다.
리누스는 이는 소프트웨어의 부분이 아닌 하드웨어에 관한 부분이기 때문에
라이센스로서 이를 억제해서는 안된다고 주장하고 있습니다.
반면 alan cox를 포함한 일부 커널 개발자들은 리누스와 달리 GPLv3를 지지합니다.
개인적으로도 리누스가 이에 반감을 가지는 이유가 잘 이해가 가지 않습니다.
그리고, 리누스가 GPLv3에 대해서 힐난함으로서 이것이 몇몇 분들에게
GPLv3에 대한 나쁜 평견을 가지게 하는 것 같은 생각이 들어서 이 글을 작성합니다.
더불어 GPLv3가 나왔다고 해서,
모든 소프트웨어가 GPLv3로 가는 것처럼 여기실 필요는 없습니다.
이는 아주 머나먼 여정의 시작일 뿐이며, 수개월 아니면 수년의 과도기를 걸쳐서 진행될 일입니다.
댓글
저는 리누스가 이해가 됩니다
여하튼 만든건 자신인데,
다른 사람의 정치적 신념을 전파하는 도구로 전용되는건 매우 불쾌한 일이죠.
저도 오래전에 사내에서 비슷한 일이 있어서 아주 절실히 공감합니다.
...
사실상 리누스가 RMS에게 감정이 있고, 그리고, 그 이유가 매우 타당하다 할지라도,
리누스의 모든 생각과 발언이 정당화되는 것은 아닙니다.
또한 어떠한 사람이 매우 사악하고, 인간말종이라도,
그가 남긴 모든 생각과 발언이 모두 사악하고 가치없는 것이고 잘못된 것도 아닙니다.
간디가 성도착증 환자였더라도,
그가 행한 행위 및 말들이 인류에게 매우 가치가 있고, 훌륭한 교훈인 것처럼요.
There is no spoon. Neo from the Matrix 1999.
There is no spoon. Neo from the Matrix 1999.
GPL3 의 DRM 쪽에
GPL3 의 DRM 쪽에 대해서 제대로 읽어본적은 없지만, RMS 의 주장대로 HW 가 SW 를 제어하는 것이 싫다면 SW 가 HW 를 제어하는 것이라는 반대 개념이 발생할 수도 있습니다. 즉, GPL3 가 후자를 야기할 수 있다는 문제입니다. GPL 이 예전처럼 소수의 전유물이었을 경우에는 크게 문제가 되지 않겠지만, SW 산업 전반적으로 영향을 미칠 수 있는 라이센스로 발전한 지금에서는 GPL3 의 DRM 에 관한 부분은 오히려 퇴보를 가져올 수도 있는 문제라 생각이 들기는 합니다.
일단은, 개인적인 취향에 따라 많이 다를 것이라 보입니다. 저는 원래 GPL 을 좋아하지 않는 관계로.. GPL 보다는 BSD license 를 선호합니다. 그래서 GPL3 의 DRM 정책이 저한테는 별로 와 닿지 않을 뿐 아니라 억지(?)를 부리는 것 같은 느낌이 듭니다.
다만, linus 의 공개적인 비판 입장은 좀 안좋은 모습으로 보이는 것은 사실입니다. 왠지 토론이 아니라 비난전으로 가는 듯한 모습으로 비춰지는 군요.
저는 조금 생각이 다릅니다.
다양한 오픈소스 라이센스가 있고,
그 소스를 배포하는 기업이나 개인,단체의 성격에 따라 다양한 라이센스를 선택할 수 있습니다.
GPLv3는 GPLv2,BSD 라이센스와 더불어 선택의 가지가 더 늘어간 것에 불가하다는 생각입니다.
여전히 방대한 양의 소스가 GPLv2로 남아 있을 것이며,
이 부분에 대해서 독자적으로 발전해 나갈 수 있습니다.
OSI 에 나열되어 있는 수많은 라이센스가 있지만, 몇몇을 제외하고는 대부분은 유명무실해졌습니다.
이와 마찬가지로, GPLv3 또한 GPLv2의 아성을 넘지 못하고, 유명무실해질 수 있습니다.
선택은 언제나 커뮤니티의 몫이라고 보입니다
스톨만이나, FSF는 어떠한 것도 강요하지 않고 있으며, 퇴보에 대한 우려는 없다고 보입니다.
There is no spoon. Neo from the Matrix 1999.
There is no spoon. Neo from the Matrix 1999.
GPLv3 draft3와
GPLv3 draft3와 최종버전에 되면서 논란이 되었던 부분은 사실 아주 제한적으로 변했습니다.
GPLv3가 "DRM을 금지한다"라고 말하기는 어렵고 "anti-DRM 활동에 제약을 가하지 못하게 한다"라고 말하는 게 옳습니다. section 3에서 그 소프트웨어의 DRM을 깨는 행위에 대해 제한을 가할 수 없다고 명시하고 있습니다 이 조항은 미국의 DMCA를 정확히 노린 부분이라고 할 수 있는데요. 예를 들어 GPLv3 소프트웨어로 DRM을 탑재한 뮤직 플레이어를 만드는 건 OK이지만, GPL에 주어진 권리에 따라 누군가 DRM을 깨는 작업을 했다고 해서 그 소프트웨어의 변경과 배포에 DMCA나 그와 비슷한 방법을 이용한 제제를 가할 수 없다는 것입니다. (하지만 GPLv2에서도 DRM 코드가 GPL 코드이면 논란이 되기 때문에, 지금까지 그래왔듯이 얼마든지 피해가면서 DRM을 탑재할 수 있어서 별로 큰 이팩트가 있을 것 같지도 않네요.)
그리고 anti-Tivoization clause라고 할 수 있는 부분이 section 6에서, GPLv3 소프트웨어를 탑재한 제품을 배포할 때 (기존의 GPLv2에서 명시해야 할 요건 외에) "소프트웨어를 변경하는 데 필요한 정보를 명시해라"라고 지정하고 있습니다. 예를 들어, 뮤직 플레이어를 배포할 때 펌웨어를 변경하는 방법을 숨기거나 (심지어는 티보처럼 디지털 사인을 해야 한다거나) 할 수 없다는 것이지요.
글쎄요, 위 조항 외에 GPLv3에 추가된 부분은 추가적인 제한이라고 볼 수가 없구요. 기술의 변화를 반영한 부분이나 (P2P를 이용한 배포 등), 애매한 부분을 명확하게 한 점 등은 매우 긍정적이라고 생각합니다. 저도 리누스가 그렇게 반감을 가질 이유는 없다고 보는데요.
----
익명이나 오래전 글에 리플은 무조건 -1
약간 보충하자면...
약간 보충하자면... DRM과 관련된 부분은 draft 버전이 올라가면서 상당히 완화되었습니다. 가장 큰 변화는 기존에는 소스코드만 제공해도 ok였던 것이 GPLv3부터는 해당 소스코드를 제품에 설치하는 방법까지 제공해 주어야 한다는 것입니다. 예를 들어 DRM이 걸린 MP3P를 GPLv3 SW를 가지고 만든다고 할지라도 GPLv3 SW에 대해서만 설치 & 업그레이드 등을 할 수 있도록 조치해 주면 되기 때문에 GPLv3 부분과 그외의 부분을 분리해서 그외의 부분에 대해서만 DRM을 걸어 두어도 문제가 되지 않습니다. 단, 그외의 부분이 GPLv3의 영향을 받지 않도록 하기 위해서는 FSF의 GPL FAQ에서 정의한 수준으로 GPLv3 SW와 그외의 부분을 명확히 격리하여야 하겠지요.
그렇기 때문에 GPLv3가 DRM을 금지한다고 표현하는 것은 지나치게 확대해석된 것이 맞습니다.
그런데... 실질적으로
DRM의 존재 목정상,
그것이 우회가능하다던가, 혹은 우회할 수 있는 시도에 대해서 어떠한 제한 조치를 취할 수 없다면,
과연 그것의 유의미한 가를 생각해 봐야 합니다.
제가 볼때는 GPLv3 소스에 대해서 혹은 이를 이용하여
DRM을 구현하는 것은 실질적으로는 금지시켰다고 보입니다.
언급하신 바와 같이, 언제나 그렇했지만,
GPLv3 소스에 대해서만 안쓰면 되는 겁니다. 크게 바뀔 것은 없지요. ^^
There is no spoon. Neo from the Matrix 1999.
There is no spoon. Neo from the Matrix 1999.
물론 이 조항의
물론 이 조항의 목적은 DRM 반대겠지요. ^^
저렇게 DRM 구현을 직접적으로 제한하지 않은 게, 무작정 DRM 구현을 막는다면 다른 피해자가 생기기 때문입니다. 예를 들어 선의의(?) 목적에서 이루어지는 DRM과 비슷한 기술들이 있구요. (주로 보안 때문에.. 브라우저 인증서라든지, 패키지 디지털 사인 등등) 현실적으로 DRM 기술을 구현해야만 하는 경우도 있습니다. (DVD 플레이어, 각종 DRM 탑재 미디어와의 인터페이스 등등)
----
익명이나 오래전 글에 리플은 무조건 -1
댓글 달기