Blockchain 02
11
Block – Each Transaction is Taken from a Pool of Transactions and Formed into a Block of Transactions.
The Chain – These are Cryptographic Functions which link each block together
Blockchain
Blockchain Should or Can , be considered as a Sub-Set of DLT
Distributed Ledger Technology
块——每笔交易都是从一个交易池中提取的,并形成一个交易块。
链-这些是将每个块连接在一起的加密函数
区块链
区块链应该或可以被视为DLT的子集
分布式账本技术
这段话从最基本的结构单元“区块”开始,逐步构建出“区块链”的概念,并最终将其归类到更广泛的技术类别“分布式账本技术”中。它是一个从具体到抽象的概念解释。
总结
这段话清晰地阐述了:
数据如何组织:交易被打包成区块。
安全性如何保证:区块通过密码学哈希函数连接成链,确保不可篡改。
技术的归属:区块链是分布式账本技术 的一种特定且重要的形式。
简单来说,它描述了一个通过密码学链接的、按时间顺序排列的区块所组成的、去中心化的分布式数据库。
Cryptographic Functions Linking Blocks 链接块的加密函数
Within Each Block which is Mined to the Blockchain
We have a typical composition / or Cross-section
This is known as the Block Header :
What do you See ?
在每个被挖掘到区块链的块中
我们有一个典型的组成/或横截面
这就是Block Header:
你看到了什么?
Dr Merkle and His Tree
Merkle Tree
transactions in the block in the form of a Merkle tree. Also known as
a binary hash tree, it is a data structure used for efficiently
summarising and verifying the integrity of large datasets.
Double SHA-256 algorithm applied to tree to create the block hash,
which is the primary identifier of a block which any node can
independently derive by simply hashing the block header.
The block height signals the position of the block in the chain. While
it is true that block hash will always uniquely identify a block, the
same isn’t true about block height.
Used extensively by SPV (Simple Payment Verification) wallets such as Electrum who do not require you to download the full blockchain
以默克尔树的形式记录区块中的交易。也被称为
一种二叉哈希树,它是一种用于高效的数据结构
总结和验证大型数据集的完整性。
双SHA-256算法应用于树创建块哈希,
哪个是块的主标识符,任何节点都可以
通过简单地散列块头独立派生。
区块高度表示区块在链中的位置。而
的确,块散列总是唯一地标识一个块,即
对于块高度来说,情况并非如此。
被SPV(简单支付验证)钱包广泛使用,如Electrum,不需要您下载完整的区块链
总结
这段话清晰地描述了比特币如何将默克尔树 作为核心组件,来实现:
数据完整性:确保区块交易不被篡改。
高效验证:允许轻钱包(SPV钱包)在不存储全部数据的情况下安全地验证支付。
唯一标识:通过密码学哈希函数生成唯一的区块哈希作为区块的主要ID,并与不稳定的区块高度 概念区分开来。
Merkle Proof Merkle证明
Patented the Merkle Tree in 1979
The Top Hash called the Merkle Root
Merkle Trees can be used to provide
Merkle Proofs
Proof that a piece of data is part of the
Data set represented by the Merkle Proof
意思:这段话首先进行人物归属,指出默克尔树是由拉尔夫·默克尔在1979年发明的并申请了专利。这确立了该数据结构的来源。
“The Top Hash called the Merkle Root”
意思:这里定义了默克尔树中最核心的部分。在默克尔树结构中,最顶层的、也是唯一的一个哈希值,被称为“默克尔根”。
详解:默克尔树是通过不断对数据两两进行哈希计算,最终生成的一个树状结构。这个过程的最终输出,就是树根部的哈希值。这个根哈希代表了整个数据集的“唯一数字指纹”。
“Merkle Trees can be used to provide Merkle Proofs”
意思:这句话点出了默克尔树一个极其重要的应用——生成“默克尔证明”。这是它在区块链等领域如此关键的原因。
“Proof that a piece of data is part of the Data set represented by the Merkle Proof”
意思:这解释了什么是默克尔证明。它是一种密码学证明,用于验证某一条特定数据(例如一笔比特币交易)确实属于一个更大的数据集(例如一个包含上千笔交易的区块),而无需下载整个数据集。
总结
这段话简明地概括了:
发明者:拉尔夫·默克尔。
核心组件:代表整体数据指纹的默克尔根。
关键应用:提供默克尔证明,用于高效、安全地验证单个数据成员是否属于一个大型集合。这正是比特币轻钱包能够安全运行的基础。
Immutability 不变性
Difficulty in BTC BTC难度
Difficulty is intended to keep the Block interval at about 10 Mins
A Valid Block has a hash value which is lower that the target difficulty
难度是为了保持Block间隔在10分钟左右
有效区块的哈希值低于目标难度
- "Difficulty is adjusted every 2016 Blocks (2 Weeks)"
意思:比特币网络的挖矿难度每产生2016个区块就会自动重新计算和调整一次。
详解:之所以是"大约2周",是因为比特币的设计目标是平均每10分钟出一个块。所以,10分钟/块 × 2016块 = 20160分钟 ≈ 2周。这是一个固定的调整周期,确保了难度调整的制度化和可预测性。 - "Difficulty is intended to keep the Block interval at about 10 Mins"
意思:调整难度的目的是为了将新区块产生的平均时间稳定在10分钟左右。
详解:这是难度调整的核心目标。如果全球矿工的总算力增加了,出块速度就会快于10分钟,那么下一次调整时就会增加难度,让出块变慢;反之,如果算力减少了,就会降低难度,让出块变快。这是一个负反馈循环,旨在抵御算力波动带来的影响。 - "A Valid Block has a hash value which is lower than the target difficulty"
意思:一个有效的、被网络接受的区块,其区块头的哈希值必须小于当前的目标难度值。
详解:这是"工作量证明"的具体体现。矿工们实际上是在进行一场巨大的猜数竞赛:不断改变区块头中的一个随机数,并对其进行哈希计算,直到产生的哈希值(一个很长的数字)低于网络设定的那个"目标值"。这个目标值就是"难度"的数字化体现。难度越高,目标值就越小,找到一个符合条件的哈希值就越困难,就像让你在一张写满百万位数字的纸上找一个小于10的数字一样,需要极大的运气和计算量。
总结与关联
这三句话清晰地描述了比特币难度调整的一个完整闭环:
设定目标:维持10分钟的出块间隔(第二句话)。
执行规则:矿工必须找到低于目标难度的哈希值,才能生产有效区块(第三句话)。
检查与反馈:每过2016个区块(大约两周),网络就会检查过去这段时间的实际出块速度。如果平均快于10分钟,就提高难度(缩小目标值);如果慢于10分钟,就降低难度(增大目标值)(第一句话)。
POW Proof of Work POW工作量证明
How does the Block Hash provide the work has been completed ?
Why is 51% an important figure ?
Example ::
Bitcoin Network Hash Rate: 138 000 000 000 000 000 000 H/s
Assume 10c kWh cost
Antminer S9
14 THs
1372W Power Consumption
$1700 ex VAT
区块哈希如何提供工作已经完成?
为什么51%是一个重要的数字?
例如::
比特币网络哈希率:138 000 000 000 000 000 000 H/s
假设成本为10c kWh
Antminer S9
黑色14
1372W功耗
1700美元不含增值税
第一部分:三个核心问题
"How does it provided Immutability ?"(它是如何提供不可篡改性的?)
意思:这个问题在问比特币区块链为什么难以被修改。
答案:不可篡改性来自于工作量证明和区块链的链式结构。
工作量证明:修改一个区块需要重新计算该区块及其之后所有区块的工作量证明,这需要巨大的计算能力。
链式链接:每个区块都包含前一个区块的哈希值。修改任何一个区块的内容,都会导致其哈希值改变,从而"断裂"与后续区块的链接,需要重新计算所有后续区块的哈希。这使得篡改历史记录在计算上几乎不可行。
"How does the Block Hash provide the work has been completed ?"(区块哈希如何证明工作量已经完成?)
意思:这个问题在问一个有效的区块哈希值本身如何作为工作完成的证据。
答案:一个有效的区块哈希必须低于网络设定的目标难度值。矿工只能通过数十亿次地随机猜测来找到一个符合要求的哈希值。因此,当你看到一个有效的区块哈希时,你就知道有矿工已经投入了巨大的计算资源(即完成了"工作")才找到了它。这个哈希本身就是工作完成的密码学证明。
"Why is 51% an important figure ?"(为什么51%是一个重要的数字?)
意思:这个问题指向了比特币著名的"51%攻击"。
答案:如果一个实体或个人控制了全网超过51% 的算力,理论上他就可以:
比其他诚实的矿工更快地构建一条更长的区块链。
进行双花攻击(把同一笔钱花两次)。
阻止部分或全部交易被确认。
51%是攻击网络所需的算力阈值,因此是一个至关重要的安全边界。
第二部分:具体示例
"Bitcoin Network Hash Rate: 138,000,000,000,000,000,000 H/s"
意思:比特币全网算力是 13.8亿太哈希/秒。这是一个极其庞大的数字,显示了整个网络计算能力的规模。
"Assume 10c kWh cost"
意思:假设电费是每度电0.1美元。这是计算挖矿成本的关键参数。
"Antminer S9 – 14 TH/s, 1372W Power Consumption, $1700 ex VAT"
意思:以蚂蚁矿机S9为例,这是一款经典的矿机。
算力:每秒能计算14万亿次哈希。
功耗:每小时消耗1.372度电。
价格:每台机器售价1700美元(不含税)。
这个例子的深层含义:
展示攻击成本:它暗示了想要发动51%攻击需要付出多大的代价。你需要购买并运行足以超越当前全网算力的矿机,其硬件成本和电力成本是天文数字。
展示安全性:如此高的算力和成本,正是比特币网络安全的基石。没有人能轻易获得足以攻击网络的算力。
效率对比:用老旧的S9矿机数据作对比,更凸显出要达到当前全网算力需要多么庞大的设备数量和能源消耗。
总结
这段话的核心是:比特币的不可篡改性是由其巨大的、分散的算力所保证的。区块哈希是工作量完成的证明,而51%的算力是攻击这个系统的理论门槛。后面给出的具体数字则生动地描绘了要达到这个算力级别所需的惊人投入,从而解释了为什么比特币网络至今仍然安全。
The Byzantine Generals Problem
All Generals Must Co-Ordinate the attack
Attacks are co-ordinated by messengers
Messengers must travel through enemy territory
Messengers can forge messages
Generals can send multiple messengers
An uncoordinated attack will fail
所有将军必须协调进攻
攻击是由信使协调的
信使必须穿越敌人的领地
信使可以伪造信息
将军可以派遣多个信使
不协调的攻击将会失败
这段话描述了一个分布式系统中,如何在存在叛徒(故障或恶意节点)和不可靠通信的情况下,达成共识的难题。所有忠诚的参与者必须达成一致的决定,否则就会失败。
逐句详解
"Lamport, Shostak, Pease (1982)"
意思:这是该问题的提出者。莱斯利·兰波特等人在1982年的论文《The Byzantine Generals Problem》中正式描述了这个问题的模型。
"All Generals Must Co-ordinate the attack"
意思:所有将军必须协同进攻。
详解:这代表了分布式系统中的共识目标。所有节点(将军)必须对同一个行动计划(例如"进攻"或"撤退")达成一致。如果一部分节点决定进攻,另一部分决定不进攻,系统就会失败。
"Attacks are co-ordinated by messengers"
意思:进攻通过信使来协调。
详解:这代表了分布式系统中的通信机制。节点(将军)之间不在一起,它们只能通过发送消息(信使)来交换信息并达成共识。
"Messengers must travel through enemy territory"
意思:信使必须穿越敌占区。
详解:这代表了网络是不可靠的。消息可能会被延迟、丢失或被拦截(就像信使在敌占区被俘获一样)。
"Messengers can forge messages"
意思:信使可以伪造消息。
详解:这是一个更强的假设,代表了通信信道是不安全的。恶意攻击者可以篡改或伪造在节点之间传递的消息。
"Generals can send multiple messengers"
意思:将军可以派遣多个信使。
详解:这是一种应对不可靠通信的策略。通过冗余发送消息(比如通过不同路径发送多个相同的命令),可以提高消息成功送达的概率。
"An uncoordinated attack will fail"
意思:一次不协调的进攻将会失败。
详解:这强调了共识的极端重要性。在分布式系统中,如果节点状态不一致(比如一些数据库副本执行了更新而另一些没有),就会导致数据损坏、服务中断等严重后果。
与区块链的关系
拜占庭将军问题是区块链技术旨在解决的核心问题。
将军 = 区块链网络中的节点(矿工/验证者)。
进攻或撤退的决定 = 对下一个区块内容达成共识(哪些交易是有效的,应该被添加到链上)。
信使 = 在节点之间传播交易和区块的点对点网络。
穿越敌占区的信使 = 不稳定的网络连接,消息可能丢失或延迟。
伪造消息的信使 = 网络中的恶意攻击者,他们可能传播无效交易或冲突的区块。
叛变的将军 = 拜占庭节点,即行为异常、恶意或出故障的节点,它们可能会向不同节点发送矛盾的消息。
区块链的工作量证明(或其他共识机制)本质上就是一个解决方案,它使得即使在有部分恶意节点存在的情况下,所有诚实的节点仍然能够就账本的唯一历史状态达成一致,从而实现了"所有忠诚的将军协同进攻"的目标。
Important Points in Crypto History
Wei Dai – b-money
1 st August 2002
Adam Back – Hashcash
15 August 2004
Hal Finney – Reusable Proof of Works
Hal Finney – Cyperphunks announcement
December 27 2008:
Nick Szabo – Bit gold
February 11 2009:
Satoshi – P2P foundation
这段话精准地概括了**密码朋克的核心愿景**:不是通过政治运动,而是通过**技术手段**,创建一个不受强制权力干预的数字空间。在这个空间里,个人的自由和隐私通过密码学得到终极保障,使得任何形式的基于暴力的 coercion(强制)都无从下手。这是一种将自由寄托于数学和代码,而非法律和制度的哲学。
(Dai, 1998)
ethereum homestead release Blockchain app platform 以太坊家园发布区块链应用平台
关于MetaMask & Faucets的说明
Sepolia
https://sepolia-faucet.pk910.de/
Gorli:
https://fauceth.komputing.org/?address=0x0b97Bc397357e6b95435a9b8B3D17FbcD528173E”
Alchemy
https://goerlifaucet.com/
NotGreat:
https://faucet.quicknode.com/ethereum/goerli/?transactionHash=0x72a42624ccb50d5f2c4fe637babb1adb4db147001b536412ae01340074de3961″
Other_MyCrypto_Dashboard: Only Supports Goerli
https://app.mycrypto.com/dashboard
Smart Contracts Prologue,an event or act that leads to another. 智能合约序幕
用于促进、核实或执行法律合同的计算机协议。
智能合约本身就是代码,用于管理合同的所有方面,以使其不需要第三方确认合同的所有方面都已执行和满足(去中心化)。
阅读文档:https://ethereum.org/en/developers/
**Electronic Contracts , but much more ! ! **
Hypothetically, your bank could arbitrarily add or remove money from your account.
In a blockchain ecosystem, there should be no single source of control. The distributed nature of the network with the consensus mechanisms result in multiple parties performing checks, with breaches to the pre-conformed rules rejected by consensus
Transparency
Anyone can see and review the code i.e the contract
Are there positives and negatives related to this point?
Current implementation: Send a direct debit on the 5th of every month to Michael
Possibilities with smart contracts : Send a direct debit on the 5th business day every month. If earnings for the previous month are less than 10k, then send 1k. If earnings are greater than this, send 1k plus 10% of the difference.
Rainy day smart contract: Every day it is sunny, send 3.33% of my salary to my savings account. If it rains, transfer this back to my current account.
假设,你的银行可以任意地从你的账户中增加或减少资金。
在区块链生态系统中,不应该有单一的控制来源。具有共识机制的网络的分布式特性导致多方执行检查,违反预先一致的规则被共识拒绝
透明度
任何人都可以查看和审查代码,即合同
这一点有积极的一面和消极的一面吗?
目前的做法是:每月5号给Michael发一笔直接借记
智能合约的可能性:在每个月的第5个工作日直接付款。如果前一个月的收入少于1万,那就寄1万。如果收入高于这个数字,就寄1k加上差额的10%。
雨天智能合约:只要天气晴朗,就把工资的3.33%存入我的储蓄账户。如果下雨,把这笔钱转回我的活期账户。
这段话通过对比传统银行系统和区块链(特别是智能合约),清晰地阐述了区块链技术在控制权和透明度方面的核心特性,并展示了智能合约的灵活性。
第一部分:控制权与代码
- 传统银行系统的问题
“Hypothetically, your bank could arbitrarily add or remove money from your account.”
意思:在传统金融体系中,银行作为一个中心化的控制源,拥有单方面修改你账户余额的权力。虽然银行受到监管不会随意这样做,但从技术上讲,这种能力是存在的。这存在着潜在的操作风险、滥用权力或黑客攻击内部系统的风险。 - 区块链的解决方案
“In a blockchain ecosystem, there should be no single source of control… breaches to the pre-conformed rules rejected by consensus”
意思:区块链通过去中心化和共识机制解决了这个问题。
无单一控制源:没有任何单个实体(个人、公司或银行)可以独自决定更改规则或数据。
多方校验:网络中的多个节点(参与者)共同验证每一笔交易和每一个区块。
规则至上:一旦规则被写入协议(代码),任何违背这些规则的操作都会被网络共识拒绝,无法被记录到链上。控制权从“人”转移到了“代码”和“共识”。
第二部分:透明度
“Transparency – Anyone can see and review the code i.e the contract”
意思:区块链上的代码(如智能合约)通常是公开透明的,任何人都可以审查。
“Are there positives and negatives related to this point?”
意思:这种透明度是一把双刃剑。
正面:
信任:用户可以亲自验证合约的逻辑,无需信任合约的创建者。
安全:全球的开发者可以审计代码,发现并报告漏洞。
可组合性:开发者可以清楚地看到其他合约如何工作,从而更容易地将不同的合约组合起来,构建更复杂的应用。
负面:
隐私:商业逻辑或财务条款可能对竞争对手完全公开。
安全风险:攻击者也可以仔细研究代码,寻找漏洞进行攻击。
第三部分:智能合约的灵活性(与传统指令对比)
这部分通过具体例子,展示了智能合约如何将简单的指令升级为复杂、有条件、自动执行的逻辑。 - 当前实现(传统银行指令)
“Send a direct debit on the 5th of every month to Michael”
意思:这是一个简单、固定的指令。无论发生什么,都在每月5号向Michael支付一笔固定金额。缺乏灵活性和上下文判断。 - 智能合约的可能性
“Send a direct debit on the 5th business day every month. If earnings… send 1k plus 10% of the difference.”
意思:这变成了一个动态、有条件的支付。
逻辑:支付金额不再固定,而是根据上个月的收入动态计算的。它引入了if…else条件判断,能够响应外部数据(收入),实现更公平或更智能的财务安排(如浮动版税、绩效工资)。 - “雨天”智能合约
“Every day it is sunny, send 3.33% of my salary to my savings… If it rains, transfer this back…”
意思:这是一个更具想象力、由外部事件触发的合约。
逻辑:它的执行依赖于外部数据源。它不再是基于日期或简单的财务计算,而是与真实世界的事件(天气)挂钩。这展示了智能合约可以与现实世界连接,实现高度定制化和自动化的行为。
总结
这段话的核心思想是:
权力的转移:从可被滥用的中心化控制转向由代码和数学规则保证的去中心化共识。
信任的转移:从信任机构,转向信任可公开审计、透明且不可篡改的代码。
能力的飞跃:从执行简单、固定的指令,升级到执行复杂、有条件、由现实世界事件驱动的自动化合约。
Ethereum 以太坊
Decentralized: No controlling entity or individual * Discuss
No Single point of failure
Immutability * Discuss
Corruption / Tamper proof – based on consensus , making censorship impossible
Zero Downtime
Difficult to control from a regulatory perspective
DAO ( Decentralized Autonomous Organisation ) :
Fully autonomous organisation with no single leader
Run by a series of smart contracts designed to replace the rules and structure of a traditional organisation eliminating the need for centralized control
Ownership represented by tokens, which act as token rights.
这意味着:
分散:没有控制实体或个人*讨论
无单点故障。
不变性*讨论
防腐败/防篡改——基于共识,使审查成为不可能
零停机
从监管的角度难以控制
去中心化自治组织:
完全自主的组织,没有单一的领导者
由一系列智能合约运行,旨在取代传统组织的规则和结构,从而消除对集中控制的需求
由代币代表的所有权,充当代币权利。
这段话深入阐述了以太坊平台带来的核心影响,并介绍了一个基于以太坊的颠覆性概念——DAO。
我们来详细解读一下:
第一部分:以太坊的核心影响
这部分列出了由以太坊的“去中心化”和“智能合约”特性所衍生出的几个关键属性。
Decentralized: No controlling entity or individual * Discuss
意思:去中心化:没有控制实体或个人。
详解:这与传统公司或组织(如Facebook、谷歌)完全不同。没有CEO、没有董事会、没有中央政府能单方面决定以太坊的规则或关闭它。它由全球范围内成千上万的节点共同维护和运营。这引发了关于治理、责任和权力分配的广泛讨论。
No Single point of failure
意思:没有单点故障。
详解:因为网络是分布式的,攻击或关闭一台、甚至一大批计算机,都不会导致整个网络瘫痪。系统具有极强的韧性和抗攻击能力。
Immutability * Discuss
意思:不可篡改性。
详解:一旦交易和数据被确认并写入区块链,就几乎无法被修改或删除。这创建了一个永久且不可更改的记录。这也引发了讨论:如果代码有bug或发生了非法交易,这种不可篡改性是否会成为一个问题?
Corruption / Tamper proof – based on consensus , making censorship impossible
意思:反腐/防篡改——基于共识,使得审查成为不可能。
详解:任何交易的生效都需要网络达成共识。一个人无法为了自己的利益而随意更改规则或反转交易。同样,因为没有一个中心机构能决定什么可以、什么不可以被记录,所以很难对网络上的交易或应用进行审查。
Zero Downtime
意思:零停机时间。
详解:由于没有中心服务器,并且网络遍布全球,以太坊平台及其上部署的智能合约是永远在线的。它们一年365天、一天24小时都在运行。
Difficult to control from a regulatory perspective
意思:从监管角度来看难以控制。
详解:这对政府和监管机构是一个挑战。传统的监管对象是明确的法人实体(如公司、银行),但在一个没有所有者、没有总部、全球运行的匿名网络上,应该监管谁?如何监管?这带来了新的法律和合规问题。
第二部分:DAO
这部分是上述特性的一个具体应用实例。
DAO (Decentralized Autonomous Organisation) : Fully autonomous organisation with no single leader
意思:DAO:没有单一领导者的完全自治的组织。
详解:DAO就像一个在区块链上运行的公司或俱乐部,但它没有管理层。它的运作完全由代码预先定义。
Run by a series of smart contracts designed to replace the rules and structure of a traditional organisation eliminating the need for centralized control
意思:由一系列旨在取代传统组织规则和结构的智能合约运行,从而消除了对中心化控制的需求。
详解:这是DAO的核心。公司的章程、股权结构、投票流程、资金使用等规则,不再写在法律文件里由律师和会计师执行,而是被编入自动执行的智能合约中。例如,“如果要使用资金,必须获得超过50%的投票权同意”这条规则会由代码自动强制执行。
Ownership represented by tokens, which act as token rights.
意思:所有权由代币代表,这些代币充当了权益凭证。
详解:你持有DAO的代币,就相当于持有了这个“公司”的股份。这些代币通常赋予你投票权(对提案进行表决)和收益权(分享组织产生的利润)。你的影响力大小通常与你持有的代币数量成正比。
总结
这段话清晰地描绘了以太坊的愿景:
平台层面:创建一个抗审查、永不宕机、无需信任第三方的全新计算基础架构。
应用层面:利用这个基础架构,构建出像DAO这样的全新组织形式,用代码规则和社区共识来取代传统的人力管理和层级结构,从而实现更高程度的透明度和民主化治理。
11
11