NXTER.ORG

Controversia sobre el reparto de (f)NXT en la v2.0

Estamos viviendo un 2016 muy intenso en la comunidad Nxt. El inicio ha sido marcado por un exitoso hardfork hacia la versión del SRN 1.7. proporcionando nuevas características y mejoras a la red, entre ellas el Coin Shuffling y los tiempos de bloque prefijados a 1 minuto, poniendo punto final a aquellos bloques que parecían atascarse en la Blockchain. Pero nos ha dejado la parte agridulce: a causa de los cambios efectuados en las API’s, y tras desapacibles discusiones, empresas como Supernet o Coinomat, dos ilustres dentro del Asset Exchange, decidieron poner punto y final a su relación con Nxt y empezar a trabajar en su propia Blockchain: Iguana y Waves, respectivamente.

Mientras tanto, los desarrolladores de Nxt llevaban tiempo planeando una nueva hoja de ruta: la versión 2.0 de NXT y no tardaron mucho en exponerla públicamente para su discusión. El modelo presentado hizo recordar a muchos de los presentes la idea de BCNext.

Básicamente Nxt 2.0 pretende ser un sistema escalable capaz de reducir la hinchazón de la Blockchain, solucionando los dos principales problemas de las blockchain en la actualidad. Un gran reto que cuenta con un año por delante para su desarrollo.

Riker:

Esto permite podar la actual Blockchain de Nxt a niveles mínimos

Todo apunta a un largo año de diálogos y contraposición de ideas. Poner de acuerdo a tantas partes no es tarea fácil y menos cuando se nada a contracorriente dentro de un mercado movido en gran parte por la especulación que, como era de prever, no tardó en reaccionar provocando una caída de precios. Recordemos que los NXT invertidos en los activos no pertenecen al balance. Varias personas decidieron abandonar Nxt, y otras fortalecieron sus posiciones aún más. Está clara una cosa; al mercado le encanta los cambios.

nxt-2.0

Sin tiempo para celebrar el exitoso hardfork de la versión 1.7, el anuncio del camino a seguir en la versión 2.0 supuso un giro de 180 grados. El concepto básico consiste en crear un token (f)NXT que poseerá el poder de forjado de la red Nxt, y los actuales tokens de NXT se convertirán en una childchain de los primeros, conservando las mismas características que ya disponía salvo la capacidad de forjado. De esta manera, al no tener que conservar la información correspondiente a la forja, la childchain NXT podrá ser podada, solucionando los problemas de escalabilidad.

La comunidad se vió inmersa en acaloradas discusiones acerca de cómo distribuir el futuro token de nueva creación exclusivo para el forjado(1NXT=1(f)NXT), suscitando opiniones controvertidas entre las partes más interesadas; usuarios, inversores, desarrolladores externos, ballenas, los desarrolladores del núcleo, emisores de activos, inversores de activos, forjadores y los holders.

Paralelamente a las conversaciones sobre la manera de distribución, Damelon hizo una encuesta, quizás motivado por la idea de un miembro que sugería trabajar en otros aspectos y dejar la escalabilidad y la hinchazón para cuando resultasen ser un problema.

Damelon: Do you want Nxt 2.0 to happen?
1-SI – 145.035.072NXT
2-NO – 57.092.131NXT

Es posible que la mayoría de los votantes tuviera en cuenta que Nxt no tiene el problema de escalabilidad e hinchazón porque actualmente su Blockchain está trabajando a mínimo rendimiento y, cuando llegase el momento, la manera de solucionar estos aspectos sería trabajando sobre múltiples Blockchain. (véase hipercube de ethereum). La idea de NXT 2.0 tomaba sentido.

La discusión sobre el momento de efectuar la captura, en caso de realizarse, dio lugar a la segunda encuesta de Damelon

Jean-Luc en uno de sus mensajes dejaba esta reflexión:

¿Cómo hacemos la transición, o re-distribución, sin causar daños, por ejemplo, a los precios de activos ni causar otros efectos económicos inesperados?

Durante los dos meses de discusiones se han barajado las siguientes posibilidades:

  • 1NXT=1(f)NXT en el momento del hardfork hacia la versión 2.0. Es la que toma más consistencia, el fork estaría previsto para enero de 2017, dando tiempo a todas las partes interesadas a obrar sus estrategias.

Allwelder y Sebastien256 no tardaron en dejar su claro punto de vista:

NO IPO. Solo apoyaré la decisión 1NXT=1(f)NXT. Es la mejor solución tanto para los usuarios activos como los que no. El Snapshot al mismo momento que el fork me parece la mejor opción

En mi opinión, todo lo que no sea una distribución 1:1 se convierte en un robo de las capacidades de los NXT de alguien. Simplemente por poseer los tokens NXT, posees y has pagado por el derecho de forja, aunque no estés forjando en este momento, en mi humilde opinión.

  • 1NXT=1(f)NXT en el momento del hardfork hacia 1.7

blackyblack1 comenta que esto sería un robo. Solo una decisión previamente anunciada sería una solución legítima.

  • Repartirlos a los poseedores del activo NSC (Next Security Coin)

Riker desmintió esta idea aportando el dato que actualmente hay una cuenta con el 99.98% de los activos y esto centralizaría el proceso de forjado.

  • Coretech propuso crear el nuevo token de forja he introducirlo en los nuevos bloques, a razón de aproximadamente 1000Tokens por bloque, así cualquier persona interesada en participar en NXT2.0 lo único que tendría que hacer es comprar NXT y empezar a forjar.

Jean-Luc no tardo en contestar y afirmó que era buena propuesta, pero ejecutarla, podría retrasar el desarrollo unos 6 meses, por lo tanto quedaba desestimada.

Las opciones expuestas, implican la creación de una masa monetaria nueva y jl777 en uno de sus últimos mensajes recalca:

Hablo en calidad de hombre de negocios, inversor y emisor de activos: En el próximo cambio fNXT: NXT, no existe mecanismo de división para los activos, por lo tanto  inmediatamente perderán la mitad de su valor, 1 + 1 = 2   NXT2.0 = (NXT fNXT)

Así que, además de obtener una pérdida inmediata de 50%, la situación podría empeorar en el caso de que el valor de NXT esté por debajo de la mitad de  NXT2.0 combinado + fNXT. Mi mayor prioridad es proteger a los millones de dólares invertidos en mis activos.

  • 0,5NXT futuros + 0,5(f)NXT para que no originar más masa monetaria. NXT2.0 es un ecosistema diferente a NXT 1.0 y por lo tanto tiene que tener un token diferente. Perder el 50% del poder de forja no es recomendable. A raíz de plantear distribuciones diferentes de 1:1 se pensó que podría ser un método de financiación.

Al mismo tiempo, fuera del ecosistema Nxt, las IPO forman parte del mainstream y consiguen atraer muchos recursos y miradas, al menos en estos meses previos al halving de Bitcoin. Esto a hecho a algunos plantear la posibilidad de intentar combinar el lanzamiento de fNXT con el de una IPO, para dotar de financiación a los desarrolladores y a los equipos que trabajan en la promoción de NXT, tales como la NXT Foundation. Este será un tema que trataremos en un próximo artículo»

En el momento de este artículo NXT está a 1640 satoshis en Poloniex.

No te pierdas la ultima jornada de preguntas y respuestas efectuada el día 12/04/16 http://pastebin.com/8UmKpYvE

Anuncio: Características de la versión 1.8

El trabajo efectuado sobre Nxt y su cliente NRS, continúa. Los desarrollares del núcleo de Nxt han enviado una lista con las nuevas características que se implementarán en el próximo lanzamiento de la versión NRS 1.8, esperada para Abril.

  • Cartera en el escritorio

    Ejecuta el cliente como una aplicación de escritorio.

Riker escribe:

Hasta ahora, cuando iniciamos el cliente NXT, el usuario tenía que:  esperar a que el servidor arrancase, luego, abrir el navegador y dirigirnos a http://localhost:7876 para iniciar la cartera en el navegador web.

A partir de este lanzamiento, cuando ejecutemos el cliente NXT, se iniciará inmediatamente como una aplicación de escritorio del monedero, basada en el mismo diseño.

Consulte: https://bitbucket.org/JeanLucPicard/nxt/issues/338/desktop-wallet

  • Monitorización de cuentas

    Componente del servidor que dota de fondos automáticamente a las cuentas específicas en base a varios criterios. Asegurando que la cuenta del titular siempre cuente con la cantidad suficiente de NXT para realizar las transacciones.

ScripterRon comenta:

Usted puede monitorizar NXT, Activos o Monedas.

Cuando el balance de la cuenta monitorizada comienza a ser inferior al prefijado, se inicia la transferencia, de NXT, Activos o Monedas, desde la cuenta de los fondos hacia la cuenta monitorizada.

Usted puede activar múltiples monitorizaciones. Las cuentas monitorizadas son identificadas mediante una propiedad de cuenta.  La propiedad de la cuenta debe ser establecida por el titular de la cuenta de financiación.

  • Personalización de la cartera

    Abrir la cartera en una página específica o modal.

Riker escribe:

Esta característica permite vincular la cartera online de Nxt a una página, específica o modal, o enlace web externo.

Por ejemplo: conectando a: http://localhost:7876#account=NXT-22222-…&modal=send_money_modal&recipient=NXT-33333

ingresarías a la cuenta NXT-22222 abriría el modelo estándar «Send Money» y rellenaría el campo del destinatario con el valor NXT-33333

Consulte: https://bitbucket.org/JeanLucPicard/nxt/issues/320/start-the-client-on-a-specific-page-or

  • Add-Ons

    Estructura sencilla para incorporar plugins

Únete a la conversación sobre Nxt 1.8 en Nxtforum:
https://nxtforum.org/general-discussion/upcoming-features-in-1-8-release/

En paralelo a lo anterior, el desarrollador, Jean-Luc ha comenzado a trabajar en el diseño Nxt 2.0.

Lea más sobre la propuesta de diseño para Nxt2.0:
http://test.nxter.org/nxt-2-0-design/
[vídeo] http://test.nxter.org/nxt-2-0-design-proposal-should-investors-and-asset-issuers-be-afraid/

Puedes publicar comentarios e ideas para el diseño de Nxt2.0 en:
https://nxtforum.org/core-development-discussion/nxt-2-0-design/

Diseño Nxt 2.0

El software de referencia Nxt (NRS) recientemente ha completado con éxito un hardfork y ha sido actualizado a la versión NRS 1.7.5, lo que le ha aportado importantes y novedosas características tales como: tiempo de transacción establecido en 1 minuto, activos del tipo “Singleton”, mezclado de monedas, control de cuentas mediante transacciones condicionadas y datos en la nube. Todo funciona de manera estable y sin contratiempos, y por esto los desarrolladores del núcleo de Nxt han comenzado a hacer un brainstorming acerca de como deberá ser la futura versión NRS Nxt 2.0.

2.0 estará centrado en la escalabilidad. La idea es crear cadenas laterales dependientes de la blockchain principal.

Jean-Luc, desarrollador principal de Nxt, escribe:

Desde hace algún tiempo hemos estado haciendo brainstorming sobre el diseño de Nxt 2.0, y aquí presentamos nuestra propuesta actual. Este es un resumen general, del cual todavía desconocemos muchos detalles. Las decisiones de diseño más específicas se irán tomando conforme se avance en el desarrollo. Lo que proponemos es un cambio significativo en la plataforma, no solamente en un conjunto de nuevas características. Por tanto, nos llevará bastante tiempo para materializarlo.

– Se creará una nueva cadena principal, en la cual NXT se convertirá en un token (“forgingNXT” o “fNXT”) usado únicamente para forjar. El actual ecosistema NXT se transformará en una cadena hija (child chain), conservando todas sus características y propiedades, excepto la capacidad para forjar. En el bloque en el que se produzca el hard-fork, cada propietario de NXT verá sus NXT convertidos en ambos tokens en proporción 1:1 y todas sus propiedades se migrarán a esta “child chain” de NXT.

– Siempre será posible intercambiar NXT por fNXT, de modo que los pequeños inversores que no estén interesados en la forja pueden optar por vender sus fNxt a los grandes accionistas que ejecutan nodos de forja. Esto nos llevaría a una cierta centralización, pero también a un mayor porcentaje de poseedores de fNXT forjando, asegurando así el ecosistema completo de NXT.

– Las “child chains” usarán el mismo código que Nxt pero, en caso que así se quiera, cada una puede ser configurada para que solo disponga de una parte de las características. En la “child chain” de NXT se podrá seguir realizando cualquier tipo de transacción.

– Cada “child chain” tendrá su propio token / moneda, con la cual se realizarán las operaciones de pago, se establecerán las órdenes de compra y venta de activos, se pondrá precio a los bienes digitales, etc. Las comisiones de transacción de la “child chain” serán también en este token nativo.

– Todas las transacciones de todas las cadenas deberán ser procesadas por todos los nodos. Todos los nodos van a acarrear todas las “child chains” durante al menos los últimos 1440 bloques. Los nodos de archivos (archival nodes) pueden optar por almacenar una o más “child chains” durante un periodo más largo de tiempo, o hacerlo indefinidamente.

– Por defecto, las transacciones realizadas en las “child chains” se “podarán” completamente después de 1440 bloques, en aquellos nodos no específicamente configurados para archivarlas por más tiempo. Un nuevo nodo que inicie la descarga de la blockchain desde cero debe aceptar que si los forjadores y los nodos (que estaban ejecutando la blockchain en el momento en que todavía disponían de los datos que posteriormente iban a ser recortados) aprobaron esas transacciones con anterioridad, entonces el resultado de esas transacciones es válido, incluso aunque la información para validarlas de nuevo ya no esté disponible.

– Sin embargo, tiene que poderse validar que el balance efectivo fNXT de los forjadores era realmente el que decían tener. Esta es la razón por la cual las transacciones en la cadena de forjado que cambia el saldo fNXT no pueda podarse, y debe reducirse a un mínimo esencial de transacciones.

– Los bloques de la “child chain” se implementarán como un añadido “podable” de una única transacción (una por cada bloque y por cadena) del tipo “ChildchainBlock” en la cadena de bloques principal. Cualquiera puede crear un bloque en una “child chain”. Sin embargo, depende de los forjadores que incluyen bloques en la cadena principal decidir si esa transacción “ChildchainBlock” debe ser incluida en un bloque. Los forjadores, al igual que todos los nodos, hacen una validación completa de todas las operaciones de la “child chain” incluidas en un ChildchainBlock, siempre y cuando los datos no han sido “podados” todavía.

– Si no ha habido transacciones en una cadena, no hay necesidad de crear una transacción “childchainblock” para ella, a diferencia de lo que sucede en la cadena principal, donde seguiremos teniendo los bloques cada 60s incluso aunque estén vacíos. Podemos pensar en reducir el tiempo de generación de bloques de la cadena con el fin de permitir que algunas “child chains” tengan bloques más frecuentemente.

– Los forjadores aceptarán las comisiones solo en fNXT, con la comisión mínima requerida por el protocolo para cada tipo de transacción también expresada en fNXT.

– Cuando un forjador incluye una transacción del tipo “ChildChainBlock” en la cadena principal, su creador paga una comisión en fNXT al forjador. El importe de esta comisión depende del creador del bloque en la “child chain”, pero debe ser al menos igual al total de las comisiones mínimas calculados en fNXT para cada transacción incluida. A cambio, el creador del bloque en la “child chain” recibe la comisión en el token nativo de esa “child chain”, pagado por los emisores de esas operaciones en esa “child chain”.

– La tasa de intercambio del token/moneda de la “child chain” al token fNXT será determinado por la ley de oferta y demanda. Si nadie estuviese dispuesto a incluir una operación de la “child chain” en un bloque de esa “child chain” significaría que la tarifa ofrecida en el token nativo no se considera equivalente a la comisión mínima fNXT requerida para esta transacción en particular, y dicha transacción expiraría sin confirmarse. Si el valor de la token nativo de la “child chain” se reduce a cero, nadie estará dispuesto a crear bloques de la “child chain”, y el proceso de las transacciones en esta “child chain” se detendrá.

– Las “child chains” competirán entre sí para su inclusión en un bloque, ya que al final los forjadores observarán la relación comisión / tamaño para cada transacción y querrán maximizar sus beneficios durante el forjado, dependientes del tamaño de bloque y del límite del número de transacciones.

– Antes de la “poda” cada nodo debe comprobar no sólo que el hash de la operación del bloque de la “child chain” coincide, sino que también debe comprobar si son válidas todas las transacciones de la “child chain” que contiene, es decir, asegurarse de que no hay ningún doble gasto, así como el resto de validaciones. Por eso el nodo necesita saber los saldos actuales de todas las cuentas de esa “child chain”. Pero todavía para poder hacer la poda necesitamos una operación de captura, que tome una instantánea del estado únicamente de la “child chain” en su estado actual, sin el historial de las operaciones que la llevaron a este estado. A continuación, después de que esta transacción ha sido aceptada en la blockchain por más de 720 bloques, podemos asumir que es válida, “podar” toda el historial de la cadena antes de esa captura, y desechar la captura anterior.

– La operación de captura para cada “child chain” se crea en intervalos regulares, tales como cada 1440 bloques, y se llevan a cabo por el forjador del bloque actual. Sólo contendrá el hash de la captura, no se capturarán todos los datos.

– Los datos de la captura en sí mismos no tienen que propagarse a través de la red cuando se crea la transacción de captura. Cada nodo que se encuentre actualizado ya cuenta con el estado de la “child chain” capturada, por lo que puede generar una captura por sí mismo. Sólo se debe validar que el hash calculado para el forjador de la captura de hecho coincide con su propia captura.

– Solo nodos que descargan la cadena de bloques desde cero necesitarán descargar la última captura al completo, y esta es una razón más por la que cada nodo debe generar y mantenerse alrededor de esta captura, para poder servir a estos nuevos nodos. La descarga de la captura puede ser de una manera similar a Torrent, diferentes piezas desde múltiples nodos.

– Debido a que cada nodo actualizado necesita validar todas las transacciones actuales, aún a pesar de que reducimos significativamente el problema a largo plazo de crecimiento de la blockchain (en términos de espacio en disco utilizado, y ancho de banda para descargar el blockchain desde cero), todavía habrá un cuello de botella en términos de la CPU, para procesar los datos de todas las cadenas, y el ancho de banda, para poder recibir y procesar las transacciones actuales de todas las cadenas. Pero puesto que los nodos no necesitan validar las antiguas operaciones en la “child chain” que ya han sido “podadas”, la descarga total de la blockchain desde cero debe ser más rápida y menos intensiva para la CPU.

– La cadena de forjado, que es común a todos los nodos, garantiza la seguridad incluso para las “child chain” que no tengan muchos usuarios y que tienen transacciones sólo ocasionalmente. A cambio cada una de las “child chains” podrá ser podada. Las “child chains” ya no necesitan conservar todo el historial de transacciones remontándose hasta el bloque génesis para ser seguras, porque no forjan..

– Como primer paso, vamos a empezar solamente con la cadena principal de forja, con la cadena NXT como única “child chain” de la anterior. Y tal vez una “child chain” en modo de pruebas. Una vez que las tengamos funcionando, implementaremos las características necesarias para ser capaces de crear dinámicamente nuevas “child chain”, o modificar las propiedades de las “child chains” existentes.

Este artículo está publicado originalmente en nxtforum.org.

Author: Jean-Luc. Participa en la discusión aquí:
https://nxtforum.org/core-development-discussion/nxt-2-0-design/

o en la sección en español del foro:

https://nxtforum.org/espanol-(spanish)/diseno-nxt-2-0/