$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

오픈 소스 라이선스 양립성 위반 식별 기법 연구
A Study on the Identification of Open Source License Compatibility Violations 원문보기

정보처리학회논문지. KIPS transactions on software and data engineering. 소프트웨어 및 데이터 공학, v.7 no.12, 2018년, pp.451 - 460  

이동건 (영남대학교 컴퓨터공학과) ,  서영석 (영남대학교 컴퓨터공학과)

초록
AI-Helper 아이콘AI-Helper

전 세계적으로 각종 산업 분야를 불문하고 소프트웨어 개발 시 오픈 소스 소프트웨어가 다양하게 활용되고 있다. 이러한 오픈 소스 소프트웨어는 자유로운 사용에 대한 권리뿐만 아니라 그에 따른 책임을 라이선스(license) 형태로 요구한다. 오픈 소스 소프트웨어 라이선스는 오픈 소스 소프트웨어 개발자와 이용자 간의 조건 범위를 명시한 계약이기 때문에 개발자가 규정한 라이선스를 지켜야 하며 이를 위반할 경우에는 저작권 침해가 발생하고, 이에 대한 책임을 지게 된다. 특히, 새로운 소프트웨어 개발 시 기존에 개발된 오픈 소스 소프트웨어를 활용하는 경우, 각 코드의 라이선스가 양립성(compatibility)문제를 발생시키지 않고 서로 호환되는지 확인해야만 한다. 그러나 이러한 철학에 반하여 양립성 문제 관련 사건들이 다수 발생하고 소송으로 이어지기도 하면서 원활한 오픈 소스 소프트웨어 생태계에 악영향을 미치고 있다. 따라서 본 논문에서는 사용하고자 하는 오픈 소스 소프트웨어들 간에 오픈 소스 규칙을 준수하고 라이선스 양립성 문제가 발생하지 않는지 식별할 수 있는 새로운 기법인 OSLC-Vid를 제안한다. 이렇게 제안된 기법은 실제 오픈 소스 소프트웨어를 활용하여 위반사례 식별 성능을 검증하였다.

Abstract AI-Helper 아이콘AI-Helper

Open source software is used in various ways when developing new softwares all around the world. It requires rights and responsibilities as a form of an open source software license. Because the license is a contract between original software developers of the open source software and users, we must...

주제어

표/그림 (16)

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 따라서 본 논문에서는 소프트웨어 개발자가 사용하고자 하는 오픈 소스 소프트웨어들 사이에 라이선스 양립성 문제를 자동적으로 식별할 수 있는 새로운 기법인 OSLC-Vid (O Open S Source L License C Compatibility V Violation Identification)를 제안한다. OSLC-Vid에서는 연관 규칙 분석(Association rule analysis)을 활용하는 동시에 효율을 높이기 위한 선험적 알고리즘(Apriori algorithm)[13]을 사용하여 오픈 소스 코드의 단어 중심으로 패턴을 추출함으로써 라이선스 위반을 식별할 수 있도록 하였다.
  • 보다 다양한 분야의 오픈 소스 소프트웨어를 OSLC-Vid에 적용하여 결과 일반화 및 충분한 트레이닝을 위한 오픈 소스 소프트웨어 개수 범위에 대해 연구하고자 한다. 또한, 오픈 소스 소프트웨어를 특성별로 분류하여 각 특성별 그룹에 대해 최적의 지지도와 신뢰도 범위를 식별하기 위한 경험적인 실험 연구를 진행하고자 한다. 마지막으로, 오픈 소스 소프트웨어에 작성되어 있는 주석 정보를 추가 활용하여 연관 규칙을 확장하여 보다 향상된 라이선스 양립성 위반 기법을 제안하고자 한다.
  • 또한, 오픈 소스 소프트웨어를 특성별로 분류하여 각 특성별 그룹에 대해 최적의 지지도와 신뢰도 범위를 식별하기 위한 경험적인 실험 연구를 진행하고자 한다. 마지막으로, 오픈 소스 소프트웨어에 작성되어 있는 주석 정보를 추가 활용하여 연관 규칙을 확장하여 보다 향상된 라이선스 양립성 위반 기법을 제안하고자 한다.
  • 본 연구를 통해 OSLC-Vid가 성공적인 라이선스 위반 탐색 결과를 보여주었지만 향후 다음과 같은 이슈들에 대해 추가 연구를 진행하고자 한다. 보다 다양한 분야의 오픈 소스 소프트웨어를 OSLC-Vid에 적용하여 결과 일반화 및 충분한 트레이닝을 위한 오픈 소스 소프트웨어 개수 범위에 대해 연구하고자 한다. 또한, 오픈 소스 소프트웨어를 특성별로 분류하여 각 특성별 그룹에 대해 최적의 지지도와 신뢰도 범위를 식별하기 위한 경험적인 실험 연구를 진행하고자 한다.
  • 본 논문에서는 오픈 소스 소프트웨어 사용 시 라이선스 양립성 문제 해결을 지원하기 위해, 라이선스 위반 여부를 자동적으로 식별할 수 있는 기법인 OSLC-Vid를 제안하였다. OSLC-Vid에서는 기존 오픈 소스 소프트웨어들을 의미있는 단어 중심으로 전처리하여 효율적인 연관 규칙 분석을 통해 해당 소프트웨어가 가지고 있는 경향과 특성을 연관 규칙 형태로 파악하였고, 이를 바탕으로 라이선스 위반이 의심되는 오픈 소스 소프트웨어에도 같은 경향과 특성이 나타나는지 분석함으로써 실제 위반 여부를 식별 및 검증해낼 수 있었다.
  • 본 연구를 통해 OSLC-Vid가 성공적인 라이선스 위반 탐색 결과를 보여주었지만 향후 다음과 같은 이슈들에 대해 추가 연구를 진행하고자 한다. 보다 다양한 분야의 오픈 소스 소프트웨어를 OSLC-Vid에 적용하여 결과 일반화 및 충분한 트레이닝을 위한 오픈 소스 소프트웨어 개수 범위에 대해 연구하고자 한다.
  • R에는 트레이닝을 수행한 GPL 오픈 소스 소프트웨어들의 경향이 모두 반영되어 있기 때문에, 검증 대상인 오픈 소스 소프트웨어에서 R의 규칙들이 하나 이상 탐지된다면, 이는 해당 오픈 소스 소프트웨어와 라이선스 양립성 충돌로 사용하지 말아야 하는 GPL 라이선스의 코드가 포함되어 있음을 나타낸다. 이러한 결과는 오픈소스 소프트웨어의 라이선스 양립성 위반 사항에 대한 판단 근거와 함께 오픈 소스 소프트웨어 배포 전 수정 여부를 확인할 수 있는 기회를 제공해준다.
  • 이러한 연관 규칙 기법을 활용하여 본 연구에서는 기존 오픈 소스 소프트웨어들을 트레이닝 셋으로 구성한 후, 전처리 과정을 통해 나온 단어들을 중심으로 연관분석을 수행하여 관련 단어들 사이에 직접적인 경향을 분석하도록 하였다. 이러한 결과를 기반으로 유사한 성격을 가지고 있는 오픈 소스 소프트웨어에도 이러한 경향이 나타나는지 확인하여 라이선스 위반 여부를 식별할 수 있도록 하였다.
  • 10과 같이 이를 라이선스 위반이 의심되는 오픈 소스 소프트웨어에 적용하여 이러한 경향의 규칙들이 포함되어있는지 분석한다. 즉, 본 연구의 실험에서는 GPL 2.0 라이선스 기반의 오픈 소스 소프트웨어를 트레이닝하여 얻은 연관규칙들을 GPL 2.0과 라이선스 양립성 위반이 의심되는 Apache 2.0 라이선스 기반의 오픈 소스 소프트웨어를 대상으로 적용해보고 이들이 탐지되는지 확인한다. Fig.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
오픈 소스 소프트웨어는 무엇인가? 현대의 소프트웨어 개발 환경은 오픈 소스 소프트웨어(Open Source Software: OSS) 중심으로 활발히 이루어지고 있다. 오픈 소스 소프트웨어란 누구나 해당 소프트웨어를 자유롭게 사용할 수 있는 소프트웨어로서 라이선스 방식을 통해 배포되며, 소스코드가 공개되어 있고, 자유롭게 복제, 수정, 사용, 재배포가 가능한 소프트웨어를 의미한다[1]. 오픈 소스 소프트웨어는 무엇보다 개발한 내용이 대중들에게 공개되는 것뿐만 아니라 수정 및 업그레이드도 자유롭기 때문에 소비자가 원하는 방향으로 나아갈 가능성이 높고, 이에 따라 오픈 소스 소프트웨어는 경제적인 완성도가 높아 소프트웨어 개발자들이 개발 시 가장 먼저 생각하는 분야가 되었다.
오픈 소스 소프트웨어의 라이선스는 무엇을 의미하는가? 오픈 소스 소프트웨어는 저작권자들이 코드 공개, 자유로운 수정 및 배포 등의 권리를 허가하지만 라이선스(License)형태로서 그에 따른 책임을 부과한다. 오픈 소스 소프트웨어의 라이선스란 오픈 소스 소프트웨어 개발자와 이용자 간에 이용 방법 및 조건의 범위를 명시한 계약이다. 따라서 오픈 소스 소프트웨어를 이용하기 위해서는 개발자가 규정한 라이선스를 지켜야 하며, 이를 위반할 경우에는 라이선스 위반이 발생하고, 이에 대한 책임을 지게 된다.
Duan의 연구로 이진 유사도 측정 기술을 이용하여 소프트웨어의 라이선스 위반을 식별 할 시 발생하는 문제점은 무엇인가? A와 A’를 이진 유사도 측정 기술(Binary similarity measurement techniques)로 대조하여 같은 형태의 소스코드가 분석된다면 라이선스 위반으로 식별한다. 이러한 연구는 기본적으로 네이티브 라이브러리를 새로이 구성해야 하기 때문에 분석 대상에 따라 시간적인 측면에서 좋은 성능을 기대하기 어렵고 소스 코드 단위로 비교하는 것보다 정확성이 저하될 수 있다. Gordon의 연구[16]에서는 Carneades 시스템의 지원을 받는 오픈 소스 소프트웨어의 양립성 이슈를 다루었고, Kapitsaki의 연구[17]에서는 소프트웨어 라이선스 표준 포맷인 SPDX(Software Package Data Exchange)를 사용한 오픈 소스 소프트웨어에 대해서 SPDX 파일 내에 오픈 소스 양립성 위반을 탐색하는 방법을 다룬다.
질의응답 정보가 도움이 되었나요?

참고문헌 (21)

  1. Open Source software Competency Plaza, OSS definition [Internet], https://www.oss.kr/en_oss_definition. 

  2. North Bridge & Black Duck, 2015 the future of Open source [Internet], https://www.slideshare.net/blackducksoftware/2015-future-of-open-source-survey-results. 

  3. David Perry, The interesting and complex legal issues of 2017 [Internet], https://opensource.com/article/17/12/best-legal. 

  4. Mark Radcliffe, GPLv2 goes to court: More decisions from the Versata tarpit [Internet], https://opensource.com/article/17/12/best-legal. 

  5. OpensourceSW License Information Systems, License Introduction [Internet], https://olis.or.kr/en/LicenseIntroduction.do. 

  6. Byungil Kim, GPL(General Public License) and Legal issues regarding International Private Law, Korea Private International Law Journal, No.14, pp. 80-108, 2008. 

  7. Open source software License International System, Open source licenses comparison [Internet], https://olis.or.kr/license/compareGuide.do. 

  8. GNU Operating System, Various Licenses and Comments about Them [Internet], https://www.gnu.org/licenses/license -list.en.html#GPLIncompatibleLicenses. 

  9. The Apache Software Foundation, For the purposes of being included in an Apache product, which licenses are considered to be similar in terms to the Apache license 2.0? [Internet], https://www.apache.org/legal/resolved.html. 

  10. Joseph Morris, Which License Should I Use? MIT vs. Apache vs. GPL [Internet], https://exygy.com/which-licenseshould-i-use-mit-vs-apache-vs-gpl/. 

  11. Jim Lynch, Did Remix OS violate the GPL and Apache licenses? [Internet], https://www.infoworld.com/article/3023538/linux/did-remix-os-violate-the-gpl-and-apache-licenses.html 

  12. Lisa Fenn, Artifex and Hancom Reach Settlement Over Ghostscript Open Source Dispute [Internet], http://www.prweb.com/releases/2017/12/prweb14991130.htm. 

  13. Ashish Shah, "Association rule mining with modified apriori algorithm using top down approach", in Proceedings of the 2016 2nd International Conference on Applied and Theoretical Computing and Communication Technology, pp.747-752, 2016. 

  14. Chul Nam Lee, "The Research on the Compatibility of Open Source Licenses," Copyright Quarterly, Vol.30, No.1, pp.131-152, 2017. 

  15. Ruian Duan, Ashish Bijlani, Meng Xu, Taesoo Kim, and Wenke Lee, "Identifying Open-source License Violation and 1-day Security Risk at Large Scale," in Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security, pp.2169-2185, 2017. 

  16. Thomas F. Gordon, "Analyzing open source license compatibility issues with Carneades," in Proceedings of the 13th International Conference on Artificial Intelligence and Law, pp.51-55, 2011. 

  17. Georgia M. Kapitsaki, FrederikKramer, and Nikolaos D. Tselikas, "Automating the license compatibility process in open source software with SPDX," Journal of Systems and Software, Vol.131, pp.386-401, 2017. 

  18. CodeEye Service, CodeEye Introduction [Internet], https://olis.or.kr/license/compareGuide.do 

  19. Black Duck By Synopsys, Manage Open Source Risks with Black Duck Hub [Internet], https://www.blackducksoftware.com/solutions/open-source-license-compliance. 

  20. Charu C. Aggarwal, "Data Mining," 1st ed., Springer Publishing, ch. 4, pp.93-133, 2015. 

  21. Jean-Marc Adamo, "Data Mining for Association Rules and Sequential Patterns," 1st ed., Springer Publishing, ch. 3, pp.33-48, 2001. 

저자의 다른 논문 :

LOADING...
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로