starcoinorg / starmask-extension

A blockchain wallet browser extension for starcoin
Apache License 2.0
35 stars 15 forks source link

[bug] 用助记词(seed phrase)恢复账户时,会丢失地址 #77

Open jiangying000 opened 2 years ago

jiangying000 commented 2 years ago

复现方法:

  1. chrome starmask 插件中创建新的账户 A,在 A 里新建5个地址,设为0x1,0x2,0x3,0x4,0x5
  2. 退出 A,或者直接换个浏览器
  3. 用 A 的助记词恢复账户 A

我测试了多个账户和多台电脑,发现:用助记词恢复后,账户里只有一个或者两个地址会自动恢复,比如0x1,0x2,其余不恢复;手动创建地址时会按顺序恢复原来的地址,也就是依次恢复0x3,0x4,0x5。

如果用户的币都存在后几个地址比如 0x4,那么恢复后第一时间发现账户里的资产都不见了,这种情况会产生用户账户和资产丢失的误会。

jolestar commented 2 years ago

助记词的地址是确定的,并且是无限的,钱包应该是自动检查了余额是否为 0,不为 0 就自动恢复,否则不恢复。

jiangying000 commented 2 years ago

昨天测了余额不为零地址没有自动恢复

比如一个助记词 X 下创建了两个地址(账户): A:余额0 B:余额100

在starmask插件用助记词恢复后,账户里面只显示A,后来在 X 下面手动新建一个地址,发现就是B,余额是100

jiangying000 commented 2 years ago

可能是检测到第一个余额为0的地址就不再往下恢复地址了