像疫情的時候,大家可能有孩童家庭補貼有領過 1 萬元,或者是五倍券,這些都要動到很多不同的組織,但是像這些都在數位部,我們就很容易發 6,000 元給大家,就直接用本來的系統,產業這邊透過金融、電商去整合,安全這邊確保資安沒有問題,參與這邊確保無障礙沒有問題,這三個全部加起來,我們做了這套系統之後,以後再要發 6,000 元或者其他的,我們跟網站一樣直接來用這一套就好,改幾個規則、logo,就不用從頭再建立,所以這個對於數位變成公共建設這一件事是至關重要的,這個是好處。
因為其實不太多國際的先例,所以很難比較出什麼壞處,但是硬要說的話,因為一開始的同仁各自來自完全不同體系,所以做事的方法、用詞、法規花很多時間來磨合,但是到現在也磨合差不多了。
您的意思是可能有一些機密性,像國防部?
應該還好,因為我們在資安上有一個概念,你要防守的表面越小越好,最好只有一把實體的鑰匙或者是其他身分認證的方法,其他的部分你都要假設,那一句話叫做「你的攻擊方,你要假設你整套系統的原始碼他都已經知道了」,為什麼?因為你如果假設它不知道,你要防守的那個表面就變得非常大,這些程式碼都不能曝光、被拷貝等等,但是程式碼是非常容易被拷貝的東西,你要防守這麼大的程式碼,結果要保護的秘密只有這樣一點點,這樣是不對等的,你要保守這麼一點點秘密,卻要防禦這麼大的程式碼不被知道,這樣不經濟。
所以說,程式碼要設計成即使他知道了,也沒有辦法破解,你只要防守最小的那一點,你的身分認證方式,或者像 T-Road 安全的閘道就可以了,這樣的情況之下就不需要秘密,過程中只要是大家都在用的開源軟體,這些都不妨公開,所以資安跟開源是沒有必然衝突。
「The enemy already knows the system」,相對的就是你要縮小你需要防守的那一個攻擊表面,也就是人家要打哪一些地方,你如果是要保護全部的程式碼,人家都不能知道,你要防守的那個表面太大了,也不容易防守,但是如果你只是那個程式碼都知道沒有關係,但是就算知道也打不進來,你需要防守的只有做身分認證或者是簽章這麼一點點而已;愛沙尼亞從頭到尾的程式碼大家都知道。
就是因為大家都知道,而且也持續很久的時間,所以對於我如果是一個駭客的話,我良久選擇,一個是發現裡面有漏洞、有通報,還可以拿獎金,甚至可以在愛沙尼亞政府就業,這個對我有好處,或者是我不告訴他,我試著去攻擊,但是我攻擊也不一定就攻擊得住,因為是三重防衛,因為你打破了一重,另外兩重來擋著,而且就曝光了,你這個攻擊就失效了,所以你只要有三重或者是多重的防衛,人家拿到漏洞之後,想一想說不定是通知,這個是主要的想法。
是一樣的。等於這個地方就是這三道門擋住,比起你除了這三道門把進來的人擋住之外,你還要賭他不知道你的別的磚牆、其他地方有沒有漏洞跟鑽進去的地方,根本不用走門,這個太難防守了,所以你不如設計成非得走這三道門不可,旁邊的藍圖都公開,沒有干系。
對,像愛沙尼亞很有名,一直都是這樣設計。
對。
對,我們現在有一個講法叫做「零信任」,以前是如果信任你,你進了我這個大門,就隨便移動了,零信任是不管在哪裡、用什麼設備,都不信任你,就算是部長簽個公文,我每簽一份公文就要在手機上壓我的指紋,確認我的身分,我的手機設備也要確認沒有被篡改,我的連線方式也要計算這一秒是不是從臺灣連線、下一秒是不是跑到別的地方去,這三道門都把關到,我才能簽一份公文,而且簽完之後才可以做認證,這個叫做「永不信任、持續驗證」,這樣的情況之下,哪一道門被打穿了,另外兩道還是卡住。
以前不是這樣子,以前好比像我只用帳號密碼,然後密碼如果外洩了,那就到處都可以進去,這樣人家就不管開放或者是不開放,就挑弱點攻擊就好了,要設計成說一定得透過這樣的方式,而且只打破其中一道門就會觸發警鈴,這個時候可以跟全世界說只採用這個架構,也沒有關係,因為就算知道了,也是沒有辦法。
就是生物特徵、設備、行為模式。
但是要切換到這個架構,也是最近的事,所以相當多的地方還沒有導入這個系統,如果確實是惡意駭客的話,看到這種防守,他就去挑別的目標了,更容易攻擊的目標,因為這種架構要花太多時間了。
當時我們只納管連結到公務網路的設備,阻止它傳電腦病毒,但是像你剛剛提到的火車站外面設備是廣告看板,當時是不被納入到公務網路,雖然用的地方是台鐵的地方,但是並沒有連到火車設備,但是人家就挑你弱的地方打,不在乎電腦病毒打不打得進來,只要心理病毒大家看到訊息就感染了。
所以我上任後的第一份公文就是說像這種有傳播性質的,在公共場域裡面,也要比照很像公務機關一樣,把它納管,從那之後,像今年 3 月小英也有訪美,我們也受到相當程度的攻擊,但是這次就沒有上新聞,所以有納管、聯防之後有擋下來。
對。在政府機關的場地裡面,有傳播能力的設備也納入資安法的管理裡面,但是這個在外面就比較看不出來我們的成績,所以我們有一個講法:「沒出事代表有做事」。
對,場域裡面有傳播能力的設備,也納入我們資安法的範圍當中。
是。
零信任大概是各國開始重視,我們部成立之後,我們就全面推,到明年年底前,所有有全國個資的這些機關都要導入零信任。
健保目前倒沒有看到,戶役政資料的案子是大家比較會討論的。在那個案子出現之後,內政部也修改了辦法,變成一定要透過像 T-Road 安全的方法傳輸,光碟片就不再提供了。
因為所謂內鬼,就像剛剛講到的,生物特徵也許相同,但是設備跟行為模式可能會不同,所以闖過一道門,另外兩道還可能擋得住,平常假設是一份份公文簽,但是突然間今天一次簽 1 萬份不存在的公文,這個時候我的行為模式就改變了,行為模式就被擋住。
而且還有一個問題是,如果這個內鬼被行為模式擋住了,他的身分就曝露了,因為他的生物特徵是本人才有,所以也不能再冒充別人的密碼,不但被擋住,而且一定被抓到,這個時候所承擔的風險、成本就變高了,以前是你試別人的密碼幾次也不會被抓到,單一次攻擊的成本就很少。
對,這是一個方式,另外還有跟全世界民主陣營聯防,我們看到什麼蛛絲馬跡通知給其他人知道,他們也碰到以前類似的事情就可以一起解決。
像資安聯防有一些例子,像去年 8 月的時候,數位部的官網也上線了,當時也有一些像總統府、國防部的官網都被癱瘓、連不上,他們都沒有受影響,原因是因為我們去跟包含美國的一些雲端廠商、全世界在 IPFS 的 web3 社群,任何人不想看到我們的網站被打垮,都可以捐一點我們自己的硬碟、頻寬來備份,只要有足夠多的自願者,包含剛剛講的美國的雲端廠商一起來幫我們聯防,這樣攻擊的火力就沒有辦法癱瘓掉我們的網站,這樣的做法是聯防的做法。
差別是我們的網站有備份到所有全世界願意聯防的機器,其他的官方網站只有那一台機器,所以當那一台機器的吞吐量小於攻擊量,有點像一直打同一通電話,那個電話有好幾個分機、接線生,只要找 100 個人不斷打電話,還是癱瘓掉,但是我們這邊是分散到全世界,所以沒有辦法癱瘓掉。
現在把這一套「靜態化網站」做法,我們把網站分成兩個部分,我們把每個人來看網頁一樣的部分都變成是靜態的檔案,可能是每分鐘才更新一次,以前是每次有人來的時候就要重新算一個頁面給他,我們現在是每一分鐘的時候,所有的人來看都是同樣的版本,現在這樣的情況之下,就不需要耗費我們這邊計算的資源,這一分鐘裡面任何人來,看到的都一樣。
以前機關的網站很多沒有用這個架構,所以變成有多少人來就要算多少次,一下子就被癱瘓了,這個架構已經有分享出來給各部會的朋友知道,以我所知,很多 9 成 5 都布署類似這樣的系統,所以到今年 3 月的時候,雖然有這樣的攻擊,但是沒有把任何的網站癱瘓。
對,因為我們官網是任何人看都是一樣的部分,一定是公布的。動態的部分是每個人來申請會不一樣的部分,那個當然另外處理,那個不可能交到別人的機器上。
我想滿大的一個差別,以前很像政府開發一些軟體,社群自己也開發一些,這兩個中間沒有很固定的交流,現在這兩方面的人,很多都是也有社群的人、g0v 的人直接進來我們這邊,我們的人也會一起去民間分享,像我們的網站架構,我們主導這個工程師,就在民間的 WebConf 對外發表,所以這個情況之下,以前很像只有政府裡面的人才可以決定這個架構性的事情,但是現在是民間的任何人已經知道我們怎麼想,隨時都可以跟我們聯絡、提出更好的想法,這個也是一種民主化,雖然不是投票的那一種,但是也是把關於大家的事情決策權,一定程度分散到大家的身上,確實我覺得有比以前好很多。
我們這個領域比較沒有這個問題,是因為你人不管是在裡面或者是外面,我們做的事情本身,這些程式碼跟這些資料都是公開的,所以就不會有你人進裡面之後,反而事情不能對外面講的這個問題。反而進了裡面之後,可以促成更多的程式碼跟更多的資料對外公開,在外面的人也不會因為在外面,就不能貢獻這些公益性質的應用。
相反的,因為貢獻在裡面有認識人,可以更快知道如何扣合國家政策,所以溝通的成本兩邊都減低,依賴的是這個透明性,如果沒有這個透明性,才會有你剛剛講到的,外面的人進來之後,外面的力量削弱的問題。
有不少外面的朋友,每個月常常都會看部務會議的逐字稿,我作為部長決定哪一些事,他們都看得到,我看到什麼簡報,他們都看得到,除了有一些真的是涉及國家或者是外交機密的,那個只講原則,而不講細節,但是如果是我們自己就可以做決定的事,在部務會議都可以看得到。
我們這邊的情況一直都是這樣,開源最活躍的貢獻者,不一定是在台積電等最大的公司或者是供應鏈,很多都是新創或者是一些小規模的團隊,他運用開源,所以可以省下很多費用,這個對中小企業或者是新創非常重要,但是取之於開源,也願意貢獻出來,所以中小事業為主的,現在還是這樣子。
要改變這個情況,我們就要建置一套有系統的方法,去讓公部門協調出這些民間事業,要實踐這些開源的場域,也就是只要願意開源出來,我們現在有一個叫做「公民科技試驗場域」的做法,所以像我們今天講的無障礙,也就有一些朋友說他想要有個友善行人空間的社會溝通平台,或者公托的申請數位流程,這些他們都願意用開放的方式來做,但是他們需要媒合一些地方政府,讓這些地方政府願意先試用看看,沒問題才透過總統盃黑客松變成全國的。
所以先前是坡比較陡,不然就是全國性的,像總統盃黑客松,不然就要自己想辦法找錢在你家附近試試看。現在等於是縣市政府願意出來扮演中間的角色,然後變成公民科技試驗場域,我們媒合這些好的開源中小型事業,在他們那邊試驗開源的做法,所以這個是主要的差別。以前縣市政府推開源,比較不是由上而下的政策,因為那時候還沒有數位部,所以也沒有一個開源的主管部會,常常是一個地方政府自己有資訊局,或者是有數位治理局之類的。現在因為上面有一個數位部,所以這兩個資源就可以串起來。
運用開源比較沒有改變,但是貢獻出來的這件事,現在的誘因就比以前多。
我想有兩個,一個是由於最近幾個大的趨勢,包含 web3 跟 AI 都是以開源為主,這跟以前不一樣,以前是我們做軟體、硬體的預設不同,軟體可能想要開源,但是硬體因為附屬於特定的硬體,開源了也未必有這麼大的好處,臺灣畢竟硬體是特別強的,所以這個參與的程度有限。
但是現在不是,現在你硬體的,如果你做品質檢測,你要用 AI 的視覺化模型,那個模型都是開源的,你要調整的時候也很容易用開源的方式貢獻出去。所以用 AI 跟 web3 這兩個領域裡面,你要特別找不是開源的,還要找一下,不然要用到的都是開源,這個時候就算是硬體廠商,只要用得是 web3 或者是 AI 就自然產生關聯。
現在的 web3 主要解決的是如何跨境來做身分認證,如何跨境來做 NFT 這種簽名卡的跨境交換跟流通等等,當然之前也有過很多比較是炒作性質的,但是炒作性質到今年大概就沒有了,所以現在還留在 web3 大概都像我們要做公共建設的事情,讓跨境的公共建設更容易彼此對接,這個是目前 web3 的方向。
對,以前不同,現在等於 web3 也好,AI 也好,把這兩邊接在一起。
應該都有成長,不過這個是問他們比較瞭解。
有一個滿重要的是,我們在自己示範的方式去證明給其他部會看,開源不表示比較不安全,絕大部分其他的部會不採用開源,或者不敢大量採用開源,很大一部分是沒有人出來打包票說開源的這一個元件、這一個版本是安全的,以前沒有人打這個包票,所以他們當然也不太敢用,數位部自己先用,用了也透過一些資安測試都沒有問題,我們就出來打包票說這個沒有問題、可以用,這個時候其他的部會才會願意來用、來改。
舉例來說,我們自己都把我們的原始碼都放在 GitHub 上,甚至我自己用的 AI 語言模型,我也是放在一個叫做「HuggingFace」上,也就是類似 AI 界的 GitHub 上,HuggingFace 的 CEO 很像昨天才貼了貼文說是內閣閣員竟然在他們的平台上開源開發 AI,所以當然是對他們很振奮,等於不會因為我們在政府裡,我們就不貢獻開源,相反的,到 GitHub 上,我們最近在做什麼都看得到。
滿重要的一點是,AI 是各行各業都要用,就像剛剛講到製造業做品質管理都有在使用,我們數產署有產業的輔導團,跟每一個各行各業的公協會成立產業推動小組,包含蒐集資料、建立模型、如何應用等等來輔導各行各業來用 AI,所以同樣不是讓權力集中到只有幾家大廠可以運用 AI,而是各行各業、微型中小事業也要能夠導入 AI、降低他們的學習成本。
另外,由於現在出現一種新的 AI,叫做「生成式 AI」,以前的 AI 是比較窄的,你訓練做什麼,他就做那件事,生成式 AI 是比較廣泛的,也就是沒有特別訓練出來做哪一件事,有些做得很好、有些做得不好,但是會亂講,讓你以為他做得好。像這種生成式 AI 要拿來應用的時候,就會出很多問題,這些問題我們怎麼樣去防範、評估、測試,就像剛剛講到的開源是全世界寫的,你怎麼知道都是對我們好的,說不定有人包藏禍心,因此就要有一個評測的單位去說「別的我不知道,但是這些可以用」,所以我們的工作是一樣的,也就是生成式的 AI 如果要導入翻譯等等這種應用,我們就要來評測,確保他不會一下子就被攻陷,可能會有額外的資安問題等等,我們就會做很多評測的工作。
除此之外,也有教育培訓,這個當然是一點,另外一點是我們自己也會在業務上開始應用,應用的方式是也是示範不是什麼東西都往 OpenAI 去丟,因為那樣的話,如果哪一天要訓練下一代的模型,丟過去的個資就變成訓練的材料,我們現在推廣的是地端(自己電腦上),像我自己的電腦就跑著 AI,我要回個信就可以叫他回,但是我的資料都沒有傳出這一臺電腦,這樣就比較沒有隱私的問題。
我昨天貼出來的版本是台大的實驗室,叫做「MIU Lab」,他們有 Open Source 出來,所以我就把它客製化變成自己可以用的版本,接下來也用自己的 mail、逐字稿來訓練它,它就會學我說話。台大這個也不是從頭做,而是從 Meta 的 Llama 2 來改,所以 FB 的 Meta 先試出英文的,台大把它訓練成會說臺灣的中文,然後我自己再客製化,把它變成特別能夠用我的稿子來回應。我之前也有訓練另外一個,但是那個只能用英文,我現在才開始訓練中文。
不太需要。其實只需要準備資料,剛好因為我累積了這麼多年的逐字稿,相同格式的資料很多,所以它看上去就接下去了。
當然希望可以是民主化的,也就是各行各業要運用的時候,最後如何運用是這個各行各業在現場的人一起決定,並不是很像大家都訂閱最大幾家公司,變成他們一決定,我們底下的人都不得不用、或者是不得不服從,這個是特別對於各種國家語言,包括 16 個原住民族、42 種不同的語言分支,或者台語、客語等等,你拿這些語言去問 ChatGPT,他就會跟你亂講,他會跟你說他在講台語,但是其實是廣東話。因此,這些語言如果不能用地端的方式來訓練,就會變成他們什麼時候想要支援再支援,這個對我們的發展是不利的,像我以前在 Siri 的時候,就很注重每個地方口音都可以跟 Siri 對話,不然每個人都要學一口標準的發音了,這個是關於誰的事、就要誰參與,被 AI 影響的人就要回過來影響 AI。