Jose Alexis Correa Valencia
@jalexiscv, hace 2 meses..
Cover 2 5E3A3F9925D4C

BitcoinVault : Oro electrónico sin robo de igual a igual


Resumen. La visión original de Satoshi Nakamoto para Bitcoin era crear una versión de efectivo electrónico de igual a igual. La mayoría de los tenedores exitosos del protocolo intentan mejorar aún más esta visión y proporcionar un sistema más escalable y eficiente para pagos Vemos la mayor promesa de Bitcoin no como un medio de intercambio sino como una tienda de valor: una mejor forma de oro, no efectivo. Proponemos un conjunto de modificaciones al protocolo original destinado a cumplir esta promesa creando la mejor tienda electrónica de valor. Al aumentar el tiempo efectivo de confirmación de transacciones de Bitcoin de 10 minutos a 24 horas, somos capaces de abordar el mayor defecto de Bitcoin como una forma de oro: susceptibilidad a robo. Un sistema orientado menos a pagar el café y más a mantener la vida ahorros con total tranquilidad, donde cada transacción es alertada en cadena por 144 se bloquea y se puede cancelar en caso de emergencia con una clave de recuperación que nunca se usó anterior y por lo tanto invulnerable. El arranque de este sistema no es a través de hard fork sino a través de un mecanismo más justo de minería acelerada, que permite al sistema alcanzar al Bitcoin en un corto período de tiempo. Nos gustaría dar todo el crédito al creador de la Libro blanco de Bitcoin Royale [[anchor]1[/anchor]] que creó la visión del oro electrónico sin robo. Como un equipo, nos gustaría avanzar con esa idea y comenzar a implementar todos las características cruciales que se mencionan a continuación y lo hacen aún más avanzado con soluciones privadas de terceros que se revelan como características adicionales en el párrafo 4.1.

Introducción

Bitcoin es un innovador sistema de pago descentralizado lanzado en 2009 que permite partes para realizar transacciones directamente sin pasar por una institución financiera de confianza, los el sistema se basa en la prueba de trabajo para mantener un libro mayor distribuido sin un confiable operador, eso es seguro siempre que los nodos honestos controlen más potencia de CPU que cualquier otro grupo cooperante de nodos atacantes. Bitcoin fue descrito originalmente por su creador Satoshi Nakamoto como un "sistema de efectivo electrónico". Se han lanzado múltiples modificaciones exitosas del protocolo original a través de años en forma de horquillas de la base de código de Bitcoin. Estos incluyen Litecoin [[anchor]3[/anchor]] que lanzado en 2011 para reducir el tiempo de confirmación de la transacción y cambiar la prueba de trabajo algoritmo para favorecer hardware de grado de consumo como GPU; Bitcoin Cash [4] que se lanzó en 2017 para escalar el rendimiento de las transacciones del protocolo original aumentando el tamaño del bloque; y Bitcoin Gold [[anchor]5[/anchor]] que también se lanzó en 2017 para renderizar equipos mineros especializados cambiando el obsoleto algoritmo hash.

Fiel a la visión original, el enfoque principal en estos tenedores y otros es hacer Bitcoin un mejor sistema de efectivo . Limitaciones del protocolo original como alta tarifas de transacción, tiempos de confirmación de 10 minutos y un rendimiento aproximado de solo 4 las transacciones por segundo dificultan la capacidad de Bitcoin de competir con el sistema centralizado en línea sistemas de pago dominantes hoy.

2. Efectivo electrónico u oro electrónico

Mientras que Bitcoin no vio mucho éxito con la adopción del consumidor como efectivo electrónico, ha sido significativamente más exitoso como una forma de oro electrónico . Hay un largo debate permanente de la industria si Bitcoin es superior como medio de intercambio o de hecho como una reserva de valor El oro no es un medio efectivo de pago para los bienes cotidianos y servicios. Los consumidores invierten principalmente en oro para protegerse contra la inflación y preservar el futuro poder adquisitivo. A diferencia de las monedas nacionales, la política monetaria fija y limitada de Bitcoin la oferta lo hace particularmente atractivo a este respecto.

La historia muestra que los sistemas rara vez se pueden diseñar para cumplir varios objetivos competitivos. La optimización de Bitcoin para convertirse en un mejor medio de intercambio disminuye su potencial como reserva de valor. En la misma nota, sacrificando más en las propiedades requerido para efectivo electrónico útil, podemos mejorar enormemente su utilidad como oro electrónico. En este artículo, proponemos una serie de modificaciones al protocolo original de Bitcoin enfocado en un solo objetivo: crear la mejor tienda de valor. Si ya no priorizamos competir como un sistema de pago en línea, no necesitamos enfocarnos en tarifas de transacción o rendimiento de la transacción. Después de todo, el oro es caro de transportar y normalmente se adquiere para inversiones a largo plazo. Una propiedad que es particularmente relevante para nuestros esfuerzos es el tiempo de confirmación de la transacción. Compensaciones en este frente, como Incrementando sustancialmente el tiempo promedio de confirmación de 10 minutos de Bitcoin, puede producir cardinal ventajas dado que no esperaríamos transportar un envío de oro a través de ubicaciones De todos modos, menos de 10 minutos, este sacrificio parece natural.

3. El problema del robo

El requisito clave de una reserva de valor es no ser perecedero. El robo es uno de los riesgos primarios de pérdida cuando se trata de algo de valor. El oro funciona bastante bien. El robo físico de oro es significativamente más riesgoso de ejecutar que cualquier ataque virtual en un activo electrónico. Además, un ladrón tendría dificultades para ocultar una carga considerable de oro robado de las autoridades, especialmente a través de las fronteras. Lavado y liquidación el oro robado en grandes cantidades mientras permanece anónimo tampoco es una tarea sencilla.

Desafortunadamente, a Bitcoin le va mal en comparación. Los fondos están protegidos por el protocolo con conjuntos de claves privadas criptográficas. Obtener acceso electrónico a estas claves permite a un atacante incautar todos los fondos de forma remota, inmediata e irrevocable. El Lavado de los fondos robados también es significativamente más fácil ya que las transacciones son seudónimas, trazabilidad puede ser interrumpido por el uso de mezcladores [6] y las identidades de Sybil se pueden crear a granel. Como un Como resultado, el robo de criptomonedas está en aumento con más de Mil millones robados en 2018 [7]. Las listas de incidentes importantes reportados por la comunidad muestran que incluso las instituciones profesionales bien informadas sobre las últimas prácticas de seguridad son propensas a ataques.

La gestión segura de las claves privadas por parte de los usuarios finales está demostrando ser unos de los principales desafíos del Bitcoin. Dado que las claves deben usarse regularmente para interactuar con los fondos y las transacciones firmadas deben transmitirse a través de Internet, cada clave eventualmente se convierte en un objeto vulnerable. Prácticas conscientes de la seguridad, como dividir los fondos entre "caliente" y "frío" de las billeteras son engorrosas y no resuelven el problema desde la raíz. Los incidentes muestran que caliente las billeteras inevitablemente contienen cantidades significativas [9, 10] y el uso de billeteras frías solo reduce interacción con teclas pero no la elimina por completo [11].

4. Solución antirrobo

Como un medio para eliminar el robo, proponemos retrasar la confirmación de todas las transacciones en el sistema por 24 horas. Cuando un minero agrega una transacción a un nuevo bloque, la transacción se ya no se cometerá de inmediato. En cambio, se agregará en la cadena como una alerta para el duración de 144 bloques (suponiendo un tiempo de bloqueo de 10 minutos). Si se deja sin molestias por 144 bloques, la transacción cambiará del estado de alerta a confirmado. El beneficio de las alertas en cadena es que los propietarios de monedas recibirán anticipos sin censura notificaciones cada vez que mueven sus monedas. El propietario tendrá 24 horas para actuar la alerta y podrá anular la transferencia si no está autorizada. Retiros retrasados son un estándar probado de la industria antirrobo en carteras de custodia y en los sistemas de la banca tradicional. Coinbase Vault [12], por ejemplo, tiene un tiempo de espera de 48 horas. Nuestra propuesta proporciona la misma protección sin un tercero de confianza. La anulación de emergencia de una transacción en estado de alerta requiere una proceso de recuperación especial y se lleva a cabo de inmediato sin estar sujeto a las 24 horas estándar de retraso. La transacción de recuperación requiere una clave de recuperación especial que debe registrarse en avance por parte del propietario de la billetera mediante una transacción de registro especial . Una vez que una clave de recuperación ha sido registrada, no se puede cambiar produciendose el equivalente de una transacción anulada.

La clave de recuperación privada está destinada a ser una clave nueva que nunca se ha utilizado antes de la anulación de emergencia. Esta clave se puede generar sin conexión y nunca se debe conectado a Internet o conectado a cualquier dispositivo. El proceso de registro solo requiere la parte pública de esta clave, asegurando que la clave privada pueda permanecer sin usar. A diferencia de las transacciones en frio donde las llaves de billetera se deben usarse ocasionalmente y, por lo tanto, son vulnerables al robo, la recuperación la tecla se usará por primera vez solo en la anulación de emergencia y, por lo tanto, puede ser completamente resistente al robo. Una vez que se ha utilizado la clave de recuperación, debe considerarse comprometido y todos los fondos deben transferirse inmediatamente a una nueva billetera protegida por una nueva clave de recuperación no utilizada.

Retrasar cada transacción en el sistema por 24 horas puede verse como un extremo medida que dificultará la usabilidad. En nuestra misión de crear la mejor tienda de valor, estamos dispuestos a intercambiar una forma menos atractiva de efectivo con una forma muy atractiva de oro que no puede ser robado. Esta compensación da una base sólida de un movimiento lento y capa base segura, que aún se puede acelerar en capas superiores como la Red Bitcoin Lightning[13].

4.1 3.a clave privada

Nos gustaría agregar una clave privada adicional (tercera) que disminuirá la requerida 144 confirmaciones a solo 1. Esta solución acelera el tiempo de transacción a alrededor de 10 minutos de las 24 horas requeridas. Usuarios que mantienen su tercera clave en una ubicación separada de los otros 2 tendrá un mayor nivel de seguridad, disuadiendo el robo.

5. Bloques

Al igual que el protocolo original de Bitcoin, cada bloque contiene una lista de confirmados transacciones y contiene el hash raíz Merkle de estas transacciones en su encabezado. Como las transacciones regulares deben esperar 24 horas en la cadena, no se pueden agregar inmediatamente a la sección de transacciones de un bloque. En cambio, se agregan a un nuevo especial sección que no existe en el protocolo original de Bitcoin: la sección de alertas . El hash de raíz de Merkle para la sección de alertas también se almacena en el encabezado del bloque. Cuando se extrae un nuevo bloque, el minero mira hacia atrás 144 bloques y examina la alerta sección del bloque N-144. Todas las alertas para transacciones que aún son válidas se convierten confirmado y poblar la sección de transacciones del nuevo bloque.

Los pasos para minar el bloque N son los siguientes:

  1. Agregue nuevas transacciones regulares para bloquear la sección N alertas (no confirmado).
  2. Agregue nuevas transacciones de registro para bloquear la sección N transacciones (confirmado).
  3. Agregue nuevas transacciones de recuperación a la sección de transacciones del bloque N (confirmado).
  4. Vaya a la sección de alertas del bloque N-144 y agregue las transacciones válidas para bloquear el N sección de transacciones (confirmada).

6. Transacciones

Las transferencias de monedas se realizan utilizando transacciones regulares idénticas a las de Bitcoin protocolo. Su formato no cambia a medida que se mueven de la sección de alertas a sección de transacciones.

Una transacción de registro tiene una sola entrada que especifica la clave del propietario de la billetera. La clave de recuperación se especifica en la primera salida, que debe tener un valor de cero. Se permite salida adicional con la misma clave de billetera. Cuando se procesa, el registro la transacción crea un UTXO de valor cero destinado a gastarse en la primera recuperación. La clave de la billetera y la clave de recuperación se pueden reemplazar con cualquier script general como multisig.

Una transacción de recuperación tiene dos entradas. La primera es la recuperación de UTXO, que debe pertenecer a la llave de la billetera. El segundo es el UTXO de valor cero que pertenece al Recuperación de claves. La primera salida debe especificar la clave de recuperación y tener un valor de cero. Se permiten salidas adicionales. Cuando se procesa, la transacción de recuperación crea un nuevo UTXO de valor cero destinado a gastarse en la próxima recuperación. Cuando una transacción de recuperación se procesa, se gasta el UTXO recuperado, invalidando así cualquier alerta existente que se base en este UTXO y evitando que se confirmen después de su retraso de 24 horas[/b].

7. compatibilidad

Nuestro diseño intenta hacer que el protocolo sea lo más compatible posible con el estándar protocolo de Bitcoin el objetivo subyacente es minimizar los cambios de código necesarios en los existentes nodos completos, clientes y billeteras.

La sección de alertas en bloques es la desviación principal del protocolo original y debe construirse de forma compatible con versiones anteriores. Para evitar cambiar el formato del encabezado de bloque, el hash de raíz de Merkle para la sección de alertas se almacena en la entrada de la transacción estándar de coinbase . Clientes existentes de Bitcoin que desconocen su existencia e ignorarán la sección y todas sus alertas. Sin embargo, todavía mostrarán la confirmación de transacción correctamente ya que las transacciones confirmadas se agregan a los bloques por mineros en la forma estándar después de 24 horas.

8. Incentivo

En general, el sistema toma prestado el modelo de incentivos de Bitcoin que ha demostrado su eficacia y exito en la última década. La incorporación de alertas requiere modificaciones menores. A este modelo Los mineros tienen incentivos para agregar nuevas transacciones como alertas a un bloque por parte de tarifa de transacción pagada en estas transacciones. Esto significa que la sección de alertas debe comenzar con una transacción de coinbase de alertas separada generada por el minero del bloque para distribuir tarifas de transacción de todas las transacciones que se encuentran en la sección de alertas. Naturalmente, estas tarifas no se distribuyen de inmediato, pero debe esperar 144 bloques para que el futuro minero cree el bloque que los confirma y los agrega a su sección de transacciones.

El futuro minero no recibirá los honorarios por transacciones confirmadas trasladadas del sección de alertas anteriores, pero aún se le dará la recompensa de bloque por extraer un nuevo bloque y todo tarifas de nuevas transacciones que se confirman de inmediato (como las transacciones de registro y transacciones de recuperación). Cuando el futuro minero crea la base de monedas estándar transacción para el bloque, las salidas de las transacciones de coinbase de alertas anteriores deben ser agregado para finalizar la distribución de tarifas. Este mecanismo implica que cualquier recuperación la transacción que invalida una alerta anterior debe compensar la tarifa de transacción en esta alerta Un posible ataque que debemos mitigar es el robo combinado con el biberón minero a través de Tarifa. Considere un atacante que ha obtenido el control de la clave privada de una billetera y crea un alerta de transacción no autorizada que paga una parte significativa del saldo de la billetera como tarifa.

Dado que cualquier transacción de recuperación debe compensar a los mineros por la tarifa, recuperando todos los robados los fondos no serán posibles. Proponemos limitar la tarifa máxima por transacción en el nivel de protocolo Este comportamiento ya es común en las billeteras, incluido Bitcoin Core, para proteger a los usuarios de accidentes.

9. Bootstrap

El protocolo Bitcoin introduce nuevas monedas en circulación gradualmente a través de recompensas en bloque. En los primeros días del protocolo, este comportamiento crea una inflación muy fuerte en suministro circulante, que disminuye con el tiempo. Dado que la escasez de suministro es primordial para un almacenamiento de valor, si se inicia de nuevo, el sistema no alcanzará su objetivo deseado de manera efectiva para un largo tiempo. Bitcoin, por otro lado, ya ha alcanzado un punto maduro en este sentido. Para fines de 2020, la inflación de Bitcoin será inferior al 1.8%, comparable al 1.6% del oro. [14] Proponemos poner al día el sistema en la misma etapa que Bitcoin para disfrutar del mismo nivel de madurez Esto también ayudará al mercado a evaluar el valor de este nuevo activo simplificando la comparación con Bitcoin.

Un método común para ponerse al día es confiar en el bloque de génesis original y duro bifurcando el libro mayor de Bitcoin en el lanzamiento. Esto importará todos los saldos existentes de Bitcoin en una proporción de 1:1. Creemos que este método no es ideal para una tienda de valor, ya que la mayoría de suministro se dará a las personas que hayan realizado un esfuerzo cero para lograrlo. Como alternativa más justa, proponemos lanzar desde un nuevo bloque de génesis con un corto período de arranque de minería acelerada. Este período debería durar como máximo un año, posiblemente acortado para cumplir con un evento simbólico como la próxima mitad de Bitcoin. Durante este arranque período, las recompensas en bloque para los mineros serán significativamente más altas de lo habitual, para que coincidan con el suministro circulante de Bitcoin al final del período. Una vez que el período de minería acelerado es terminado, el sistema continuará con el cronograma de recompensas en bloque del protocolo original en paralelo a Bitcoin. Un beneficio adicional de este enfoque es atraer agresivamente a los mineros en iniciar, por lo que al final de la rutina de carga, cuando el sistema esté listo para usarse como una tienda de valor, un poder hash significativo ya asegurará la red. Expresando este comportamiento en código C :

10. Trabajo relacionado

Estamos particularmente impresionados con el trabajo de Malte Möser et al. sobre los convenios de Bitcoin [15]. Su extensión del lenguaje de script de Bitcoin permite restricciones en el uso futuro de monedas, que se pueden usar para implementar una variedad de medidas de seguridad. El primario de que son transacciones de bóveda , que se asemejan a nuestro mecanismo de retiros retrasados propuesto. Hemos optado por una implementación más simple que no requiere una matriz recursiva de scripts personalizados para ser implementados por billeteras. Nuestra propuesta es más que opcional, es un cambio fundamental en el protocolo con un amplio efecto obligatorio en todos actos. Transmitir la carga de la implementación a los mineros y dejar al usuario final la experiencia de la transacción idéntica a la predeterminada, nos permite llevar a cabo mejor nuestra misión de crear oro electrónico verdadero.

Fuentes
  1. ((us_EN)) | Ian Duoteli Fleming - Bitcoin Royale - bitcoinroyale.org
  2. ((us_EN)) | S. Nakamoto - “Bitcoin: A Peer-to-Peer Electronic Cash System”, 2008. - www.bitcoin.org
  3. ((us_EN)) | Litecoin Project - “Litecoin, open source P2P digital currency”, 2014. - litecoin.org
  4. ((us_EN)) | Bitcoin Cash - “Bitcoin Cash”, 2018. - bitcoincash.org
  5. ((us_EN)) | Bitcoin Gold Organization - “Bitcoin Gold”, 2018 - bitcoingold.org
  6. ((us_EN)) | J. H. Ziegeldorf, F. Grossmann, M. Henze, N. Inden, and K. Wehrle - “Coinparty: Secure multi-party mixing of bitcoins”, In: CODASPY ’15, 2015 - CODASPY
  7. ((us_EN)) | CipherTrace - “Cryptocurrency Anti-Money Laundering Report, 2018 Q4”, 2019. - ciphertrace.com
  8. ((us_EN)) | Ryan McGeehan - “Blockchain Graveyard”, 2019. - magoo.github.io
  9. ((us_EN)) | C. Zhao - “Binance Security Breach Update (May 7 2019)”, 2019. - binance.zendesk.com
  10. ((us_EN)) | J. Buck, “Coincheck - Stolen $534M ln NEM Were Stored On Low Security Hot Wallet“, 2018 - cointelegraph.com
  11. ((us_EN)) | J. Preissler - “Important Notice: Only trade TIO on trade.io”,2018. - medium.com
  12. ((us_EN)) | Kim-Mai Cutler - “Coinbase Launches A More Secure Bitcoin Storage Option Called ‘Vault’”,, 2014. - techcrunch.com
  13. ((us_EN)) | J. Poon and T. Dryja - “The Bitcoin Lightning Network: Scalable Off-Chain Instant Payments”, (draft), 2016. - lightning.network
  14. ((es_CO)) | World Gold Council - “How much gold has been mined?”, 2018 - www.gold.org
  15. ((en_US)) | M. Möser, I. Eyal, E. Gün Sirer - “Bitcoin Covenants”, - Financial Cryptography and Data Security,FC 2016, Lecture Notes in Computer Science, Vol. 9604. Springer, Berlin, Heidelberg
Comentario
Image
Comentarios