-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Bug]: Ledger Devices signature miss match after Version 12.11.0 #30473
Comments
When swapping USDT to INJ, I am receiving another error on console. |
Yes, we had to do this because signing using Ledger through Metamask doesn't work after the upgrade. If you want, I can also redeploy the product with logging for the original error. |
Any updates here? |
The error for will happen only when your account address connected to wrong ledger devices, this issue most likely happen to |
What does this mean? I'm sure the address connected on Metamask and the one that I request signature for are the same |
hi, @bangjelkoski I just check whether account your dapp connect to was from other ledger device or not. since we face a multiple ledger device support when user import multiple ledger accounts from more than two ledger devices, and we have enhance request logged to fix this issue. Currently i am trying to replicate your your issue. |
HI, @bangjelkoski can you redeploy the product so that i can try to replicate the |
I've deployed a simple UI that you can use to replicate the error. It's basically a simple transfer between two wallets https://injective-mm-ledger-bug.netlify.app/ If you need some INJ on mainnet to test, let me know. |
I’ve looked into this issue and found that removing the btw, this is a Metamask issue that has occurred in the past few weeks, and I’m not sure why. |
Recently we include the ledger clear signing support which ledger team ask us to support. thank you for sharing, @quanglefed i will have a look and debug the code using @bangjelkoski dapp. @bangjelkoski can you send me some INJ on mainnet to this ledger address 0xBf6916f52edC86D38Da09579936a2fDfa774f21B thank you very much for your help. |
hi, @bangjelkoski thank you fund and i have debugged the metamask extension code with your dapp. and has found out the root cause of the issue. and i have make a fix in one of our metamask library for ledger. here is PR I have tested the code change and confirm it will work with your dapp with domain salt value. here is some transaction details confirm i have sent 0.001 INJ to my another ledger account. https://injscan.com/transaction/740492AF58317B0E6B546ED119C85941277380FDBBAF3B0BB2786BC8370CE94A/ i will talk to my manager to priority this so that the fix can be included in to next possible release as soon as possible. |
This is great news; thank you! |
thanks @dawnseeker8, please ensure the domain salt value is added in tests and |
Any updates here? |
… for `signTypedData<V4>` (#249) This PR is to fix the extension bug [30473](MetaMask/metamask-extension#30473) Basically the issue was caused by domain salt was defined as string in client DApp, and @metamask/eth-sig-util library we used define salt as arrayType. which cause miss match with previous code of salt value. This code has been tested with client dapp and our e2e test-dapp to confirm it will work for both. <!-- Thanks for your contribution! Take a moment to answer these questions so that reviewers have the information they need to properly understand your changes: * What is the current state of things and why does it need to change? * What is the solution your changes offer and how does it work? Are there any issues or other links reviewers should consult to understand this pull request better? For instance: * Fixes [#30473](MetaMask/metamask-extension#30473) * See: #67890 --> ## Examples <!-- Are there any examples of this change being used in another repository? When considering changes to the MetaMask module template, it's strongly preferred that the change be experimented with in another repository first. This gives reviewers a better sense of how the change works, making it less likely the change will need to be reverted or adjusted later. -->
Describe the bug
After the recent update, EIP712, which gets signed on Ledger through Metamask, has a signature mismatch issue.
Expected behavior
Before this upgrade, no issues were encountered with signing EIP712 through Metamask with Ledger devices. Using Ledger directly also has no issues.
Screenshots/Recordings
No response
Steps to reproduce
Here is a JSON that you can also use to try in unit tests:
Error messages or log output
Detection stage
In production (default)
Version
12.11.0
Build type
None
Browser
Chrome
Operating system
MacOS
Hardware wallet
No response
Additional context
No response
Severity
No response
The text was updated successfully, but these errors were encountered: