Multifirma

Multisignature ( del inglés  multisignature ) es un esquema para implementar una firma electrónica , que requiere claves T de un grupo de N miembros [1] ( T < N ) para su confiabilidad. En esencia, es una variante de la firma de umbral , pero no se implementa como un objeto único, sino como una verificación de las condiciones especificadas, que se lleva a cabo mediante el sistema básico de scripts de criptomonedas [2] .

Multifirma en Bitcoin

Una característica de Bitcoin y muchas otras criptomonedas es la irreversibilidad de las transacciones: no existe un mecanismo para cancelar una transacción que ha ingresado a la cadena de bloques , y tampoco existe la posibilidad de otra acción que ignore la voluntad del propietario actual. Pero Bitcoin tiene un lenguaje de secuencias de comandos incorporado que le permite especificar una variedad de condiciones adicionales para las transacciones. Una de las posibles condiciones implementadas a través de scripts es la creación de una dirección de bitcoin, que requiere un número específico de firmas de una lista dada (el principio T - de- N ) para administrarla [2] .

El primer carácter de las direcciones de bitcoin generadas usando multisig es un 3 (las direcciones de bitcoin regulares comienzan con uno).

En agosto de 2013, BitGo fue el primero en implementar una interfaz en la que los clientes de la empresa podían crear y utilizar direcciones multifirma sin acceso directo a scripts [3] .

Una firma múltiple en bitcoin es un conjunto de firmas de diferentes usuarios, no una sola entidad. La multifirma se implementa en otras criptomonedas de diferentes maneras [4] [5] . El lenguaje de contrato inteligente de Ethereum es mucho más poderoso que el lenguaje de secuencias de comandos de Bitcoin.

Las direcciones son muy utilizadas para operaciones en las que se necesitan dos claves cualesquiera de las tres acordadas. En la mayoría de los casos, esto es lo que significa el término "firma múltiple". Permiten la realización de transacciones reversibles .

Transacciones reversibles en Bitcoin

La irreversibilidad de las transacciones se convierte en un problema importante si las partes no confían mucho entre sí o existe otra amenaza de incumplimiento del acuerdo. Situaciones similares suelen surgir al comprar en tiendas online . En caso de no recepción de los bienes u otras reclamaciones, no hay garantía de reembolso. Al pagar a través de VISA o MasterCard, el cliente puede utilizar el procedimiento de contracargo .

En el sistema Bitcoin, se implementa un procedimiento similar de la siguiente manera.

Las partes acuerdan el uso de una firma múltiple con la participación de un tercero: un árbitro. Usando las claves públicas de las tres partes, se genera una nueva dirección, que se asocia con el script de condiciones [1] , donde se escribe que dos firmas son suficientes para crear una nueva transacción. Las reglas (condiciones para los scripts) se especifican al crear una dirección, se convierten en su parte integral y no se pueden cambiar sin cambiar la propia dirección. El comprador realiza una transferencia a la dirección creada, que no pertenece plenamente a ninguna de las partes y es una dirección de tránsito. El vendedor ve el recibo, envía la mercancía y crea una transacción para transferir fondos de la dirección de tránsito a la suya. Pero los fondos "cuelan", ya que ninguna de las partes, incluido el árbitro, puede disponer de ellos de forma independiente [6] . El comprador recibe la mercancía. Si todo está en orden, el comprador impone su firma en la transacción generada por el vendedor, cumpliendo así las condiciones para el envío de fondos al vendedor. Si la mercancía no llegó o el comprador la devolvió, entonces el comprador forma una nueva transacción desde la dirección de tránsito a la suya, la firma y se ofrece a firmar al vendedor. Con el consentimiento del vendedor, los fondos serán devueltos al comprador. Si no se llega a un acuerdo, el árbitro tendrá la última palabra. Después de considerar la situación, el árbitro decide transferir fondos al vendedor (e impone su firma en la transacción preparada por el vendedor) o devolver los fondos al comprador (e impone su firma en la transacción preparada por el comprador). El contrato puede prever una remuneración para el árbitro. El árbitro crea entonces otra transacción con el pago fraccionado tanto a favor de una de las partes como en la suya propia, y luego invita a la parte correspondiente a imponer su firma. Las transacciones "extra" sin firmar perderán su relevancia una vez que se envíen los fondos y no darán lugar a un gasto doble.

Otros usos de la firma múltiple

El principio de firma múltiple se puede utilizar para aumentar el nivel de seguridad en los pagos con criptomonedas. La fórmula 2 de 3 le permite crear una dirección corporativa basada en las firmas del propietario, director y contador [1] .

Con una firma múltiple compuesta por miembros de la familia con un número reducido de firmas requeridas, la pérdida de una clave secreta no se convierte en un problema catastrófico. Incluso si la llave cae en las manos equivocadas, es poco probable que el atacante pueda convencer a los familiares de la víctima para que firmen la transacción.

Una firma múltiple que requiere más de la mitad del consejo de administración de una fundación actuará automáticamente como un voto en las decisiones sobre cómo se utilizarán los fondos. Solo se pagarán aquellos proyectos que reciban la mayoría de los votos en forma de firmas bajo la transacción.

El ataque de cumpleaños

Las direcciones multisig de Bitcoin usan P2SH y están protegidas con HASH160 ( función hash de 160 bits ). Si un atacante posee al menos 1 clave de la lista de firmas múltiples, teniendo en cuenta la colisión de hash para falsificar la firma de otra persona, puede reducir el número de opciones de búsqueda a 280 , lo que ya es factible para los sistemas informáticos modernos [7 ] .

Véase también

Notas

  1. 1 2 3 La seguridad de Bitcoin no es solo firmas múltiples Archivado el 20 de junio de 2018 en Wayback Machine // coinspot.io 30/08/2016
  2. 1 2 Bitcoin es una plataforma financiera con una variedad de APIs // Bit•News . Consultado el 30 de noviembre de 2017. Archivado desde el original el 4 de marzo de 2014.
  3. Cómo 2014 se convirtió en el año de Multisig . Consultado el 17 de julio de 2015. Archivado desde el original el 26 de julio de 2015.
  4. Bytecoin (BCN) ahora está armado con Multisig . Coinbrief.com . Fecha de acceso: 16 de septiembre de 2015. Archivado desde el original el 28 de febrero de 2015.
  5. NXT se burla del sistema de votación, 'Transacciones de dos fases' y una fundación . Cointelegraph . Consultado el 30 de noviembre de 2017. Archivado desde el original el 20 de septiembre de 2015.
  6. Transacciones reversibles en Bitcoin . Consultado el 30 de noviembre de 2017. Archivado desde el original el 7 de febrero de 2014.
  7. ^ Beneficios de testigos segregados . Consultado el 26 de diciembre de 2017. Archivado desde el original el 26 de abril de 2018.