Tuesday, June 7, 2022

投資加密貨幣必須知道的technicalities - Non-IT人解說版



很久沒有出post了。希望大家都安好。
crypto講咗好耐,但是背後的原理,網上資料不是講得太簡單,便是難明的外星IT文。但不明白背後原理的話,你又怎敢把錢投資在crypto,又怎知道什麼安排才最能保障自己的安全呢?所以我花了很多時間在網上做research,以non IT人的角度去嘗試讀懂它,to an extent that allows me to invest confidently.


Distributed ledger technology (DLT)
故事的緣起由一本數簿開始。平時我們存錢到銀行,數簿在銀行處。你有幾多錢喺銀行,只有天知地知你知和銀行知。而DLT的意思是, 數簿是分散在世界各地的「礦工」的Server裏。所以全世界都知邊個戶口有幾多錢。

Public key / public address
Public key 或者叫public address 會比較容易理解,便是你的Account Number。一個人可以有很多個 public Address, 就好似一個人可以有好多個銀行戶口一樣。因為數簿是分散的,所以全世界都知某一個public address有幾多錢,但係唔會知嗰啲Public address係屬於邊個。
以下link 可以check 到任何public address有幾多balance:
BTC blockchain: http://blockchain.info/
ETH blockchain: https://etherscan.io/
NEO blockchain: https://neotracker.io/
LTC blockchain: https://chainz.cryptoid.info/ltc/
ETC blockchain: https://gastracker.io/
BSC blockchain: https://bscscan.com/

Private key
Private key是你的簽名,是你證明自己擁有該戶口的證據。銀行在你開戶口時留有你簽名的紀錄,在以後交易時可作核實用途。但在DLT 上沒有你起始簽名樣本,那麼其他人如何核實你的Private key呢?

這就是加密學的奧妙之處。public key 和 private key都是一串英文字母加數目字,在電腦眼中可以換算成數字(hexadecimal)。Private key 有64個字母或數字,而public key 有26-35個。private key 代入某公認的公式可以轉換成public key.

我舉一個例子。f(x)= ax+b=y
x代入f(x)這一條方程式裏得出y。而全世界都知道方程式f。這個例子裏,x是private key, y是public key.

當然DLT用的演算法比以上例子複雜二百萬倍,複雜到你拎住y是無可能反推算出x。

Recap:private key同public key係一對。任何人拎住private key 可以計出public key. 而拎住public key 是數學上沒有可能計到private key.

Transaction processing
當你去銀行提款時,你要提供你的戶口號碼和簽名。同樣地,當你賣出加密貨幣時,你要提供你的private key 和public key pair去證明該public key 其下的balance 是屬於你的。

Recall 返任何人拎住Private key可以推算出Public key,網絡上的礦工的工作便是verify 你提供的private/ public key pair。如果match到,礦工便會發出’confirmation’。Depending on crypto 種類,一條transaction被確認為final所需的confirmation數目有所不同。

Transaction recording
礦工除了verify交易雙方提供的 key pairs之外,還要把該交易寫進blockchain. 銀行的數簿很簡單,每條交易都是獨立記錄,所以可以獨立被刪除或更改。我們一直所講blockchain 記錄不能被更改是什麼原因呢?

這裏要講一下hash 這個概念。blockchain之所謂blockchain,是因為交易是一個個block的形式記錄的。你可以當它做一個儲存交易的Folder。而hash便是folder name. Folder name 是由folder 裏所有交易作為input,經一大堆複雜的演算產生的。所以假設演算是g(x)=y 的話,x是block 裏所有交易,y便是hash.

而hash 亦是下一個block / hash 演算的input。所以環環相扣,更改任何一條歷史交易均會改變該block 的hash value,而hash value又會改變以後的block / hash。所以我們說blockchain 上的交易有不能修改的性質。

礦工
礦工其實是網絡上的server node。由以上我們知道礦工的工作包括1. Verify 交易賣方的private key / public key pair (即係對簽名)和2. 把這項交易寫進blockchain。而這兩項task 要大量的computing power,所以礦工會得到該加密貨幣作為報酬。這就是我們所講的掘礦。

Wallet
理論上你只要keep 住private key / public key pair,即是你的戶口號碼和簽名,便可以買賣及儲存加密貨幣。但是1. Private key 好長,錯一粒字你會失去所有該address 裏面的貨幣; 2. 因為全世界都睇到某一個address的account balance, 所以有人會用幾個address去持貨; 3. 不同的加密貨幣要用不同的keys。這幾個因素令儲存private key /  public key pair 有實際困難。所以有wallet 的誕生。

Wallet 的作用是1. 儲存你的private key / public key pair; 2幫你用private key 去簽transaction和3. Show 你不同加密貨幣的balance in one place。你當佢係一個password manager咁。搞清楚呢個概念,你便知道你的加密貨幣並非儲存在wallet 裏,因為數簿是分散在礦工server裏。

有所謂的exchange wallet 或者broker會同你講你喺佢度有個segregated wallet。在連登上很常見的一句﹕Not your keys, not your coins. 就像你的錢放了在broker處i.e. 在broker 的數簿。你有幾多錢只有你知broker知天知地知。Broker還好,還有SFC監管,出事董事要坐監。現時crypto broker / exchange還未需要licensed,所以真係拍心口得個信字。

Seed phrase
後來wallet再演進,為用家容易轉換不同wallet,有人發明了seed phrase作為wallet之間的standard. Seed phrase 是一組12或24個英文生字,就是很普通例如girl, pencil等等。這個standard 包括了一堆運算,用這些英文生字產生一個wallet所有的private / public key pair。簡單來說如果該運算是h(x,y)=z, x是seed phrase, y是1, z 便是wallet 的第一對private / public key pair,如此類推。所以用相同standard之間的wallet是可以用seed phrase transfer的。亦因為seed phrase可以生成所有private / public key pair, 手握seed phrase 亦等同持有private key。 

以上綜合了買加密貨幣要知道最基本的technical 知識。原諒小女子冇IT底,如果有錯煩請各路英雄留comment指教。
以下是講實際買賣層面的事項。

ATM vs Exchange
現在香港有頗多ATM是不用ID verification的。即是你入cash落去部機度,俾個wallet public address佢,佢就send d 幣去你個address 度。極度簡單。而賣就係你send d coins 去個ATM的public address度,然後等佢出cash。不過佢個spread成7-10%不等,同埋你預左佢有CCTV real time有人影住你個樣mon住你的行動。

另外exchange你上網search 有成廿九幾萬間,全部都要身份認證,包括影自己個相+ID card。不過個spread就冇咁恐怖同埋唔駛現身。佢係交易完之後要withdraw返出自己個wallet,除非你想放在個exchange度。

VASP 發牌制度
政府希望在2021-22立法會會期為規管加密貨幣修改AMLO。法例通過後有180日過渡期。
修改案最重要有兩點﹕
1. 所有Virtual Asset Service Provider (VASP), 暫時只包括crypto exchange (包括ATM),需要領牌
2. VASP只能提供服務給Professional Investor (PI)
個人PI要求最少有HKD8M流動資產(放得落銀行/broker戶口的東西,當然不計樓/舖),所以絕大部分人都冇得玩。還有無論你資產幾多,不需要ID verification 的ATM 將成絕響。

賣出加密貨幣
最後非常重要的,千萬不要從加密貨幣exchange transfer 錢到銀行戶口。銀行會立刻當你洗黑錢凍結你戶口的。所以如果決定買加密貨幣,必須有心理準備是不能直接換回銀行體系的錢的。

以上所有是factual 知識,我唔會suggest 大家應唔應該買,大家自行做research 衡量風險。或者可以參考政府官方網頁關於加密貨幣風險等等。大家覺得有用的不妨share出去,因為我覺得關於呢個topic大家真係要知多啲,而坊間的解說不是太易明。




5 comments:

  1. 清晰易明! 俾起出面由咩係貨幣嘅角度去介紹仲好, 希望已後講多啲, 例如穩定幣同唔同crpto 嘅分別等, 加油

    ReplyDelete
  2. great to see you back!

    ReplyDelete
  3. 真係好耐冇見!

    ReplyDelete
  4. Welcome back! 好鍾意睇你寫嘅野!

    ReplyDelete
  5. 好開心大家咁支持呢個blog! 我之後都要等真係好想寫嘅topic 先會寫,所以一定冇之前update 得咁密。有緣再見!保重啦!
    (唔知點解blogger 唔俾我用自己account comment) 版主上

    ReplyDelete