0

I'd like to be able to share a URL (or a QR code thereof) prompting the user's wallet to open to call a function, and pass in some parameters.

There are a couple of EIPs - EIP67 and EIP681 - with detailed proposals for URLs that include data fields, but neither seems to be finalized, and some people are opposed to doing this for fear that users will be tricked into calling functions they do not intend.

However, according to this answer, at least MyEthereumWallet already support data in the URL: Can any information beside the address be encoded into QR code?

How widely do wallets other than MyEthereumWallet currently support data URLs? Relatedly, will wallets that don't support data tell the user that they don't support the URL they've received, or will they just silently ignore the data parameter and prompt the user to send a transaction without it?

1

EIP 681 is actually merged. It may evolve in the future, but for right now it's done and ready to go and has been implemented in a few different wallets (I know MyCrypto and WallETH for sure: https://github.com/ethereum/EIPs/blob/master/EIPS/eip-681.md

I think that MyEtherWallet's unofficial URI spec is the only one that supports the data parameter for the security reasons you mentioned. I'm also not sure that MyEtherWallet's URI spec still works entirely and the data parameter may not actually work. I only say this because I know the address and gas parameters no longer work on it.

Most, if not all, wallets will silently ignore the parameter. Most wallets have no URI scheme implemented.

Due to lack of standardization, lack of support from exchanges, and the security issues mentioned, I would strongly recommend looking for alternative ways to teach people to use data parameters. Preferably one that educates the users about what exactly they are doing, rather than having them enter a random string of hex characters. 😉

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.