这是Web3.0学习的第一章区块链通识,文内如出现知识性和理解性错误还请各位斧正,原创文章,完全开源,若能得转载不胜荣幸,推特会分享Coding学习,生活日常和NBA等内容。
区块链基础
智能合约简介
智能合约与链下的交互
混合智能合约
区块链网络
Web阶段发展分类
智能合约的作用
The purpose of Smart Contracts
区块链的目的
智能合约到底是什么
区块链其他优势
具体优势
对比Web2
智能合约行业应用
区块链基础知识可以指导我们如何去架构自己的去中心化应用。
智能合约是通过去中心化的方式来执行一系列的指令,在这些指令执行中,并不需要中心化或者第三方的中介.
区块链或者说是以太坊实现了智能合约的概念。
智能合约也是约定多个参与方的一系列指令。不同的是,传统的合同是通过笔写到纸上,或者通过word把内容打进去,而智能合约是代码写的,并且嵌入到一个去中心化区块链平台。智能合约就是在这个去中心化区块链平台中被执行,而不是被二个,三个或者多个参与方去执行,所以智能合约解决了中心化所带来的问题。
技术上讲,比特币也有智能合约,但是比特币不是图灵完备的,也就是比特币不能执行一个编程语言的所有指令。
比特币开发者想把比特币作为价值存储,而以太坊开发者除了把以太坊看作价值存储外,还把它当成一个运行去中心化合约的平台。
如果我想用这些智能合约来代替我们日常使用的合同,那么他们就需要真实世界的数据输入,区块链自己没有办法获取真实世界的信息。这些区块链网络都是确定性系统,他们会根据预设的规则去验证。
智能合约能够获得发生在区块链上的所有信息,但是他们想要作为日常合同使用的话,他们需要外部的数据和外部的计算,而这些就是预言机(The Oracle)的作用。预言机是可以向区块链输入数据或者进行链下计算的设备.
混合智能合约:特指那些有链下组件的智能合约。在混合型智能合约出现以后,很多智能合约平台都对此做了支持。比如说Avalanche,Polygon,Fantom,Harmony,等等。
然而,如果我们想要我们的应用是真正去中心化的,我们不能只通过单个预言机或者单个数据提供商获得数据,也不能拿着单个资源去进行外部运算。
我们需要一个去中心化的预言机网络,正如去中心化区块链网络一样。你在链上的逻辑是去中心化的,你在链上的数据和计算也需要是去中心化的,将链上去中心化逻辑和链下去中心化数据和计算相结合,这个东西叫做混合型智能合约(包含区块链上运行的代码以及区块链下的数据和计算资源,这些资源由去中心化预言机网络传输至链上)。大多数我们现在使用的最流行的协议,都是某种类型的混合型智能合约,或者在某种程度上与混合型智能合约交互。混合智能合约会用到预言机网络,例如Chainlink。Chainlink是一个组件化,去中心化的预言机网络。Chainlink不仅可以给智能合约提供外部数据,还可以提供链下计算。Chainlink可以让混合型智能合约在链上和链下两部分都是去中心化的。它提供丰富的功能,让智能合约可以像日常合同一样使用。Chainlink可以让我们获得数据,合约自动化执行,随机数,以任何有意义的方式自定义你的智能合约。
也就是说我们平时在以太坊上部署智能合约,同时在大多数其他的区块链网络也是适用的,像是Polygon,Avalanche,Fantom,Harmony等等。
只需要改动一行代码就可以适配其他链,非常简单。不需要担心不了解某些链上某些工具,因为他们大部分都可以互通。
尽管有一些智能合约平台不使用Solidity,但是学习过Solidity后也可以更好地理解和使用它们。
Web3是一种观点,指的是以区块链和智能合约为基础的下一代的网络
Web1指的是一个有着固定内容的非许可的开源网络。
Web2指的是一个有着动态内容的许可网络,你的所有逻辑和协议运行在中心化的服务器上,这些中心化服务器控制着你的信息。
Web3中又回到了非许可网络,但是再一次承载动态内容,相比于中心化服务器,去中心化网络运行着你的逻辑,智能合约可以允许你创建无需审核的合同和逻辑,在Web3中,通常伴随着一个概念,即用户拥有他们所使用的协议,也叫拥有者经济。
Fait Chance:公平的机会
去中心化价值存储超过传统金融。
智能合约创建了信任最小化协议(Trust Minimized Agreements),智能合约创建了不可违背的承诺(Unbreakable Promises)另外,它也提升了性能,透明度和很多其他的方面。
区块链的目的很简单,就是来保证承诺不被违背。生活中的几乎所有东西都是某种程度,某种形式的合同结果。
智能合约是不可更改(Immutable),去中心化(Decentralized)和透明(Transparent)的,这些都是区块链被开发出来的目的。
智能合约简单来说就是部署在去中心化区块链上的一个合约或者一组指令,当这个合约或者这组指令被部署以后它就不能被改变了,它会自动执行,每个人都可以看到合约中的条款,更深层次的理解是这些代码会被去中心化地执行,没有一个人或一个主体可以修改这些合约或者更改条款,特别是智能合约部署在去中心化的区块链(ETH)上, 同时结合另一个去中心化的预言机(ORACLE)网络获取真实世界的资产和信息。
将智能合约与Chainlink的VRF相结合,获得一个可验证的随机数,这样的智能合约不可能被攻击(Impossible to hack),不可能实施欺诈(Impossible to defraud0),不可能被操纵(Impossible to manipulate)
智能合约是通往更好的世界的通道。
1.去中心化(Decentralized)
一个区块链由不同的参与者运行,这些参与者被称为节点运营者(node operators),成千上万的节点运营者运行同一个软件,运行着智能合约,才使得区块链网络是去中心化的。
2.透明性和灵活性(Transparency&Flexibility)
每个节点运营者可以看到链上发生的任何事情,没有内幕交易,任何不公平的事情人们都会看到,每个人获得的信息是一致的,并且在统一规则下协作。这并不是说没有隐私,区块链是匿名的,意味着你不需要绑定实际生活中的身份。
3.速度和效率(Speed&Efficiency)
跨国交易,金融世界的清结算等都是立即发生(instantly),让人与人之间的协作更有效率。
4.安全性和不可更改性(Security&Immutability)
不可更改意味着一旦智能合约被部署,它就不能被改变了,不管代码是什么样的,它就永远是这样了,这意味着更容易做到安全,它是去中心化的,想要攻击区块链,你必须控制一半以上的节点。
数据存储在你的以及其他所有的去中心化节点上,假如说你的节点坏了或者说成百上千的节点坏了也没关系,只要一个节点还有这个链的数据,你就是安全的。攻击一个区块链是几乎不可能的,比攻击一个中心化服务器困难多了。
不仅如此,区块链也让资金更加安全,只需要私钥,就可以获取自己所有的证明、信息和资产(私钥本质上就是你所有信息的密码)。
5.交易对手风险消除(Counterparty Risk Removal)
避免了交易对手风险,移除了中心化中介,移除了我们在Web2中需要信任的准入机制(当我们与其他人协作和交互时,我们的利益通常不是他们最关心的,农场主只关心韭菜的长势)。
6.信任最小化协议/不可打破的承诺(Trust minimized agreements)
我们从以品牌为基础的协议转变到了以数学为基础的协议,任何基于智能合约和去中心化混合型智能合约的操作都是基于规则的。
我们可以按照自己喜欢的方式来协作和交互,我们不用害怕别人会把事情搞砸,让协作变得更好。
在Web2世界中,我们一直被各种项目和协议的信息轰炸,这些信息引导我们做一些操作,然后它们从中获利。而在智能合约领域,我们可以看到所有事情,因为他们都是透明的,我们可以参与,交互,如果想拥有某种协议,那某种程度上,就可以成为协议拥有者。
1.DeFi(Decentralized Finance):代表去中心化金融,它让用户可以参与到金融市场而不需要经过中心化中介(比如说中心化交易程序Robinhood,你不需要再信任Robinhood会持续给你提供服务让你接入市场),你可以直接查看智能合约从而接入市场,你在区块链上看到的一切东西都是透明的,你可以简单、安全和高效地参与很多事情。(Uniswap,Sushiswap)(如何开发DeFi协议并且与之交互)
2.DAOs:代表去中心化自治组织,DAO是完全被去中心化管理的组织,他们被区块链上的一组指令或者一个智能合约管理,这样的管理方式很有优势,参与更加容易,规则黑白分明,并且你可以直接在链上看到所有的事情,投票和治理,使用的是完全去中心化的技术,区块链能够成为我们推动治理能力进步的重要技术之一,它让治理更加的高效,公平和合理。(怎样开发一个DAO,它是怎样运作的)(BitDAO)
3.NFTs:NFT代表”非同质化代币“,它在某种程度上是一种电子艺术品或者一个独一无二的资产。很多其他的组织和行业正是因为这项技术的出现(无聊猿,加密朋克等)(如何创建NFT,并且与之交互)