Bitcoin Forum
December 14, 2024, 06:01:02 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: Obteniendo la dirección pública del remitente a partir del has de la transacción  (Read 1193 times)
rescueme (OP)
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
July 09, 2014, 09:40:42 PM
Last edit: July 09, 2014, 10:16:52 PM by rescueme
 #1

Hola,
Estoy desarrollando un juego y estoy creando unas clases que interactúan con blockchain pero necesito saber algunas cosas.
Resulta que activando la confirmación callback http (https://blockchain.info/es/api/blockchain_wallet_api) Obtengo los siguientes datos cuando alguien me ingresa una transacción (no lo he probado aún):

value The value of the payment received in satoshi (not including fees). Divide by 100000000 to get the value in BTC.
transaction_hash The transaction hash.
input_address The bitcoin address that received the transaction.
confirmations The number of confirmations of this transaction.

Necesito saber si el dato 'transaction_hash' es el mismo parámetro que yo le voy a pasar al RPC para ejecutar 'gettransaction', por ejemplo, si hago:

gettransaction 4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad

Obtengo:

{
    "amount" : 0,
    "fee" : 0,
    "time" : 1404842263,
    "details" : [
        {
            "fee" : 0,
            "amount" : 0.00015000,
            "blockindex" : "",
            "time" : 1404842263,
            "category" : "receive",
            "confirmations" : 0,
            "address" : "1a8LDh3qtCdMFAgRXzMrdvB8w1EG4h1Xi",
            "txid" : "4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad",
            "blockhash" : "",
            "account" : null,
            "label" : null
        },
        {
            "fee" : 0,
            "amount" : -0.00015000,
            "blockindex" : "",
            "time" : 1404842263,
            "category" : "send",
            "confirmations" : 0,
            "address" : "18pGV83SwsjbXu5n8ozfxAFS1nLbgiuBvn",
            "txid" : "4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad",
            "blockhash" : "",
            "account" : null,
            "label" : null
        }
    ],
    "confirmations" : 0,
    "txid" : "4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad"
}


Entonces, más concretamente, el dato 4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad, ¿es el transaction hash que me devuelve el http callback? Es decir "txid" ¿es lo mismo que transaction hash o no?

Otra pregunta, una vez tengo este bloque de información ¿puedo acceder al campo  "category" : "send" en el vector details, para saber que "address" : "18pGV83SwsjbXu5n8ozfxAFS1nLbgiuBvn", es la dirección del remitente de forma segura? ¿Puede haber varios remitentes?

Es decir si alguien me envía btc yo ¿puedo saber la dirección pública de quien me lo ha enviado a partir del campo  "category" : "send", o puede haber alguna forma en que esa dirección pertenezca a otro sujeto no involucrado en la transferencia que me han realizado?

Muchas gracias, si me ayudáis no os olvideis de dejarme unas direcciones públicas y cuando lo tenga terminado os daré partidas gratis. Hasta luego.
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1030



View Profile
July 09, 2014, 10:24:43 PM
 #2

¿Puede haber varios remitentes?

https://blockchain.info/tx/72316782bf48d0cd232b888a7b9ea03f88ba79fac28273cd2aa1804683235412
rescueme (OP)
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
July 09, 2014, 10:43:58 PM
 #3


Joer valla lio  Huh haber como salgo de esta. Te habrá hecho gracia la pregunta.
Shawshank
Legendary
*
Offline Offline

Activity: 1623
Merit: 1608



View Profile
July 10, 2014, 05:10:20 AM
 #4

Entonces, más concretamente, el dato 4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad, ¿es el transaction hash que me devuelve el http callback? Es decir "txid" ¿es lo mismo que transaction hash o no?

Correcto. El transaction hash es lo mismo que el txid, es decir, el identificador único de la transacción.


Quote from: rescueme
Otra pregunta, una vez tengo este bloque de información ¿puedo acceder al campo  "category" : "send" en el vector details, para saber que "address" : "18pGV83SwsjbXu5n8ozfxAFS1nLbgiuBvn", es la dirección del remitente de forma segura? ¿Puede haber varios remitentes?
Por supuesto. Puede haber multitud de direcciones remitentes y multitud de direcciones destino en una única transacción.


Quote from: rescueme
Es decir si alguien me envía btc yo ¿puedo saber la dirección pública de quien me lo ha enviado a partir del campo  "category" : "send", o puede haber alguna forma en que esa dirección pertenezca a otro sujeto no involucrado en la transferencia que me han realizado?

La dirección que obtienes en "category" : "send" puede pertenecer a un exchange, por ejemplo. Es decir, la persona enviante de los bitcoins puede que no sea el propietario de la clave privada que controla esa dirección Bitcoin.

Si tienes alguna otra duda, pregunta.


Lightning Address: shawshank@getalby.com
rescueme (OP)
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
July 10, 2014, 05:19:16 AM
 #5

Entonces, más concretamente, el dato 4d34d1ae8cd1a146c1f9f8735f93ed16f87d6d6651818987fea2058f7b2abaad, ¿es el transaction hash que me devuelve el http callback? Es decir "txid" ¿es lo mismo que transaction hash o no?

Correcto. El transaction hash es lo mismo que el txid, es decir, el identificador único de la transacción.


Quote from: rescueme
Otra pregunta, una vez tengo este bloque de información ¿puedo acceder al campo  "category" : "send" en el vector details, para saber que "address" : "18pGV83SwsjbXu5n8ozfxAFS1nLbgiuBvn", es la dirección del remitente de forma segura? ¿Puede haber varios remitentes?
Por supuesto. Puede haber multitud de direcciones remitentes y multitud de direcciones destino en una única transacción.


Quote from: rescueme
Es decir si alguien me envía btc yo ¿puedo saber la dirección pública de quien me lo ha enviado a partir del campo  "category" : "send", o puede haber alguna forma en que esa dirección pertenezca a otro sujeto no involucrado en la transferencia que me han realizado?

La dirección que obtienes en "category" : "send" puede pertenecer a un exchange, por ejemplo. Es decir, la persona enviante de los bitcoins puede que no sea el propietario de la clave privada que controla esa dirección Bitcoin.

Si tienes alguna otra duda, pregunta.



Bueno no importa que sea la dirección de un exchange eso es problema del usuario, ya le avisaré en las instrucciones. Pues, lo he dejado para luego he puesto una función que me devuelve una dirección de pega y he seguido con otras cosas.
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1030



View Profile
July 10, 2014, 07:01:15 AM
 #6


¿Por qué quieres saber la dirección del remitente?
LuisCar
Legendary
*
Offline Offline

Activity: 1820
Merit: 1017



View Profile
July 10, 2014, 11:03:49 AM
 #7

¡Exacto! Proporcionando una dirección única y distinta para cada pago recibido ya estás determinando unívocamente al pagador.

rescueme (OP)
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
July 10, 2014, 09:21:59 PM
 #8

¡Exacto! Proporcionando una dirección única y distinta para cada pago recibido ya estás determinando unívocamente al pagador.

Puedo hacerlo así pero ofusca bastante la jugabilidad, veréis el mecanismo es semejante a satoshi dice
rescueme (OP)
Newbie
*
Offline Offline

Activity: 53
Merit: 0


View Profile
July 11, 2014, 06:14:45 PM
 #9

No voy a poner dos veces que quien me ha respondido a lo largo del hilo me puede dejar su dirección pública para tener una entrada gratis a mi juego donde podréis ganar btc.

También si alguien me ayuda a obtener la dirección del remitente de forma segura mediante llamadas rpc a blockchain.info y con la información del callback http, podemos negociar un pago en btc o entradas a mi juego.
dserrano5
Legendary
*
Offline Offline

Activity: 1974
Merit: 1030



View Profile
July 11, 2014, 07:23:22 PM
 #10

También si alguien me ayuda a obtener la dirección del remitente

¿Y cuando haya varios, tal como ya has visto? ¿Y cuando no lo haya? (nadie lo va a hacer pero técnicamente no es imposible).

Para enviar coins, solicita una dirección al usuario.
Pages: [1]
  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!