Mucha gente entra al mundo cripto pero en realidad no conoce bien las cosas básicas: claves privadas y públicas en la cadena, las principales cadenas públicas, las bolsas de intercambio y las wallets. Yo mismo, durante mucho tiempo, no pude aclarar la relación entre todo eso. Hoy, como es fin de semana y estoy libre, haré una explicación sencilla y con analogías, para que sea fácil de entender:

La clave privada y la clave pública, en realidad, son una cadena larga de caracteres. En simple: clave privada = contraseña de la tarjeta; clave pública = número de la tarjeta; las distintas cadenas públicas = bancos de distintas entidades (por ejemplo, cadena de Bitcoin = Banco de China; cadena de Ethereum = Banco Industrial y Comercial; BSC de Binance = Banco de Construcción). La bolsa = el prestamista que realiza la conversión de activos. Las wallets se dividen en wallet caliente y wallet fría. La diferencia es si están conectadas a internet: las que están en dispositivos conectados como el móvil y el ordenador se llaman wallets calientes; las que están en dispositivos de hardware desconectados, que se comunican con el exterior mediante escaneo y emparejamiento por Bluetooth, se llaman wallets frías. Con una wallet fría, se necesita ejecutar una acción de firma en ese hardware para transferir activos. Por ejemplo, la wallet keyPal que vende TP es una wallet fría.

1. Clave privada y clave pública

Algoritmo de cifrado irreversible de clave privada x = clave pública (la clave pública es la dirección de la wallet). La relación entre clave privada y clave pública es 1 a 1: una clave privada corresponde a una clave pública. Si conoces la clave privada, conoces la clave pública. Pero como el algoritmo de cifrado no es reversible, a partir de la clave pública no se puede deducir la clave privada. O sea, cada dirección de wallet tiene asociada una única clave privada. Por ejemplo, una wallet bsc corresponde a una clave privada; una wallet de Bitcoin corresponde a una clave privada. Por eso, si por ejemplo cambias la wallet de Binance a su wallet de clave privada, verás muchas claves privadas: hay claves privadas de la cadena bsc, claves privadas de la cadena Ethereum y claves privadas de la cadena Bitcoin. Copia esas claves privadas e impórtalas en, por ejemplo, la wallet TP: así se recuperan las direcciones de wallet correspondientes a cada cadena, y podrás ver los activos que hay guardados en esas wallets.

2. Transferencias entre depósitos y retiros en la bolsa

La bolsa es como un gran “prestamista/tesorería”. Cuando tú creas una cuenta en una bolsa, la bolsa automáticamente te abre cuentas en las principales cadenas públicas (es decir, tiene las direcciones de wallet de todas esas cadenas; la dirección de wallet es la clave pública; y la clave privada correspondiente la gestiona la propia bolsa). Esto es como cuando tú abres una cuenta en ese prestamista: el prestamista abre automáticamente las cuentas (tarjetas bancarias) de cada banco por ti. Por ejemplo, la dirección de wallet de Bitcoin es como el número de la tarjeta del Banco de China; la dirección de wallet de Ethereum es como el número de la tarjeta del Banco Industrial y Comercial; la dirección de wallet de BSC en Binance es como el número de la tarjeta del Banco de Construcción. Cada número de tarjeta corresponde a una contraseña única: esa es la clave privada. La magia de la blockchain es que, quien tiene esa “contraseña” (clave privada), esos activos de la wallet son suyos. Es decir, si sabes la contraseña de la tarjeta, los activos que hay dentro de esa tarjeta son tuyos. Entonces alguien podría preguntar: si es una contraseña, ¿la podrá romper un ordenador? En realidad, la posibilidad es casi 0. No es una contraseña de 6 dígitos de tarjeta bancaria. La clave privada tiene 2^256, es decir, 10^77 posibilidades. La computadora más poderosa del mundo puede calcular 10^18 veces por segundo. ¿Qué significa eso? Aunque cuentes 10.000 billones por segundo, seguiría siendo solo 10^15. Para enumerar y descifrar por fuerza bruta esa clave, tomaría aproximadamente 10^77 ÷ 10^18 = 10^59 segundos, o sea 10^51 años. Incluso desde el Big Bang hasta ahora han pasado “solo” 10^10 años, así que es más largo que el Big Bang por 10^41 veces. Por lo tanto, para descifrarlo, tendrías primero que alquilar las supercomputadoras más avanzadas del mundo y luego proponerte una meta pequeña: vivir 10^41 años más que el Big Bang. Además, todas las direcciones de las wallets están en la cadena, y la cadena tiene la característica de ser pública y transparente. Por eso, si copias esa dirección de wallet en, por ejemplo, la wallet de observación de TP, puedes ver cuántos activos tiene esa wallet, igual que saber el número de una tarjeta te permite saber cuánto dinero hay en esa tarjeta. Estas direcciones de wallet funcionan en la cadena: solo cuando se trata de recargar (depósitos) o transferir, se involucra la cadena. Normalmente, dentro de “ese prestamista” se realizan los intercambios y el ajuste de activos. En cada operación, el prestamista cobra una comisión por compra y venta. Esa es la fuente de ganancias de la bolsa. Por eso, la bolsa es centralizada, mientras que la cadena es descentralizada. La bolsa por sí misma tiene servidores de base de datos locales; en la base de datos se registra la información de los activos de cada usuario, como si el prestamista tuviera un sistema de contabilidad. La base de datos es como la siguiente tabla:

Según el ID único del usuario, se gestionan los elementos de datos que siguen. Por ejemplo, cuando el usuario 1 realiza una transacción: en ese momento hay 200 USDT y 5 BNB. Si quiere usar USDT para comprar BNB y el precio es de 100 U por BNB, al comprar 1 BNB, en el registro de la base de datos el número de USDT pasa a ser 100 U y el número de BNB pasa a ser 6. Otro ejemplo: el usuario 1 recarga desde OKX a través de la cadena de Tron y transfiere a Binance; en realidad, todo el proceso es como una transferencia bancaria. Primero se elige a qué “banco” se transfiere (la cadena pública), luego se rellena el número de la tarjeta (es decir, la clave pública, la dirección de la wallet), después se introduce el importe a transferir (USDT 200) y, por último, se introduce la contraseña de la transferencia (la clave privada). Así se completa todo el proceso de transferencia, solo que en lugar de usar la clave, se usa, por ejemplo, una huella o un código numérico; el sistema vincula la clave a la huella mediante un mapeo. Cuando los 200 USDT del usuario 1 llegan a la wallet de Tron en Binance, la plataforma detecta que aumentaron los activos de la wallet, y entonces transfiere los USDT de la wallet de Tron del usuario 1 a la wallet caliente propia de la bolsa (como la ventanilla/caja de un prestamista). Al mismo tiempo, en el libro de contabilidad local de la bolsa, el número de USDT de esa base de datos aumenta en 200. Cuando se recopilan todos los saldos de USDT de todos los usuarios en esa wallet caliente, cada cierto tiempo se depositan en una wallet fría (como la caja fuerte del prestamista). El proceso de retiro es igual: cuando el dinero de la wallet caliente no alcanza, se saca una parte desde la wallet fría.

Es decir, la bolsa crea la cuenta/plataforma de usuarios y actúa como la función de gestionar todas las wallets en la cadena y sus claves privadas para todos los usuarios. Aquí surge el problema: un usuario tiene varias claves privadas, y hay cientos de millones de usuarios; gestionar tantas claves privadas sin duda es enorme y además es fácil que se pierdan. Esta es la modalidad de gestión de claves privadas que usaban las bolsas en la etapa temprana. Las bolsas actuales introducen la tecnología HD (jerárquica por niveles), es decir, una ruta con estructura de árbol para gestionar las claves privadas, como se muestra a continuación:

La bolsa genera la clave privada final en la forma de: clave privada raíz + número de protocolo de la cadena pública + número de usuario. La clave privada vuelve a generar la dirección de la wallet. De esta manera, solo necesitas recordar una clave privada raíz: con ella sabes todas las claves privadas y direcciones de wallet de los usuarios. Por ejemplo, usando clave privada raíz + m/44'/XX'/0'/0/ + número de usuario para generar la clave privada de esa cadena, donde XX=0 es la cadena de Bitcoin, XX=60 es la de BSC y la de Ethereum; ambas pertenecen a EVM, así que en realidad las claves privadas, claves públicas y direcciones de wallet generadas por esas dos cadenas públicas son iguales. Esto es como si ese usuario tuviera las mismas cuentas en un banco de construcción y en un banco industrial: el número de tarjeta es el mismo, aunque los activos estén en bancos diferentes. XX=195 es la cadena de Tron. Pongamos un ejemplo: CZ es el empleado número 1 de Binance y He Yi es el empleado número 2 de Binance. Cuando He Yi crea su cuenta en Binance, se genera en la cadena de Bitcoin una clave privada con la clave privada raíz + m/44'/0'/0'/0/2. Esa clave privada genera luego la clave pública, es decir, la wallet de Bitcoin de He Yi. Al mismo tiempo, en la cadena bsc también se genera una clave privada con clave privada raíz + m/44'/60'/0'/0/2, que vuelve a generar la clave pública: o sea, la wallet de bsc de He Yi. Por eso, con gestionar una sola clave privada raíz, gestionas todas las wallets de esa bolsa. El principio de la wallet fría es el mismo: se genera esta clave privada raíz a partir de la frase mnemónica; después de importar esa clave privada raíz, ya obtienes los activos del usuario en todas las cadenas.