Inicio / Blockchain / Blockchain: De Cero a Desarrollador / Wallets y Gestión de Claves

Wallets y Gestión de Claves

Hot/cold wallets, HD wallets, BIP-39, MetaMask y multisig.

Principiante
🔒 Solo lectura
📖

Estás en modo lectura

Puedes leer toda la lección, pero para marcar progreso, hacer ejercicios y ganar XP necesitas una cuenta Pro.

Desbloquear por $9/mes

Wallets y Gestión de Claves

Las wallets (billeteras) son herramientas que permiten interactuar con la blockchain: almacenan claves privadas, firman transacciones y muestran balances. Comprender cómo funcionan es crucial tanto para usuarios como para desarrolladores.

¿Qué es una Wallet?

Una wallet NO almacena criptomonedas. Las criptomonedas siempre están en la blockchain. Lo que la wallet almacena es la clave privada que da acceso a esos fondos:

Concepto erróneo:  Wallet = Caja fuerte con monedas dentro
Realidad:          Wallet = Llavero con la llave de tu caja en la blockchain

Tu "balance" es simplemente la suma de todas las
transacciones recibidas - transacciones enviadas,
registradas en la blockchain.

Tipos de Wallets

Hot Wallets (conectadas a internet)

Tipo              Ejemplo               Seguridad   Conveniencia
──────────────────────────────────────────────────────────────────
Browser Extension  MetaMask              Media       Muy alta
Mobile App         Trust Wallet          Media       Alta
Desktop App        Exodus                Media       Alta
Web Wallet         MyEtherWallet         Baja        Alta

Cold Wallets (offline)

Tipo              Ejemplo               Seguridad   Conveniencia
──────────────────────────────────────────────────────────────────
Hardware Wallet    Ledger, Trezor        Muy alta    Media
Paper Wallet       Claves impresas       Alta*       Baja
Air-gapped         PC sin internet       Muy alta    Baja

Generación de Claves

Entropía y aleatoriedad

La seguridad de todo el sistema depende de la calidad de la aleatoriedad al generar la clave privada:

Clave privada = 256 bits aleatorios

Espacio de claves: 2²⁵⁶ posibilidades
= 1.16 × 10⁷⁷ combinaciones

Para contexto:
- Átomos en el universo visible: ~10⁸⁰
- Es computacionalmente imposible adivinar una clave

Frases Mnemónicas (BIP-39)

En lugar de recordar una clave privada hexadecimal, se utilizan 12 o 24 palabras en inglés:

Ejemplo de frase mnemónica (12 palabras):
"abandon ability able about above absent
 absorb abstract absurd abuse access accident"

Proceso:
1. Generar 128-256 bits de entropía
2. Agregar checksum
3. Dividir en grupos de 11 bits
4. Cada grupo = índice en wordlist de 2048 palabras
5. Las palabras → seed (512 bits via PBKDF2)
6. Seed → múltiples claves privadas (HD wallet)

HD Wallets (BIP-32/BIP-44)

Las Hierarchical Deterministic wallets generan un árbol de claves a partir de una sola seed:

Seed (frase mnemónica)
    │
    └── Master Key
         │
         ├── Account 0 (Ethereum)
         │    ├── Address 0  ← m/44'/60'/0'/0/0
         │    ├── Address 1  ← m/44'/60'/0'/0/1
         │    └── Address 2  ← m/44'/60'/0'/0/2
         │
         ├── Account 1 (Bitcoin)
         │    ├── Address 0  ← m/44'/0'/0'/0/0
         │    └── Address 1  ← m/44'/0'/0'/0/1
         │
         └── Account 2 (Polygon)
              └── Address 0  ← m/44'/60'/1'/0/0

Derivation Path

m / purpose' / coin_type' / account' / change / index

m/44'/60'/0'/0/0  → Primera dirección Ethereum
m/44'/0'/0'/0/0   → Primera dirección Bitcoin
m/44'/60'/0'/0/1  → Segunda dirección Ethereum

44' = BIP-44
60' = Ethereum (coin type)
0'  = Primera cuenta
0   = Direcciones externas
0   = Primer índice

MetaMask: La Wallet del Desarrollador

MetaMask es la wallet más utilizada para desarrollo en Ethereum. Funciona como extensión del navegador y provee:

Funcionalidades principales:
- Gestión de cuentas (múltiples direcciones)
- Conexión a diferentes redes (mainnet, testnets, local)
- Firma de transacciones
- Interacción con DApps
- Inyección de window.ethereum en el navegador

Redes configurables:
- Ethereum Mainnet   (chainId: 1)
- Sepolia Testnet    (chainId: 11155111)
- Localhost          (chainId: 1337)
- Custom RPC         (cualquier EVM)

Seguridad de Wallets

Mejores prácticas

✓ HACER:
  - Respaldar la frase mnemónica offline (papel, metal)
  - Usar hardware wallet para cantidades significativas
  - Verificar direcciones antes de enviar
  - Usar wallets de prueba para desarrollo
  - Revocar aprobaciones de contratos innecesarias

✗ NO HACER:
  - Guardar la seed phrase digitalmentey (foto, email, cloud)
  - Compartir la clave privada jamás
  - Conectar la wallet a sitios desconocidos
  - Usar la misma wallet para desarrollo y fondos reales
  - Ignorar alertas de phishing

Multisig Wallets

Las wallets multifirma requieren M de N firmas para ejecutar transacciones:

Ejemplo: Wallet 2-de-3

3 propietarios: Alice, Bob, Carol
Se necesitan 2 firmas para cualquier transacción

Alice + Bob   ✓ → Transacción aprobada
Alice + Carol ✓ → Transacción aprobada
Solo Alice    ✗ → Necesita otra firma

Usado por:
- DAOs para gestionar tesorerías
- Empresas para fondos corporativos
- Gnosis Safe es la implementación más popular

Interacción Programática

// Conectar MetaMask desde una DApp
async function connectWallet() {
    if (typeof window.ethereum !== 'undefined') {
        const accounts = await window.ethereum.request({
            method: 'eth_requestAccounts'
        });
        console.log('Conectado:', accounts[0]);
        return accounts[0];
    }
    throw new Error('MetaMask no instalado');
}

// Obtener balance
async function getBalance(address) {
    const balance = await window.ethereum.request({
        method: 'eth_getBalance',
        params: [address, 'latest']
    });
    // balance está en Wei (hex)
    const ethBalance = parseInt(balance, 16) / 1e18;
    return ethBalance;
}

Resumen

Las wallets son la interfaz entre el usuario y la blockchain. Almacenan claves privadas, no criptomonedas. Las HD wallets permiten generar múltiples direcciones desde una sola seed phrase. La seguridad de la wallet es la seguridad de tus fondos: respaldar la seed phrase offline y usar hardware wallets para cantidades importantes son prácticas esenciales.

🔒

Ejercicio práctico disponible

Gestión de wallets simplificada

Desbloquear ejercicios
// Gestión de wallets simplificada
// Desbloquea Pro para acceder a este ejercicio
// y ganar +50 XP al completarlo

function ejemplo() {
    // Tu código aquí...
}

¿Te gustó esta lección?

Con Pro puedes marcar progreso, hacer ejercicios, tomar quizzes, ganar XP y obtener tu constancia.

Ver planes desde $9/mes