主页 > imtoken国内下载 > 社区互动 | 看不懂aelf白皮书?因为你不懂

社区互动 | 看不懂aelf白皮书?因为你不懂

imtoken国内下载 2023-01-26 06:24:29

不久前,社区用户代表Ace介绍了aelf宾果游戏的demo,一款测试类DApp。 本文将介绍aelf区块链项目。

在上一篇文章中,我们提到了真随机数生成器,它用于生成0-255之间的随机数。 不可预测,满足可信度需求,但这只是aelf众多技术的冰山一角。 在BingoGame DApp中比特币内行话,我们也可以看到,对于其他的交互逻辑,后台的原理其实和一般的区块链智能合约是一样的。 不过这个DApp并不需要用到aelf的所有技术,因为它真的很简单。 aelf的真正用处在于强大的匹配性能和独特的设计,可以支持企业级应用。 对于一个刚接触aelf项目的人来说,如何理解这些技术细节呢? 最好的方法是阅读项目官方提供的白皮书。

sitetuoluocaijing.cn 现在比特币价格行_比特币内行话_比特币怎么比特币钱包

如果你看过其他一些区块链项目的白皮书,你会发现这些白皮书并不好读,甚至不知道是什么意思,更别说理解这个项目的实际意义了(当然前提是,你不是为了炒作。来了)。 事实上,任何一个区块链项目的发起者都认为所有的读者都是专家,应该理解项目的内涵,否则就是读者的问题。 但是,由于大多数区块链项目的机制都比比特币复杂得多,如果读者只了解比特币的原理,仍然无法看懂其他项目的白皮书。 因此,为了吸引潜在的开发者去了解区块链项目的白皮书,项目团队应该为这些新手提供适合他们理解水平的白皮书通俗解读,可谓是按部就班授课。以他们的资质。

sitetuoluocaijing.cn 现在比特币价格行_比特币怎么比特币钱包_比特币内行话

因此aelf也会为开发者准备白皮书的解读。 在此之前,你可以打开aelf官网浏览,看看aelf官网首页的宣传视频,看看slogan,再下载白皮书看看。 想必你很快就会看到看不懂的内容。 不过没关系,我们可以从项目的slogan说起,因为对于任何一个项目来说,slogan是它最想向用户展示的特征:

aelf,去中心化云计算区块链网络

在aelf的区块链生态中,云计算是区块链运行效率的驱动力。 因为让多台计算机分担这个计算显然比让一台大型机进行高强度计算更划算。 如果像亚马逊这样的公司把成千上万台这样的计算机放在一个叫做“数据中心”的地方,那么我们可以说这些数据中心形成了一个云(Amazon Cloud,AWS)。

但即便如此,初学者还是很难理解为什么云计算对于aelf项目来说是一个不可替代的优势。 因为包括区块链从业者在内的很多人对区块链的很多关键原理的理解存在偏差,就像一门学科的基础知识不扎实一样,如果想了解更高层次的复杂技术,就一定会感到一头雾水,举步维艰。更不用说了解区块链项目的特点和潜力了。

比特币怎么比特币钱包_比特币内行话_sitetuoluocaijing.cn 现在比特币价格行

目前,我认为以下两个区块链的概念原理需要特别纠正。

1、什么是区块链?

这乍一看好像是胡说八道,谁没有天天被教区块链是什么? 它不是分散的、不可变的账本或数据库技术吗? 你甚至把这句话背熟了,每当有人问你的时候比特币内行话,你都会用这句话回答他……但是,这个区块链解释是非常误导人的。

首先,区块链不是什么新技术,没有神奇的特性和技术(比如神奇的“不可篡改”),与炼金术士的炼金炉里的神奇物质不一样。 与其关注区块链的账本和数据库特性,不如说区块链是一个“分布式系统”,让人抓住本质。 那么什么是分布式系统呢?

比特币怎么比特币钱包_比特币内行话_sitetuoluocaijing.cn 现在比特币价格行

比特币怎么比特币钱包_sitetuoluocaijing.cn 现在比特币价格行_比特币内行话

分布式系统就是很多台相互连接的计算机,自然是点对点的。 它是在 1960 年左右发明和使用的,但互联网是在十多年后发明的。 其实现在已经有很多分布式软件,都是比区块链更早的,比如Bit-torrent、Netflix等等。 在这些分布式系统软件中,用户会在他的计算机上存储一些文件。 如果他把这些文件上传到这个点对点网络中,只要网络中有人想要这个文件,他就可以随意下载。 但是分布式系统不仅仅关心这些。 在分布式学科中,人们需要解决一个问题,即对于网络中的每一台计算机(节点)来说,无论它接收到什么信息,网络中的所有节点都必须做出统一的决定。 “统一决策”就是我们熟悉的“共识”,这个问题就是著名的“拜占庭将军”问题。

从前,有三位身处不同职位的拜占庭将军,他们要率领各自的军队攻打同一座城市。 因为他们身处不同的位置,只能通过使者来传递信息。 在这种情况下,每个将军只能根据从另外两个将军那里得到的信息内容做出决定:进攻还是撤退? 如果其中一个武将要进攻,他会将攻击信息传递给另外两个武将,另外两个武将收到这个信息后也会互相传递信息。 如果三位将军心意一致,则每位将军都会收到“进攻,进攻”等组合信息,这样三位将军都将攻城略地,取得胜利。 但如果其中一位将军是叛徒,他可能会向一位将军发送进攻消息,并向另一位将军发送撤退消息,则后者将收到“进攻和撤退”的组合。 服从多数决原则,他显然没有办法决定进攻还是撤退,因为进攻的票数和撤退的票数是一样的,都是1票。 与此同时,其他武将也会进攻,结果就是三位武将并没有做出统一的进攻决定。

上面所说的通用是对分布式系统(即区块链)中节点的比喻。 所以我们至少会意识到两件事:第一,所有消息(即交易)都需要传达给所有其他将军(节点),让他们知道消息; 其次,所有节点必须一致行动。 第一个意思是对于一个比较大的分布式网络,将消息传递给每个其他节点效率不高; 第二个意思是在一个新的区块被打包广播之后,需要有一种机制让所有的节点都同意这个唯一的区块,而这并不是一个省时的任务。

比特币内行话_sitetuoluocaijing.cn 现在比特币价格行_比特币怎么比特币钱包

2. 什么是智能合约

许多解释智能合约的书籍、文章或视频都会对开发者造成很大的误导。 他们通常说智能合约是新一代的法律条约、合同或所有权证明等,因为这种智能合约是由代码组成的,因此具有很高的智能性。 但是,这些说法是针对外行(金融或其他行业)的,他们不懂代码和计算机科学,所以区块链人只是想说外行能看懂的,让他们觉得智能合约很高级(在一个感觉,这是一件好事)。 但究竟什么是智能合约?

事实上,智能合约既不是智能也不是合约,它只是一段代码。 那么为什么人们将这段代码称为智能合约而不是更直观的名称呢? 只是因为之前都是这么叫的,程序员又懒,就一直这么叫。 智能合约是用python或者java代码这样的高级语言编写的,必须编译成字节码,然后让虚拟机一条一条的运行指令。 您可能已经了解 JVM 和 Python-VM 或以太坊特定的 EVM 之类的东西。 aelf区块链项目,我们使用C#编写智能合约,编译后运行在.NET框架上。

想要触发智能合约的执行有点类似于发出http请求。 在传统的请求过程中,你输入一个URL告诉远程服务器给你发送一些数据(html、css、javascript等),或者让服务器执行一些服务器端的代码来改变服务器的一些状态,比如作为java,对智能合约也是如此。 与请求一样,我们总是将交易发送到目标智能合约地址,无论它是否需要加密货币。 当合约收到交易调用时,它会被触发执行其中的某些方法。 至于这些方法需要的参数,就看你在向智能合约发送交易时会携带哪些参数了。 如果gas充足,智能合约在执行后会改变自身的一些状态,返回一些结果数据给你,或者给你发送一些虚拟货币。

比特币内行话_sitetuoluocaijing.cn 现在比特币价格行_比特币怎么比特币钱包

sitetuoluocaijing.cn 现在比特币价格行_比特币怎么比特币钱包_比特币内行话

不同的是,当你向远程服务器发送请求时,它会立即给你响应,但如果你向智能合约发送交易,智能合约需要一段时间才能执行。 我在 BingoGame 的文章中已经提到,当你发送一笔交易时,这笔交易会被广播到分布式系统中尽可能多的节点,每个挖矿节点都会将它包含在它的候选区块中,过一段时间后,当一个挖矿节点产生一个新的区块,它会将这个区块广播给其他节点,当然这个区块是被认可的。 你会发现这个过程是需要时间的,而且对于很多实际应用来说,仅仅产生这个新区块并不能保证这笔交易的安全性和有效性,所以在这个区块之后,还需要不断地产生更多的区块,就是这种情况aelf区块链。 当然,当一个包含交易的区块被挖矿节点打包后,如果满足一定的共识条件,智能合约会被分配给一个全节点执行(全节点可以是挖矿节点,反之亦然)。 但它之后只会产生越来越多的区块,通过分叉篡改这个智能合约执行结果的可能性将无限趋于零。

在 BingoGame 的例子中,“下注”按钮实际上是智能合约的一个方法。 当我们下注时,我们实际上是在向这个合约发起交易。 当一个区块被打包后,这个智能合约的方法就开始执行,这样合约就会知道你要下注多少。 为了让合约始终知道你这次下注的金额,而不是被恶意的人更改,你需要等待接下来的几个新区块产生,这样交易才真正得到确认。 这个过程需要多长时间? 这个时间就是之前文章和视频中提到的“等一会,或者说30秒”。 事实上,没有人知道接下来几个新区块生成的确切时间,但我们知道的是,30 秒足以生成这些区块。

有了这两个基本认知,再去理解包括aelf在内的任何其他区块链项目都会容易很多。 不管一个区块链项目使用什么高端技术,有了这些基础,这些技术就会变得通俗易懂。

在下一篇文章中,我们将介绍aelf白皮书的内容,并讲解aelf这个超级企业级项目的所有重要特性。 期待在下一篇文章中见到你!