北京大学肖臻老师《区块链技术与应用》公开课 06-BTC-网络

2023-11-04

总述:
  用户将交易发布到比特币网络上;
  节点收到这些交易之后,将其打包到区块里;
  节点将区块发布到比特币网络中。

新发布的区块在比特币网络中如何传播?
  The Bitcoin Network:
  比特币工作在应用层 (application layer):BitCoin Block chain
  比特币的底层 network layer:P2P Overlay Network

比特币网络的设计原则:simple,robust,but efficient
flooding:节点第一次收到消息时,将其传递给邻居节点,同时记录该消息。邻居节点的选择是随机的,与底层的拓扑结构无关。

每个节点需要维护一个等待上链的交易集合。


  新发布的区块在网络上的传播方式跟新发布的交易传播方式类似,每个节点要检查区块内容的合法性还要检查其是否在最长合法链上。越大的区块在网络上传播的就越慢。比特币系统对区块有1M的限制。

  比特币网络的传播属于best effort。一个交易发布到比特币网络上,不一定所有节点都能收到,不同节点收到交易的顺序也可能不一样,网络可能出现延迟。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

北京大学肖臻老师《区块链技术与应用》公开课 06-BTC-网络 的相关文章

  • 指针定义(一级指针和二级指针)以及内存四区

    1 一级指针 1 定义 类型 指针变量名 变量 Int p a 地址 地址是内存的位置编号 是常量不可以修改 指针 一般指指针变量 用来存放地址的 是可以被修改的 2 二级指针 指向一级指针 保存的是一级指针的地址 Int p x int
  • 深搜(dfs)和广搜(bfs)

    深搜 dfs 和广搜 bfs 广搜可以用来解决最小路径问题和连通性问题 深搜可以解决连通性问题 实现方式 深搜用函数递归实现 广搜用队列实现 问题 输入地图判断连通性和最小路径 每次只能走上下左右 S为起点 T为终点 为障碍物 可以走 如以
  • Dart 2.18 正式发布

    互操作性增强 平台特定的网络组件 优化类型推断 以及空安全语言里程碑的近期更新 文 Michael Thomsen Google Flutter Dart 产品经理 Dart 2 18 稳定版也随着 Flutter 3 3 稳定版一起发布

随机推荐

  • 智能车制作——速度环PID

    做了智能车写这个做个记录 各位大佬勿喷 PID控制器 PID 控制器 比例 积分 微分控制器 是一种通过控制系统的偏差来调整输入信号的线性反馈控制算法 通俗的说 它可以给出使执行器 电机 快速准确到达目标的 指导方案 反馈 反馈是指将系统输
  • 基于深度学习和自闭症脑成像数据库(ABIDE)识别自闭症谱系障碍

    ASD是一种以大脑为基础的疾病 其特征是社会缺陷和重复行为 根据美国疾病控制中心最近的数据 美国68名儿童中就可能有1名患有自闭症 本研究的目的是基于深度学习算法从大型脑成像数据集中识别自闭症谱系障碍 ASD 患者 本文调查了一个ASD患者
  • Java代码之JDBC实现数据库之间定时的表格传输(由一个库读取到另一个库)实例

    本代码主要是JDBC和Java定时器 注释很详细 希望对大家有用 有什么不明白的可以在评论处留言 共同探讨 package first import java sql Connection import java sql DriverMan
  • R语言深度学习:强化学习入门

    专栏内含有很多案例供参考 目录 1 强化学习基础 2 强化学习的一个简单例子 玩游戏 结论 在今天的博客中 我们将一起探索强化学习 Reinforcement Learning 的世界 强化学习是深度学习的一个重要领域 它让机器通过与环境的
  • 多层Unity3D物体模型穿透问题处理

    本文针对在一个界面中展示多层3D物体时遇到的模型穿透问题提出一些解决方案 如图 当我们想要在同一个界面中展示两层或以上3D物体时 有时会因为第一层物体材质上的 shader 渲染深度被破坏或其它原因导致第一层的物体穿透到第二层界面上来了 在
  • FTP-----局域网内部远程桌面

    此文包含详细的图文教程 有疑问评论区留言 博主第一时间解决 目录 一 被远程桌面的电脑 1 开启远程权限 2 添加账户 有本地账户跳过这步 3 帐号隶属于 远程桌面 4 帐号隶属于 本地用户组 二 本地电脑连接远程桌面 前提条件 1 两台电
  • 蚁剑jsp一句话木马

    参考链接 https github com yzddmr6 JspForAntSword 密码为 passwd
  • 【深度学习图像识别课程】keras实现CNN系列:(5)应用数据增强进行CIFAR10分类

    一 图像增强简介 如何保证图像的标度不变性 大小 平移不变性 位置 旋转不变性 角度 最大池化层 保证平移不变性 增强 训练集扩展 对训练图片进行随机旋转或者平移 保证平移不变性 旋转不变性 避免过拟合 keras文档 https kera
  • spark集群8080端口页面只显示master的情况

    电脑配置是一台物理机作为master 一台物理机作为slave 在master启动运行后 使用jps命令分别查看两台机器的运行状况 master与slave均运行正常 但是进入master 8080的web控制端查看运行状态时候 发现只有m
  • 写一个python函数 用cuda加速

    好的 下面是一个用 CUDA 加速的 Python 函数的示例 import numpy as np import cupy as cp def accelerate with cuda x y 将 numpy 数组转换为 cupy 数组
  • 【视觉slam十四讲笔记】Sophus库的使用

    Sophus库的使用 include
  • Day03 Python之 可迭代对象Iterable和迭代器Iterator、迭代器协议

    一 什么是可迭代对象 iterable 1 可迭代对象 iterable 可以通过for in 这类语句遍历读取数据的对象 如 列表 字符串 元组 字典 集合 2 for循环工作原理 在内部对可迭代对象调用iter 方法 获取到迭代器对象
  • 02_ue4界面介绍

    1 菜单栏 1 文件 加载保存项目和关卡等 2 编辑 项目设置 标准的复制和粘贴操作 3 窗口 打开视图和其他面板 如果不小心关了窗口 可以在里面找 4 帮助 获得在线文档等帮助 2 工具栏 快速访问常用工具 1 保存当前关卡 2 对当前关
  • Flink 水位线

    水位线是什么 窗口 有了 但是要知道我们面对的是实时数据 而这些数据随时会出现延迟的情况 从几秒到几小时都有可能 如果要忽略这些数据 那么显然对于结果的计算是不准确的 可是要等待这些延迟数据的话 那岂不是等同于批处理了 我们等不了那么久的
  • CentOS7上安装 Apache

    在 CentOS 7 上安装 Apache 的方法如下 1 首先打开终端 并使用 sudo 命令以 root 权限运行 sudo su 2 更新软件包列表 yum update 3 安装 Apache 服务器和常用工具 yum instal
  • C++【对象模型】

    文章目录 索引 一 默认构造函数 1 何时默认构造函数会自动生成 2 编译器合成有用的构造函数四种情况 2 1 类中内含带有默认构造的类成员 2 2 带有默认构造的基类 2 3 带有虚函数的类 2 4 带有一个虚基类的类 索引 C 对象模型
  • Jetbrain项目管理全家桶

    sudo mkdir p m 750 opt hub data opt hub conf opt hub logs opt hub backups sudo chown R 13001 13001 opt hub data opt hub
  • ppt地图分布图一块一块的怎么做_学会“地图话”,走遍天下都不怕!

    PPT是维他命 hi 这里是PPT是维他命 谢谢你的关注 我们一起进步 hello大家 又 好久不见了 心虚 距离上次更新已经快两个月了 说好的半月更 说好的尽快发地球公转 都是我的锅 从十一开始因为加课时一直在调整节奏 忙到原地陀螺转 这
  • Vue中使用七牛云上传报错o.upload.addEventListener is not a function以及其他报错问题

    1 运行提示o upload addEventListener is not a function 解决方案 此方法不是根本解决办法 问题3的解决办法是最终解决方案 找到node modules mockjs dist mock js 第8
  • 北京大学肖臻老师《区块链技术与应用》公开课 06-BTC-网络

    总述 用户将交易发布到比特币网络上 节点收到这些交易之后 将其打包到区块里 节点将区块发布到比特币网络中 新发布的区块在比特币网络中如何传播 The Bitcoin Network 比特币工作在应用层 application layer B