当前位置: 首页 > 教程 >文章详情

比特币钱包的种类与区别

国内主流交易所即将在10.31停止交易,那么挖矿产出的比特币再充入平台便毫无任何意义了。挖出来的币要如何处理呢?不妨先放在比特币钱包里,不但可以私下交易,也可以确保平台再次开放前比特币的安全存放。

一、比特币钱包基础概念

1.私钥:对于比特币用户来说,最难理解的就是这个“私钥”,丢币是因为私钥,保管不好的也是私钥,那到底什么是私钥呢?其实很简单,您只需要记住这么一句话就够了“私钥就是个随机数”。比特币私钥就是一个很大的、256位的随机数,那为什么我们通过比特币客户端看到的私钥是一串 5 或 K 或 L 开头的文本呢?其实这串文本只是私钥的显示方式而已,我们总不能把二进制“0、1”的私钥直接显示给用户,因此进行了相应的转换,不过无论其显示的格式如何,本质上,私钥还是那个范围在 2^256 随机数中的随机数。

一般来说,私钥这个随机数都是通过计算机算法来生成的(密码学安全的随机数生成器),当然,你也可以通过抛256次硬币或者是扔100次骰子的方式来获得这个随机数(这两种方式都能产生出 2^256 范围内的随机数),然后用这个随机数来当成私钥,这其实也没问题,只不过需要把这个随机数转换成上面提到的显示格式,就足够了,当然,大家一般不会这么去做,毕竟麻烦。

2.地址:说完私钥,我们再来谈谈地址,我们不去谈那些诸如“公私钥对儿、椭圆曲线、数字签名、SHA256”等密码学概念,只谈地址这个比特币世界里最常用的东西。地址是通过私钥计算而来的,具体怎么算的,大家不用去管,只需要知道私钥能计算出地址,地址不能反算出私钥,这是前提。比特币地址是1开头的,从一个私钥计算出其对应的地址之后,您就可以往该地址上转比特币了,转入的比特币只有私钥的持有者才能花,就这么简单。

3.公钥:公钥与私钥一一对应,是由私钥推算出来的(通过椭圆曲线算法),我们花费比特币的过程其实就是“使用私钥来签名比特币交易,其他人则可以使用公钥来验证签名,验证通过,花费也就完成了”。私钥能推算出公钥,但公钥不能反推出私钥,该过程是不可逆的,这就是比特币的密码学根基。

二、比特币钱包的分类

顾名思义,比特币钱包是用来存放、收发比特币的。但比特币本身只是一个数字,为什么比特币钱包里的这个数字就值钱,而我在一个文本文档或EXCEL表格中写个数字就一文不值,那是因为比特币的数字能够被全网认可,任何人都无法随意修改这一数字。保障这一点的,正是比特币钱包里存放的私钥。所以,准确地说,比特币钱包是用来存放比特币私钥的。


私钥如此重要,所以我根据私钥的存放方式,将钱包种类划分如下:

类别
                                                                                                       链上钱包链下钱包
离线钱包(冷钱包)多重签名钱包本地钱包
在线钱包
私钥存储位置离线设备(手机、电脑或专业硬件设备等)
服务器和本地各一把私钥手机或电脑等
钱包服务器
用户不掌握私钥
对应的产品

Armory离线端

Electrum离线端

比太冷钱包

Trezor硬件钱包

HardBit硬件钱包

BitGo

GreenAddress

快钱包

Armory

Bitcoin-QT

Multibit

比太热钱包

Blockchain

OpenBlock


三、各类钱包的特点

1、冷钱包

冷钱包是非常安全的,但是成本较高,易用性差。像传统的Armory,一般要找一台不联网的电脑专门用于安装Armory离线端,成本不小,如果要发送交易,则需要用优盘在离线电脑和在线电脑之间来回导交易信息、签名数据,很是麻烦,而且U盘还存在传播木马病毒的风险。Trezor硬件钱包应该是个类似网银UKey的东东,上面有两个按钮,发币时可点同意或拒绝。

我们很高兴地看到,国内已经有团队在做冷钱包,而且较传统冷钱包进步很大。像比太钱包将冷钱包安装在闲置的旧手机上,不但成本低了不少,使用也很方便,配合在线手机的热钱包,相对本地钱包和在线钱包都极具竞争力;Hardbit则设计了专门硬件钱包;

冷钱包也不是绝对安全的,硬件损坏、丢失,都可能造成比特币的损失,要做好备份。

2、本地钱包和在线钱包

接下来说说本地钱包和在线钱包,本地钱包的是装在自己的电脑或手机上,在线钱包则是将私钥加密后放在服务器上。个人的电脑有可能被植入木马,黑客可能盗取你的钱包文件,记录你的钱包口令;而钱包服务器也有可能被黑客攻陷,加密私钥存在被破解的风险。服务器安全防护做的比个人电脑要好一些,但也更容易引起黑客的注意,从安全性上来讲,我认为这两类钱包差不多。

在线钱包原理是,钱包在浏览器端使用用户的口令对私钥进行加密,加密之后传到服务器上保存,当需要使用时,从服务器上下载下来,在浏览器端进行解密。服务器上保存的是加密后的私钥,这就是在线钱包“不保存用户私钥”的由来,准确地说,应该是“不保存用户明文私钥”。

要加强本地钱包和在线钱包的安全性,最好设置一个较复杂的密码,并且,千万不要忘记。

本地钱包和在线钱包使用都比较方便,易用性强,在线钱包由于不受客户端限制,易用性比本地钱包能好一点。

3、多重签名钱包

多重签名钱包原理是这样的:取一个多重签名地址作为钱包地址,如果要动用这个地址上的币,必须有2个(或多个)私钥同时签名才可以。打个比方,就是一把锁,需要2把不同的钥匙一起用,才能打开。这样一来,我一把钥匙自己掌握(也可能是加密后托服务器保管,参看在线钱包),另一把交给服务器,如果只有一把钥匙被盗,黑客没有我本地的私钥。这样应该是多了一重安全。

但是,复杂流程带来了安全,往往也带来额外的风险隐患,比如我的本地私钥丢了怎么办?那连我自己也没法用了。怎么办呢?GreenAddress也很绝,它搞了一个未来交易(比特币协议自带的机制,使用nLockTime参数),这个交易在某个时间点之前,网络是不认的,一旦过了这个时间,比特币网络就可以把打包写进区块链。这样我只要再搞一个安全的比特币地址,把这个未来交易指向这个地址,万一丢一把钥匙,只要耐心等待未来交易生效就可以了。

多重签名机制看起来是更安全了,但易用性受到很大的影响,用户需要理解一些技术细节,还要保护好本地私钥和未来地址的私钥,学习和使用成本高了不少。另外,Armory也做了纯客户端的多重签名钱包。

4、链下钱包

链下钱包有点像交易所的账号,你把币存到交易所,交易所给你记上帐,当你给其他用户发送,收币发币是在交易所的账簿上加加减减,并没有真正写入比特币区块链。只有用户存币和提币的时候,才会发生链上交易。

链下钱包是纯粹中心化的钱包,用户是没有自己钱包的私钥的。很多比特粉受去中心化思想影响比较深,认为什么都要去中心化,对中心化交易以及挖矿算力集中等比较排斥。实际上,链下钱包效率很高,可以实时到账,方便对接购物平台,国外很多商家就是对接coinbase的,国内的币付宝也有。链下钱包将私钥保管的责任交给钱包公司,用户不必过多地考虑私钥安全。

需要说明的是,链下钱包里的币,并不是比特币,而是信用币。钱包里的数字,并不表示你拥有这么多币,只是说明别人欠你这么多的比特币而已。


    免责声明:本文为转载,仅为传播消息之用,不代表矿机之家观点,不构成投资建议!

责任编辑:kuangji

已赞+1 已有人赞过
评论

  • 最新