Skip to main content

Key export settings

The key export setting controls whether your dapp can retrieve a user's private key programmatically through the Embedded Wallets SDK.

Key export settings

Export types

TypeAlways availableConfigurable
Manual (wallet UI)YesNo — always on
Programmatic (private_key method)NoYes — toggle in Project Settings

Manual export is always available through the built-in wallet interface. Users initiate it themselves; your dapp has no control over it.

Enable or disable programmatic export

  1. Navigate to Project SettingsAdvancedKey export.
  2. Toggle Enable key export.
  3. Save to apply.

When enabled, your dapp can retrieve the user's private key using the private_key JSON-RPC method on the auth adapter:

const privateKey = await web3auth.provider.request({
method: 'private_key',
})

When disabled, calling private_key throws an error. Manual export through the wallet UI remains available.

danger

Never store or transmit a private key in plaintext. Retrieve it only when necessary, process it immediately, and clear it from memory afterward.

When to disable programmatic export

Disable programmatic key export for consumer-facing dapps, dapps handling high-value assets, and regulated financial services. Most dapps do not need it — signing transactions through web3auth.provider does not require key export.

Next steps