科普:以太坊合约交互中的“授权”究竟是什么?_TOKEN:RC2

作者:NEST爱好者_CryptoV12有关「授权」操作,很多以太坊新用户在第一次操作智能合约遇到时都是一头雾水。不明白什么是授权,更不明白为什么授权还要发起一笔交易,而且交易本身没有携带任何资产,同时还要去支付一笔矿工费。本篇文章,我们将从技术的角度为大家解读一下「授权」操作的本质。用户在与以太坊智能合约进行Token资产交互时,首先要进行授权操作。那么,为什么要有授权操作呢?

比特大陆再次起诉神马矿机与杨作兴侵犯商业秘密:4月7日消息,比特大陆科技有限公司(简称为比特大陆公司)以杨作兴及其创办的深圳比特微电子科技有限公司(简称为比特微公司)、深圳比特微电子科技有限公司北京市分公司(简称为比特微北京公司)作为被告,向北京知识产权法院提起了侵犯商业秘密诉讼,诉讼标的额9900万元。

北京知识产权法院已正式受理此案。一篇发布于知产财经文章称,杨作兴曾为比特大陆公司员工,从2015年初全面参与当时新一代芯片研发。2016年5月,芯片研发结束,3个月后杨作兴在未办理任何离职手续和交接资料的情况下擅自离岗。2016年7月(离岗前),杨作兴已经创办了深圳比特微电子科技有限公司,并在成立后的不到5个月内,比特微公司即完成了芯片设计并且正式流片。2017年4月,比特微公司的神马M3矿机即开始量产上市。比特微公司在如此之短的时间内便完成了从设立公司、芯片设计、流片,到矿机的量产等一系列复杂的流程,明显不符合正常产品的研发周期,且比特微公司当时生产的神马矿机产品和比特大陆的产品非常相似。2019年,比特大陆公司以杨作兴和比特微侵犯商业秘密为由,请求机关对杨作兴等主体采取刑事措施。据了解,此次比特大陆公司发起侵犯技术秘密侵权诉讼,目的是要求杨作兴及比特微弥补其侵权行为带来的经济损失,同时要求其停止侵犯商业秘密。(吴说区块链)[2021/4/7 19:55:47]

TAAL宣布将购买5000台升级的神马M30s矿机:12月22日,TAAL分布式信息技术公司(TAAL)宣布已与一家加拿大提供商达成协议,将购买5000台升级的神马M30s矿机,已提高算力,加速公司扩展计划。(PR Newswire)[2020/12/22 16:08:13]

我们举一个NEST预言机矿工报价的案例:Bob是一名NEST预言机报价矿工,他在参与ETH/USDT价格预言机报价时,需要按照自己的报价数据往报价合约中同时转入ETH和USDT资产,这里假设是10ETH和1600USDT,去进行一次报价操作。那么Bob首先要将USDT资产进行一次授权操作,授权给NEST预言机的报价合约,让报价合约拥有操作Bob钱包中USDT资产的权限,以便在报价生命周期内有验证者吃单时顺利执行涉及到USDT资产的交易逻辑。这里的授权本质上也是一笔链上交易,需要用户支付矿工费。目的是为了告诉USDTToken合约,目标智能合约A拥有支配我钱包X数量USDT资产的权限。然后,当目标合约A内需要去进行USDT交易的时候,它就会主动去从USDTToken合约中获取不高于X数量的USDT资产。但在上面这个案例中又出现了另一个疑惑,为什么在报价过程中,只有USDT这类的ERC20Token需要进行授权操作,而ETH不需要呢?技术解析:因为ETH作为以太坊网络原生资产,在向目标智能合约转账时,以太坊网络底层强制要求目标合约要有确定的接收方法,所以交易本身可以携带ETH资产到目标合约中;而ERC20Token在向目标合约转账时,只是更改ERC20Token合约本身的账本信息,目标合约不会收到任何通知。所以,ETH在与智能合约进行价值交互时不需要像ERC20Token那样进行授权操作。准确来说,授权操作有2步:第1步:授权交易本身。是为了告诉某ERC20Token合约,将来可能会有目标智能合约地址A来我的钱包账户取走X数量的该Token资产;第2步:交易执行本身。当目标合约A中的逻辑执行需要进行该Token交易时,合约A会去主动去触发ERC20Token取走X数量的该Token的转账交易;反之,如果没有涉及到该Token的交易,即使已经授权了,也不会真实发生资产交易。简而言之,授权操作之后,不一定会执行Token交易,只是对目标合约A保留了这样一个资金操作权限。

神马矿机Sully:减半带来最大的影响是矿机定价模型的暂时失效:2020年5月25日,OKEx矿池开启为期一月的矿欢派对福利大放送活动。神马矿机代理商Sully受邀出席OKEx矿池矿欢派对AMA。Sully表示,减半带来的最大的影响是矿机的定价模型的暂时失效。依照传统的定价模型,矿机厂商的矿机价格是远低于成本的,所以在进入减半周期前,是入手矿机的最好时机。但因为对于减半的观望气氛浓厚,大多数人都想减半后低价收二手矿机,而现在的情形是市场并没有太多适合收购的高性能二手机。在后续的减半周期里,相信还是维持现行价格波动不大的向前推进,直到币价逐步的拉升,才有可能恢复到之前的矿机定价模型。[2020/5/25]

动态 | 神马矿机发布 M30 系列新机型,实现整机算力 88 T 、功耗比 38 J/T:矿机生产商神马矿机宣布神马矿机 M30 系列新矿机,该矿机生产商称新机型实现 38 J/T 功耗比、整机算达 88 T。[2019/12/7]

很多智能合约开发者为了避免用户反复进行授权操作,一般会默认设置授权最大数量的Token给到目标智能合约。很显然,这种处理方式是存在一定风险的,如果智能合约出现漏洞或合约管理员作恶,那么用户的Token资产将存在丢失的风险,这就是「过度授权」带来的问题。无论是在NESTDAPP中还是imToken钱包中,我们都会经常遇到这个问题。

为了解决「过度授权」的问题,NESTDAPP设有授权管理页面,如果矿工自己预期短时间内不会参与NEST预言机报价,那么他可以进行「取消授权」操作,消除已有授权所带来的安全问题;imToken钱包也采取了一些措施,比如每次授权都会“明确授权信息”,以及设有授权管理专有DAPP,让用户自由管理自己的已有授权。跳过授权操作的可行性方案:通过在ERC20Token合约中实现特定的转账逻辑,即转账的同时强行调用目标合约的一个方法,可以避免现在的授权操作。但是为了保持Token合约的纯粹性,主流ERC20Token并没有实现该功能。参考资料:1、imToken如何应对DApp过度授权问题?2、NEST去中心化价格预言机综述

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

金智博客

[0:15ms0-5:18ms