当前位置: 首页> 教育> 高考 > 广州有什么好玩的地方适合小朋友_全国生猪价格今日涨跌表_武汉seo关键字推广_竞价服务托管公司

广州有什么好玩的地方适合小朋友_全国生猪价格今日涨跌表_武汉seo关键字推广_竞价服务托管公司

时间:2025/7/11 9:06:22来源:https://blog.csdn.net/weixin_74257347/article/details/145530378 浏览次数:0次
广州有什么好玩的地方适合小朋友_全国生猪价格今日涨跌表_武汉seo关键字推广_竞价服务托管公司

区块链100问之交易机制、账户

文章目录

    • 区块链100问之交易机制、账户
        • 比特币和以太坊的交易机制分别是什么?
        • Account模型运行机制?
        • UTXO模型运行机制?
        • 交易是如何确认的?如何评估?如何上链?
        • 什么是SPV?如何运作?
        • 除了SPV验证,Merkle Tree还有什么作用?
        • 交易的分类?
        • 如何解决双花问题?
        • 比特币上账户地址生成用什么哈希算法?
        • 比特币和以太坊对比?
        • PS

比特币和以太坊的交易机制分别是什么?

答:

  • 比特币交易模型是UTXO

  • 以太坊交易模型是Account —>联盟链也是

    更多是用在智能合约型的区块链上

Account模型运行机制?

答:

Account:Account Based

  • 传统账户模型:余额作为状态
  • 中心化系统中,甚至在同一个数据库中,会直接退化成一个事务
  • 特点:交易只是事件本身,不包含结果,交易的共识和状态的共识本质上可以隔离的。
  • 缺点:
    1. Account 模型交易之间没有依赖性,需要解决重放问题
    2. 实现闪电网络/雷电网络,Plasma 等,用户举证需要更复杂的 Proof 证明机制
UTXO模型运行机制?

UTXO:“Unspent Transaction Output“

  • 思路:无状态,只记录交易事件而不记录最终状态,需要用户自行计算余额。
  • 输入输出满足条件:
    1. 任意交易至少一个输入、一个输出
    2. 输入全部移动 输入金额= 输出金额之和 + 交易手续费
  • 构造交易之后广播到全网

img

​ 上述交易TX中,每笔交易都可以找到向前交易,TX4的向前交易是TX2,TX2的向前交易是TX0;可以发现TX6的收款人未花费,则output0就是UTXO的真正语义---->Unspent Transaction Output,未花费的交易输出

  • 特点:

    1. 较好的并行支付能力,一笔交易可以包含任意笔输入输出,同时也没有次序要求
    2. UTXO 具有较好的可裁剪特性,可以压缩数据。在任意位置截断,记录 UTXO 对应的交易哈希即可,然后从其他节点获取并校验 UTXO,这也是 SPV 轻钱包工作的基础之一
  • 缺点:

    1. Blockchain-blindness:只能查看自己的历史轨迹

      将比特币系统上的所有交易执行一遍,将所有由自己解锁的,同时还没有被“花费”的交易输出收集得到自己余额

    2. Value-blindness:不能提供非常精细的金额控制

在这里插入图片描述

矿工上块时就会验证。

交易是如何确认的?如何评估?如何上链?

答:

  • 如果请求少,则等10min,下一个区块就确认上链;如果请求多,拥堵就需要排队,矿工不断从等待记录的转账交易选手续高的进行转账;一旦已经交易确认,已被网络处理,不太可能被撤销(后续的每一个区块都是对这个交易的确认)。
  • 小额交易,则单块确认;大额交易,需要6个区块进行确认(也就是1小时)
什么是SPV?如何运作?

答:轻钱包SPV(Simplified Payment Vertification)

  • 未存储交易数据的节点,判断交易真实性,发请求Merkle Block Message
  • 存储交易数据的客户端收到请求,将验证路径返回
    1. 查交易,找区块TX1
      • 数据结构=>关系型数据库,用sql查询
      • 时间戳定位区块位置
      • 可以借助中介(第三方网站)
    2. 检查区块是否在网络的最长链条里
    3. 取出所有交易生成的Merkle Tree,get Proof方法得到交易验证路径
    4. 验证路径发送回请求端
  • SPV得到路径,做merkle校验,确认无误认为可信
除了SPV验证,Merkle Tree还有什么作用?

答:

  1. 最直接的就是判断数据是否被篡改

    在区块内部存放各层各交易的哈希值以及root哈希值,由于高一级的hash被下层交易锁影响,下层交易修改,高一级哈希不再匹配

在这里插入图片描述

  1. P2P下载

    从多个节点下载的数据块,如何验证未被修改?

    • Hash List:计算每个数据块的哈希值作为一个列表,并做一个根哈希,类似merkle tree 的逻辑结构
    • 下载方接收到根哈希和哈希列表(种子文件),来验证自己下载的区块完整性
  2. 成员隶属证明(Proof of Membership)

    整棵树不完整的情况下快速判断数据块是否合法

在这里插入图片描述

总结点数 n T r e e _ h e i g h t − 1 = ⌈ l o g 2 n ⌉ = 验证需要的 H a s h 值个数 时间复杂度为 O ( l o g ( n ) ) 总结点数n \\ Tree\_height-1=\lceil log_2n\rceil=验证需要的Hash值个数\\ 时间复杂度为O(log(n)) 总结点数nTree_height1=log2n=验证需要的Hash值个数时间复杂度为O(log(n))

交易的分类?

答:

  • 发行铸币(50BTC)
  • 转账

没有销毁机制

如何解决双花问题?

答:双花指的是double spent,攻击者同时将一笔钱作为不同的交易或抹掉自己给别人的转账记录。

中本聪提出==>

  • 每次交易都要向整个网络广播
  • 在P2P网络中最早打上时间戳并挖矿成功的那个交易为交易成功
  • 等待多次确认
比特币上账户地址生成用什么哈希算法?

极客时间版权所有: https://time.geekbang.org/column/article/6224

答:

  • 在非对称算法中,私钥一般是通过一个随机数产生的,这个随机数也叫做种子,从这个角度来说,知道了这个随机数也就等于知道了私钥,不过私钥的产生范围非常大,在比特币中是 2 的 256 次方,差不多在 10 的 70 方数量级上。

  • 如果你产生随机数的算法足够均匀分布,私钥碰撞的可能性比中了 1 亿大奖同时被雷劈中的概率还要小数亿倍。所以区块链对产生随机数的算法要求比较高,它要求真实的均匀随机分布,而不是计算机伪随机数。

img

如果我们有了私钥,接下来就如图所示:

  • 私钥到公钥,是由非对称加密算法保证的,这种算法在比特币中选择的是 ECDSA 算法,ECDSA 算法中选择的椭圆曲线名为 secp256k1。
  • 从公钥到地址,是由哈希算法保证的,在这一步使用了 SHA256 和 RIPEMD160。椭圆曲线加密算法 ECC 利用了“寻找离散对数”的难解性提供了单向不可逆性
  • 58base编码得到最终结果
比特币和以太坊对比?
比特币以太坊
编程不支持循环支持智能合约(solidity)
哈希函数SHA256、RIPEMD-160、ECDSA(Secp256k1)Keccak-256
交易模型UTXO(不可分,缺少状态)Account
难度2016块调整(≈2weeks)自反馈机制
PS

Token:Token 确实是数字资产的承载形式,但交易并不是数字资产的唯一资产。

区块链基础技术:P2P 网络、共识机制、哈希与加密算法、记账模型(UTXO)

PoS 共识机制改变了 PoW 工作量证明的验证方式,验证区块Token 对应的 Stake,用以替代 PoW 的工作量证明

极客时间版权所有: https://time.geekbang.org/quiz/question?sheet_id=799286&quiz_id=4731

关键字:广州有什么好玩的地方适合小朋友_全国生猪价格今日涨跌表_武汉seo关键字推广_竞价服务托管公司

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: