[기고]오픈소스 소프트웨어와 라이선스의 이해(2)

박준석 엘에스웨어 FOSS 사업본부 이사(공학박사)

개발자는 프로그램 개발 시 저작권을 자동으로 부여 받는다. 오픈소스 소프트웨어(SW)도 누군가 개발한 프로그램이기 때문에 개발과 동시에 자동적으로 해당 개발자에게 저작권이 부여된다. 이는 오픈소스 SW라도 개발자가 라이선스를 공공재인 퍼블릭 도메인으로 배포하지 않는 한 저작권으로 보호되는 것은 여타 SW와 동일하다는 의미다. 또 각 오픈소스 SW는 상용SW와 동일하게 라이선스 즉 '이용허락권'을 함께 배포해 저작권자 권리를 보호한다. 상용SW가 이용자 권리를 최대한 제한해 기업의 이윤을 추구하는 것이 목적이라면 오픈소스 SW는 이용자의 권리를 최대한 보장해 공동의 가치창출을 지향하는 것이 다르다. 이렇게 지향하는 바가 다를 뿐이지 저작권으로 보호되는 것은 똑같다. 이제는 상용SW와 오픈소스 SW를 분리해 생각할 게 아니라 동일 선상에 두고 관리하는 것이 효율적이다. 기존 상용SW 관리체계에 오픈소스 라이선스의 특성을 반영한 정책을 추가하는 작업이 필요하다.

대표 오픈소스 라이선스인 GPL은 자유소프트웨어재단(Free Software Foundation, FSF)이 제정 배포한다. GPL 라이선스로 배포되는 소스코드를 사용해 개발한 프로그램은 재배포 시 내가 추가로 개발한 소스코드도 포함해 GPL 라이선스로 배포해야 한다. 이를 상호주의(Reciprocal) 라이선스라고 한다. 이는 동일 라이선스 재배포라는 조건을 가지고 있어 내가 90% 소스코드를 직접 코딩했고 GPL 코드를 10%만 활용해 개발했더라도 전체 소스코드를 GPL로 배포해야 한다. 또 GPL 라이선스는 GPL 2.0과 3.0 버전이 존재하는데 GPL 3.0에서는 GPL 2.0에서 부족하다고 생각되는 여러 조항들이 추가돼 조건이 상당히 까다롭다. GPL 3.0을 사용해 제품을 제작했다면 이를 수취한 자에게 설치정보를 함께 제공해야 한다. 이것은 기업 입장에서는 상당한 리스크이기 때문에 라이선스가 요구하는 조건을 명확히 파악해 도저히 따를 수 없는 조건이라면 사용하면 안 된다. 이러한 내용이 기업의 정책으로 존재한다면 사전에 리스크를 예방할 수 있겠지만 그렇지 않은 경우라면 의도치 않게 기업의 상당한 기밀이 유출되는 결과를 초래할 수도 있다. 기업에서 사용하는 오픈소스 SW와 라이선스는 어떤 것인지를 조사할 필요가 있고 이를 통해 도출된 내용을 기반으로 각 기업에 알맞은 정책을 수립하는 것이 중요하다.

GPL은 매우 엄격한 조건을 가진 라이선스라 제조 기업이 사용하기에는 적합하지 않다. 전자제품 제조사가 GPL 3.0을 사용해 제품개발 후 판매했다면 구매자에게 GPL 3.0을 사용했다는 사실을 모두 고지해야 하고 구매자가 해당 소스코드나 설치정보를 요구하면 모두 제공해야한다.

그런데 클라우드 형태로 서비스를 하는 기업 입장에서는 GPL 라이선스가 크게 리스크를 갖지 않는다. 오픈소스 라이선스는 네트워크 통신을 하는 경우에도 소스코드 공개를 요구하고 있는 AGPL 3.0(Affero GPL 3.0) 같은 라이선스를 제외하면 대부분 물리적으로 프로그램이 배포돼야 효력이 발생한다. 배포하지 않고 기업 내부에서 사용 한다던가 서비스 형태로 사용한다면 의무사항 자체가 발생하지 않는다. 이는 GPL도 마찬가지다.

예를 들어 쇼핑몰, 포털서비스, 뉴스서비스 등 웹을 통해 최종 사용자에게 서비스를 제공하는 기업들은 사내 혹은 IDE에 해당 시스템을 구축해 놓고 최종 사용자에게 서비스를 제공한다. 웹 서비스를 제공하는 기업이 이 웹 서비스를 운영하기 위해 구축해 놓은 시스템을 모두 오픈소스로 구축해 놓았다고 하더라도 의무사항 자체가 발생하지 않아 고지할 의무조차 없다. 제조 기업에서 상당한 리스크가 발생하는 GPL 3.0을 클라우드 서비스 기업에서는 전혀 문제없이 사용할 수 있다. 반면 AGPL 3.0과 같은 라이선스는 이렇게 클라우드 형태로 사용하는 경우에도 서비스 이용자에게 소스코드 공개를 요구하고 있다. 때문에 클라우드 기업도 이 AGPL 3.0과 같은 라이선스를 사용하면 심각한 리스크가 발생하게 된다.

기업 비즈니스 모델에 따라 똑같은 GPL 라이선스라 할지라도 리스크가 존재하기도 하고 그렇지 않을 수도 있어 기업은 관리체계를 구축해야한다. 또 이러한 지식과 체계가 기업에 쌓이기 시작하면 의도치 않은 리스크를 방지할 수 있을 뿐 아니라 GPL은 무조건 안 된다는 선입견으로 사용하지 못하던 오픈소스 코드도 상황에 따라 유용한 자원으로 사용할 수 있게 된다.

일정한 규칙만 지킨다면 누구나 자유롭게 사용할 수 있는 오픈소스 SW라 할지라도 'GPL 라이선스로 배포되는 이 소스코드를 사용하면 당신이 개발한 소스코드도 GPL로 공개해야 한다'는 규칙으로 인해 이를 원하지 않는 누군가는 자유롭게 사용하기 어렵다. 이러한 규칙 자체를 모르는 경우라면 자신도 모르게 타인의 저작권을 침해하고 있어 저작권 소송의 당사자가 될 수도 있다. 이러한 리스크로 인해 오픈소스를 적법하고 안전하게 사용하기 위해서는 꼼꼼한 체크와 관리가 필요하다. 문제는 글로벌 기업 정도를 제외하면 관리 거버넌스 자체가 없는 경우가 대부분이라는 것이다.

시중에서 사용되는 수많은 상업용 SW와 제조기기는 대부분 오픈소스를 사용해 개발하고 있다. 과연 개발사들은 어느 정도 이런 문제에서 자유로울 수 있을까? 안타깝게도 아직까지 대다수가 이 문제에서 자유롭지 못할 것이다. 특히 최근 단일 기업이 개발하기 보다 여러 개발 주체가 참여해 복합 지식재산권을 갖는 SW와 이와 결합되는 하드웨어(HW)를 개발하는 경우가 대부분이라 과거 보다 더 복잡한 상황이다.

이제 우리는 더 이상 오픈소스 라이선스에 대한 무지가 통용되지 않는 시대에 살고 있다. 기업은 오픈소스 라이선스 인식을 제대로 정립해야하고 이를 전략적으로 활용할 수 있도록 기업 정책을 업그레이드해야한다. 그동안 수많은 오픈소스를 활용해 이익을 얻은 만큼 기여를 통한 선순환 구조 창출에도 동참할 때다. 이미 많은 글로벌 기업이 오픈소스 커뮤니티에 동참해 기업 경쟁력을 극대화시키기 위한 노력을 아끼지 않고 있다. 지킬 것은 지키되 '니껀 써도 내껀 공개할 수 없어'라는 폐쇄적 사고방식은 결국 해당 기업의 운영에 전혀 도움이 되지 않는다. 대한민국 기업이 기회의 창인 오픈소스를 통해 글로벌 기업과 경쟁할 수 있는 전략적 지혜를 갖추길 기대해 본다.


브랜드 뉴스룸