Respuesta a “Bancor Unchained”

Bancor Bounty
Bancor (Español)
Published in
11 min readFeb 7, 2018

Udi Wertheimer, investigador jefe de Colu.com, una solución en moneda local basada en el protocolo de Monedas de Color basadas en Bitcoin, publicó recientemente una “revisión de seguridad” de los contratos inteligentes de Bancor. Nos gustaría abordar, en línea, algunos de los comentarios y preocupaciones que se plantearon.

Para ello recomiendo leer el manifiesto de Bancor, que está muy bien escrito, y también leer el desglose de Emin Gün Sirer y Phil Daian sobre sus posibles problemas.

Nos gustaría agradecer a Udi su respetuosa presentación y sus generosos elogios. También hemos tenido el placer de discutir algunas de estas cuestiones directamente con Udi en el grupo de discusión israelí Bitcoin de Facebook, así como en persona cuando asistió a un evento de la comunidad como nuestro invitado. Recientemente hemos publicado una respuesta al artículo de Emin Gün Sirer, el cual alentamos a todos a leer así como a Udi a actualizar en su post, para el equilibrio en ambos lados de las cuestiones allí planteadas.

Sobre la decisión de ampliar la hora límite:

Muchos se sorprendieron por esto. Algunos inversionistas estaban agradecidos, ya que no fueron capaces de entrar en la primera hora debido a la alta carga de la red. Sin embargo, otros estaban furiosos -probablemente los que sí lograron entrar- porque se les prometió que la finalización sería una hora después, aunque después de que el “tiempo límite” fue ampliado a 3 horas, se calmaron definitivamente.

Hemos tratado de dejar lo más claro posible en todos nuestros canales de comunicación, incluyendo los términos oficiales del EGT, que el único propósito detrás de la hora límite era permitir que todos los miembros de la comunidad, muchos de los cuales han estado investigando y siguiendo Bancor durante meses, pudieran participar, con cualquier monto, si así lo decidieran. Estimamos (equivocadamente) que 1 hora sería suficiente para que la red Ethereum procesara la demanda inicial, pero no fue suficiente tiempo como para permitir que la nueva demanda, generada por los comentarios y murmullos en forma de gran interés inicial, sobrepasara el límite oculto, lo cual nunca fue nuestra intención. Evidentemente estábamos equivocados en esa evaluación ya que una sola hora demostró ser un tiempo demasiado corto incluso para procesar un pequeño porcentaje de la primera oleada de contribuciones. La intención de lo que fue escrito en los términos era que cualquier persona que transmitiera una transacción en la primera hora sería aceptada.

Nos enfrentamos a una difícil elección entre dos opciones sub-óptimas: Interpretar rígidamente el tiempo límite de 1 hora, dejando atrás a muchos de nuestros seguidores más leales, o permanecer fieles a la intención declarada, y dar más tiempo para tratar de permitir más transacciones desde la primera hora hasta el borrado. Elegimos este último y mantenemos que fue la elección correcta para este proyecto. Aquellos que consiguieron entrar y estaban “furiosos”, están defendiendo vehementemente que deberíamos haber ignorado la intención sobre el tiempo límite y haber acomodado menos de la demanda inicial, a fin de maximizar su valor a expensas de otros no menos merecedores.

Como puede deducirse de las recientes recaudaciones de fondos con alta demanda, la demanda no satisfecha genera beneficios significativos para aquellos que tuvieron la suerte de introducir una transacción, a expensas de quienes no lo hicieron. Esta es exactamente la situación que queríamos evitar con la política de tiempo límite y la razón principal por la que se hizo la extensión. Además, debido a la singular funcionalidad de los Token Inteligentes de BNT (que aumentan en valor a medida que se emiten más Tokens), nuestro uso del 20% de los ingresos en la reserva compartida de ETH del token, y nuestro compromiso de usar fondos para crear un mecanismo de protección de dos años para los titulares de BNT, aquellos que están molestos por un mayor aumento en primer lugar están malentendiendo la dinámica de BNT.

En ambos casos, optamos por dejar que participen tantos partidarios nuestros como sea posible, y crecer juntos con BNT en el largo plazo. Limitar superficialmente la demanda para crear un pico de precios para obtener ganancias rápidas y fáciles no es el objetivo de la red ni del equipo de Bancor. Le pedimos disculpas sinceramente a nuestra comunidad por la confusión creada alrededor del tiempo límite y a todos aquellos contribuyentes que trataron de participar y no pudieron. Fue un desafío tratar de comunicarnos correctamente en tiempo real y estamos haciendo grandes esfuerzos por mejorar en este sentido

Cuando la gente piensa en “cripto monedas” o “activos digitales”, o como quiera que la gente guay lo llame a día de hoy, piensan en Tokens descentralizados, resistentes a la censura y que ningún gobierno o estamento central podría llegar a controlar. Y aunque algunos proyectos tienen varios grados de (des) centralización, nunca he visto un Token tan centralizado como BNT, que deposita tanto poder en manos de tan pocos.

Esto era más o menos la filosofía detrás de TheDAO. Implementó un diseño el cual era imposible modificar/arreglar mientras que se extraían públicamente los ETH depositados debido a una brecha en la seguridad, dejando a la comunidad Ethereum con un “hard fork” como la única opción para remediarlo. Este fue un momento existencial para el proyecto Ethereum, y nos quitamos el sombrero ante el equipo directivo y ante la comunidad por haber llevado finalmente esta situación hacía el éxito. Incluso este gran revés podría haber terminado mucho peor.

También creemos que no hay nada inherentemente malo en “tanto poder en manos de tan pocos” como una declaración general. Estamos felices de que Elon Musk tenga todo el poder que tiene. Parece que lo usa bien a través de múltiples y emocionantes empresas tecnológicas que probablemente no existirían (o no existirían tan pronto) sin su liderazgo. Estamos contentos de que Steve Jobs tuviera el poder que tenía, ya que lo usó para averiguar cómo hacer que la tecnología avanzada fuera más accesible para el usuario medio. La oposición al poder centralizado y monopolista es noble e importante, pero no debe despreciarse el papel crítico que tiene el liderazgo, especialmente en un espacio competitivo y en la vanguardia de la innovación.

Ethereum es a menudo criticado por ser “demasiado centralizado”, especialmente después del “hard fork” de TheDAO. El liderazgo técnico de Vitalik no se calcula bien con muchos Bitcoiners, que parecen preferir un estilo de administración más descentralizado tipo IETF. Si bien esta filosofía podría ser la mejor manera de estandarizar protocolos, mantenemos que Ethereum y Bitcoin (y Bancor) son más que simples protocolos. Se trata de servicios de código abierto basados en protocolos, con Tokens personalizados que se utilizan para compensar a autoproclamados proveedores de servicios y a contribuyentes varios. Todavía hay mucho trabajo por hacer para mejorar la seguridad, la capacidad y la robustez de estos servicios, y creemos que un enfoque sin liderazgo no resultará ser el óptimo.

Por estas razones, creemos que la elección correcta para Bancor es tener opciones para hacer frente a problemas inesperados, en lugar de evitar que lo hagamos así en nombre de la “descentralización”. En última instancia, somos a los que mirarás en caso de una brecha de seguridad. También somos en los que estás depositando tu confianza cuando contribuyes a este proyecto. Hemos tomado grandes medidas para compartir con la comunidad nuestra visión, nuestros antecedentes, nuestras respuestas a las preguntas, nuestros planes para el futuro. Tenemos la confianza de que la comunidad nos está tomando muy en serio, y también nosotros nos tomamos tan en serio como ellos nuestra responsabilidad de mantener la seguridad mientras forjamos un nuevo terreno técnico y económico. No hay vuelta de hoja en el hecho de que una apuesta en Bancor es también, al menos en parte, una apuesta en el equipo. Somos francos sobre nuestra creencia en la descentralización, y en nuestros planes para guiar a BNT hacia su estado inmutable durante su período piloto de 3 años.

Todas las transacciones que utilicen el token BNT pueden ser desactivadas por el equipo en cualquier momento por cualquier motivo. Presumiblemente, esta capacidad está disponible para permitir que los Tokens se congelen inmediatamente después de la venta al público durante aproximadamente una semana, hasta que el producto principal de Bancor esté listo. Sin embargo, por diferentes motivos, después de descongelar los Tokens, el equipo mantendrá la opción de congelar las transacciones de nuevo en cualquier momento.

Este es uno de los mecanismos de seguridad que creamos. Si se detecta una vulnerabilidad, este mecanismo nos permitirá pausar las transferencias, publicar las conclusiones, actualizar el contrato y potencialmente recuperar los fondos robados. Creemos sinceramente que esto es en el mejor interés de la comunidad, dado que ni todas las pruebas del mundo pueden prepararte para la última prueba, vivir en la naturaleza salvaje con decenas de millones de usuarios reales con todo tipo de intenciones.

El equipo puede emitir nuevos Tokens en cualquier momento.

Sorprendentemente, el equipo puede DESTRUIR cualquiera de los Tokens DE CUALQUIER CUENTA, en cualquier momento.

La capacidad de emitir y destruir Tokens es necesaria para poder recuperarse de una potencial brecha de seguridad. Si los Tokens fueron emitidos a través de una vulnerabilidad de seguridad en el contrato, esta habilidad permitiría detener al hacker y evitar que huya con los Tokens.

Este tercer punto [capacidad de destruir] es inaudito. He mirado otros contratos de perfil alto que manejan otros Tokens, y no he podido encontrar nada similar. Esto pone un poder sin precedentes, y lo que es peor, inesperado, en las manos de los dueños del contrato.

Bancor es una primera solución en su tipología. Es el primer Token Inteligente, manejando su propia liquidez manteniendo un “tesoro” compartido (reserva), así como emitiendo y destruyendo sus propios Tokens de forma programática. Debido a la novedosa y sensible naturaleza de su funcionalidad, creemos que es mejor tener opciones adicionales para mitigar los ataques. Desde TheDAO, no ha habido ningún intento substancial de lanzar un Token como este, y deseamos evitar un destino similar. Sostenemos que en este momento, cuantas más opciones tengamos para mitigar a los atacantes y ladrones, mejor, incluso si eso significa que mantener BNT requiere más confianza en nuestra integridad y protocolos de seguridad. La descentralización total es el objetivo final, no el comienzo.

Las personas en este espacio esperan que el control sobre los tokens esté completamente descentralizado, y si por alguna razón esto no es así, debería quedar muy claro.

Este “espacio” (nuevos eventos de generación de tokens ó EGT) es realmente muy joven, y no compartimos la misma impresión de que existan tales expectativas entre nuestros contribuyentes. En nuestro post Learning from TheDAO dejamos muy claro que los contratos de Bancor son actualizables por diseño y que serían controlados centralmente durante el período piloto. “Actualizable” significa que podemos cambiar el código que ejecuta BNT en cualquier momento. Lo que no está claro es cómo alguien que entiende la “descentralización” podría haber interpretado esto de otra manera. Hacemos nuestro mejor esfuerzo para mantener un blog activo con todos nuestros pensamientos, planes y respuestas como ésta cuando detectamos la preocupación de la comunidad. Esperamos que los contribuyentes, y especialmente las críticas en línea, lean detalladamente esta información antes de llegar a conclusiones de mala fe. También estamos de acuerdo en que esta joven industria se beneficiará de la evolución de la estandarización tratando de hacer de la mejor forma comunidades conscientes de que es lo que necesitan saber para poder comprender y vetar los proyectos de forma responsable. Haremos nuestro mejor esfuerzo para contribuir a este esfuerzo y acogeremos con beneplácito todas las sugerencias.

Las llaves en poder del equipo podrían ser robadas, por ejemplo.

Esto es bastante rebuscado, ya que estamos utilizando las mejores prácticas de la industria para los contratos multi-firma, en las carteras offline, donde las diferentes claves son cifradas por contraseña y nunca se almacenan juntas. Nos tomamos la seguridad muy en serio y hemos gastado gran parte de la energía dedicada al EGT en planificar cuidadosamente una estrategia redundante sin ningún punto de fallo.

O bien, la aplicación de la ley podría obligar al proyecto a congelar o destruir los tokens si se dan cuenta de que esto es posible (y si por alguna razón sospecharan que se ha cometido un error).

Una de las cosas más interesantes de la tecnología blockchain es que el historial de transacciones siempre se mantiene. Esto da opción de que una comunidad utilice un token para “retroceder en el tiempo”, como se hizo con TheDAO en la cadena de bloques Ethereum, y ver exactamente lo que ha ocurrido y tomar acción colectiva. Este cambio también puede hacerse con cualquier símbolo ERC20, incluso a través de un esfuerzo comunitario autoorganizado. En el caso de que el BNT se viera comprometido por fuerza violenta, la comunidad podría decidir utilizar este camino alternativo.

Sin embargo, si la existencia de estas puertas traseras no es comunicada correctamente, podría poner a muchos usuarios en riesgo, especialmente a los Exchanges.

El control centralizado y la capacidad de actualización se comunicó una y otra vez, en nuestro post y siempre que se nos preguntó. Estamos muy en desacuerdo de que esto pone a los usuarios en mayor riesgo, especialmente en comparación con la alternativa descentralizada que se utilizó en TheDAO. Mantenemos que los protocolos de seguridad que hemos implementado reducen significativamente los riesgos para los usuarios finales, ya que nos proporcionan más opciones para manejar las eventualidades de la seguridad del código si se desarrollan. Con respecto a los Exchanges, dejamos a estas entidades con fines de lucro para que proporcionen salvaguardas a sus usuarios y para que examinen adecuadamente todos los Tokens que deseen listar. Su éxito es nuestro éxito en lo que respecta a los Tokens Inteligentes, y no tenemos ningún interés en crear ningúna situación en la que los Exchanges se vean innecesariamente impedidos de hacer su negocio.

Quisiéramos aprovechar la oportunidad que nos brinda esta revisión ampliamente difundida para dejar claro que los mecanismos de seguridad construidos por diseño en los contratos de Bancor se utilizarán sólo en caso de emergencia y con un claro aviso a través de nuestros canales oficiales. Si bien esta conducta esperada era obvia para nosotros, como administradores del protocolo y por naturaleza de la confianza depositada en el proyecto por los contribuyentes, agradecemos a Udi la oportunidad de comunicarla más claramente a todos.

Conclusión

Creemos que TheDAO nos ha enseñado de la mejor forma cómo no lanzar un contrato inteligente abierto para acumular activos. No tener la opción de actualizar el código (que aún no se ha probado directamente en campo, a pesar de las más meticulosas pruebas internas y de socios) ha demostrado ser, cuanto menos, una estrategia subóptima. El privilegio de actualizar el código le brinda naturalmente a Bancor acceso completo a todos los aspectos del token. Todos los otros “backdoors” listados no nos proporcionan ningún privilegio adicional. Sin embargo, si se detecta un fallo de seguridad en el código, estos mecanismos de seguridad nos permitirán responder con rapidez, mitigar los daños y manejar responsablemente el potencial robo. Creemos que esto es lo que la comunidad espera de nosotros, durante este nuevo y emocionante período piloto, ya que llevamos a BNT hacia su objetivo declarado de crear justicia de liquidez para todos.

Terminaremos con una cita de nuestro post Learning from TheDAO:

Nuestro objetivo es la descentralización, queremos alcanzarla de manera responsable, y llegar así todos juntos a ese momento. Reconocemos que la comunidad está confiando en nosotros para liderar este proyecto y llevarlo hasta ese punto, por lo que, con más razón, nos tomamos esto muy en serio.

Por la confianza que se necesita para ir sin confianza,

El equipo Bancor

--

--