哇!协议和算法竟然不是一回事!千万别再说错了!

您所在的位置:网站首页 协议是怎么回事 哇!协议和算法竟然不是一回事!千万别再说错了!

哇!协议和算法竟然不是一回事!千万别再说错了!

2024-06-24 21:24| 来源: 网络整理| 查看: 265

今天距考研还有19天23时58分51秒!还没复习完的你不要慌。我又来送干货了!本博客适合学习速成的人。如果你喜欢和时间赛跑,那就关注、点赞吧,我们都是有共同爱好的人。 在这里插入图片描述

看到这个标题,有没有很惊讶!

哈哈哈,接下来就听我慢慢解释吧。

协议是掌管一个系统如何运行的一系列规则。这些规则确立了不同部分的基本功能、他们如何相互作用、以及对于良好运行所必需的条件。协议的不同部分 对时间顺序不敏感 ——首先制定哪个部分并不重要。协议也不会告诉系统该如何产生一个结果或输出,除了顺利执行之外,没有其他目标。

协议就像一辆汽车的引擎。

算法,是一组产生输出结果的指令。它可以是一段简单的脚本,也可以是一个复杂的程序。指令的顺序非常重要,而算法指定了该顺序。它会告诉系统该做什么才能达到预期结果。它可能不会提前知道结果是什么,但它知道它需要一个结果。

算法就像一辆汽车的驾驶员,它发布的指令就是驾驶员为操作汽车而做的一系列行为。

在这里插入图片描述 上面这张图中,桥是协议,自行车是协议,骑车的人是算法。

协议是一组决定系统功能的规则,算法是一组告诉系统该做什么的指令。协议定义的是“是(is)”,算法是“做(dose)”

如果在厨房中

协议就是一系列的条件和指令

刀切东西火加热橄榄油是美味的煎锅适合炒洋葱在做饭之前要洗手烧焦的食物很难吃

算法则是这样的:

切洋葱在平底锅里加热橄榄油把洋葱放到锅里,加一些盐,翻炒洋葱至半透明状

区块链既需要协议又需要算法,并且每个都有不一样的作用。

在区块链世界里,协议的作用如下:

告诉节点如何在彼此间进行交互 确定数据从一个节点到下一个节点的路线 定义区块是什么样的 规定谁决定哪些交易是有效的 明确如何确定共识 规定谁维护账本 确立决定系统规则如何变化的代表 决定是否需要身份 决定谁能创造新的币 在发生错误时触发程序

算法在区块链里扮演的角色又是什么呢?

验证签名 确认余额 决定区块是否是有效的 确定矿工如何验证区块 建立告诉区块移动的程序 建立创造新币的程序 告诉系统如何确定共识

现在你已经分清协议和算法了对吧。那么问题来了,“工作量证明”和“权益证明”是协议还是算法呢? 在很多媒体报道中,既有把它们称为“算法”的,也有把它们描述为“协议”的。

而我认为它们是算法,而不是协议。

无论是工作量证明还是权益证明,它们都是告诉矿工该如何验证区块。它们像协议一样建立条件,但指令才是基础,并且有一个很明确的输出结果:处理交易,确认哪些区块写入链上,就哪个链是正确的链达成共识。两者都是用底层协议来实现这些目标。

沿着这个思路走,比特币和以太坊是算法还是协议?

它们是协议而不是算法。

它们建立基本规则,设置“引擎”并确定谁做什么以及如何做。然后,用户利用算法来转币,执行智能合约并创建新的商业模式。算法是使协议发挥作用的根本原因。

这就是为什么区别很重要。我们需要理解状态和行为间的不同、规则和程序间的不同、能做和不能做之间的区别。我们不能改变规则(如果你想改变的话,回到原点,重新建一个新的区块链),但是我们能建立一些列的行为、指令和程序,以帮助我们得到预期的结果。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3