另一個蚊子區塊鏈:新北市以 850 萬溯源疫苗,區塊鏈不是政府的管理工具

#258

這週四適逢清明連假,區塊勢休刊一次。下週二會恢復出刊,歡迎參考今年的出刊行事曆

政府有心解決問題是好事,就怕沒有對症下藥。上週我因為討論林務局的木材溯源系統,接到廠商的關切電話。隔天我將事件原委公開在臉書上,不僅收到許多打氣訊息,也吸引不少新會員加入區塊勢。

多數媒體主要獲利來源是廣告,而相關廠商往往就是廣告主,這不利於媒體揭露真相。區塊勢採訂閱制,不會為廠商擦脂抹粉,也沒必要刻意抹黑,只會專心服務支持區塊勢的讀者。正是因為有你們的支持,我才能獨立作業。謝謝成為會員的你。

訂閱區塊勢

上週我批評林務局打造蚊子區塊鏈,該案木已成舟。今天討論的則是尚未結標的政府區塊鏈工程 —— 疫苗溯源系統。

雖然系統還沒發包,但在起步階段就已經漏洞百出,至少有以下 3 大問題:

  1. 用途牛頭不對馬嘴

  2. 把機器讀的資料給人看

  3. 誤將區塊鏈當成管理工具

前期系統規劃就出問題,再厲害的承包廠商也無法讓案件起死回生。以下分別討論。

疫苗溯源系統

新北市衛生局正在政府電子採購網上,以 850 萬台幣的採購預算對外招標「流感疫苗管理區塊鏈系統」。先不談價格,每項工程的背後都有一個待解決問題。〈投標須知〉指出:

因應本局 2017 年疫苗庫存管理問題,自 2018 年加強稽核策略 ... 降低基層人員蓄意利用現行系統 ... 進行資料竄改或事後蓄意異動偽造疫苗接種量等情事。雖能避免疫苗異常管理情事再次發生,卻也衍生耗時、費力、人力成本及壓力增加等情況,故結合本市智慧城市推動,及思考「區塊鏈」新科技的特性應用,擇定建置「流感疫苗管理區塊鏈系統」。

我已經修掉部分文謅謅的字。簡單來說,這套系統要解決的是 2017 年發生的「疫苗庫存管理」問題。但文件中沒有明確指出是什麼問題,我循著關鍵字找到《康健》《信傳媒》的報導:

中國有黑心假疫苗風暴,台灣則是流感疫苗接種數據造假。監察院調查,2017 年(疾管署)買進的 600 萬劑公費流感疫苗,有 31 萬劑流向不明 ... 經查發現,新北市的三重衛生所至少有 1 萬多劑疫苗遭到銷毀 ... 白白浪費政府每年花 8,000 萬公帑準備的疫苗。衛生所向上級浮報疫苗施打數據被揭發,表面上看起來好像「民眾都有打疫苗」,私底下卻是衛生所逕自銷毀疫苗,很多人納悶「為什麼衛生所人員會如此做呢?」

監委蔡崇義表示 ... 政府規定得打滿多少劑疫苗,醫師才能領到錢。「假設以 80 劑為例,卻因為今天氣候不佳等因素,導致來打的人只有 30 位,沒有滿 80 劑,醫師會領不到錢。」最後衛生所可能就會填 80 劑,為的就是讓醫師可以領到錢。

任誰都不想做白工。

顯見造成數據造假的主因,是中央政府(疾管署)制定的績效考核機制不夠周全,使得衛生所浮報數據。找到原因,問題就解決一大半了。只可惜,政府想的跟我們不一樣。

用途錯誤的系統

疾管署求好心切,想提升民眾的疫苗接種率,卻逼得衛生所人員鋌而走險捏造數據,才不會讓醫師做白工。監察院接獲檢舉後,發現許多民眾都沒接種疫苗,但疫苗卻用光了。這才循線查出政府花錢買來的疫苗,最後都進了垃圾桶

荒謬的還在後頭。新北市衛生局不但沒有與疾管署重新研擬績效考核標準,反而是歸咎於基層人員造假數據。不僅設計表單抽查衛生所,現在還要再花 850 萬打造一套結合區塊鏈的疫苗溯源系統。這是治標不治本。

區塊鏈無法杜絕人為捏造數據,早已是業內的常識,但新北市衛生局卻還在狀況外。具體呈現在〈規格需求書〉內,要求得標廠商建置以下兩套系統:

  1. 流感疫苗溯源系統

  2. 包含 3 個節點的私有區塊鏈

前者是疫苗登錄系統,後者則是以區塊鏈替數位資料留下證據。三個節點代表證據由政府的三個部門(或只是三台電腦)分別保管,藉此避免特定的系統管理者竄改紀錄,類似分權制衡。

新北衛生局原本是想避免基層人員浮報數據,最後提出來的解方卻是阻止系統管理者竄改紀錄。今天寫這篇文章就是希望能有人站出來,請新北市政府懸崖勒馬,否則這 850 萬公帑形同丟進水溝裡。

除了用途有問題之外,一旦這套系統真的建成,未來就連一般公務員的操作介面,都會出現一大堆「區塊鏈」。

不是人看的資料

區塊鏈是疫苗溯源系統背後的技術,好的系統設計不會把區塊鏈的資料全部攤在使用者面前,就像人們不必懂網路協定也能瀏覽網頁一樣。但政府可能是擔心系統完工之後,沒人知道背後用了區塊鏈。因此在〈規格需求書〉內,還要求廠商必須將給機器看的資料,全部公開來給一般使用者看:

區塊鏈疫苗轉移流程履歷,顯示該筆轉移履歷資料之資訊,如區塊 Hash、區塊編號、轉移 Hash、轉移雙方位址。

這就像是瀏覽新聞網頁的時候,畫面不斷提醒你每個網頁傳輸了多少封包資料。只有熟悉區塊鏈運作的人才看得懂這些資訊分別代表什麼意思,對一般使用者來說只會徒增困擾。政府只能等著接客訴電話。

法務部對此肯定相當有經驗。前陣子上線的律師證書查詢系統就犯了相同錯誤,將「區塊鏈」全都攤開給使用者看。

法務部曾向我證實,律師證書查詢系統加入區塊鏈之後,就接到不少民眾打電話詢問雜湊值、區塊鏈發行日期,以及交易序號分別代表什麼意思。後來法務部檢討並得出的結論是,這些「區塊鏈」都是給機器看的資料,而不是給一般民眾看的。只不過政府目前運用區塊鏈的經驗還太少,下一版會研議改掉。未來仍會開放這些資料給機器驗證或專家查詢,但一般使用者只會看到驗證後的結果(例如綠色小勾勾)。

我建議新北市衛生局先向法務部討教經驗,就能少走一點彎路。用途和介面設計都有問題,這很有可能是政府誤將區塊鏈當成管理或防弊的工具了。這比「拿著榔頭看什麼都像釘子」還糟糕,因為根本用錯地方。

區塊鏈不是管理工具

政府本身就是提供人民信任的機構,運用區塊鏈只是以防萬一。當不受人民信任時,政府還可以用區塊鏈上的紀錄佐證說法,讓人們「以驗證補足信任」。舉個簡單例子:

假設有一對夫妻今晚各自有活動,回到家之後若彼此信任對方,雙方不會對彼此的行蹤疑神疑鬼。但如果缺乏信任,或許雙方就得進一步拿出活動照片、舉出跟誰一起出門,甚至秀出當晚的 GPS 定位紀錄來補足信任缺口。這些資料難以竄改,也就是雙方透過驗證(證據)來補足信任。

民眾在多數情況下都是信任政府,但也有例外。

2013 年的洪仲丘事件,打破許多台灣人對國防部的信任。當前的香港反送中運動,也讓市民對港府的信任屢創新低。當雙方缺乏信任時,民眾自然會要求政府提出更多證據補足信任。然而,政府卻往往用證據消失或其他理由搪塞。此時,區塊鏈就是讓這些證據難以被竄改或惡意刪除的機制。民眾可以憑著區塊鏈上的紀錄,指證歷歷監視器當時並沒有壞掉,而只是資料被事後刪除。

因此,若政府願意以區塊鏈保存證據來證明自己的清白,當政府面對信任危機時,就能公開區塊鏈上的資料藉此強化人民對政府的信心。但政府卻常常反過來,想將區塊鏈變成管理、防弊的工具。這就像是夫妻反過來用視訊、查勤隨時掌握對方行蹤,不僅無法解決信任問題,還可能衍生出更多弊端。畢竟道高一尺,魔高一丈。

區塊鏈是用來證明曾經發生某件事的科技工具。但政府請廠商客製一套區塊鏈再由政府自行維護,就等於是球員兼裁判。未來即便政府舉出區塊鏈上的資料自清,可信度恐怕也不高。看到這裡不免讓人想問,政府該怎麼做才對?

應用區塊鏈,而非打造區塊鏈

我認為新北市衛生局根本不需要區塊鏈,更不該投入 850 萬招標預算。他們需要的只是一套數位系統搭配實名制的接種紀錄(例如插健保卡),讓基層人員清楚列出誰在什麼時候施打過疫苗。最重要的是 —— 修正流感疫苗施打的績效考核標準,否則系統一旦上線,恐怕不少醫師都會淪為義工。

若政府要嘗試運用區塊鏈,則須掌握以下原則:

區塊鏈是平民百姓用來證明資料曾經存在的工具,而非上層管理者用來抓出基層人員漏報、誤報資料的手段。

因此,區塊鏈本身就不應該是由政府(管理者)主動發包的系統,而應該是由人民自行組織而成。其中,以太坊(Ethereum)就是由全球人民共同經營的去中心化區塊鏈。正是因為以太坊不受制於政府,才更能讓人民藉由驗證資料來補足對政府的信任。

新北市府只需要將數據經過雜湊(hash)運算(去識別化),再將資料的 hash 值放上以太坊即可。目前法務部的調查局、律師證書,都是以這套方法將資料上鏈。不僅可靠度比自行花大錢打造的蚊子區塊鏈更高,若政府以 850 萬的預算來支付資料上鏈的手續費,我相信政府在未來數十年都花不完。還可以省下未來每年的維護與管理費用。

請政府多多應用區塊鏈,而非打造區塊鏈。

Share