分类
默认

撸毛starknet之arbiter授权查询以及取消

最近群里的小伙伴,提醒小飞碟(Orbiter Finance)出了问题。

看了下最初的信息源应该是来自老外cryptojsb。

https://twitter.com/cryptojsb/status/1709256292819496981

后面官方也出来辟谣说项目没问题,很安全,只是有一些失败的交易,会尽快处理。账户显示已删除的问题是被discord官方给删除了。

https://twitter.com/Orbiter_Finance/status/1709254171780935995

作为吃瓜群众,最不想自己的资产出现问题。看到这个问题,我想起之前从starknet跨链到arb时,项目方要求用户对合约授权了一个非常大的额度。

小飞碟(Orbiter Finance)最大的风险是合约有风险。一旦合约被黑,你曾经授权过的ETH就会被合约转走。这里教你用2个办法检查合约的授权以及如何取消授权。

第一种方式是直接访问https://starkrekt.com/。链接你的钱包后,就可以看到是否有授权信息,如果不再使用,直接取消即可。但该网站的问题在于有可能授权不全,也有可能报错。

那我们可以直接使用第二种方法。打开starknet区块浏览器,查看StarkGate: ETH Token合约地址,切换到Read/Write Contract:https://starkscan.co/contract/0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7#read-write-contract

先查询授权额度,找到函数allowance(owner,spender):

填入参数

  1. owner: 填你的starknet地址。
  2. spender: felt:填arbiter官方合约地址:0x173f81c529191726c6e7287e24626fe24760ac44dae2a1f7e02080230f8458b
  3. 点击query,查询授权额度。如果为0,就不用理会了。这意味着本身没有授权额度。

然后想要取消额度的话,就切换到Write标签,找到第3个函数approve(sender,amount):

填入参数:

  1. spender: felt:填:0x173f81c529191726c6e7287e24626fe24760ac44dae2a1f7e02080230f8458b
  2. 这是arbiter官方合约地址。
  3. amount: Uint256 填0,这个数字意味着直接取消授权额度。

填好参数后,直接点击Write,确认提交即可。