Bitcoin Forum
June 19, 2024, 05:28:02 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 2 [3] 4 5 »  All
  Print  
Author Topic: Son seguros los monederos de papel ?  (Read 5280 times)
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1029



View Profile
November 15, 2013, 10:59:35 AM
 #41

Tendré que usar más la opción de previsualizar.[/size][/i]

Yo me acostumbré a usar esto en otro foro donde se recomendaba de vez en cuando. Tanto en aquel sitio como aquí he llegado a previsualizar hasta 8 veces antes de publicar Smiley.

Edito Tongue Tongue: y es que en aquel foro no solamente se recomendaba, sino que la primera vez que escribías el mensaje no tenías la opción de publicar, sólo la de previsualilzar. Sólo después de previsualizar una vez ya te salía el botoncito de "Post".
marcosfx
Full Member
***
Offline Offline

Activity: 303
Merit: 100


The Future Of Work


View Profile
November 15, 2013, 12:59:50 PM
 #42

Lo cual es una mala idea. Las direcciones deben usarse una única vez, por seguridad y por privacidad. Bitcoin está diseñado con este principio, quien lo diseñó no hizo que hubiera 2^160 direcciones posibles por gusto, lo hizo para que nunca nos fueran a faltar.

Hay otras razones más importantes para que haya tantas direcciones posibles, aparte de que "se acaben". De hecho si las direcciones "se acabasen" el problema no sería el anonimato, sino directamente perder tus bitcoins porque alguien podría generar tu propia clave privada

▬▬■ ■ ■▬▬ The Future of Work. Decentralized. ▬▬■ ■ ■▬▬
WhitepaperANN THREADTELEGRAMFACEBOOKTWITTERYOUTUBE
fernarios
Hero Member
*****
Offline Offline

Activity: 616
Merit: 501



View Profile
November 15, 2013, 01:16:14 PM
Last edit: November 15, 2013, 01:31:06 PM by fernarios
 #43

Otros clientes, como Electrum que ya mencionaron, permiten desactivar esta función.

Lo cual es una mala idea. Las direcciones deben usarse una única vez, por seguridad y por privacidad. Bitcoin está diseñado con este principio, quien lo diseñó no hizo que hubiera 2^160 direcciones posibles por gusto, lo hizo para que nunca nos fueran a faltar.
La cantidad de direcciones es de 2^160, a partir de que se tengan creadas la cuarta parte, empezaran haber colisiones, osea que no es recomendable superar el 2^158 direcciones. Es pura probabilidad cuanto mas tires un dado más probabilidad hay de que vuelva ha salir un numero que ya hubiese salido, este dado tiene 2^160 caras.

Editado y corregido
Había puesto 2^40 cuando realmente es 2^158 que es muy diferente.

Las direcciones no se van acabando en ese sentido, la generación de nuevas direcciones no sigue un orden particular, la posibilidad de que la próxima dirección generada sea igual a la tuya será la misma hoy que dentro de 100 años. Si tiras un dado hay 1/6 de probabilidad de sacar 5, si lo tiras un millón de veces, la posibilidad de sacar 5 seguirá siendo de 1/6. Además el número de las direcciones en uso (con fondos para robar) no podrá superar el número de satoshis en la red 2.100.000.000.000.000, esta cantidad es muy pequeña comparada con el total de direcciones posibles, por lo tanto nonca se alcanzará el 1/4 del que hablas, o sea, tal ves sí puedas colisionar con alguna dirección anterior pero la posibilidad de que hayan fondos seguirá siendo ínfima.

Lo que sí puede aumentar es la frecuencia con que se tira el dado, a medida que crecen los servicios y usuarios, pero ya hemos discutido en muchos hilos la ínfima posibilidad que hay de que la colisión ocurra, y si llega a ser un peligro en el futuro, con solo aumentar un byte al tamaño de las direcciones ya estaremos seguros por muchos años mas.
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 15, 2013, 03:13:47 PM
Last edit: November 16, 2013, 02:10:28 PM by Nubarius
 #44

(...)
Otros clientes, como Electrum que ya mencionaron, permiten desactivar esta función.

Lo cual es una mala idea. Las direcciones deben usarse una única vez, por seguridad y por privacidad. Bitcoin está diseñado con este principio, quien lo diseñó no hizo que hubiera 2^160 direcciones posibles por gusto, lo hizo para que nunca nos fueran a faltar.
Las direcciones de cambio se diseñaron para mejorar el anonimato. Pero se ha visto ya hace tiempo que no sirve realmente para nada y se pueden rastrear las direcciones perfectamente, solo ofuscan un poco pero nada que no se pueda rastrear.
Si sirviesen no se crearían sitios para anonimizar los bitcois. Quien te diga que tener desactivado el usar direcciones de intercambio es inseguro no tiene ni idea de lo que es el bitcoin.
Si tienes desactivado "uso de direcciones de cambio" lo único es que el cambio en lugar de ir a la dirección de cambio va a la propia dirección que lo mando.

Estoy de acuerdo en que la ofuscación que dan las direcciones de cambio es reducida. Pero hay otra razón más importante por la que se desaconseja reutilizar direcciones. Cuando se hace un pago de una dirección 1a a otra dirección 1b, se publica en la transacción la clave pública de 1a, pero no la de 1b. Esto quiere decir que la red Bitcoin contiene a la vista de todo el mundo las claves públicas de las direcciones que han sido origen de transferencias. Debido a eso, si todo mi saldo se encuentra en direcciones que nunca han sido origen de pagos podré dormir más tranquilo, ya que estoy protegido por la seguridad criptográfica de tres operaciones: 1/ la generación aleatoria de la clave privada, 2/ el cálculo de clave pública mediante el algoritmo ECDSA y 3/ el cálculo de dirección mediante dos rondas de SHA-256 (edito: y una de RIPEMD-160). Quienes reutilizan direcciones pierden este tercer nivel de seguridad. Esto sería fatal si un día alguien rompiera el algoritmo ECDSA encontrando un algoritmo inverso para pasar de la clave pública a la privada. En ese momento, y hasta que se introdujera una nueva forma más sofisticada de firma digital, todas las direcciones reutilizadas pasarían a ser inseguras, mientras que las no reutilizadas estarían protegidas por SHA-256 (edito: y RIPEMD-160).
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1029



View Profile
November 15, 2013, 04:16:33 PM
 #45

Debido a eso, si todo mi saldo se encuentra en direcciones que nunca han sido origen de pagos podré dormir más tranquilo, ya que estoy protegido por la seguridad criptográfica de tres operaciones: 1/ la generación aleatoria de la clave privada, 2/ el cálculo de clave pública mediante el algoritmo ECDSA y 3/ el cálculo de dirección mediante dos rondas de SHA-256. Quienes reutilizan direcciones pierden este tercer nivel de seguridad. Esto sería fatal si un día alguien rompiera el algoritmo ECDSA encontrando un algoritmo inverso para pasar de la clave pública a la privada.

Y es más: quien realiza pagos repetidos usando la misma clave privada para firmar, publica no solo la clave pública (la misma, varias veces) sino varias firmas hechas con la misma clave privada. Esto va reduciendo poco a poco el esfuerzo que hay que hacer para averiguar la clave privada a partir de las firmas conocidas. Los usuarios de android lo saben bien…

De acuerdo que la reducción en ese esfuerzo no es significativa hoy en día (excepto bugs gordos como el que ya hemos visto) pero dentro de X meses o años puede descubrirse una vulnerabilidad en ECDSA así en plan "con 8 firmas te averiguo la clave privada en una semana". Y no debemos olvidar que la NSA está en el ajo.

En fin, que no reutilicéis direcciones. Yo por mi parte he quitado el "Firstbits: 12345" que tenía ahí debajo de kitty, y en mi perfil he editado el campo "Your bitcoin address".
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 15, 2013, 05:08:02 PM
 #46

Debido a eso, si todo mi saldo se encuentra en direcciones que nunca han sido origen de pagos podré dormir más tranquilo, ya que estoy protegido por la seguridad criptográfica de tres operaciones: 1/ la generación aleatoria de la clave privada, 2/ el cálculo de clave pública mediante el algoritmo ECDSA y 3/ el cálculo de dirección mediante dos rondas de SHA-256. Quienes reutilizan direcciones pierden este tercer nivel de seguridad. Esto sería fatal si un día alguien rompiera el algoritmo ECDSA encontrando un algoritmo inverso para pasar de la clave pública a la privada.

Y es más: quien realiza pagos repetidos usando la misma clave privada para firmar, publica no solo la clave pública (la misma, varias veces) sino varias firmas hechas con la misma clave privada. Esto va reduciendo poco a poco el esfuerzo que hay que hacer para averiguar la clave privada a partir de las firmas conocidas. Los usuarios de android lo saben bien…

De acuerdo que la reducción en ese esfuerzo no es significativa hoy en día (excepto bugs gordos como el que ya hemos visto) pero dentro de X meses o años puede descubrirse una vulnerabilidad en ECDSA así en plan "con 8 firmas te averiguo la clave privada en una semana". Y no debemos olvidar que la NSA está en el ajo.

En fin, que no reutilicéis direcciones. Yo por mi parte he quitado el "Firstbits: 12345" que tenía ahí debajo de kitty, y en mi perfil he editado el campo "Your bitcoin address".
En eso estoy de acuerdo, cuanto más uses una dirección más propenso es encontrar la clave privada, pero es del todo ridículo lo que mejora en su descifrado. Es más fácil que se encuentre una colisión. Además eso no es lo mismo que las direcciones de cambio, las cuales se usan para recibir el cambio en caso de necesitar dividir la moneda, quizás porque me gusta más controlar yo las direcciones y no el cliente prefiero tener desactivado las direcciones de cambio. Yo suelo recomendar sobretodo con monederos en papel y de gran cantidad, es que se usen una sola vez pero si te quedan unos satosis nadie se va a matar para intentar sacártelos. Por eso el otro pos puse que se creasen direcciones en papel con 0BTC para pasar los sobrantes de un pago en una dirección de papel. Lo mejor suele ser crear la mitad con 0.
Si creo 10 direcciones de papel con 10btc cada una creo otras 5 con 0btc.

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 16, 2013, 02:07:46 PM
Last edit: November 18, 2013, 08:39:16 AM by Nubarius
 #47

(...) En eso estoy de acuerdo, cuanto más uses una dirección más propenso es encontrar la clave privada, pero es del todo ridículo lo que mejora en su descifrado. Es más fácil que se encuentre una colisión. (...)
Supongo que te refieres a que es ridículo que alguien pueda encontrar la clave privada a través de la pública por fuerza bruta (y, además, para eso sería mejor aplicar la fuerza bruta directamente sobre la dirección). Pero no lo es que en los próximos años se pueda descubrir un algoritmo que permita hallar la clave privada con complejidad no exponencial. Otra posibilidad es que se lleguen a construir auténticos ordenadores cuánticos. Creo que ya se conoce una variante del algoritmo cuántico de Shor que permite precisamente hacer ese cálculo inverso de claves ECDSA en tiempo polinomial. En definitiva, la criptografía de curvas elípticas seguramente dejará de ser segura en algún momento futuro.

(...) Además eso no es lo mismo que las direcciones de cambio, las cuales se usan para recibir el cambio en caso de necesitar dividir la moneda, (...)

Es lo mismo en el sentido de que no utilizar direcciones de cambio implica reutilizar direcciones.

Por cierto, me he dado cuenta de que en mi último mensaje olvidé mencionar que la dirección no reutilizada está protegida no por una sino por dos funciones criptográficas, ya que se usa también RIPEMD-160 en el cálculo de la dirección. Esto da un nivel adicional de seguridad, ya que para poder pasar de la dirección a la clave pública habría que romper dos funciones criptográficas, la SHA-256 desarrollada en EE UU y la RIPEMD-160 desarrollada en Europa. A Satoshi no se le pasaba ni una.
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1029



View Profile
November 16, 2013, 04:21:57 PM
 #48

(...) En eso estoy de acuerdo, cuanto más uses una dirección más propenso es encontrar la clave privada, pero es del todo ridículo lo que mejora en su descifrado. Es más fácil que se encuentre una colisión. (...)
Supongo que te refieres a que es ridículo que alguien pueda encontrar la clave privada a través de la pública por fuerza bruta (y, además, para eso sería mejor aplicar la fuerza bruta directamente sobre la dirección).

Mi mensaje, al que probablemente haztecoin está respondiendo, se refería a averiguar la privada a partir de las múltiples firmas hechas cuando se hacen múltiples envíos usando la misma clave privada. Por ejemplo, en la transacción d08efb37e631000781a6f118b5741562d26da1d2f358b2ce50d945be2e9021db, la clave privada asociada a la dirección 19GgbRa54uQKkuvpWtajV86BurRuubvk12 se usa 4 veces, para firmar 4 salidas. He aquí las firmas y las claves públicas:

Code:
3045022100aca9628ce8b1fbc20e81d6d92d70db5298504601de7d0a74160f888dfccc6ee002203f1b73d5b4fa724ffc0b7e99971f3123ffc5301be006d6cf7ac57f5a4f7247e901   0466bb1b2df956918c7ff37319151c8e92969d8e9f9022477822950b790c54ad484a165c517eba11e7229847d2b8c89e04dea12ac4f531ca195f9015a4f124773a
3044022018eda5a8a65b0d1feda86e985c85d46031f1fa9ac6cdd344492bba203c0068e102201522c89c7d73ebe92d2fb47d5a3120730100e85e04b957f4ccbadb875d010b8501     0466bb1b2df956918c7ff37319151c8e92969d8e9f9022477822950b790c54ad484a165c517eba11e7229847d2b8c89e04dea12ac4f531ca195f9015a4f124773a
30450221008b6246247bcd357fbfd68327d715f8c4c951dab192ec3544e49e30b4841810d902205d3222837c63e2bc504f7c54595b45767e8f774877574cf2eb4aef168d8d7b4801   0466bb1b2df956918c7ff37319151c8e92969d8e9f9022477822950b790c54ad484a165c517eba11e7229847d2b8c89e04dea12ac4f531ca195f9015a4f124773a
3046022100af2a61e65fcc9fc000024e5eb62e55dcaba684a7a728d7dca43c480b0e211e95022100c69289b9c72e4e0bdcd87dee82c9380b0e7ea6232c31b83e3757e4f597718c5701 0466bb1b2df956918c7ff37319151c8e92969d8e9f9022477822950b790c54ad484a165c517eba11e7229847d2b8c89e04dea12ac4f531ca195f9015a4f124773a

Las firmas son distintas, por supuesto; la clave pública es naturalmente la misma. Ante una hipotética vulnerabilidad de ECDSA que permitiera obtener la clave privada a partir de múltiples firmas hechas con ella, reutilizar direcciones abre la puerta para que te vacíen el monedero.

Las probabilidades de esto tal como está el panorama hoy día son las de siempre, cero coma cero cero cero bla bla bla, pero hay gente haciéndole cosquillas a ECDSA según escribo esto y en cualquier momento puede saltar la liebre.
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 18, 2013, 08:45:47 AM
 #49

Corrijo una tontería que escribí en mi último mensaje, para que no quede ahí para la posteridad:

(...) (y, además, para eso sería mejor aplicar la fuerza bruta directamente sobre la dirección). (...)

Me equivoqué al apuntar en ese breve comentario entre paréntesis, ahora tachado, que sería más "fácil" hacer un ataque de fuerza bruta sobre la dirección que sobre la clave pública. En principio, parecería lógico que así fuera porque las posibles direcciones privadas son 2256 mientras que el total de direcciones son 2160 (es decir, cada dirección Bitcoin puede ser generada por alrededor de 296 pares diferentes de claves pública y privada). Pero pasé por alto que la seguridad del algoritmo ECDSA de N bits es en realidad de N/2 bits. Esto quiere decir que dada una clave pública de N bits se puede encontrar la clave privada en un máximo de 2N/2 operaciones. En el caso de Bitcoin, serían 2128 intentos, muchos menos que ir probando claves privadas hasta dar con uno de los 2160 valores posibles de la dirección. Por lo tanto, incluso en el caso de los ataques de fuerza bruta, conocer la clave pública "facilita" las cosas.

Para quienes tengan curiosidad por la explicación matemática, la razón de que basten 2128 intentos y no haya que probar uno a uno con todos los casi 2256 posibles valores de la clave privada es la existencia de un algoritmo conocido como "algoritmo del canguro" o "algoritmo lambda" de Pollard, que permite ir avanzando a saltos. La primera vez que vi una mención a ese algoritmo fue en un mensaje de gmaxwell en este foro (https://bitcointalk.org/index.php?topic=186105.msg1935535#msg1935535). Para más detalles, hay un artículo en la Wikipedia inglesa: http://en.wikipedia.org/wiki/Pollard's_kangaroo_algorithm .
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 18, 2013, 11:59:25 AM
 #50

Si en algún momento revientan el cifrado de curvas elípticas el bitcoin no valdrá nada.
Una de las peculiaridades es que las direcciones del bitcoin son perpetuas.
En ese caso habría que crear otra moneda que usase un algoritmo no sensible a dicho ataque.
Si una dirección puede crearse con barias claves el echo de que puedas usar más claves para dicha dirección es más inseguro que solo puedas usar una. Grin

De todas maneras esto son cosas irrelevantes pues siempre se pueden atacar por otros lados, el ataque del 51% es mucho más económico y factible que atacar el cifrado de curvas elípticas incluso teniendo millones de transacciones firmadas, o atacar directamente todos los nodos de la red es mucho más fácil que atacar el cifrado teniendo o no la clave publica y con millones de transacciones hechas.

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 18, 2013, 03:05:56 PM
 #51

Si en algún momento revientan el cifrado de curvas elípticas el bitcoin no valdrá nada.

No valdrán nada las direcciones reutilizadas. Quienes no reutilizamos direcciones seguiremos teniendo a salvo nuestros bitcoins. De acuerdo que algo así desencadenaría una crisis de confianza en el sistema y seguramente bajaría el valor, pero no tendría por qué ser un golpe mortal.

Además, las primitivas criptográficas no se revientan de la noche a la mañana. Primero habrá avances, bien a través de nuevos algoritmos clásicos o a través de ordenadores cuánticos capaces de aplicar el algoritmo de Shor, que hagan que lo que requería millones de años pase a requerir siglos o décadas. En ese momento, se considerará rota la criptografía de curvas elípticas, pero habrá tiempo para plantear alternativas y seguramente surgirán nuevos algoritmos más seguros (si no, habría que incrementar la longitud de clave, aunque eso sería un parche con problemas de escalabilidad).

Una de las peculiaridades es que las direcciones del bitcoin son perpetuas.

Pero ya hay direcciones que son inseguras y que no deben utilizarse. Por ejemplo, cualquier dirección generada por brainwallet.org con un nombre o una palabra que esté en un diccionario común es hoy en día insegura. Si un día pasan a ser inseguras todas las direcciones reutilizadas o todas las direcciones generadas por criptografía de curvas elipticas, simplemente se ampliará el espectro de direcciones que no se deben utilizar y habrá que adoptar nuevos modelos de generación de direcciones. Con un rango de 2160 valores, siempre habrá direcciones aleatorias de sobra.

En ese caso habría que crear otra moneda que usase un algoritmo no sensible a dicho ataque.

Tal vez bastaría con crear nuevos tipos de script para validar las transacciones con otros modelos de criptografía (en su defecto, en curvas elípticas con tamaños de clave mucho mayores).

Si una dirección puede crearse con barias claves el echo de que puedas usar más claves para dicha dirección es más inseguro que solo puedas usar una. Grin

No. Depende de la complejidad del ataque conocido. Fíjate que si en la generación de direcciones Bitcoin omitiéramos el tercer paso de las operaciones de hash y utilizáramos directamente la clave pública como dirección, tendríamos un par único clave privada/pública mientras que en el modelo existente puede derivarse la misma dirección de un quintillón (!) de pares de clave pública/privada diferentes. Sin embargo, por lo que he comentado en mi mensaje anterior, Bitcoin sería menos seguro si no hubiera esas operaciones de hash.

De todas maneras esto son cosas irrelevantes pues siempre se pueden atacar por otros lados, el ataque del 51% es mucho más económico y factible que atacar el cifrado de curvas elípticas incluso teniendo millones de transacciones firmadas, o atacar directamente todos los nodos de la red es mucho más fácil que atacar el cifrado teniendo o no la clave publica y con millones de transacciones hechas.

Eso depende del nivel de popularidad de Bitcoin. A partir de un cierto nivel crítico, del que tal vez estemos ya muy cerca, el ataque del 51% se hace inviable. Y eso es algo que se podrá mantener durante siglos, a diferencia de la seguridad de las primitivas criptográficas, que sí tiene fecha de caducidad. Revisar y fortalecer los algoritmos de hash o el de la firma digital es algo que en algún momento futuro habrá que afrontar con el consenso necesario, mientras que el ataque del 51% es harina de otro costal porque NO es un problema de Bitcoin, sino algo inherente a cuaquier sistema descentralizado. La idea de Bitcoin y de cualquier moneda descentralizada es que el 51% de los nodos (en Bitcoin medidos según el poder computacional) serán honrados. Si no se cumple ese requisito básico, ni Bitcoin ni ningún sistema descentralizado puede funcionar.
marcosfx
Full Member
***
Offline Offline

Activity: 303
Merit: 100


The Future Of Work


View Profile
November 18, 2013, 03:55:27 PM
 #52


De todas maneras esto son cosas irrelevantes pues siempre se pueden atacar por otros lados, el ataque del 51% es mucho más económico y factible que atacar el cifrado de curvas elípticas incluso teniendo millones de transacciones firmadas, o atacar directamente todos los nodos de la red es mucho más fácil que atacar el cifrado teniendo o no la clave publica y con millones de transacciones hechas.

Eso depende del nivel de popularidad de Bitcoin. A partir de un cierto nivel crítico, del que tal vez estemos ya muy cerca, el ataque del 51% se hace inviable. Y eso es algo que se podrá mantener durante siglos, a diferencia de la seguridad de las primitivas criptográficas, que sí tiene fecha de caducidad. Revisar y fortalecer los algoritmos de hash o el de la firma digital es algo que en algún momento futuro habrá que afrontar con el consenso necesario, mientras que el ataque del 51% es harina de otro costal porque NO es un problema de Bitcoin, sino algo inherente a cuaquier sistema descentralizado. La idea de Bitcoin y de cualquier moneda descentralizada es que el 51% de los nodos (en Bitcoin medidos según el poder computacional) serán honrados. Si no se cumple ese requisito básico, ni Bitcoin ni ningún sistema descentralizado puede funcionar.

Un ataque del 51% sirve para hacer dobles pagos, por ejemplo, pero no puedes "robar" mis bitcoins, creo que no es comparable

▬▬■ ■ ■▬▬ The Future of Work. Decentralized. ▬▬■ ■ ■▬▬
WhitepaperANN THREADTELEGRAMFACEBOOKTWITTERYOUTUBE
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1029



View Profile
November 18, 2013, 04:32:09 PM
 #53

Sólo una puntilla:

Por ejemplo, cualquier dirección generada por brainwallet.org con un nombre o una palabra que esté en un diccionario común es hoy en día insegura.

y cualquier título o frase de cualquier canción, de libros, tweets, publicaciones en facebook, en foros… (en inglés, sorry!).
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 18, 2013, 05:00:19 PM
 #54

Si en algún momento revientan el cifrado de curvas elípticas el bitcoin no valdrá nada.

No valdrán nada las direcciones reutilizadas. Quienes no reutilizamos direcciones seguiremos teniendo a salvo nuestros bitcoins. De acuerdo que algo así desencadenaría una crisis de confianza en el sistema y seguramente bajaría el valor, pero no tendría por qué ser un golpe mortal.

Además, las primitivas criptográficas no se revientan de la noche a la mañana. Primero habrá avances, bien a través de nuevos algoritmos clásicos o a través de ordenadores cuánticos capaces de aplicar el algoritmo de Shor, que hagan que lo que requería millones de años pase a requerir siglos o décadas. En ese momento, se considerará rota la criptografía de curvas elípticas, pero habrá tiempo para plantear alternativas y seguramente surgirán nuevos algoritmos más seguros (si no, habría que incrementar la longitud de clave, aunque eso sería un parche con problemas de escalabilidad).

Una de las peculiaridades es que las direcciones del bitcoin son perpetuas.

Pero ya hay direcciones que son inseguras y que no deben utilizarse. Por ejemplo, cualquier dirección generada por brainwallet.org con un nombre o una palabra que esté en un diccionario común es hoy en día insegura. Si un día pasan a ser inseguras todas las direcciones reutilizadas o todas las direcciones generadas por criptografía de curvas elipticas, simplemente se ampliará el espectro de direcciones que no se deben utilizar y habrá que adoptar nuevos modelos de generación de direcciones. Con un rango de 2160 valores, siempre habrá direcciones aleatorias de sobra.

En ese caso habría que crear otra moneda que usase un algoritmo no sensible a dicho ataque.

Tal vez bastaría con crear nuevos tipos de script para validar las transacciones con otros modelos de criptografía (en su defecto, en curvas elípticas con tamaños de clave mucho mayores).

Si una dirección puede crearse con barias claves el echo de que puedas usar más claves para dicha dirección es más inseguro que solo puedas usar una. Grin

No. Depende de la complejidad del ataque conocido. Fíjate que si en la generación de direcciones Bitcoin omitiéramos el tercer paso de las operaciones de hash y utilizáramos directamente la clave pública como dirección, tendríamos un par único clave privada/pública mientras que en el modelo existente puede derivarse la misma dirección de un quintillón (!) de pares de clave pública/privada diferentes. Sin embargo, por lo que he comentado en mi mensaje anterior, Bitcoin sería menos seguro si no hubiera esas operaciones de hash.

De todas maneras esto son cosas irrelevantes pues siempre se pueden atacar por otros lados, el ataque del 51% es mucho más económico y factible que atacar el cifrado de curvas elípticas incluso teniendo millones de transacciones firmadas, o atacar directamente todos los nodos de la red es mucho más fácil que atacar el cifrado teniendo o no la clave publica y con millones de transacciones hechas.

Eso depende del nivel de popularidad de Bitcoin. A partir de un cierto nivel crítico, del que tal vez estemos ya muy cerca, el ataque del 51% se hace inviable. Y eso es algo que se podrá mantener durante siglos, a diferencia de la seguridad de las primitivas criptográficas, que sí tiene fecha de caducidad. Revisar y fortalecer los algoritmos de hash o el de la firma digital es algo que en algún momento futuro habrá que afrontar con el consenso necesario, mientras que el ataque del 51% es harina de otro costal porque NO es un problema de Bitcoin, sino algo inherente a cuaquier sistema descentralizado. La idea de Bitcoin y de cualquier moneda descentralizada es que el 51% de los nodos (en Bitcoin medidos según el poder computacional) serán honrados. Si no se cumple ese requisito básico, ni Bitcoin ni ningún sistema descentralizado puede funcionar.

Si fuese necesario cambiar el algoritmo de cifrado o de hash, ese echo implicaría la creación de otra moneda, Seria el bitcoin v2 o lo que sea, pero seria otra, si lo único que se hiciese fuese aumentar la clave podría hacerse sin la necesidad de cambiar el protocolo, en este caso si que habría lista de direcciones inseguras.
Si hay que cambiar el algoritmo de firmas o el hash harían que la cadena de bloques fuese incompatible con el nuevo algoritmo por lo tanto seria necesario crear otra moneda.

Se podía crear una moneda con creación de moneda según los btcs creados de esta manera la nueva moneda empezaría donde termino la anterior.


La cantidad de nodo no es algo que crezca por su popularidad. Dentro de pocos solo algunos tendrán la cadena de bloques completo; pues resulta que el tamaño de la cadena de bloques pronto se hará insoportable para la gran mayoría. Mira el tamaño que tiene hoy en día imagínate el tamaño dentro de unas décadas.

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 18, 2013, 05:06:56 PM
 #55

Sólo una puntilla:

Por ejemplo, cualquier dirección generada por brainwallet.org con un nombre o una palabra que esté en un diccionario común es hoy en día insegura.

y cualquier título o frase de cualquier canción, de libros, tweets, publicaciones en facebook, en foros… (en inglés, sorry!).
Supongo que cuando dice diccionario se refería a diccionarios de ataque, que no es lo mismo que el de la RAE.
Estos diccionarios traen un conjunto de claves posibles, el 99 por ciento de las claves que usa la gente se encuentran en esos diccionarios el los cuales se encuentran palabras que no existen como "pk2" o "m0n0" entre otras incluyendo frases mal escritas y populares.

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 18, 2013, 06:44:03 PM
 #56

Estamos ya muy off-topic y tal vez sea mejor abrir hilos nuevos (o reflotar antiguos) si queremos continuar discutiendo algunos de estos temas concretos que van saliendo, como el alcance de un ataque del 51%, los peligros de las brainwallets, las consecuencias del tamaño de la cadena de bloques, etc. Comentaré solamente una cosa que ha dicho haztecoin que no veo clara:

(...)
Si fuese necesario cambiar el algoritmo de cifrado o de hash, ese echo implicaría la creación de otra moneda, Seria el bitcoin v2 o lo que sea, pero seria otra, si lo único que se hiciese fuese aumentar la clave podría hacerse sin la necesidad de cambiar el protocolo, en este caso si que habría lista de direcciones inseguras.
Si hay que cambiar el algoritmo de firmas o el hash harían que la cadena de bloques fuese incompatible con el nuevo algoritmo por lo tanto seria necesario crear otra moneda.
(...)

Incluso en los escenarios más catastrofistas, no creo que fuera necesario pasarse a otra cadena de bloques diferente. En Bitcoin las salidas de las transacciones llevan una especie de libro de instrucciones que dice las normas que se deben cumplir para liberar esa salida y poder utilizarla como entrada de otra transacción. Esas instrucciones se enuncian mediante un lenguaje de script en el que se usan operaciones codificadas como, por ejemplo, OP_HASH160 u OP_CHECKSIG y ese lenguaje de script se podría extender en el futuro. Esta es una de las partes de Bitcoin que menos conozco, pero entiendo que la adopción de primitivas criptográficas más sofisticadas podría abordarse añadiendo nuevas operaciones para hacer una nueva forma de script estándar más complejo. Además, la eventual necesidad de una criptografía más robusta es uno de los pocos casos en que sería fácil lograr el consenso necesario para hacer un fork. Ahora mismo no hay ninguna criptomoneda que no utilice la misma criptografía de clave elíptica que Bitcoin, por lo que probablemente sería más sencillo hacer algo así desde dentro de Bitcoin y no abandonándola por otra moneda creada ad hoc como reemplazo.

Aparte de eso, creo que cambiar el tamaño de clave utilizado con ECDSA sería igual de problemático que pasarse a un algoritmo totalmente diferente. Bitcoin utiliza una forma concreta de ECDSA con claves de 256 bits y con una curva base concreta (secp256k1). Esto no está parametrizado de ninguna manera, por lo que cambiar a otra curva base con otro tamaño de clave debería tener las mismas implicaciones que un cambio total en la naturaleza del algoritmo.
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 18, 2013, 07:44:57 PM
 #57

Estamos ya muy off-topic y tal vez sea mejor abrir hilos nuevos (o reflotar antiguos) si queremos continuar discutiendo algunos de estos temas concretos que van saliendo, como el alcance de un ataque del 51%, los peligros de las brainwallets, las consecuencias del tamaño de la cadena de bloques, etc. Comentaré solamente una cosa que ha dicho haztecoin que no veo clara:

(...)
Si fuese necesario cambiar el algoritmo de cifrado o de hash, ese echo implicaría la creación de otra moneda, Seria el bitcoin v2 o lo que sea, pero seria otra, si lo único que se hiciese fuese aumentar la clave podría hacerse sin la necesidad de cambiar el protocolo, en este caso si que habría lista de direcciones inseguras.
Si hay que cambiar el algoritmo de firmas o el hash harían que la cadena de bloques fuese incompatible con el nuevo algoritmo por lo tanto seria necesario crear otra moneda.
(...)

Incluso en los escenarios más catastrofistas, no creo que fuera necesario pasarse a otra cadena de bloques diferente. En Bitcoin las salidas de las transacciones llevan una especie de libro de instrucciones que dice las normas que se deben cumplir para liberar esa salida y poder utilizarla como entrada de otra transacción. Esas instrucciones se enuncian mediante un lenguaje de script en el que se usan operaciones codificadas como, por ejemplo, OP_HASH160 u OP_CHECKSIG y ese lenguaje de script se podría extender en el futuro. Esta es una de las partes de Bitcoin que menos conozco, pero entiendo que la adopción de primitivas criptográficas más sofisticadas podría abordarse añadiendo nuevas operaciones para hacer una nueva forma de script estándar más complejo. Además, la eventual necesidad de una criptografía más robusta es uno de los pocos casos en que sería fácil lograr el consenso necesario para hacer un fork. Ahora mismo no hay ninguna criptomoneda que no utilice la misma criptografía de clave elíptica que Bitcoin, por lo que probablemente sería más sencillo hacer algo así desde dentro de Bitcoin y no abandonándola por otra moneda creada ad hoc como reemplazo.

Aparte de eso, creo que cambiar el tamaño de clave utilizado con ECDSA sería igual de problemático que pasarse a un algoritmo totalmente diferente. Bitcoin utiliza una forma concreta de ECDSA con claves de 256 bits y con una curva base concreta (secp256k1). Esto no está parametrizado de ninguna manera, por lo que cambiar a otra curva base con otro tamaño de clave debería tener las mismas implicaciones que un cambio total en la naturaleza del algoritmo.
Quizás se entienda mejor con un ejemplo.
Pongamos que se descubre una vulnerabilidad en el SHA que permita tener el texto necesario a partir del SHA con lo que se eliminaría la necesidad de la fuerza bruta en la minería; En ese momento minar por fuerza bruta seria ridículo y usar el SHA también, entonces la gente empezaría a utilizar otras monedas como Litecoin que no usan el SHA con lo cual empezaría a perder valor el bitcoin y a aumentar el valor de las monedas no afectadas por dicho problema, pues la cadena de bloques quedaría seriamente comprometida, pues uno podría crear una nueva cadena desde el principio mucho más larga que la ya existente anulando toda la cadena

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
Nubarius
Sr. Member
****
Offline Offline

Activity: 310
Merit: 253


View Profile
November 18, 2013, 11:54:42 PM
 #58

Quizás se entienda mejor con un ejemplo.
Pongamos que se descubre una vulnerabilidad en el SHA que permita tener el texto necesario a partir del SHA con lo que se eliminaría la necesidad de la fuerza bruta en la minería; En ese momento minar por fuerza bruta seria ridículo y usar el SHA también, entonces la gente empezaría a utilizar otras monedas como Litecoin que no usan el SHA con lo cual empezaría a perder valor el bitcoin y a aumentar el valor de las monedas no afectadas por dicho problema, pues la cadena de bloques quedaría seriamente comprometida, pues uno podría crear una nueva cadena desde el principio mucho más larga que la ya existente anulando toda la cadena

Entendía que estábamos habando del menor nivel de seguridad que dan las direcciones que se han utilizado para un pago. En eso no hay ninguna diferencia entre Bitcoin y Litecoin. Las dos usan ECDSA, SHA-256 y RIPEMD-160. Y cuando una dirección se ha utilizado en un pago, se pierde la seguridad que añaden estas dos últimas funciones de hash y quedas solo protegido por ECDSA. Supongo que al menos estarás ya de acuerdo con esto. Si no, no entiendo cuál es tu argumento para negarlo.

Lo que estás comentando ahora es otra cuestión diferente, que es la seguridad del sistema de prueba-de-trabajo. Si se descubriera una vulnerabilidad en SHA-256, podría ser necesario cambiar el algoritmo por otro, por ejemplo SHA-3 (o el propio Scrypt de Litecoin si durara más que SHA-256, que lo dudo), y ahí haría falta el consenso para hacer un fork y que a partir de un determinado número de bloque se utilizara SHA-3 para la prueba-de-trabajo. En cualquier caso, las debilidades en los algoritmos de hash se suelen encontrar poco a poco. Es un problema mucho más difícil de tratar que el de encontrar algoritmos para resolver logaritmos discretos y no parece razonable pensar que se vaya a encontrar un algoritmo que con unas pocas operaciones te revele el valor de nonce necesario que junto a unos datos arbitrarios haga que sha-256 devuelva un valor menor de un umbral. Tendría que ser algo así de brutal para que SHA-256 ya no se pudiera utilizar en absoluto. La mayoría de vulnerabilidades imaginables que se puedan encontrar, como algoritmos para producir colisiones, no impedirían seguir utilizándolo durante muchos años hasta el número de bloque en que se pasara a utilizar SHA-3, o lo que sea, para la prueba-de-trabajo. Un hard fork de este tipo no sería para nada el fin de Bitcoin.

El único problema real que supondría el fin de Bitcoin sería que fracasaran todas las primitivas criptográficas coocidas y no se encontaran reemplazos; es decir, que un día no hubiera ninguna función hash segura ni ningún sistema de clave pública segura. Pero en ese caso, morirían todas las aplicaciones de la criptografía.
principiante
Hero Member
*****
Offline Offline

Activity: 868
Merit: 1009


Dave


View Profile
November 19, 2013, 05:02:40 PM
 #59

Una pregunta, disculpen si no va en este hilo pero está relacionado creo.

Hagamos una suposición que recibo un pago grande, por ejemplo 1.000 BTC (es suposición por ahora no tengo posibilidades de cobrar ese dinero, ja ja)

La pregunta es ¿cuál es la mejor manera de guardarlos? por ej. hacerme 100 claves privadas de 10 btc en papel?

Espero que no sea una pregunta muy tonta.
Gracias!

BTC: 38TUX3NuscG2V22F9hqggKyRzJZvAoawjC
haztecoin
Sr. Member
****
Offline Offline

Activity: 294
Merit: 250



View Profile
November 19, 2013, 05:36:09 PM
 #60

Una pregunta, disculpen si no va en este hilo pero está relacionado creo.

Hagamos una suposición que recibo un pago grande, por ejemplo 1.000 BTC (es suposición por ahora no tengo posibilidades de cobrar ese dinero, ja ja)

La pregunta es ¿cuál es la mejor manera de guardarlos? por ej. hacerme 100 claves privadas de 10 btc en papel?

Espero que no sea una pregunta muy tonta.
Gracias!
La cantidad es considerable podrías hacer 100 claves de 10 btc y otras 5 de 0 btc. O podrías hacer 10000 de 1 btc.
Cuanto más diversifiques mejor. Lo más importante es que solo las uses una vez.

Una tablita para que quede todo bien ordenado.
dirección A|saldo|dirección B|saldo
1.............|1BTC|1......|0
1.............|1BTC|1......|0
1.............|1BTC|1......|0
1.............|1BTC|1......|0
1.....|1BTC

Hazte libre. hazte reivindicativo. hazte pensador. hazte como quieras. Y Piensa por ti mismo.
LTC Lgg1KqvxQX8sQJJAR9QHQsgmBA5WodSHR4 | SBC sYuubmDdpkpimKqrqSeYiaTU64LLXY31ue | BTC 1DmZLuCvNaDKcAZP77N8kddphULE4rBN2C
Pages: « 1 2 [3] 4 5 »  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!