广告

以太坊中的网络地址

科普:以太坊中的网络地址

在与 Felix Lange 讨论之后,我认为攥写这篇关于在以太坊生态中遇到的各类网络地址及其差异的文章是很有意义的。我自身对它们理解也存在着些误区,因而觉得对其进行阐述会很有价值。

多地址(Multiaddr)

让我们从最早或按 commit 时间来看最早被归档的多地址 (Multiaddr[1]) 开始。多地址是 Protocol Labs 的多格式项目(multiformats project)的一部分。多格式本质上是自描述值的各种规范。由于被广泛用于libp2p,IPFS 以及其它 Protocol Labs 的项目,你可能早就听说过它们。

多地址有两种表示形式:一种是存储或传输时使用的二进制表示;另一种是提供给用户的可读格式。

/ip4/127.0.0.1/udp/1234

上面展示了一个以可读格式表示的多地址。该多地址是一种以键值对来表示地址的可递归格式。(笔者注,地址可表达为{, })。二进制表示也是相同的——有一个字节数组表示键,还有一个用于表示值。键可以通过协议表[2]从可读形式映射为代码形式。

enode

接下来就是enode[3]。enode并不是真正的网络地址格式而是 url 格式。由于 enode 是 ENR 的前身,我们仍会介绍它。一个 enode URL 如下所示:

enode://6f8a80d6ad92a0@10.3.58.6:30303?discport=30301

enode体系被用于表示URL。enode://后面跟着一个十六进制编码的节点ID。接下来,@符号后面表示的是主机,其必须为一个IP地址。主机后面列出了TCP端口,在我们的例子中为30303。若UDP和TCP的端口不同,UDP端口可通过在末尾添加discport参数来指定。

ENR

最后我们来介绍 ENR[4](以太坊节点记录)。ENR很有趣,原因在于其皆使用了前两种类型(多地址和enode URL)的特性,使得它变得十分通用。ENR的主要动机是允许转发过程中携带更多的信息,因而引入了节点记录。节点记录是自证的,而且节点可通过签名来鉴别身份。这些记录被表示为一个RLP列表[5]——此处我不会进行详细介绍,但稍微提及一下,RLP是以太坊使用的一种序列化格式。

节点记录包含了一个签名,序列号与一个表明用于创建和验证签名的身份认证机制所需的字段。最后,记录的其余部分包含了任意键值对,这些键值对可包含诸如连接信息之类的东西。EIP定义了一些具有预定义含义的键,如ip,其为4字节表示的节点IPv4地址。

签名被用于通过确保传递的公钥为创建签名所使用的公钥来验证记录。

如果同一个身份签发了2个不同的记录,那么序列号可用于解决冲突:规定使用序列号较大的记录。

需要注意的是,节点记录的RLP编码版本号不能超过300字节。

该格式是面向未来的,新键即使在部分客户端不能解析的情况下仍能被添加,以及新的身份认证机制可被添加以检验签名。

ETH 2.0

现在,让我们来看看 Eth2.0。在 Eth2.0 之前,以太坊中从未使用过多地址,而其现在变得非常重要。为什么?因为 Eth2.0 使用 libp2p,而 libp2p 又使用多地址来识别节点。

那么,我们该怎么处理这种情况呢?Eth2.0 的 P2P规范[6] 展示了2种方案:

1,多地址可从ENR导出

2,由于ENR能够添加任意键,多地址能被包含在ENR中。

希望本文能够给出一个关于不同的网络地址是什么,这些地址间的区别,工作方式以及用途的精简概要。

24小时热点

首届ChinaJoy Plus

2020年第十八届中国国际数码互动娱乐展览会(ChinaJo ...

31097

BockChain

以太坊会因EIP1559分叉吗?

行情扑朔迷离,干脆囤U吧,最近以太社区闹得厉害,说不定以后真 ...

34546

区块链技术的缺点

三级火箭推进理论

本文提出一种新颖的市场观察方法,命名为三级火箭推进理论。这个 ...

38195

量子链区块

VNT币(Vanta Network)怎么买?

VNT币(Vanta Network)是一种基于区块链技术的 ...

1309

区块链网快讯

APIX币(APIX)期权?

APIX币是一种分布式加密货币,被设计用于支持金融服务生态系 ...

12667

热币Hotcoin

NFT(即非同质化代币)的10个热门项目

NFT即非同质化代币,是基于区块链技术的一种资产类型。它代表 ...

98228

DeFiance Capital

元宇宙平台合法吗

现在,元宇宙平台备受热捧,但有人质疑其合法性。在此,我们将对 ...

710307

T网

区块链核心算法解析

1、水龙头:水龙头是指一种用于将分散的所有人参与到区块链网络 ...

23178

CollinStar

迷因币PUMP预售募资2.8亿美元 资金将流向何处ICO新币集资?

Dogecoin20推出创新迷因币,它未来是否能成为下一个狗 ...

28730

Business2Community

十大传销盘之:MASK币

MASK币 女装大佬开的项目,价格已经惨不忍睹 ...

95934

中国虚拟币排名
广告

热点专题

NFT艺术品到底是什么?

Beeple,“EVERYDAYS: THE FIRST 5 ...

2292761

Opera House

最全的NFT发展史

当我们理解一个新生事物,必须要首先了解其起源,通过对其源头以 ...

1735595

iBox

“华英会”诈骗圈钱5000亿!崩盘后将会凄惨无比

“华英会”崩盘的预警已多次发出,尽管尚未正式宣布崩盘,但大家 ...

1255080

Magic Eden

什么是IDO?这种模式会带来怎样的影响?

要理解IDO(Initial DeFi Offering)初 ...

1135535

Bitstamp交易所

有黑客采取新型 USDT 假充值手法

根据慢雾区情报,有黑客采取新型 USDT 假充值手法,黑客采 ...

988984

区块链博客

4种利用永续合约资金费率套利的策略

下文将介绍在保持市场中立的条件下,如何从永续掉期资金费率中套 ...

887602

DCG区块链孵化器

国内NFT平台是怎么赚钱的?

2021年被称为NFT的“元年”,互联网巨头、各大企业、艺术 ...

789522

CoinBene满币网

链圈百科:韩国政府机构组织图

一、行政院 韩国行政院是一个由政府的行政机构组成的中央政府 ...

768060

BitKeep钱包

元宇宙平台合法吗

现在,元宇宙平台备受热捧,但有人质疑其合法性。在此,我们将对 ...

710307

T网

宝二爷郭宏才的乘风破浪之旅

10年后的比特币会涨到10万美元吗?宝二爷说过:“先吹吹牛B ...

697087

QuillAudits