🌝 Glaze&Jasmine: 经历了6天都筹备,un.Block 终于在这里和大家见面了 🎉 作为第一期,我们想了好久应该准备哪一些内容给大家
🤩 本周我们为大家介绍最近刚刚上线的跨链技术 IBC。如果跨链对于你来说还太过深奥,我们也为你准备了 Blockchain 101。希望读完后,你能了解区块链的定义,智能合约开发所采用的语言 Solidity,以及常见的开发工具。希望能够帮助大家获得进入区块链行业的门票。
假如你喜欢本期内容,不妨帮我们在 Substack 上点个❤️,并在下方订阅 un.Block Weekly
🔥 本周热点:Cosmos IBC 技术上线
在本周热点里,我们将为大家介绍最新的区块链技术或产品更新。帮助各位快速了解区块链生态,以及技术潮流😉
❓ 为什么需要 IBC ( Inter-Blockchain Communication )
每个区块链都是一个独立,自治的系统。它们不依赖外部信息,独立地生产区块,验证区块。起初开发者们都在以太坊上用智能合约创造自己的 DApp。这些 DApp 可以互相调用。随着需求的扩展,以太坊逐渐不能满足这些复杂的需求。常见的问题有性能瓶颈, EVM 无法满足需求,无法完全自治。因此开发者开始尝试为自己的 DApp 定制一条区块链。当这些 DApp 都建立在各自定制化的链上时,互相交流便困难了起来。区块链自治的特性成了最大的绊脚石。如何安全有效区去中心化的让消息跨链传输困扰了开发者很久。
👀 IBC 是什么
IBC (Inter-Blockchain Communication Protocol) 是 Cosmos 推出的通用跨链信息传输协议。在保证各个链自治,处理交易速度的同时,IBC 让信息和资产跨链更加的去中心化,安全和便捷。200+ 的服务和应用,超过 800 亿美金的资产采用了 IBC。IBC 就像区块链世界的 TCP/IP 协议,让区块链网络变得可能。
在 IBC 的帮助下,采用不同共识机制,网络的区块链得以互相交流,只要他们的共识机制满足 Fast Finality,即所有交易都会被快速打包,并且无法撤销,更改。
比特币和以太坊并不满足 Fast Finality,因此 Cosmos 为他们定制化了跨链方案:两条支持 Fast Finality 的定制区块链和 IBC。这两条定制链分别跟踪比特币和以太坊的状态。由于这两条定制链兼容 IBC,并且拥有比特币,以太坊的最新状态,跨链问题就此解决。
🌰 IBC:举个栗子
接下来我们用一个例子来解释一下 IBC 是如何运行的。假设我们有两个使用 IBC 的区块链,地球和 火星。我们希望从地球向火星发送一条 ”Hello World“。我们首先需要运行一个 Relayer 来进行消息的传递。Relayer 会持续检查链的状态,并在另一条链上创建包含对应消息的交易。在使用 IBC 的情况下,地球上会跑一个火星的轻量化客户端,这样地球就可以验证火星的状态,确保 Relayer 传递的信息是具有有效性和准确性。同样,火星也会跑一个地球的客户端。
与 TCP/IP 相同,两条链会先进行握手来进行身份认证,为安全的传输消息做准备。接下来我们只要在地球创建对应的 “Hello World” 消息,Relayer 会将其传输到火星上。IBC 确保数据传输的安全性。接下来便是 onAck,onTimedout 等事件的触发。
需要注意的是 IBC 只负责数据安全的传输。对于数据的序列化则需要建立在区块链上的应用进行处理
🌌 Cosmos IBC
IBC 是一种协议,目前 IBC 已经在 Cosmos SDK 中实现,未来将支持 Kepler,Substrate,Tendermint,Codechain。
Cosmos 通过 IBC 进一步壮大了 Cosmos SDK 的影响力。跨链,定制区块链开发的玩家可不止 Cosmos 一家,Polkadot 也有着自己的解决方案。有机会的话我们会向你们介绍 Polkadot 的奇妙之处。
🏫 Blockchain 101:区块链理论与开发基础
区块链 101 是面向区块链初学者的栏目,旨在向区块链初学者提供理论与技术知识,我们将会在此分享一些挑选过文章与技术文档了,从零开始逐步引导大家学习区块链以及相关技术,欢迎跟着我们的步伐一起前进。区块链的的宇宙浩瀚无边,愿你永远保持一颗好奇的心,不断地探索这个有趣的去中心化网络。
📖 区块链理论
👆 这篇文章生动的向我们讲解了为什么人们需要区块链技术以及区块链技术的基本工作原理
传统的中心化网络都由一个被人们所信任的中心化机构进行管理,人与人之间建立的互信依赖于一个第三方机构,一旦被信机构出现信任危机,将会引起社会混乱;而去中心化网络(区块链网络)就是剔除中心化机构,由全体网络成员共同管理,不再依赖第三方机构建立互信,解决了人与人之间的信任问题。
区块链网络有以下的特点;
整个网络至少需要三个人参与
全部人共同管理和监督每一笔交易记录
通过哈希算法对交易记录进行加密,网络中的全部成员参与到计算哈希签名的竞赛中,第一个算出所需签名的用户将获得奖励(这是 POW 机制,还有另一种机制叫 POS,我们下次聊聊)
网络中的其他用户将对哈希签名进行验证,验证通过后将加密的交易记录包以一个区块的形式添加到链上,一个区块中存放着交易记录、哈希签名以及上一个区块的哈希值
每个区块中的内容都是理论上都是不可篡改的,或者说篡改记录的成本极高
假如你看懂了上一篇文章的讲解,不妨再进一步,从更技术的角度去理解区块链技术中的区块连接、加密、挖矿、不可变性、区块链的治理等原理 👇
看到这里,你是否觉得区块链世界真奇妙?如果你有时间且感兴趣的话,不妨阅读 CoinDesk 的 BlockChain 101 系列文章,这些文章对区块链的讲解更系统且更深入。
🔨 区块链开发
区块链开发可以采用多种语言,其中比较热门的是 Golang、Rust,其他语言如C#、C++也可用于区块链开发。
在本环节,我们将引导你学习在 ETH(以太坊)网络上进行编程与开发去中心化应用程序(DApp)。
我们选择了较为热门同时容易上手的 Solidity 作为开发语言,它是一门面向合约的、为实现智能合约而创建的高级编程语言。这门语言受到了 C++,Python 和 Javascript 语言的影响,设计的目的是能在以太坊虚拟机(EVM)上运行。学习 Solidity,最方便快捷的方法是阅读 👉 Solidity 官方文档
Vyper 是另外一个热门智能合约开发语言,它的语法更接近Python,你也可以选择它作为你的开发语言,这是 👉 Vyper 的官方文档
假如你不知道什么是ETH、什么是智能合约,不妨先阅读以下文章👇
🧰 区块链工具分享
Remix:Solidity 的在线 IDE, 你可以用它来学习 Solidity、开发简单的智能合约 👉 IDE
Remixd:假如你想将本地项目的文件放到 Remix 中运行,最好的解决方案是使用 Remixd 这款插件 👉 使用文档|GitHub
123ETH : 一个以太坊生态资源导航,它涵盖了以太坊的方方面面,通过它你可以一览整个以太坊世界 👉 123ETH
💬 特别企划:聊聊创刊号
做出一个决定只需要15分钟,做成一期周报需要15个小时…
🧑🚀Glaze:
🆙 短短几年里,我们亲身经历了区块链的高速发展。从比特币开始,以太坊,ICO 热潮,智能合约,分布式存储,到现在的 DEFI,NFT,算法稳定币,Layer2,跨链,ETH2.0 等等。目前区块链行业正在高速发展,应用不断落地,头部公司成功融资,上市 。区块链行业有着不逊于互联网的潜力。我们拒绝互联网的内卷,投身于区块链行业的发展。我们希望帮助更多开发者了解区块链开发,帮助你们离开内卷的互联网,投身于真正需要你们的地方。(绝对不是因为区块链行业的待遇是互联网的1.5-2倍 🤑 )
🧑🚀 Jasmine:
❌🈲️ “un.Block” 的意思是无法被封禁(也可以解读为“理解区块链”),因为在去中心化世界里数据与算法都是透明的,没有垄断与极权,同时这个网络也难以被中心化组织所封禁,它有趣且充满活力。这份周报的编排计划将最新技术与入门指导相结合,为的是让区块链初心者少走弯路,同时能一览头部项目;让区块链从业者获取最新热点,同时温故知新。
P.S. 感谢在周报筹备过程中帮助过我们或给出过宝贵意见的全部朋友!Thank you soooo much !
🚏Find us
提问&纠错&反馈:
Email:unblocketh@gmail.com
LOGO 设计:WATERS
特别鸣谢:
本文非商业目的转载授权遵循 CC BY-NC 4.0 协议
版权所有 ©️un.Block Weekly 2020-2021
建议创建个官方telegram channel