主页 > imtoken币不见了 > 比特币如何运作和挖矿
比特币如何运作和挖矿
在上一节中,我们讨论了中心化货币的三个缺点,即自上而下的共识导致用户没有支配地位,中心化货币过度发行导致用户财富贬值和财富所有权的隐患,而时代呼唤一种货币,它是一种我们可以控制自己的货币,流通量是恒定的,它是真正属于我们自己的。那么比特币的出现填补了这三个空白。一是比特币的价值和感受已经被用户认可,属于一种自下而上的等价交换;其次,比特币的每个区块中诞生的比特币数量是恒定的,每四年减半(前四年每个区块在 10 分钟内诞生 50 个比特币,第二年为四年,每个区块在 10 分钟内诞生了 25 个比特币……总数一直持续到 2140 年,当时所有比特币区块都被挖出,产生恒定的 2100 万比特币);第三,比特币硬币由密码学中的独特算法保存。该算法与权力和制度无关,所有权不受外力影响。
让我们看一下比特币软件以及比特币的工作原理。
❶ 场景
比特币白皮书中提出的应用场景旨在实现互联网交易中去中心化、点对点、不可逆的交易。
首先,中心化银行账簿是自己保存的,记账功能也是它自己的内部功能。但是,每个人都可以参与比特币的账簿和记账功能(即“挖矿”)。由于账本对全链开放,每个人都可以下载和查询,实现去中心化;
我们的一般交易只有在官方银行软件、支付宝、微信等第三方工具的参与下才能实现。比特币借助点对点技术实现全球贸易点对点交易;
第三,转账一经在软件中发起,不可撤销,且交易不可撤销,避免了日常生活中通过可撤销交易进行诈骗的缺陷。
❷哈希
散列(hash)是密码学的基础,本质上是一种单向散列算法。其原理是将内容作为自变量带入方程计算结果。我们可以举个例子,加你有一台做香肠的A机,这台机器叫哈希牌香肠机,它可以把任何肉加工成不同形状、颜色和长度的香肠,具有以下特点:
第一:单向,即只有肉可以加工成香肠,香肠不能还原成肉。(对应的编程思想是不能通过处理后的输出值计算出原始输入值)
第二:转化速度是一样的,就是不管你放什么肉,生成香肠的时间都是固定的。(对应的编程思路就是不管字符串的长度变化多少,结果的速度都是一样的)
第三:你猜不出来,就是即使你放的肉有一点点变化,生产出来的香肠也会发生巨大的变化。(对应的编程思路是,即使你输入的字符串有小数点变化比特币算法原理,那么输出的结果也会有巨大的变化,你无法通过两个输出的结果来猜测输入的内容)
❸私钥
比喻我们的邮箱密码
简单来说,私钥的过程其实就是抽取一个1到N之间的随机数。那么你会想,这个随机数会重复吗?其实比特币的创始人早就认为随机数范围很大,取值在1到1077之间。1077到底有多大?你可能无法描述它,但你可以描述1087有多大。宇宙中所有的原子(直径为10-10米的原子)都近似表示为1087,这是一个如此庞大的数字。
从编程的角度来看比特币算法原理,私钥是通过从密码安全的随机源(熵源)中取出一长串随机字节并使用 Hash256 算法对其进行操作而获得的。
❹公钥
类比我们的电子邮件帐户
公钥是私钥椭圆曲线加密的结果。
❺地址
比喻生活中的门牌号码
地址是公钥进行单向加密算法运算的结果。
❻ 签名
签名是在发送信息时附加另一条内容,作为发送者的证明,证明信息未被篡改。
一般发送方对信息进行加密得到哈希值,然后用自己的私钥对哈希值进行加密得到签名。接收方使用公钥解密以恢复散列值。
❼挖矿
打个比方:数独游戏(在学校里,一个班的老师手里拿着一颗糖果,但是只能分给一个学生,那怎么分呢?老师制作一个九方数独,让全班同学先比试验证,符合数独规则的同学得到这颗糖果,于是所有同学开始把数字1、2、3、4、5、6、7、8、9一一拿来验证,对应编程中的一个遍历随机数的过程)
比特币软件规定,每个人在进行比特币交易时,必须将自己的交易记录副本发送给全网的矿工。这十分钟内的交易记账权如下
第一步:对前一个区块的内容进行散列
第 2 步:在十分钟内合并所有交易
第三步:猜一个随机数
第四步:从第一步到第三步,再对数据进行Hash,验证是否满足软件要求
第五步:匹配后广播到其他节点生成新区块(矿工获得区块奖励和区块交易手续费奖励)
❽区块链
定义:基于密码学、分布式网络和智能合约的数据库系统。简单来说,它就像一个银行,每个人都可以参与记账。
创新:
简化流程并提高效率
降低交易对手信用风险
提高透明度
适合跨境支付
分类:
公链 联盟链 私链
神话:区块链可以解决一切