金色观察|比特币、以太坊地址类型及其生成机制全解析_以太坊:区块链

文/AlexR.Mead&KyleWaters,CoinMetrics加密分析师;译/金色财经xiaozou

1、前言

我们将推出名为“Foundations”的新系列。这个新系列将以浅显易懂的方式介绍区块链技术的各“技术”维度。本文,我们会从地址概念出发。首先我们将进行地址的基本介绍,然后深入研究以太坊和比特币地址的详细内容。公钥--私钥、EOA、智能合约,以及“notyourkeys,notyourcrypto”都将在本文得到详尽解释。像往常一样,我们将使用链上数据来突出关键概念,并提供重要背景帮助你更好理解。

2、加密货币地址

地址的概念可能是加密货币世界最基本的概念。不管是哪个区块链,地址都是区块链上的“身份”单位,所有的交互都以地址开始,以地址结束。无论是执行简单的转账还是使用DeFi协议进行复杂的交易,地址都是至关重要的。虽然不同链之间的地址存在着细微差异,但它们都可以用于链上资产唯一标识和分组。

接下来,我们将详细讨论以太坊地址。以太坊地址有哪些不同的类型,它们是如何生成的,如何使用的。然后我们将阐述比特币地址和比特币网络上最重要的四种地址类型。

但首先要搞清楚,“拥有”地址的是谁?

我们先来澄清一些模糊的认知:单个地址并不一定意味着单个用户。一个地址背后可能有一群人,一个人也可能有多个地址。一个地址甚至可以是一个智能合约,不被任何单个用户“拥有”。然而,地址是区块链中身份的原子单位,与地址所有者或操作者无关。但我们很快就会知道,真正的所有权属于地址私钥的管理者。

金色数藏:开启数字藏品空投、优先购资格征集活动:据官方消息,金色数藏平台将于7月8日公开发售同道大叔十二星座夏日限定《嘻哈一夏》数字藏品,今日开启数字藏品空投、优先购资格报名活动,符合要求的用户可获得同道大叔夏日版画数字藏品空投、优先购买《嘻哈一夏》数字藏品的权益,可点击原文链接查看详细信息。

金色数藏是由金色财经孵化,依托腾讯至信链为底层技术的元宇宙数字艺术文化收藏平台。[2022/7/5 1:51:38]

3、以太坊地址

以太坊地址是一个20字节的唯一序列,1字节为8bit,所以以太坊有28*20=2160种可能的地址。虽然地址长度只有20个字节,但以太坊的地址空间比IPv62128大得多,当然,“猜测”某个现有账户的私钥的成功概率是非常小的。通常,地址显示为以“0x”开头的字符串,后面是40个十六进制字符。在以太坊系统中,每个地址都对应着相关的原生加密货币余额。余额多少不等,从略高于0ETH到最大超过1900万ETH。然而,除了最大的地址余额之外,ETH分布在数百万个地址上,如下所示。在下图,我们可以看到,在总共1.2亿个ETH中,有近1亿个被余额至少为100ETH的地址所持有。

以太坊地址有两类:外部拥有账户和智能合约账户。二者区别在于EOA关联私钥,而智能合约则关联合约代码。这意味着只有EOA可以签署交易并在以太坊系统内启动计算,而智能合约必须由源自EOA的交易“激活”。

金色热搜榜:IPC居于榜首:根据金色财经排行榜数据显示,过去24小时内,IPC搜索量高居榜首。具体前五名单如下:IPC、DAC、XLM、SAFE、MTI。[2021/5/11 21:49:10]

例如,0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045是V神的已知个人EOA账户,而0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48是稳定币USDC的智能合约地址。对于像V神这样的EOA账户来说,私钥通常由商业化“钱包”管理,如MetaMask。但也可以使用其他方法进行管理,比如Python脚本或硬件钱包等。

以太坊地址从何而来?

外部拥有账户地址和智能合约地址都有不同的生成方式,涉及到一系列加密操作。事实上,这就是加密货币之所以叫做“加密货币”的一个关键原因。

EOA地址

帐户生成过程首先是生成私钥,这是一组256bit的随机数。这组随机数必须保密,因为仅私钥自身就可以完全控制地址了。这个随机数就是“notyourkeys,notyourcrypto”这句话的根源。因为如果没有这组随机数,或者如果其他人得到了这组随机数,他们就可以访问你的地址,获取与你的地址绑定的身份信息,甚至窃取你留在那里的全部的钱和藏品。

接下来,私钥用于椭圆曲线数字签名算法的输入。顾名思义,该算法使用椭圆曲线生成另一组长度为512bit的数字,称为公钥。这两组数字统称为公钥/私钥对。

金色午报 | 12月12日午间重要动态一览:7:00-12:00关键词:COMP、 摩根溪、YFII、Flare Network

1.针对发放COMP补偿的32号提案,Compound创始人选择弃权;

2.摩根溪联合创始人:BTC价格达到50万美元 市值将等同于黄金市值;

3.印度执法局逮捕一名涉嫌参与在线的加密交易员;

4.YFII启动DFI 2021计划:Unisave将成为YFII合并计划的首个项目;

5.委内瑞拉拟针对加密挖矿行业制定新电价标准;

6.Flare Network已完成Spark代币的快照;

7.灰度BTC信托增持7615.64枚,上升1.38%。[2020/12/12 14:59:43]

最后,使用Keccak256函数计算公钥的哈希值,产生另一个256bit序列。然后截取保留该序列的最后20字节或160bit,这就是以太坊使用的地址。下图图解了这个过程。

这个过程可以通过多种方式完成,但是,大多数用户选择广泛适用的“钱包软件”或开源软件来生成和管理他们的私钥。从技术上讲,除了生成和管理私钥和地址之外,EOA通常由一个人、一群人或具有关联私钥访问权限的专业保管人控制。该私钥用于签署交易,这是将ETH发送到另一个EOA账户或智能合约的关键步骤,私钥必须保密并进行高度安全的妥善保管。我们在下文讲到冷钱包时会进行更多相关探讨。

金色晚报 | 2月25日晚间重要动态一览:12:00-21:00关键词:俄罗斯首富、加密货币税务、提案

1.海淀成立领导小组开展区块链技术服务政务领域系列工作。

2.新西兰国税局计划取消对加密货币的消费服务税。

3.俄罗斯首富Vladimir Potanin将推出其区块链平台和代币。

4.新加坡上诉法院驳回Quoine交易所上诉 因其非法逆转交易。

5.Bithumb内部人士回应收购BitMax合约:没有收购只是财务投资。

6.EOS Nation多签提案setinflation已获得全票通过。

7.V神对ProgPoW提案“先斩后奏”的方式表示批判。

8.嘉楠科技遭集体诉讼 被指违反证券法。

9.CoinMex将关闭所有币种的资产充值及提现。[2020/2/25]

智能合约地址

EOA是在以太坊上使用区块链的第一步,无论是在简单的转账交易中发送ETH,还是与智能合约进行交互。然而,EOA还执行一个特殊功能,那就是智能合约部署。在智能合约的部署过程中,产生了第二种以太坊地址类型。

该过程首先将一些编译后的EVM兼容字节码插入到一个交易中,该交易被发送到“特殊”部署地址0x0。然后,以太坊协议本身使用一种结合EOA部署公钥及其nonce的算法。

更具体地说,将地址和nonce连接起来,然后将递归长度前缀序列化。生成的字节序列再通过Keccak256计算得出哈希值,取最后的20个字节作为智能合约地址。

金色财经独家分析 谷歌:大数据区块链一相逢 便胜却人间无数:日前消息谷歌提交新的区块链技术保护用户数据安全性,与各大巨头一道争相布局区块链,在谷歌chrome浏览器也十分欢迎非挖矿功能的区块链扩展应用。今日三位杰出的前谷歌成员还组建了xGoogler区块链蓝面,为感兴趣的辛劳谷歌员工建立了新社区,谷歌在互联网时代的上一站实现了巨大成就,同时拥抱区块链也实现了与其自身优势的“大数据”的结合,更有利于寻找大数据、人工智能与区块链的结合点,寻找技术结合带来的新“化学反应”。金色财经认为,大数据和人工智能已经很好的解决了“记什么账”、“怎样记账”的问题,现在,区块链解决了记账的真实性,技术一相逢,还原了一个真正的现实世界。[2018/4/16]

智能合约地址是非常重要的信息,因为它们是交易与合约交互的入口。例如,如果想要在UniswapV2上进行代币互换,那么工厂合约地址将非常重要,0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f。

量化以太坊地址

如上所述,以太坊有2160种可能的地址总数,下图显示了这些地址中目前链上所见数量。图中,地址按类型分组,显示了近1亿个EOA账户的ETH余额非零,智能合约账户超过3000万个。虽然这些都是相当大的数字,但与可能的总数相比,是微不足道的,这对以太坊用户来说是个好消息,可以放心,我们离耗尽地址还远着呢。

4、比特币地址

相较以太坊,比特币地址有更多的细节需要解决。首先来看地址类型,比特地地址类型其实主要有四种:Legacy、Pay-to-Script-Hash、Segwit和Taproot。尽管比特币使用不同的会计方法——未消费交易输出模型——来跟踪链上的加密货币,但我们将重点关注下面几种不同的地址类型。

Legacy地址

这些地址包括比特币系统原始部署中使用的地址,并且很容易识别,这些地址是以“1”开头的。它们的生成方式与以太坊地址的生成方式非常相似,从公钥/私钥对的生成开始。

然后像以太坊一样,计算公钥的哈希值,但使用的是SHA-256算法。所得的256bit序列随后使用RACE原始完整性校验消息摘要再次计算哈希值,得到20字节的序列。回过头看,这个过程与以太坊非常相似,但是,显示为文本形式时,比特币通常使用的是Base58CheckEncoding。这意味着20字节序列使用58个字符编码,而非十六进制编码中使用的16个字符。基本上,存储在计算机内存中的相同的160bit的0、1序列会通过一组16字符或58字符呈现到屏幕上。当然还有很多其他编码,但这是特别为比特币选择的编码。

Pay-to-Script-Hash地址

P2SH地址以“3”开头,从技术上来说属于脚本,可用于要求多重签名的转账事宜等。比特币的“Pay-to-Script-Hash”的真实性质超出了我们的探讨范围,但简单来说,P2SH地址是使用Base58Check对脚本代码哈希进行编码。因此,可以将P2SH地址概念化为脚本的20个字节哈希的编码,类似于公钥的20个字节哈希的编码。

SegWit和Taproot地址

为了提高区块空间的效率并改善费用,SegWit在地址的构造方式上引入了一些变化。具体的算法细节计较乏味,因此我们在这里跳过细节,但是人们可以轻松地一眼看到这些以“bc1”开头的新地址。除了SegWit之外,以“bc1p”开头的Taproot地址进一步提高了交易效率,并提供了更好的隐私性。

与以太坊类似,下图显示了按地址的总余额大小汇总的比特币总余额。与以太坊类似,绝大多数比特币由价值最高的那些地址持有。然而,仔细检查数据以更好地理解分布结构是非常重要的。

5、关于加密地址的更多内容

除了地址生成机制外,还有一些关于地址的其他概念我们应该理解,包括:热/冷钱包,以及VanityAddress和ENS。

热钱包和冷钱包

加密货币资产“存活”在区块链本身上,或被存储为原生第一层货币,或被存储于智能合约余额账本。区块链本身可以被视为存储在各自网络节点中的分布式数据库。这意味着用户并不托管加密货币,而是托管与各个区块链上各自地址关联的私钥。因此,真正的私有信息必须保证安全,因为这些私有信息就是与地址相对应的私钥。

在加密世界中,存储私钥的方法主要有两种:热钱包和冷钱包。二者很容易区别:热钱包是连接互联网的私钥存储系统,而冷钱包是没有连接互联网的系统。完全断开与互联网的连接使私钥得到更安全的保护。想要获取私钥,必须先获取冷钱包设备。总而言之,存储在钱包中的不是加密货币本身,而是与区块链上余额地址相关联的私钥。私钥管理越来越复杂,现在越来越流行一种数字资产安全方法,那就是多方计算,多方计算将私钥分解为加密共享数据分配给多个参与者。

VanityAddress和ENS

VanityAddress和其他地址一样,但是,该地址的某部分将超出意料中的随机性。前几个字符可能会拼出一个英文单词、短语或名称,比如Legacy比特币地址:1googLemzFVj8ALj6mfBsbifRoD4miY36v。这些地址可用于更轻松地识别交易对手方,并可用于品牌宣传和营销。这些地址的生成过程得到了几个开源项目的支持,例如Vanitygen。然而,应该注意的是,这个过程可能需要非常密集的计算资源,因为它需要一个“guess-and-check”类型的算法。谨慎的做法是,不要轻信在线工具去获取vanityaddress,因为它们也会获取你的私钥副本,正如那句话所说的,“Notyourkeys,notyourcrypto.”。事实上,去年在“Profanity”以太坊vanityaddress地址生成器中就有一个漏洞被利用了。

作为一个正式的系统,为了不必须生成容易记忆的vanityaddress,以太坊有一个叫做以太坊域名服务的应用程序,就像域名系统简化了传统互联网的访问一样。与URL非常相似,用户可以购买以“.eth”结尾的自定义名称,智能合约创建这些标签的记录,这些记录在链上公开可用。借用上文提到的V神的例子,我们可以看到他的ENS名称是vtalik.eth。ENS名称,就像URL一样,让以太坊区块链更加用户友好,因为字母数字组合比20字节序列更容易记住,这增强了网络的便利性和安全性。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

水星链

[0:0ms0-0:602ms