一、【猫说】打开比特币钱包的两把钥匙:私钥、公钥
如果不了解区块链,不知道公钥、私钥这些最基本的概念,拥有钱包对币圈新人来讲,就好像拿手指头去捅鳄鱼的脑袋,风险极高。此文谨献给币圈新朋友,帮助大家梳理比特币钱包的基本常识。
区块链观察网在《区块链是什么》一文中提到过,在区块链世界里,每个人都拥有两把独一无二的虚拟钥匙:公钥和私钥。
“公钥”,可以简单理解为银行卡,这是可以发给交易对方看的,银行卡号则相当于比特币转账中要用到的“地址”。
讲得专业一点,公钥就是一个65字节的字符串,多长呢?130个字母和数字堆在一起。公钥太长的话,第一交易起来忒麻烦,第二干嘛非得暴露公钥的真实内容呢,这就好像把自己的银行卡拿出来到处给人看。因此,我们现在看到的地址,就是经过摘要算法生成的、更短一点的公钥。
对方知道你的地址才能给你打钱;而且,任何人有了你的地址,都能在Blockchain.info官网查询这个钱包地址交易了多少次(No. Transactions),收过多少个比特币(Total Received),以及钱包里还剩下多少个比特币(Final Balance),如下图:
“私钥”,就像打死不能告诉别人的银行卡密码。它是一串256位的随机数。因为让非IT用户去记住这个满屏0和 1的二进制私钥是特别不人道的事儿,所以对这一大串私钥进行了处理,最后私钥就以5/ K/ L开头的字符串呈现在我们面前。
公钥、私钥、地址之间的关系是:
1)私钥→公钥→地址
私钥生成唯一对应的公钥,公钥再生成唯一对应的地址;
2)私钥加密,公钥解密
也就是说,A使用私钥对交易信息进行加密(数字签名),B则使用A的公钥对这个数字签名进行解密。
其中,私钥是极度私密的东西。如果你把私钥发给别人,现在就开始写一部长篇小说吧,名字都帮你想好了,就叫《永别了,比特币》。
如果是李笑来老师(网传拥有数十万个BTC)这类币圈大佬,强烈建议使用冷钱包(离线钱包),分开储存;电视里的富豪在银行有自己的保险箱,有条件的话也可以参考。
当时,上述方法是安全系数最高的做法。但作为韭菜接班人,暂且假设我们最初只用闲置资金、持有少量的比特币,比如,小于5个。那么,动辄上千成本、操作复杂的冷钱包就有点杀鸡用牛刀了;因此,区块链观察网把选择范围限定在交易所和轻钱包2项:
在交易平台上买了(极少量)比特币,可以先不提出来,继续存在交易所。这种方式最适合币圈新手。在没有深入了解每种加密货币背后的故事之前,鲜嫩的我们总是充满了好奇,而放在交易所的比特币,可以直接进行币币交易,交易简单快捷,不用经数字钱包导来导去;另一方面,平台上币种齐全,可以满足我们的尝鲜心理,方便随时小试牛刀。
而且像火币、币安(已被墙)这些大型交易所,不仅安全等级比某些专为收割韭菜而生的小平台高很多,而且操作简单,很快就能上手,只需保管好自己的账号、密码就行了(再安全一级的话,开启谷歌二次验证),其他的就交给平台。
值得注意的是,存在交易所上的资产并不完全属于自己,更确切地说是借给平台的,我们在资产那一栏看到的数字,相当于平台向我们借钱而打的白条。此外,交易平台本身不是去中心化的,如果安全措施不到位,用户的账号密码有可能被黑客拿到。
轻钱包是相对于“全节点”钱包来说的。
全节点钱包,比如 Bitcoin-Core(核心钱包),运行时需要同步所有区块链数据,占用相当大内存空间(目前至少50GB以上),完全去中心化;
轻钱包虽然也依赖比特币网络上其他全节点,但其仅仅同步跟自己有关的交易数据,基本实现去中心化的同时,也提升了用户体验。
根据不同的设备类型,我们把轻钱包分为:
1)PC钱包:适用于电脑桌面操作系统(如Windows/MacOS/Linus);
2)手机钱包:适用于安卓、iOS智能手机,比如比太钱包(以太也有PC端);
3)网页钱包:通过浏览器访问,比如上文提过的blockchain网页版。
轻钱包操作比较简单,一般是免费获取。申请钱包的时候,系统会生成一个私钥。准备敲黑板!
1)不要截图、拍照存在手机里;
2)不要把私钥信息发给任何人;
3)最好手写(几份)抄下,藏在你觉得最安全的地方。
总之一句话,谁掌握了钱包的私钥,谁就拥有钱包的绝对控制权。私钥只要掌握在你的手里,比特币就绝不会丢。
最后多说几句,作为普通投资者,我们需要做的并不多:
1)走点心,不要把手机弄丢了,毕竟丢了对手机里的比特币钱包有风险;
2)不要手痒删掉设备上的钱包应用,除非你决定再也不用这个钱包了,否则后期很麻烦;
3)设置复杂的密码(原因见第1点),并用心去记牢,这是私钥弄丢以后留的一手。
对于记不住密码,又懒得科学备份私钥的朋友,咱还是把钱存在银行里吧。
二、什么是比特币钱包
比特币钱包分三类:
比特币客户端钱包、比特币网络web钱包、比特币手机和pad钱包.
比特币客户端钱包:
比特币客户端钱包是一个安装到pc上的软件,常见的客户端钱包有:
官方钱包bitcoin-qt、MutiBit等等.这两个钱包都有windows、linux、mac版本。我们推荐使用官方钱包bitcoin-qt,以安全性、稳定性方面都不错,唯一的问题是启动速度慢,第一次运营需要同步数据块,根据网速不同大概需要1-3天时间。但只需要同步一次,以后再使用不需要重新同步。
三、如果你还没有使用过比特币钱包,你就未曾真正拥有过比特币
能看到这篇文章的你,多半已经在进行比特币投资了。但很多朋友只是在比特币的交易所中注册了账户,购买了比特币,并且能看到每时每刻都在跳动的折合成人民币的总资产数字。仅仅这样的话,你还没有真正意义拥有过比特币。为什么这么说,又怎么样才算拥有自己的比特币,得首先了解一下什么是比特币钱包。
钱包这个名称其实有很大的误导性。但已经约定俗成。钱包已成为包括比特币在内的加密货币领域的一个专用名词。现在中国有了数字人民币,为作区分,借用比特币钱包的概念,我们把支付宝、微信支付也称为了钱包。
比特币不同于传统意义的钱,不是任何银行、机构制造出来的。它非常像我们熟悉的黄金,是无数多人公平地通过努力挖掘到的,也因此大家把比特币的产生叫做挖矿,把比特币叫做数字黄金。换个比喻,发明比特币的人,给大家出了一个极其复杂的方程式,这个方程式共有2100万个解,每个解就是一枚比特币,而且获得这些解的方法也是公开的,且难度逐年提高。那些所谓的矿机不断消耗电力和算力就是在拼命地解这个方程式,以获得足够多的正确的解。即便是比特币的发明人中本聪,也只能通过同样的努力,才可能获得比特币。
那么比特币到底长什么样子呢?
不好意思,很难说清楚比特币长成什么样子,这就好像我们很难理解爱因斯坦所描述的四维时空。简单形象地来说,它是一种社群共识,社群中的每一个人按照算法协议,共同认可这个正确的解是由你解出来的,并在每个人的账本上面都做了同样的记录,除非超过一半的人都串通好修改了各自的账本。这也就是区块链原理的一种最简单的表述。后面有机会再专门给大家介绍什么是区块链。
这套每个人都有的一模一样的账本中,存在很多不同的账户信息,这些账户,也就是比特币的公钥。而账户对应的密码,就是私钥。他们长成下面的样子:
公钥也叫地址,是可以对外公开的信息,好比你的银行卡号,你可以将这个卡号告诉别人,别人知道了你的卡号就能往里面转账,但不能从中取款。
而私钥则相当于你的银行账户密码,有了密码,你就可以管理你的账户,可以从中取款,或者转账给别的银行账户。
与银行账户密码略有不同的是,仅仅知道银行账户的密码,什么也做不了,还得知道卡号才行。但比特币的私钥中是包括了公钥信息的,也就是说,即便你忘记了公钥也没有关系,只要记得私钥,就能算出公钥来。
所谓的比特币钱包,就是管理你的比特币私钥的一个工具。钱包里面并没有比特币,但却可以通过钱包方便地打开大家的账本,查询这个账户对应的钱和交易记录,以及向其他账户转钱(让每个账本都记录一笔相同的转账信息)。
你一定会问了,我在交易所中的账户,那里能看到我有多少币,不就是钱包吗?
没错,如果交易所够良心,也够有实力不出现被黑客攻击的话,那是你的钱,而且交易所的账户,广义上来说,也属于一种类型的钱包。但在我们前面所说的社群账本中,根本不存在任何跟你有关的账户信息。能查得到的,只是交易所的账户,这个账户中是包括了交易所所有投资者的比特币的,具体你占多少,他占多少,则记录在交易所自己的一个小本本中。这个小本本很容易被偷盗、篡改,甚至整个交易所跑路了也不是不可能。
现在你应该明白,如果你从来没有使用过任何比特币钱包,从来没有从交易所提取过你的比特币,你在区块链的世界中就从未存在过,也就说明你还没有真正拥有过比特币。
四、比特币钱包是什么
比特币钱包大致实体钱包在比特币网络中的等同物。钱包中实际上包含了你的私钥,可以让你消费块链中分配给钱包的比特币。和真正的钱包一样,每个比特币钱包都可以显示它所控制的所有比特币的总余额,并允许你将一定金额的比特币付给某人。这与商家进行扣款的信用卡不同。
比特币地址就像一个物理地址或者电子邮件地址。这是别人付给你比特币时你唯一需要提供的信息。然而一个重要的区别是,每个地址应该只用于单笔交易。
私钥相当于你登录钱包使用的账号,只有你自己知道;公钥相当于别人给你打钱的账号,任何人都可以看到。
比特币是由挖矿产生的,比特币挖矿是利用计算机硬件为比特币网络做数学计算进行交易确认和提高安全性的过程。作为对他们服务的奖励,矿工可以得到他们所确认的交易中包含的手续费,以及新创建的比特币。比特币挖矿竞争非常激烈,需要专业的ASIC比特币挖矿机挖矿才有资格参与竞争,市场上主流的矿机有烤猫三代和阿瓦隆三代矿机。
五、比特币钱包
比特币(bitcoin)诞生于2008年的一篇论文。
一个署名为中本聪的人,提出了革命性的构想:让我们创造一种不受政府或其他任何人控制的货币!这个想法堪称疯狂:一串数字,背后没有任何资产支持,也没有任何人负责,你把它当作钱付给对方,怎么会有人愿意接受?
Merkle tree
跟二叉树长得很像,只是这个是下面两个节点取哈希值得到上面节点。只需要记住根节点,就可以检测整棵树有没有被篡改。
根哈希值存在block header里,交易过程存在block body里。全节点包括block header和block body,但是轻节点(比如手机上比特币钱包)只包括block header。这棵树可以证明包含某个交易已经被写进了区块链。
3.共识协议
去中心化的货币要注意的两个问题:
1.谁能发行数字货币:挖矿。
2.怎么验证交易的合法性:区块链。
双花攻击(double spending attack)
双花攻击是数字货币的一个主要挑战。
比特币中的交易都要有输入和输出,币从哪来,花到哪去。
正常情况也可能有两个分叉,因为两个节点同时获得记账权,两个节点打包的区块,同时计算出了那个随机数。此时会暂时两个分叉共存,直到其中某一个区块抢先找到了下一个区块,这条就成了最长合法链,另一个分叉就被丢弃。
女巫攻击(sybil attack)
某恶意节点不停产生账户,账户总数超过总账户的一半,则取得了区块链的控制权。
比特币中的共识协议(Consensus)
一些节点是有恶意的,大部分节点是好的。
想法1:把一些交易打包到区块里作为候选区块,让每个区块投票,如果通过就写入区块链。
不行,因为有的恶意节点一直发布一些含有恶意交易的区块,则一直投票,占用资源。而且有的节点不投票。
想法2:不按账户个数投票,而是按照计算力投票。每个节点都可以产生合法交易放入区块,这些节点就开始试随机数,直到找到H(block header)≤ target,则这个节点有记账权。
唯一产生比特币的途径
coinbase transaction。这个不用指出币的来源,有了记账权的节点(找到了随机数)会有出块奖励。
50BTC->25BTC->12.5BTC,每21万个比特币,奖励就减半。
比特币争夺记账权的过程叫挖矿。争夺记账权的节点叫矿工。
本文来自用户投稿,不代表币大牛资讯立场,如若转载,请注明出处:https://www.98xmw.com/zhis/18048.html
发表回复
评论列表(0条)