dev advocate at Chainstack here!
To answer this question:
Question: If you substitute MetaMask with web3.js to carry out all the same functions for your wallet, does web3.js, or the UI clients for web3.js, also somehow use surveillance on its users?
You could use web3.js
to create your 'personal' wallet app and control the information sent to the node provider, but this would surely be highly impractical!
If you are worried about privacy, the best option would be to use an alternative to MetaMask. There are several, and I think that the frame wallet will be a great alternative for your use case.
These are some features:
- frame allows you to add multiple RPC endpoints to your network list; you can have primary and secondary RPC endpoints.
- It allows you to set up 'read-only' accounts to interact with any DApp without risking losing funds if you authorize a malicious smart contract.
- You can choose to inject the frame wallet in your browser as MetaMask, so you can also interact with DApps that only support MetaMask
Note that it uses Infura by default, but there is a fix for that :)
You can use Chainstack to power your wallet and DApps. Chainstack supports multiple EVM chains and DOES NOT collect user info such as IP address, location, etc.
Also, Chainstack DOES NOT block connections based on location or the DApp you are trying to interact with. So you will not have the problem of being blocked.
Check out this article about setting up the Helios light client with Chainstack; Helios doesn't really mitigate this privacy issue, but the article explains more about how to use Chainstack and the frame wallet!
You can also use Chainstack with MetaMask if you want to keep MM!
I hope this helps you!