COSCUP2020-GPL-3.0、Tivo、User Product and Security–新版開源授權對嵌入式資安防護的挑戰及因應,簡報下載網址:
“GPL-3.0、Tivo、User Product and Security–新版開源授權對嵌入式資安防護的挑戰及因應(GPL-3.0、Tivo、User Product and Security)”, 2020 © 林誠夏/Lucien C.H. Lin, CC-BY-SA-3.0-TW-or-later: https://www.slideshare.net/LucienCHLin/coscup2020gpl30tivouser-product-and-security/
明白反制Tivoization,為GPL-3.0與GPL-2.0文本裡極大的不同點,簡要來說,Tivoization意指裝置的程式源碼有提供給使用者,然透過數位權利管理(DRM)的機制,禁止該裝置植入或執行修改後的程式碼,造成裝置雖然有提供源碼,然受限於DRM,改作後的程式無法再被植回應用,相當程度造成開源社群得其物(源碼)而無所用。GPL-3.0就此爭議,從新定義了一般性使用商品(User Product)的程式源碼提供範圍,於視為源碼一部份的安裝資訊(Installation Information)裡,明定必須包括認證金鑰(authorization keys)。然而,解決Tivoization的同時,也觸發了具加解密功能嵌入式裝置的資安維護難題。本場次將說明GPL-3.0 User Product條款的正確解讀,並於GPL-3.0授權合規的前提,分享實務上觀察到的各種處理模式。
明白反制Tivoization,為GPL-3.0新版與GPL-2.0舊版文本裡極大的不同點,此一特點導致許多巨型的商業導向開源協作方案,於政策未明之前,多暫時決定先不採用GPL-3.0/AGPL-3.0新版授權的開源軟體。簡要來說,Tivoization意指裝置的程式源碼有提供給使用者,然透過數位權利管理(DRM)的機制,禁止該裝置被植入、或執行修改後的程式碼,造成部份裝置雖然有提供源碼,然受限於DRM,改作後的程式無法再被植回原裝置利用,相當程度造成開源社群得其物(源碼)而無所用,於GPL-3.0完稿前,自由軟體基金會及Richard Stallman多次公開發言評議此事,最後的結論是將解決方案寫入新版GPL授權條款,透過授權條款第3版的更新來徹底解決。GPL-3.0發布時便肩負這個責任,從新定義一般性使用商品(User Product)的程式源碼提供範圍,讓視為源碼一部份的安裝資訊(Installation Information),明定提供給使用者的源碼物件,必須包括認證金鑰(authorization keys)。也就是說,使用者進行源碼修改後,廠商也必須協助提供認證金鑰,讓該修改版本可以植回裝置來運作。然採此方式解決Tivoization的同時,也同時觸發了具加解密功能嵌入式裝置的資安維護難題,不少路由器大廠、晶片大廠,以及智慧型車載裝置大廠,例如GENIVI Alliance,便暫定將GPL-3.0授權元件排除於使用清單之外。就這些爭議,本場次將說明GPL-3.0 User Product條款的正確解讀,於正確理解的基礎上,進一步協助聽眾能進一步達到GPL-3.0授權合規,場次後半段,將說明實務上此議題的各種處理模式,部份處理模式爭議性小,部份處理模式仍遊走在灰色地帶,然綜合而言,此議題的了解與掌握,對於嵌入式領域做到開源合規,乃不可迴避的重要關竅,值得重點式分享予COSCUP參與的會眾。
About Lucien C.H. Lin 林誠夏
知識背景為科技法律,曾任職中央研究院自由軟體鑄造場,從事公眾授權模式的研究,目前持續撥付心力,營建國內開源授權知識的分享網絡,亦同時參與OpenChain Taiwan工作小組,與開源合規全球社群互動合作。
Lucien Cheng-hsia Lin, he has been doing the FOSS licenses research and study more than 10 years when acting as the academic professional in the project “OpenFoundry” hosted in Academia Sinica from 2005. Now he is engaging himself to build the Taiwan Open Source Legal Network with companions to facilitate FOSS licensing knowledge exchange and FOSS ecosystem establishment in Taiwan, such as participating in the OpenChain Taiwan workgroup to collaborate with FOSS compliance community all over the world.