Skip to main content

Introduction to User Wallets



Habanero Mainnet and Manzano Testnet are now live. Check out the docs on migration to learn how you can start building on Habanero and Manzano today.

Need some testLPX test tokens to mint a PKP on Chronicle? Use the faucet:


You can use Lit to build seamless, non-custodial wallets and onboarding experiences using Programmable Key Pairs (PKPs). Each PKP is an ECDSA public / private key pair created by the Lit network using Distributed Key Generation (DKG). Each Lit node holds a share, and more than two-thirds of these shares must be collected to execute a given action (i.e. a signed transaction). You can read more about how Lit works here.

When used to build a wallet, PKPs can make onboarding into and interacting with web3 significantly simpler and more secure. You can hook up web2-style authentication (i.e. Google OAuth, Passkeys, etc) to these keys to abstract away the complexities of seed phrases and self-custody. Since PKPs are decentralized, you don't have to worry about the inherent risks associated with key custodians, ensuring no one but your user can control their wallet and manage the assets within.

Features and Examples


  • Blockchain Agnostic: PKPs can be used to sign transactions on any blockchain or state machine supported by Lit. Currently, the SDK provides easy-to-use methods for creating wallets on EVM and Cosmos-based chains.
  • Programmable: Lit Actions can be used to automate signing with PKPs.
  • Non-Custodial: Each PKP is generated collectively by the Lit nodes using a process called Distributed Key Generation (DKG). As a network, this allows Lit to generate a new wallet where the private key never exists in its entirety.


Getting Started

You can get started with user wallets following this quick start guide. Below, you'll find some additional resources and example implementations:

  1. Seed-Phraseless Onboarding
  2. Use a PKP as a Signer on a Smart Account
  3. Using the Lit Explorer
  4. Working with Claimable Keys

Not finding the answer you're looking for? Share your feedback on these docs by creating an issue in our GitHub Issues and Reports repository or get support by visiting our Support page.