北大肖臻老师<<区块链技术>>笔记2

2023-11-14

比特币的数据结构

这里着重研究一下hash pointers(哈希指针)

首先普通指针只保存地址,hash指针不仅有保存地址的功能,还有保存哈希值的功能。

这里保存哈希值可以用来检测数据是否被篡改。

比特币中基本的数据结构是区块链(一个个块用链表练起来,而且用的是哈希指针)

block chain is a linked list with hash pointers

例子:第一个块是genesis block 创世纪块,最后一个块是most recent block

每一个区块都存有前面计算出来的hash值,可以进行纠错。

这个功能可以实现tamper-evident log 防干扰,防篡改日志。

而且区块计算出来的hash值往往只保存最后一个,且最后一个保存再系统之中。

图1

所以只需要记住系统之中的哈希值,那么就可以检测原来的数据是否被更改。

如果某人篡改以下某一个块中的指针,那么后面的h()哈希指针都需要修改。

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

北大肖臻老师<<区块链技术>>笔记2 的相关文章

  • 网络部署的思路

    网络部署的思路 网络搭建的步骤 1 拓扑设计 IP地址的规划 子网划分 子网汇总 2 实施 2 1 搭建拓扑 2 2底层 给所有需要配置IP地址的网络节点 配置一个合法的IP地址 2 3路由 全网可达 2 4优化 策略 安全方面的考虑 测试
  • Inner Join 的使用和多条 Inner Join 的使用顺序要求

    一 关于 MySQL 中 Inner Join 的使用 1 1 Inner Join 简介 Inner Join 内连接 是 SQL 中最常用的连接类型之一 它用于根据两个或多个表之间的共同字段将表组合在一起 Inner Join 返回符合
  • @Transactional注解 失效场景 及 解决版本

    文章目录 失效场景 1 数据库首先要支持事务 2 数据源没有配置事务管理器 3 没有被spring管理 4 方法不是public 5 Transactional 注解属性 propagation 设置错误 6 同一个类中方法调用 导致 Tr
  • java面试核心知识点原理篇文档,逆袭进大厂

    前言 每个技术人都有个大厂梦 我觉得这很正常 并不是饭后的谈资而是每个技术人的追求 像阿里 腾讯 美团 字节跳动 京东等等的技术氛围与技术规范度还是要明显优于一些创业型公司 小公司 如果说能够在这样的公司锻炼几年 相信对自己能力的提升还是非

随机推荐

  • 14.CAPE:Camera View Position Embedding for Multi-View 3D Object Detection笔记

    14 CAPE Camera View Position Embedding for Multi View 3D Object Detection CAPE 用于多视图三维物体检测的相机视图位置嵌入 CVPR2023 文章结构 摘要 1 引
  • 华为云计算之ebackup了解

    华为云计算之ebackup了解 一 ebackup介绍 二 ebackup的特点 三 ebackup的组网方式 1 Lan Free方式 2 LAN base方式 四 ebackup组网场景 一 ebackup介绍 eBackup 为华为自
  • 一阶电路实验报告心得_一阶电路实验报告5篇

    1 测量时间常数 2 微分电路 积分电路 a 微分电路 b 积分电路 时间常数 的测量 R 4K R 1K R 6K C 0 22U R 1K R 1K 三 误差分析 1 实验过程中的读数误差 2 仪器的基本误差 3 导线连接不紧密产生的接
  • 移远M26 GSM实时获取网络时间

    移远M26 GSM实时获取网络时间 1 启用同步网络时间 开启同步网络时间功能 AT QNITZ 1 响应OK 2 获取最近一次的网络同步时间 AT QLTS 响应 QLTS
  • 卷积神经网络(Convolutional Neural Network)总结

    转自 http blog sina com cn s blog 870a639201019pee html 相关网站 CNNs应用的最成功的一个例子 Yann LeCun 曾经是Hinton组的research associate http
  • 第六章 生命周期和 Ajax 服务端通信

    6 1 Vue 实例生命周期 6 1 1 生命周期钩子函数 每个 Vue 实例在被创建时都要经过一系列的初始化过程 生命周期分为三大阶段 初始化显示 更新显示 销毁Vue实例 初始化阶段的钩子函数 beforeCreate 实例创建前 数据
  • Qt中QObject::sender()的用法

    当某一个Object emit一个signal的时候 它就是一个sender 系统会记录下当前是谁emit出这个signal的 所以你在对应的slot里就可以通过 sender 得到当前是谁invoke了你的slot 对应的是QObject
  • WebRTC学习记录(2):播放音频文件原理一探

    同样的 根据上篇WebRTC学习记录 1 采集microphone到文件原理实践 讲解 我还是需要有一个可运行的例子 经过多方研究 得到如下的例子 include webrtc base ssladapter h include webrt
  • C++中的引用

    引用的概念 引用可以看作一个已定义变量的别名 引用的语法 Type name var 普通引用在声明时必须用其它的变量进行初始化 声明时必须初始化 引用的使用举例 a和b指代的都是同一段内存空间 程序输出的结果 a 5 b 5 a和b的地址
  • vue动图加载图片不能正确显示的解决方法

    vue动图加载图片不能正确显示的解决方法 解决核心 代码 运行结果 上次解决过一次 没有记录 后来发现有小伙伴问我这个问题 我今天就顺手记录一下 具体的原因我这里就不详细说 加载不出来简略的原因是vue简析地址时候把你原的地址当做了一个模块
  • jupyter notebook快捷键

    Jupyter Notebook的快捷键包括 Ctrl Enter 运行当前单元格 Shift Enter 运行当前单元格并转到下一个单元格 Alt Enter 运行当前单元格并在下面插入新单元格 Ctrl S 保存文件 Ctrl Z 撤消
  • 回调函数

    单线程的时候同步的话 很容易阻塞在那边 用户体验极差 例如 异步是可以多线程的 因为UI主线程一旦阻塞整个界面就卡死了 一旦异步 两个线程下一个可以后台处理数据 一个可以做UI显示 js是单线程的 如果所有的操作 ajax 获取文件等I O
  • mmsegmentaion环境配置cuda11.0+pytorch1.7.1

    参考 https blog csdn net CSDNxiaoh article details 125321921 官方文档 https gitcode net mirrors open mmlab 1 创建虚拟环境 conda crea
  • LVGL-tileview控件

    控件特点 以page为基础扩展的控件 增加了释放后会有动画定格效果 lv tileview set tile act tileview ext gt act id x x move ext gt act id y y move true 切
  • 区块链-Web3.0-什么是Web3.0?

    一 什么是Web 3 0 Web 3 0 也被称为 去中心化Web 或 智能Web 是互联网的下一代 它使用了分布式系统技术 区块链技术和智能合约等新型技术 旨在构建一个更加去中心化 安全 透明和智能的互联网 Web 3 0 可以带来更广泛
  • 语言模型与数据集

    1 语言模型 给定文本序列x1 xT 其目的是估计联合概率p x1 xT 其应用包括做预训练模型 生成文本 给定几个词不断使用xt p xt x1 xt 1 生成后续文本 和判断多个序列中那个更常见 2 使用计数建模 N元语法 3 读取长序
  • Redis之SortedSet

    0 字符串String 1 哈希表Hash 2 列表List 3 集合Set 例子 4 有序集合SortedSet 例子myzset 5 发布 订阅Pub Sub 6 事务Transaction 7 脚本Script 8 连接Connect
  • R中设置图形参数--函数par()详解

    R有着非常强大的绘图功能 我们可以利用简单的几行代码绘制出各种图形来 但是有时候默认的图形设置没法满足我们的需要 甚至会碰到各种各样的小问题 如坐标轴或者标题出界了 或者图例说明的大小或者位置遮挡住了图形 甚至有时候默认的颜色也不能满足我们
  • 算法竞赛个人注意事项

    浅浅记录一下自己在算法竞赛中的注意事项 数据类 注意看数大小 数学库中的函数尽量加上 1 0 转成double 防止整型溢出 int型相乘如果可能溢出 乘 1LL 数据范围大于1e6 注意用快读 浮点数输入输出 少用float scanf
  • 北大肖臻老师<<区块链技术>>笔记2

    比特币的数据结构 这里着重研究一下hash pointers 哈希指针 首先普通指针只保存地址 hash指针不仅有保存地址的功能 还有保存哈希值的功能 这里保存哈希值可以用来检测数据是否被篡改 比特币中基本的数据结构是区块链 一个个块用链表