*Tema mítico* : Hilo oficial de Bitcoin-XIII

A mí algo que me huele mal es cómo el % de uso de segwit llegó al 18 % sin problemas y de golpe cayó para estancarse en el 10% incluso aunque hoy el incentivo para usarlo es mucho mayor.

Taptap
 
Tarifas de Macafee por hablar bien de una cripto:

0:44
156 de 156
John McAfee
@officialmcafee
christmas.
I'm very impressed from
your work! Thanks!
Robin
Gestern 10:50
I have taken a look. It is a
good coin. I can promote
your coin for an up front
fee of 25 Bitcoins plus
15% of the coins.
ife
he
05:28
AnnackSecurity IT - 2.9k
24.12.17 a las 00:23
 
Aver, sus olvidais de la elasticidad precio de la demanda en todo esto del ataque flood.
1º en todo momento en la red existe una población que está dispuesta a pagar una comisión para realizar una transacción.
2º el monto de lo que cada persona está dispuesta a gastar sigue una distribución dada, por ejemplo de tipo Pareto.
3º Para un ancho de banda de 1000 transacciones por segundo, el precio de la transacción la marca lo que ha estado dispuesto a pagar el "mas rico" de los que no han entrado en la transacción + un pequeño
gap. Pongamos que 1000 shatosis. El mercado de las transacciones es entonces 1000 x 1000 = 1M shatosis
4º Si el ritmo de descenso de personas que están dispuestas a gastar por entrar en las transacciónes, es mucho menor que el ritmo con el que sube el precio de las transacciones. Por ejemplo si por cada 1000 shatosis que sube el precio, solo se pierde 1 cliente, puedes floodear metiendo transacciones de 6000 shatosis que:
_el precio de transaccion es de 6000 shatosis
_el mercado es de 995 personas = 995 x 6000 = 6M
_has multiplicado por 6 la capitalizacion del mercado de transferencias
_ y te ha costado 5 x 6000 = 30.000, una infima fracción.


You must be registered for see images
 
pin pan pun....

 
Basta proponer un BIP para que cada nodo rechace el último bloque con un % elevado de txs que no vea en su mempool.

Teniendo en cuenta que la mayoría de wallets se fijan únicamente en el coste media de tx por bloque, la técnica que he descrito permite aumentar está media de forma importante y por tanto automáticamente aumentar las comisiones en los próximos bloques.

El problema es que estos carbon lo están haciendo entre varios pools de minado. No os sorprenderá si os digo que Antminer son los que tienen mayor %...

Necesito un par de voluntarios con nodos para verificar que lo que ve mi mempool es similar a la vuestra (es decir, que lo que las txs que mi nodo no ve son más o menos las mismas que las vuestras). Os paso un script en python para hacer fotos de la mempool y hay que hacerlo durante unos días. Voluntarios?
Pásame el script si quieres, yo tengo nodo activo.
 
Esta solución es absurda porque, un nuevo nodo que se añade a la red, o uno que se reconecta, no dispone todavía de "mempool" y, por lo tanto, no se encuentra en sincronía suficiente con la red como para poder tener criterio suficiente como para descartar o no tan alegremente un bloque.

El único elemento del que dispone un nodo recién conectado para encontrar sincronía con la red, son las normas del protocolo. Esas normas están en el código de Bitcoin son precísamente las que estipulan que el ÚNICO E INFALSIFICABLE método para poder tener garantías de hayarse en sincronía con la red, es la prueba de trabajo acumulada en la cadena de bloques.

Lo siento Remonster, pero con ese BIP estarías metiendo una ventana de ataque cojinuda en el sistema.

Además ya existen mecanismos de mercado efectivos para hacer antirentable un ataque como el que decís por parte de los mineros.

Por cierto, yo no puedo ayudarte porque estoy a 6000 km de distancia de mi nodo y, para evitar sustos, lo tengo apagado.

Quizás puedas contar con él a partir de mediados de enero :XX:

No hay ningún problema con que los nodos muy nuevos no acepten algunos nuevos bloques. Sin ellos la propagación de la red no se fragiliza. De hecho tampoco aceptan nuevos bloques hasta que no han sincronizado la blockchain.

La mempool se sincroniza muy rápidamente, mucho más que la sincronización de la blockchain.

Dónde está el vector de ataque del que hablas?
 
Para los que no creen que haya spam en la mempool:



Algunos ejemplos de spam:





Cuánto cuesta spamear la mempool? 10 millones de dólares al día.

Quién puede gastarse ese dinero? Responde tu mismo.
 
No hay ningún problema con que los nodos muy nuevos no acepten algunos nuevos bloques. Sin ellos la propagación de la red no se fragiliza. De hecho tampoco aceptan nuevos bloques hasta que no han sincronizado la blockchain.

La mempool se sincroniza muy rápidamente, mucho más que la sincronización de la blockchain.

Dónde está el vector de ataque del que hablas?

El vector de ataque es que estás permitiendo un sybil attack hacia los nuevos nodos o hacia los que se reconectan de nuevo porque, para falsificar la información de la cadena de bloques, hace falta gastar un recurso escaso e irrecuperable, pero para falsificar transacciones no es necesario gastar nada.

Los nodos no pueden tomar decisiones sobre la veracidad o no de lo últimos bloques de la cadena en base a información fácilmente falsificable como son las transacciones.

Cuando a mediados de enero mi nodo se reconecte a la red Bitcoin, recibirá imnmediatamente dos tipos de información...información sobre la cadena de bloques e información sobre las transacciones que van pululando por la red en ese momento. Y ambos tipos de información me está llegando desde unos nodos que, sobre el papel, no cuestan apenas nada de poner en la red.

¿Cuál de los dos tipos de información me ofrece más garantías de que se encuentra en sincronía con el resto de información que comparte el resto de nodos legítimos del sistema?

Sin duda la información que me llega a través de la cadena de bloques y mi nodo sólo debería empezar a tomar decisiones a partir de ella.

¿Por qué? Pues porque inundar la red con nodos falsos es baratísimo. Porque, además de eso, los nodos legítimos pueden mostrar comportamiento maligno en determinadas circunstancias que los harían indetectables frente al resto de nodos legítimos, como por ejemplo únicamente actuar como nodos venenosos frente a un nodo cuando las 8 conexiones de éste hayan caído bajo el control de esta subred maligna.

Imagínate que yo controlase el 15% de todos los nodos de la red Bitcoin. Puedo decirles que se comporten de forma legítima con el resto de nodos y que sólamente se comporten de forma maligna cuando las 8 conexiones de un nodo hayan caído bajo mi control. ¿Qué me costaría a mi lanzarle entonces a ese nodo información falsa o sesgada sobre las transacciones de la mempool? No me costaría nada. Imagínate que, sabiendo que los mineros elegirán el meter en la blockchain aquellas transacciones en el rango superior de comisiones, decido únicamente pasar información maligna de transacciones de bajas comisiones. ¿Qué me ha costado atacar al nodo que ha caído bajo mi control? Nada de nada. Ni siquiera son transacciones construídas por mi.

Cuando un minero mine un bloque y, lógicamente, incluya en él las transacciones de la mempool con comisiones altas y yo le haga llegar ese bloque al nodo "bajo mi control", éste verá varias cosas a la vez:

1. Que el bloque es perfectamente válido porque está minado con la elevada dificultad de la red.

2. Que, de las transacciones incluidas en el bloque, ninguna se encontraba en la información de la mempool que mi comportamiento maligno le ha pasado.

Por lo tanto, el nodo descarta el bloque pensando que forma parte de un ataque "selfish" realizado por un minero y se queda esperando a que el resto de nodos se comporten igual que él y lo declaren huérfano también.

Sin embargo esto no va a ocurrir porque es él el que está extrayendo conclusiones erróneas a partir de información falsa y baratamente manipulable que yo le estoy haciendo llegar.

¿Qué costaría entonces inundar la red de nodos malignos que sólamente transmitiesen a través de sus conexiones aquellas transacciones que se encuentran en los percentiles inferiores de comisiones? No costaría nada y todos aquellos nodos que se conectasen a ellos estarían descartando bloques en base a información sesgada.

¿Se podría incorporar alguna modificación en el código de Bitcoin para detectar y banear las conexiones a nodos que se comportasen de esta forma? Pues no. Es imposible porque un nuevo nodo o uno que se reconecta, no tiene mempool y no puede deducir si los nodos a los que se ha conectado están enviándole únicamente transacciones en el percentil inferior de la mempool de los nodos legítimos de la red.

Los nodos sólo pueden tomar decisiones respecto a Bitcoin (incluyendo el incluir a otros nodos en una lista zain) con información que sea muy costosa de falsificar y, sobretodo, con información que sea áltamente probable que se encuentre compartida y en sincronía con el resto de nodos de la red, esto es, con la información que les llega a partir de la cadena de bloques.

El resto son ganas de meter ventanas de ataque susceptibles a sybil attacks.

Por último decirte que, si te fijas, todo esto de lo que estamos hablando se parece mucho a lo que estuvimos con Maidsafe y otras monedas PoS. La única forma de que tu nodo pueda tener la certidumbre de que las decisiones que él está tomando, van a ser compartidas y sincronizadas por el resto de nodos de la red, es cuando la información de la que partes para tomar dichas decisiones viene protegida por una prueba de trabajo encadenada.
 
Última edición:
El vector de ataque es que estás permitiendo un sybil attack hacia los nuevos nodos o hacia los que se reconectan de nuevo porque, para falsificar la información de la cadena de bloques, hace falta gastar un recurso escaso e irrecuperable, pero para falsificar transacciones no es necesario gastar nada.

Los nodos no pueden tomar decisiones sobre la veracidad o no de lo últimos bloques de la cadena en base a información fácilmente falsificable como son las transacciones.

Cuando a mediados de enero mi nodo se reconecte a la red Bitcoin, recibirá imnmediatamente dos tipos de información...información sobre la cadena de bloques e información sobre las transacciones que van pululando por la red en ese momento. Y ambos tipos de información me está llegando desde unos nodos que, sobre el papel, no cuestan apenas nada de poner en la red.

¿Cuál de los dos tipos de información me ofrece más garantías de que se encuentra en sincronía con el resto de información que comparte el resto de nodos legítimos del sistema?

Sin duda la información que me llega a través de la cadena de bloques y mi nodo sólo debería empezar a tomar decisiones a partir de ella.

¿Por qué? Pues porque inundar la red con nodos falsos es baratísimo. Porque, además de eso, los nodos legítimos pueden mostrar comportamiento maligno en determinadas circunstancias que los harían indetectables frente al resto de nodos legítimos, como por ejemplo únicamente actuar como nodos venenosos frente a un nodo cuando las 8 conexiones de éste hayan caído bajo el control de esta subred maligna.

Imagínate que yo controlase el 15% de todos los nodos de la red Bitcoin. Puedo decirles que se comporten de forma legítima con el resto de nodos y que sólamente se comporten de forma maligna cuando las 8 conexiones de un nodo hayan caído bajo mi control. ¿Qué me costaría a mi lanzarle entonces a ese nodo información falsa o sesgada sobre las transacciones de la mempool? No me costaría nada. Imagínate que, sabiendo que los mineros elegirán el meter en la blockchain aquellas transacciones en el rango superior de comisiones, decido únicamente pasar información maligna de transacciones de bajas comisiones. ¿Qué me ha costado atacar al nodo que ha caído bajo mi control? Nada de nada. Ni siquiera son transacciones construídas por mi.

Cuando un minero mine un bloque y, lógicamente, incluya en él las transacciones de la mempool con comisiones altas y yo le haga llegar ese bloque al nodo "bajo mi control", éste verá varias cosas a la vez:

1. Que el bloque es perfectamente válido porque está minado con la elevada dificultad de la red.

2. Que, de las transacciones incluidas en el bloque, ninguna se encontraba en la información de la mempool que mi comportamiento maligno le ha pasado.

Por lo tanto, el nodo descarta el bloque pensando que forma parte de un ataque "selfish" realizado por un minero y se queda esperando a que el resto de nodos se comporten igual que él y lo declaren huérfano también.

Sin embargo esto no va a ocurrir porque es él el que está extrayendo conclusiones erróneas a partir de información falsa y baratamente manipulable que yo le estoy haciendo llegar.

¿Qué costaría entonces inundar la red de nodos malignos que sólamente transmitiesen a través de sus conexiones aquellas transacciones que se encuentran en los percentiles inferiores de comisiones? No costaría nada y todos aquellos nodos que se conectasen a ellos estarían descartando bloques en base a información sesgada.

¿Se podría incorporar alguna modificación en el código de Bitcoin para detectar y banear las conexiones a nodos que se comportasen de esta forma? Pues no. Es imposible porque un nuevo nodo o uno que se reconecta, no tiene mempool y no puede deducir si los nodos a los que se ha conectado están enviándole únicamente transacciones en el percentil inferior de la mempool de los nodos legítimos de la red.

Los nodos sólo pueden tomar decisiones respecto a Bitcoin (incluyendo el incluir a otros nodos en una lista zain) con información que sea muy costosa de falsificar y, sobretodo, con información que sea áltamente probable que se encuentre compartida y en sincronía con el resto de nodos de la red, esto es, con la información que les llega a partir de la cadena de bloques.

El resto son ganas de meter ventanas de ataque susceptibles a sybil attacks.

Por último decirte que, si te fijas, todo esto de lo que estamos hablando se parece mucho a lo que estuvimos con Maidsafe y otras monedas PoS. La única forma de que tu nodo pueda tener la certidumbre de que las decisiones que él está tomando, van a ser compartidas y sincronizadas por el resto de nodos de la red, es cuando la información de la que partes para tomar dichas decisiones viene protegida por una prueba de trabajo encadenada.

Creo que no has entendido lo que propongo.

Un nuevo bloque validado con un gran número de tx desconocidas, ni se retransmite, ni se acepta como válido provisionalemente. Sin embargo, si la blockchain crece más de 2 bloques (o tres, o un threshold que se determine), sí que se acepta.

Lo único que hace el nodo es poner en cuarentena un bloque sospechoso. Eso da tiempo a mineros honestos a invalidarlo y descentiva a los mineros deshonestos rellenar su bloque con txs propias.

Al final las decisiones finales se toman gracias a la blockchain más larga. No veo dónde está el problema.
 
El vector de ataque es que estás permitiendo un sybil attack hacia los nuevos nodos o hacia los que se reconectan de nuevo porque, para falsificar la información de la cadena de bloques, hace falta gastar un recurso escaso e irrecuperable, pero para falsificar transacciones no es necesario gastar nada.

Los nodos no pueden tomar decisiones sobre la veracidad o no de lo últimos bloques de la cadena en base a información fácilmente falsificable como son las transacciones.

Cuando a mediados de enero mi nodo se reconecte a la red Bitcoin, recibirá imnmediatamente dos tipos de información...información sobre la cadena de bloques e información sobre las transacciones que van pululando por la red en ese momento. Y ambos tipos de información me está llegando desde unos nodos que, sobre el papel, no cuestan apenas nada de poner en la red.

¿Cuál de los dos tipos de información me ofrece más garantías de que se encuentra en sincronía con el resto de información que comparte el resto de nodos legítimos del sistema?

Sin duda la información que me llega a través de la cadena de bloques y mi nodo sólo debería empezar a tomar decisiones a partir de ella.

¿Por qué? Pues porque inundar la red con nodos falsos es baratísimo. Porque, además de eso, los nodos legítimos pueden mostrar comportamiento maligno en determinadas circunstancias que los harían indetectables frente al resto de nodos legítimos, como por ejemplo únicamente actuar como nodos venenosos frente a un nodo cuando las 8 conexiones de éste hayan caído bajo el control de esta subred maligna.

Imagínate que yo controlase el 15% de todos los nodos de la red Bitcoin. Puedo decirles que se comporten de forma legítima con el resto de nodos y que sólamente se comporten de forma maligna cuando las 8 conexiones de un nodo hayan caído bajo mi control. ¿Qué me costaría a mi lanzarle entonces a ese nodo información falsa o sesgada sobre las transacciones de la mempool? No me costaría nada. Imagínate que, sabiendo que los mineros elegirán el meter en la blockchain aquellas transacciones en el rango superior de comisiones, decido únicamente pasar información maligna de transacciones de bajas comisiones. ¿Qué me ha costado atacar al nodo que ha caído bajo mi control? Nada de nada. Ni siquiera son transacciones construídas por mi.

Cuando un minero mine un bloque y, lógicamente, incluya en él las transacciones de la mempool con comisiones altas y yo le haga llegar ese bloque al nodo "bajo mi control", éste verá varias cosas a la vez:

1. Que el bloque es perfectamente válido porque está minado con la elevada dificultad de la red.

2. Que, de las transacciones incluidas en el bloque, ninguna se encontraba en la información de la mempool que mi comportamiento maligno le ha pasado.

Por lo tanto, el nodo descarta el bloque pensando que forma parte de un ataque "selfish" realizado por un minero y se queda esperando a que el resto de nodos se comporten igual que él y lo declaren huérfano también.

Sin embargo esto no va a ocurrir porque es él el que está extrayendo conclusiones erróneas a partir de información falsa y baratamente manipulable que yo le estoy haciendo llegar.

¿Qué costaría entonces inundar la red de nodos malignos que sólamente transmitiesen a través de sus conexiones aquellas transacciones que se encuentran en los percentiles inferiores de comisiones? No costaría nada y todos aquellos nodos que se conectasen a ellos estarían descartando bloques en base a información sesgada.

¿Se podría incorporar alguna modificación en el código de Bitcoin para detectar y banear las conexiones a nodos que se comportasen de esta forma? Pues no. Es imposible porque un nuevo nodo o uno que se reconecta, no tiene mempool y no puede deducir si los nodos a los que se ha conectado están enviándole únicamente transacciones en el percentil inferior de la mempool de los nodos legítimos de la red.

Los nodos sólo pueden tomar decisiones respecto a Bitcoin (incluyendo el incluir a otros nodos en una lista zain) con información que sea muy costosa de falsificar y, sobretodo, con información que sea áltamente probable que se encuentre compartida y en sincronía con el resto de nodos de la red, esto es, con la información que les llega a partir de la cadena de bloques.

El resto son ganas de meter ventanas de ataque susceptibles a sybil attacks.

Por último decirte que, si te fijas, todo esto de lo que estamos hablando se parece mucho a lo que estuvimos con Maidsafe y otras monedas PoS. La única forma de que tu nodo pueda tener la certidumbre de que las decisiones que él está tomando, van a ser compartidas y sincronizadas por el resto de nodos de la red, es cuando la información de la que partes para tomar dichas decisiones viene protegida por una prueba de trabajo encadenada.


Segun tu hipotesis de que el nuevo nodo tenga sus 8 conexiones conectadas con la red maligna entonces ese nodo no forma parte de la red bitcoin ya que no esta conectada a ella. Y en ese caso, si el nodo no valida un bloque tampoco pasa nada ya que no se lo va a poder comunicar a nadie.
 
Segun tu hipotesis de que el nuevo nodo tenga sus 8 conexiones conectadas con la red maligna entonces ese nodo no forma parte de la red bitcoin ya que no esta conectada a ella. Y en ese caso, si el nodo no valida un bloque tampoco pasa nada ya que no se lo va a poder comunicar a nadie.
Sí, pero ya tienes a un tío fuera de la red y el coste de ese ataque me ha supuesto 0€. Con ese nuevo conjunto de reglas habéis permitido que los nodos puedan ser engañados y puedan declarar en cuarentena o incluso declarar como ilegítima, una información que cuesta mucho construir y proteger (la cadena de bloques), empleando para ello información que es muy fácil de manipular y sesgar (la mempool).
 
Última edición:
Para los que no creen que haya spam en la mempool:



Algunos ejemplos de spam:





Cuánto cuesta spamear la mempool? 10 millones de dólares al día.

Quién puede gastarse ese dinero? Responde tu mismo.

Eso es una dirección que está enviando transacciones con una comisión superior a la cantidad enviada!!?? Y además sin parar. No? (Es que estoy empezando y no sé si lo entiendo bien)
 
Sí, pero ya tienes a un tío fuera de la red y el coste de ese ataque me ha supuesto 0€. Con ese nuevo conjunto de reglas habéis permitido que los nodos puedan ser engañados y puedan declarar en cuarentena o incluso declarar como ilegítima una información que cuesta mucho construir y proteger (la cadena de bloques), empleando para ello información que es muy fácil de manipular y sesgar (la mempool).

Ese ataque, el rodear un nodo de nodos malignos, siempre se puede hacer a coste 0.

En mi propuesta la decisión final se toma con la información de la blockchain, no de la mempool. La información de la mempool sólo se usa para poner bloques nuevos en cuarentena, lo cual me parece apropiado. Si tu nodo está rodeado de nodos malignos te pueden pasar cosas peores.
 
Sí, pero ya tienes a un tío fuera de la red y el coste de ese ataque me ha supuesto 0€. Con ese nuevo conjunto de reglas habéis permitido que los nodos puedan ser engañados y puedan declarar en cuarentena o incluso declarar como ilegítima una información que cuesta mucho construir y proteger (la cadena de bloques), empleando para ello información que es muy fácil de manipular y sesgar (la mempool).


Pero es que es casi imposible conseguir que un nodo abra 8 conexiones con tu red. En el codigo de bitcoin estan hardcodeadas las ips de cientos de nodos a las que se puede conectar. No me imagino que nadie pueda colar ahi sus ips y que encima se de la casualidad de que las 8 conexiones que abra el cliente sean de su red.
 
Creo que no has entendido lo que propongo.

Un nuevo bloque validado con un gran número de tx desconocidas, ni se retransmite, ni se acepta como válido provisionalemente. Sin embargo, si la blockchain crece más de 2 bloques (o tres, o un threshold que se determine), sí que se acepta.

Lo único que hace el nodo es poner en cuarentena un bloque sospechoso. Eso da tiempo a mineros honestos a invalidarlo y descentiva a los mineros deshonestos rellenar su bloque con txs propias.

Al final las decisiones finales se toman gracias a la blockchain más larga. No veo dónde está el problema.
Muy bien, voy a seguir actuando como abogado del diablo.

Supongamos que introducimos ese parámetro que tú dices y lo ponemos en, supongamos, un threshold de 3 bloques de cuarentena. Voy a empezar a ponerte ejemplos de problemas con consecuencias que pueden derivar en catástrofes.

1. Para empezar, estás introduciendo un nuevo límite arbitrario. ¿A partir de qué umbral de transacciones en el bloque que difieran de la mempool puede un nodo considerar que el bloque merece ir a cuarentena? ¿Es un límite de número de transacciones o es un límite de peso?.

2. No conviene olvidar que los mineros también son nodos. Si introduces un umbral a partir del cual un nodo puede determinar que los tres últimos bloques, o incluso el último bloque, es susceptible de ser incluído en una cuarentena que podría incluso terminar en un rechazo del bloque, ¿Por qué empezar a minar sobre ese nuevo bloque en lugar de seguir haciéndolo sobre el anterior? ¿Cuál es el límite de riesgo que un pool puede asumir para minar sobre un bloque susceptible de ser puesto en cuarentena por el resto de nodos y, sobretodo, por el resto de nodos mineros?

Imagínate que el límite en el protocolo a partir del cual un bloque es susceptible de ser tratado como "ataque de un minero" es del 50% de transacciones en la mempool. Yo soy un pool de minado y me llega un bloque recién minado con sólo un 60% de transacciones que antes estaban en mi mempool. ¿Me arriesgo a minar sobre ese bloque o mejor sigo minando sobre el anterior? ¿Qué pasa si mi mempool es distinta de la mempool de un gran porcentaje de nodos de la red y resulta que yo estoy dando como válido un bloque recién minado, me pongo a minar sobre él, pero resulta que el resto de nodos ya lo ha puesto en cuarentena o rechazado? Estaría tirando la energía de mi minero a la cochambre porque, si mino un bloque sobre él, ambos serán rechazados por la red de nodos.

3. Bien, ahora pongámonos en la piel de los mineros súper competitivos de hoy en día y con una recompensa de minado de bloque tan alta como la que todavía tenemos. ¿Puedo utilizar la nueva ventana de ataque que propones para mejorar injustamente mis posibilidades frente a los mineros competidores, incluso aunque sea moliendo a la red Bitcoin? Por supuesto. Inundo la red de nodos venenosos falsos que sólamente retransmitan información sobre la mempool de percentil de transacciones con comisiones más bajas y yo sólo me encargo de minar bloques incluyendo comisiones bajas. Como la recompensa por minar un bloque todavía es alta comparada con la parte de las comisiones, puedo asumir esa merma en los ingresos porque, si mis competidores se comportan como entidades racionales, incluirán el percentil superior de las transacciones en los bloques y, entonces, la retransmisión de los bloques a través de mis nodos venenosos y a través de todos aquellos nodos legítimos que yo haya conseguido engañar, será lenta o, incluso, lo descartarán, dando ventaja a los bloques que yo mine con bajas comisiones.

¿Resultado si todos los mineros se comportan igual para competir contra mi estrategia? Una red inundada con nodos venenosos, que sólamente retransmiten las transacciones del pool de memoria en los percentiles inferiores de comisión y una situación absurda en la que, si quieres que tus transacciones entren en los bloques, tienes que enviarlas con la menor comisión posible, pero esto hace posible que cualquiera pueda spamear la red.

Lo siento, pero sigo en mis trece. Ningún nodo puede decidir cosas tan importantes como la validez o no de un bloque, o la puesta en cuarentena o no de un bloque, basándose únicamente en información fácil y barata de sesgar, manipular o falsificar, como son las transacciones de la mempool. Estaríais introduciendo ventanas de ataque y una cantidad de incertidumbre tan elevada en el sistema que da miedo de sólo pensarlo.

---------- Post added 24-dic-2017 at 13:51 ----------

Pero es que es casi imposible conseguir que un nodo abra 8 conexiones con tu red. En el codigo de bitcoin estan hardcodeadas las ips de cientos de nodos a las que se puede conectar. No me imagino que nadie pueda colar ahi sus ips y que encima se de la casualidad de que las 8 conexiones que abra el cliente sean de su red.
Eso es lo que de toda la vida se ha llamado sybil attack y la blockchain se inventó, precísamente, para luchar contra ese tipo de ataque (entre otras cosas).

Es demasiado barato inundar la red con nodos venenosos de diferentes rangos de IP comparado con lo costoso que resulta intentar falsificar la cadena de bloques.

Lo siento, pero estáis cayendo en las trampas de pensamiento de las que echan mano los defensores del PoS.

---------- Post added 24-dic-2017 at 14:05 ----------

Y otra cosa más. Es extremadamente probable que todos nuestros nodos estén compartiendo exactamente la misma cadena de bloques. ¿Qué probabilidad hay de que también estén compartiendo la misma mempool?

Ya os digo yo que la probabilidad es mucho, pero mucho, mucho, más baja. Para empezar, el tamaño de la mempool es variable y cada uno podemos seleccionar el que nos apetezca. Cada uno de nosotros puede añadir un límite inferior de comisiones a partir del cual las transacciones son desechadas de la mempool (las podemos considerar como spam) y dejar de retransmitirlas. ¿Cómo coordinamos eso? Lo que yo considero spam, para otra persona puede no serlo, y darle tanta importancia a la mempool como para poder declarar un bloque en cuarentena nos obliga a todos a tener que coincidir en los parámetros de nuestras mempools.
 
Última edición:
Muy bien, voy a seguir actuando como abogado del diablo.

Supongamos que introducimos ese parámetro que tú dices y lo ponemos en, supongamos, un threshold de 3 bloques de cuarentena. Voy a empezar a ponerte ejemplos de problemas con consecuencias que pueden derivar en catástrofes.

1. Para empezar, estás introduciendo un nuevo límite arbitrario. ¿A partir de qué umbral de transacciones en el bloque que difieran de la mempool puede un nodo considerar que el bloque merece ir a cuarentena? ¿Es un límite de número de transacciones o es un límite de peso?.

2. No conviene olvidar que los mineros también son nodos. Si introduces un umbral a partir del cual un nodo puede determinar que los tres últimos bloques, o incluso el último bloque, es susceptible de ser incluído en una cuarentena que podría incluso terminar en un rechazo del bloque, ¿Por qué empezar a minar sobre ese nuevo bloque en lugar de seguir haciéndolo sobre el anterior? ¿Cuál es el límite de riesgo que un pool puede asumir para minar sobre un bloque susceptible de ser puesto en cuarentena por el resto de nodos y, sobretodo, por el resto de nodos mineros?

Imagínate que el límite en el protocolo a partir del cual un bloque es susceptible de ser tratado como "ataque de un minero" es del 50% de transacciones en la mempool. Yo soy un pool de minado y me llega un bloque recién minado con sólo un 60% de transacciones que antes estaban en mi mempool. ¿Me arriesgo a minar sobre ese bloque o mejor sigo minando sobre el anterior? ¿Qué pasa si mi mempool es distinta de la mempool de un gran porcentaje de nodos de la red y resulta que yo estoy dando como válido un bloque recién minado, me pongo a minar sobre él, pero resulta que el resto de nodos ya lo ha puesto en cuarentena o rechazado? Estaría tirando la energía de mi minero a la cochambre porque, si mino un bloque sobre él, ambos serán rechazados por la red de nodos.

3. Bien, ahora pongámonos en la piel de los mineros súper competitivos de hoy en día y con una recompensa de minado de bloque tan alta como la que todavía tenemos. ¿Puedo utilizar la nueva ventana de ataque que propones para mejorar injustamente mis posibilidades frente a los mineros competidores, incluso aunque sea moliendo a la red Bitcoin? Por supuesto. Inundo la red de nodos venenosos falsos que sólamente retransmitan información sobre la mempool de percentil de transacciones con comisiones más bajas y yo sólo me encargo de minar bloques incluyendo comisiones bajas. Como la recompensa por minar un bloque todavía es alta comparada con la parte de las comisiones, puedo asumir esa merma en los ingresos porque, si mis competidores se comportan como entidades racionales, incluirán el percentil superior de las transacciones en los bloques y, entonces, la retransmisión de los bloques a través de mis nodos venenosos y a través de todos aquellos nodos legítimos que yo haya conseguido engañar, será lenta o, incluso, lo descartarán, dando ventaja a los bloques que yo mine con bajas comisiones.

¿Resultado si todos los mineros se comportan igual para competir contra mi estrategia? Una red inundada con nodos venenosos, que sólamente retransmiten las transacciones del pool de memoria en los percentiles inferiores de comisión y una situación absurda en la que, si quieres que tus transacciones entren en los bloques, tienes que enviarlas con la menor comisión posible, pero esto hace posible que cualquiera pueda spamear la red.

Lo siento, pero sigo en mis trece. Ningún nodo puede decidir cosas tan importantes como la validez o no de un bloque, o la puesta en cuarentena o no de un bloque, basándose únicamente en información fácil y barata de sesgar, manipular o falsificar, como son las transacciones de la mempool. Estaríais introduciendo ventanas de ataque y una cantidad de incertidumbre tan elevada en el sistema que da miedo de sólo pensarlo.

---------- Post added 24-dic-2017 at 13:51 ----------

Eso es lo que de toda la vida se ha llamado sybil attack y la blockchain se inventó, precísamente, para luchar contra ese tipo de ataque (entre otras cosas).

Es demasiado barato inundar la red con nodos venenosos de diferentes rangos de IP comparado con lo costoso que resulta intentar falsificar la cadena de bloques.

Lo siento, pero estáis cayendo en las trampas de pensamiento de las que echan mano los defensores del PoS.

---------- Post added 24-dic-2017 at 14:05 ----------

Y otra cosa más. Es extremadamente probable que todos nuestros nodos estén compartiendo exactamente la misma cadena de bloques. ¿Qué probabilidad hay de que también estén compartiendo la misma mempool?

Ya os digo yo que la probabilidad es mucho, pero mucho, mucho, más baja. Para empezar, el tamaño de la mempool es variable y cada uno podemos seleccionar el que nos apetezca. Cada uno de nosotros puede añadir un límite inferior de comisiones a partir del cual las transacciones son desechadas de la mempool (las podemos considerar como spam) y dejar de retransmitirlas. ¿Cómo coordinamos eso? Lo que yo considero spam, para otra persona puede no serlo y darle tanta importancia a la mempool como para poder declarar un bloque en cuarentena nos obliga a todos a tener que coincidir en los parámetros de nuestras mempools.
Pero en los nodos podras poner al menos una ip de un nodo de confianza a capon ¿no?, en Caso del POS, puedes poner la empresa que lo ha fabricado como sincera... jejeje
 
Yo hasta ahora confiaba en que el bitcoin se iría imponiendo poco a poco y sería la moneda del futuro. Es una moneda infalsificable, limitada, sin necesidad de bancos, transparente, nadie la controla, todo muy bonito, pero todo eso la haría única si fuese la única criptomoneda, pero si luego resulta que pueden sacar otra criptomoneda igual o incluso mejorarla, ya no es algo limitado, entonces el bitcoin no vale para tanto, ya que siempre te puedes pasar al bitcoin 2.0, al 3.0, y así sucesivamente o cualquier otra criptomoneda que lo mejore, por lo tanto, la blockchain triunfará, pero cambiará la moneda. Quizás no esté en lo cierto, pero ¿no hay ninguna criptomoneda mejor que el bitcoin?
 
Yo hasta ahora confiaba en que el bitcoin se iría imponiendo poco a poco y sería la moneda del futuro. Es una moneda infalsificable, limitada, sin necesidad de bancos, transparente, nadie la controla, todo muy bonito, pero todo eso la haría única si fuese la única criptomoneda, pero si luego resulta que pueden sacar otra criptomoneda igual o incluso mejorarla, ya no es algo limitado, entonces el bitcoin no vale para tanto, ya que siempre te puedes pasar al bitcoin 2.0, al 3.0, y así sucesivamente o cualquier otra criptomoneda que lo mejore, por lo tanto, la blockchain triunfará, pero cambiará la moneda. Quizás no esté en lo cierto, pero ¿no hay ninguna criptomoneda mejor que el bitcoin?

¿Hay algún equipo de regional mejor que uno de champions?

Para saberlo el de regional ha de ascender durante varios años para llegar a primera, luego clasificarse para champions, y luego demostrar ante el otro, cual de los dos es mejor.

La eterna pregunta que solo el largo plazo puede responder, si lo preguntas por aquí y ahora, de momento manda BTC.

un saludo
 
¿no hay ninguna criptomoneda mejor que el bitcoin?

El 99'9% de las shitcoins ni siquera existen, puesto que no son más que simples apuntes contables en los libros de cuentas de Poloniex, o tienen sólo un puñado de nodos.

Del 0'01% restante, Bitcoin es la más segura, la más fiable, la más desarrollada, la más descentralizada, la más aceptada, la más reconocida, la más valiosa y la que mayor certidumbre puede ofrecer.
 
Última edición:
Jorobar han resumido 1 año de discusión en este hilo con su explicacion ,

A ti te comen la cabeza con lo primero que se les ocurre. Porque eso se ha demostrado falso totalmente.

---------- Post added 24-dic-2017 at 15:29 ----------

Yo hasta ahora confiaba en que el bitcoin se iría imponiendo poco a poco y sería la moneda del futuro. Es una moneda infalsificable, limitada, sin necesidad de bancos, transparente, nadie la controla, todo muy bonito, pero todo eso la haría única si fuese la única criptomoneda, pero si luego resulta que pueden sacar otra criptomoneda igual o incluso mejorarla, ya no es algo limitado, entonces el bitcoin no vale para tanto, ya que siempre te puedes pasar al bitcoin 2.0, al 3.0, y así sucesivamente o cualquier otra criptomoneda que lo mejore, por lo tanto, la blockchain triunfará, pero cambiará la moneda. Quizás no esté en lo cierto, pero ¿no hay ninguna criptomoneda mejor que el bitcoin?
Tu lógica es impecable. Todo esto era valido cuando ibamos a contar con 21 millones de monedas para todas nuestras necesidades de mover dinero, pero eso ya no es asi por lo que dices.
Por ahora el valor se les está dando entre otras cosas por el efecto red, la ley esa que no me acuerdo el nombre que dice que la utilidad de la red se incrementa exp. con el número de usuarios. Y en eso btc lleva ventaja por ser la primera y más conocida.
Pero como dices hay un montón de monedas mejores que btc, bitcoin cash la primera y está claro que el valor de btc se irá erosionando. Yo creo que 2018 va a ser muy negativo para btc al no poder sostenerse en nada su modo de funcionamiento y haber substitutos totalmente listos para no solo reemplazarlo sino hacerlo mucho mejor.
Como está el marketcap ahora y como estará a final de año va a cambiar y el número 1 ya veremos si btc será capaz de retenerlo, yo no lo creo. El marketcap de btc debe ir ya por el 40% y no creo que acabe el año ni en el 30% pero eso es hablar por hablar.
Y no es sacar otra vez el tema fees, cadena atascada, mempool a explotar.

Son estas noticias las que al final harán ver a la gente que btc es solo un producto especulativo y en realidad no tiene utilidad. Y esto el valor lo tiene que reflejar por mucho que el mercado quiera mirar para otro lado.
Como dices lo que esperabamos que fuese bitcoin todos era que bitcoin se impusiese y fuese utilizado en todos lados. De eso no queda nada en btc, pero es justo el objetivo que se puso cash y por ahora está revertiendo la situación de todo el daño que causo la actitud soberbia, intolerante y cabezota de core.
Por cierto, felices fiestas a todos.
 
Última edición:
Una vez escuchando a Adam B. Levine en el podcast "let's talk bitcoin", (no recuerdo en que episodio) dijo algo como que, para crear algo que pudiera reemplazar a bitcoin, el cambio tenía que suponer algo tan brutal como la distancia entre el dinero-fiat y el bitcoin.

Conviene recordar que bitcoin está constituído por varios "engranajes" que se pueden cambiar de ser necesario para mejorarlo. Veo que no mucha gente logra entenderlo.

Saludos.
 
Una vez escuchando a Adam B. Levine en el podcast "let's talk bitcoin", (no recuerdo en que episodio) dijo algo como que, para crear algo que pudiera reemplazar a bitcoin, el cambio tenía que suponer algo tan brutal como la distancia entre el dinero-fiat y el bitcoin.

Conviene recordar que bitcoin está constituído por varios "engranajes" que se pueden cambiar de ser necesario para mejorarlo. Veo que no mucha gente logra entenderlo.

Saludos.

El asunto aquí y reconozco que puede ser confuso para quien se mete ahora es a lo que él se refería como bitcoin cuando lo dijo.
No creo que se refiriese al btc actual con sus fees de 40 pavos, sus tx rbf, sus bloques de 1 Mb, sw, etc.
Si se refería al bitcoin pre-2014 entonces se está refiriendo a lo que hoy se le llama bitcoin cash.
Y esto es así, por mucho que a algunos les aguante.

---------- Post added 24-dic-2017 at 16:00 ----------

Estas noticias evidencian que no se estaba refiriendo al btc de hoy.
You must be registered for see images

O esta. 1660 btc atascados en la mempool. 21 millones de euros de nada.
You must be registered for see images
 
Última edición:

Estadísticas del foro

Temas
2.048.613
Mensajes
58.122.222
Miembros
190.812
Último miembro
Davimende

El blog de burbuja.info

Volver