眾新聞 Logo
眾新聞 CitizenNews
眾說

《安心出行》 唔適合開放源碼?破解 OGCIO 嘅幾個謬論


自從政府強制市民進入餐廳同政府場所要使用《安心出行》之後,民間同科技界都有好強烈嘅聲音要求政府將《安心出行》開放源碼(open source), 等市民可以檢視同確認程式嘅功能,以確保私隱得到保障並增加市民使用嘅信心。對此建議,創科局長薛永恒於22日表示:「程式由政府外聘私人公司開發,沒要求對方公開原始碼,強調須尊重知識產權。」 如此高質回應,可謂震驚七百萬人。

香港電台資料照片

或者係坊間對薛局長嘅回應反應太熱烈,政府資訊科技總監辦公室(OGCIO)同日晚上再解畫[1],進一步解釋點解政府唔會將《安心出行》開放源碼。對於OGCIO 嘅解釋,我哋有以下回應:
 
1)OGCIO:「Google同Apple嘅Exposure Notification (GAEN) 嘅核心技術係由Google同Apple擁有,技術規格(technical specifications)係開放嘅,但源碼並不是全部開放。」
 
首先呢,Google同Apple 唔係政府,佢哋唔可以隨便通過一條法例強制人哋去用佢哋呢個API,將佢哋同政府比較係不倫不類。再者,GAEN 由科技界兩大巨頭Google 同Apple 共同開發,當中亦起互相監察嘅作用,公信力同某啲民望長期維持係負40% 嘅獨裁政權當然唔可以同日而語。
 
2)OGCIO:「開放源碼亦會觸及程式嘅保安設計,對程式同用戶儲存嘅出行紀錄構成資訊安全風險。」
 
政府呢個舊式思維正好跌入所謂Security through obscurity 嘅圈套,意思係指如果一個程式嘅源碼被公開就會導致保安系統被攻陷,咁呢個本身就唔係一個安全嘅設計。真正嘅系統安全應該要符合Kerckhoffs’ Principle,意思即係話系統應該係因為佢本身嘅設計而受到保護,而唔係因為攻擊者唔知道佢嘅設計而得到保護。原因好簡單:經過層層外判,源碼保密嘅時間根本維持唔到幾耐。
 
3)OGCIO:「現時亦沒有標準嘅reproducible builds 技術,不能保證appstore上面嘅app同開放源碼嘅source code一模一樣。」
 
呢點對相對封閉嘅iOS 系統某程度上係講得通嘅,但對Android 就唔係囉,有方法做,有人做緊,唔識就可以參考吓Telegram[2]  同Signal[3]  點做
 
4)OGCIO:「開放源碼要promote,但係不是萬能匙... 我哋認為,使用行之有效嘅方法進行獨立第三方保安風險評估及審計同個人私隱影響評估(包括code review),加埋各個appstore非常嚴謹嘅保護個人私隱驗證係最穩妥嘅做法。」
 
開放源碼當然唔係萬能匙,但獨立第三方保安風險評估都唔見得係喎。既然安心出行嘅初心係抗疫,咁增加市民使用嘅信心就係大前題,任何有助建立信心嘅嘢都應該做,開放源碼同獨立第三方保安風險評估並冇矛盾,why not both?
 
5)OGCIO:「提出問題嘅人,歡迎參考遲啲發放嘅「安心出行」specifications,亦歡迎俾建議我哋去進一步增強「安心出行」嘅功能」
 
既然政府咁講,我哋借用喺香港開放源碼界有多年經驗嘅Sammy Fung 嘅建議[4] , 分享俾政府參考:
 
i. 開放源碼(Open Source):安心出行的源碼(source code)以OSI 認可授權釋出,以開放源碼模式公開繼續研發改進。
 
ii. 開放API(Open API):公開安心出行手機程式和伺服器之間的完整系統通訊API,並進一步容許不同的開發者、IT廠商開發各式各樣公開安心應用,刺激香港資訊科技業界發展,亦能幫助香港startup公司多一個機會。
 
iii.公開Build Logs:讓公眾審查(audit)發佈上架的手機程式是否來自安心出行的開放源碼計劃,並了解各版本手機程式能否通過預定的自動測試。

註釋:
[1] 政府資訊科技總監辦公室 Facebook:【「安心出行」開放源碼疑問拆解】
[2] Reproducible Builds for iOS and Android
[3] Reproducible Signal builds for Android
[4] Sammy Fung: 開放源碼能安心出行嗎?


請加入成為眾新聞的月費訂戶,長期支持我們的工作。所有訂戶都可以收到我們的「每周時事」通訊 。

月費訂戶網址:hkcnews.com/aboutus/#subscribe