本文是PolkadotWiki的“了解抽象-外部”部分。PolkaWorld正在一步一步地翻译PolkadotWiki并在PolkaWorld官方帐户上序列化。
外部信息是来自链外部的信息,包含在块中。外部信息可分为三类:内部信息、已签署交易和未签署交易。
注意,事件(eents[1])不是外部信息。链向链本身固有的信息片段发送事件。例如,分段奖励是事件,而不是外部行为,因为奖励是由链逻辑中固有的情况触发的。
块状结构
基片中的块由块头和外部信息数组组成。块头包含块高度、父哈希、外部信息根、状态根和摘要。本节只关注外部根。
当每个外部信息在运行时定义时,它被捆绑在一起作为一个序列执行。外部信息根是本系列的密码分析摘要。这有两个目的。首先,它防止在块头形成和分发之后对外部信息序列进行任何更改。其次,它为轻客户机提供了一种方法,只需知道块头,就可以验证块中是否存在任何给定的外部元素。
块参考[2]
固有的
固有信息是未经签名的信息,仅由阻止程序插入到块中。它们不会去中心化在网络上,也不会存储在事务队列中。从技术上讲,没有什么能阻止底物链传播固有的内容,但不会有基于成本的垃圾邮件预防机制。
固有信息是指以一种特殊的方式描述许多有效信息中的一种。它们之所以被认为是“真实的”,只是因为足够多的核查人员认为它们是合理的。
例如,阻止程序可以在块中插入时间戳。无法证明签名是真实的,时间戳是正确的。然而,验证器可以根据由其他验证器考虑的时间戳的合理范围来接受或拒绝块,这可以是时间戳在其自身系统时钟的可接受范围内。
参考文献[3]
已签署交易
已签名的交易包含发出交易的帐户的签名,并且需要收取费用才能将交易包括在链中。由于签名交易的价值可以在执行前识别出来,因此这些交易可以分布在网络上垃圾交易风险较低的节点之间。
签名事务符合HT3或HT2事务的概念。
已签署交易
在某些情况下,您需要进行未签名的事务。注意未签名事务,因为它们的验证逻辑可能很困难。
因为交易没有签字,所以不收费。因此,交易队列缺乏防止垃圾交易的经济逻辑。签名事务中还缺少随机数,这使得重放保护变得困难。少数事务需要使用无符号变体,但它们将需要某种形式的垃圾邮件事务保护,这种保护基于签名扩展[4]的自定义实现,该扩展可以存在于未签名事务中。
基板中未签名事务的一个例子是由权威机构发送的“我在线[5]”心跳事务。交易包括来自会话密钥的签名,该签名不控制资金,因此无法支付费用。事务池通过检查是否在会话中提交了心跳来控制垃圾事务。
签名扩展
签名扩展是允许您使用其他数据或逻辑扩展事务的功能。签名扩展可以在任何需要在执行之前获取有关事务的信息的任何地方使用。这在事务队列中被广泛使用。
运行时可以使用其中的一些数据,例如要调度的调用来计算事务成本。签名扩展还包括additionalsigned类,它可以保存任何编码数据,从而允许您在包含或调度事务之前执行任何自定义逻辑。事务队列定期从signedextension调用函数,以在构建块之前验证事务,以避免包含将在块中失败的事务。
尽管它被称为签名扩展,signedextension也可以用于验证未签名的事务。利用unsigned方法集封装事务池所需的验证、垃圾邮件和重放保护逻辑。
有符号扩展引用[6]
阅读更多
对比文件[7]
运行时执行[8]
交易成本[9]
交易池[10]参考
[1]
事件:HTtps://substrate.de/docs/en/knowledgebase/runtime/eents[2]
块参考:HTtps://substrate.de/rustdocs/2.0.0-rc4/sp运行时间/特征/特性。块. HT毫升[3]
参考文献:HTtps://substrate.de/rustdocs/2.0.0-rc4/sp固有/索引。HT毫升[4]
烧焦分机:HTtps://substrate.de/docs/en/knowledgebase/learn-substract/extrinsicssigned-扩展[5]
我在线:HTtps://substrate.de/docs/en/knowledgebase/runtime/frameim-在线[6]
签名扩展参考号:HTtps://substrate.de/rustdocs/2.0.0-rc4/sp运行时间/特征/trait.SignedExtension. HT毫升[7]
参考文件:HTtps://substrate.de/rustdocs/2.0.0-rc4/sp运行时间/特征/特质。外在的. HT毫升[8]
运行时执行:HTtps://substrate.de/docs/en/knowledgebase/runtime/execution[9]
交易成本:HTtps://substrate.de/docs/en/knowledgebase/runtime/fees[10]
交易池:HTtps://substrate.de/docs/en/knowledgebase/learn-substrator/tx-pool
原文:HTtps://substrate.de/docs/en/knowledgebase/learn-substract/extrinsics
翻译:波尔卡世界
文章标题:什么是外部信息Polkadot wiki
文章链接:https://www.btchangqing.cn/66793.html
更新时间:2022年10月14日
本站大部分内容均收集于网络,若内容若侵犯到您的权益,请联系我们,我们将第一时间处理。