대법원은 구글이 썬 마이크로시스템즈의 자바 API 코드 약 300만 줄 중 1만 1,500줄을 복사한 행위가 저작권 침해인지 여부를 둘러싼 구글과 오라클 간의 분쟁을 마침내 해결했습니다. 대법원은 해당 코드가 저작권 보호 대상인지 여부에 대한 논의는 회피하면서, 안드로이드 프로그래밍을 다른 자바 프로그래밍과 유사하게 만들기 위한 목적으로 코드를 복사한 것은 공정 이용에 해당한다고 판결했습니다.
대법원은 연방 항소법원이 공정 사용을 법률과 사실이 혼합된 문제로 올바르게 인식했다고 판단했지만, 궁극적으로 배심원의 공정 사용 판단을 뒤집은 것은 법률적으로 잘못이라고 판결했습니다. 대법원은 17 USC 107에 명시된 네 가지 요소를 철저히 분석한 후, 컴퓨터 소프트웨어의 기능적 특성을 고려할 때 구글의 사용은 저작권 침해가 아닌 공정 사용에 해당한다고 결론지었습니다.
저작권이 있는 저작물의 성격
대법원은 문제의 기술이 세 가지 필수 요소로 이루어져 있다고 판시했습니다. 첫째, API에는 각 작업을 수행하기 위해 컴퓨터가 따라야 할 단계를 실제로 지시하는 "구현 코드"가 포함되어 있습니다. (구글은 자체 구현 코드를 작성했습니다.) 둘째, Sun Java API는 각 작업을 호출하는 특정 명령, 즉 "메서드 호출"을 연결합니다. (오라클은 프로그래머가 이러한 명령을 사용하는 것 자체가 저작권을 침해한다고 주장하지 않았습니다.) 셋째, Sun Java API에는 메서드 호출 작성을 필요한 구현 코드가 있는 컴퓨터의 특정 "위치"와 연결하는 컴퓨터 코드가 포함되어 있습니다. 이것이 구글이 복사한 선언 코드입니다.
선언 코드는 프로그래머들이 "메서드 호출"이라고 부르는 특정 명령어 사용과 불가분하게 연결되어 있으며, 오라클은 이에 대해 이의를 제기하지 않았습니다. 또한, 구글이 복사하지 않은 구현 코드와도 연결되어 있습니다. 법원은 선언 코드(프로그래머의 메서드 호출과 분리할 수 없는)가 다른 종류의 창의성을 구현한다고 지적했습니다. 썬 자바 개발자들은 시스템을 배우고, 추가 개발에 기여하며, 다른 시스템을 사용하기를 꺼리는 프로그래머들을 끌어들이기 위해 직관적으로 기억하기 쉬운 선언 코드 이름을 찾으려고 노력했습니다. 선언 코드는 개발자들이 직관적이고 쉽게 호출할 수 있도록 설계되고 구성되었습니다.
이러한 고려 사항으로 인해 사용자 인터페이스의 일부인 선언 코드는 일반적인 컴퓨터 프로그램과는 다릅니다. 다른 컴퓨터 프로그램과 마찬가지로 기능적인 성격을 지닙니다. 그러나 다른 많은 프로그램과 달리, 선언 코드의 사용은 저작권 보호 대상이 아닌 아이디어(일반적인 작업 분할 및 구성)와 새로운 창의적 표현(안드로이드 구현 코드)과 본질적으로 연결되어 있습니다. 또한 다른 많은 프로그램과 달리, 선언 코드의 가치는 저작권을 보유하지 않은 사람들, 즉 컴퓨터 프로그래머들이 API 시스템을 학습하는 데 투자한 시간과 노력에서 상당 부분 비롯됩니다. 그리고 다른 많은 프로그램과 달리, 선언 코드의 가치는 프로그래머들이 해당 시스템을 학습하고 사용하도록 장려하여 구글이 복제하지 않은 Sun 관련 구현 프로그램을 사용(및 계속 사용)하도록 유도하는 데 있습니다. 법원은 선언 코드가 저작권 보호 대상이 된다 하더라도, 대부분의 컴퓨터 프로그램(예: 구현 코드)보다 저작권의 핵심에서 더 멀리 떨어져 있다고 결론지었습니다.
사용 목적 및 성격
공정 이용의 맥락에서 법원은 복제자의 사용이 저작물을 새로운 표현, 의미 또는 메시지로 변형시키거나, 추가적인 목적 또는 다른 성격을 부여하는지 여부를 고려한다고 언급했습니다. 즉, 변형적 이용인지 여부를 판단하기 위해서는 복제 행위의 보다 구체적인 목적과 성격을 살펴보아야 한다고 밝혔습니다.
법원은 구글의 새로운 제품이 프로그래머들에게 스마트폰 환경에 매우 창의적이고 혁신적인 도구를 제공한다고 판시했습니다. 구글이 프로그래머들이 쉽게 사용할 수 있는 새로운 플랫폼을 만들기 위해 썬 마이크로시스템즈의 자바 API 일부를 사용한 것은 저작권의 기본 헌법적 목적인 창의적 진보에 부합하는 행위라고 판단했습니다. 법원은 구글이 (데스크톱 및 노트북 컴퓨터용으로 썬 마이크로시스템즈가 개발한) API를 스마트폰 프로그램에서 유용한 기능을 포함하는 데 필요한 범위 내에서만 복제했으며, 프로그래머들이 익숙한 프로그래밍 언어의 일부를 버리고 새로운 언어를 배우지 않고도 해당 기능을 사용할 수 있도록 하는 데 필요한 범위 내에서만 복제했다고 판단했습니다. 이러한 사실들을 종합하여 법원은 구글의 복제 행위의 "목적과 성격"이 변형적이라고 확신했으며, 이는 공정 사용으로 인정하는 데 중요한 요소로 작용했습니다.
비록 구글의 사용이 상업적 목적이었지만, 특히 새로운 안드로이드 시스템에서 재구현이 본질적으로 변혁적인 역할을 했다는 점을 고려할 때 이는 결정적인 요소가 아니었다. 법원은 또한 악의가 공정 사용 분석에 어떤 역할을 하는지에 대해서도 의문을 제기했지만, 결국 본 사건에서는 결정적인 요소가 아니라고 결론지었다.
사용된 부분의 양과 중요성
구글이 복사한 코드의 양은 약 11,500줄로 적지 않습니다. 하지만 Sun의 Java API 코드 전체(구현 코드 포함)는 2.86만 줄에 달하며, 복사한 11,500줄은 전체의 0.4%에 불과합니다. 비록 소량의 복사라도 원작의 핵심적인 부분을 복사한 경우 공정 사용의 범위를 벗어날 수 있지만, 더 많은 양의 자료를 복사하더라도 복사한 부분이 원작의 핵심적인 부분을 거의 포함하지 않거나 복사자의 정당한 목적에 필수적인 경우 공정 사용의 범위에 포함될 수 있습니다.
법원은 숫자를 해석하는 더 나은 방법은 구글이 복사하지 않은 수백만 줄의 코드를 고려하는 것이라고 밝혔습니다. 썬 자바 API는 이러한 작업 구현 코드와 불가분하게 연결되어 있으며, 그 목적은 이러한 코드를 호출하는 것입니다. 구글이 코드를 복사한 것은 "그 코드의 창의성이나 아름다움, 심지어 (어떤 의미에서는) 목적 때문이 아니었습니다." 구글이 해당 코드를 복사한 이유는 프로그래머들이 이미 썬 자바 API 시스템을 사용하는 방법을 알고 있었고, 그 코드 없이는 프로그래머들이 안드로이드 스마트폰 시스템을 개발하도록 유도하기가 어려웠거나, 어쩌면 불가능했을 것이기 때문입니다. 더욱이, 구글의 기본적인 목적은 서로 다른 컴퓨팅 환경(스마트폰 대 데스크톱 및 노트북 컴퓨터)에 맞는 새로운 작업 관련 시스템을 만들고, 그 목표를 달성하고 대중화하는 데 도움이 되는 플랫폼, 즉 안드로이드 플랫폼을 만드는 것이었습니다. 법원은 복사량이 유효하고 변형적인 목적과 연관되어 있는 경우, 일반적으로 "실질성" 요소가 공정 사용을 지지하는 쪽으로 작용한다고 결론지었습니다.
시장 효과
법원은 컴퓨터 프로그램이 관련된 시장 영향에 대한 고려가 복잡할 수 있음을 인정했습니다. 잠재적 수익 손실은 고려 사항 중 하나일 뿐, 전부는 아닙니다. 법원은 복제 행위가 가져올 공공의 이익 또한 고려해야 합니다. 법원은 배심원단이 안드로이드가 자바 SE의 실제 또는 잠재적 시장에 해를 끼치지 않았다고 판단할 수도 있었다고 지적했습니다. 배심원단은 구글의 안드로이드 플랫폼을 사용하는 기기와 썬 마이크로시스템즈의 기술을 라이선스한 기기가 본질적으로 다르다는 점을 거듭 강조받았습니다. 법원은 종합적으로 볼 때, 썬 마이크로시스템즈의 휴대폰 사업은 쇠퇴하고 있었지만, 시장은 썬 마이크로시스템즈가 결코 제공할 수 없었던 새로운 형태의 스마트폰 기술을 점점 더 요구하고 있었다는 증거가 있다고 판단했습니다.
법원은 그 가치의 상당 부분이 프로그래머를 포함한 사용자들이 단순히 그것에 익숙해져 있다는 사실에서 비롯될 수 있으며, 저작권법이 제3자가 창작물을 사용하는 방법을 배우는 데 투자한 비용을 보호하려는 의도가 있다는 증거는 없다고 밝혔습니다. 법원은 Sun Java API의 선언 코드를 보호하는 것은 새로운 프로그램의 미래 창의성을 제한하는 족쇄가 되며, 이러한 족쇄는 저작권의 기본적인 창의성 목표를 증진시키는 것이 아니라 오히려 저해할 것이라고 판시했습니다.
맺음말
법원은 구글이 사용자 인터페이스를 재구현하면서 사용자들이 축적된 재능을 새롭고 혁신적인 프로그램에서 활용할 수 있도록 필요한 부분만 가져간 경우, 구글의 썬 자바 API 복제는 법적으로 해당 자료의 공정 사용에 해당한다고 판결했습니다.



