如何保護您的MetaMask以太坊錢包

如何保護您的MetaMask以太坊錢包

LastMile是去中心化的ICO服務,去中心化的核心就是參與者擁有決定權,這也代表LastMile服務的資安防線必須延伸到我們的使用者,這也促使我們撰寫這篇文章,協助LastMile的使用者認識使用加密貨幣錢包的風險,以及更重要的:透過學習保護加密貨幣錢包的方式,進一步降低並管理風險。

提醒:
本教學中使用的加密貨幣錢包為MetaMask,其中某些內容僅適用於MetaMask,但大部分的通則也適用於其他加密貨幣錢包。

MetaMask 簡介

MetaMask是瀏覽器以太坊錢包管理擴充套件,其做為您於瀏覽器上直接與以太坊區塊鏈(Ethereum )和去中心化應用程式(Decentralized Applications,DApp)互動的橋梁。LastMile也是DApp,所以需要您安裝並透過MetaMask完成在LastMile上的各種交易行為。

MetaMask支援Chrome、Firefox等主流瀏覽器,所有的程式原始碼也於GitHub開源並公開的被許多人稽核,從過往大量的使用記錄中沒有重大被駭事件,以及正面良好的使用者回饋來看,MetaMask做為一個線上用來與DApp互動的以太坊錢包算是足夠安全也值得被推薦的。

如我們在 — 如何安裝MetaMask並登入LastMile服務文中提到,MetaMask透過12個隨機詞組構成的保險箱密碼來保護您的以太坊錢包帳號。若您忘記MetaMask登入密碼,可透過提供這12個隨機詞組來取回您MetaMask帳號,且您需要修改MetaMask密碼時也需要這12個隨機詞組,因此這12個隨機詞組和您的以太坊錢包同樣重要,本文的內容也會將重點放在了解風險後,如何保護這12個隨機詞組和您的以太坊錢包帳戶(亦即我們接下來要介紹的私鑰 Private Key)。

甚麼?以太坊錢包帳戶就是私鑰!

為避免混淆,接下來的部分內容,我們將以私鑰(Private Key)這個抽象的科技詞彙來取代以太坊錢包帳戶這個比較容易讓大家理解的用詞。

實際上以太坊錢包帳戶指的就是私鑰,一個私鑰代表一個錢包帳戶。透過私鑰,可存取、操作這個以太坊錢包帳戶中的加密貨幣、代幣,而且使用者在以太坊上轉帳或操作智能合約上的函數時,傳送到以太坊上的資料都必須經過私鑰的簽署才會被核可。

因此你可以想像,私鑰的功能就像數位簽章或自然人憑證,可用來證明當前的操作真的是我本人執行的、內容真的是我傳送出去的,大家可以放心的相信這些操作和內容。

過去您可能聽過:「寫在區塊鏈上的資訊難以竄改且較為可信。」這分信賴其中一部分就是建立在所有區塊鏈上的資料都是經過私鑰簽署後送出,然後這個資料被不同組織信任後再個別寫入區塊鏈。至此,您應該已經了解私鑰的重要性,它就等於您在以太坊上的身分,也是打開您加密貨幣保險箱的鑰匙 — 幾乎等同現金,所以需要被您好好保管。

使用MetaMask的風險與對應措施

風險 1:私鑰被MetaMask加密保存於瀏覽器本地資料儲存區

MetaMask將私鑰加密保存於瀏覽器本地儲存區,這個事實本身既安全又危險。

安全的部分在於:
全世界,您的私鑰只存在於您的電腦之上,沒有任何第三者可以在取得您的電腦控制權前,接觸到您加密的私鑰。就算成功取得加密的私鑰,也需要進一步解密,才能真正的取得私鑰。但這也表示,您是世界上唯一要對您的私鑰安全負責的人。

不安全的部分在於:
全世界,您的私鑰只存在於您的電腦之上,當您的電腦壞了,您的私鑰將不存在這世界上;當您的電腦被入侵了,您的私鑰將不只存在於您的電腦之上。

您的電腦壞了泛指所有未經您同意,導致私鑰從電腦上消失、找不到的狀況,例如下述狀況:

  1. 重新安裝 MetaMask:加密的私鑰仍在您的瀏覽器的儲存區,但是新安裝的MetaMask無法關連到過去存在的私鑰,您將無法透過MetaMask找到您的私鑰。
  2. 重新安裝瀏覽器:依實際情況,加密的私鑰有可能已經被刪除了;若運氣好,還沒被刪除,您可試著在瀏覽器的儲存區尋找您加密私鑰的檔案。
  3. 作業系統或檔案系統壞了:依實際情況,加密的私鑰有可能已經被損毀了;若運氣好,還沒損毀,您可試著將硬碟連接至其他作業系統,試著找回加密私鑰的檔案,或尋求專業硬碟資料修復服務找回加密私鑰。

上述三種常見情況,前兩種多留心即可避免,但第三種情況在一般大眾正常使用下也會發生,因此唯一可靠的應對方案就是異地備份。您可於MetaMask匯出私鑰,並將私鑰透過檔案壓縮軟體(如:7-Zip)以您設定的密碼加密壓縮,最後再將壓縮檔備份至雲端完成備份(上傳至雲端硬碟或寄信夾帶附件至您的雲端信箱)。

提醒:若您對雲端備份有疑慮,那就不要使用雲端,可改考慮另存備份在隨身碟、其他電腦或任何您信賴的儲存媒體。

 
可透過EXPORT PRIVATE KEY匯出私鑰

因為您的備份被您設定的密碼保護著,所以也請別忘記您設定的密碼。網路上有許多很棒的使用者密碼選擇教學,筆者個人最推薦的是下面漫畫提到的這種。漫畫上半部談到過去我們很多時候設定密碼都被要求密碼要包含:大小寫英文字母、數字、特殊符號,讓這個密碼看起來很難被破解,但實際上這只會讓密碼很容易被忘記,並不會增加破解的難度;而下半部漫畫提到,實際上要增加電腦破解密碼難度的唯一要素只有密碼的長度。

提醒:漫畫下半部提到的方法,可能會被字典攻擊法破解,建議搭配其他規則使用,但記得長一點的密碼總是好的,例如筆者的家人過去就曾經用過「Oh~I can not remember my long long long password!」這種搞笑但好記的密碼。

 
密碼強度,原始來源: https://xkcd.com/936/ (CC非商業授權)

當有了電腦壞了的應對措施後,接著我們要談談電腦被入侵的情況。老實說,一旦發現電腦被入侵,我唯一的建議就是,立刻關閉電腦電源,接著透過其他電腦將您的加密貨幣/代幣轉到新的錢包,並且放棄被入侵電腦上的錢包,不再使用它們。

任何偉大的軟體都存在設計上的漏洞

以下是我們建議預防電腦被入侵您執行的措施:

  1. 允許瀏覽器自動更新MetaMask,透過自動更新盡速修補可能的漏洞。
  2. 瀏覽器本身也可能存在未知漏洞,請允許瀏覽器自動更新。
  3. 開啟作業系統自動更新和防火牆。
  4. 安裝防毒軟體、間諜軟體檢測工具。

間諜軟體相關的攻擊手法包含:

  1. 輸入私鑰或12個隨機詞組時被鍵盤側錄軟體竊取資訊。
    若使用硬體錢包因無需手動輸入私鑰可預防這種攻擊。
  2. 利用複製貼上替換轉帳時的錢包地址,竊取加密貨幣
    這種攻擊,可透過複製錢包或合約地址時,留意貼上的地址是否為預期的資料來避免。

風險 2:所有網站都會知道您有安裝MetaMask的事實

當您使用MetaMask,它將會收集您的資料用於改善MetaMask並用於其他可能的廣告行銷用途,詳細的收集資料隨著資料保護法越來越嚴格也一直在變動,有興趣的讀者可參考目前MetaMask的隱私條款

除了MetaMask會收集您的資料外,所有網站都可以知道你有安裝MetaMask,不論你有沒有登入MetaMask。一旦您登入MetaMask,所有網站皆可透過MetaMask取得您的錢包地址、以太幣/代幣餘額以及所有歷史交易資訊。對電子商務網站或廣告商來說,這些資訊已經足夠判定您是否為目標銷售對像;而對駭客來說,這些資訊已經大幅降低設計釣魚網站騙取您的私鑰(Private Key)或12個隨機詞組的難度,一旦私鑰或12個隨機詞組被取得,您的以太坊帳戶也等於被控制了。

釣魚的方式,例用假造MetaMask的彈出訊息誘使你登入並輸入密碼,接著透過密碼輸入失敗誘使你提供12個隨機詞組。若您有安裝MetaMask,請試著在登出的狀況下拜訪這個網址:https://www.ethwalletsecurity.com/(這個釣魚模擬網站由Brandon Arvanaghi製作提供),您將發現這個網頁會偵測到您有安裝MetaMask而且處於登出的狀態,接著試著按下 Generate Notification 這個按鈕,會彈出假造的MetaMask提示告訴您:「剛剛您的以太坊帳戶收到一筆轉帳。」以此引誘您登入MetaMask並藉此獲取更多資訊。

提醒您:MetaMask不會於登出的狀態下,提示您帳戶交易訊息

另一種釣魚手法,是透過所有網頁分頁都會得知MetaMask狀態和資訊的特性,於您透過MetaMask在當前瀏覽的網頁送出交易後,背景的網頁彈出假造的MetaMask交易失敗畫面,引誘您按下假造的重送交易的按鈕,藉此觸發MetaMask交易讓你自己把以太幣轉至攻擊者的錢包或合約。

建議您與去中心化應用程式互動時,可留心下列事項,避免因這類釣魚攻擊受害:

  1. 確認互動對像的錢包和合約地址。
    每個透過MetaMask執行的交易都會清楚的列出交易對像/合約的地址,請仔細核對交易對像/合約地址是否如您預期,若您無法確定交易對像/合約地址,您應該立刻終止這筆交易。
    在LastMile,您可於網頁最下方SMART CONTRACT連結找到LastMile的智能合約地址。也提醒您,在LastMile上您僅需與該這能合約互動、交易即可完成所有募資、投資活動。
  2. 留意可疑的MetaMask交易提醒。
    一旦您懷疑某個MetaMask交易提示的正確性,請直接拒絕並終止該筆交易。去中心化應用程式不會因為您一次拒絕就不和您往來,但所有您送出的交易都無法重來。
  3. 當不需要使用加密貨幣/代幣的時候,記得登出MetaMask。

您可以放心的在 LastMile上進行交易

更安全使用MetaMask的小技巧

技巧 1:善用測試性小額交易驗證交易對像可信度

並非所有去中心化應用程式都是安全、可信的。因此,當您準備進行的交易包含大量以太幣或代幣轉帳支付時,請先試著執行小額的轉帳,並仔細確認小額轉帳產生的結果是否如您所預期。

舉例來說,若您想在LastMile上投資某個心儀的ICO共100以太幣,該ICO在LastMile上提供的兌換比例為1個以太幣可取得100個代幣(1 ETH = 100 Tokens),您可以先試著投資兩個以太幣,並於MY DASHBOARD確認有相應的200個代幣預購產生,接著再進行剩下98個以太幣的投資。

雖然複數交易將產生額外的手續費,但相比直接大額轉帳支付產生的風險和可能的損失,利用測試性小額交易可有效控制損失,也為主要的大額支付提供了額外的保證。

技巧 2:建立冷熱錢包帳戶管理機制

如同您可在銀行開設不同帳戶,並指定不同帳戶專用於各種用途,如:信用卡扣款、領取薪資、定存投資及日常消費等。您也可以透過MetaMask建立多個以太坊帳戶錢包(多把私鑰),並將其依使用目的分類、保管。在此,我們將以最簡單的冷熱錢包帳戶分類做為示範,教您做好以太坊錢包帳戶保護。

 
按下Create Account會建立新的以太坊錢包帳號

如上圖,按下MetaMask右上數來第二個小人圖示,您會看到 Create Account,按下 Create Account,MetaMask 會立即為您建立新的以太坊錢包帳戶,您也可以在同個畫面選擇已建立的不同帳號來切換執行的身分。

透過上述方式,您可建立兩個以太坊錢包帳戶,一個做為常用的熱錢包(Hot Wallet),另一個做為保存加密貨幣和代幣用的冷錢包(Cold Wallet)。

熱錢包做為與以太坊和去中心化應用程式互動的主要窗口,用於轉帳支付、收取加密貨幣/代幣,也做為您於以太坊上表面的身分。當您需要執行轉帳支付時,從冷錢包轉帳足夠的以太幣至熱錢包,再由熱錢包進行實際轉帳支付;當您的熱錢包收到虛擬貨幣/代幣時,也立刻將其轉帳至冷錢包。隨時保持您的熱錢包有不多的虛擬貨幣,當您以太坊上表面的身分沒有太多虛擬貨幣時,您成為釣魚網站攻擊目標的機會自然也隨之降低。

貧窮就是最好的防禦

冷錢包做為您主要存放加密貨幣/代幣的錢包,您需要做的事情就是透過本文學到的方法,好好保護冷錢包私鑰和相應的12個隨機詞組。因冷錢包不會做為您主要暴露在外的加密身分,自然被有心人士盯上的機會也隨之降低。

使用冷錢包時的好習慣:

  1. 關閉所有正在瀏覽的網頁分頁,保持僅開啟瀏覽器的狀態
  2. 登入MetaMask並切換為冷錢包
  3. 透過冷錢包轉帳給熱錢包
  4. 切換為熱錢包後登出MetaMask

若您需要更高規格的保護冷錢包,您可以考慮:

  1. 用另一個瀏覽器管理冷錢包。MetaMask支援不同瀏覽器,如:Chrome、Firefox等,您可將冷錢包交由較不常用的那個瀏覽器的MetaMask管理,將冷錢包和熱錢包虛擬隔離,也避免誤用。
  2. 若虛擬隔離不放心,您可用另一台電腦管理冷錢包,將冷錢包和熱錢包實體隔離,進一步避免誤用。
  3. 覺得多台電腦不方便,您亦可購買硬體錢包,硬體錢包大多以USB棒的形式存在,並且宣稱提供更高規格的保護也提供更豐富的功能。
  4. 最後一招,找張紙抄下您的私鑰和12個隨機詞組,將它們和您銀行的存款簿、印鑑保存在一起。

很多時候,行得通的方法也是最單純的方法。

提醒:
雖然透過冷熱錢包可降低冷錢包曝露的風險,但因以太坊上的交易都是透明的,透過追蹤錢的流向,仍可找到您的冷錢包。為此,很多進一步衍生的保護手法也常被使用,例如:(1)準備多個冷錢包,避免單一冷錢包被鎖定成為攻擊目標;(2)每次冷錢包與熱錢包轉帳時,中間多轉幾個免洗錢包(您可透過 MetaMask 隨時建立新的免洗錢包),降低冷錢包被發現/鎖定的可能性。雖然上述都是可行的進階保護方式,但安全和方便總是處於天平的兩端,建議您掌握冷熱錢包的概念後,依您實際使用錢包帳戶的情境,拿捏調整適合您的錢包帳戶管理模式。

總結

因攻擊手法日新月異,導致資訊安全保護也需要持續進步,因此未來我們也將不定時持續更新本文,提供最新的以太坊錢包相關資安保護技巧,讓使用者能持續安心的使用LastMile上提供的優質服務。

最後以下總結本文提到的重點,方便您未來快速調閱使用。

風險清單/應對手法:

  1. 私鑰被MetaMask加密保存於瀏覽器本地資料儲存區
    應對手法:
    (1)異地備份私鑰與12個隨機詞組
    (2)自動更新MetaMask、瀏覽器、作業系統
    (3)啟動防火牆、安裝防毒軟體、間諜軟體檢測工具
  2. 所有網站都會知道您有安裝MetaMask的事實
    應對手法:
    (1)確認互動對像的錢包和合約地址
    (2)留意可疑的MetaMask交易提醒
    (3)當不需要使用加密貨幣/代幣的時候,記得登出MetaMask

技巧清單:

  1. 善用測試性小額交易驗證交易對像可信度
  2. 建立冷熱錢包帳戶管理機制
文章授權(創用CC授權)
by-nd
comment

CONTACT US

We're not around right now. But you can send us an email and we'll get back to you, asap.

Sending

©2019 Business Next Publishing Corp. 聯絡、建議隱私權

Log in with your credentials

or    

Forgot your details?

Create Account