主页 > imtoken官网下载1.0安卓 > 【区块链】比特币

【区块链】比特币

imtoken官网下载1.0安卓 2023-05-05 06:25:33

文章目录

密码学原理 哈希签名 比特币的实际使用哈希和签名挖掘

挖矿其实就是找一个随机数,结合区块头中的其他数据进行哈希(即SHA256),然后小于等于一个指定的阈值。这就是工作量证明机制,POW机制,找到符合要求的)一旦有人找到salt,其他人很容易验证salt是否符合要求,挖矿难,验证容易

传递数据结构哈希指针默克尔树

节点分为

在这里插入图片描述

BTC协议交易有效性

在比特币的共识协议中,需要解决一些节点是恶意的,因为毕竟恶意节点很少。一个节点提出一个候选块,打包后发布给所有节点,每个节点收到后进行检查。投赞成票是合法的,但比特币很容易生成账户。如果一个恶意节点产生无数个账户,一半以上的账户将拥有控制权。这称为女巫攻击。

任何基于投票的方案首先要确定谁有投票权,不是每个人都可以加入,比如超级账本联盟链,基于fabric协议,基于投票的方案是可行的

比特币如何投票?

此外,我们通过在区块链的某处插入一个块来回滚已经发生的交易

区块链在正常情况下也可能分叉。如果两个节点同时获得记账权,就会有两个等长的分叉。这个时候应该接受哪一个?不同的节点可能先听到其中一个,如果继续扩大,说明比特币已经识别出你的区块

如果系统中有两个矿工,这个临时分叉会一直维持到其中一个获胜,失败的一个称为孤块

BTC的发行基于账本

每笔交易都会消耗一些输出,也会产生新的输出。对于某些交易,输入可能大于输出,差值就是交易费用

关键点:记账不仅可以获得区块奖励,还可以获得交易手续费。这是比特币的两种交易机制。

目前的交易手续费金额并不大。目前,矿工主要是获得区块奖励,但会逐渐减少。每 21W 块减半,每 10 分钟减半,每 4 年减半。

基于账户的区块具体信息

在这里插入图片描述

salt 是一个 32 位无符号整数。这个数字很难找到,因为最近矿工太多,所以其他的东西应该调整一下。

在这里插入图片描述

BTC网络挖矿难度挖矿

轻节点

挖矿的基本逻辑

比特币保证安全的方式一方面是密码学,另一方面是共识机制

采矿的历史

一般来说,一台矿机在前两个月可以赚到一半的钱。现在一般需要提前预定。其实卖矿机更赚钱。现在很多货币都有抵抗ASIC矿机的机制。

矿池的原因

矿池奖励分配机制

矿池问题

如果有一个比例为 51 的矿池,它会发起什么样的攻击?

脚本

首先我们

输入操作将两个很长的数字压入栈顶,输出两行脚本,对应上面的两个输出,每个输出都有自己独立的输出

交易结构:

在这里插入图片描述

交易输入:

在这里插入图片描述

交易的输出:

验证交易的合法性是之前的输出和这个输入都被执行。如果验证通过,则交易合法

如果交易有多个输入,则都需要验证。其实细节很复杂,这里就不一一赘述了。

分叉状态分叉

状态分叉是对比特币当前状态的分歧导致的分叉,分叉攻击也属于这一类

协议叉

比特币协议变更也可能导致分叉

硬分叉

如果硬分叉的核心给比特币增加了一些新特性,那么没有升级软件的节点将无法识别这些新特性

比如以太坊(ETH)和以太坊经典(ETC)都是分叉造成的比特币创世纪区块地址,ETH是后来分叉的。

软叉

如果软分叉的核心给比特币增加了一些新特性,那么没有升级软件的节点会识别出这些新特性

比特币匿名常见问题解答

零知识证明 证明者在不泄露其他信息的情况下向验证者证明一个语句的正确性,如 1+1=2

同态隐藏

比特币无法完全消除相关性,真正匿名可以使用zerocoin和zeronote

思考

全节点将区块存储在 KV 数据库中。K是block的hash,其实就是levelDB。

一些全节点只保存最近的数千个块。如果您需要使用之前的,您可以向其他节点索取。

如果多人共用一个账号,只能和账号一起使用,可以使用多重签名

以太坊挖矿不会减半

量子计算机将先冲击传统金融行业,但比特币会落后,比特币的地址是公钥的哈希

公钥可以从私钥派生,但反过来不行。

当地址被哈希时,已经丢失了很多信息,因此无法对其进行反转。如果是可逆的比特币创世纪区块地址,那就是超级压缩算法,可以将无数数据压缩成固定位数。