Connect with us

Cripto

¿Qué es la wallet Electrum de Bitcoin?

Publicada

el

Deprecated: str_contains(): Passing null to parameter #1 ($haystack) of type string is deprecated in /var/www/html/wp-includes/shortcodes.php on line 246


Electrum es una wallet de Bitcoin para PC y teléfonos que no custodia fondos y utiliza sus propios servidores para validar transacciones de la red. De esta manera, la wallet permite administrar bitcoin de manera fácil y segura, entregando todo el poder de este protocolo a sus usuarios a través de múltiples funciones de pago.

Fundada en 2011 por Thomas Voegtlin, quien es científico en computación e investigador del INRIA, Electrum es uno de los proyectos de wallets de Bitcoin de mayor trayectoria. Desde su nacimiento, el proyecto se centró en resolver problemas de lentitud y complejidad que enfrentaban otras wallets. Con el paso del tiempo, sus desarrolladores continúan innovando año tras año al integrar nuevas funciones para sus usuarios. Además, su software es de código abierto con licencia MIT y es compatible con varios hardware wallets y otros softwares (clientes) de Bitcoin.

Entre las funciones que desarrolla Electrum se encuentran los pagos a través de la red Lightning, que permite enviar y recibir bitcoin de manera rápida y con comisiones más bajas.

Esta wallet puede descargarse en computadoras de escritorio que utilicen sistemas operativos Windows y Linux. Además, tiene versiones para teléfonos móviles que usen iOS y Android. Y si el usuario tiene un nivel más de experticia, también puede usarse en dispositivos que tengan chips ARM (como Rapsberry Pi), una tecnología que no es compatible con todas las wallets de software.

1 ¿Cómo funciona Electrum?

El diseño de la wallet Electrum se enfoca en la descentralización de su infraestructura, que permite pagos más rápidos y seguros.

Electrum es un SPV, siglas en inglés de verificación de pago simplificado, con una arquitectura cliente/servidor. Esto significa que funciona como un cliente ligero de Bitcoin. En lugar de descargar todo el historial de transacciones para verificar la validez de un pago, descarga solo una versión resumida. Para esto, la wallet debe conectarse con los servidores de Electrum, que son nodos completos que proporcionan los datos requeridos para saber si una transacción no ha sido gastada previamente.

El protocolo de Electrum selecciona servidores de manera aleatoria, a partir de una lista, pero tiene la opción de seleccionar manualmente un servidor específico. La sincronización con varios nodos simultáneamente garantiza que el software tiene información actualizada de la red. Esto permite comprobar que una transacción no ha sido gastada previamente y propagar una nueva transacción de manera rápida.

Electrum conecta con servidores propios y de voluntarios al rededor del mundo. Fuente: Electrum

Una característica singular de Electrum es que, por defecto, crea wallets que no parten de un estándar. Esto quiere decir que no usa el estándar BIP39 que utilizan la mayoría de los monederos y que permite recuperar los fondos de wallets compatibles en cualquier otro monedero, a través de una frase de 12 o 24 palabras (también conocida como semilla).

En lugar de BIP39, crea monederos basados en su propio protocolo, que ninguna otra wallet usa de manera predeterminada. Como consecuencia, los usuarios de Electrum solo pueden usar sus frases semillas en Electrum.

Cada frase semilla puede generar 8,4 mil millones de direcciones únicas de recepción, aunque Electrum solo muestra 20 por defecto.

Direcciones sin usar en Electrum
: Electrum muestra 20 direcciones públicas disponibles para su uso. Fuente: Electrum

Cuando se generan estas direcciones, la wallet debe conectarse a un nodo y preguntar si una dirección tiene bitcoins asociados. No verifica los 8,6 mil millones de direcciones, sino solo las primeras 20 direcciones. Si no se usan, la wallet solicitará otras 20 direcciones sin usar al servidor de Electrum, y así sucesivamente.

Este límite de 20 direcciones se puede modificar, por ejemplo, a 500 direcciones. Sin embargo, no tiene instrucciones y el procedimiento requiere ingresar un par de comandos. Abajo de la lista de direcciones sin usar, están las direcciones de cambio utilizadas a lo largo del tiempo.

¿Electrum es una wallet fría?

No, Electrum es una wallet de software que para la mayoría de sus funciones requiere estar conectada a Internet. Sin embargo, el software de Electrum puede implementarse en una computadora sin conexión a Internet. De esta manera se pueden guardar claves privadas y firmar transacciones offline, o verificar si las direcciones que un hardware wallet está creando son correctas. Además, tiene un modo de solo vigilancia u observación, que no permite gastar monedas.

Al crear o restaurar una wallet de Bitcoin con Electrum, se puede elegir qué tipo de dirección tener:

  • Legacy: estas son las direcciones originales de Bitcoin, que comienzan con un 1.
  • Pay-to-Script-Hash: son todas estas direcciones comienzan con 3.
  • Segwit: después de la bifurcación suave de Segwit en 2017, se pueden crear “hash de clave pública de pago por testigo” (también llamados “Segwit nativo” o “Bech32”). Estas direcciones son los más utilizadas en la actualidad y comienzan con “bc1q”.
  • Taproot: esto aún no cuenta con soporte de Electrum. Taproot fue una bifurcación suave en 2021. Las direcciones comienzan con «bc1p».

¿Cómo se conecta Electrum con hardware wallets?

Para que los hardware wallets se conecten a Electrum, el software genera monederos sin claves privadas. La mayoría de las personas que tienen un monedero de hardware utilizan el software que viene en la computadora con el dispositivo, pero no suelen ser de código abierto. Electrum es una alternativa que se puede utilizar con prácticamente cualquier dispositivo de hardware como Ledger, Trezor o Bitbox.

2 ¿Qué es un servidor Electrum?

Un servidor de Electrum es básicamente un nodo completo de Bitcoin. Denominado Electrum Server, proporciona un estado completo de todo el historial de transacciones de la red (que en la actualidad supear los 500 GB). Cumple la función de conectarse con nodos de Bitcoin Core, pues el software no se conecta directamente con ese cliente, lo que puede llegar a ser molesto para muchos usuarios.

Aunque Electrum posee numerosos nodos conectados a la red de manera descentralizada, la lista de nodos que interactúan con Electrum es mucho más amplia porque, como cualquier servidor, tiene acceso a nodos de Bitcoin independientes de voluntarios alrededor del mundo. Esto significa que la caída de un nodo no afecta a ningún usuario, porque otros nodos proporcionarían la información necesaria.

Anuncio

¿Qué red usa Electrum?

Electrum utiliza la red Bitcoin. Esta red es una red descentralizada de nodos que procesan y verifican las transacciones de Bitcoin. Electrum se conecta a esta red para sincronizar su base de datos de transacciones y bloques, lo que le permite verificar saldos, realizar transacciones y proporcionar información sobre la red Bitcoin.

Los servidores de Electrum son utilizados por otras wallets de software y servicios de pago que usan Bitcoin. Sin embargo, nada impide que cualquier persona ejecute un nodo de Electrum de manera local para su propia seguridad.

Entre los softwares que se pueden utilizar para implementar un nodo de Electrum se encuentran los siguientes:

  • Electrum Personal Server: Software oficial que simplifica el proceso de configuración e incluye actualizaciones automáticas.
  • ElectrumX: Servidor Electrum de código abierto más popular. Requiere un poco más de configuración, pero es más ligero.
  • Fulcrum: Implementación alternativa de ElectrumX con características adicionales.
  • Electrs: Implementación en Rust de un servidor Electrum.
  • Electrum Docker: Contenedor Docker con ElectrumX para facilitar el despliegue en VPS, servidores dedicados u otros sistemas. Al ejecutar tu propio nodo, controlas totalmente tus datos y no dependes de terceros. Además, al no compartir tus direcciones públicas con otros usuarios se evita el riesgo de correlacionar tus transacciones y vincularlas a tu IP.
  • Bitcoin Wallet Tracker: indexador de billeteras codificado en rust.
  • Obelisk: servidor Electrum mínimo que utiliza zeromq y libbitcoin como backend.
Descarga de Electrum Personal Server
Electrum Personal Server es una herramienta útil para optimizar las funciones de Bitcoin. Fuente: Electrum.

3 ¿Para qué sirven las etiquetas de Electrum?

Electrum ofrece la opción para etiquetar las UTXO (o salida de transacción no gastada). Esta función no es única de esta wallet, pero resulta muy útil si alguien desea mantener la privacidad a través de un buen control de las monedas que recibe y gasta.

Al etiquetar las UTXO, los usuarios pueden saber cuáles monedas gastar. Por ejemplo, si alguien tiene una moneda sin KYC, que compró con efectivo, podría querer mantenerla privada. Si la wallet selecciona esa moneda junto con otra de un pago gestionado a través de un exchange que exige KYC, al enviar el total combinado a alguna dirección, la moneda privada puede identificarse como perteneciente a quien sea el propietario de la moneda que recibió a través del exchange (ya que alguien tenía la capacidad de gastar ambas juntas). Es mejor evitar eso.

Las etiquetas se pueden guardar en un archivo para que se puedan cargar en una computadora diferente en caso de que tenga wallets duplicadas.

4 ¿Cómo usar Coin Control de Electrum?

La selección de monedas, o Coin Control, es una característica que puede llegar a ser muy importante si se usa adecuadamente junto con las etiquetas.

Para usar esta función, el usuario debe ir a la ventana de direcciones y elegir la moneda que quiere gastar, o agrupar varias. Si no selecciona qué moneda quiere gastar, como cualquier otro software, Electrum elegirá la «mejor» moneda para gastar.

Sin embargo, el software no siempre sabe qué es lo mejor. Por ejemplo, no sabe qué monedas no debe fusionar, para evitar romper la privacidad, cuáles son ataques de polvo y cuáles son mixtas. En este caso, el usuario puede saberlo porque si usa las etiquetas luego puedes decidir cómo gestionar sus monedas.

Coin Control en Electrum
Seleccionar monedas para gastar en Electrum es una función importante para mantener la privacidad. Fuente: Electrum.

5 ¿Para qué sirve Payjoin y Coinjoin en Electrum?

Electrum cuenta con una función oculta (hay que buscarla en el menú como Pay to Many o Pagar a Varios) que permite elegir varios destinos al gastar. Por ejemplo, se puede tomar 10 BTC y pagar una nómina de 50 empleados.

Pay to Many es una función que permite crear PayJoins y CoinJoins manualmente. Cuando se usa para hacer CoinJoin, el software agrupa múltiples transacciones de diferentes usuarios en una sola transacción. Esto hace que sea difícil determinar qué fondos pertenecen a cada usuario, ya que todas las salidas de la transacción se mezclan.

PayJoin es, por su parte, una alternativa más reciente y escalable a CoinJoin. En lugar de mezclar múltiples transacciones en una sola, PayJoin permite que un pagador agregue sus fondos a una transacción existente, mezclando sus fondos con los del receptor.

6 ¿Cómo acelerar una transacción con Electrum?

Electrum es muy simple de usar, incluso si se trata de una persona con poca experiencia. Sin embargo, esta wallet ofrece muchas más opciones para controlar los envíos y la recepción de bitcoin.

Cuando se realiza un pago a una dirección y se encuentra en espera en la mempool, Electrum muestra el pago junto con la dirección, lo cual es útil: las personas involucradas no necesitan esperar a que un minero extraiga la moneda para saber que se realizará el pago.

Electrum también permite gastar monedas no confirmadas. Por ejemplo, si un remitente establece una comisión muy baja y la confirmación está tardando, puedes acelerar el pago gastando la transacción no confirmada en otras direcciones.

En esa segunda transacción, el usuario agregaría una comisión de minería alta. Para cobrar la tarifa, un minero tendría que incluir la primera transacción (no lucrativa) y la transacción que se creó posteriormente (lucrativa). ¿Por qué? Porque la segunda transacción no es válida hasta que la primera transacción sea válida (ya que no se puede gastar monedas que teóricamente no existen). Esta técnica se llama «el hijo paga por el padre», cuyas siglas en inglés son CPFP.

Otra técnica para acelerar los pagos que admite Electrum se llama RBF (siglas de reemplazo por comisión).  En este caso, el remitente reenviará el UTXO original que se ha “gastado”, pero aún no se ha minado, a la cadena de bloques. Ese UTXO se incluye en una transacción alternativa (se gastaría en la misma dirección de la primera transacción o en otra), y con una comisión de minería más alta. Cualquiera de las dos transacciones que se mine primero será válida y la otra se vuelve inválida.

Acelerar pago con RBF en Electrum
La opción de incrementar la comisión se puede activar con un clic. Fuente: Electrum

7 ¿Qué son las wallets multifirma de Electrum?

Una wallet multifirma de Bitcoin, también conocida como wallet compartida, es un monedero digital que requiere de dos o más firmas para confirmar y enviar una transacción. Durante un tiempo, Electrum era la única wallet de software que se podía usar con la función para administrar wallets multifirma.

Electrum permite coordinar usuarios o consignatarios con claves de acceso rápido (wallets de software) o claves frías (conectar wallets de hardware).

Las claves públicas multifirma se pueden crear de una en una en diferentes computadoras (o wallets de hardware), en días y lugares distitnos; distribur las claves públicas multifirma reduce el riesgo de un único punto de falla o ataque.

8 ¿Cómo funciona Lightning en Electrum?

Electrum integró los pagos a través de la red Lightning en 2019. Desde entonces han incorporado distintas funciones que facilitan el uso de esta red.

Anuncio

Requiere la creación de canales de pago. Las contrapartes se ponen de acuerdo para depositar fondos en el canal y establecer su límite. Una vez que se confirma la creación del canal, se puede usar para pagar servicios, compras en establecimientos o en línea.

Entre las características más destacadas de Lightning en Electrum se encuentra la función de pagos trampolín. Estos permiten que las wallets puedan ejecutarse como si fuesen un nodo completo en Lightning, haciendo que los fondos dentro de los canales de pago sean custodiados por el propio monedero y no por un tercero.

Además, es posible enviar el “vuelto” de una transacción, o “cambio tóxico”, a un canal de pago de Lightning para refinanciarlo. Esto evita pagar una comisión extra para fondear un canal, si de cualquier manera el usuario tiene previsto realizar una determinada operación en la red principal de Bitcoin.

Lightning en Electrum
El ”cambio” de una transacción en cadena se puede enviar como un intercambio submarino a un canal de pago de Lightning. Fuente: Electrum.

9 ¿Electrum funciona sin conexión?

Es posible instalar Electrum en una computadora que no esté conectada a Internet (computadora con aislamiento o epacio de aire). Esa computadora se puede usar para verificar que una wallet de hardware haya creado las direcciones correctas a partir de la semilla.

Por ejemplo, un usuario compra un Coldcard o un BitBox02, que crea una semilla de 24 palabras y, a partir de ella, genera direcciones con claves privadas asociadas ocultas a la vista.

Asumimos que esa persona podría no tener total confianza en el software que utilicen esas wallets. Entonces, para comprobar que las direcciones son auténticas, hay que restaurar las palabras clave en una wallet diferente (por ejemplo, Electrum) y asegurarse de que Electrum genere direcciones idénticas.

Debido a que un malware puede extraer las pulsaciones de teclas y robar los bitcoins, no es recomendable realizar esto en cualquier computadora vieja que tenga Electrum. Una solución es ingresar las semillas en Electrum en una computadora limpia y segura con espacio de aire o sin conexión.

Una forma de hacerlo es con una Raspberry Pi Zero. Este dispositivo utiliza un chip ARM, lo que significa que no todos los monederos de software son compatibles. Pero Electrum sí y es una buena alternativa para explotar las funciones de este software.

10 ¿Cuáles son las ventajas de usar Electrum?

  • Electrum usa SPV, lo que quiere decir que usa servidores aleatorios para hacer validaciones simples de las transacciones. No es tan seguro como un nodo completo de Bitcoin Core, pero es útil.
  • Utiliza verificación en dos pasos (2FA), que añade una capa extra de seguridad.
  • Electrum es de código abierto, lo que significa que cualquier desarrollador puede revisar el código y buscar vulnerabilidades, lo que aumenta la confianza en la seguridad de la wallet.
  • Previene espionaje de transacciones al rotar las direcciones de pago. Sin embargo, el usuario debe asegurarse de usar una nueva dirección para cada pago.
  • Electrum tiene una interfaz sencilla y fácil de navegar, lo que la hace accesible para usuarios de todos los niveles.
  • Ofrece un amplio control sobre las comisiones que los usuarios pagan. Incluye el uso de RBF y CPFP.
  • Cuenta con una amplia variedad de plugins que permiten personalizar la experiencia y agregar funcionalidades adicionales.
  • Admite Payjoin y Coinjoin, para manejar pagos múltiples de manera privada.
  • También se pueden realizar transacciones multifirmas, que añaden seguridad sobre ciertas operaciones.
  • Electrum permite conectarse a la red Tor para aumentar la privacidad y ocultar la dirección IP.

11 ¿Cuáles son las desventajas de usar Electrum?

  • A pesar de que Electrum es un proyecto con una larga trayectoria, ha experimentado algunas vulnerabilidades en el pasado. Aunque los desarrolladores suelen ser rápidos en lanzar parches, es crucial mantener la billetera actualizada para evitar riesgos.
  • Electrum utiliza servidores centrales para verificar las transacciones. Estos servidores podrían conocer datos sobre los pagos y las direcciones IP de sus usuarios.
  • Electrum no se conecta directamente con nodos completos de Bitcoin Core, para ejecutar esa conexión, que es necesaria, la wallet utiliza sus propios servidores.