舉了這個極端情況的例子,大家就能明白了,連線 USB、藍芽並不代表硬體錢包就是聯網的熱錢包了,也不會獲得硬體錢包更多的許可權。
其實所有的硬體錢包,無論其資料傳輸方式採用的是 USB 還是藍芽,甚至是透過二維碼,硬體錢包廠商都必須努力證明自己:【你透過 A 來跟我要東西,只能得到個“1”,想要別的?沒戲!】
要做到這一點,那就必須要從硬體錢包架構上證明私鑰的儲存空間是安全的,再從硬體錢包韌體上證明你跟我只能要到個“1”(也就是說,你只能傳送給我未簽名交易,然後從我這裡請求籤名後的已簽名交易),別的啥都沒有。
而硬體錢包要做到這兩點,沒辦法,“必須開源”,沒得商量,而且,必須是硬體設計和韌體原始碼全部開源,必須每個版本的原始碼都能被第三方自行編譯驗證,否則,你就證明不了你自己是安全的。
有人可能會問,那如果用二維碼的話,是不是可以不用開源,只需告訴你二維碼裡傳輸的資料格式都有哪些,你就能驗證是否安全了。是這樣的嗎?
其實不然,作為全球最早採用二維碼為使用者提供安全冷錢包方案(比太錢包)的團隊,我們可以說是最懂這種模式的人了(掐腰),記住我說的這句話,即便是使用二維碼作為冷錢包的資料傳輸方案,仍然必須開源,因為你必須證明自己簽名的時候使用了安全的隨機數方案(比如說 RFC6979),否則,雖然你沒透過二維碼來傳遞有風險的資料,但一個有問題的 k 值,私鑰就暴露了。因此,認為公開二維碼格式就能證明自己是安全的人,其實連基本的密碼學原理都不懂,根本就理解不了“硬體錢包為什麼必須開源”這句話的意思。
總之,硬體錢包採用 USB 或藍芽來進行資料傳輸,不代表硬體錢包就上了網了,硬體錢包本身仍然是冷錢包,安不安全要靠開源的硬體架構加韌體原始碼來證明哈。
另外,還有一些幣圈企業與傳統硬體廠商外包生產的硬體錢包,其系統架構並不像 BITHD 、Trezor、Ledger 這樣採用了獨立開發的韌體,而是使用了傳統硬體廠商用於傳統硬體裝置的虛擬機器系統,之後在該虛擬機器系統上二次開發編寫加密貨幣程式碼而做出來的硬體錢包,這類的系統安全性其實完全沒法評估,請大家謹慎使用。
最後,作為在加密貨幣錢包的安全領域裡有著六年安全聲望的團隊(掐腰),我在這裡可以給大家講述一個硬體錢包資料傳輸方式方面的趨勢,供大家參考哈:
首先,NFC 方案對於硬體錢包來說,不是好的方案。因為 NFC 需要貼在手機背面使用,在使用過程中要麼看手機螢幕,要麼看錢包螢幕,二者之間難以兼顧,很不方便。而沒有螢幕的硬體錢包連校驗地址真實性的功能都實現不了,屬於徹底不安全的方案,完全不應該出現。
其次,USB 是硬體錢包早期喜歡採用的方案,Trezor 和幣定行都是 USB 的方案,這與當時移動網際網路還不夠發達是有關的,硬體錢包開發者們會優先考慮連線電腦使用的需求。像 Trezor 一代和二代都是 USB 的方案,而 Ledger 一代也是 USB 的方案,二代才開始改成藍芽。
隨著移動網際網路的進一步發展,最近幾年大部分新興的錢包團隊已經不再為電腦端開發錢包軟體了,而硬體錢包廠商也在向移動網際網路遷移。比如說,像我們的位元護盾 bithd.com ,算得上的行業內最早採用藍芽的硬體錢包之一了哈。而 Ledger 剛剛釋出的第二代產品,也正是遷移到了藍芽的方案。基本上,USB 轉藍芽對於硬體錢包來說是可預見的趨勢,Trezor 至今仍然採用 USB 不代表這個趨勢不成立,只是 Trezor 這個團隊做事的節奏比較慢而已。
位元護盾的一代二代以及刀鋒採用的都是藍芽這一資料傳輸方案,從這一點上講,我們在硬體錢包資料傳輸方案上還是有相當的預見性的。