Author

Topic: Introducir las claves públicas (Read 702 times)

legendary
Activity: 1623
Merit: 1608
May 01, 2014, 10:53:41 AM
#11
No cualquier cadena de caracteres sería una clave pública valida y sí que hay checksum.

La probabilidad de que equivocándose en un solo carácter se obtenga otra dirección valida es de 1/2 ^ 32, osea hay que equivocarse en uno de los caracteres que no forman parte del checksum.

Aquí un ejemplo de dos direcciones validas con solo 1 carácter diferente:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t   https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t
1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t  https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t


Pero esta:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w daría error:

https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w


Así que es bastante improbable que equivocándose en un carácter pierdas dinero, simplemente el cliente te avisaría.  Bitcoin es una obra maestra Smiley.

Interesante, gracias!

Para la clave pública si hay checksum, pero no para la clave privada, no?

¿Qué caracteres no forman parte del checksum de las direcciones?

Resumiendo, primero se crea la clave privada. De la clave privada se obtiene la clave pública, y de la clave pública se obtiene la dirección Bitcoin.

La dirección Bitcoin tiene un checksum de 4 bytes. Las claves públicas y privadas puras no tienen checksum, pero en realidad, los formatos típicos que se utilizan en import/export sí los tienen. Por ejemplo, el formato de clave privada generado por dumpprivkey de Bitcoin Core tiene un checksum también de 4 bytes. El formato "mini private key" de Casascius tiene un checksum de un byte.
hero member
Activity: 652
Merit: 510
May 01, 2014, 10:23:50 AM
#10
No cualquier cadena de caracteres sería una clave pública valida y sí que hay checksum.

La probabilidad de que equivocándose en un solo carácter se obtenga otra dirección valida es de 1/2 ^ 32, osea hay que equivocarse en uno de los caracteres que no forman parte del checksum.

Aquí un ejemplo de dos direcciones validas con solo 1 carácter diferente:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t   https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t
1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t  https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t


Pero esta:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w daría error:

https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w


Así que es bastante improbable que equivocándose en un carácter pierdas dinero, simplemente el cliente te avisaría.  Bitcoin es una obra maestra Smiley.

Interesante, gracias!

Para la clave pública si hay checksum, pero no para la clave privada, no?

¿Qué caracteres no forman parte del checksum de las direcciones?
hero member
Activity: 952
Merit: 1005
frantorres_995 at socialmedia
May 01, 2014, 10:07:40 AM
#9
No cualquier cadena de caracteres sería una clave pública valida y sí que hay checksum.

La probabilidad de que equivocándose en un solo carácter se obtenga otra dirección valida es de 1/2 ^ 32, osea hay que equivocarse en uno de los caracteres que no forman parte del checksum.

Aquí un ejemplo de dos direcciones validas con solo 1 carácter diferente:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t   https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7t
1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t  https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWgatp7t


Pero esta:

1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w daría error:

https://blockchain.info/address/1xxxxxxxxxxxxxxxxxxxy1wqmDWjatp7w


Así que es bastante improbable que equivocándose en un carácter pierdas dinero, simplemente el cliente te avisaría.  Bitcoin es una obra maestra Smiley.
XG
sr. member
Activity: 286
Merit: 250
May 01, 2014, 09:08:23 AM
#8
Gracias por las respuestas.

Siempre hago copy-paste pero tranquiliza saber que el cliente dispone de más sistemas de seguridad.

Saludos.
legendary
Activity: 1623
Merit: 1608
May 01, 2014, 09:06:11 AM
#7
El cliente te avisaría. Es muy improbable que equivocándote en un carácter coincida el checksum de otra dirección valida. Esta todo bastante pensado.

Eso es. Con tan solo equivocarte en un número o letra, daría la dirección como inválida. Otra cosa es que copiando y pegando varias direcciones te hagas un lío y mandes el dinero a otra cuenta. En ese caso sería tal y como Asurmen describe.

Y otra cosa sería que obtuvieras la dirección desde una clave pública o privada errónea, aunque solo fuera por una carácter de esa clave pública o de esa clave privada. En ese caso nadie te avisaría, por lo que tienes que tener cuidado.

¿Hay checksum para las claves privadas? Si no lo hay, cualquier cadena de caracteres con el formato correcto sería una clave privada y dos claves podrían diferenciarse en un solo número. Equivocarse en un carácter sí que haría mandar el dinero a otra dirección. Aunque supongo que es complicado que el ordenador se equivoque al tomar la clave privada/pública para conseguir la dirección.

No hay checksum para las claves privadas ni para las claves públicas. Por eso digo que hay que tener cuidado en esos casos.

También comentaba que puedes estar tranquilo si tecleas una dirección Bitcoin, pero lo correcto sería decir "casi" tranquilo. Es muy difícil que te toque la china de uno entre cuatro mil millones, pero siempre hay a alguno que le toca el Euromillón   Smiley
hero member
Activity: 652
Merit: 510
May 01, 2014, 09:01:51 AM
#6
El cliente te avisaría. Es muy improbable que equivocándote en un carácter coincida el checksum de otra dirección valida. Esta todo bastante pensado.

Eso es. Con tan solo equivocarte en un número o letra, daría la dirección como inválida. Otra cosa es que copiando y pegando varias direcciones te hagas un lío y mandes el dinero a otra cuenta. En ese caso sería tal y como Asurmen describe.

Y otra cosa sería que obtuvieras la dirección desde una clave pública o privada errónea, aunque solo fuera por una carácter de esa clave pública o de esa clave privada. En ese caso nadie te avisaría, por lo que tienes que tener cuidado.

¿Hay checksum para las claves privadas? Si no lo hay, cualquier cadena de caracteres con el formato correcto sería una clave privada y dos claves podrían diferenciarse en un solo número. Equivocarse en un carácter sí que haría mandar el dinero a otra dirección. Aunque supongo que es complicado que el ordenador se equivoque al tomar la clave privada/pública para conseguir la dirección.
legendary
Activity: 1623
Merit: 1608
May 01, 2014, 08:45:30 AM
#5
El cliente te avisaría. Es muy improbable que equivocándote en un carácter coincida el checksum de otra dirección valida. Esta todo bastante pensado.

Eso es. Con tan solo equivocarte en un número o letra, daría la dirección como inválida. Otra cosa es que copiando y pegando varias direcciones te hagas un lío y mandes el dinero a otra cuenta. En ese caso sería tal y como Asurmen describe.

Y otra cosa sería que obtuvieras la dirección desde una clave pública o privada errónea, aunque solo fuera por una carácter de esa clave pública o de esa clave privada. En ese caso nadie te avisaría, por lo que tienes que tener cuidado.

Pero puedes estar tranquilo en teclear una dirección Bitcoin desde un papel, porque si te equivocas, el cliente te va a avisar. El checksum de las direcciones Bitcoin es de 4 bytes, por lo que las posibilidades de equivocación son muy pequeñas, de una entre cuatro mil millones. Exactamente, una entre 232.
hero member
Activity: 652
Merit: 510
May 01, 2014, 08:37:11 AM
#4
El cliente te avisaría. Es muy improbable que equivocándote en un carácter coincida el checksum de otra dirección valida. Esta todo bastante pensado.

Eso es. Con tan solo equivocarte en un número o letra, daría la dirección como inválida. Otra cosa es que copiando y pegando varias direcciones te hagas un lío y mandes el dinero a otra cuenta. En ese caso sería tal y como Asurmen describe.
hero member
Activity: 952
Merit: 1005
frantorres_995 at socialmedia
May 01, 2014, 07:47:37 AM
#3
El cliente te avisaría. Es muy improbable que equivocándote en un carácter coincida el checksum de otra dirección valida. Esta todo bastante pensado.
hero member
Activity: 686
Merit: 500
May 01, 2014, 07:39:23 AM
#2
Iría a parar a otra cuenta según el carácter en el que te equivocaras, por eso todos los wallets permiten el copy paste, y en los dispositivos móviles se usa el QR para facilitarlo de dispositivo a dispositivo, al no haber un ente central como en los bancos, los pagos son irreversibles y nadie puede señalar a nadie como poseedor de una cuenta concreta, si ésta no es reconocida públicamente por alguien. En mi caso en mi firma tienes 3 publicas mias, si te equivocaras con ellas podrías reclamarme a mí y ya dependería de mi buena fe y que compruebe con datos y mensaje desde tu cuenta que verifique que eso sucedió como dices, para devolverte el dinero que enviaste, o si soy un cabrón y me los quedo :9
XG
sr. member
Activity: 286
Merit: 250
May 01, 2014, 07:17:19 AM
#1
Hola,

Todos sabemos que las claves públicas y privadas constan de un largo número de caracteres alfanuméricos. Normalmente cuando enviamos bitcoins a una dirección se recurre al "copiar y pegar" para no equivocarnos.

Mi duda es qué ocurriría en el caso de que alguna vez recurriéramos a teclear en el ordenador o en el móvil un carácter incorrecto de una dirección para enviar una cantidad de bitcoins.

¿El cliente nos avisaría de alguna manera? ¿se perdería este bitcoin? ¿iría a parar a otra cartera?

Saludos
Jump to: