区块链基础
文章平均质量分 81
wonderBlock
这个作者很懒,什么都没留下…
展开
-
第163篇 笔记-权益证明
权益证明是一类应用于公共区块链的共识算法,其效果取决于验证者在网络中的经济权益。在基于工作量证明的公共区块链中算法会奖励那些为了验证交易并创建新区块而解决密码学难题的参与者。在基于权益证明的公共区块链中,一组验证者轮流提议并对下一个区块进行投票,并且每位验证者的投票权重取决于其保证金额的大小(即权益)。一般来说,权益证明算法如下:区块会跟踪一个验证者集合,并且任何持有该区块链的基础加密资产(如在以太坊中就是以太币)的用户都可以通过发送一笔将以太币锁定为保证金的特殊交易来成为验证者。原创 2023-03-15 18:00:35 · 768 阅读 · 1 评论 -
第162篇 笔记-安全多方计算
利用同态加密技术可以实现无密钥方对密文的计算,密文计算无须经过密钥方,既可以减少通信代价,又可以转移计算任务,由此可平衡各方的计算代价,利用同态加密技术可以实现让解密方只能获知最后的结果,而无法获得每一个密文的消息,可以提高信息的安全性。双方根据各自的输入依次进行计算,解密方可得到最终的正确结果,但无法得到除结果以外的其他信息,从而实现双方的安全计算。:将秘密以适当的方式拆分,拆分后的每一个份额由不同的参与者管理,单个参与者无法恢复秘密信息,只有若干个参与者一同协作才能恢复秘密消息。原创 2023-03-13 10:18:21 · 730 阅读 · 0 评论 -
第161篇 笔记-去中心化的含义
去中心化”这个词是在加密经济学领域用得最多的一个词,通常也作为辨别区块链的依据。然而,这个词也可能是被定义得最不恰当的一个词。数千小时的研究和价值数十亿美元哈希算力的投入都旨在实现去中心化,并保护和提高去中心化的程度。当人们关于协议的讨论变得越发激烈时,一种非常常见的情况是,协议的支持者会声称对方的协议提案是中心化的,并以此作为最终击倒对方的论据。本文主要内容来自Vitalik Buterin的文章。原创 2023-03-11 14:49:13 · 810 阅读 · 0 评论 -
第160篇 笔记-公有链和私有链
从本质上讲,比起由加密经济学(如工作量证明、权益证明)来保护完全公开且无人控制的网络和状态机,也可以创建一个这样的系统:该系统的访问权限讲受到更严格控制,其修改权限或者甚至读取区块链状态的权力都只限制给少数用户;这类系统一直是金融机构关注的焦点,并且某种程度上导致了某些人的强烈反对,这些人要么认为这一做法损害了去中心化,要么认为这将导致中间商重拾权力。然而,对于那些只是因为想要弄清楚该如何更好地为人类服务,或者甚至追求更为温和的服务客户的目标而参与其中的人,这两种风格之间的实际差异到底是什么呢?原创 2023-03-11 11:38:41 · 485 阅读 · 0 评论 -
第159篇 笔记-区块链的升级与分叉
区块链领域的一个重要的争论:硬分叉或软分叉是否应该成为区块链首选的升级机制?比起软分叉,硬分叉背后的选择性实际上远远优于软分叉的强制性。本文旨在对硬分叉及软分叉进行辩证,并阐述不同分叉类型的效果。本文主要内容来自Vitalik Buterin的文章。原创 2023-03-10 08:24:45 · 631 阅读 · 0 评论 -
第150篇 笔记-元宇宙(Metaverse)
元宇宙是一个整体虚拟世界的概念,它与现实世界并行存在,提供主权数字所有权、独特的在线身份、互联环境和沉浸式体验。随着最近区块链生态系统中NFT的爆炸,以及Facebook的头部转向“Meta”,元宇宙已进入主流公众意识。尽管这个概念可能看起来是新的、前沿的,但元宇宙的概念在流行文化中已经确立了几十年。这个词最早是由尼尔·斯蒂芬森于1992年在他的科幻小说《雪崩》中创造的,指的是一个模拟、增强和连接物理现实的包罗万象的3D虚拟世界。原创 2022-11-27 17:28:38 · 1717 阅读 · 0 评论 -
第149篇 笔记-web3
Web3是基于去中心化原则的互联网新革命。Web3将当今丰富的交互式数字体验与为用户提供所有权和加密保证的基础设施相结合。最近在传统技术部门和区块链生态系统的行业领导者中,Web3已成为主流意识,其对互联网的过去和未来有着广泛的影响。在深入研究之前,先简单介绍一下这个术语的历史。“Web 3.0”一词最初由HTTP先驱蒂姆·伯纳斯·李(Tim Berners Lee)在网络时代使用,用于描述一种集成的通信框架,在该框架中,互联网数据可以在不同的应用程序和系统之间进行机器可读操作,他还称之为语义Web。原创 2022-11-27 17:16:29 · 1655 阅读 · 0 评论 -
第148篇 笔记-DeFi
1.稳定币稳定币是DeFi的核心组件,允许美元等法定货币和其他资产作为数字代币在区块链上表示。稳定币是基础资产的代表,并通过各种机制与之保持 1:1 的联系。对经常波动的加密货币市场相对稳定的渴望促使所有稳定币的总价值超过1000亿美元。各种稳定币设计旨在提供保障,包括法定支持的稳定币、去中心化的稳定币和算法稳定币。菲亚特支持的稳定币代表区块链上的法定货币,并由链外抵押品支持。原创 2022-11-27 15:28:12 · 1349 阅读 · 0 评论 -
第147篇 笔记-预言机(Oracle)
区块链预言机是将区块链连接到外部系统的实体,从而使智能合约能够基于现实世界的输入和输出执行。预言机为分散的 Web3 生态系统提供了一种访问现有数据源、遗留系统和高级计算的方式。去中心化预言机网络(DON)支持创建混合智能合约,其中链上代码和链下基础设施相结合,以支持高级去中心化应用程序(dApp),这些应用程序对真实世界事件做出反应,并与传统系统互操作。区块链预言将区块链连接到现实世界中的输入和输出例如,让我们假设 Alice和 Bob想打赌体育比赛的结果。原创 2022-11-27 14:34:12 · 2222 阅读 · 0 评论 -
第146篇 笔记-智能合约介绍
智能合约是在区块链网络上托管和执行的计算机程序。每个智能合约都包含指定预定条件的代码,这些条件在满足时会触发并产生结果。通过在去中心化区块链而不是集中化服务器上运行,智能合约允许多方以准确、及时和防篡改的方式达成共享结果。智能合约是一种强大的自动执行的基础设施,因为它们不受中央管理员的控制,不易受到恶意实体的单点攻击。当应用于多方数字协议时,智能合约应用程序可以降低交易对手风险、提高效率、降低成本,并为流程提供新的透明度。原创 2022-11-27 13:16:47 · 2576 阅读 · 0 评论 -
第12篇 web3.js - Ethereum JavaScript API(contract,部署与调用智能合约)
本文环境:区块链:以太坊POA联盟链;出块节点数:3;操作系统:windows 64;节点版本:Geth1.9.14;node版本:v10.14.0参考文档:https://web3js.readthedocs.io/en/v1.2.8/原创 2020-06-21 13:37:59 · 3356 阅读 · 0 评论 -
第97篇 笔记-solidity中的抽象(Abstract)
solidity中的抽象原创 2021-12-11 17:38:58 · 3120 阅读 · 0 评论 -
第96篇 笔记-solidity中的重载(Override)
solidity中的重载原创 2021-12-11 17:37:38 · 3013 阅读 · 1 评论 -
第95篇 笔记-solidity中的继承(Inheritance)
solidity中的继承原创 2021-12-11 17:36:30 · 3188 阅读 · 0 评论 -
第90篇 remix 中 bytes32[] 类型传参
本文环境:操作系统:windows10浏览器:google chrome合约部署:网页 remix IDE1. 问题描述部署智能合约正常,使用时“bytes32[]”类型总是输不对。1.1 空着不填报错信息如下:transact to myHero.safeTransferFrom errored: Error encoding arguments: Error: invalid arrayify value (argument="value", value="",..原创 2021-11-22 17:42:11 · 6028 阅读 · 1 评论 -
第37篇 笔记-以太坊交易池实战分析
txpool对应的启动参数,简单应用原创 2020-12-08 17:29:24 · 1797 阅读 · 0 评论 -
第36篇 笔记-以太坊交易池架构设计
当前以太坊公链的平均每秒能处理30到40笔交易,因此以太坊一旦出现火热的DAPP时,极易出现交易拥堵。偏底的交易处理速度永远无法同现有的中心化服务相比。当网络中出现大量交易排队时,矿工是如何选择并管理这些交易的呢?答案在本篇所介绍的以太坊交易池中,如果你对交易还不特别熟悉,则请先阅读以太坊交易。交易处理流程当你通过以太坊钱包,发送一笔转账交易给张三时。这笔交易是如何进入网络,最终被矿工打包到区块中呢?下图是一笔交易从出生到交易进入区块的关键流程。首先,用户可通过以太坊钱包或者其他调.原创 2020-12-08 15:36:57 · 1148 阅读 · 1 评论 -
第34篇 笔记-挖矿奖励
https://github.com/lbc-team/deep_ethereum/commit/4e70378105a4e7947ca3ada2f06965814bcbca00原创 2020-12-08 14:25:03 · 4446 阅读 · 0 评论 -
第26篇 拜占庭将军问题与拜占庭容错算法
拜占庭将军问题(The Byzantine Generals Problem)提供了对分布式共识问题的一种情景化描述,由Leslie Lamport等人在1982年首次发表。论文《The Byzantine Generals Problem 》同时提供了两种解决拜占庭将军问题的算法: 口信消息型解决方案(A solution with oral message); 签名消息型解决方案(A solution with sign..原创 2020-11-16 22:13:54 · 2016 阅读 · 0 评论 -
第25篇 笔记-智能合约编写的高级特性
Solidity是一门面向区块链平台设计、图灵完备的编程语言,支持函数调用、修饰器、重载,事件、继承和库等多种高级语言的特性。本文将介绍Solidity的一些高级特性,帮助读者快速入门,编写高质量、可复用的Solidity代码。原创 2020-11-16 21:58:43 · 904 阅读 · 0 评论 -
第24篇 笔记-区块链的工作原理和运行机制
本文对以太坊的原理进行一次大起底,尽量深入浅出且全面的让你理解以太坊的本质到底是什么。让你对以太坊有一个整体而深刻的认识。本质上来说,以太坊就是一个保存了数字交易永久记录的公共数据库。重要的是,这个数据库不需...原创 2020-11-16 21:11:51 · 1929 阅读 · 0 评论 -
第18篇 哈希函数
本文试图解释哈希函数的作用、标准、实现方式以及区块链哪些地方用到了它。本文中的哈希和hash是同一个词意,有可能会交叉出现。本文中的哈希有可能是名词(哈希函数、哈希算法),也有可能是动词(把这段数据哈希一下)。Hash函数在数字签名和消息完整性检测等方面有着广泛的应用。1.哈希函数的定义1.1 基本概念明文(plaintext):原始可理解的信息或数据,作为加密算法的输入。加密(encryption)算法:将明文转换成密文的过程。密钥(key):加密算法的输入,独..原创 2020-07-06 08:44:18 · 3136 阅读 · 0 评论 -
第11篇 web3.js - Ethereum JavaScript API(eth)
本文环境: 区块链:以太坊POA联盟链; 出块节点数:3; 操作系统:windows 64; 节点版本:Geth1.9.14; node版本:v10.14.0原创 2020-06-12 16:32:25 · 2421 阅读 · 1 评论 -
第10篇 geth命令参数详解
本文环境: 操作系统:windows 64; 节点版本:Geth1.9.14;原创 2020-06-02 15:58:20 · 3144 阅读 · 0 评论 -
第09篇 geth console基本操作
本文环境: 区块链:以太坊POA联盟链; 出块节点数:3; 操作系统:windows 64; 节点版本:Geth1.9.14;原创 2020-05-26 12:04:27 · 4515 阅读 · 1 评论 -
第03篇 以太坊POA联盟链介绍
1、共识机制区块链采用去中心化的设计,节点是各处分散且平行的,所以必须设计一套制度,来维护系统的运作顺序与公平性,统一区块链的版本,并奖励提供资源维护区块链的使用者,以及惩罚恶意的危害者。这样的制度,必须依赖某种方式来证明,是由谁取得了一个区块链的打包权(或称记账权),并且可以获取打包这一个区块的奖励;又或者是谁意图进行危害,就会获得一定的惩罚,这就是共识机制。共识算法是区块链项目的核心之一,每一个运行着的区块链都需要一个共识算法来保证出块的有效性和有序性。在以太坊的官方源码中,有两个共识算法:原创 2020-05-16 17:05:47 · 2828 阅读 · 0 评论 -
第02篇 Windows平台以太坊联盟链搭建步骤(2)
本文内容接上篇。1、添加coinbase账户上面的日志提示没有账户存在,那么现在我们就在每个节点上创建一个账户,具体在控制台操作命令如下:> personal.listAccounts[]> personal.newAccount("123456")"0x641f5881bb81b69b7a653836ad0a6bbf5f343ccc"上面的命令先是查看了节点下的地址,结果为空,然后创建了一个密码为“123456”的账号。同样的,在另外两个窗口我们执行同样的命令以创建原创 2020-05-15 10:58:16 · 2448 阅读 · 4 评论 -
第01篇 Windows平台以太坊联盟链搭建步骤(1)
本文操作系统:windows 10 家庭中文版。1、下载Geth在官网下载:https://geth.ethereum.org/downloads/或者从国内镜像下载:https://ethfans.org/wikis/Ethereum-Geth-Mirror本文从国内镜像下载,版本号:geth-windows-amd64-1.8.3主要参考文档:https://ethfans.org/posts/how-to-build-private-chain-with-Geth2、安装.原创 2020-05-15 10:52:52 · 3031 阅读 · 5 评论