从x Date获取令牌余额

时间:2018-02-07 14:02:31

标签: ethereum solidity

我正在开展一个项目,我需要验证令牌持有者在过去的某个日期拥有令牌,然后在那之后查找截至该日期的令牌余额。这可能吗?

这是一个问题,要求类似的东西,但不带日期参数。

https://ethereum.stackexchange.com/questions/11710/how-can-i-find-out-the-token-balance-of-some-address

谢谢!

2 个答案:

答案 0 :(得分:0)

我认为最好的办法是重现所有关于特定人的智能合约历史记录。

您必须分析来自此地址的此智能合约的每次转接呼叫,以便重新创建其余额的演变。

持有令牌的智能合约遵循一个名为ERC20的协议,这意味着无论它是什么标记,它(理论上)都将起作用。

此外,交易还有一个时间戳,因此,如果您识别出改变了某人余额的每一个电话,您也可以对它们进行约会并进行真正的按时间顺序重现。

答案 1 :(得分:0)

您将无法在以太坊VM中执行此操作。至少,不容易或便宜。您需要将您感兴趣的历史记录存储在单独的搜索/数据库平台中。这就是http://etherscan.io的作用。

要构建数据,请使用event/log系统。在合同中包含事件声明:

event TokenBalance(address indexed _address, uint indexed _date, uint _balance);

从此处,收听合同上的事件(或者您可以检索日志历史记录)并将数据插入搜索系统。