-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Description
Describe the bug
I was deposing funds to a Coinbase deposit address I've used in the past. Coinbase deposit page only shows 64 digits (eg doesn't include the 0x). In the past, Metamask has just added it when attempting to send funds to a 64 character ethereum address, but some recent change broke that and it doesn't work every time now.
My funds were sent to a random wallet instead of the one I entered. I spoke with Metamask support through email who initially thought my computer had a "clipboard virus" but after investigating all day and testing other machines / wallets / having friends test they were all able to replicate the issue.
This is a serious problem and it's so easy to replicate that anyone could have run into it
Steps to reproduce
- initiate a transaction to any wallet address without the 0x at the start (eg 64 characters instead of 66) - here's vitalik's for example. Ab5801a7D398351b8bE11C439e05C5B3259aeC9B
- Send USDC, USDT, YFI or WETH
- Metamask converts the address to 0x00000020CA5cA4F9236e618f7c3A8bD45b59eB45 instead of adding the 0x
If you attempt to do this with ETH or most other tokens, it adds the 0x. But for some reason when sending USDT, USDC, or WETH it converts it to something else. It most likely applies to other tokens as well, but I didn't have anything else in my wallet so I couldn't test it
I've had many other people test this and they all get the same issue


Error messages or log output
No response
Version
10.15.1
Build type
No response
Browser
Chrome, Firefox, Microsoft Edge, Brave
Operating system
Windows, MacOS
Hardware wallet
No response
Additional context
No response