广告

以太坊中的网络地址

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

在与 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小时热点

在元宇宙概念推动下虚拟数字人市场迅速升温

区块链网专职打假记者郭一凡报道:近段时间以来,在元宇宙概念推 ...

14121

CoinMarketCap

KSM质押流动性方案:rKSM

在StaFi rKSM产品上线之前,这张图片可以帮助你更好地 ...

44293

bitFlyer交易所

Chaince交易平台涉嫌非法传销?

Chaince交易平台涉嫌非法传销现象的问题是一个很棘手的问 ...

8411

聚币网

元宇宙可能会推动个人逐渐数字化

2021年是元数据元年,这是一个具有全球影响和深入讨论的概念 ...

20058

币王

AME币(AMEPAY)挖矿软件?

AMEPAY 发布了一款基于AME币(AME)网络的挖矿软件 ...

6605

热币Hotcoin

“Artpro”数字藏品(NFT)简介

ArtPro作为一种数字藏品(NFT),是一种将元数据与图片 ...

33553

CollinStar

在 Polkadot 中如何进行 Staking?

Polkadot 使用 NPoS(提名权益证明机制)作为选择 ...

56096

区块链弊端

向25个项目捐赠100万美元的以太坊基金会是谁?

2月10日,以太坊基金会宣布已向与以太坊 2.0 质押相关的 ...

24106

以太坊币今日价格

“元链”数字藏品(NFT)简介

左右 元链数字藏品(NFT)是基于区块链技术的数字资产。它 ...

37654

BscScan

美联储最大的股东是什么人

美联储的最大股东是美国政府。美联储是一家独立美联储央行,受美 ...

79358

文昌链
广告

热点专题

NFT艺术品到底是什么?

Beeple,“EVERYDAYS: THE FIRST 5 ...

2298983

Opera House

最全的NFT发展史

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

1740177

iBox

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

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

1262592

Magic Eden

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

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

1138727

Bitstamp交易所

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

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

992710

区块链博客

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

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

895907

DCG区块链孵化器

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

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

794741

CoinBene满币网

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

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

792024

BitKeep钱包

元宇宙平台合法吗

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

731622

T网

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

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

701712

QuillAudits