Ich muss Transaktionen nach Zeit richtig segmentieren. Sind Zeitstempel in Transaktionen vertrauenswürdig? Kann man diese fälschen?
Ich bin mir nicht sicher, ob Transaktionszeitstempel Teil des Protokolls sind, aber ich interessiere mich besonders für die "Received Time", die in blockchain.info angezeigt wird. Zum Beispiel diese Transaktion ( api url )
{
time:1385506952,
inputs:[
{
prev_out:{
n:2,
value:50000000,
addr:"17BPmjqg7mbaWYdff2EjVxra1FBHG4VAN3",
tx_index:97772745,
type:0
}
}
],
vout_sz:2,
relayed_by:"127.0.0.1",
hash:"4054f8170f7fc7c12229a116baead874f22478810b0a7e842aa28403c9b59927",
vin_sz:1,
tx_index:99131036,
ver:1,
out:[
{
n:0,
value:40000000,
addr:"1LwmnEn97jcANB68C5BVFQLJJLAm5UTJqW",
tx_index:99131036,
type:0
},
{
n:1,
value:9990000,
addr:"17BPmjqg7mbaWYdff2EjVxra1FBHG4VAN3",
tx_index:99131036,
type:0
}
],
size:257
}
Transaktionen haben keine Zeitstempel, daher ist der von blockchain.info angezeigte Zeitstempel die Zeit, zu der ihr Knoten die Transaktion erhalten hat. Die angezeigte Zeit ändert sich auch zu der Zeit, zu der sie in einen Block aufgenommen wurde. Im Allgemeinen ist es nicht zuverlässig, dem Zeitstempel zu vertrauen, der für eine unbestätigte Transaktion auf blockchain.info angegeben wird, da er vollständig von ihrem Knoten abhängt.
Der tatsächliche Zeitpunkt einer Transaktion ist nicht so relevant, und auch nicht der genaue Zeitpunkt, zu dem ein Block geprägt wird. Am Ende geht es um Ordnung : Im Rennen um den nächsten Block wird der erste gültige Block an alle anderen Miner gesendet, und dieser Block ist Teil der längsten Kette.
Wenn ein Miner zwei gültige Blöcke nahe beieinander erhält, zuerst einen von Miner B und dann einen von Miner A und der Zeitstempel auf Block A zeigt, dass er tatsächlich zuerst abgebaut wurde, wird unser Miner immer noch Block B einbeziehen, weil er zuerst kam, und Miner erhalten einen Anreiz, so schnell wie möglich mit dem Mining des nächsten Blocks zu beginnen.
Murch
Benutzer6049
Benutzer6049
timereceived
und andere Zeitstempel, die von der API des ursprünglichen Bitcoin-Clients verwendet werden, werden in dieser Frage besprochen . Ich nehme an, es ist vernünftig anzunehmen, dass Blockchain.org den Begriff „Empfangszeit“ im Sinne destimereceived
ursprünglichen Bitcoin-Clients verwendet (in dem Sinne, den ich in meinem anderen Kommentar als Vermutung erwähnt habe).