比特币钱包综述---之一---硬件钱包

?251?2014-4-19 00:17?作者:初夏虎

一,引言

在比特币的世界里畅游,不懂一些基本知识来保护?#32422;?#30340;资产就如同在裸奔,这就是为什么很多人对比特币敬而远之的重要原因之一。这意味着如果你的比特币知识只达到“中国大妈”的水平,不懂在线钱包的冷存储的概念、onchain/offchain的区别,或者不懂钱包PC客户端的找零机制,google码双重验证等等,你的比特币之旅将比较凶险;这时候,你需要的是一种“更真实”的钱包来安全存放你的比特币,更妙的是用这个钱包你甚至可以完成和其他种类钱包一样复杂的功能。

?

二,硬件钱包的价值

引言中提到的“更真实的钱包”其实就是“硬件钱包”。硬件钱包存在的价值,笔者认为包括但不限于以下三点:

1)目前已知最安全、最便捷的比特币存储方案;

2)在产品的界面设计友好的前提下,“大妈?#24065;?#33021;使用,利于打开大众市场;

3)在比“?#21482;?#31227;动钱包”更安全的前提下,利于对接比特币的O2O线上线下应用。

首先来看第一点,冷存储是目前交易所、在线钱包标榜的比特币安全存储标准措施,冷存储字面上高端大气上档次,实际也就是离线存储,把钱包的私钥放在离线设备上、或者打印出来成为纸钱包,然后存储在保险箱等“物理上安全的场所”。硬件钱包完全就是这个存储思路。

再来看第二点,通过对产品(或产品设计)的对比我们容易发现,硬件钱包解决问题的主要对象,应该是普通用户;?#20040;?#20648;方案旨在为每个人提供安全、方便的离线存储设备;为了便于理解才冠名以钱包,如此而已。但不可否认,这正是市场普及比特币的过程中急需的产品,人们会逐渐无法回避比特币给生活带来的改变,此?#27604;?#26524;有这么一款傻瓜式、安全可靠的硬件钱包产品,将是多么令人欣慰的事情。

最后一点其实有一些争议。提到与移动支付相关的,还有O2O应用,我们首先会想到的是智能?#21482;?#32456;端,然后是移动APP应用,诸如此类的案例;市场上已经有比特币的?#21482;?#38065;包,智能机也有丰富的通讯模块(wifi,蓝牙,4G/3GNFC),人们为什么还要专门携带一个“比特币硬件钱包”呢?

要回答这个问题,我们可以?#20154;?#32771;另外一个问题:有了?#21482;?#38065;包之后,我们是否完全抛弃了皮?#20982;櫻?#23545;后面这个问题,我们的回答可能是?#22909;?#26377;完全抛弃皮?#20982;櫻?#22240;为它更安全(如果被盗也不是因为人们不懂技术);因为它可以对过去的支付习惯有?#24049;?#30340;继承(一手交钱一手交货),不懂玩弄?#21482;?#38065;包的人也能用;因为它不需要通讯设备,可?#26376;?#36275;人们随时随地的易物需求,等等。

回到最初的问题,我们为什么还要专门携带一个“比特币硬件钱包?#20445;?#19982;上面携带皮?#20982;?#30340;理由大致是相似的:不是谁都有能力管好?#32422;?#30340;在线钱包;也不是谁都习惯于用智能?#21482;?#32852;网支付。

不同之处在于,涉及比特币的线下应用无论如何还是得有线上确认交易的?#26041;冢?#20294;是确认?#26041;?#26159;联网模块的工作,硬件钱包属于离网模块,主要功能是私钥的安全存储,联网模块是比特币应用/服务提供者必须准备的基础设施——所以综本段所述,“能使用比特币的地方必然可以很方便地增加一种通讯协议接入硬件钱包”。

三,硬件钱包产品对比

笔者搜集了网络上已有的比特币硬件钱包产品或产品设计信息,选择其中具有代表性的?#30446;?#30828;件钱包,包括国外的Pi-WalletTrezor团队的产品TrezorButterflyLabs的产品设计BitSafe,?#32422;?#22269;内的设计HardBit,并对产品(或设计)的界面、功能和理念三个方面进行了较为详细的对比和分析,如下:

1Pi-Wallet[[1]]

?

1 Pi-Wallet主体、配套的SDHC记忆卡?#32422;?#36719;件

???????1Pi-Wallet的全套产品,售价为154.95EUR,约合1333CNY,详情可以?#24944;?#23448;网(http://www.pi-wallet.com/)。主体部分是一块“树莓派?#20445;?span lang="EN-US" style="word-wrap: break-word; max-width: 100%; margin-top: 10px;">Raspberry Pi),两块SDHC卡里面包含一个操作系统及一个Armory钱包,二者都是开源的,官网上面还提供了开源代码的链接;用户可以?#32422;?#23433;装系统和钱包,但是Pi-Wallet也提供安装服务。

?????? Pi-Wallet本质上就像一台离线的电脑(由USB线提供电源),只不过更小,而且硬件能力有限,也只能用于做比特币离线存储这样的应用。

2Trezor[[2]]

2 Trezor连接PC示意图

从图2(视?#21040;?#22270;)中的介绍可知,Trezor是一款USB设备,必须连接电脑(通过USB线,Trezor端似乎是安卓android设备的通用接口)才能使用。

3 Trezor连接PC后显示屏示意图

从图3可以清晰地看到,Trezor连接到电脑之后,跳过开机LOGO画面之后,屏幕上即出现1Bi开头的地址,1.33XXXBTC,?#32422;啊?#26159;否确认?”的信息,左右两个物理按键分别对应“取消”和“确认”操作。

Trezor仅能?#37038;?#26469;自电脑的付款请求,并完成支付签名(signing);未连接电脑?#20445;?span lang="EN-US" style="word-wrap: break-word; max-width: 100%; margin-top: 10px;">Trezor将成为离线冷存储的比特币钱包。

总结一下Trezor团队的产品理念,有如下几点:首先,支持Trezor付款请求等的软件是开源的,为了增强使用者的信任感,因为这是软件开源社区认可的代码,大家都在使用,同样如果你不放心也可以?#32422;?#20462;改代码;其次,硬件钱包产品风格极简,仅可以被动?#37038;?#30005;脑的付款请求,并配合在线钱包(地址https://mytrezor.com/)形成在线、离线模块分明的比特币钱包解决方案;最后,离线模块完全移除了通讯功能,限定了USB一种连接方式,将冷存储做到极致。

3BitSafe[[3]]

4 BitSafe设计示意图

4左,顶栏表明,BitSafe的设计有内置电源,有蓝牙通讯功能,可以进行钱包的同步,是触屏操作模式,无物理按键;底栏有三种操作,“home?#20445;?#19979;翻”和“上翻?#20445;?#20027;体部分可以显示钱包余额,地址信息,交易记录,?#32422;安问?#35774;置。

4中,主体部分可以显示发送比特币的数目,发送对象(对象是以代称?#38382;?#20986;现,可能暗含账号管理的功能),可以进行发送操作(“send now?#20445;?#21487;以修改发送比特币的数目?#32422;?#23545;象(对金额amount?#32422;?#25910;款人recipient?#20063;?#30340;尖括号的猜测),进行主动的比特币交易。

4右,主体部分是一个二维码,提示“扫描以获取信息?#20445;?#29468;测是公钥和比特币数目等交易信息。

据网站介绍,该产品还能插入SD卡备份,并配有用于扫描二维码的摄像头。

在钱包的安全性方面,BitSafe设计中包含了通用的离线冷存储概念,据说产品可以?#21862;?#27602;和木马程序;设计了冗余系统,防水外壳,?#32422;?#22810;重签名的支持,分别在系?#22330;?#30828;件?#32422;?#25903;付模式上加强了钱包的安全性能。

在便捷性方面,BitSafe的特色是支持二维码支付,?#32422;?span lang="EN-US" style="word-wrap: break-word; max-width: 100%; margin-top: 10px;">SD卡备份。

团队的理念总结如下:软件是否开?#27425;?#30693;,似乎是不开源的;蓝牙功能作为通讯手段算是保?#33267;?#38065;包的离线属性,也增加了与在线模块通讯的灵活性;可能由于ButterflyLabs团?#30828;?#26410;打算做一套线上和线下钱包的解决方案,所以BitSafe上集成的功能相对较多,可主动发起交易,也可通过二维码实?#33267;?#27963;的支付,还有支?#20540;?#22336;管理、多重签名功能。

不过据说BitSafe的产品一直没有上架,不得不说是一个遗憾,?笔者在412日的多伦多比特币大会上询问,?得到的回答是6周内可以出货,?记得1月份在迈阿密问他们的时候,?他们是说4月份。

4HardBit[[4]][[5]]

4 HardBit设计示意图

4左,创建账户并确认密码;图4中,余额查询/刷新,收/付款,?#32422;?#20854;他功能;图4右,地址二维码,整个界面设计相对简单。钱包的功能方面并没有特别之处。

关于产品设计理念,设计者进行了比较详细的阐述,从其产品白皮书中可以截取部分作为?#24944;跡?#35774;计者认为硬件钱包应该是一个解决方案,主要解决的问题就是比特币的安全存储和交易,据此可以分为五大模块,分别是离线硬件,离线软件,通讯协议,在线软件,在线硬件,它们的功能分别如下:

l??离线硬件:存储和执行硬件钱包离线端软件,存储私钥;提供与用户互动的界面,提供与联网硬件进行数据传递;

l??离线软件:?#37038;?#20184;款指令,对交易进行签名,向联网端软件发送签名后的交易

l??通讯协议:离线端和联网端软件的数据交换协议;独立于离线端和联网端软件;

l??在线软件?#21512;?#31163;线端软件发送付款指令;从离线端软件?#37038;?#31614;名后的交易?#36824;?#25773;到比特币网络;

l??在线硬件:任何电脑、?#21482;?#26381;务器;存储和执行硬件钱包联网端软件;具备与离线硬件进行数据传递的硬件装置。

设计者认为,这样设计的优势在于将私钥与联网的软件彻底分离,以保障比特币地址安全,而签名过程需要人工介入,公开的通讯协议,?#32422;?#31163;线、在线软件控制权分离带来的多次确认可以保障用户对软件的零信任需求,因此软件不需要开?#30784;?/span>

此外,HardBit产品除离线软硬件的概念和白皮书之外,并未见通讯模块和在线模块的设计细节,产品尚未正式面世。

4)?#30446;?#20135;品横向比较

上一节笔者拿硬件钱包与物理钱包做比较并非偶然,是因为它们具有(或者说应该有)以下几个重要的共同特征:

a)私密性——别人无法窥探你的钱包,也无法偷偷从你钱包拿钱;

b)可控性——钱包只在使用的时候被你打开,不会?#32422;?#24708;悄打开;

c)感知性——?#34892;危?#20307;积小,可随身携带;

d)便捷性——随时随地,打开钱包就可以用钱。

除此之外,硬件钱包还有(或者说应该有)一些普通物理钱包(传统法币皮?#20982;?span lang="EN-US" style="word-wrap: break-word; max-width: 100%; margin-top: 10px;">)不具有的功能,例如(e)可恢复性——丢失钱包后可以通过冗余系统的备份恢复里面的资产,(f)安全性——得到遗失钱包者因为没有二级验证信息而无法使用钱包,等等。

?

1?三款产品几大功能特性的对比

?

Pi-Wallet

Trezor

BitSafe

HardBit

私密性

较好(蓝牙通讯)

可控性

较好(蓝牙通讯)

感知性

较好(电池)

未知

便捷性

较好(USB连接)

较好(USB连接)

好(蓝牙通讯)

未知

可恢复性

好(可备份)

未知

好(冗余系统,SD卡备份)

未知

安全性

好(通过Armory?#29992;埽?/span>

未知(是否与在线钱包有互相验证?)

未知(防水,是否验证账号密码未知)

较好(账号需验证密码)

可扩展性

较好(二维码,蓝牙通讯)

较好(二维码)

?

由表1可以发现,?#30446;?#30828;件钱包产品似乎可以分为三代不同的产品,第一代以Pi-Wallet为代表,同期的还有其他独立硬件、无显示屏的硬件钱包(如HW-1[[6]]Bitcoincard[[7]]),配合开源的钱包软件和操作系统,已经能完满解决私钥离线存储和签名的问题,是优秀的硬件钱包解决方案。

第二代硬件钱包的特征并不明显,笔者妄下定义,以Trezor为代表,开始出现显示屏、物理按键,也?#20982;?#38754;钱包客户端之外的连接方案(Trezor在线钱包),虽然看起来与第一代外形和体验的差距不大,其实暗藏了一个全新的思路——在私钥离线存储的前提下,硬件钱包能否是智能的?

这个问题应该交给第三代硬件钱包,以还在研发的BitSafeHardBit为代表;它们具有更强的扩展性,在逻辑上仍然满足离线模块和在线模块的控制权分离,但是通讯模块发生了变化,产品的UI也更友好,能承载的功能也由单纯的存储,逐渐衍生出线下交易的无限想象。虽然产品还未面世,但第三代硬件钱包的概念给了线下便捷、安全的交易,还有硬件钱包与其他类型钱包进行更深层次的互动以可能性。

?

?#27169;?#30828;件钱包的未来展望

笔者认为,硬件钱包的市场价?#21040;?#22312;未来得到印证,而通过对比以上三代产品(或产品设计),可以发?#33267;?#20004;种不同的解决比特币硬件钱包思路:(1)以第一和第二代硬件钱包为代表,提供完满的离线存储方案,同时赋予硬件钱包离开主机host就无法工作的特性,Pi-Wallet通过PC端的Armory控制钱包和私钥,Trezor通过在线钱包向离线钱包推送交易请求的解决方案,都力求打造设计极简的硬件钱包;(2)以第三代硬件钱包BitSafeHardBit为代表,主张在线模块和离线模块控制权分离,通过公开的通讯协议联系在线和离线软件的基础上,硬件钱包向上兼容各种在线软、硬件,也可以摆脱host实现双向的操作,硬件钱包既可以被动?#37038;?#20132;易请求,也可以主动发起交易。

笔者倾向于支?#20540;?span lang="EN-US" style="word-wrap: break-word; max-width: 100%; margin-top: 10px;">2种硬件钱包的思路,理由很简单,硬件钱包的诞生是由于安全?#38053;?#34385;,私钥需要离线存储,这些特征都不需要依赖host;而依赖host的交易模式确实在限?#24179;?#26469;硬件钱包线下交易的想象空间。

比特币的世界需要的是想象力,?#32422;?#21046;约风险的开关,仅此而已。

?

?#24944;?#26448;料


[[1]] Pi-Wallet官网?http://www.pi-wallet.com/

[[2]]?Trezor官网?http://www.bitcointrezor.com/

[[3]]?BitSafe官网?http://www.butterflylabs.com/bitcoin-hardware-wallet/

[[4]]?HardBit白皮书?http://www.xkubg.club/index.php/2013-12-15-15-08-16/2014-01-27-19-39-08/684-2014-04-01-11-15-30

[[5]]?HardBit界面设计?http://www.xkubg.club/index.php/2013-12-15-15-08-16/2014-01-27-19-39-08/684-2014-04-01-11-15-30

[[6]] Hardware WalletHW-1)官网?http://www.hardwarewallet.com/

[[7]] Bitcoincard?官网?http://www.bitcoincard.org/product/?ID=0