Actualmente tenemos algunas grandes preguntas circulando por el espacio Bitcoin Cash. Una de ellas es en relación a la financiación voluntaria de los bienes comunes de Bitcoin Cash.
Puede funcionar a la gran escala que necesitamos?
Puede ser lo suficientemente confiable como para hacer planes a largo plazo basados en ella?
Es posible obtener significativa responsabilidad con un grupo de colaboradores distribuido?
Un grupo de voluntarios se reunió para crear Flipstarter y llevarnos un paso más próximo al "sí" en todas estas preguntas.
Objetivo 1: Financiar exactamente una propuesta utilizando un contrato de garantía sin custodia y sin estar basado en confianza.
Nos hemos asociado con EatBCH y publicaremos una propuesta en pequeña escala con ellos. Podrás ver la propuesta con:
Su método de responsabilidad y rendición de cuentas
El monto que necesitan
Con esa información puedes decidir por ti mismo si quieres apoyarlo. La diferencia clave con las donaciones típicas es que en este caso experimentarás un contrato de garantía sin custodia y sin necesidad de confianza. Tomando de Wikipedia:
Un contrato de garantía [...] es un mecanismo teórico de juego y una tecnología financiera que facilita la creación voluntaria de bienes públicos y bienes de grupo frente a los problemas de acción colectiva, como el problema del pasajero libre o consumidor parásito.
De una manera vinculante, los miembros de un grupo se comprometen a contribuir a la acción "A" si un nivel de contribución total es alcanzado [...]. Si el nivel de umbral es alcanzado (tal vez a partir de cierta fecha de vencimiento), la acción es ejecutada y el bien público es proporcionado; de lo contrario, las partes no están obligadas a llevar a cabo la acción y cualquier contribución monetaria es reembolsada.
Bitcoin Cash tiene varias formas de lograr un contrato de garantía y las mencionaremos a continuación.
Objetivo 2: Involucrar al menos a las comunidades de idiomas inglés y chino.
Como parte de un esfuerzo general para aumentar la comunicación entre comunidades mayormente aisladas, todo lo referente al proyecto se publicará al menos en inglés y chino. Si deseas contribuir con traducciones técnicas de alta calidad en otros idiomas además del inglés o chino, por favor contáctanos.
Cómo funciona: contratos de garantía en Bitcoin Cash
Algunas personas recordarán Lighthouse. Este primer paso de Flipstarter es básicamente Lighthouse pero reducido a su característica principal. Se trata de una antigua característica de las transacciones de Bitcoin llamada "AnyoneCanPay" (CualquieraPuedePagar).
La idea es que, en una transacción estándar, tu la firmas para aprobar:
Todas las salidas
Todas las entradas
Con AnyoneCanPay, tu firmas una transacción parcial para aprobar:
Todas las salidas
Sólo tus entradas
En otras palabras, siempre y cuando todos estén de acuerdo con la producción total, cualquiera puede ayudar a pagar, y todo sucede sin requerir confianza.
Experiencia de usuario
El estado actual de las carteras es que admiten principalmente transacciones estándar como las descriptas arriba. La configuración de AnyoneCanPay no es soportada por ninguna de las carteras principales. El cliente Lighthouse mencionado solía hacerlo, pero tenía sus problemas particulares y se vio envuelto en el por entonces creciente debate acerca el tamaño de bloque.
Por lo tanto, necesitamos crear una forma para que las personas participen en contratos de garantía. Consideramos muchas opciones, que se describen más adelante, y terminamos eligiendo usar un plugin para Electron Cash. La experiencia será algo como esto:
Instalar el plugin para Electron Cash.
Ver una propuesta en el sitio web Flipstarter y establecer el valor de tu promesa de participación (pledge).
Obtener una porción de texto del sitio web y pegarlo en el plugin de Electron Cash. El texto contiene la información necesaria para crear tu promesa de participación (pledge).
El plugin da un resultado para que puedas pegarlo en el sitio web. Contiene tu participación como una transacción parcial firmada. Tener en cuenta que cuando el plugin crea una moneda para tu promesa, esta es congelada para no ser gastada accidentalmente. Puedes descongelarla manualmente en cualquier momento.
El sitio web recopila y monitorea las promesas de participación (pledge) hasta tener lo suficiente para construir la transacción completa.
El sitio web finaliza el contrato de garantía y ejecuta el pago a las direcciones de destino.
Si la campaña no recibe suficientes promesas (pledges), entonces todos pueden descongelarlas y usar las monedas asociadas de forma normal. Es decir, las monedas nunca salen de Electron Cash hasta que toda la campaña tenga éxito.
Puede parece un poco tosco, pero el proceso es más seguro, sin custodia, no requiere que el usuario saque sus monedas de Electron Cash y nos permite tener algo funcione con tiempo y recursos limitados.
Otras opciones que fueron consideradas:
Los usuarios pagan a un código QR generado por una página web temporaria que sabe cómo crear una promesa AnyoneCanPay.
Pro: Interface simple con carteras estándar.
Con: Riesgo real de perder fondos en caso del script tener errores o si el usuario comete algún error.
Usar un contrato inteligente (smart contract) donde las donaciones se realizan en una serie de contratos vinculados (diseño de @TobiasRuck).
Pro: Interface simple con carteras estándar.
Con: La complejidad retrasaría el lanzamiento de la primera campaña, y los usuarios tendrían que esperar en fila para que las promesas anteriores sea completadas antes de que puedan hacer las suyas propias.
Usar un contrato inteligente (smart contract) donde las donaciones se realicen en un árbol de contratos distribuido (diseño en curso por emergent_reasons#100🌵).
Pro: Interface simple con carteras estándar.
Con: La complejidad retrasaría el lanzamiento de la primera campaña.
Si conoces una solución confiable, sin custodia y que tenga una mejor interface de usuario que lo anterior, por favor contáctanos.
El futuro
Tenemos una larga lista de cosas que pueden ser mejoradas después de completar los objetivos iniciales. Los voluntarios continuarán desarrollando la solución, y existe la oportunidad de que un equipo con fines de lucro la desarrolle en una plataforma completa. Pase lo que pase, estamos haciendo la primera versión para que cualquiera pueda forquearla y correr una campaña por sí mismo.
Cómo involucrarse
Pronto realizaremos algunas pruebas privadas antes de la verdadera campaña EatBCH. Si quieres participar, por favor contáctanos.
Tenemos el talento para terminar nuestra lista de tareas pendientes, pero hay un número grande de cosas para hacer después de la primera versión si estás dispuesto a tomar responsabilidad y presentar un buen plan.
Los repositorios actuales están en el grupo gitlab flipstarter. Algunos de ellos todavía no son visibles en cuanto el código es limpiado y organizado.
Gracias!
Muchas gracias al grupo de voluntarios que están haciendo Flipstarter posible. Un agradecimiento especial a los levantadores de pesos pesados:
@Dagur (Plugin de Electron Cash)
Jonathan#100☯ (Frontend, diseño de backend, e implementación en nodejs)
@Leandro_DiMarco (Logo, diseño y diagramas)
@Sploit (Implementación backend en golang)
Cualquier propina de read.cash será enviada a la dirección multisig de Flipstarter para donaciones. Está firmado conjuntamente por emergent_reasons e im_uname.
Contact
telegram @Leandrodimarco
Muy útil tu plubicacion. Muchas gracias