주간기술동향 2020. 6. 10. chapter 2 주요오픈소스라이선스사용동향 * 류원옥 이승윤 한국전자통신연구원책임연구원한국전자통신연구원책임연구원 I. 서론 국내기업들이향후 4차산업혁명핵심기술도입시, 오픈소스적용계획이있는핵심기술은빅데이터 44.3%, 클라우드 42.3%. IOT 33.0%, AI 26.5% 순으로나타났다. 오픈소스해외시장은 2022년까지약 330억달러규모의산업으로성장하고, 국내시장규모는 2022년까지연평균 19.9% 성장할것으로전망되고있다. 본고에서는이러한오픈소스시장의성장에따른오픈소스라이선스활용동향을분석하여선호하는오픈소스라이선스의흐름을파악하고시사점을도출하고자한다. II. 오픈소스 1. 오픈소스전망 오픈소스 (Open Source Software) 는소프트웨어개발자가자신이개발한소스코드 * 본내용은류원옥책임연구원 ( 042-860-4886, woryoo@etri.re.kr) 에게문의하시기바랍니다. ** 본내용은필자의주관적인의견이며 IITP 의공식적인입장이아님을밝힙니다. 14 www.iitp.kr
billion U.S. dollars 40 35 32.95 30 26.6 25 21.6 20 17.4 15 14.1 11.4 10 5 0 2017 2018* 2019* 2020* 2021* 2022* < 자료 > Statista, 2019. 9. [ 그림 1] 세계오픈소스시장전망 를공개하여누구나자유롭게사용, 수정, 재배포할수있는소프트웨어로, 상용소프트웨어와같이저작권이있으며저작권에따라다양한라이선스를통한의무사항이발생한다. 상용소프트웨어와비교하면소스코드접근성용이, 개발비용절감, 다수개발자나공급자, 서비스중심의수익모델이라는장점이있다. 반면에단점으로는문서정보부족, 불확실한개발일정, 라이선스문제, 보안문제등이있다 [1]. 최근기업들은제품출시소요시간감축과빠른시장의변화에적응하기위해오픈소스를도입하고있다. 세계 65% 이상의기업이오픈소스를활용중이며, ICT 산업에서오픈소스의비중이갈수록높아지는추세이다. 해외오픈소스시장은가파른성장세를보이며 2022년까지약 330억달러규모의산업으로성장할전망이다 [2]. 시장통계사이트 Statista는 2020년오픈소스시장규모가 2019년에비해약 2배증가할것으로전망하고있다 [2]. 국내오픈소스시장은 2017년이후연평균 19.9% 성장하여 2022년에는 4,687억원에도달할것으로전망하고있다 [3]. 그리고국내외기업들은비즈니스효과를높이기위해오픈소스를이용한기업의현대화를추진중이며, 도입목적은디지털변혁, IT 인프라현대화, 애플리케이션현대화등의디지털혁신활동이고, 이를통해총소유비용 (TCO) 절감 33%, 최신혁신기술접근 29%, SW 품질향상 26% 를기대하고있다 [3]. 기업을대상으로한 4차산업혁명핵심기술도입현황조사결과에따르면 ( 복수응답 ), 현재활용하고있는 4차산업혁명의핵심기술은빅데이터 53.6%, 클라우드 42.4%, IoT 정보통신기획평가원 15
주간기술동향 2020. 6. 10. < 자료 > 정보통신산업진흥원, 2018. 11. [ 그림 2] 국내오픈소스시장전망 ( 억원 ) 31.2%, AI 24.0% 순으로나타났으며 [4], 현재활용하고있는 4차산업혁명핵심기술중오픈소스를기반으로두고있는비율은 42.4% 로나타났다 [3]. 향후오픈소스적용계획이있는 4차산업혁명핵심기술은빅데이터 44.3%, 클라우드 42.3%, IoT 33.0%, AI 26.5% 순이며, 오픈소스에기반을둘의사는 81.5% 로추정하고있다 [4]. 2. 오픈소스라이선스 오픈소스는독점소프트웨어 (Proprietary Software) 와같이저작권등에의한법적보호를받고있으며, 이와같은권리에기반하여오픈소스저작권자는오픈소스이용자에게라이선스를부여한다. 기본적으로오픈소스라이선스는다음과같이사용자또는라이선시 (Licensee) 의자유로운사용 복제 배포 수정을보장하고있다 [5]. - 라이선시는해당오픈소스를자유롭게사용할수있다. - 라이선시는해당오픈소스를자유롭게복제할수있으며, 일정한조건으로재배포할수있다. - 라이선시는해당오픈소스를자유롭게수정하여사용할수있으며, 일정한조건으로수정된내용을재배포할수있다. - 라이선시는해당오픈소스의소스코드를자유롭게획득하고접근할수있다. 16 www.iitp.kr
오픈소스라이선스는또한소프트웨어사용자에게일정한의무를부과하고있다. 구체적인내용은오픈소스와함께배포되는라이선스의내용을통해알수있다. 오픈소스라이선스들은일반적인소프트웨어라이선스와다르다. 일반상용소프트웨어와마찬가지로오픈소스에도저작권등지식재산권이있다. 그런데오픈소스의권리자들은되도록많은사람이자유롭게사용할수있도록광범위한라이선스를부여하고있다. 예를들어, 사용자들에게사용에대한권리뿐만아니라마음대로복제및배포를할수있도록하고, 소스코드까지제공하여마음대로수정할수있도록허락한다. 하지만상용소프트웨어처럼그에따르는사용료를요구하지않는대신몇가지지켜야할조항 ( 의무사항 ) 을다음과같이요구하고있다 [6]. 1 저작권, 개발자및기여자정보의표시대부분의오픈소스라이선스는개발자또는기여자에관한사항과저작권에관한사항을제품에표시하거나포함하도록요구하고있다. 마치저작인격권의하나인성명표시권과유사하다. 2 코드를수정한경우수정한정보의표시이용자가소스코드를수정하였을때에는수정한사람, 수정일자등수정에관한내용을포함하도록함으로써, 원본과구별할수있도록한다. 저작인격권의하나인동일성유지권에비유할수있다. 3 라이선스정보의제공많은오픈소스라이선스들은이용자들이오픈소스에관한권리를잘이해할수있도록배포자가해당라이선스의사본을함께첨부할것을요구하고있다. 4 같은라이선스로재배포할것 ( 카피레프트 ) 라이선스에따라큰차이를보이는부분은 카피레프트 (Copyleft) 에관한사항이다. GPL을대표로하는카피레프트라이선스들은이용자들이소프트웨어를수정한후배포하고자할때수정된소프트웨어도같은라이선스로배포할것을요구한다. 5 소스코드의제공카피레프트조항을포함하는라이선스의경우, 소프트웨어를배포할때소스코드까지함께배포하도록요구한다. 정보통신기획평가원 17
주간기술동향 2020. 6. 10. 3. 오픈소스라이선스분류 오픈소스라이선스의조항 ( 의무사항 ) 에따라라이선스의허용적및카피레프트라이선스계열로분류한다. 1 허용적라이선스 (Permissive license) 기존오픈소스라이선스를수정하여배포할수있고, 다른라이선스로전환할수있다. 해당라이선스가적용된오픈소스는공개하지않아도된다. 주요라이선스로는 Apache 2.0, BSD-2, BSD-3, MIT 라이선스가있다. 2 약한카피레프트라이선스 (Weak copyleft license) 기존오픈소스라이선스가명시한허가및의무사항을삭제또는변형하지않는범위에서새로운내용을추가하거나, 다른라이선스로전환할수있다. 해당라이선스가적용된파일혹은모듈을공개하여야한다. 주요라이선스로는 EPL 1.0, EUPL 1.0, LGPL 2.1, LGPL 3.0, MPL 2.0, MS-PL 라이선스가있다. 3 강한카피레프트라이선스 (Strong copyleft license) 기존오픈소스라이선스를문자그대로유지할것을요구하는라이선스로, 다른라이선스로전환할수없다. 해당라이선스가적용된오픈소스혹은 SW결과물을공개해야한다. 주요라이선스로는 GPL 2.0, GPL 3.0, AGPL 3.0 라이선스가있다. III. 사용한오픈소스라이선스 오픈소스에서사용한라이선스의동향을알아보기위해오픈소스라이선스검증의대표업체인블랙덕소프트웨어 ( 주 ), 시놉시스 (Synobsys)( 주 ), WhiteSource( 주 ) 에서발표한자료와최대의오픈소스저장소를제공하는깃허브 (GitHub) 의프로젝트에서사용한라이선스현황을살펴본다. 1. 블랙덕소프트웨어 ( 주 ) 2016 년블랙덕소프트웨어 ( 주 ) 에서발표한오픈소스프로젝트에사용되는상위오픈소 18 www.iitp.kr
스라이선스는다음 [ 표 1] 과같다 [7]. [ 표 1] 2015년사용라이선스 순위 라이선스 사용률 (%) 1 MIT License 26 2 GNU General Public License(GPL) 2.0 21 3 Apache License 2.0 16 4 GNU General Public License(GPL) 3.0 9 5 BSD 2.0(3-clause, New or Revised) License 6 6 GNU Lesser General Public License(LGPL) 2.1 4 7 Artistic License(Perl) 4 8 GNU Lesser General Public License(LGPL) 3.0 2 9 ISC License 2 10 Microsoft Public License 2 < 자료 > "Top 20 licenses". Black Duck Software. 19 November 2015. Archived from the original on 19 July 2016. Retrieved. 2. 시놉시스 ( 주 ) 시놉시스에서분석한 2019 년 9 월자료에의하면라이선스사용현황은다음 [ 표 2] 와 같다. MIT 라이선스사용이증가한것을볼수있다 [8]. [ 표 2] 2019년사용라이선스 순위 라이선스 사용률 (%) 1 MIT License 32 2 GNU General Public License(GPL) 2.0 18 3 Apache License 2.0 14 4 GNU General Public License(GPL) 3.0 7 5 BSD 2-clause License 6 6 ISC License 5 7 GNU Lesser General Public License(LGPL) 2.1 4 8 GNU Lesser General Public License(LGPL) 3.0 2 9 Artistic License(Perl) 4 10 Eclipse Public License(EPL) 1 < 자료 > 블랙덕라이선스사용률조사자료, 시놉시스, 내부자료, 2019. 8. 정보통신기획평가원 19
주간기술동향 2020. 6. 10. 3. WhiteSource 소프트웨어 ( 주 ) WhiteSource 소프트웨어 ( 주 ) 가 2016년에 22개의프로그래밍언어, 300만개이상의오픈소스컴포넌트, 7,000만개이상의소스파일의데이터를분석한주요라이선스사용현황을보면, 허용적라이선스 MIT를 25% 가선호하고, GPL V3.0 라이선스를 19% 가선호한것으로나타났다 [10]. 한편, 지난 2018년 4월에조사한라이선스사용현황을보면, MIT 라이선스 26%, Apache 2.0 라이선스 21%, GPL V3.0 라이선스 18%, GPL V2.0 라이선스 11% 로나타났다 [9]. [ 표 3] 2016년사용라이선스 순위 라이선스 사용률 (%) 1 MIT License 25 2 GNU General Public License(GPL) 3.0 19 3 Apache License 2.0 15 4 GNU General Public License(GPL) 2.0 15 5 3-clause BSD License 6 6 GNU Lesser General Public License(LGPL) 2.1 6 7 Microsoft Public License(MS-PL) 5 8 2-clause BSD License 3 Zlib 1 9 Eclipse 1.0 1 BSD 4 1 10 Other 5 < 자료 > Sivan Michaeli, Top 10 Open Source Software Licenses of 2016 and Key Trends. WhiteSource. 2017. 1. 12. WhiteSource에서 200개이상의프로그래밍언어로이루어진 400만개이상의오픈소스패키지와 1억 3,000만개이상의오픈소스파일을분석한결과, 허용적라이선스의사용량이 2012년에는 41% 였으나 2019년에는 67% 로증가하고, 카피레프트라이선스는 2012년 59% 에서 2019년에는 33% 로감소한것을확인하였다 [10]. 20 www.iitp.kr
< 자료 > Ayala Goldstein, Open Source Licenses in 2020: Trends and Predictions, WhiteSource. 2020. 1. 23. [ 그림 3] 허용적 vs 카피레프트라이선스사용추이 4. GitHub 최근에마이크로소프트웨어 ( 주 ) 가 75 억달러 (8 조 ) 에인수한세계최대오픈소스플랫폼 인깃허브 (GitHub) 의전체 3,100 만개발자중에 1/4 에해당하는 800 만명이 2018 년 1 년동안신규유입되었고, 200 만이상의단체가깃허브를사용하기시작하였다 [12]. [ 표 4] 2015년사용라이선스 순위 라이선스 사용률 (%) 1 MIT License 44.69 2 Other 15.68 3 GNU General Public License(GPL) 2.0 12.96 4 Apache License 2.0 11.19 5 GNU General Public License(GPL) 3.0 8.88 6 3-clause BSD License 4.53 7 Unlicense 1.87 8 2-clause BSD License 1.70 9 GNU Lesser General Public License(LGPL) 3.0 1.30 10 GNU Affero General Public License(AGPL) 3.0 1.05 < 자료 > Ben Balter, Open source license usage on GitHub.com, 2015. 3. 9. 정보통신기획평가원 21
주간기술동향 2020. 6. 10. < 자료 > Ben Balter, Open source license usage on GitHub.com, 2015. 3. 9. [ 그림 4] GitHub 라이선스사용동향 2015년 GitHub 저장소패키지의라이선스표기율은 20% 정도이고, 사용한라이선스의사용률은 [ 표 4] 와같다 [11]. 라이선스사용변화를살펴보면 [ 그림 4] 와같이 MIT, Apache, GPLv2가 2013년이후지속해서증가하고있는것을볼수있다 [11]. IV. 오픈소스라이선스사용동향 III장에서살펴본주요오픈소스라이선스사용동향을통해오픈소스라이선스검증기관과깃허브에서제공한라이선스의사용현황을연도별로정리하면, [ 그림 5] 와같이허용적라이선스인 MIT, Apache, BSD 라이선스의사용률은지속해서일정하게유지되거나점진적으로증가하고있는것을볼수있고, 카피레프트계열 GPL 및 LGPL 라이선스의사용률은점진적으로감소하고있는현상을볼수있다. 각라이선스계열의주요조항 ( 의무사항 ) 을확인해보면다음과같다. 허용적라이선스계열인 MIT 라이선스의조항 ( 의무사항 ) 은 1 저작권, 개발자및기여자정보의표시 를요구한다. Apache 2.0 라이선스의조항 ( 의무사항 ) 은 1 저작권, 개발자및기여자정보의표시, 2 코드를수정한경우수정한정보의표시, 3 라이선스정보의제공 을요구한다. 22 www.iitp.kr
< 자료 > 한국전자통신연구원분석자료, 2020. 2. [ 그림 5] 오픈소스라이선스사용동향 카피레프트라이선스계열인 GPL 2.0/3.0의조항 ( 의무사항 ) 은 1 저작권, 개발자및기여자정보의표시, 2 코드를수정한경우수정한정보의표시, 3 라이선스정보의제공, 4 같은라이선스로재배포할것, 5 소스코드의제공 을요구한다. 이러한라이선스조항 ( 의무사항 ) 을비교해보면제약사항이적은허용적라이선스계열의 MIT 및 Apache 라이선스를선호하고있음을알수있다. 즉, 오픈소스를사용하는사람들은수정한소스에대한라이선스변경을허용하고, 수정한소스에대한공개를원하지않는것을알수있다. 1. 주요라이선스간의호환성 허용적라이선스및카피레프트라이선스계열의라이선스조항 ( 의무사항 ) 이서로다르므로오픈소스사용시라이선스조항 ( 의무사항 ) 에주의하여야한다. 관련하여 GPL 2.0/3.0 라이선스와호환성정보가 [ 표 5] 와같이정의되어있다. 오픈소스사용자들은오픈소스라이선스에유념하여상호호환성이없는라이선스를혼용하여사용할때생길수있는문제점에유의해야한다. 라이선스충돌로인해개발한소프트웨어를재개발해야할수도있다. 정보통신기획평가원 23
주간기술동향 2020. 6. 10. [ 표 5] 라이선스와 GPL 라이선스간의호환성 순위 라이선스 GPL 2.0 호환 GPL 3.0 호환 1 MIT License 예 예 2 Apache License 2.0 아니요 예 3 3-clause BSD License 예 예 4 GNU GPL v2.0 or later 예 아니요 5 GNU GPL v3.0 or later 아니요 예 6 GNU LGPL v2.1 or later 예 예 7 Microsoft Public License 아니요 아니요 8 GNU LGPL v3.0 or later 예 예 9 2-clause BSD License 아니요 아니요 10 ISC License 예 예 < 자료 > 공개소프트웨어연구개발수핼가이드라인, 과학기술정보통신부, NIPA, 2018. 6., p.56. [ 표 5] 에서오픈소스라이선스는조항 ( 의무사항 ) 충돌로 GPL 2.0 라이선스를갖는소스와 Apache 2.0, GPL 3.0, Microsoft Public License, 2-clause BSD License를갖는소스는함께사용하여배포할수없고, GPL 3.0 라이선스를갖는소스와 GPL 2.0, Microsoft Public License, 2-clause BSD License를갖는소스도함께사용하여배포할수없다 [12]. 이러한라이선스간의호환성의요인으로 GPL 2.0/3.0과호환성이있는 MIT 라이선스의사용률이 [ 그림 5] 와같이꾸준히증가하고있는것으로보인다. 2. IT 기업의주요프로젝트라이선스 세계기업의 65% 이상이오픈소스를활용하고있으며, ICT 산업에서오픈소스의비중은갈수록높아지는추세이다. 리눅스재단의설문조사에따르면 72% 의기업들이내부적및비상용으로오픈소스를사용하고, 55% 는사용제품에오픈소스를사용한다고한다 [13]. 구글, 아마존등세계적기업들은인공지능, 클라우드등핵심제품을오픈소스프로젝트로공개하고배포한다. 이들프로젝트의라이선스를확인해본결과, [ 표 6] 과같이허용적라이선스계열이많은것을확인하였다 [14]. 24 www.iitp.kr
[ 표 6] IT 기업의주요프로젝트라이선스 기업명프로젝트명라이선스명 Android GPL v2, Apache 2.0 구글 Chromium BSD, MIT 등 Tensorflow Apache 2.0 아마존 AWS Apache 2.0, MIT ALEXA Apache 2.0 IBM APACHE Apache 2.0 MS vscode CNTK MIT MIT Facebook React BSD, MIT 삼성 TizenRT Apache 2.0 < 자료 > 김우진, 공공오픈소스 R&D 확대를위한제언, IITP, ICT SPOT ISSUE 산업분석, 2019. 4., p.10. V. 결론 본고에서는향후 4차산업혁명핵심기술인빅데이터, 클라우드, IoT, AI의도입시, 81% 이상이오픈소스에기반을둘예정이라는정보를기반으로, 오픈소스에대한전반적인오픈소스라이선스의무사항인 저작권, 개발자및기여자정보의표시, 코드를수정한경우수정한정보의표시, 라이선스정보의제공, 같은라이선스로재배포할것 ( 카피레프트 ), 소스코드의제공 등을살펴보았고, 오픈소스라이선스를의무사항에따라허용적라이선스, 약한카피레프트라이선스, 강한카피레프트라이선스계열로분류하여수정및배포범위를확인하였다. 그리고주요오픈소스라이선스의사용동향을확인하기위해주요오픈소스라이선스검증기관 ( 블랙덕소프트웨어 ( 주 ), 시놉시스 ( 주 ), WhiteSource( 주 )) 및저장소제공기관 ( 깃허브 ) 에서발표한오픈소스라이선스의사용현황을비교분석하였다. 분석결과, 허용적라이선스인 MIT, Apache, BSD 라이선스의사용률은일정하게유지되어 2015년부터점진적으로증가하는추세를확인하였고, 카피레프트계열의 GPL 및 LGPL 라이선스의사용률은점진적으로감소하고있음을확인하였다. 또한, IT 주요 정보통신기획평가원 25
주간기술동향 2020. 6. 10. 기업인구글, 아마존등세계적기업들은인공지능, 클라우드등핵심제품을오픈소스프로젝트로공개하고배포하는데허용적라이선스계열을많이사용한다는것도확인하였다. 따라서, 국내외오픈소스시장이 20% 이상높은성장세를유지하고, 해외 IT 기업을중심으로주요오픈소스프로젝트가허용적라이선스계열을선호하고있다는것으로부터, 오픈소스개발자와주요오픈소스개발 / 참여기관 ( 업체 ) 은오픈소스를개인적으로무제한수정할수있는권한을제공하고, 재배포에는최소한 ( 저작권, 개발자및기여자정보의표시 ) 의정보를제공하고, 개발한소스는공개를하지않아도되는오픈소스라이선스를선호하는성향을확인할수있었다. 이러한특징은오픈소스프로젝트개발은공개되어있으나개발한오픈소스에대한공개는원치않는다는것을내포하고있으므로, 이는오픈소스개발시전략적고려사항으로검토해볼수있는사항으로판단된다. 본고에서살펴본오픈소스라이선스의사용동향을기반으로, 추후주요 IT 기업의비즈니스모델에대한적용사례등관련동향분석이요구된다. [ 참고문헌 ] * [1] 공개SW역량프라자홈페이지, 공개소프트웨어동향 (https://www.oss.kr/oss_trend) [2] 최상호, 4차산업혁명의숨은원동력, 오픈소스현황과시사점, KDB미래전략연구소이슈분석, 제 770호, 2020. 1, p.44. [3] 최상호, 4차산업혁명의숨은원동력, 오픈소스현황과시사점, KDB미래전략연구소이슈분석, 제 770호, 2020. 1. p.46. [4] 2018년공개소프트웨어시장조사보고서, 과학기술정보통신부, 정보통신산업진흥원 (NIPA), 2018. 11, p.15. [5] 이철남, 권순선, 최민석, 이진태, 오픈소스SW 라이선스가이드, 정보통신부, 컴퓨터프로그램보호위원회, 2007. 11., p.13. [6] 김경애, 이철남, 오픈소스소프트웨어라이선스가이드3.0, 문화체육관광부, 한국저작권위원회, pp.10-12. [7] Top 20 licenses. Black Duck Software. 19 November 2015, Archived from the original on 19 July 2016. * Acknowledgement This work was supported by Electronics and Telecommunications Research Institute (ETRI) grant funded by the Korean government. [20YR1110, Enhancement of ETRI Open Source Governance and Supporting Open R&D Activity] 26 www.iitp.kr
[8] 블랙덕라이선스사용률조사자료, 시놉시스, 내부자료, 2019. 8. [9] Sivan Michaeli, Top 10 Open Source Software Licenses of 2016 and Key Trends, WhiteSource, 2017. 1. 12. [10] Ayala Goldstein, Open Source Licenses in 2020: Trends and Predictions, WhiteSource, 2020. 1. 23. [11] Ben Balter, Open source license usage on GitHub.com, 2015. 3. 9. [12] 공개소프트웨어연구개발수핼가이드라인, 과학기술정보통신부, NIPA, 2018. 6, p.56 [13] 김우진, 공공오픈소스 R&D 확대를위한제언, IITP, ICT SPOT ISSUE 산업분석, 2019. 4, p.9. [14] 김우진, 공공오픈소스 R&D 확대를위한제언, IITP, ICT SPOT ISSUE 산업분석, 2019. 4, p.10. 정보통신기획평가원 27