By default, users can export their private keys from embedded wallets. You can control this setting in the Embedded Wallets console. Navigate to the Security section and toggle Private Key Exports to enable or disable private key exports.
Consider disabling private key exports if your use case requires additional security controls. Disabling exports prevents users from exporting keys, which can reduce the risk of key exposure but limits user portability. See Best Practices — Private Key Export Controls for guidance.
To open the export wallet flow on behalf of your users, call RevealEmbeddedWalletPrivateKey() on the SDK’s UI module. This presents a secure flow where only the end-user can see their private key.
using DynamicSDK.Core;using UnityEngine;using UnityEngine.UI;public class RevealPrivateKey : MonoBehaviour{ [SerializeField] private Button revealButton; private void Start() { revealButton.onClick.AddListener(OnRevealPrivateKey); } public void OnRevealPrivateKey() { DynamicSDK.Instance.UI.RevealEmbeddedWalletPrivateKey(); Debug.Log("Reveal private key flow opened"); }}
You should always provide your end-users with a path to reveal and replicate their keys from their embedded wallet. When using a custom UI embedded wallet flow, ensure you add a path for users to complete this step using the method described above.
End-users should be aware that replicating their wallet credentials can expose their wallet to risk if the credentials are not stored securely. Users are advised to store their credentials in a secure location and not share them with anyone. When implementing Dynamic in a custom UI, we recommend communicating these warnings to users.
Last modified on October 29, 2026
Assistant
Responses are generated using AI and may contain mistakes.