38 lines
1.0 KiB
Markdown
38 lines
1.0 KiB
Markdown
# Wallet And Signing Lab
|
|
|
|
This lab is for disposable development wallets only.
|
|
|
|
Do not use:
|
|
|
|
- real seed phrases
|
|
- hardware wallet recovery words
|
|
- funded private keys
|
|
- exchange account keys
|
|
|
|
## Commands
|
|
|
|
```bash
|
|
./jeannie blockchain-wallet instructions
|
|
./jeannie blockchain-wallet new
|
|
export PRIVATE_KEY=0x...
|
|
./jeannie blockchain-wallet address
|
|
./jeannie blockchain-wallet sign-message "homelab devnet login"
|
|
```
|
|
|
|
## What To Learn
|
|
|
|
- A private key controls an address.
|
|
- A signature proves control of a private key without revealing it.
|
|
- A transaction signature authorizes state change on a specific chain.
|
|
- Chain IDs matter because they prevent replay across networks.
|
|
- Seed phrases and private keys are secrets, not configuration.
|
|
|
|
## Safe Practice Flow
|
|
|
|
1. Start the devnet with `./jeannie blockchain-devnet up`.
|
|
2. Use one of Anvil's printed dev private keys or generate a disposable key.
|
|
3. Derive the address.
|
|
4. Sign a harmless message.
|
|
5. Verify the address and signature with Foundry/Cast experiments.
|
|
6. Throw away the key when done.
|