去年十一月的時候我有寫了一篇《近況更新:轉職資安的一年後》,文章最後有提到我換去了一個做 Web3 的團隊,接觸了全新的工作內容。換團隊以後過了大概 9 個月,也就是標題所指的 0.75 年,寫篇心得來幫自己在加密貨幣產業相關業界打滾的職涯做個總結。

加入前對於加密貨幣的了解

先講一下自己加入前大概知道哪些東西。

區塊鏈跟加密貨幣的原理大概理解,也知道智慧合約在幹嘛,有用過交易所入金以及買賣加密貨幣,大概就是這一些。對 DeFi 什麼的完全不清楚,只知道是基於智慧合約開發的東西,但更深一點就不知道了。

之前一直對幣圈覺得反感,理由跟 Yang Lin 之前寫的《討厭區塊鏈的我,加入了一間區塊鏈公司》講的類似,大概就是覺得這個圈子充滿一堆詐騙,還有一堆公司為了用區塊鏈而用區塊鏈,根本沒有因為用了區塊鏈而解決額外的問題,只是為用而用。

也是因為這樣,通常對於工作的產業沒有限制的我,上次在求職時特別說明了:「不要加密貨幣相關產業」,不想跟這一塊扯上關係。

進入團隊的契機

那為什麼之後還是加入了相關的團隊?

原因之一是我覺得這樣的「討厭」其實很沒道理,我感性上是討厭沒錯,但理性上會覺得這樣的討厭是不對的。我都還沒真正花時間去理解這個產業在幹嘛,有什麼資格討厭?會不會其實這個產業還有很多東西是我沒看到的?會不會我討厭的理由其實不堪一擊,論點站不住腳?

總之呢,最後會選擇換團隊的理由之一是我覺得可以嘗試看看,反正剛好有機會嘗試,試了就知道。如果試完還是不喜歡,我也有更多站得住腳的證據去支持我的論述。

我加入的團隊在幹嘛?

我加入的團隊其實有兩個滿類似卻又不太一樣的工作內容,可以分為以下兩項:

  1. 保險
  2. DeFi

先講保險那一塊,我們公司會對加密貨幣產業的公司提供保險,保險的內容不一定,要看是什麼險種。

假設我們今天要保的是交易所的冷錢包好了,那我需要做的事情就是根據對方提供的資料,去看有哪一些風險,最後統整出一個結果交給其他負責核保的同事。

舉例來說,可能會給出以下的評估結果:

  1. 在交易轉帳部分權責分離有做好,發起交易跟審核交易是不同人
  2. 有設置交易白名單,更改白名單需要兩人以上同意
  3. 冷錢包的規格符合國際標準,密鑰不容易被取出
  4. 冷錢包存放於保險箱裡面,並且受到 24 小時的監控
  5. 綜合以上結果,他們的系統相對安全

這部分會看到不少公司的內部文件,因為要看那些文件我們才能做評估,而文件看得多了,自然也就能分出哪些公司不夠完整,安全性可能就沒這麼好。

除了這些之外,也需要對一些技術去做研究跟評估,例如說 MPC 當時就花了不少時間去看。畢竟要去評估一項技術的安全性之前,你必須對那項技術有一定的理解。

以上是保險那塊在做的事情,就是對想要買保險的公司去做系統跟技術相關的風險評估。

而 DeFi 那一塊做的也是風險評估跟研究,但對象是 DeFi 的專案。

舉例來說,我們可能會去看以前 DeFi 發生過的所有事件,整理出一個分類的清單,例如說「智慧合約漏洞」可能就是一個分類。但其實更仔細去看的話,智慧合約漏洞也有分很多種,例如說重入攻擊啦,或是權限管理沒做好等等的,這些又可以再去細分。

這樣分完之後就可以整理出一些統計的數據,就能知道過往發生過的事件中哪一種 root cause 發生的比例最高。

除了針對所有事件做研究跟分類以外,也會針對各個不同類別去做研究,例如說借貸協議好了,什麼是借貸協議?借貸協議通常出事都是因為什麼?

要先知道這一些先備知識,才能回答最重要的問題:「在評估一個 DeFi 專案的風險時,我們該關注哪些地方?」

因此也研究了很多 DeFi 相關的東西,看了很多以前出事的案例。

大概條列式整理一下在工作中學習到的知識:

  1. 交易所常見的系統架構以及交易流程
  2. HSM 以及 FIPS 140–2/3 標準
  3. MPC 原理以及應用
  4. DEX 在幹嘛,x*y=k 又是什麼?
  5. LP token 是什麼東西,流動性又是什麼?
  6. DeFi project 常見漏洞以及原因
  7. 借貸協議是什麼?閃電貸是什麼?
  8. 公鏈是什麼?側鏈是什麼?L0 — L3 是哪些東西?
  9. Bridge 有哪些實作方式?問題在哪裡?
  10. Yield Aggregator 是什麼東西?

雖然說這些東西個別查也可以查到相關資料,但老實說學的時候會發現你要懂 A 必須先懂 B,要懂 B 必須先懂 C,這樣一環扣一環就會需要從頭開始學,其實還滿累的。

接觸後的感想

其實還滿有趣的。

評估交易所風險那邊除了交易標的是加密貨幣以外,其他都是 web2 的範疇。而我說的有趣指的是 DeFi 這一塊。

DeFi 就是科技加上金融的結合,融合了這兩塊的知識。有許多東西在傳統金融的世界都有,只是經由智慧合約把它變成了 Web3 的樣子。

它在技術上絕對是有趣的,例如說 bridge 跨鏈橋好了,兩條不同的鏈沒辦法溝通,那要怎麼解決這個問題?像是這個解法就有很多種,每種都有不同的優缺點以及安全性。

智慧合約這個東西本身也很有趣,藉由區塊鏈的技術來執行程式碼,而且確保了不可修改性,能夠真正做到「code 那樣寫,它就真的那樣跑」,這在傳統 web2 裡面是做不到的。不過雖然可以做到這樣,但又衍伸出來一堆問題,這個等等再談。

而區塊鏈以及加密貨幣的發展也帶動了一堆密碼學的進步,像是 MPC 雖然以前就有實際應用(丹麥甜菜拍賣跟波士頓薪資調查等等),但目前多數應用還是圍繞在加密貨幣上面,另外像是零知識(Zero Knowledge)的概念也出現在多個 DeFi 相關專案上面。

除了技術的部分有趣,另一方面它也強迫你要學習一些金融知識。像是 LP token 這東西好了,要理解之前你得要知道 liquidity provider 是什麼,在這之前又要先知道 liquidity 是什麼,這都是傳統金融世界中本來就有的一些知識,但像我以前就從來沒接觸過。

除了有趣以外,第二個感想就是「發展速度很快」,DeFi 一直都有新的東西出現,我這邊指的不是那種一看就炒幣的,而是真的技術相關的發展,也是不斷推陳出新。

第三個感想是我發現每個人對區塊鏈以及加密貨幣的願景都不太一樣。

有些人自始至終都相信加密貨幣會成為一個法幣的替代品,你可以經由加密貨幣進行交易,也可以透過 DeFi 進行許多操作,它是一個去中心化的美好世界,不會受到第三方的干預,也不會有任何人有權利剝奪你的資產。

而有些人則覺得加密貨幣確實是個值得關注的新東西,但最終都會被政府監管,納入管轄的範疇。或許未來會有政府發行的加密貨幣出現,但它不會是去中心化的。加密貨幣的發展不可能脫離政府的管控,它只是一種新的技術而已。

這也是我覺得很有趣的一個部分。

當加密貨幣剛出現沒多久的時候,有些人覺得這個屌打傳統金融,轉帳超快而且手續費低,出入金也快,在傳統金融跟加密貨幣之間來去自如,傳統金融有朝一日一定會被加密貨幣壓在地上打。

但是當各種事件發生時,似乎體現了政府的監管是必要的?例如說 FTX,一堆人把錢放裡面覺得一定沒事,結果出問題掛掉了,錢能拿回來的可能性微乎其微,這時候就會覺得有政府監管真好,至少有人幫你把關。

可是一旦被監管就代表有第三方的介入,整個生態就沒這麼去中心化了。我覺得「中心化 vs 去中心化」的這個概念一直都很有趣,而且兩邊都可以有思考的點存在。

中心化的話你無法保證你自己的資產,可能哪天銀行帳戶被凍結你就沒錢可以用了。去中心化的幣圈世界雖然你的投資可能會血本無歸,但那是你自己的選擇,為自己的選擇付出代價,這沒什麼。

在去中心化的世界中,哪天 DeFi 專案被找到漏洞被駭,你的錢一樣也不見了。事實上有許多 DeFi 專案其實都逐漸導入一些中心化的控制措施,例如說管理員可以暫停交易或是替換 price oracle 之類的,這些都是希望在緊急狀況時能有第三方介入來接管,阻止災情擴大。

又或是現在很多合約也都有實作更新的功能,合約如果被發現漏洞可以升級換一個新的合約,這個就跟當初智慧合約主打的「不可竄改」背道而馳了,但應該不少人覺得它是必要的。

這樣看起來,一定程度的中心化控制似乎還是必要的。完全去中心化的專案可能只活在理想當中,至少現在的發展方向應該是朝著這邊走。

我自己會繼續投入加密貨幣嗎?

答案是不會。

其實本來就沒什麼在投入,只有秉持著「投資用的錢就是你全賠掉都不會讓日子過不下去」的原則偶爾買賣一些垃圾幣當作在買樂透而已。

在這個職位上看了這麼多以前 DeFi 發生過的事件,就會覺得目前對這個產業沒有什麼信心,滿容易出事的。就算是經過再大的廠商 audit,合約的程式碼還是有可能出錯,一出錯就直接 gg,一堆錢不見。就算合約沒有事情,也有可能是管理員私鑰被盜什麼的,還有其他的攻擊面。

除了這些以外,還有千百種方式能讓你的錢不見。例如說錢放在交易所結果交易所倒了(FTX 事件),好,那不要放交易所總行了吧?我放自己的錢包,結果錢包被盜了,或是被釣魚然後不小心 approve 了惡意合約,又或是錢包本身產生私鑰的方式不夠安全(Profanity 事件),直接私鑰被猜中,這些都是以前發生過的事件。

總之呢,我覺得風險還是滿高的,投入一點小錢玩玩當興趣可以,我自己暫時不會想要投入更多資源在裡面。

總結

簡單條列式總結一下:

  1. DeFi 結合了技術以及金融,東西很多變化很多但滿有趣的
  2. 中心化與去中心化的拉扯很有趣
  3. 我自己覺得加密貨幣風險還是滿高,不會想投入

以上大概就是這 0.75 年的心得。

前幾天我剛從這個團隊畢業,現在處於工作之間的轉換期,目前暫時也沒打算繼續投入加密貨幣相關的產業,所以搞不好這半年是最後一次這麼認真研究相關的東西了。

文章開頭我有提到以前滿排斥接觸加密貨幣相關的東西,接觸之後其實有改觀了,但也不確定是什麼影響了我,或許是發現這個圈子還是有很多有技術含量而且好玩的東西吧?

最後,我真心覺得要入門加密貨幣而且要有一定的理解程度的話,需要花不少時間補充一堆知識。我有打算把前面提過的那些我這段期間學到的東西整理成系列文,簡單講一下我對那些名詞的理解,幫助大家快速入門相關知識,如果有興趣的話可以留言敲碗,會加速文章的產出。