【问题标题】:Solidity Smartcontract Whitelist up to 1000 wallets at onceSolidity 智能合约一次最多可将 1000 个钱包列入白名单
【发布时间】:2021-12-12 20:48:20
【问题描述】:

你好!

我想每个月左右将 1000 个钱包列入白名单。我可以使用 smartcontarct 将钱包一个一个添加到白名单中,但这需要很多时间。有更快的方法吗?

mapping(address => bool) public addresses;

    function whitelistAddresses(address[] _addresses) onlyOwner {
        require(!whitelistInitialized);
        for (uint256 i = 0; i < _addresses.length; i++) {
            addresses[_addresses[i]] = true;
        }

例如,准备这种数据以每月添加白名单会更容易,但我该怎么做?

    [{
   "address": "0x123",
   "state": true
   },
   {
   "address: "0x234",
   "state": false
   }]

非常感谢!

【问题讨论】:

    标签: polygon solidity smartcontracts whitelist


    【解决方案1】:

    我没有足够的声誉来发表评论,所以我发布了这个“答案”,我认为解决方案可能是 merkle 树,您可以生成地址的 merkle 树,由您决定是否要存储它在链上或链下,这里是一个例子https://github.com/miguelmota/merkletreejs-solidity

    【讨论】:

      猜你喜欢
      • 2022-09-28
      • 2022-08-05
      • 1970-01-01
      • 1970-01-01
      • 2022-09-25
      • 2022-06-17
      • 2021-12-28
      • 2019-12-19
      • 1970-01-01
      相关资源
      最近更新 更多