Ich habe hier eine Diskussion gefunden . Wie erhalte ich die Anzahl der Bestätigungen für eine Transaktion in Geth oder einem anderen Tool? die die Lösung geben als:
web3.eth.blockNumber-web3.eth.getTransaction(<txhash>).blockNumber
Ich habe diese Formel ausprobiert und den Wert mit der von http://testnet.etherscan.io/api?module=account&action=txlist&address=0x4c zurückgegebenen Bestätigungszahl verglichen ... Beide scheinen zu stimmen.
Meine Frage ist, wie kann diese Nummer als Bestätigung angesehen werden? Gilt „je länger es bleibt, desto größer ist das Vertrauen, dass es echt ist“?
Blockchains verwenden ein Proof-of-x -System, um die Gültigkeit einer Transaktion durch einen zufälligen Miner zu bestätigen. Der Miner bestätigt, dass die Quelle der Transaktion gültig ist. Er tut dies, indem er sich den Block vor dem eigentlichen Block ansieht und prüft, ob die Transaktion gültig ist. Nachdem der Block abgebaut wurde, wird er von allen folgenden Minern bestätigt, und solange die Mehrheit nicht konspiriert, steigt die Wahrscheinlichkeit, dass der Block gültig ist, mit jedem folgenden abgebauten Block. Je älter eine Transaktion in Bezug auf die Blocknummer ist, desto valider ist sie.
getTransactionReceipt()
einfach anrufen, um sich zu vergewissern, dass die Transaktion noch da ist. Wenn ja, dann können wir sicher sein, dass es keinen Fork gab und da weitere Blöcke hinzugefügt wurden, ist es jetzt fast unmöglich, die Transaktion zu löschen, und wir können sie akzeptieren.
Richard Horrocks