$30 off During Our Annual Pro Sale. View Details »

擁抱開源:企業應如何善用開源技術,才能得其利而防其弊 - 加強版

擁抱開源:企業應如何善用開源技術,才能得其利而防其弊 - 加強版

國外企業不論大小對開源技術的採用意願極高,採用成熟度高的開源技術一來可以加快研發速度,二來也會大幅降低營運成本。但台灣企業對開源技術的認知程度較低,擔心穩定性、安全性與支援性等問題,但甚少花時間去了解,當你用正確的心態去看待開源,且有妥善的管理機制去管理它,開源技術將是企業的重大助力。

加強版新增了幾個案例,以及 GDPR/CCPA 相關的解決方案。

Yi-Feng Tzeng

June 19, 2021
Tweet

More Decks by Yi-Feng Tzeng

Other Decks in Technology

Transcript

  1. 企業應如何善用開源技術
    才能得其利而防其弊
    曾義峰 (Ant)
    [email protected]
    2021-06-18
    擁抱開源
    加強版

    View Slide

  2. 2/151
    曾義峰 (aka Ant)

    TGO (Top Geeks' Organization) Networks
    創始委員及現任學習委員

    臺灣資安社群 CHROOT 成員

    曾任資安顧問及電子票證公司顧問

    前 LeadBest Consulting Group 首席執行顧問

    開源人年會 (COSCUP) 2009 / 2012 / 2020 講師

    臺灣駭客年會 (HITCON) 2008 及 2009 講師

    臺灣 Modern Web 2015 ~ 2020 講師

    View Slide

  3. 3/151
    曾義峰 (aka Ant)

    研究自由開源授權十年有餘。

    曾於英業達 (Inventec) 及廣達電腦 (Quanta) 等教授自由軟體授權相關課程。

    於 2011 年 OSDC( 開源開發者大會 ) 分享《開源專案之授權自動化分析工具》

    於 2018 年 COSCon( 中國開源年會 ) 分享《谈开源授权态样如何融入 DevOps 之持续整合》
    相關文章
    2011-03-07 淺談 App Store 與開放源碼軟體授權的案例: VLC 的合法上架與 Miro Video Converter 的非法下架
    https://www.openfoundry.org/tw/enterprise-application/8274
    2011-03-15 淺談將開放源碼軟體改名並違法販售: Butterfly Media on Amazon
    https://www.openfoundry.org/tw/enterprise-application/8275
    2011-07-12 從 Red Hat 變更 RHEL 釋出方式來探討 GPL 對原始碼範圍的定義
    https://www.openfoundry.org/tw/enterprise-application/8393
    2011-08-17 開放原始碼的相容與互斥性:從 Ruby 社群變更開放原始碼授權來探討
    https://www.openfoundry.org/tw/enterprise-application/8419
    2012-03-03 談 GPL 軟體原始碼定義及瑕疵修復方式-從 GNU Emacs 違反 GPL 授權條款一事說起
    https://www.openfoundry.org/en/news/8629
    2012-03-08 授權流言終結者 #1 : VirtualBox 授權分析與探討
    https://www.openfoundry.org/tw/enterprise-application/8636
    2012-03-29 授權流言終結者 #2 : The JSON License 的分析與探討
    https://www.openfoundry.org/tw/enterprise-application/8657
    2012-04-23 授權流言終結者 #3 : jQuery 授權的分析與探討
    https://www.openfoundry.org/en/news/8680
    2012-04-29 授權流言終結者 #4 : MongoDB 授權的分析與探討(雙重授權模式 2.0 )
    https://www.openfoundry.org/enterprise-application/8687
    2012-06-26 授權流言終結者 #5 : Neo4j 授權的分析與探討
    https://www.openfoundry.org/enterprise-application/8738

    View Slide

  4. 4/151
    此次以 Q&A 輕鬆的方式,探討幾項重要的企業與開源議題。
    包括

    Linux Kernel 的特殊性

    「雲」與「端」在企業開源授權應用的差異 (Android & Cloud)

    MongoDB 授權的改變

    Elastic 與 Amazon 在 Elasticsearch 上的授權爭議

    Grafana Labs 與 Amazon 的授權合作模式等。
    有助於應對企業開源應用的質疑、化解採用時的疑慮、釐清客戶與 AWS 開源授權的權責。
    若時間有餘,亦會淺談如何利用 AWS 雲服務搭建彈性符合 GDPR/CCPA 規定之應用,
    搶下國際大廠尚有空缺的這塊市場。

    View Slide

  5. 5/151
    Security
    (Hacker)
    Law
    (Intellectual Property)
    Technology
    (Software Dev.)
    衍生著作
    散布權
    專利權
    ...
    靜態連結
    動態連結
    虛擬化
    ...
    逆向分析
    技術回避
    ...

    View Slide

  6. 6/151
    2006 年開始投入自由開源授權條款分析
    15+ years

    View Slide

  7. 7/151
    非常早期 (2008) 投入研究 Android 源碼授權的樣態
    不久 Google 就被 Oracle 告上

    View Slide

  8. 8/151
    最近華為推出鴻蒙 2.0 (Harmony OS)

    View Slide

  9. 9/151
    鴻蒙不會是最後,開源的力量將會迎來更多衍生作品

    View Slide

  10. 10/151
    Q0
    企業幾個常見的自由 / 開源軟體授權問題
    ☑ 服務上雲是否會增加 ( 或避免 ) 授權疑慮及爭議?
    ☑ 許多雲服務背後都是開源軟體,使用上是否會有疑慮?
    ☑ 可否推薦開源授權風險分析顧問或工具?
    ☑ 如何確保內部或協力公司的產出無此風險?
    ☑ 我收到 ( 開源 ) 侵權警告信了,怎麼辦?
    ☑ 我不想依約開源,可以怎麼規避?

    View Slide

  11. 11/151
    Ref: https://github.com/facebook/react

    View Slide

  12. 12/151
    Ref: https://opensource.org/licenses/MIT
    ≈ 167 words

    View Slide

  13. 13/151
    Ref: https://opensource.org/licenses/Apache-2.0
    ≈ 1,582 words

    View Slide

  14. 14/151
    Ref: https://opensource.org/licenses/GPL-3.0
    ≈ 1,582 words
    ≈ 5,608 words

    View Slide

  15. 15/151
    0BSD
    BSD-1-Clause
    BSD-2-Clause
    BSD-3-Clause
    AFL-3.0
    APL-1.0
    Apache-1.1
    Apache-2.0
    APSL-2.0
    Artistic-1.0
    Artistic-2.0
    AAL
    BSL-1.0
    CECILL-2.1
    CDDL-1.0
    CPAL-1.0
    CPL-1.0
    CATOSL-1.1
    CAL-1.0
    EPL-1.0
    EPL-2.0
    EUPL-1.2
    Fair
    AGPL-3.0
    GPL-2.0
    GPL-3.0
    LGPL-2.1
    LGPL-3.0
    Intel
    MS-PL
    MS-RL
    MIT
    MPL-1.0
    MPL-1.1
    MPL-2.0
    NASA-1.3
    Nokia
    OSL-1.0
    OSL-2.1
    OSL-3.0
    QPL-1.0
    RPSL-1.0
    Sleepcat
    PHP-3.0
    PostgreSQL
    Python-2.0
    ZPL-2.0
    Zlib
    Ref: https://opensource.org/licenses/alphabetical

    View Slide

  16. 16/151
    0BSD
    BSD-1-Clause
    BSD-2-Clause
    BSD-3-Clause
    AFL-3.0
    APL-1.0
    Apache-1.1
    Apache-2.0
    APSL-2.0
    Artistic-1.0
    Artistic-2.0
    AAL
    BSL-1.0
    CECILL-2.1
    CDDL-1.0
    CPAL-1.0
    CPL-1.0
    CATOSL-1.1
    CAL-1.0
    EPL-1.0
    EPL-2.0
    EUPL-1.2
    Fair
    AGPL-3.0
    GPL-2.0
    GPL-3.0
    LGPL-2.1
    LGPL-3.0
    Intel
    MS-PL
    MS-RL
    MIT
    MPL-1.0
    MPL-1.1
    MPL-2.0
    NASA-1.3
    Nokia
    OSL-1.0
    OSL-2.1
    OSL-3.0
    QPL-1.0
    RPSL-1.0
    Sleepcat
    PHP-3.0
    PostgreSQL
    Python-2.0
    ZPL-2.0
    Zlib
    Ref: https://opensource.org/licenses/alphabetical

    View Slide

  17. 17/151
    0BSD
    BSD-1-Clause
    BSD-2-Clause
    BSD-3-Clause
    AFL-3.0
    APL-1.0
    Apache-1.1
    Apache-2.0
    APSL-2.0
    Artistic-1.0
    Artistic-2.0
    AAL
    BSL-1.0
    CECILL-2.1
    CDDL-1.0
    CPAL-1.0
    CPL-1.0
    CATOSL-1.1
    CAL-1.0
    EPL-1.0
    EPL-2.0
    EUPL-1.2
    Fair
    AGPL-3.0
    GPL-2.0
    GPL-3.0
    LGPL-2.1
    LGPL-3.0
    Intel
    MS-PL
    MS-RL
    MIT
    MPL-1.0
    MPL-1.1
    MPL-2.0
    NASA-1.3
    Nokia
    OSL-1.0
    OSL-2.1
    OSL-3.0
    QPL-1.0
    RPSL-1.0
    Sleepcat
    PHP-3.0
    PostgreSQL
    Python-2.0
    ZPL-2.0
    Zlib
    Ref: https://opensource.org/licenses/alphabetical
    目前單是 OSI( 開放源碼促進會 ) 通過的條款就達 113 種

    View Slide

  18. 18/151
    Ref: https://resources.whitesourcesoftware.com/blog-whitesource/open-source-licenses-trends-and-predictions

    View Slide

  19. 19/151
    Q1
    Linux Kernel 是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ BSD-3-Clause
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ 其它 ______________________________

    View Slide

  20. 20/151
    Myth 1
    Big software companies don’t use Open Source
    大型軟體公司不使用開源軟體

    View Slide

  21. 21/151
    Ref: https://www.theregister.co.uk/2001/06/02/ballmer_linux_is_a_cancer/

    View Slide

  22. 22/151
    Copyright (C) 2015

    View Slide

  23. 23/151
    Copyright (C) 2015

    View Slide

  24. 24/151
    Copyright (C) 2015

    View Slide

  25. 25/151
    Copyright (C) 2015

    View Slide

  26. 26/151
    Copyright (C) 2015

    View Slide

  27. 27/151
    Copyright (C) 2015
    Microsoft Windows 本身也利用開放源碼軟體

    View Slide

  28. 28/151
    Ref: https://cloudblogs.microsoft.com/windowsserver/2015/05/06/microsoft-loves-linux/

    View Slide

  29. 29/151
    Q1
    Linux Kernel 是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ BSD-3-Clause
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ 其它 ______________________________

    View Slide

  30. 30/151
    Q1
    Linux Kernel 是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ BSD-3-Clause
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☑ 其它 GPL-2.0 + User space exception

    View Slide

  31. 31/151
    Q2
    Android 主要是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0 (with User space exception)
    ☐ Apache-2.0 + GPL-2.0 (with User space exception)
    ☐ Apache-2.0 + GPL-3.0

    View Slide

  32. 32/151
    Myth 2
    You can't make money from Open Source
    你無法從開源賺錢

    View Slide

  33. 33/151
    Ref: https://www.redhat.com/en/about/press-releases/ibm-acquire-red-hat-completely-changing-cloud-landscape-and-becoming-worlds-1-hybrid-cloud-provider
    IBM 以 340 億美元收購 Red Hat
    (2018-10-28)

    View Slide

  34. 34/151
    Ref: https://www.redhat.com/en/about/press-releases/ibm-acquire-red-hat-completely-changing-cloud-landscape-and-becoming-worlds-1-hybrid-cloud-provider

    View Slide

  35. 35/151
    Ref: https://www.f5.com/company/news/press-releases/f5-acquires-nginx-to-bridge-netops-devops
    F5 Networks 以 6.7 億美元收購 NGINX
    (2019-03-11)

    View Slide

  36. 36/151
    Ref: https://www.f5.com/company/news/press-releases/f5-acquires-nginx-to-bridge-netops-devops

    View Slide

  37. 37/151
    Ref: https://seekingalpha.com/symbol/ESTC
    Elastic 市值 60 億美元
    ElasticSearch (2019-05-31)

    View Slide

  38. 38/151
    Ref: https://seekingalpha.com/symbol/ESTC

    View Slide

  39. 39/151

    View Slide

  40. 40/151

    View Slide

  41. 41/151

    View Slide

  42. 42/151

    View Slide

  43. 43/151
    Q2
    Android 主要是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0 (with User space exception)
    ☐ Apache-2.0 + GPL-2.0 (with User space exception)
    ☐ Apache-2.0 + GPL-3.0

    View Slide

  44. 44/151
    Q2
    Android 主要是何種自由 / 開放源碼軟體授權?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0 (with User space exception)
    ☑ Apache-2.0 + GPL-2.0 (with User space exception)
    ☐ Apache-2.0 + GPL-3.0

    View Slide

  45. 45/151
    Q3
    所有自由 / 開源軟體授權的最低遵循義務為何?
    ☐ 沒有義務,且可以修改 / 去除原著作權聲明
    ☐ 需保留著作權聲明,且使用若出事可向原作者求償
    ☐ 需保留著作權聲明,且使用若出事不可向原作者求償

    View Slide

  46. 46/151
    Myth 3
    Open Source has no Copyright
    開源軟體沒有著作權

    View Slide

  47. 47/151
    Ref: https://opensource.org/licenses/MIT
    MIT License

    View Slide

  48. 48/151
    Ref: https://opensource.org/licenses/BSD-3-Clause
    3-Clause BSD License

    View Slide

  49. 49/151
    Ref: https://opensource.org/licenses/Apache-2.0
    Apache License 2.0

    View Slide

  50. 50/151
    Ref: https://opensource.org/licenses/GPL-3.0
    GPL 3.0

    View Slide

  51. 51/151
    Ref: https://opensource.org/licenses/GPL-3.0
    GPL 3.0
    眾裡尋他千百度,驀然回首,重點卻在燈火闌珊處

    View Slide

  52. 52/151

    View Slide

  53. 53/151
    Q3
    所有自由 / 開源軟體授權的最低遵循義務為何?
    ☐ 沒有義務,且可以修改 / 去除原著作權聲明
    ☐ 需保留著作權聲明,且使用若出事可向原作者求償
    ☐ 需保留著作權聲明,且使用若出事不可向原作者求償

    View Slide

  54. 54/151
    Q3
    所有自由 / 開源軟體授權的最低遵循義務為何?
    ☐ 沒有義務,且可以修改 / 去除原著作權聲明
    ☐ 需保留著作權聲明,且使用若出事可向原作者求償
    ☑ 需保留著作權聲明,且使用若出事不可向原作者求償

    View Slide

  55. 55/151
    Q4
    AGPL-3.0 授權的互惠性 / 感染性要求包括哪些行為?
    ☐ 指令輸出
    ☐ 靜態連結
    ☐ 動態連結
    ☐ 網路傳輸

    View Slide

  56. 56/151
    Myth 4
    Open Source is only about Copyright
    開源軟體只涉及著作權

    View Slide

  57. 57/151
    Ref: https://opensource.org/licenses/Apache-2.0
    Apache License 2.0

    View Slide

  58. 58/151
    Ref: https://opensource.org/licenses/Apache-2.0
    Apache License 2.0

    View Slide

  59. 59/151
    Ref: https://opensource.org/licenses/GPL-3.0
    GPL 3.0

    View Slide

  60. 60/151
    Ref: https://opensource.org/licenses/GPL-3.0
    GPL 3.0

    View Slide

  61. 61/151

    View Slide

  62. 62/151
    Q4
    AGPL-3.0 授權的互惠性 / 感染性要求包括哪些行為?
    ☐ 指令輸出
    ☐ 靜態連結
    ☐ 動態連結
    ☐ 網路傳輸

    View Slide

  63. 63/151
    Q4
    AGPL-3.0 授權的互惠性 / 感染性要求包括哪些行為?
    ☐ 指令輸出
    ☑ 靜態連結
    ☑ 動態連結
    ☑ 網路傳輸

    View Slide

  64. 64/151
    Q5
    最新版本 MongoDB 資料庫的授權為下列何者?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ SSPL (Server Side Public License)

    View Slide

  65. 65/151
    Myth 5
    Open Source (licenses) are revocable
    開源軟體 ( 授權 ) 可以撤銷

    View Slide

  66. 66/151
    Ref: https://opensource.org/licenses/Apache-2.0
    Apache License 2.0

    View Slide

  67. 67/151
    Ref: https://opensource.org/licenses/GPL-3.0
    GPL 3.0

    View Slide

  68. 68/151
    Ref: https://opensource.org/licenses/MIT
    Ref: https://opensource.org/licenses/BSD-3-Clause
    MIT License
    3-Clause BSD License

    View Slide

  69. 69/151
    Ref: https://opensource.org/licenses/MIT
    Ref: https://opensource.org/licenses/BSD-3-Clause
    MIT License
    3-Clause BSD License
    多數開源授權條款內容未提及是否可以撤銷,
    但根據美國聯邦巡迴法院 Jacobsen v. Katzer (2008) 案例判決,
    除非違反條款內容時方可撤銷。

    View Slide

  70. 70/151
    Q5
    最新版本 MongoDB 資料庫的授權為下列何者?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ SSPL (Server Side Public License)

    View Slide

  71. 71/151
    Q5
    最新版本 MongoDB 資料庫的授權為下列何者?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ SSPL (Server Side Public License)

    View Slide

  72. 72/151
    Q6
    自由 / 開放源碼軟體授權涉及下列哪幾種智財權?
    ☐ 著作權
    ☐ 商標權
    ☐ 專利權
    ☐ 營業秘密
    ☐ 積體電路布局權

    View Slide

  73. 73/151
    Myth 6
    I want / can avoid Open source software
    我想要 / 能夠避免使用開源軟體

    View Slide

  74. 74/151
    軟體開發模式
    電腦程式
    ( 關卡設計 )
    電腦程式
    ( 關卡設計 )
    美術圖案
    ( 藝術設計 )
    電腦程式
    ( 遊戲引擎 )
    套裝銷售
    B D
    A
    美術圖案
    ( 藝術設計 )
    採購契約 自由 / 開放
    源碼軟體契約
    電腦程式
    ( 遊戲引擎 )
    可能需要提供作者顯名宣告,
    甚至提供電腦程式原始碼等義務

    View Slide

  75. 75/151
    軟體開發模式
    案例一 :Linksys
    2003 年 3 月 Cisco 正式宣布收購 Linksys 。
    此事公開後,使得自由軟體社群紛紛討論 Linksys WRT54G 是否
    有違反 GPL 授權規定。經過社群的初步審核後,發現其核心使用
    Linux kernel 2.4.5 及其它的 GPL 授權程式,如 Busybox 、
    CramFS 等。因此,自由軟體基金會 (Free Software Foundation)
    開始介入調查,經由溝通後,使得 Cisco 終於釋出 Linksys
    WRT54G 的程式原始碼。

    View Slide

  76. 76/151
    軟體開發模式
    案例一 :Linksys
    其它公司
    基於採購契約
    提供電腦程式
    基於採購契約
    提供電腦程式
    套裝銷售

    View Slide

  77. 77/151
    軟體開發模式
    案例一 :Linksys
    其它公司
    基於採購契約
    提供電腦程式
    基於採購契約
    提供電腦程式
    收購
    套裝銷售

    View Slide

  78. 78/151
    軟體開發模式
    案例一 :Linksys
    其它公司
    基於採購契約
    提供電腦程式
    基於採購契約
    提供電腦程式
    收購
    你的 Linksys WRT54G
    產品中含有 GPL 授權程式
    請將該產品所有程式的原始碼
    公開
    套裝銷售

    View Slide

  79. 79/151
    軟體開發模式
    案例一 :Linksys
    其實 Cisco/Linksys 對於違反 GPL 授權規定都不知悉,
    因為違反的程式皆由上游廠商 Broadcom 與外包廠商
    所取得。這也反映了程式取得來源確認的重要性。

    View Slide

  80. 80/151
    軟體開發模式
    案例二 : 壹網樂 - 網樂通
    其它公司
    基於契約
    提供電腦程式
    套裝租出

    View Slide

  81. 81/151
    軟體開發模式
    案例二 : 壹網樂 - 網樂通
    其它公司
    基於契約
    提供電腦程式
    套裝租出
    你的網樂通產品中含有 GPL
    授權程式,請將該產品程式
    的原始碼公開。
    台灣自由 / 開放源碼社群

    View Slide

  82. 82/151

    View Slide

  83. 83/151
    軟體開發模式
    案例三 : Ameriprise vs. Versata
    1. Ameriprise 採購 Versata 軟體,
    並額外取得軟體修改權 ( 客製權 ) 。
    2. Ameriprise 請外包廠商 Infosys 客製
    化,但開發的產品與 Versata 類似。
    3. Versata 怒對 Ameriprise 提起訴訟。
    4. Ameriprise 隨之反擊,並聲稱 Versata
    軟體中含有 GPL-2.0 的 XML parser 程式。
    5. 該程式著作屬於 XimpleWare ,因此
    XimpleWare 對 Ameriprise 、 Versata
    及 Versata 的客戶提起侵權訟訴。
    Ref: http://www.protecode.com/complex-legal-proceedings-may-far-reaching-effects-gpl-software-licensing/

    View Slide

  84. 84/151
    軟體開發必須面對的真相

    View Slide

  85. 85/151
    軟體開發必須面對的真相
    如果沒有了 Google ( 搜尋引擎 )
    很多軟體工程師就無法辦事了

    View Slide

  86. 86/151
    軟體開發必須面對的真相
    C + GUI + library

    View Slide

  87. 87/151

    View Slide

  88. 88/151

    View Slide

  89. 89/151
    程式開發必須面對的真相
    Download
    抄 Combine

    View Slide

  90. 90/151

    View Slide

  91. 91/151
    程式開發必須面對的真相
    大多沒有想過,那些
    抄的、改的、用的程式
    可能讓公司的專案、程式、產品
    違法及賠償

    View Slide

  92. 92/151
    程式開發必須面對的真相
    這就好像在網路隨便抓圖片,
    然後直接放在產品裡面販售出去一樣
    可能讓公司的專案、程式、產品
    違法及賠償

    View Slide

  93. 93/151
    程式設計師必須面對的真相
    自由 / 開放源碼軟體
    無所不在

    View Slide

  94. 94/151






    View Slide

  95. 95/151
    mean lang:c

    View Slide

  96. 96/151

    View Slide

  97. 97/151

    View Slide

  98. 98/151

    View Slide

  99. 99/151

    View Slide

  100. 100/151

    View Slide

  101. 101/151
    沒有著作權聲明,甚至不確定該著作的來源 ( 他也是抄來的 )

    View Slide

  102. 102/151
    Q6
    自由 / 開放源碼軟體授權涉及下列哪幾種智財權?
    ☐ 著作權
    ☐ 商標權
    ☐ 專利權
    ☐ 營業秘密
    ☐ 積體電路布局權

    View Slide

  103. 103/151
    Q6
    自由 / 開放源碼軟體授權涉及下列哪幾種智財權?
    ☑ 著作權
    ☑ 商標權
    ☑ 專利權
    ☐ 營業秘密
    ☐ 積體電路布局權

    View Slide

  104. 104/151
    Q7
    Firefox 是自由 / 開放源碼軟體,得以自由使用其商標?
    ☐ 是
    ☐ 否

    View Slide

  105. 105/151
    Myth 7
    My lawyer can solve Open Source License problem
    我的律師可以解決開源軟體授權問題

    View Slide

  106. 106/151
    Ref: https://opensource.org/licenses/category
    目前單是 OSI( 開放源碼促進會 ) 通過的條款就達 113 種
    還不包括未通過的又常見的,例如 Ruby License

    View Slide

  107. 107/151
    Ref: https://opensource.org/licenses/category

    View Slide

  108. 108/151
    Ref: https://opensource.org/licenses/category
    更麻煩的還是授權彼此間的交互相容性

    View Slide

  109. 109/151
    程式交互性
    A 程式授權 B 程式授權
    A 程式授權 B 程式授權
    函式呼叫 / 靜態連結 / 動態連結 / 網路交互

    View Slide

  110. 110/151
    程式交互性
    B 程式授權
    ( 互惠 / 感染 )
    A 程式授權 B 程式授權
    函式呼叫 / 靜態連結 / 動態連結 / 網路交互

    View Slide

  111. 111/151
    程式交互性
    ( 互斥 / 不相容 )
    A 程式授權 B 程式授權
    函式呼叫 / 靜態連結 / 動態連結 / 網路交互

    View Slide

  112. 112/151
    GPL-2.0 與 GPL-3.0 是否相容?
    GPL-2.0 與 AGPL-3.0 是否相容?
    GPL-3.0 與 AGPL-3.0 是否相容?
    LGPL-2.1 與 GPL-2.0 是否相容?
    LGPL-3.0 與 GPL-2.0 是否相容?
    MIT 與 GPL-2.0 是否相容?
    Apache-2.0 與 GPL-2.0 是否相容?

    View Slide

  113. 113/151
    GPL-2.0 與 GPL-3.0 是否相容?
    GPL-2.0 與 AGPL-3.0 是否相容?
    GPL-3.0 與 AGPL-3.0 是否相容?
    LGPL-2.1 與 GPL-2.0 是否相容?
    LGPL-3.0 與 GPL-2.0 是否相容?
    MIT 與 GPL-2.0 是否相容?
    Apache-2.0 與 GPL-2.0 是否相容?
    GPL-3.0 / AGPL-3.0
    LGPL-2.1 / GPL-2.0
    GPL-2.0

    View Slide

  114. 114/151
    Q7
    Firefox 是自由 / 開放源碼軟體,得以自由使用其商標?
    ☐ 是
    ☐ 否

    View Slide

  115. 115/151
    Q7
    Firefox 是自由 / 開放源碼軟體,得以自由使用其商標?
    ☐ 是
    ☑ 否
    iceweasel
    Firefox

    View Slide

  116. 116/151
    Q8
    Apache-2.0 的軟體,作者隨其上的專利可自由施行?
    ☐ 是
    ☐ 否

    View Slide

  117. 117/151
    Myth 8
    Open source (licenses) are hard to understand
    開源 ( 授權 ) 很難理解

    View Slide

  118. 118/151
    互惠性 : 三大分類 ( 舊 )
    License scope – Reciprocal ( 互惠性 )
    Low High
    (GPLed)
    GPL
    LGPL
    AGPL
    (MPLed)
    MPL
    EPL
    (BSDed)
    BSD
    MIT
    Apache
    Gift license Sharing-with-files Sharing-with-rules
    Give me credit Give me fixes Give me everything

    View Slide

  119. 119/151
    互惠性 : 四大分類
    License scope – Reciprocal ( 互惠性 )
    GPL
    LGPL
    MPL
    EPL
    BSD
    MIT
    Apache
    Gift
    license
    Sharing with
    files
    Sharing with
    rules
    Give me
    credit
    Give me
    fixes
    Give me
    everything
    AGPL
    Sharing with
    network
    Give me
    everything
    even in network
    Low High

    View Slide

  120. 120/151
    Ref: https://tldrlegal.com/

    View Slide

  121. 121/151
    Copyright (C) 2015
    Ref: http://www.dwheeler.com/essays/floss-license-slide.html
    Creative Commons “Attribution-Share Alike 3.0 License”; the GNU Free Documentation License; or the GNU GPL (version 2 or later)

    View Slide

  122. 122/151
    Copyright (C) 2015
    Ref: https://www.gnu.org/licenses/quick-guide-gplv3.html

    View Slide

  123. 123/151
    Copyright (C) 2015
    Ref: https://www.gnu.org/licenses/quick-guide-gplv3.html
    但這兩張圖無法解決所有問題,
    例如不包括 PHP/Python/Ruby 授權等,
    交互未區別函式呼叫 / 靜態連結 / 動態連結 / 網路交互等。
    Ref: http://www.dwheeler.com/essays/floss-license-slide.html
    Creative Commons “Attribution-Share Alike 3.0 License”; the GNU Free Documentation License; or the GNU GPL (version 2 or later)

    View Slide

  124. 124/151
    此領域需要懂法律智財權,加上瞭解工程技術者,
    將授權條款的文字,解析為工程技術上的實施與流程
    Open Source License Tech Lawyer

    View Slide

  125. 125/151
    更勝一般開源授權技術律師,能看透並提出合法規避者
    ( 隨時可搬出 7 種以上的鑽法律漏洞合法規避者 )
    Open Source License Hacker

    View Slide

  126. 126/151
    Security
    (Hacker)
    Law
    (Intellectual Property)
    Technology
    (Software Dev.)
    衍生著作
    散布權
    專利權
    ...
    靜態連結
    動態連結
    虛擬化
    ...
    逆向分析
    技術回避
    ...

    View Slide

  127. 127/151
    Q8
    Apache-2.0 的軟體,作者隨其上的專利可自由施行?
    ☐ 是
    ☐ 否

    View Slide

  128. 128/151
    Q8
    Apache-2.0 的軟體,作者隨其上的專利可自由施行?
    ☑ 是
    ☐ 否

    View Slide

  129. 129/151
    Q8
    Apache-2.0 的軟體,作者隨其上的專利可自由施行?
    ☑ 是
    ☐ 否
    同樣地,你是否有注意到,
    若你的軟體依 Apache-2.0 開源,其上之專利亦需自由共享。

    View Slide

  130. 130/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ 其它 ______________________________

    View Slide

  131. 131/151
    Elastic CEO 對 Amazon 的不滿
    2021 年 1 月 15 日, Elastic 創始人 Shay Banon 在公司官網宣佈,從 Elastic 7.11
    版本之後, Elasticsearch 與 Kibana 的自由開放源碼授權,將從原本的 Apache-2.0
    變更為 SSPL (Server Side Public License) 與 Elastic License ( 商業付費授權 ) 的
    雙重授權模式。
    Shay 同時表示,這麼做的原因是希望公司與開發社群維持良好「公開」互動的初衷,
    不要像一些雲端服務公司 ( 文章特別指名 Amazon) 拿取 Elasticsearch 與 Kibana 的
    付出心血與貢獻來營利,卻沒有回饋。
    對於使用者而言,比較關心的是『當 Elastic 的 Elasticsearch 及 Kibana 的軟體授權
    協議更改後,對我有什麼影響?未來是不是要付費了?』;
    對於創業或行銷領域者,比較關心的是『自由開放源碼真的能賺錢嗎?怎麼樣的商業
    模式 ( 或稱為營利模式 ) 才是對的?』;
    對於自由開源授權領域者,討論更本質的問題,『自由開放源碼有無商業模式?』。

    View Slide

  132. 132/151
    SSPL 是什麼?
    只要使用 Elasticsearch 或 Kibana 時,連帶將其相關服務的程式 ( 不管這些程式屬
    於你的,或是任何第三方 ) ,經實體或網路提供服務者,都需要依 SSPL 授權開放原
    始碼並提供任何人免費使用,否則就只能改採用商業付費授權的 Elastic License 。
    這些基於 Elasticsearch 或 Kibana 的「相關服務的程式」,根據 SSPL 第 13 條所示,
    包括但不限於,
    ☐ management software
    ☐ user interfaces
    ☐ application program interfaces
    ☐ automation software
    ☐ monitoring software
    ☐ backup software
    ☐ storage software
    ☐ hosting software

    若你原本排斥 GPL 、 AGPL ,那麼你會更不會喜歡 SSPL 。

    View Slide

  133. 133/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ 其它 ______________________________

    View Slide

  134. 134/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ 其它 SSPL (Server Side Public License)_

    View Slide

  135. 135/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ 其它 SSPL (Server Side Public License)_
    請問 AWS 依原 Elastcisearch 開源的專案名稱是什麼?

    View Slide

  136. 136/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ 其它 SSPL (Server Side Public License)_
    請問 AWS 依原 Elastcisearch 開源的專案名稱是什麼?
    Open Distro
    https://opendistro.github.io/for-elasticsearch/

    View Slide

  137. 137/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ 其它 SSPL (Server Side Public License)_
    請問 Open Distro 的授權是什麼?

    View Slide

  138. 138/151
    Q9
    Elasticsearch 的最新授權條款為何?為何變更?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☑ 其它 SSPL (Server Side Public License)_
    請問 Open Distro 的授權是什麼?
    Apache-2.0
    與原 Elasticsearch 授權相同

    View Slide

  139. 139/151
    Q10
    Grafana 的最新授權條款為何?為何變更?與 AWS 有關?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ SSPL
    ☐ 其它 ______________________________

    View Slide

  140. 140/151
    Grafana Labs 主力軟體授權異動
    Grafana Labs 於 2021 年 4 月 20 日宣布旗下 Grafana 、 Loki 及 Tempo 三項主力
    軟體進行授權異動,從 Apache-2.0 變更為 AGPL-3.0 。這是公司從 2021 年初開始
    ,歷經內部多次爭論但充份討論後的最終決定。
    同時表示, AGPL-3.0 與 Apache-2.0 同為 OSI 核可的授權條款,雖 AGPL-3.0 帶給
    社群較多「約束」,但這種回饋顯得更為「公平」。另一方面,即使 MongoDB 推廣
    的 SSPL 授權可能更能「保護」 Grafana 公司,但考量「約束」和「自由」的權衡後
    ,仍決定採用 AGPL-3.0 。
    與 ElasticSearch 事件不同的是, ElasticSearch 與 Amazon/AWS 因鬧翻而引起其
    授權變更,此次 Grafana 並沒有提及有類似的合作問題。雖然 AWS 同 ElasticSearch
    有託管 Grafana 雲服務且最近才推出 Preview 版本,但 Grafana 去年底 (2020/12)
    就有在其官方網站上宣達 Amazon Managed Service for Grafana 此服務,並對此
    合作模式感到愉快。

    View Slide

  141. 141/151
    Q10
    Grafana 的最新授權條款為何?為何變更?與 AWS 有關?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☐ AGPL-3.0
    ☐ SSPL
    ☐ 其它 ______________________________

    View Slide

  142. 142/151
    Q10
    Grafana 的最新授權條款為何?為何變更?與 AWS 有關?
    ☐ MIT
    ☐ Apache-2.0
    ☐ GPL-3.0
    ☑ AGPL-3.0
    ☐ SSPL
    ☐ 其它 ______________________________

    View Slide

  143. 143/151
    最後

    View Slide

  144. 144/151
    Open source license checker in DevOps

    View Slide

  145. 145/151
    在全球隱私法加嚴的現代,還會有更多技術挑戰
    GDPR( 歐盟 ) / CCPA( 美國加州 ) / LGPD( 巴西 ) / 台灣 ( 個資法 ) / ...

    View Slide

  146. 146/151
    這是與 AWS Partner 合作針對跨國企業提出的解決方案

    View Slide

  147. 147/151
    Security
    Marketing
    Compliance
    needs
    pen testing red team
    regulations controls
    standards
    unit / integration / performance test
    unit / integration / performance test
    scheduling
    unit / integration / performance test
    scheduling
    schedule
    pipeline
    Develop

    View Slide

  148. 148/151
    Security, Open source license, Regulation, Law, ...
    未來企業將需要對法遵 / 合規 (Compliance) 投入更多資源

    View Slide

  149. 149/151
    隱私法是以個資為中心的保護規則,不論公司大小都要遵守。
    凡個人資料之蒐集、處理及利用,皆需符合各國個資法相關規定。

    View Slide

  150. 150/151
    隱私法是以個資為中心的保護規則,不論公司大小都要遵守。
    凡個人資料之蒐集、處理及利用,皆需符合各國個資法相關規定。
    DevOps ➤ DevSecOps DevRegOps

    Compliance / Privacy

    View Slide

  151. 151/151
    [email protected]
    https://www.facebook.com/yftzeng.tw
    https://twitter.com/yftzeng

    View Slide