wie funktioniert ein Knoten sucht eine Transaktion unter verschiedenen Blöcke in der blockchain?

Lassen Sie mich auszudrücken, was ich habe, um zu wissen, über die blockchain und wo bin ich stecken geblieben.

Transaktionen werden gespeichert in form von merkel Bäume innerhalb eines Blocks. (Ich weiß, wie eine merkel-Baum ist aus). Eine merkel-Wurzel wird berechnet, gespeichert und in die block-header. Ein SPV kann Fragen, eine volle Knoten über das Gleichgewicht der eine Adresse (die ist eine Verschlüsselung der öffentliche Schlüssel).

Jetzt ein voller Knoten geben soll merkel root-hash aller Blöcke, die enthalten die Transaktionen( enthält die UTXOs, das ausgegeben werden kann, indem der private Schlüssel Halter durch das entsperren Ihre Ausgabe-Skript unter Verwendung der digitalen Signatur).

Ich möchte wissen, wie kann den vollen Knoten bekommen, um zu wissen, welche Blöcke genau enthält diese UTXOs? Macht es den traverse merkel Baum, der von jedem block bis zum genesis block? oder gibt es eine Möglichkeit zu wissen, ob der block enthält die Transaktion nicht oder nur durch die Nutzung seiner merkel root.

+210
Rod Johnsen 12.01.2019, 10:02:18
20 Antworten

Ich studiere Blockchain-Technologie und fand heraus, dass die Bergleute sind diejenigen, die den Nachweis der Arbeit und überprüfen Sie die Transaktionen in der Blockchain. Wenn ich eine app erstellen, die der Veröffentlichung der verifizierten Dokumente würde die überprüfung der Behörden müssen gemietet haben Bergleute in der Lage sein, um eine Verifizierung oder Verifikation und Bergbau 2 separate Prozesse?

+955
Schastye 03 февр. '09 в 4:24

Ich bin mit den standard-client auf einer Amazon EC2 micro-Instanz. Wenn ich die Synchronisierung von Bitcoin mit dem Netzwerk, es verbraucht etwa 50% der verfügbaren CPU. Nachdem es vollständig synchronisiert, ich lasse Sie in Ruhe, und es Kurbeln bis zu 100% von selbst.

Was die verursachen können die standard-client-Verhalten in dieser Art und Weise? Ist es aufgrund der möglicherweise hohen Transaktionsvolumen, das teilen von Informationen mit Kollegen, oder vielleicht etwas anderes?

+911
Evils 26.02.2014, 13:49:29

Nach 35 Stunden und noch Unbestätigten bitcoin-Einzahlung auf mein blockchain.info Brieftasche nachdem ich sweeped die bitcoins habe ich in meiner paperwallet, die ich erstellt bitaddress.org.

Hallo an alle, dies ist mein erstes mal, dass Sie ein problem mit der unbestätigten bitcoin Transaktionen! Ich hoffe, jemand kann mir helfen, dieses Problem beheben, indem Sie Ihre wissen und Erfahrungen und zeigen Sie mich in die richtige Richtung, vielen Dank im Voraus!

Etwa 35 Stunden, habe ich die blockchain.info Brieftasche zu fegen, eine bitcoin paper wallet private Adresse, wo einige meiner bitcoins gespeichert wurden!
(Ich habe die Papier-wallet-Adresse auf bitaddress.org., und ich habe die Speicherung von bitcoins wie diese, und kehren Sie es mit blockchain.info Geldbörse für den für das vergangene Jahr und eine Hälfte, ohne jemals irgendwelche Probleme in Bezug auf verzögerte Transaktionen.)

Wie auch immer, dieses mal nach dem wallet wurde erfolgreich sweeped, und die bitcoins überwiesen wurden, aus meiner Papier-Brieftasche zu meinem blockchain.info Brieftasche, es sitzt, der angibt, wie eine ausstehende Transaktion warten auf Bestätigung.

Wenn ich senden einige, dass die Mittel durch die Einstellung einer höheren Priorität Transaktionsgebühr, würde das helfen, bestätigen beide Transaktionen?

Meine Papier-Brieftasche öffentlichen Schlüssel, die ich sweeped die Mittel aus ist: 1EwT9GvF5vvRq4wW1YS1h4cLgJqdEiF4mg

Bitte helfen Sie mir, überprüfen Sie den status, und lassen Sie mich wissen, wie kann ich dies beheben, unbestätigte Transaktion so schnell wie möglich, ich danke Ihnen so sehr für Ihre freundliche Hilfe! Dave

+892
Zolnce 10.11.2013, 04:46:14

Vor dem einlösen Skript ausgeführt wird, wird der Stapel sieht wie folgt aus (von oben nach unten): STIMMT, Data3, Data2, Data1, Sig. Die WAHRE , die oben auf dem stack kommt aus OP_EQUAL.

Jetzt ist das einlösen Skript ausgeführt wird, und löschen Sie die drei obersten Elemente vom stack und fügen Sie dann PubKey, so dass Sie mit PubKey, Data1, Sig. Wenn OP_CHECKSIG läuft jetzt es nutzt Data1 als Signatur anstelle von Sig , die macht es nicht. Am Ende der stack ist FALSCH, Sig. Das oberste element des stack ist FALSCH , die bewirkt, dass die Transaktion scheitern.

+882
tomizza 30.01.2016, 13:15:28

Die bitcoins werden verkauft, aber Sie haben nicht gesagt, wie genau das geschehen wird. Da es keine bitcoin-exchange, das ist richtig, offiziell lizenziert in den USA, Sie wird wahrscheinlich Auktion Sie direkt ab, wie die beschlagnahmten Eigentums.

Die bitcoins, wenn Sie interessiert sind, sitzen in zwei sehr großen Portemonnaies: eins mit ~144K bitcoins (~US$117.6 M jetzt) und die andere mit ~30K bitcoins (~US$24M), die alle beschlagnahmt von Silk Road.

Die Basis der news-Quellen Fox News, Forbesund Wired. Was folgt, ist meine eigene Meinung.

Dieser Ansatz macht Sinn, da die bitcoins sind nicht grundsätzlich illegal (also nur nützlich, sting-Operationen oder zerstört werden, wie beschlagnahmte Drogen), und nicht UNS Bargeld (und damit sinnvoll ist, um direkt Einzahlung in die Staatskasse). Wie alle anderen wertvollen Eigenschaft, der beste Weg für die Regierung zu liquidieren, Sie ist bei der Auktion.

Bei diesem Verkauf passiert, der Preis des bitcoin wird wahrscheinlich untergehen, aber Sie wird wahrscheinlich verloren in den Lärm der Handel. (Bearbeitet. Zuerst habe ich gesagt, dass es sein würde herunter Gefahren ziemlich drastisch.)

Update (2014-06-13): Der kleinere Batzen bitcoins, fast 30K bitcoins (jetzt ~US$18M) beschlagnahmten Silk Road (einschließlich der vielen kleinen Transaktionen, die Menschen gegeben haben, die es seitdem) haben nun eine Auktions-Seite eingerichtet, auf der US-Marshals Service-website: Sie werden verkauft in Blöcken von 3.000 bitcoins (weniger für den letzten block). Die aktuelle Ausschreibung finden am 27. Juni, das fiat-Geld wird "verdrahtet" werden ab 1. Juli, und ich würde erwarten, dass die Münzen, die Sie übertragen über Bitcoin-Transaktionen kurz nach. Siehe Forbes für eine news-Quelle über dieses Gespräch.

+881
digory doo 23.10.2010, 01:28:09

Die Spezifikation der short_channel_id beschreibt das format wie folgt:

Die short_channel_id ist die eindeutige Beschreibung der Finanzierung der Transaktion. Es ist wie folgt aufgebaut:

  1. die wichtigsten 3 Byte: Angabe der block Höhe
  2. die nächsten 3 Byte: Angabe der Transaktion index innerhalb des Blocks
  3. die niederwertigsten 2 Byte: Angabe des Ausgangs-index, die zahlt, um den Kanal.

Daher konvertieren zwischen den beiden Formaten können Sie die folgenden python-Schnipsel:

def lnd_to_cl_scid(s):
 block = s >> 40
 tx = N >> 16 & 0xFFFFFF
 output = s & 0xFFFF
 return (block, tx, output)

def cl_to_lnd_scid(s):
 s = [int(i) for i in s ist.split(':')]
 return (s[0] << 40) | (en[1] << 16) | s[2]

Der Grund, warum wir (c-lightning) verwenden Sie die gepunkteten format, denn es ermöglicht uns, um die Finanzierung TX, ohne zu tun, eine Umstellung (und es ist in der Regel kürzer als die u64 Darstellung)

+845
jkhowe 12.12.2018, 21:47:44

Bitcoin-Schöpfung folgt einem vorab festgelegten Zeitplan angegeben in der Gemeinschaft Vertrag, das Bitcoin-Protokoll. Jedem block können den jeweiligen erfolgreichen miner zuweisen einer festen Anzahl von neuen bitcoins auf eine Adresse seiner Wahl. Der Zeitplan ermöglicht die Erstellung von 50BTC für die erste als 210.000 Blöcke, um Sie dann anschließend die Hälfte des vorherigen Belohnung für jeden nächsten als 210.000 Blöcke. (Derzeit sind wir im zweiten block-Bereich mit 25BTC Belohnung.) Dieser Lohn nicht angepasst aufgrund der zusätzlichen Einnahmen aus Transaktionsgebühren, eher (zu diesem Zeitpunkt) Sie stellen einen zusätzlichen bonus.

Die Idee ist, dass langsam der Anreiz von der Belohnung verringern und, dass diese absorbiert werden durch die Erhöhung der Wert der Transaktion Gebühren. Derzeit gibt es einige Diskussion, ob dies tatsächlich funktioniert; einige befürchten, dass die Transaktionskosten im Allgemeinen trend zu null, andere schlagen vor, dass durch die Zeit, wird es ein großes Problem, es werden genügend Aktionäre in bitcoin, in deren Interesse es ist, entweder mining-power, um um Ihren Lebensunterhalt zu erhalten oder Transaktionsgebühren, um Anreize anderen zu tun.

+716
emilyk 02.06.2017, 00:51:09

Im Grunde haben Sie nicht genug Personal, um die mit der Sicherheitsüberprüfung zu behandeln, manuelle cross-Kette Erholungen. Also nur erhebliche Menge berücksichtigt werden.

Es ist Kraken die Politik nicht zu beteiligen an den Bemühungen, der Erholung, wo BCH an ein XBT-Adresse oder XBT an einen BCH-Adresse. Unsere Letzte drei blog-Beiträge haben Unterstrichen diesen Punkt. Auch, wie Sie sagten, Wiederherstellung Ihres XBT-Mittel erfordern manuelle Umgang mit den privaten Schlüssel zu Ihrem BCH Einzahlung Adresse. Kraken hat umfangreiche Sicherheitsrichtlinien und-Verfahren, um sicherzustellen, dass die Sicherheit unserer Kunden und unsere eigenen Mittel. Dies bedeutet, dass der Zugang zu allen private Schlüssel, die im Zusammenhang mit Fonds ist äußerst begrenzt.

Quelle: https://www.reddit.com/r/btc/comments/6vpuy5/14_of_my_btc_held_in_limbo_at_kraken/

+702
Ketchup and Tux 07.07.2014, 20:46:16

Was bedeutet in dieser syntax bedeuten?

Es ist C++ für "die scriptSig des ersten Eingangs in der ersten Transaktion in diesem block haben Sie den gleichen Inhalt wie ein Skript mit dem codierten nuhrzeit gefolgt durch die codierten nExtraNone".

Genau das, was Elemente stellt das Skript sig enthalten und in welcher Reihenfolge?

Es enthält den block nuhrzeit, gefolgt von der nExtraNonce.

Wie ist die zusätzliche nonce formatiert?

Ein Beispiel aus dieser Zeit wäre in der scriptSig von der coinbase-Transaktion block #185000:

04d508de4f02e82d

Wenn wir analysieren dieses Skript sig, es ist:

04 -- Anzahl der bytes, die in der Gruppe von Daten
 d508de4f -- 4 bytes. Die little-endian-timestamp.
02 -- Anzahl der bytes, die in der Gruppe von Daten
 e82d -- die little-endian-extranonce

Beachten Sie, wenn Sie rückwärts die bytes in d508de4f, erhalten Sie 4fde08d5, die, wenn Sie es konvertieren zu einem timestamp Sun Jun 17 2012 12:41:57 GMT-0400 (EDT). Wenn Sie byte-umgekehrter e82d (Umgekehrt ist 2de8), und decodieren Sie eine Zahl aus der hex, Sie bekommen 11,752 für eine extranonce Wert.

+573
pistolPanties 18.12.2016, 03:20:34

Was verleiht einem mining-pool power böswillig Dominieren das system, wenn Sie Bergbau über die Mehrheit der Münzen? Gewinne sind verbreitet Bergleute individuell. Ich verstehe wirklich nicht, wie diese ermöglicht ein Haufen von Individuen zu verschwören, um warp Markt. Ich denke, ich bin grundsätzlich Missverständnis des Problems. Kann mir jemand erklären, wie man mit einer 51% - Anteil ermöglicht einen pool zu verhindern, reverse-oder Doppelzimmer verbringen Transaktionen?

+567
vacawama 16.05.2010, 13:08:41

Ich habe eine regtest Netzwerk, bestehend aus 2-Knoten - node0 & node1.
Ich hätte gerne eine Gabel auf den gemeinsamen blockchain und scheinbar erreicht es, indem man so tut:

  1. Knoten starten
  2. node0 fügt node1 über addnode
  3. node0 erzeugt 1 block mit hash-4dac...
  4. node1 erzeugt 1 block mit hash 5d8b...
  5. node0 ungültig node0 block mit hash 5d8b... via ungültig <hash>
  6. node1 hält
  7. node0 erzeugt 1 block mit hash-64f2...
  8. Knoten 1 startet
  9. node1 erzeugt 1 block mit hash 5sfg...
  10. node0: getchaintips gibt ein array mit ungültig-block-hash-5d8b... mit status

Nun meine Fragen:
a) Wie kann ich erreichen, ein "gültig-Gabel"- status in der Ausgabe des getchaintips für die zuvor für ungültig erklärt Gabel? [GELÖST]

b) Ist es möglich, für einen Knoten "bewußt zu gehen, müßen"/via RPC geben, seine eigene Kette, und wechseln Sie zu der konkurrierenden Kette?

+516
sujarath 30.11.2010, 23:51:51

Ich multisig wallet auf mein online-service. Die meisten geeigneten Dienst für mich ist, Bitgo, aber es ist sehr teuer. Kommission von 0.25% auf den Rückzug. Kann ich die Copay wallet für solche Aufgaben? Ich würde nicht wollen, um mein eigenes Bitcore server. Ich kann nicht herausfinden, wie zum senden von API Anfragen zu den Bitcore server von Bitpay.

+514
alinachumar 03.08.2015, 04:29:20

Die chance auf die Generierung der Schlüssel von einem sehr reichen-Adresse ist effektiv null. Das heißt, in der gesamten Geschichte der Menschheit hat niemand kommen überall in der Nähe vollbringt dieses Kunststück.

Wir betrachten 1 Bitcoin eine Partitur. Da kann es niemals mehr als 21 Millionen bitcoins geben oder so, müssen Sie zu schlagen, auf eine höchstens 21 Millionen Konten. Lassen Sie uns sagen, Sie könnten versuchen, die 2 Billionen-Konten pro Sekunde. Ihre Chancen auf den passenden ein Konto in hundert Jahren sind ungefähr 11 Milliarden Milliarden.

Viel Glück.

+506
chief of merchants 08.07.2011, 16:34:33
MyByteArray& MyByteArray::putVarInt ( const unsigned Wert )
{
 return ( Wert < 0xFD ) ? putInt8 ( Wert ) :
 ( Wert <= 0xFFFF ) ? putInt8 ( 0xFD ).putInt16 ( Wert ) :
 putInt8 ( 0xFE ).putInt32 ( Wert );
}

little-endian-Codierung

MyByteArray& MyByteArray::putPush ( const QByteArray& Wert )
{
 if ( Wert.size ( ) < OP_PUSHDATA1 )
 zurück putInt8 ( Wert.size ( ) ).putArray ( Wert );
 if ( Wert.size ( ) <= 0xFF )
 zurück putInt8 ( OP_PUSHDATA1 ).putInt8 ( Wert.size ( ) ).putArray ( Wert );
 zurück putInt8 ( OP_PUSHDATA2 ).putInt16 ( Wert.size ( ) ).putArray ( Wert );
}
+441
Hopsing K 22.02.2012, 09:51:54

Bei Justcoin.com wir habe verwendet verschiedene Methoden, die im Laufe der Jahre:

  • Generieren Sie Adressen mit bitcoind, jetzt namens bitcoin core, wenn wir Sie brauchen. Um zu vermeiden, Schlüssel Verlust bei Lagerung scheitern, wir verwenden einen großen key-pool. Der Befehl ist einfach getnewaddress.
  • Hierarchische deterministische wallets sind viel besser und wir nutzen diese für eine zunehmende Anzahl von Dingen. Bei der Verwendung dieser für hot-wallets, importieren wir die neuen privaten Schlüssel in unsere heißen Brieftasche, bevor Ihr jemals verwendet. Auf diese Weise können wir noch ausgeben, deren Eingänge von bitcoind.
+411
Jim Watkins 24.12.2018, 07:41:54

Ich habe gekauft, ein paar bitcoins auf MtGox. Nun möchte ich Ihnen zu verbringen. Wie kann ich eigentlich verbringen Sie die Münzen, die ich gekauft, auf MtGox?

Ich habe sah sich um mtgox.com für Hinweise auf den privaten Schlüssel, Bitcoin-Adressen, hashes etc, aber nicht alles sehen. Ich bin Recht neu auf Bitcoin also da ist wohl etwas grundlegendes ich verstehe nicht ganz, noch nicht.

Prost!

+408
Inrab 06.05.2014, 06:24:47

Die Transaktion sagt, es hat eine Gebühr von 120.32 sat/B.

Schauen Sie sich die folgenden um eine Idee zu bekommen, was Gebühren, die Sie bezahlen sollten: https://bitcoinfees.21.co/

Als dies geschrieben wurde, es Kosten würde, etwa 300 satoshis/Byte wohl in 30 Minuten verarbeitbar; und die Gebühr, die Sie zur Verfügung gestellt wird geschätzt, um bis zu 1020 Minuten (17 Stunden) - mit einer 90% Sicherheit.

Was passieren kann:

  • Sie ergänzen die Transaktion mit einige weitere miner-Gebühr (nicht sicher, wie dies zu tun mit Blockchain die Brieftasche).
  • Die Transaktion schließlich macht es in einem block, mit der derzeitigen Gebühr
  • Die Transaktion "abläuft", wie wird "vergessen", wenn genug Bergleute klar, Ihre Speicher-pool, bevor es in ein block - höchst unwahrscheinlich.

Edit: Die Frage ist ein Duplikat Wieso ist meine Transaktion nicht immer bestätigt und was kann ich dagegen tun?

+269
Slipfaith 03.06.2010, 12:33:01

Vier Gründe, warum Sollten Sie nicht Kaufen Bitcoins, Forbes.com:

Die Skalierung. Das Bitcoin-Protokoll erfordert, dass jeder Knoten im Netzwerk laden Sie eine Kopie von jede Bitcoin-Transaktion, die je stattgefunden hat. Als Bitcoin gewachsen immer beliebter, die "voll" Bitcoin-client hat sich mehr und mehr Ressourcen-intensiv. Die Letzte Zeit begann ich meinen Bitcoin client, dauerte es mehrere Stunden, um den download aller Transaktionen, die stattgefunden hatte in den wenigen Wochen seit ich das Letzte mal lief es.

Um zu verhindern, dass Dinge immer völlig unhandlich, der Bitcoin Protokoll beschränkt die Größe der einzelnen "block", der die grundlegende Einheit des Bitcoin ist gemeinsame Transaktion zu registrieren, um ein megabyte. Da ein block ist erstellt alle 10 Minuten, im Durchschnitt, dies stellt eine "harte" Grenze auf dem Anzahl der Transaktionen im Netzwerk verarbeiten kann, zu jeder Stunde. Jetzt, das Netzwerk arbeitet gut unter dem limit. Aber es ist nicht so weit unterhalb der Grenze. Wenn die Bitcoin-Wirtschaft wächst weiterhin rasant, wir sind wahrscheinlich, es zu schlagen in den nächsten Jahren.

An der Grenze wäre nicht katastrophal; das Bitcoin-Protokoll ein elegantes system von Transaktionsgebühren und zur Abwicklung der dringendsten Transaktionen ersten. Aber es hat einige Grenzen auf Bitcoin ' s langfristige Zukunft. Es ist zum Beispiel schwer vorstellen, dass sich Bitcoin jemals immer ein Ersatz für herkömmliche Kreditkarten. Es gibt weit zu viele Kreditkarten-Transaktionen im Bitcoin-Netzwerk zu weiterzuhelfen.

Derzeit ist jeder Bitcoin-client kennt das gesamte Netzwerk der Geschichte. Diese Summen bis zu ein paar GB, die ein moderner computer kann leicht zu halten.

Die Anzahl der Transaktionen, aber wächst schnell. Ich grob schätzen, als in einer Angelegenheit von ein oder zwei Jahren, die gesamte Größe auf der Festplatte übersteigt die Fähigkeiten eines normalen desktop-computer.

Wie wird sich die Netzwerk-Funktion wenn die Transaktion log-Geschichte wächst über die Befugnisse eines normalen desktop?

+187
Griffin Schutte 29.10.2016, 17:38:14

Sie können Zahlungen ohne online zu sein.

Ihre Brieftasche dient hauptsächlich zum speichern Ihrer privaten Schlüssel, mit denen Sie verbringen Salden im Zusammenhang mit entsprechenden Adressen. Die eigentlichen bitcoin Guthaben gespeichert sind, in die blockchain ("the public ledger"), der ständig aktualisiert wird durch das bitcoin-Netzwerk auch wenn Sie offline sind. Wenn Sie öffnen Ihre Brieftasche, wird es aufzuholen, um den aktuellen status überprüfen Blöcke, die aufgetreten sind, während Sie offline waren. Die Bilanz gezeigt, in Ihrer Brieftasche, stellt nur eine Momentaufnahme der neuesten verfügbaren Informationen zu Ihrer Brieftasche (die möglicherweise hinterherhinken, wenn Sie nicht synchronisiert, oder mag richtig sein, wenn Sie derzeit in der Synchronisation mit dem Netz).

So, Bitcoin-Zahlungen kommen Prima mit dir als offline, die Sie gerade wahrscheinlich nicht bewusst, bis später.

+119
Avichal Srinivasa 17.11.2017, 00:43:10

Gehärtete verlängerte private Schlüssel brechen die extended public key Ableitung Weg, das ist der Grund, warum ungehärtet key generation ist immer noch wertvoll.

Ich kann eine xpub Taste M/44'/0'/0' , um eine webapp, die dann erstellen Sie frische Adressen, ohne Zugriff auf private Schlüssel.

Zum Beispiel, die folgenden Erhalt des Schlüssels (und der zugehörigen Adressen) können abgeleitet werden von M/44'/0'/0'

  1. M/44'/0'/0'/0/0
  2. M/44'/0'/0'/0/1
  3. M/44'/0'/0'/0/2

oder folgenden Schlüssel (und Adressen)

  1. M/44'/0'/0'/1/0
  2. M/44'/0'/0'/1/1
  3. M/44'/0'/0'/1/2

Das backend-die m/44'/0'/0' ableiten können alle privaten xpriv-Tasten, um verbringen Fonds geschickt, um Adressen oben, damit nie setzt privatekeys auf der userfacing webapp. Jedoch, ein xpub Taste m/44'/0' (gehärtet oder nicht) nicht ableiten, gehärtet Kind xpub Taste m/44'/0'/0'.

Das Leck von einer untergeordneten privaten Schlüssel nicht aussetzen übergeordneten Schlüssel. Dies würde auch erfordern, die xpub der übergeordneten Schlüssel-paar und Kind-index. Härtung verhindert das Expositionsszenario. Also für BIP44 die Abwägung erfolgt auf Konto-Ebene (m/44'/0'/0'/) wo das Konto Eltern sind verhärtet, aber die anschließende Empfang und die Tasten sind nicht.

Editiert: Korrektur von Abdussamad (Siehe Kommentare)

+69
axb 13.11.2012, 17:30:58

Fragen mit Tag anzeigen