摘要: EVM是类似于JVM的虚拟机,提供了操作系统之上的一层抽象,使得合约可以忽略底层,合约代码被翻译为虚拟机的指令集。EVM有三个存储区,一个不可变的代码存储区,一个可变的内存区,一个永久的存储区,作为以太坊状态的一部分。 阅读全文
posted @ 2020-08-23 23:04 埃姆提斯 阅读(1196) 评论(0) 推荐(0)
摘要: 栈和队列放一起说是在数据结构层面讨论,栈是后进先出,队列是先进先出这没什么好说的。 堆和栈一起讨论是在虚拟机层面说的,比如JVM中,但是他们在物理层面都是内存块,没有什么不同,在功能层面,栈用来存储基本类型变量和对象的引用,而堆用来存储复杂变量,如数组,对象。因此很明显,栈的调用速度要更快一点。 阅读全文
posted @ 2020-08-23 21:35 埃姆提斯 阅读(91) 评论(0) 推荐(0)
摘要: ENS在ETH生态里面的定位如同web2中DNS的定位。与DNS不同的是ENS更加去中心化。另外本质区别是ENS将域名解析为节点的地址,节点上运行着提供服务的合约;而DNS将域名解析为服务器的ip。ENS有三层,基础层,中间层,顶层。 基础层负责节点名称映射:也就是决定这个名字对应哪个哈希地址 中间 阅读全文
posted @ 2020-08-23 17:31 埃姆提斯 阅读(1077) 评论(0) 推荐(0)
摘要: DApp就是将中心化app的全部或者部分组件区中心化,如后端逻辑就是合约,数据存储在区块链上。但是对于以太坊,大量数据上链需要的gas成本昂贵。存储方面的区中心化项目有ipfs,swarm,都是P2P文件存储系统,意味着可以从系统任意节点得到系统任意文件。进程通信方面的项目有whisper。由于数据 阅读全文
posted @ 2020-08-23 16:03 埃姆提斯 阅读(912) 评论(0) 推荐(0)
摘要: https://www.zhihu.com/question/324702775 @伍亦勤1,信息屏障。一段时间内屏蔽无关信息。Garbage in, garbage out.2,每半个小时Refresh一下。喝水,伸懒腰,打哈欠,闭目,活动眼球,然后继续。3,记录学习进度。没有进度条的坚持是消磨信 阅读全文
posted @ 2020-08-23 15:16 埃姆提斯 阅读(103) 评论(0) 推荐(0)
摘要: 预言机是为合约提供外部真实可靠数据源的系统,因为合约的执行或许会与外部的某些数据发生很重要的牵连。但是保证数据的真实可靠很关键。比如遗嘱合约,如果在财产所有者去世之前攻击预言机,就有有可能使得预言机发出假消息,使得遗嘱提前执行。 阅读全文
posted @ 2020-08-23 11:21 埃姆提斯 阅读(612) 评论(0) 推荐(0)
摘要: 一个单体状态机,使用共识算法保证强一致性,也有一个图灵完备的虚拟机用来执行合约。使用以太币计算网络的消耗,采取博弈论合理的激励机制保证网络的活力。与比特币的不同主要体现在以太坊的虚拟机使得它可以执行无限复杂的逻辑,从而作为合约执行的平台,为区块链的应用开辟了广阔的天地。 阅读全文
posted @ 2020-08-23 09:48 埃姆提斯 阅读(221) 评论(0) 推荐(0)