MetaMask / metamask-extension

:globe_with_meridians: :electric_plug: The MetaMask browser extension enables browsing Ethereum blockchain enabled websites
https://metamask.io
Other
11.88k stars 4.85k forks source link

Huobi Echo Chain - Ledger - Metamask Issues : Metamask #10294

Closed yonghoban closed 3 years ago

yonghoban commented 3 years ago

add custom network Network Name : heco-mainnet New RPC URL : https://http-mainnet-node.huobichain.com Chain ID : 128 Currency Symbol : HT Block Explorer URL : https://scan.hecochain.com

Metamask account Ledger account having issues with HECO Transfers I have a Ledger Nano S, successfully connected with MetaMask Wallet. I have recently added Huobi Echo Chain to the Metamask Account, the same account as Ledger Metamask Account. I can see the coins in the Metamask Ledger Account - Huobi Echo Chain. If I initiate to transfer funds from Metmask Echo Chain, it is connecting to Ledger, and signature fails.

Legder_error

hoffer commented 3 years ago

i have the same issue…… please help

tmashuang commented 3 years ago

Does Ledger support the Huobi Echo Chain?

yonghoban commented 3 years ago

Does Ledger support the Huobi Echo Chain? No. but Meta mask supported HECO.

Gudahtt commented 3 years ago

This is likely caused by https://github.com/MetaMask/eth-ledger-bridge-keyring/issues/50; the Ledger library we're using right now doesn't support Chain IDs over 108.

mudgen commented 3 years ago

@Gudahtt thanks for continuing to look into this. Is there a solution available to fix this?

mudgen commented 3 years ago

@Gudahtt See this: https://twitter.com/petejkim/status/1356715759469166595

Do you plan to work on this? Would be really great. I know about 60 people (and rising) who need to use Ledger on Matic Network with Metamask but can't. This is just the Aavegotchi project on Matic.

danfinlay commented 3 years ago

This is currently proposed for consideration in our next sprint, starting next week.

mudgen commented 3 years ago

That is great! Thanks @danfinlay and MetaMask team. Your product is so important and I really appreciate the work that you do.

hoffer commented 3 years ago

This is currently proposed for consideration in our next sprint, starting next week.

Thanks a lot! looking forward for the fix!

mudgen commented 3 years ago

This is currently proposed for consideration in our next sprint, starting next week.

Is such proposal public somewhere where I can see?

Lollypopsie commented 3 years ago

It is actually possible to send funds to a wallet with ledger, thing is that once they arrive they are locked because of the bug, all actions fail. It would be really appreciated if the priority of this bug was increased. Thanks in advance.

leonprou commented 3 years ago

Our chainId is 122 (Fuse network), and we are experiencing the same behavior.

Digging into this we found out that this is related to this issue https://github.com/MetaMask/eth-ledger-bridge-keyring/issues/50. Looks like this is already fixed by the Ledger team.

mudgen commented 3 years ago

This is currently proposed for consideration in our next sprint, starting next week.

@danfinlay Can you update us if your team has decided to fix this next week or not?

Andrew-Pohl commented 3 years ago

@darkwing was this actually fixed? I saw that a fix was merged in the ledger keyring but it looks like the current metamask extension is still using the old keyring version

Gudahtt commented 3 years ago

Yes, this should be fixed. The Ledger bridge keyring is in two parts: the keyring, and the bridge between the keyring and the Ledger device. The bridge is a website served from GitHub pages, so it gets deployed immediately when we merge something into the gh-pages branch. The change in question was to the bridge.

Andrew-Pohl commented 3 years ago

Yes, this should be fixed. The Ledger bridge keyring is in two parts: the keyring, and the bridge between the keyring and the Ledger device. The bridge is a website served from GitHub pages, so it gets deployed immediately when we merge something into the gh-pages branch. The change in question was to the bridge.

Ahh great thanks for the clarification will test it again on my end

Andrew-Pohl commented 3 years ago

@Gudahtt Not sure if I am missing something but sadly on Fuse (chain id 122) we are still having the same errors. Have tried on 2 PCs (one windows, one ubuntu) and tried on chrome and firefox both giving the same issue of invalid signature It signs fine with ledger using MEW so don't think it is an issue on our end.

Network details: image

Should I open a new issue or can I "piggy back" off of this one?.

Gudahtt commented 3 years ago

Thanks for checking @Andrew-Pohl ! We can use this issue, unless we determine the problem you're experiencing is a separate issue. I'll re-open this now.

darkwing commented 3 years ago

Thank you for the update @Andrew-Pohl! I was able too add Fuse to my local MetaMask, connected my Ledger Nano X, then went to https://metamask.github.io/test-dapp/ to test signing, which worked great. Is your issue specifically about sending FUSE tokens? Could you provide more detail in steps to reproduce, etc.? Thank you so much!

Andrew-Pohl commented 3 years ago

Thank you for the update @Andrew-Pohl! I was able too add Fuse to my local MetaMask, connected my Ledger Nano X, then went to https://metamask.github.io/test-dapp/ to test signing, which worked great. Is your issue specifically about sending FUSE tokens? Could you provide more detail in steps to reproduce, etc.? Thank you so much!

Hi @darkwing, signing any transaction on fusenet using a ledger and metamask (be it sending native fuse, erc20 tokens on fuse, deploying contracts and so on) all seem to fail with the following error:

{ "op": "add", "path": "/err", "value": { "message": "Error: Ledger: The transaction signature is not valid", "stack": "Error: Ledger: The transaction signature is not valid\n at chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/background.js:1:563428\n at r (chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/background.js:1:565062)\n at c (chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn/initSentry.js:1:10461)" }, "note": "transactions:tx-state-manager#fail - add error", "timestamp": 1613495442202 }

To reproduce: • Launch metamask • Switch to fusenet • Connect to ledger • Try to send fuse (or any transaction)

Happy to send you some fuse for you to test on your side?

Edit I'm testing on a nano S here (I have an X too so will give that a try also) - Edit2 just tested same result with nanoX

Tested using your test dapp and Eth sign works however Send Eth (fuse in this case), send tokens and deploy contract all fail with signature errors

darkwing commented 3 years ago

I'm escalating this with @ledgerhq as we've seen a few reports of this, and numerous via a Google search. Related:

https://github.com/LedgerHQ/ledger-nano-s/issues/65

darkwing commented 3 years ago

The @ledgerhq team has posted https://github.com/LedgerHQ/ledgerjs/pull/576

FrederikBolding commented 3 years ago

The @LedgerHQ team has posted LedgerHQ/ledgerjs#576

Just to clarify, I don't work for Ledger. We had the bug reported by EWC users on MyCrypto and I submitted the issue (https://github.com/LedgerHQ/ledgerjs/issues/575) and the PR to try and help them fix the issue on their end.

I wrote this as a workaround that we are currently using for MyCrypto. https://github.com/MyCryptoHQ/MyCrypto/blob/57573908ae08f5097064b021cf3bc8a98e57d81a/src/services/WalletService/deterministic/ledger.ts#L75-L91

numa-nalo commented 3 years ago

🐲 On my hand I still can't send MATIC tokens from Ledger Nano S to Metamask on the Matic network... how come ?

Andrew-Pohl commented 3 years ago

@darkwing Great news the new ledger libraries seem to solve the problem. Thanks @FrederikBolding for spotting/fixing the issue and making the ledger guys aware :)