风险提示:理性看待区块链,提高风险意识!

解析比特币钱包工作原理

2个回答

今年明日9星评价

2020-04-30 13:07:59

解析比特币钱包工作原理

现实生活中的钱包是用来放钱的,但是比特币钱包不是用来存放比特币”的,为什么这么说?

比特币的所有权是通过数字密钥、比特币地址和数字签名来确立的。数字密钥实际上并不是存储在网络中,而是由用户生成并存储在一个文件或简单的数据库中,称为钱包。

在比特币系统中,我们用公钥加密创建一个密钥对,用于控制比特币的获取。密钥对包括一个私钥,和由其衍生出的唯一的公钥。公钥用于接收比特币,而私钥用于比特币支付时的交易签名。

支付比特币时,比特币的当前所有者需要在交易中提交其公钥和签名(每次交易的签名都不同,但均从同一个私钥生成)。比特币网络中的所有人都可以通过所提交的公钥和签名进行验证,并确认该交易是否有效,即确认支付者在该时刻对所交易的比特币拥有所有权。

比特币钱包是私钥的容器,只包含私钥而不是比特币。每一个用户有一个包含多个私钥的钱包,钱包中包含成对的私钥和公钥。用户用这些私钥来签名交易,从而证明它们拥有交易的输出(也就是其中的比特币)。

根据私钥的存放方式,将钱包种类划分如下:

1.冷钱包

冷钱包是非常安全的,但是成本较高,易用性差。像传统的Armory,一般要找一台不联网的电脑专门用于安装Armory离线端,成本不小,如果要发送交易,则需要用优盘在离线电脑和在线电脑之间来回导交易信息、签名数据,很是麻烦,而且U盘还存在传播木马病毒的风险。

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

2.本地钱包和在线钱包

本地钱包的是装在自己的电脑或手机上,在线钱包则是将私钥加密后放在服务器上。

个人的电脑有可能被植入木马,黑客可能盗取你的钱包文件,记录你的钱包口令;而钱包服务器也有可能被黑客攻陷,加密私钥存在被破解的风险。服务器安全防护做的比个人电脑要好一些,但也更容易引起黑客的注意。从安全性上来讲,这两类钱包差不多。

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

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

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

3.多重签名钱包

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

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

4.链下钱包

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

链下钱包是纯粹中心化的钱包,用户是没有自己钱包的私钥的。

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

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

5.纸钱包和脑钱包

额外说说纸钱包和脑钱包。纸钱包和脑钱包并不是完整意义上的比特币钱包,因为使用纸钱包或脑钱包,你无法使用上面的比特币,发币时还得借助其他钱包导入私钥。纸钱包和脑钱包仅仅是保存比特币私钥的两种方式。

纸钱包,就是把比特币的私钥打印在纸上,然后保存起来,一般用于冷藏比特币,也可以作为本地钱包或在线钱包的私钥备份。如果生成、打印私钥的环境是安全的,那么纸钱包安全性是比较高的,成本也很低。但是要注意防火防水防盗,如果是热敏纸打印的,还要注意热敏纸字迹容易褪掉。

此外,私钥也可以备份在磁介质中。像U盘、SD卡的寿命都很长,质量好的保存几十年没问题,移动硬盘当然也可以,就是有些浪费。光盘最便宜,但是容易氧化,质量普遍不高,可能几年就坏掉了。

其实,比特币是私钥就是一串数字和大小写字母的组合,50来个字符,如果记忆力强,硬硬地把它记住,也算是一种保存方式。不过,如果你忘了,比特币就永远找不回来了,变成了脑残包”。

钱包首要的要求是安全,但是世界上没有绝对的安全。至于怎么存”,就要看比特币拥有者自己的考量了。


时代BTC6星评价

2020-04-30 13:12:08

我们先来看看钱包的第一个功能

钱包,大家都知道,是装钱的。那比特币系统中,什么能代表钱呢,就是私钥地址对,一个私钥地址对就相当于一张银行卡。如果一个地址上有钱,那谁拥有这个地址对应的密码,谁就拥有这笔钱。所以,比特币钱包其实就是一个软件,它其中的一个重要功能就是管理私钥和地址。

那么,钱包是如何管理私钥和地址的呢?

我们在上个视频中讲到,如果想要拥有一个私钥地址对,只需两步,第一步,想个私钥;第二步,根据私钥得出对应的地址。其中第二步,也就是根据私钥得出地址这一步,就是钱包根据规定的算法自动帮我们得到的。当然,第一步,想个私钥,也可以让钱包帮你代劳,让他帮你随机一个私钥,然后我们去钱包中去查看就行。

那钱包还有什么功能呢,我们继续往下看,钱包的第二个功能

前面说了,钱包可以管理很多个秘钥地址对,那我如何知道钱包里总共有多少钱呢?那就是该钱包里面每个地址余额的总和了。那每个地址里有多少钱呢?那就需要拿比特币系统里那本神奇的账本来对一对了。所以钱包的第二个功能就是管理账本。

接下来我们来看看,钱包如何管理账本

这里要说明一点,并不是所有的钱包都需要管理账本。想一下,比特币系统的这本账本,很多人手上都有一本一样的,如果我暂时不需要知道我的余额,我也不用去对账本,所有的交易别人都记着呢,哪天要用的时候再从别人那拷贝一份也是可以的。那如果你说我现在就要钱包管理账本,没问题啊,那么只需要将钱包接入比特币系统,你的钱包会自动从别的保存着账本的钱包中,把账本同步过来。所以,钱包并不一定需要联网,你需要同步账本的时候,或者要花钱的时候才需要联网。

钱包长什么样

好了,讲到这,有些人可能要抗议了,讲了那么久,还没让我们一睹比特币钱包的真容呢!我说别急,我们先来看看现实中的钱包,有长这样的,很大可以装很多钱的,有长这样小巧的,所以比特币钱包也有很多种,但万变不离其宗,大家只要记住一点,比特币钱包管理的就是你的私钥地址对和账本,当然账本需要联网同步,而私钥和地址则并不需要联网。关于私钥和地址管理不需要联网,你想象一下一台不联网的电脑,他也是可以计算和管理数据库的你就理解了。

接下来我们来看看官方版的钱包,bitcoincore,比特币核心,长这样!

从这下载https://bitcoin.org/zh_CN/choose-your-wallet,下载后跟安装普通软件一样安装。别小看它,它的账本可保存了2009年比特币面世以来所有的交易记录,像这样保存所有记录的钱包我们称作比特币网络的全节点,全节点的作用之一,就是保存了完整版的账本,任何钱包联网后都可以从附近的全节点自动同步系统账本。全就意味着大,所以账本数据得有50多G,如果你新安装一个钱包,得花几天时间才能把这些数据同步到你的钱包里,具体视电脑配置和网络环境而定。有人说我2016年才开始有比特币的,那你就没必要非的下整合账本,只需要从你开始玩的时候开始,因为之前的记录根本没有关于你的嘛!是这样的话,你看就可以下载一个轻量版的钱包,就不需要下载整本账单了。

接下来,我们看看,钱包的分类

前面说了钱包有很多种,那我们看看大致可以分为几类。一类是网页版钱包,以https://blockchain.info为代表,还有虚拟币交易网站的钱包也属于这类,你对钱的控制权通过登陆网站的用户名和密码保证。另一类是软件版钱包,你对钱的控制权通过登陆软件的用户名和密码保证。另外还有硬件钱包等,我们不再详细介绍。

钱包的安全

关于比特币钱包的一个介绍其实就已经差不多了,但有一点最重要的没讲,就是钱包的安全,说白了就是你的比特币的安全。

为了引起大家对安全的重视,我先说一句危言耸听的话,那就是,无论是网页版还是软件版的钱包,只要登陆的用户名和密码被盗,那么存在于该钱包内的比特币就会丢失,因为钱包管理着你的私钥,有了你的私钥就有了这个私钥对应地址的比特币的控制权。

当然,实际情况是,钱包的登陆名和密码被盗的概率是非常非常小的,他们是会经过多重验证的,比如每次登陆都会手机验证或者谷歌验证等方式。

那有人说我还是不放心啊,有没有方法可以杜绝被盗。那冷钱包就是一种不错的方式。具体操作方法是,下载一个钱包,然后拷贝到一台从未连过网的电脑上,在这台电脑上随机生成私钥和地址。然后把你的比特币存在这个地址当中。这台电脑永远也不要联网,黑客永远也拿不到你的私钥。关于比特币的安全,最后总结一句,私钥在手,天下任我走。