北京大学肖臻老师《区块链技术与应用》公开课笔记16——ETH账户篇

2023-10-31

北京大学肖臻老师《区块链技术与应用》公开课笔记

以太坊账户篇,对应肖老师视频:click here
全系列笔记请见:click here
About Me:点击进入我的Personal Page

BTC系统是基于交易的账本,系统中并未显示记录账户有多少钱,只能通过UTXO进行推算。但实际中,使用起来较为别扭。
A转给B钱的时候,需要说明币的来源。实际中只需要存钱说明来源,花钱则不用。此外,账户中的钱在花的时候,必须一次性全部花出去。

如图1,B收到A的10个BTC,他想要给C3个BTC,如果按照1中方式,其余7个比特币会以交易费的形式给挖出区块的矿工。
因此,为了避免这种情况,便吸引采用2中方式,将3个BTC转给C,将剩余7个BTC转到自己的另一账户D上面。
在这里插入图片描述

以太坊系统则采用了基于账户的模型,与现实中银行账户相似。系统中显示记录每个账户以太币的数量,转账是否合法只需要查看转账者账户中以太币是否足够即可,同时也不需要每次全部转账。同时,这也也天然地防范了双花攻击。
当然,以太坊发这种模式也存在缺点,这种模式存在重放攻击的缺陷。A向B转账,过一段时间,B将A的交易重新发布,从而导致A账户被扣钱两次。

为了防范重放攻击,给账户交易添加计数器记录该账户交易过多少次,转账时候将转账次数计入交易的内容中。
系统中全节点维护账户余额和该计数器的交易数,从而防止本地篡改余额或进行重放攻击。

以太坊系统中存在两类账户:外部账户合约账户

  1. 外部账户:类似于BTC系统中公私钥对。存在账户余额balance和计数器nonce
  2. 合约账户:并非通过公私钥对控制。(不能主动发起交易,只能接收到外部账户调用后才能发起交易或调用其他合约账户)其除了balance和nonce之外还有code(代码)、storage(相关状态-存储)

创建合约时候会返回一个地址,就可以对其调用。调用过程中,代码不变但状态会发生改变。

为什么要做以太坊,更换为基于账户的模型而不是沿袭BTC系统?
比特币中支持每次更换账户,但以太坊是为了支持智能合约,而合约签订双方是需要明确且较少变化的。尤其是对于合约账户来说,需要保持稳定状态。

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

北京大学肖臻老师《区块链技术与应用》公开课笔记16——ETH账户篇 的相关文章

  • 怎样选择好的数字货币来进行投资?

    对区块链行业来说 2018年可以说是非常萧条的一年 因为许多投资者目睹并经历了非理性繁荣和泡沫破裂 对于普通投资者来说 投资数字现金通常面临两种风险 一是数字现金本身是否存在投机风险 二是数字现金交易平台存在的相关风险没有监管 数字货币自身
  • 文储研习社第17期

    文储研习社是文储区块链技术人员自发组织的学习交流社区 旨在于追踪区块链时下最新热点 解码热点蕴含的未知领域 享受思想交流的碰撞 欢迎志同道合的小伙伴加入我们 共同学习与成长 第17期 为了提高考证通过率 不小心搭了条链 作者 Bingo 你
  • Gavin Wood Web3峰会最新演讲:波卡不是智能合约平台,而是平台的平台(全文)...

    在波卡上 每个平台都在用高性能 高效率和最优的方式做着自己擅长的事 而不必让它们的用户用底层平台的货币进行支付 从而将可定制性和灵活性提高了一个台阶 本文谨代表作者个人观点 不代表火星财经立场 该内容旨在传递更多市场信息 不构成任何投资建议
  • 区块链应用开发(智能合约的开发和WeBASE合约IDE的使用)

    文章目录 四 智能合约的开发和WeBASE合约IDE的使用 一 实验概述 二 实验目标 三 实验环境及建议 四 实验步骤 4 1 启动Webase 4 2 智能合约开发 4 2 1 合约功能设计 4 2 2 存证合约开发 4 2 3 工厂合
  • 课程笔记3

    一 以太坊 比特币被称为区块链1 0 以太坊被称为区块链2 0 以太坊的符号是ETH 以太币的符号是Ether 单位是Wei 比特币的符号是BTC 单位是Satoshi 以太坊做出的改进 在以太坊中出块时间减少到十几秒 比特币的mining
  • Go语言实现区块链与加密货币-Part3(交易优化,单机模拟多节点通信)

    交易 二 在这个系列文章的一开始 我们就提到了 区块链是一个分布式数据库 不过在之前的文章中 我们选择性地跳过了 分布式 这个部分 而是将注意力都放到了 数据库 部分 到目前为止 我们几乎已经实现了一个区块链数据库的所有元素 今天 我们将会
  • 首个数字银行卡明年发行,广州出台区块链措施支持大湾区

    锌链接作为首个提出产业区块链的机构媒体 一直积极推动产业区块链落地 通过深度报道直戳行业痛点 通过分享会聆听行业声音 通过周报呈现行业大观 通过评论展现独特产业观察视角 本周 广州出台66条措施支持粤港澳大湾区金融发展 其中多项与区块链有关
  • 区块链数据的存储和更新

    目录 1 引言 2 主要流程 2 1数据库读取 2 1 1 从数据库加载块数据 2 1 2从数据库读取账户信息 2 2 区块链数据更新与回滚 2 2 1 交易数据 2 2 2 块数据 1 引言 在第一篇文章里我们从静态的角度讲解了以太坊的数
  • 区块链+物联网 BOT

    不可否认 我们的一只脚已经迈入万物智联时代 但另一只脚迈入还存在一定的阻碍 区块链技术的出现将会促进这一进程的发展 智能音响 主人你好 我是小Q 现在是早上08点29分 上班时间要到咯 智能门锁 主人你摔疼我了 你总是这样匆忙 下次赶紧麻溜
  • 自己动手部署以太坊联盟链

    一个区块链学习项目 GitHub https github com xianfeng92 Love Ethereum 假设已经在Ubunbu 14 04 LTS上安装好了以太坊客户端Geth 使用Geth部署以太坊联盟链 以太坊Geth客户
  • "我为区块链赋能实体经济代言"第二批代言人:复旦大学张江研究院教授陈文君

    我为区块链赋能实体经济代言 推出以来 颇受行业关注 为进一步规范行业发展 落实区块链赋能实体经济的目标 为行业发展 正本清源而发声 新一轮的 我为区块链赋能实体经济代言 于9月3日重磅启动 我为区块链赋能实体经济代言100人第二批 第3位代
  • 新加坡社区领袖卓顺发的荣誉与大爱精神

    2023年11月24日 善济医社义务执行主席卓顺发太平绅士JP BBM L PVPA受邀出席内政部主办的答谢活动2023 主宾为内政部长兼律政部长尚穆根先生 Mr K Shanmugam 2018年起 卓顺发受委为太平绅士后 应内政部邀请
  • 凌晨!比特币突破4万美元,本轮上涨分析与未来展望!

    比特币在上周五 1日 成功突破38000美元大关后 就持续震荡走高 在今晨06 30左右 更是一举突破4万大关 最高来到41750美元 再度刷下2023年新高 以太坊 ETH 在差不多同样时间 最高来到2265美元 刷新年内新高 近24小时
  • NFTScan | 11.27~12.03 NFT 市场热点汇总

    欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总 周期 2023 11 20 2023 11 26 NFT Hot News 01 Web3 教育平台 Open Campus 获 Binance Labs
  • 工业互联网会是制造业数字化发展的未来吗?

    新工业革命正逐步形成 你认为工业互联网会是制造业数字化发展的未来吗 从这几年的工业互联网发展政策措施 就能看到答案 早在近三年前 工业互联网创新发展行动计划 2021 2023年 就提出了五方面 11项重点行动和10大重点工程 着力解决工业
  • 期权有杠杆吗?在哪里看期权有多少倍杠杠?

    期权有杠杆吗 在哪里看期权有多少倍杠杠 期权本身没有杠杆 期权合约自带杠杆 期权买方只需要缴纳较少的权利金就可以获得更高价值的标的资产波动所带来的收益 但是期权卖方不需要缴纳保证金 期权卖方需要付出保证金才可以建仓 这是因为期权卖方需要履行
  • 什么是虚值期权?什么是深度虚值期权?

    在期权市场里有一种合约的价格往往比较便宜 它就是虚值期权 也是最受欢迎的期权之一 虚值期权也就是高杠杆和波动被世人所爱 久闻的一日192倍行情就是出自于虚值期权 下文科普什么是虚值期权 什么是深度虚值期权 一 虚值期权是什么 虚值合约因为价
  • 在区块链中看CHAT的独特见解

    问CHAT 谈谈对区块链以及区块链金融的理解 CHAT回复 区块链是一种去中心化的分布式数据库技术 这种技术通过加密算法 使数据在网络中传输和存储的过程变得更加安全可靠 区块链的出现引领了存储 交易等形式的革命 改变了诸多行业的运作模式 首
  • 在区块链中看CHAT的独特见解

    问CHAT 谈谈对区块链以及区块链金融的理解 CHAT回复 区块链是一种去中心化的分布式数据库技术 这种技术通过加密算法 使数据在网络中传输和存储的过程变得更加安全可靠 区块链的出现引领了存储 交易等形式的革命 改变了诸多行业的运作模式 首
  • 英国金融时报关注TRX登陆Mercado Bitcoin交易所:波场TRON强化南美洲布局,国际化进程持续加速

    近日 波场TRON网络原生代币TRX正式上线巴西最大的合规加密交易所Mercado Bitcoin 英国金融时报 Decrypt Blockworks等财经及加密行业权威媒体对该话题进行了报道 表示此次合作是波场TRON全球业务增长的有力证

随机推荐

  • Oauth2.0的客户端凭证模式(Client Credentials Grant)- Bad request content type. Expecting: application/x-www-

    前情摘要 最近在进行项目改造由传统Java Web项目改造为 微服务架构模式的系统 采用VUE Spring Boot Oauth2 0 JWT的主体架构 在改造过程中出现的任何异常在此做一个简单记录 以便正在路上的小伙伴们能有参照方案 在
  • 解决已将该虚拟机配置为使用 64 位客户机操作系统。但是,无法执行 64 位操作的问题。

    安装好VMware后 新建一个客户机时 错误提示 然后开始解决问题 刚开始以为是电脑上之前安装过VMware 没有卸载干净导致 然后卸载软件重装软件依然报错 最后找度娘 才解决了一堆问题 首先检查一下CPU VT x状态是否启用 是否支持虚
  • centos 7.7.1908上隐藏顶栏和任务栏

    centos 7 7 1908上隐藏顶栏和任务栏 起因 业务需求 要求客户端软件全屏显示 禁止用户操作其他界面 1 隐藏任务栏 删除 usr share gnome shell extensions window list gnome sh
  • 8个免费、高清、无版权视频素材下载网站推荐

    现如今 短视频行业可谓是风生水起 越来越多的人加入了视频剪辑 最令人头疼的就是视频素材不知道从哪里来 今天小编就给大家整合了8个免费 高清 无版权视频素材下载网站 让大家视频编辑更快捷更方便 一 Distill Distill是专为设计师提
  • 如何查看自己的电脑硬盘是不是固态硬盘

    前段时间给自己的电脑C盘换了一个固态硬盘 结果今天发现运行比较慢 就特意查了一下是不是固态的 以下是具体方法 需要的可以参考 上图红框里面得到媒体类型 显示固态硬盘它就是固态硬盘 显示其他驱动的就是机械硬盘
  • Android dip(dp) 与 sp的自适应问题

    转自 http www oschina net question 272860 70761 今天碰到的一个问题 感觉应该其他人也会碰到 拿来分享一下 我们都知道android在开发配置界面时一般都会使用dip和sp这种逻辑长度单位来实现屏幕
  • Matlab 中prod函数的使用

    B prod A 将A矩阵不同维的元素的乘积返回到矩阵B Matlab中文论坛 如果A是向量 prod A 返回A向量的乘积 如果A是矩阵 prod A 将A看作列向量 返回每一列元素的乘积并组成一个行向量B 如果A是多维数组 prod A
  • jenkins_获取json

    import jenkins import yaml import json import urllib parse import xmltodict from xml etree import ElementTree def LoginJ
  • ubuntu 16.04 编译与安装 absl 库(cartographer库安装之1-absl)

    set o errexit set o verbose git clone https github com abseil abseil cpp git cd abseil cpp git checkout d902eb869bcfacc1
  • 【CTF】web-文件上传篇1

    upload labs靶场 1 前端js限制 2 修改Content Type 3 htaccess绕过 4 00截断 1 前端js限制 场景 使用 burp 抓包 在点击上传时 直接弹出了提示 这时 burp 并没有抓到数据包 说明是在前
  • 深度学习常用Linux命令

    Linux命令查询手册 https www linuxcool com 目录 一 常用快捷键 二 关于docker的使用 1 进入docker 2 设置使用某块dcu代码 3 docker与主机之间的文件传输 三 关于文件和文件夹 1 文件
  • ADS错误之the session file 'C:\user\username\default-1-2-0-0.ses' could not be loaded

    刚在编arm程序的时候遇到了这个错误 去网上搜了下资料 查到关于这个错误信息的解决方法 如下 如果出现错误信息 the session file C user username default 1 2 0 0 ses could not b
  • 105-----JS基础-----添加删除记录-修改

    一 代码 本节的代码是对104节的内容进行优化 因为按照上一节的内容这样写的话 会创建过多的资源 造成资源浪费 导致用户体验不好 当界面复杂起来 可能会变得很卡 造成用户体验不好 所以需要进行优化 下面的例子 避免了人为的创建多个节点元素
  • 总结一下刷过的题

    今年刷题还是挺爽的 1 Two Sum 用map建立number gt index映射即可 2 Add Two Numbers 利用链表的基本操作来模拟高精度相加过程 链表头为最低位 3 Longest Substring Without
  • Python人脸识别项目-人脸检测

    人脸检测 接下来我们先拿一个简单的人脸检测项目练练手 我们的目标是实现通过摄像头实时检测人脸 这里我们要用到一个分类器这个分类器可以从github上下载也可以从我们的Python第三包里直接用 在cv2包的data文件夹里面 coding
  • C#基础(条件运算符)

    作用 格式 用于比较两个变量或常量 条件运算符 一定存在左右两边的内容 左边内容 条件运算符 右边内容 分类 是否大于 gt 是否小于 lt 是否等于 是否不等于 是否大于等于 gt 是否小于等于 lt 比较的结果 返回的是 一个 bool
  • Deep Learning for Massive MIMO CSI Feedback

    这篇文章是自己之前学习论文的一点心得 是源于AI 无线通信这个比赛 论文百度搜这个 去IEEE官网就可以下载了 C Wen W Shih and S Jin Deep Learning for Massive MIMO CSI Feedba
  • 计算2支股票的M天运动平均价格时间

    计算2支股票的M天运动平均价格时间 题目描述 给定2支股票的开盘价和收盘价的N天历史数据 要求按开盘和收盘 分别计算每支股票的每个日期对应的M天移动平均价格 假定两个股票数据如下 日期 开盘 收盘 第1支股票价格S1 第2支股票价格S2 2
  • 移动端按设计图比例布局

    利用选择器设置全局字体大小 root font size 50px 根据设计图大小转换字体大小 相对于视图750为例 1rem 100px root font size calc 100vw 7 5
  • 北京大学肖臻老师《区块链技术与应用》公开课笔记16——ETH账户篇

    北京大学肖臻老师 区块链技术与应用 公开课笔记 以太坊账户篇 对应肖老师视频 click here 全系列笔记请见 click here About Me 点击进入我的Personal Page BTC系统是基于交易的账本 系统中并未显示记