Since @bitpshr discovered a way to asynchronously query users' settings, we are able to let users turn the features described in EIP 1102 (#4703) on and off.
Basically, this means we can give users a "privacy mode" that lets them choose whether or not to expose their addresses by default.
With privacy mode enabled:
ethereum.enable() and user agrees via Connect modal (As seen in https://github.com/MetaMask/Design/issues/36)With privacy mode disabled:
This option should be added as toggle in the settings menu. Copy could be something like
With Privacy Mode enabled, websites will not be able to view your public addresses or propose transactions until you agree to share this info with them. With Privacy Mode disabled, your public addresses will be available to any site you visit.
To make 1102 adoption as smooth as possible, we may want to start with Privacy Mode defaulted to "off," and eventually make it "on" by default once we feel the ecosystem has had enough time for 1102 support to become widespread.
@danfinlay @cjeria
In this article: https://medium.com/metamask/https-medium-com-metamask-breaking-change-injecting-web3-7722797916a8, developers were instructed to test the new MetaMask breaking changes by "Enable 'privacy mode' in the MetaMask settings menu." But this privacy mode is still NOT added to MetaMask by now? That's strange.
Hi @labsterx. As stated in the "Preparing your dapp" section of the linked blog post, please use the following instructions to fully test your dapp against these breaking changes:
Please feel free to open up new tickets for any issues you may encounter while testing. Thanks!
But the problem is: there's no "privacy mode" at all in your latest build!
Hi @labsterx. Please note that you need to download and install a _custom_ build here. Our latest canonical release (4.16.0) will not contain any privacy mode settings option.
@labsterx @olaf89 rather than immediately releasing the "privacy mode" feature, we're giving dapps a window to adjust and prepare their applications to support it. We hope this will minimize the number of users who find that turning on the feature breaks a dapp they regularly use.
If you have any issues with this approach or suggestions to make it smoother, we'd be happy to hear them!
I dislike that i have to download some experimental version to test that. I would prefer to have switch in latest metamask "experimental privacy mode", which i can check to test this behaviour. If you have concern that some user might harm themselves, you can reset it to false when browser is closed, or allow to just enable it for specific urls lets say "privacy mode dapps" : "localhost:8000"
Hi @olaf89. That's exactly what we're doing on November 2nd: releasing a version of MetaMask with a "privacy mode" settings option defaulted to "off". You only need to download the experimental version if you want to try out this settings option before its release date. If you'd like to wait until this setting is officially released to make dapp updates, that's totally fine. It will be live on November 2nd.
Hi @labsterx. Please note that you need to download and install a _custom_ build here. Our latest canonical release (4.16.0) will not contain any privacy mode settings option.
Got it. Thanks! Now with the custom build, I can see the privacy mode option. I guess the reason for my initial confusion is that the custom build (its release number as well as the file name) is named the same as the regular 4.16.0 build. It'd be less confusing if it had been named differently.
BTW, I found the instruction on installing the custom build for FireFox was a little confusing: https://consensys.zendesk.com/hc/en-us/articles/360004134152-How-to-Install-MetaMask-Manually
In step 5) under the FireFox installation guide, it's said "Browse the '.xpi' file". However, the downloaded custom build file for FireFox is a .zip file and there's no .xpi file in the unzipped files either.
Please fix the instruction or the installation file for FireFox. Thanks!
This is in production as of MM 5.0
Most helpful comment
Hi @olaf89. That's exactly what we're doing on November 2nd: releasing a version of MetaMask with a "privacy mode" settings option defaulted to "off". You only need to download the experimental version if you want to try out this settings option before its release date. If you'd like to wait until this setting is officially released to make dapp updates, that's totally fine. It will be live on November 2nd.