区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > MANA > 正文

Chain:如何设计好用的以太坊轻客户端?_blockchainBusiness官网

作者:

时间:

原文标题:《科普|如何开发出好用的轻量级客户端,Part-1》

撰文:PiperMerriam

翻译&校对:闵敏&阿剑

大约5年前,我们开始构建Trinity——以太坊网络上的新型「轻量级客户端」。那时候Geth刚刚发布了第一版LES协议,而我们曾心怀远大的梦想。

远大的梦想往往被现实所击倒。这些年来,我们得到了一些教训:

EVM计算从根本上来说是「繁重的」。LES如同茫茫沙漠,客户端就是沙漠中渴求数据的旅人。同步并维护状态的难度过高。区块链上的历史记录在绝大多数情况下是无用的,却是必不可少的。核心以太坊协议在本质上对「轻量级」不友好。Python太慢了。我们的目标是远大的,方法是有缺陷的。现在是该从头再来的时候了。

Curve社区讨论如何分配Synthetix跨资产交易费:根据YFI创始人Andre Cronje此前发布的链接,在Curve用900万USDT兑换895.3万枚sUSD,随后利用这些sUSD在Synthetix交易所完成交易,获得6689.94枚sETH。有社区成员指出,26859美元的费用收入将分配给Synthetix(SNX)质押者。

Curve团队成员向社区征求意见,Curve跨资产互换将Synthetix作为桥梁,Synthetix将小部分交易费返给Curve,如何分配这些费用?其中列出四个选项:veCRV持有者、LP、两者都分配、两者都不分配。[2021/1/21 16:41:10]

访问以太坊协议

如果你想要与以太坊协议交互,摆在你面前的是两个选择:

Robinhood因未恰当披露如何应对高频交易机构而遭到调查:金色财经报道,股票与加密货币投资平台Robinhood因未能恰当地披露如何将客户订单发送给高频交易机构而受到民事欺诈调查。根据报告,这项由美国证券交易委员会(SEC)进行的调查已进入“高级阶段”,可能导致其遭到1000万美元的罚款。[2020/9/3]

自己运行客户端。使用?Infura?等中心化提供商的服务。上述两个选择可以满足大多数用例的要求,但是它们位于两个极端。以太坊客户端需要消耗大量磁盘空间,花费数小时乃至数天时间进行同步,而且对CPU和内存的占用通常很大。中心化提供商是一种简单可靠的方案,但是要以牺牲隐私性、安全性和去中心化原则为代价。

为什么我们不能有介于二者之间的第三种选择?互联网已经证明过很多次了,在困难模式和简单模式之间,人们往往会选择后者。

大咖零距离 | 疫情行情下 如何使用缠论量化交易:2月15日9:00,金色盘面邀请缠论大师琛实投资做客金色财经《大咖零距离》直播间,将分享《疫情行情下 如何使用缠论量化交易》,敬请关注,欲进群观看直播扫描海报二维码报名即可![2020/2/14]

自己托管邮件vs.Gmail购买DVD或CDvs.盗版盗版vs.流媒体自己运行以太坊节点vs.Infura我想过采用隐私保护型解决方案。然而,我的所有交易都是通过MyCrypto或?Metamask?完成的。这两款钱包都来自中心化提供商。它们都支持用户使用自己的节点,但是就现有的客户端来说,我认为这么做成本太高。如果我们想与这些中心化解决方案争夺市场份额,我们需要为用户提供更好的选择。

我们对客户端的要求是:

能够在资源有限的设备上运行公开标准「钱包」应用所需的API不需要同步从用户的角度来说,我希望让客户端时刻保持运行,而不会影响我的设备的性能。我希望在离线一段时间后,再上线时无需等待客户端同步。

声音 | 美国商会Julie Stitzel:美国必须以不同方式思考如何将现有监管原则应用于数字资产:据Cointelegraph消息,美国商会资本市场竞争力中心副总裁Julie Stitzel表示,美国在金融部门通过和修改法律框架的历史导致了强有力的监管结构,使市场稳定并有效管理风险。尽管数字资产市场仍处于萌芽阶段,但存在着美国可能落后的风险和担忧——错过利用新兴技术培育创新、创造就业和增长经济的机会。作为世界上最大的经济体,美国必须以不同的方式思考如何将现有的监管原则应用于数字资产——包括加密货币。对数字资产进行适当分类,并确定有权监管和监督数字资产的联邦实体,这是为创新者提供监管清晰度的一种方式。[2019/8/5]

这就是我心中的「圣杯」,是我舍命也要攀登的高峰。

钱包

我们这里讲的是如何为钱包构建一个完美的客户端。钱包无处不在,而且主要由中心化提供商支持。总的来说,钱包要满足以下需求:

追踪区块链的最新区块查看账户余额和nonce读取合约信息估算交易的gaslimit发送交易监控需要打包的待处理交易大多数钱包都采用标准化的JSON-RPCAPI。根据上述需求转化成的JSON-RPC端点如下所示:

eth_blockNumber?用来追踪链首块eth_getBalance?和?eth_getTransactionCount?用来查看账户信息eth_call?用来读取合约信息eth_estimateGas?用来估算gaslimiteth_sendRawTransaction?用来发送交易eth_getTransactionReceipt?表示交易已经被挖出如果我们更深入分析该功能的必备条件,就会得到更低一级的需求:

访问账户和合约存储以支持?eth_call、eth_estimateGas、eth_getBalance?和?eth_getTransactionCount访问gossip网络来追踪链首块和?eth_sendRawTransaction访问链上历史记录来获得?eth_getTransactionReceipt因此,如果我们可以满足这些需求,就可以构建一个适合轻量级钱包的客户端,不需要同步,也无需牺牲隐私性和安全性。

如今的以太坊网络

目前,以太坊客户端可以在以太坊协议和LESDevP2P协议之间进行选择。

LES协议采用服务器/客户端模型。在该模型中,数据会根据要求从服务器流向客户端。该协议不允许客户端通过任何有意义的方式返回数据,这点可以从协议状态看出。根据我的经验来看,LES协议中的服务器和客户端在数量上严重失衡。运行服务器的成本很高,现有服务器的数量不足。这就导致LES变得不可靠,而且经常会变得完全不可用。

以太坊协议则另有缺陷。该协议很好地达到了目的,确保网络中所有的节点都尽可能地复制了完整的历史记录和状态数据。这对客户端的要求很高。网络中的每个节点都必须保存完整的历史记录和状态。没有保存这些数据的节点不太可能保持健康的点对点连接,可能会在无法满足对等节点的数据要求时断开连接。

在本系列文章中,我们想要解构以太坊协议这一「庞然大物」。该协议包含了我们理想的客户端类型的所必备的一切功能。它的设计适合全节点和矿工,但是不适合我们所概述的轻量级客户端。

解构以太坊协议

让我们将目光转向以太坊协议……

我们需要解决这个问题。在与以太坊协议交互时,人们可选择的方式有限,而且高度依赖中心化提供商。当前的网络状态就预示了未来可能发生的情况。

我们构想了另一种适用于以太坊钱包的轻量级客户端。这一构想不只是一个想法,而是以实验、原型以及我们对现有协议不断深入的认知为基础的。

我们正在研究的解决方案需要对核心以太坊协议进行一些修改,以便支持该用例。在该系列的下一篇文章中,我将概述需要修改和新增的部分,以及我们计划如何去实现它们。最重要的是,我将讲述我自己对这一新型轻量级客户端的用户体验的期望。

标签:TRUTRUEAINChaintrustwallet安全吗True FliphichainblockchainBusiness官网

MANA热门资讯
300:杨凯:比特币持续阴跌走势 30000支撑是否实质有效_MAC

多空交易本无对错,只是在合适的时候做相应的策略,很多人发现设了止损总是会被掉,只是因为没有把握好正确的位置,勇气是控制恐惧心理,而不是心里毫无恐惧,什么都可以失去,不可以失去希望.

MAC:太平养老成功举办年金新政解读交流会_KoreCoin

为促进年金基金在新形势下健康发展,防范化解投资风险,实现基金保值增值,依据有关规定,人社部于2020年底研究下发《人力资源社会保障部关于调整年金基金投资范围的通知》,从2021年1月1日起实施.

HAI:TRUE周报-1.18-2021.1.24_truechain

TrueChaindiscovery及TrueChain2.0的技术代码开始进行第七阶段的密集提交添加新的并行交易测试用例,提高测试覆盖率增加协程.

以太坊:以太坊的回顾与展望:ETH还有想象的空间吗?_ETH

从2020年年中至今,ETH展现出惊人的上涨态势。MXC抹茶交易数据显示,截止1月27日,ETH达到1473USDT,创历史新高.

POS:火币生态链借贷龙头Lendhub 借贷价值升级下的财富密码?_以太坊交易平台有哪些

以太坊生态其实是DeFi的开端,以太坊的智能合约为早期的传统金融以去中心化的形式开展,提供了有利的环境.

比特币:以太坊历史新高 其它主流币距离前高还有多远?_以太坊价格今日行情分析

比特币市场价格报32289美元,距上轮牛市周期最高点的20089美元上涨60.73%,全球市值第二大的数字货币以太坊也在近日突破其3年前历史高位1432美元.