首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

ERC-20令牌传输问题:执行返回: ERC20:从零地址传输

ERC-20是以太坊上的一种代币标准,它定义了一系列规则和函数,用于实现基于以太坊区块链的代币发行和交易。ERC-20令牌传输问题中的执行返回"ERC20:从零地址传输"指的是在进行代币转账时,传入的发送地址为零地址(0x0000000000000000000000000000000000000000)。

从零地址传输的操作是不被允许的,因为零地址被视为无效地址,不属于任何账户。这意味着没有任何实体拥有零地址上的代币,也不能向零地址发送代币。因此,当执行ERC-20代币传输操作时,如果发送地址为零地址,会返回"ERC20:从零地址传输"的错误信息。

这个问题可能出现在以下情况下:

  1. 开发者错误地将零地址作为发送地址传入代币传输函数。
  2. 代币合约的代码中存在bug导致传输函数对零地址的处理不正确。

要解决这个问题,开发者需要确保在进行ERC-20代币传输时,传入的发送地址是有效的,而不是零地址。可以在代码中添加验证逻辑,检查传入地址是否为零地址,如果是则抛出错误或中断交易。

在腾讯云的生态系统中,可以利用腾讯云提供的以太坊区块链服务(Tencent Cloud Ethereum Service)来部署和管理ERC-20代币合约。具体而言,可以使用腾讯云的区块链智能合约开发平台(Tencent Cloud Blockchain Smart Contract)来编写和部署ERC-20代币合约,通过调用合约中的相关函数实现代币的传输和交易。

腾讯云的以太坊区块链服务提供了高性能的区块链网络,安全可靠且易于使用。您可以通过以下链接了解更多关于腾讯云以太坊区块链服务的信息:https://cloud.tencent.com/product/bcs-eth.

请注意,以上答案仅供参考,具体实施方法可能需要根据实际情况和需求进行调整。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

以太坊ERC20协议以及发行自己代币

所以如果您试图将令牌直接传输令牌的合约中,那么由于该令牌的合约无法响应,所以金钱就“丢失”了。 ERC20标准无法通过接收方合同处理传入的交易。...这是该令牌存在的最大问题,也是开发者一直希望改进的地方。ERC20令牌无法将令牌发送给一个与这些令牌不兼容的契约,也正因为这样,部分资金存在丢失的风险。...如果_from帐户余额没有足够的令牌来支出,该函数应该被throw。 创建新令牌令牌合同应该在创建令牌时将_from地址设置为0x0触发传输事件。...ERC223要解决的首要问题是什么? 自从引入ERC20令牌标准以来,几乎所有的基于以太坊的令牌都成功的接受了这个新标准。然而其自身的缺点需要及时解决,这便是ERC223令牌诞生的原因。...因为,现实情况来看,不管用何种方式,ERC20转换到ERC223是不可能的,同样的,所有ERC20令牌都需要在ERC223标准下重新部署。这也意味着任何交易平台的上市都需要更新他们的信息和地址

2.3K10

深入理解以太坊区块链的token

然而,即使是多年后,“ERC-20”这个名字仍然存在。ERC-20标准还有待完善。其中一个障碍是,将令牌直接发送给令牌的智能合同将导致资金损失。这是因为一个令牌的合同只会跟踪和分配资金。...例如,当您钱包中向另一个用户发送令牌时,该钱包将调用令牌的合约来更新数据库。所以如果您试图将令牌直接传输令牌的合约中,那么由于该令牌的合约无法响应,所以金钱就“丢失”了。...ERC20标准无法通过接收方合同处理传人的交易。这是该令牌存在的最大问题,也是开发者一直希望改进的地方。ERC20令牌无法将令牌发送给一个与这些令牌不兼容的契约,也正因为这样部分资金存在丢失的风险。...ERC-223简介ERC-223通过允许用户将代币转移到具有相同功能的智能合同和钱包来解决这个问题。此外,ERC-223Token通过使传输只需1步而不是2步来提高ERC-20的效率。...这意味着与ERC-20传输相比,ERC-223Token传输只需要一半的GAS(即更便宜)。

24610
  • Warning! Error encountered during contract execution

    为什么erc20转账的合约总是提醒Error encountered during contract execution [Reverted]??...image.png 每当发生ERC-20 token转账失败的错误时,发送方发送的金额/token不会离开发送方地址,但会扣除“gas费用”。 主要原因是智能合约和token失败。...以下是ERC-20 token转账可能失败的最常见原因: 1,token合约已锁定或暂停(token尚未转让)。变量包括:铸造,铸造完成,已暂停,可转让,可转让StartTime,已暂停。...2,已锁定发送方地址的token余额不足,在将token发送到另一个地址之前,请确保发送地址具有足够的转移token余额即使实际扣除了余额(不完全符合ERC-20标准),代币合同也不会发出转让事件。...3,特定token的代币合约未提供有效的传输事件日志,因此导致交易失败。此问题归因于针对ERC-20令牌的合规性政策。 如需其他帮助,请直接联系发件人/交易创建者以获取更多信息。

    5.3K20

    【以太坊通证标准】ERC20系列,ERC721系列,ERC865

    “ 他对这个问题提出的解决方案包含在ERC-223中 。 它与ERC-20标准非常相似,但解决了上述问题。...这可以增加和减少流通中的令牌供应。 ERC-20只允许单一的通证发放事件。 这将供应量限制在一个固定的不可改变的数目。 ERC-621建议totalSupply应当是可修改的。...safeTransferFrom(address _from, address _to, uint256 _tokenId): 把_tokenId代币_from账户安全转移到_to账户,安全是指如果目标地址为合约地址...,则执行onERC721Received进行资产转移,否则的话交易会回滚;如果目标地址为外部账号地址,则正常转移。...; symbol(): 返回代币表示; getAmountTransferred(): 返回传输的数量; isContractExpired(): 合约是否过期; balanceOf(address

    1.7K30

    以太坊通证标准ERC系列

    最著名的两个以太坊通证标准是代币标准ERC20和数字资产标准ERC721。...ERC-20标准的内容 ERC-20标准中定义了以下函数接口: totalSupply():返回代币供给总量 balanceOf(address _owner):返回_owner的帐户余额 transfer...ERC-223 状态:打开 建议日期:3/5/2017 开发人员Dexaran在一篇文章中详细描述了ETC20不适合的两种场景: “在ERC20执行交易有两种方式: transfer函数。...“ 他对这个问题提出的解决方案包含在ERC-223中 。 它与ERC-20标准非常相似,但解决了上述问题。...这可以增加和减少流通中的令牌供应。 ERC-20只允许单一的通证发放事件。 这将供应量限制在一个固定的不可改变的数目。 ERC-621建议totalSupply应当是可修改的。

    1.4K10

    【区块链实践】STO技术标准(ST-20,SRC20,R-TOKEN,DS Protocol,ERC1400,ERC1410)

    在投资者可以最初的发行中购买通证之前,必须将它们列入白名单。白名单过程可以由发行者以他们想要的任何方式执行,最终结果将是添加到安全通证智能合约中的白名单的以太坊地址列表。...(2)SWM 通证 SWM 通证为ERC20 标准通证,用于创建子基金、参与 STO、购买独家资讯、执行管理 swarm平台的权力。...与 ERC20 的区别: SRC20 在 ERC20 的基础上拓展了更多的性能来描述现实世界资产的特性,比如地址、目的、法律状态、义务和交易限制等。...2)是一种 ERC-20 通证的智能合约,它主要是为了 ERC-20 通证在交易时核对监管要求,执行交易。比如符合要求即交易成功,不符合要求则退 回。...此外,我们认为适合提供一种模式,通过该模式可以在还原通证传输返回人类可读的消息。关于转让通证转移的原因的透明度对于成功实施转让限制本身同样重要。

    1.2K40

    ERC-20,ERC-223,ERC-721和ERC-777详解

    假设您要向朋友发送一些BAT,此功能将获取您的以太坊钱包地址,收件人的以太坊钱包地址以及发送的金额,然后执行交易。...随着越来越多的真实资产在未来几年被标记化,您可以打赌ERC-721令牌标准将比CryptoKitties更为人所知。美术和音乐版税到第二天球赛门票的所有权都可以透明地转移到以太坊区块链上。...它还建立了一套全新的功能,而不是使用ERC-20标准中使用的相同“转移”和“批准”功能。取而代之的是,ERC-777使用“发送”功能,用于传输以太网本身。...考虑到它比ERC-20更具可定制性并减少交易摩擦,今天ERC-20上的每一个应用程序都可以将来转向ERC-777中受益。...TL; DR ERC-777代币: 使用ERC-20令牌标准解决关键缺陷 向后兼容ERC-20 使用用于传输ETH本身的函数,使事务更平滑 允许“经过批准的操作员”,使其比以前的标准更具可定制性 展望未来

    1.3K00

    ERC-20标准规范

    , amount) #EVENTS Transfer(from, to, value) Approval(owner, spender, value) 接口作用域、接口参数类型、接口返回值类型...、参数与返回值个数等具体信息如下: https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/token/...授权转账 除了转账逻辑还有一种业务逻辑就是"授权转账"逻辑,与转账逻辑不同的是"授权转账"逻辑虽然也是转账操作,但是它并非直接A账户转账到C账户,而是A账户到B账户,再由B账户到C账户,下面是具体的代码实现...,我们这里暂且不讨论这一话题,当然如果要规避溢出问题也可以以下两个方面实现: 数值操作前后溢出检查 使用SafeMath函数进行数值运算 代币销毁 既然有代币增发逻辑,那么也就自然而然的有了代币销毁逻辑...amount——要销毁代币的数量 在_burn函数中首先会对要销毁代币的地址进行一次非检查,之后获取当前要销毁代币的地址账户可用的代币总量,之后检查可用余额是否大于要销毁的代币总量,之后再L19更新

    2.4K71

    80%的人都不知道,ERC-223、ERC-621、ERC-721这些到底说了啥,还好意思说自己懂智能合约?建议收藏

    ERC-20 ERC-20标准包括以下方法: totalSupply():返回通证的总供应量。 balanceOf(address _owner):_owner账户的账户余额。...transferFrom(address _from, address _to, uint256 _value):地址_from发送数量为_value的通证到地址_to,触发Transfer事件。...allowance(address _owner, address _spender):返回允许_spender_owner提取的金额。...ERC-223 状态:打开 提出日期:2017年5月3日 开发人员Dexaran详细描述了ERC-223标准适用的两种场景: 在ERC20通证标准中执行交易有两种方式: 1.transfer方法。...Dexaran提出的ERC-223标准就解决了这一问题,而且,它与ERC-20标准非常相似。

    75330

    每周以太坊进展2022514

    Mainnet-shadow-fork-5[4] 于 5 月 19 日合并,在执行层和共识层客户端上划分相等的验证者 合并后的安全质押需要共识层和执行层的客户端多样性[5] Geth 当前超过 80%...在执行层 主网(执行层) 最新的核心开发者 视频会议[6]....) Danny Ryan: Lido 超过 1/3 质押者[16] 存在中心化风险 EIPs 关于以 NFT 的形式一次性出售未使用的 EIP 编号[17]的提案 EIP5089[18]: 本金代币(息代币...)标准,在未来的一个时间戳中,可兑换为一个基础 ERC-20 代币,表示未来时间戳上的基础 ERC-20 令牌的所有权。...Sepolia 测试网水龙头[28] OxPARC Ecne[29]: 自动验证 ZK 电路 1inch 的 cumulative merkle 空投工具[30],在需要对相同地址进行定期空投的情况下,

    49920

    安全的处理 ERC20 转账(解决非标准 ERC20 问题

    有些事情我们必须要考虑,而且还可能出现一些很常见的问题。 我们最简单的开始,下面我们要处理一个非常普通的 token 交易,下面的代码会导入并直接使用 IERC20.sol。...合约所有函数都是这样,执行失败的时候返回 false 或者回退,所以,一定要处理好这两种情况。 合约内部的错误处理 大多数情况下,token 会在失败时回退交易。...这就是为什么 OpenZeppelin 的 ERC20 (代码[6])实现中这样做,也是我建议这样做的原因。 而对于返回值的做法,是有争议的。...怎样支持所有 token 现在你已经支持了 ERC-20 标准的 token, 然而有相当多的 token 看起来像 ERC-20 ,但是它的有些行为却不像,有些出现缺少返回值的错误[8]。...那么其他项目是如何处理这个问题的呢?我们看看下面的Compound 版本[10]。

    1.9K20

    @程序员,如何淋漓尽致地敲出Solidity安全代码?

    以太坊诞生以来,被采纳并且要求代币遵守的标准出现了几种:ERC-20,ERC-223,ERC-621,ERC-721,ERC-827。...ERC-20启动了区块链代币项目的繁荣开始,之后的标准都是在其基础上进行进一步的补充和完善,便于开发者按照项目需求实现相关的功能。...合约编写规范建议 1、ERC20接口标准检查 最新的ERC20接口规范如下,建议代币合约开发者按照以下接口规范进行实现,包括类型、可见性、返回值、事件、变量与函数命名等。 ?...合约代码也存在一定问题,以上述代码为例,按照ERC-20的标准,transfer、transferFrom函数在Token账户转账额度不足的条件下应该抛出异常: ? 正确的代码应该是: ?...3、目标地址检查 在 transfer、transferFrom、transferOwnership 等敏感函数中,用户操作不可逆,所有建议开发者在这些函数实现中增加目标地址检查: ?

    75510

    以太坊开发实战(第四部分:代币及ERC标准)

    开发人员的角度来看,以太坊的代币只是智能合约。若以饮品作比喻,那么这个令牌就可以是咖啡,并且所有人都可以根据他们的喜好进行定制。 你可能听说过ERC20,ERC721或其他标准。...要制作符合ERC20令牌,我们必须实现以下功能和事件: image.png 这个标准没有提供这些函数的主体,这是因为你可以按你的喜好编写它们,而且如果你不想支持某些函数的话,在标准范围内返回null...当一个地址“approve()”另一个地址时,已经批准的地址可以将要批准地址所代表的余额中使用“transferFrom()”来转移一些令牌, “allowance()”只是一个getter函数,用于查看地址可以另一个地址的余额中...这些功能实际上代表了安全问题,因为当一个地址批准了另一个地址转移X个令牌,并且由于种种原因决定将这个数量升至或降至Y时,已获批的地址可以在更改补贴的交易执行前迅速地转移第一次补贴的X个令牌。...在交易执行后,已获批地址可以再次转移Y个新的已批准的令牌。批准的地址可以快速地将第一个许可的X令牌执行更改补贴的交易,并且在执行后,批准的地址可以再次转移Y新批准的令牌

    2K120

    Foundry 教程: 用Solidity编写ERC-20测试用例

    所以我们来实现一个 ERC-20 并写一些测试。创建 ERC20 合约,你也可以参考社区的这篇文章如何创建并部署 ERC20 代币[6] 。 1....它们允许我们创建一些持有以太币的用户地址。让我们称第一个地址为 Alice,第二个为 Bob。...例如,你可以模拟一个向 bob 转账和金额的调用,并返回 false。你还可以使用clearMockedCalls()来清除模拟。...直接检索数据 你也可以使用stdStorage功能,直接状态中检索数据。例如,要直接状态中读取余额,首先计算存储槽,如下代码所示。...2: 打印所有测试的日志 3: 打印失败的测试的执行堆栈 4: 打印所有测试的执行堆栈,以及失败测试的 setup 堆栈 5: 打印所有测试的执行和 setup 堆栈 ERC-20 Forge 模板

    1.5K20

    为什么 PSP22 对 Polkadot 生态系统很重要

    类似基准对于启用基于令牌的交互智能合约至关重要。在没有标准的情况下,任何人都可以开发和部署自己的智能合约。这种方法的问题是它们必须公开相同的函数签名才能实现真正的互操作性。...比如,可替代、不可替代、多令牌ERC-20、ERC-721、ERC-777和ERC-1155等令牌合约。...最流行的标准可能是ERC-20,这是一种用于发行具有20个唯一标识号的令牌协议,用来区别于其他令牌ERC-20的开发有助于简化钱包和去中心化交易所的集成,因为它们可以信任所调用函数的标准化签名。...Supercolony联合创始人兼首席执行官马尔基安·伊万尼科克(Markian Ivanichok)表示:“开发PSP22的主要目的是为WASM智能合约,比如以太坊生态系统的EIP-20定义一个标准的可替代的令牌接口...PSP22与ERC-20的不同之处还在于,如果接收者是合约,那么在传输结束时调用before_received方法。PSP22Receiver 接口也使它与 ERC-20 区分开来。

    33620

    【前沿解读】斯坦福研究员论文-以太坊可逆交易标准ERC20721R的机制、创新与局限

    如何确保仲裁后可靠的归还 如何防止恶意的法官和决策 2.2、ERC20/721R标准的判决流程 论文的流程图中可以看出,主要5大环节 失窃:黑客盗窃后可能快速洗钱转移到多地址,兑换流转,乃至销毁...申诉:发起冻结是需要支付挑战保证金的,也将成为治理合约的收益来源 抽法官:其组成法官库中随机挑选,这可沿用POS类似的质押参与出块思路 冻结:一旦法官决议冻结,则由智能合约来计算应该被冻结的地址与金额...3.2.2、针对ERC20R ERC-20 合约的冻结功能要复杂得多。问题在于,在盗窃和冻结请求之间,代币可能已转移到多个账⼾,且各个账号可能获得资金都不同。...合约实现看 确实,来自斯坦福大学研究员的手笔其合约算法设计高度精巧,且确实在智能合约中实现算法也是难得一见的奇观,赋予算法信任的同时,带来的问题则是高昂的代币成本。...每次转移本身只是2处标准的NFTbalance的修改,然而如今要记录每次历史记录、冻结状态,冻结执行时还涉及大量对子地址的余额修改,都将导致其贵到无以复加。

    38930

    区块链智能合约是什么?

    之前社会中的合同或者约定的行为,都是由人来制定规则,然后由人去执行,遇到边界问题或者异常,再由人去做界定。...用户给智能合约发送一定数量的 Eth,智能合约就在自己的账户内建立对应地址的代币数据。...ERC20 定义了 ERC-20 Token 的通用标准,所有符合 ERC20 的智能合约创建出来的代币,都被称为 ERC20 代币,都能够被以太坊钱包(几乎所有支持以太币的钱包,包括 imToken、...币兜钱包等,也支持 ERC-20 的代币)识别使用。...4.2 ERC223 由于之前出现过智能合约的问题,导致至少有价值四十万美元的以太币的损失,所以后来出现了 ERC20 的改良版本——ERC223。ERC223 标准是向下兼容 ERC20 的。

    3.6K30

    Time-locked Wallets:一个以太坊智能合约的教程

    ERC20.sol 是以太坊令牌ERC20标准接口。 ToptalToken.sol 是一个定制的ERC20令牌。 SafeMath.sol 是ToptalToken用于执行安全算术运算的小型库。...由于合同本身并不知道分配给此地址的任何令牌,因此我们必须传递我们想要撤回的已部署ERC20令牌地址。我们通过实例化它,ERC20(_tokenContract)然后查找并将整个令牌余额转移给收件人。...每个事务可以附加个或多个日志条目。事件的主要用途是调试和监视。 这就是我们需要的时间锁定ether和ERC20令牌 - 只需几行代码。不错,是吧?...然后,我们为创作者和收件人存储它的地址。之后,我们将在此函数执行过程中传递的所有可选的乙醚转移到新创建的钱包地址。...什么是ERC20令牌令牌是实施ERC20标准的智能合约。它们包括获得总供给和平衡等操作以及转移令牌的方法。令牌从未真正离开合同,但只是在内部映射中重新分配给不同持有者的钱包地址

    2.5K20
    领券