Digamos que Alice abre un canal de micropagos con Bob y envía $10 a la transacción multisig.
¿Cómo sabemos que Alice tiene esos $10? ¿O estamos corriendo el riesgo de que ella lo gaste el doble?
En el proceso de abrir un canal de micropagos, las dos partes colocan fondos en una especie de caja de seguridad que requiere que ambas partes firmen cualquier retiro de esa caja de seguridad. En la cadena de bloques, esto consiste esencialmente en poner algunos fondos en una salida multisig de 2 de 2, donde las 2 claves son las claves de Alice y Bob. Si solo Bob va a transferir dinero a Alice o viceversa (unidireccional), entonces solo una persona necesita depositar fondos en la caja de seguridad 2 de 2.
Luego, cuando llega el momento de que Bob le pague a Alice, Bob le da a Alice una transacción que gasta el contenido de la caja de seguridad, le da a Alice una cantidad de los fondos de la caja de seguridad y usa una salida de cambio que devuelve el cambio a la caja de seguridad. Dado que el retiro de la caja de seguridad requiere que tanto Alice como Bob firmen, Alice puede confirmar cuándo Bob ha cerrado la sesión para darle los fondos.
Tenga en cuenta que tiene que ser de esta manera, requiriendo que tanto Alice como Bob transfieran fondos a través del canal, porque si solo requiere el remitente de los fondos, se encontrará exactamente con el problema que mencionó: el remitente podría estar tratando de gastar el doble de esos fondos y no lo sabrías.
david schwartz