To disable Brave’s crypto features, go to brave://settings, toggle off Brave Rewards and Brave Wallet, then visit brave://flags and set IPFS, Brave Wallet, Native Wallet, and Solana Wallet to “Disabled.” For persistent enforcement on managed devices, deploy registry policies (Windows), plist configurations (macOS), or JSON policies (Linux) that set BraveWalletAllowed and BraveRewardsAllowed to false. This guide covers five methods from simple GUI toggles to custom compiled builds, each with different tradeoffs between ease and permanence.
Understanding Brave’s Crypto Features
Brave includes the following crypto-related components by default:
- Brave Wallet: Built-in Ethereum and Solana wallet functionality supporting hardware wallet integration
- IPFS Support: Integrated InterPlanetary File System node capabilities for decentralized content
- Wallet Settings: DNS resolution for blockchain domains including .eth and .crypto TLDs
- Brave Rewards: Cryptocurrency-based advertising rewards system using Basic Attention Tokens
- NFT Support: Native NFT visualization and management within the browser
- Solana Integration: Full Solana blockchain support including SPL token management
Each of these can be disabled individually through configuration. The level of control depends on your technical access and deployment scenario.
Method 1: Disable via Brave Settings (GUI)
The easiest approach uses Brave’s internal settings panel without requiring administrative access:
- Open Brave and navigate to
brave://settings - Scroll to Additional Settings → Brave Rewards and Tips
- Toggle off all reward-related options
- Navigate to Wallet section and disable Brave Wallet completely
- Return to settings and disable any remaining crypto-related toggles
This handles basic disabling but leaves residual code in the browser executable. Features may reappear after browser updates or can be re-enabled by users with access to the settings panel.
Method 2: Disable via Configuration Flags
For granular control beyond the standard settings, Brave provides experimental flags accessible at brave://flags. These offer deeper control over individual features:
- IPFS Integration: Set to “Disabled” - prevents IPFS node initialization and gateway usage
- Brave Wallet: Set to “Disabled” - removes wallet functionality entirely
- Native Wallet: Set to “Disabled” - disables Ethereum provider injection
- Solana Wallet: Set to “Disabled” - removes Solana support
- ENS Resolution: Set to “Disabled” - disables Ethereum Name Service lookups
These flags apply immediately and persist across sessions. However, they may reset with major browser updates and require re-application.
Method 3: Disable via Command Line Arguments
For deployment scenarios, automated setups, or enterprise deployments, use launch arguments applied at runtime:
# macOS
/Applications/Brave\ Browser.app/Contents/MacOS/Brave\ Browser \
--disable-features=BraveWallet,BraveRewards,IPFS,Solana
# Linux
brave-browser --disable-features=BraveWallet,BraveRewards,IPFS,Solana
# Windows
"C:\Program Files\BraveSoftware\Brave Browser\Application\brave.exe" ^
--disable-features=BraveWallet,BraveRewards,IPFS,Solana
The --disable-features flag accepts comma-separated feature names from Brave’s Chromium implementation. For permanent application on Linux systems, create a wrapper script or desktop entry that includes these arguments automatically.
Method 4: Configure via Policies (Enterprise/IT)
System administrators managing multiple workstations can deploy registry or plist configurations that override user settings and prevent re-enabling through the UI:
Windows Registry (per-user):
[HKEY_CURRENT_USER\Software\Policies\BraveSoftware\Brave]
"BraveWalletAllowed"=dword:00000000
"BraveRewardsAllowed"=dword:00000000
Windows Registry (machine-wide):
[HKEY_LOCAL_MACHINE\Software\Policies\BraveSoftware\Brave]
"BraveWalletAllowed"=dword:00000000
"BraveRewardsAllowed"=dword:00000000
macOS plist (com.brave.Browser.plist in /Library/LaunchDaemons):
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN">
<plist version="1.0">
<dict>
<key>BraveWalletAllowed</key>
<false/>
<key>BraveRewardsAllowed</key>
<false/>
<key>IPFSEnabled</key>
<false/>
</dict>
</plist>
Linux (distributed via /etc/chromium/policies/managed/brave.json):
{
"BraveWalletAllowed": false,
"BraveRewardsAllowed": false,
"IPFSEnabled": false
}
These policies override user settings and prevent re-enabling through the UI. The machine-wide configurations take precedence over per-user settings and require administrative privileges to modify.
Method 5: Compile Custom Build
For maximum control and minimal attack surface, build Brave from source with crypto features disabled entirely:
- Clone the Brave repository:
git clone https://github.com/brave/brave-browser.git cd brave-browser npm install - Modify component build configurations to disable features by default:
// In src/brave/common/brave_switches.cc
// Disable wallet features by default
const char kDisableBraveWalletFeature[] = "disable-brave-wallet";
const char kDisableIPFSFeature[] = "disable-ipfs";
const char kDisableSolanaFeature[] = "disable-solana";
- Configure build arguments in
src/brave/DEPSor via GN args: ```bash gn args out/DefaultAdd the following lines:
brave_wallet = false brave_rewards = false ipfs = false brave_solana = false
Then build
ninja -C out/Default brave
This approach requires significant build infrastructure including approximately 100GB of disk space and build dependencies. The resulting binary contains no crypto functionality, making it ideal for security research or high-security deployments.
## Verification: Confirming Disabled Status
After applying your chosen method, verify the features are properly disabled:
**Check Brave Wallet availability:**
```javascript
// Open browser console (F12) on any page
console.log(window.ethereum?.isMetaMask);
// Should return: undefined (wallet not present)
console.log(window.solana?.isPhantom);
// Should return: undefined (Solana wallet not present)
Check IPFS functionality:
# Attempt to resolve an IPNS domain
curl -I https://ipfs.io/ipfs/QmT5NvUtoM5nWFfrQdVrFtvGfKFmG7AHE8P34isapyhCxX
# Should fail or timeout if IPFS integration disabled
Check Rewards status:
# Navigate to brave://rewards-internals
# Should show "Rewards are disabled" or similar message
Check brave://settings:
- Wallet section should not appear
- Brave Rewards section should not appear
Security Considerations
Disabling crypto features provides several tangible benefits for security-conscious users:
Fewer code paths mean fewer potential vulnerabilities — wallet implementations frequently contain security flaws that attackers target. Disabling these features eliminates blockchain-related metadata leakage including wallet addresses, transaction patterns, and IPFS content hashes that could be correlated with user activity. Removing them also eliminates background crypto operations, wallet processes, and IPFS node resource consumption. This configuration can meet corporate or regulatory requirements that prohibit cryptocurrency software or require controlled browsing environments. Fewer features also means fewer updates required and less exposure to browser update-related vulnerabilities.
However, consider the tradeoffs before disabling everything. IPFS, for instance, has legitimate non-crypto uses for decentralized content delivery that can improve resilience against content censorship. Evaluate your specific security requirements and threat model before disabling everything.
Troubleshooting Common Issues
Settings revert after restart: User-level configurations may not persist. Use policy enforcement (Method 4) for persistent configuration or command line arguments (Method 3) for scripted deployments.
Features re-enable after update: Brave updates frequently reset feature flags and may re-enable components. Maintain deployment scripts that reapply settings after each update cycle.
Cannot access brave://flags: Enterprise installations may have flags locked via group policy. Contact your system administrator for access or use policy-based configuration instead.
Performance degradation persists: Background processes may continue even after UI disabling. Use process monitoring tools to verify crypto-related processes terminate completely.
Summary
Brave Browser’s crypto features can be disabled through multiple layers of configuration, each offering different tradeoffs between ease of implementation and permanence:
| Method | Persistence | Difficulty | Best For |
|---|---|---|---|
| GUI Settings | Medium | Easy | Individual users seeking basic control |
| Flags | Medium | Easy | Quick testing and temporary disabling |
| Command Line | Low | Medium | Scripted deployments and automation |
| Policies | High | Medium | IT administrators managing fleets |
| Custom Build | Highest | Hard | Security researchers and paranoid users |
Choose the method matching your technical requirements and deployment scenario. For most users, the combination of GUI settings and flags provides adequate control. Enterprise environments should implement policy-based configurations for consistency across managed devices.
For additional privacy hardening beyond crypto features, consider reviewing Brave’s Shields configuration, adjusting fingerprinting protection settings, and configuring network request blocking for known trackers.
Related Reading
Built by theluckystrike — More at zovo.one