Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[MASOCON 2017] 오픈 소스 라이선스와 컴플라이언스 - 박준석 수석/한국공개소프트웨어협회

MICROSOFTWARE
November 27, 2017

[MASOCON 2017] 오픈 소스 라이선스와 컴플라이언스 - 박준석 수석/한국공개소프트웨어협회

2017년 11월 25일 마이크로소프트웨어 개발자 콘퍼런스, 마소콘 2017
오픈 소스 라이선스와 컴플라이언스 - 박준석 수석/한국공개소프트웨어협회

MICROSOFTWARE

November 27, 2017
Tweet

More Decks by MICROSOFTWARE

Other Decks in Programming

Transcript

  1. 오픈 소스 라이선스와 컴플라이언스
    2017. 11. 25 (토)
    한국공개소프트웨어협회
    박준석 수석
    [email protected]
    MASOCON 2017
    GPL 2.0
    GPL 3.0 BSD
    Apache
    2.0
    LGPL
    2.1
    AGPL
    3.0
    MIT

    View full-size slide

  2. 누군가 핵심 기술 공개!
    다양한 기여자들의 참여와
    협업을 통한 발전!
    혁신적인 기술의 진보!
    오픈 소스 소프트웨어는 집단지성의 힘으로 개발되는
    혁신적 개발 방법으로 기능 및 품질 향상의 신속성을 담보
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  3. 우리는 현재 오픈 소스 소프트웨어가 지배하는 세상에 살고 있다.
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  4. 소프트웨어 개발자가 자신이 만든 프로그램의 소스코드를 공개하여
    누구나 자유롭게 사용, 복제, 수정, 재배포 할 수 있도록 허락한
    소프트웨어를 지칭
    오픈 소스 소프트웨어
    전 세계 오픈 소스 소프트웨어는 약 100만건에 이르고 있으며 최근의 동향으로 볼 때 향후 급격한 프로젝트 증가가 예상됨
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  5. SW 개발자1
    일반 사용자
    쓸만한 무료
    SW군!
    GitHiub
    Source forge
    Etc
    내가 만든 SW를
    오픈 소스 프로젝트로
    배포하자!
    와! 내가 만들고 있는
    제품에 이 오픈 소스
    소스코드를 적용시키면
    딱이겠군!
    SW 개발자2
    온라인 저장소
    온라인 저장소
    라이선스는 무엇으로
    할까?
    GPL, LGPL, Apache,
    MIT…?
    OSS로
    배포
    다운로드
    소스코드
    실행파일
    개발가이드
    설치가이드
    사용자매뉴얼드
    라이선스

    이 프로젝트 재밌네요.
    저도 개발에 기여
    (Contribution)
    할께요.
    SW 개발자4
    기여
    SW 개발자3
    저는 설치가이
    드 등 문서화
    (Document)에
    기여할게요.
    기여
    전용 웹사이트,
    블로그, 카페, …
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  6. I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  7. http://www.tensorflow.org
    https://github.com/tensorflow/tensorflow
    Open Source Library for Machine Learning & Deep Learning
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  8. I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  9. Copyright: 저작권
    License: 사용허락권
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  10. 지식재산권(Intellectual Property Rights)은 발명자에게 주어지는
    창작물에 대한 배타적 독점권리
    ⇒ 소프트웨어는 저작권, 특허권, 상표권, 영업비밀 등으로 보호됨
    ※ 소프트웨어는 개발과 동시에 자동으로 독점권리를 보호
    오픈 소스 SW는 저작권자가 자신의 소스코드를 공개하여 누구나
    자유롭게 사용, 복제, 수정, 재배포 할 수 있도록 개방한 소프트웨어
    ⇒ 소프트웨어 개발자와 사용자 간의 사용방법 및 조건의 범위를
    명시한 라이선스(GPL ,MIT, Apache 등)로 권리 보호
    ※ 소스코드를 개방했을 뿐! 지적재산권으로 보호되는 저작물!
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  11. 모든 SW 라이선스
    Free Software 정의 준수 라이선스
    Open Source Software 정의 준수 라이선스
    OSI 승인 라이선스
    ▪ 기술 및 비용 관점에서 오픈
    소스 소프트웨어 용어 사용
    ▪ Open Source Initiative(OSI)
    Founder
    ▪ https://opensource.org
    ▪ OSI가 제시한 10개
    기준(OSD)을 충족하는
    라이선스에 인증을 부여
    ▪ 2017년 11월 현재 80여개 승인
    ▪ Free Software Movement
    ▪ Copyleft
    ▪ Free Software
    Foundation(FSF) Founder
    ▪ http://www.fsf.org
    ▪ GPL Family License
    Distribution
    ▪ GNU Project
    ▪ Free Software 철학을
    내포한 라이선스는 전 세계
    약 2,500여개로 추정
    The Open Source Definition
    1. Free Redistribution 6. No Discrimination Against Fields of Endeavor
    2. Source Code 7. Distribution of License
    3. Derived Works 8. License Must Not Be Specific to a Product
    4. Integrity of The Author's Source Code 9. License Must Not Restrict Other Software
    5. No Discrimination Against Persons or Groups 10. License Must Be Technology-Neutral
    Richard Stollman
    Eric Raymond Bruce Perence Free Software + Open Source Software
    = Free & Open Source Software = FOSS
    = 공개 소프트웨어
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  12. 오픈 소스 소프트웨어 라이선스 분류
    Permissive
    MIT License, BSD,
    Apache License
    2.0, …
    Weak Copyleft
    MPL, EPL, LGPL, …
    Strong Copyleft
    GPL, AGPL, …
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  13. 복제
    배포
    (판매)
    고지
    의무
    공개
    범위
    공개
    방법
    특허
    무효
    수정
    양립

    사용 범위
    내부
    사용
    의무사항
    오픈 소스 소프트웨어 라이선스 의무사항 적용범위
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  14. 오픈 소스 소프트웨어 라이선스 의무사항 적용 대상
    I 오픈 소스 소프트웨어 라이선스
    - 오픈 소스 소프트웨어를 배포 시에는 해당 오픈 소스 라이선스
    의무사항을 준수(저작권 고지, 라이선스 사본 포함, 소스코드 제공 등)
    해야 하는데, 소스코드 제공 등의 의무사항 적용 대상은 불특정 다수의
    공공(Public)이 아닌 해당 수취자임
    Ex1) 오픈 소스 소프트웨어를 누구나 접속할 수 있는 온라인에 배포한
    경우 적용 대상은 공공(Public)
    Ex2) 오픈 소스 소프트웨어를 특정 수취자에게만 배포한 경우 적용
    대상은 해당 수취자

    View full-size slide

  15. 저작권 고지(소스코드)
    소스코드 반환
    라이선스 사본 포함(영문)
    특허 조항
    보증의 부인 책임의 제한
    오픈 소스 소프트웨어 라이선스의 공통 의무사항
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  16. 주요 라이선스 의무사항
    MIT
    License
    BSD
    License
    Apache
    License
    2.0
    GPL
    2.0
    GPL
    3.0
    AGPL 3.0 LGPL 2.1 EPL MPL
    복제, 배포, 수정의 권한 허용         
    배포 시 라이선스 사본 첨부        
    저작권 고지 사항 유지         
    배포 시 소스코드 제공의무
    (Reciprocity)와 범위
    All All
    Include
    Network
    Object Code
    Static Link
    Module File
    수정 시 수정내용 고지       
    명시적 특허라이선스의 허용     
    라이선시가 특허소송 제기 시
    라이선스/특허 종료
    (특허 보복 조항)
    Patent    
    이름, 상표, 상호에 대한
    사용제한
      
    보증의 부인         
    책임의 제한         
    주요 오픈 소스 소프트웨어 라이선스 의무사항 비교
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  17. 자체 개발한 코드에 오픈 소스 소프트웨어 결합 시
    자체 개발한 코드의 공개 의무 발생 케이스
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide






  18. Static Link
    Dynamic Link
    PIPE, Socket, CLA
    Fork-Exec
    Sub Program 1 [오픈 소스 소프트웨어]
    General Public License 3.0
    수정 미수정
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드





    Static Link
    Dynamic Link
    PIPE, Socket, CLA
    Fork-Exec
    Sub Program 1 [오픈 소스 소프트웨어]
    General Public License 2.0
    수정 미수정
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    GNU General Public License
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  19. Etc System Call
    Sub Program 1 [Linux Kernel]
    GNU General Public License 2.0
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    응용프로그램
    수정 미수정
    Link
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    ※ Classpath linking 시
    Sub Program 1 [JAVA SE, JAVA EE,ETC]
    GPL 2 with Classpath
    linking Exception
    수정 미수정
    GNU General Public License
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  20. Dynamic
    Link
    Static Link
    ※ Object Code 제공
    Dynamic
    Link
    Static Link
    ※ Object Code 제공
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    Sub Program 1 [오픈 소스 소프트웨어]
    Lesser General Public License 2.1
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    Sub Program 1 [오픈 소스 소프트웨어]
    Lesser General Public License 3.0
    GNU Lesser General Public License
    수정 미수정
    수정 미수정
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  21. Machine 1 – Server
    Static Link
    Dynamic Link
    PIPE, Socket, CLA
    Fork-Exec
    Main Program [사유 소프트웨어]
    Sub Program 1 [오픈 소스 소프트웨어]
    Affero General Public License 3.0
    수정 미수정
    Machine 2 - Client
    WEB, APP, ETC…
    Network 서비스
    [Cloud Service, Web Service, ETC …]
    자체 개발한 소스코드





    Affero General Public License
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  22. Machine 1 – Server
    Static Link
    Dynamic Link
    PIPE, Socket, CLA
    Fork-Exec
    Main Program [사유 소프트웨어]
    Sub Program 1 [오픈 소스 소프트웨어]
    Affero General Public License 3.0
    수정 미수정
    Machine 2 - Client
    WEB, APP, ETC…
    자체 개발한 소스코드





    공개의무가 없는 라이선스로
    선언된 드라이버
    ex) Apache License 2.0
    Network 서비스
    [Cloud Service, Web Service, ETC …]
    Affero General Public License
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  23. MPL 코드가 사유 소프트웨어에
    포함될 경우 코드가 포함된 파일만 공개
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    Sub Program 1 [오픈 소스 소프트웨어]
    Mozilla Public License 2.0
    MPL 코드가 포함된 파일
    Mozilla Public License
    수정 미수정
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  24. EPL 코드가 사유 소프트웨어에
    포함될 경우 코드가 포함된 모듈만 공개
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    Sub Program 1 [오픈 소스 소프트웨어]
    Eclipse Public License 1.0
    EPL 코드가 포함된 모듈
    Eclipse Public License
    수정 미수정
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide






  25. Static Link
    Dynamic Link
    PIPE, Socket, CLA
    Fork-Exec
    Sub Program 1 [오픈 소스 소프트웨어]
    Apache License 2.0, BSD, MIT
    수정 미수정
    Main Program [사유 소프트웨어]
    자체 개발한 소스코드
    Permissive License
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  26. 주요 라이선스 주요의무사항 공개범위
    GPL 2.0
    (GNU General Public License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 영문 라이선스 사본 포함
    • 배포 시 GPL로 배포
    • 바이너리로 배포 시 약정서 제공
    • GPL 코드(수정코드포함) 및 링크 시 모든
    코드를 GPL에 의해 공개
    GPL 3.0
    (GNU General Public License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 영문 라이선스 사본 포함
    • 배포 시 GPL로 배포
    • GPL 3.0 코드에 포함된 특허를 사용자에게 무상 허용
    • 사용자에게 특허 소송 시 보복(라이선스 취소, 특허 허여 취소)
    • 바이너리로 배포 시 약정서 제공
    • GPL 코드(수정코드포함) 및 링크 시 모든
    코드를 GPL에 의해 공개
    LGPL 2.1
    (GNU Lesser General Public
    License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 영문 라이선스 사본 포함
    • 배포 시 LGPL로 배포
    • 바이너리로 배포 시 약정서 제공
    • LGPL 코드(수정코드포함) 및 정적링크된
    응용프로그램의 목적코드 공개
    AGPL 3.0
    (Affero General Public
    License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 영문 라이선스 사본 포함
    • 배포 시 AGPL로 배포
    • 바이너리로 배포 시 약정서 제공
    • AGPL 코드(수정코드포함) 및 링크 시 모
    든 코드를 AGPL에 의해 공개
    • 네트워크로 통신하는 SW의 사용자에게
    소스코드 공개의무 발생
    주요 오픈 소스 소프트웨어 라이선스 의무사항 비교
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  27. 주요 라이선스 주요의무사항 공개범위
    MPL
    (Mozilla Public License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시, MPL 명시
    • 영문 라이선스 사본 포함
    • 배포 시 MPL로 배포
    • MPL 코드에 포함된 특허를 사용자에게 무상 허용
    • 사용자에게 특허 소송 시 보복(라이선스 취소, 특
    허 허여 취소)
    • MPL 소스코드가 포함된 파일을
    공개
    EPL
    (Eclipse Public License)
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시, EPL 명시
    • 영문 라이선스 사본 포함
    • 배포 시 EPL로 배포
    • EPL 코드에 포함된 특허를 사용자에게 무상 허용
    • 사용자에게 특허 소송 시 보복(라이선스 취소, 특
    허 허여 취소)
    • EPL 소스코드가 포함된
    모듈을 공개
    Apache License 2.0
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 영문 라이선스 사본 포함
    • 배포 시 Apache License 2.0으로 배포
    • Apache 코드에 포함된 특허를 사용자에게 무상 허

    • 사용자에게 특허 소송 시 보복(특허 허여 취소)
    • 어떠한 경우에도 코드
    공개의무 없음
    BSD License
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 라이선스 조항 포함
    • 어떠한 경우에도 코드
    공개의무 없음
    MIT License
    • 자유로운 사용, 복제, 배포, 수정 허용
    • 저작권표시, 보증책임이 없다는 표시
    • 라이선스 조항 포함
    • 어떠한 경우에도 코드
    공개의무 없음
    주요 오픈 소스 소프트웨어 라이선스 의무사항 비교
    I 오픈 소스 소프트웨어 라이선스
    http://www.oss.kr/oss_open1_3/670033

    View full-size slide

  28. - 제품을 실행파일(패키지SW, 임베디드 기기 형태 등) 형태로 배포할
    경우 최소 3년 동안 사용자 요청이 있을 경우 최소한의 배포 비용만
    받고 소스코드를 제공하겠다는 약정서(Written Offer)를 제공해야 하며
    사용자의 요청이 있을 경우 제공해야함(E-Mail, CD-ROM 등에)
    * FTP 서버, 웹 서버에 소스코드를 업로드 해 놓고 약정서에 해당 주소를
    기입하여 다운로드 받게 할 수 있음
    * 소스코드를 CD-ROM 등의 매체에 담아서 제품(Object Code 또는
    Executable File) 배포 시 함께 제공 할 수 있음
    GPL이 적용된 SW를 바이너리 형태로 배포하는 방법
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  29. - GPL은 수취자를 대상으로만 소스코드를 제공하면 되나 제품을 받은
    수취자는 GPL의 권한을 함께 받기 때문에 GPL 부분(비공개 코드가
    GPL과 결합되어 GPL화 된 부분을 포함)에 대해서는 재배포할 권한을
    갖게 됨
    이것은 GPL에서 요구하고 있는 수취자의 권리이므로 배포자가
    수취자의 재배포 활동을 막을 권한은 없음
    * 사실상 무제한 재배포가 가능
    GPL의 재배포 이슈
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  30. 약정서(Written Offer)
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  31. I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  32. 오픈 소스 소프트웨어 저작권 및 라이선스 고지 예시 – Kakao Talk
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  33. 양립성(Compatibility)
    Apache License 2.0
    GNU General Public License 2.0
    +

    GNU General Public License 2.0과 Apache License 2.0은
    라이선스 의무사항이 충돌하여 함께 사용하여 재배포 할 수 없음
    ※ GNU General Public License 2.0 + Apache License 2.0 = 양립불가
    ※ GNU General Public License 3.0 + Apache License 2.0 = 양립가능
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  34. 다중 라이선스
    Dual License
    두 개의 라이선스 중 하나를 선택하여 사용 가능
    Ex1) GPL 2.0 or MIT
    Ex2) AGPL 3.0 or Commercial
    Triple License
    Ex1) MPL or GPL or LGPL
    세 개의 라이선스 중 하나를 선택하여 사용 가능
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  35. 하이브리드 라이선스
    기본 프로그램은 커뮤니티 버전으로 제공
    추가 기능을 모듈/라이브러리의 형태로 상용 판매
    추가 기능을 포함한 엔터프라이즈 버전을 상용 판매
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  36. 라이선스 변경 이슈
    동일 버전에 대해서는 라이선스를 변경할 수 없음
    v1.0 MIT License를 v1.0 AGPL 3.0으로 변경 불가
    업데이트 버전은 라이선스를 변경할 수 있음
    v1.0 MIT License를 v2.0 AGPL 3.0으로 변경 가능
    프로젝트의 라이선스를 변경할 수 있을까?
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  37. 특허(Patent)
    특허권에 대한 비차별 적이며 무료사용이 가능한 권한허용(Royalty Free)
    라이선시가 특허소송을 제기하는 경우 라이선스 종료(특허보복조항)
    제 3자가 소유한 특허의 취급에 관한 조항
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  38. Korea Intellectual Property Rights Information Service(KIPRIS)
    http://www.kipris.or.kr
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  39. Open Invention Network(OIN)
    http://www.openinventionnetwork.com
    전 세계 2045개 기관/기업 가입
    멤버 간 특허 공유 단체
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  40. 프로그램
    서브프로그램
    자체개발
    DBMS
    상용
    라이브러리
    상용
    BSD
    GPL 2.0
    LGPL 2.1
    MIT
    OSS를
    활용하여 개발
    메인프로그램
    자체개발
    개발자
    수취자
    난 소스코드를 요청할
    권리도 있고 재배포할
    권리도 있음
    GPL은 코드
    공개의무가
    발생하므로
    이와 결합된
    자체개발
    소스코드도
    수취자에게
    제공 의무
    발생
    정보
    시스템
    구축,패키
    지 SW/
    임베디드
    기기 배포
    및 판매
    GitHiub
    Source forge
    Etc.
    오픈 소스를
    활용한
    프로그램 개발
    이 경우에는 나는
    코드를 요청할
    권리가 없군!
    저작권 고지, 약정서 제공 등 의무사항도 준수해야함
    제3자
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  41. 웹 시스템
    OSS를 활용하여
    시스템 구축
    GitHiub
    Source forge
    Etc.
    직접적인 배
    포가 이루어
    지지 않았으
    므로 대부분
    의 라이선스
    는 인터넷 서
    비스 시 의무
    사항이 적용
    되지 않음
    인터넷
    서비스
    오픈소스를
    사용했지만
    난 서비스만 할
    거라고!
    이용자
    이 경우에는 소스코드를
    요청할 권리가
    없군!
    서브프로그램
    자체개발
    DBMS
    상용
    라이브러리
    상용
    BSD
    GPL 3.0
    LGPL 2.1
    APACHE 2.0
    메인프로그램
    자체개발
    나도 요청할 권리
    가 없군!
    인터넷 서비스의 경우 의무사항이 적용되지 않음
    제3자
    개발자
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  42. 클라우드
    시스템
    서브프로그램
    자체개발
    DBMS
    상용
    라이브러리
    상용
    GPL 3.0
    AGPL 3.0
    LGPL 2.1
    APACHE 2.0
    메인프로그램
    자체개발
    기업
    AGPL 3.0은
    네트워크를
    통한 서비스
    의 경우에도
    수취자 요청
    시 소스코드
    제공의무가
    발생
    인터넷
    서비스
    이용자
    AGPL 3.0 라이선스를
    사용했으면 난 소스코
    드를 요청할 정당한
    권리가 있음
    AGPL 3.0 등은 인터넷 서비스시에도 의무사항 적용
    제3자
    오! 나도 요청할
    권리가 있구만~
    OSS를 활용하여
    시스템 구축
    오픈 소스를
    사용하여 개발한
    클라우드 서비스를
    제공합니다!
    GitHiub
    Source forge
    Etc.
    I 오픈 소스 소프트웨어 라이선스

    View full-size slide

  43. 그럼 이제 오픈 소스 소프트웨어를 활용하여 TV를 만들어서 팔아봅시다.
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  44. 정책 결정
    ❖ 우리 회사의 정책, 제품형태 등을 고려
    ❖ 본 프로젝트에서는 자체 개발 소프트웨어의 소스코드는 공개 불가능
    ❖ 오픈 소스 소프트웨어 자체는 소스코드 공개 가능
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  45. 대상 분야 오픈 소스 정보수집
    http://www.oss.kr
    II 오픈 소스 라이선스 컴플라이언스
    https://openhub.net

    View full-size slide

  46. 오픈 소스 프로파일링 작성 및 선정
    http://www.oss.kr/oss_repository5/632939
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  47. 오픈 소스 보안취약점 검토
    개발에 활용할 OSS를 선정했으면 사용하려고 하는
    버전에 보안취약점이 있는지 확인
    보안취약점 발견 시 최신 패치 버전으로 업데이트
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  48. 미국 국립표준기술원(NIST) NVD
    (National Vulnerability Database)
    http://nvd.nist.gov
    II 오픈 소스 라이선스 컴플라이언스
    오픈 소스 보안취약점 검토

    View full-size slide

  49. 오픈 소스 라이선스 양립성 검토
    GPL 2.0 상용
    개발에 활용할 OSS 선정 시 라이선스 양립성 검토 필요
    GPL 2.0
    상용
    LGPL GPL 2.0
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  50. 자체개발
    응용 프로그램
    비공개
    라이브러리
    GPL 2.0
    Command Line
    Argument
    Dynamic
    Link
    라이브러리
    상용
    (써드파티)
    리눅스 커널
    GPL 2.0
    only System Call
    Dynamic
    Link
    DBMS
    GPL 2.0
    Socket
    커넥터
    LGPL 2.1
    이 TV는 아래와 같은 구조로 개발되었습니다.
    물론 실제 TV를 이렇게 개발하진 않구요. 예시입니다. 예시~
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  51. GPL 2.0, LGPL 2.1 라이선스의 프로젝트가 사용되었습니다.
    ❖ 판매제품에 공개SW 프로젝트 및 저작권자 고지, 라이선스 사본(영문)
    포함
    ❖ 소스코드를 함께 제공 or 약정서(Written Offer) 제공 후 요청 시 소
    스코드 제공
    ❖ 약정서 제공의 경우 수취자의 소스코드 요청 시 이메일 or 웹서버
    등을 통해 제공
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  52. 자체개발
    응용 프로그램
    상용
    라이브러리
    GPL 2.0
    Command Line
    Argument
    Dynamic
    Link
    라이브러리
    상용
    (써드파티)
    리눅스 커널
    GPL 2.0
    only System Call
    Dynamic
    Link
    DBMS
    GPL 2.0
    Socket
    커넥터
    LGPL 2.1
    소스코드
    제공
    소스코드
    제공
    소스코드
    제공
    소스코드
    제공
    소스코드
    제공의무 없음
    소스코드
    제공의무 없음
    비전염
    비전염
    비전염
    비전염
    코드 공개 범위는?
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  53. Fossology (주석 분석)
    GPL 2.0 (some libraries LGPL 2.1)
    http://www.fossology.org
    소스코드 라이선스 검토
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  54. 라이브러리
    GPL 2.0
    리눅스 커널
    GPL 2.0
    only
    DBMS
    GPL 2.0
    커넥터
    LGPL 2.1
    GNU General Public License 2.0
    ❖ 소스코드를 수정하였는가?
    - 미수정: 원본 소스코드 배포
    - 수정: 수정된 소스코드 배포
    GNU Lesser General Public License 2.1
    ❖ 소스코드를 수정하였는가?
    - 미수정: 원본 소스코드 배포
    - 수정: 수정된 소스코드 배포
    ❖ 정적링크인가? 동적링크인가?
    - 정적링크: LGPL 원본 소스코드, 응용프로그램의 목적코드 배포
    - 동적링크: LGPL 원본 소스코드 배포
    배포 소스코드의 범위는?
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  55. ❖ 제품의 일부분을 외부에 의뢰하여
    개발하는 경우 해당 부분에
    오픈 소스 SW를 사용했는지 여부와
    라이선스 위반 여부를 명확히 파악
    ❖ 계약서를 통해 오픈 소스 SW 사용과
    관련된 내용을 명시
    ❖ 계약서 샘플은 공개SW 포털의
    공개소프트웨어 거버넌스 프레임워크 및
    적용가이드 참고
    외부 코드의 관리 – 써드파티
    라이브러리
    상용
    http://www.oss.kr/index.php?&mid=oss_repository12
    &search_target=title&search_keyword=%EA%B1%B0%
    EB%B2%84%EB%84%8C%EC%8A%A4&document_srl=
    628521
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  56. 바이너리 검토
    Binaryanalysis Tool
    Apache License 2.0
    http://www.binaryanalysis.org
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  57. 저작권 고지, 약정서, 라이선스 사본
    +
    본 제품에는 아래와 같은 오픈 소스 프로젝트가 사용되었습니다.
    오픈 소스 프로젝트의 저작권자, 라이선스, 프로젝트 URL은 아래의 리
    스트에서 확인이 가능합니다.
    GPL, LGPL 프로젝트의 경우 최소 3년간 [email protected]으로
    소스코드 요청 메일을 보내주시면 보내 드리겠습니다.
    GPL, LGPL 라이선스의 경우 최소 3년간 www.dkaien77.net 사이트를
    방문하시면 해당 소스코드를 다운로드 받으실 수 있습니다.
    GPL, LGPL 라이선스의 경우 제품에 포함되어 있는 “OSS CD”에 소스코
    드가 동봉되어 있습니다.
    Linux Kernel
    https://www.kernel.org
    Copyright © Linus Torvaldz & thousands of collaborators
    GNU General Public License 2.0 only & various others
    JSP-Library-GPL
    http://www.dkaien77.net
    Copyright © Jun Seok Park
    GNU General Public License 2.0
    JSP-DBMS-GPL JSP-Connector-LGPL
    http://www.dkaien77.net http://www.dkaien77.net
    Copyright © Jun Seok Park Copyright © Jun Seok Park
    GNU General Public License 2.0 GNU Lesser General Public
    License 2.1
    1. 소스코드 동봉 or
    약정서 제공
    2. 라이선스 사본 포함
    라이브러리
    GPL 2.0
    리눅스 커널
    GPL 2.0
    only
    DBMS
    GPL 2.0
    커넥터
    LGPL 2.1
    약정서
    라이선스
    사본
    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide

  58. 저작권 고지, 약정서, 라이선스 사본
    GNU Lesser General Public License
    Version 2.1, February 1999
    Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59
    Temple Place, Suite 330, Boston, MA 02111-1307 USA
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    [This is the first released version of the Lesser GPL. It also
    counts as the successor of the GNU Library Public License,
    version 2, hence the version number 2.1.]
    Preamble
    The licenses for most software are designed to take away your
    freedom to share and change it. By contrast, the GNU General
    Public Licenses are intended to guarantee your freedom to
    share and change free software--to make sure the software is
    free for all its users.

    The GNU General Public License (GPL)
    Version 2, June 1991
    Copyright (C) 1989, 1991 Free Software Foundation, Inc.
    59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
    Everyone is permitted to copy and distribute verbatim copies
    of this license document, but changing it is not allowed.
    Preamble
    The licenses for most software are designed to take away your
    freedom to share and change it. By contrast, the GNU General
    Public License is intended to guarantee your freedom to share
    and change free software--to make sure the software is free
    for all its users. This General Public License applies to most of
    the Free Software Foundation's software and to any other
    program whose authors commit to using it.

    II 오픈 소스 라이선스 컴플라이언스

    View full-size slide