StarkWare's Layer 2 utilizes separate public / private keys from your Ethereum keys. Currently, most wallets will integrate with Starkware in the following way:
dYdX’s website running in your browser will generate your private stark keys deterministically based off of a signature from your wallet. Since the keys are generated deterministically, your same wallet can later be used to regenerate your stark keys if needed. Your stark keys are never sent to dYdX's servers or anywhere else, they are held directly by you in your browser.
Your private stark key will then be used to sign any transactions you agreed to on L2. These signatures are automatically performed by the website running on your machine as needed.
More and more wallets are integrating StarkWare’s technology (Ledger nanoS, Authereum, and more to come). Such integration will allow the private stark key to be stored in the wallet, rather than in the browser.
Are any wallets not supported?
Currently, smart contract wallets such as Argent are not compatible with dYdX.