穩定幣持有者的保管與安全
持有穩定幣其實意味著持有私鑰,因此本單元探討由誰保管這些私鑰、如何保護助記詞,以及那些盜空大多數錢包的騙局。
方便又熟悉。有密碼復原、客服支援,餘額看起來就像銀行帳戶。代價是信任:你必須仰賴這家服務商不會被駭、不會凍結你的資金,也不會倒閉(就像 Mt. Gox 和 FTX 那樣)。
在繼續閱讀之前,先試試上方那條光譜。從左移到右,你是在用便利去換取掌控權:在左側,是由一間交易所替你保管私鑰;在右側,則是由你自己在一台離線裝置上保管它們。穩定幣只是在價值上靜止不動,它在風險上並不靜止。你一旦持有它,一個安靜的問題就跟著你到處走:究竟是誰在掌控它?在加密貨幣的世界裡,掌控一枚幣意味著掌控一把秘密的密鑰,而那把密鑰可以存放在一間替你保管它的交易所裡,也可以存放在一台只有你能碰到的裝置上。那把密鑰存放在哪裡,幾乎決定了你會如何損失這筆錢的一切,而在這裡,一旦損失通常就是無法挽回的。沒有銀行可以打電話求助,沒有退款機制,沒有詐騙處理部門。這聽起來很嚇人,也理應如此,但好消息是,保持安全的規則既簡短又乏味,一旦你懂了,它們是真正管用的。
持有加密貨幣就是持有密鑰
擁有一枚穩定幣,其實就是擁有一把私鑰,也就是讓你能夠移動那枚幣的秘密。保管,不過就是由誰持有那把密鑰的問題,而答案落在一條光譜上。
光譜的一端是完全託管:由一間交易所或服務商替你保管密鑰。它很方便,你的密碼可以找回,感覺就像一個普通的銀行帳戶。但陷阱在於,你是在信任那家服務商不會倒閉、不會凍結你的資金、也不會被駭。
光譜的另一端是完全自我保管:由你自己持有密鑰,通常是放在一個硬體錢包裡,也就是一台把密鑰保持離線、讓惡意軟體碰不到的小型裝置。在兩端之間,則坐落著一般的軟體錢包與行動錢包,以及多重簽名的設置。
這種取捨永遠不會消失。更多的掌控意味著更多的責任。更少的掌控意味著更多對他人的信任。抽象地說,兩端都不是「安全」的;你是在選擇自己寧願承擔哪一種風險。
不是你的密鑰,就不是你的幣
這句由 Andreas Antonopoulos 推廣開來的加密貨幣老話,道盡了整個核心概念。如果是別人持有私鑰,你就沒有真正擁有那些幣。你擁有的是一項針對保管方的求償權,而那項求償權的可靠程度,取決於它背後那個保管方。
這並不是理論上的擔憂。當 Mt. Gox 和 FTX 這類託管型交易所倒閉時,客戶的「餘額」就變成了破產清算隊伍中沒有擔保的求償權。螢幕上的數字一直都是真的,直到它們不再是真的為止。
自我保管徹底移除了那個中間人。代價是,你成為安全與備份的唯一負責人。所以這個選擇是誠實的:把密鑰交給一家公司,並承接它的失敗;或者自己保管密鑰,並承接保護它們的這份工作。
你的助記詞就是一切
一個自我保管的錢包,是靠一組助記詞來備份的,通常是 12 或 24 個單字(一組 BIP-39 助記詞),用來編碼你的私鑰。任何人只要握有那些單字,就能掌控那些資金。如果你把它們弄丟了,沒有人能替你還原。就這麼一個事實,驅動了接下來的每一條規則。
- 讓它保持離線。 把它寫在紙上,或把它敲刻進金屬。絕對不要把它存成照片、雲端筆記、電子郵件或截圖,因為一份數位副本,會暴露在任何觸及你裝置的惡意軟體或資料外洩之下。
- 保留不只一份備份。 把副本存放在不同的安全地點,好讓某一處的火災、水災或竊盜,不至於把你徹底一掃而空。
- 絕對不要把它輸入任何網站,也絕對不要把它分享給「客服」。 沒有任何正當的服務會索取你的助記詞。任何這麼做的人,都是想搶劫你。
把那些單字當成你所擁有的、最有價值的唯一秘密來看待,因為它們正是如此。
人們實際上是如何損失資金的
以下這一點會讓新手大吃一驚:幾乎沒有人是因為攻擊者破解了密碼學而損失加密貨幣。數學是牢靠的。人們損失資金,是敗給了社交工程,也就是那些誘使你自己交出存取權的伎倆。
常見的幾種值得一眼就認出來:
- 釣魚授權請求。 一個假冒的網站提示你簽署一筆交易,而那筆交易悄悄授予某個合約權限,好在日後盜空你的代幣。
- 假冒的跨鏈橋或「漏洞利用」網站,以及虛假的空投,誘使你去連接一個你本該別去碰的錢包。
- 冒充客服人員,向你索取你的助記詞或恢復用的單字。
- 地址投毒,也就是把一個外觀相似的地址植入你的交易紀錄中,好讓你不小心複製到它,把錢付給一個陌生人。
能夠攔下這其中大多數狀況的習慣並不光鮮,但它們管用:任何有份量的餘額都使用硬體錢包,仔細核對網址與合約地址,在簽署之前先讀清楚你實際上正在簽的是什麼,撤銷過時的代幣授權,另外保留一個小額錢包供日常活動使用,絕不分享助記詞,並且放慢腳步。人為製造的急迫感(「現在就行動,否則你的空投就沒了」)是騙徒的主要工具,因此停頓一下就是一種防禦。
那一步能為損失封頂的做法
如果你只從本單元記住一個實用的概念,那就讓它是熱冷分離。只把你活躍使用時需要的部分,放在一個線上的「熱」錢包裡,而把大部分資金放在離線的「冷」儲存中。這樣一來,最常見的那些攻擊就只能碰到那一小堆。
實例演練:熱冷分離的實際運作
一位使用者持有 20,000 USDC。他沒有把它全部放在一個地方,而是把它拆開。
- 1,000 USDC 留在一個行動熱錢包裡,供日常付款與鏈上活動使用。他把那當作萬一遇上一次糟糕的授權、自己承受得起損失的金額。
- 19,000 USDC 移到一個硬體錢包。它那組 24 個單字的助記詞被敲刻在金屬上,存放在兩個分開的地點,而且從未被拍照。
某一天,那個熱錢包被一次釣魚授權盜空了。損失被封頂在 $1,000,因為另外的 $19,000 存放在冷儲存中,而其密鑰從未接觸過任何連上網際網路的裝置。單單一個結構性的決定,就讓大約 95% 的餘額,落在最常見那種攻擊的觸及範圍之外。請留意,這位使用者並不需要是一名安全專家。他只需要在任何事情出錯之前,先把錢分開來。
如果你確實要使用保管方,就從四件事來評判它
把資金交給人保管並不是一場道德考驗,而一個經營良好的保管方,對於你經常動用的資金而言,是個合理的選擇。如果你走這條路,就從四點來評估這家服務商:
- 安全紀錄。 它是否曾被入侵,而資金又是如何保管的?保持離線的冷儲存,遠比擺在線上的熱錢包安全得多。
- 儲備。 它是否真的以一比一持有客戶資產,最好還附有儲備證明,抑或它悄悄地把它們借了出去?
- 司法管轄與監理。 它是否持有牌照、在何處持牌,以及萬一它倒閉,你能得到什麼保障?
- 營運透明度。 稽核、保險,以及可靠地支付提款的過往紀錄。
沒有任何保管方是零風險的,因此務實的目標,是挑選一個經營良好、受良好監理的保管方,並且只把你活躍使用所需的部分放在那裡。其餘的,都該歸於自我保管。
為何自我保管的交易無法撤銷
在一個交易所帳戶裡,服務商有時可以凍結、反轉或追回一筆交易,因為它掌控著帳本與密鑰。一筆自我保管的鏈上轉帳則不同:它一經確認,就是最終定案。沒有任何管理員能把它討回來,沒有任何客服台能反轉一個錯誤,也沒有任何辦法能追回那些已送給騙徒或送錯地址的資金。
從安全這一面來看,正是同一種不可逆性,讓穩定幣的支付又快又便宜。它同時既是一項優點、也是一種危害,而這正是為什麼「簽署前先核實」與「檢查地址」並不是吹毛求疵的建議。它們是唯一的一道防線,因為並沒有第二道。
快速知識檢核
「不是你的密鑰,就不是你的幣」是什麼意思? 如果由一個保管方持有你的私鑰,你所擁有的就只是一項針對那個保管方的求償權,而不是那些幣本身。萬一它像 FTX 那樣倒閉,那項求償權可能讓你淪為一名沒有擔保的債權人,在破產清算的隊伍中等待。
為何助記詞絕對不能以數位方式儲存? 一張照片、一則雲端筆記、一張截圖或一封電子郵件,都會暴露在任何惡意軟體或資料外洩之下,而任何取得那組助記詞的人,都將獲得對資金不可逆的掌控。離線的紙張或金屬,則讓它遠離任何攻擊者能夠觸及的裝置。
哪一項單一做法能為大多數的自我保管損失封頂? 熱冷分離:只把小額的日常資金放在一個線上熱錢包裡,並把大部分資金放在一個帶有離線助記詞備份的硬體錢包中,這樣一次釣魚盜取就只能碰到那一小筆金額。
資料來源
- ethereum.org, "Security",關於從託管到自我保管的保管光譜,以及硬體錢包如何讓密鑰保持離線。
- Bitcoin BIPs, "BIP-0039",關於 12 或 24 個單字的助記詞(seed phrase)標準,以及任何握有該助記詞的人都能掌控資金這一點。
- U.S. SEC, "Press Release 2022-219: SEC Charges Samuel Bankman-Fried",說明一間託管型交易所的倒閉,如何把客戶的餘額變成破產求償權。
- FBI (Internet Crime Complaint Center, IC3), "Cryptocurrency fraud losses",關於那些由騙局與社交工程、而非被破解的密碼學所導致的損失。