Was ist die Bedeutung des version-und byte-Adresse, Prüfsumme, version 1 Bitcoin-Adresse

Zahlen public-key-hash verwendet wird, in version 1 bitcoin-Adresse. Bitcoin-Adresse berechnet wird, indem der sha-256 -ing der public key gefolgt von ripemd160 - ing das Ergebnis. Das Ergebnis kann dann kodiert werden, in der Basis 58 nach 3 weiteren Schritten, wie in gezeigt https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses Version byte-Adresse und Prüfsumme werden Hinzugefügt, um die ripemd, die yeilds gleiche Ergebnis ohne Sie-

Diese: 010966776006953D5567439E5E39F86A0D273BEE

Und dieses: 00010966776006953D5567439E5E39F86A0D273BEED61967F6

Yeilds gleiche Ergebnis, wenn kodiert, dann Warum wird das gemacht?

+226
Tracy johnson 13.06.2017, 19:50:09
26 Antworten
  • Ich sende 10BTC zu Batman.
  • Weil ich BTC senden, wird eine Transaktion erstellt wird, in das system.
  • Diese Transaktion ist senden alle Knoten aus dem Netzwerk (alle Benutzer)

Das ist korrekt, so weit

  • Nach der Transaktion kommt, um alle Benutzer, die Transaktion Hinzugefügt wird, in eine Warteschlange, wo die Bergleute nehmen Ihre Transaktionen.

Yep, obwohl es ist nicht wirklich eine Warteschlange, weil die Bergleute nicht unbedingt zu den ersten Transaktionen ersten. Seine sogenannten mempool, und die nur ein bisschen eine Sammlung von Ihnen, ohne erzwungene Reihenfolge.

  • Bergmann zu nehmen, Transaktions -, Prozess es (proof of work), und erzeugt einen block mit mehr Transaktionen.

Ich möchte nur, um es klarer, dass der Nachweis der Arbeit ist der name für den Hash, der den gesamten block, der Nachweis der Arbeit ist nicht die überprüfung der Transaktion. Die überprüfung der Transaktion, nicht viel Arbeit, nur der block macht.

  • Nachdem alle Transaktionen werden bestätigt durch Bergmann, der neue block ist senden in das Netzwerk für die Prüfung.

Nachdem alle Transaktionen werden überprüft, indem die miner und die miner gefunden hat, einen gültigen proof of work block, dass der neue block wird gesendet, um den rest des Netzes. Nur gültige Transaktionen allein macht noch keinen gültigen block. Ihnen fehlt die Idee "Berechnet kryptographische hashes, über und über, bis findet, wenn man 'gut genug, um zu zählen'", die Sie erwähnt. Das ist der Beweis der Arbeit.

Wie die einzelnen Nutzer prüfen diese blockchain (teilen der blockchain und überprüfen Sie jede Transaktion, wenn die Transaktion aus der blockchain ist das gleiche mit der, die er hat (weil die ersten Transaktionen senden, um alle Benutzer von p2p-Netzwerk nach, die senden in der Warteschlange zu verarbeiten, durch die miner. Dies ist, wie Benutzer in der Lage ist zu vergleichen mit den Transaktionen))?

Benutzer können vergleichen Sie einfach die Transaktion hash mit dem in der blockchain, da der hash ist eine deterministische "Zusammenfassung" oder Hash der Transaktion. Dieselbe Transaktion immer den gleichen hash, sondern zwei verschiedene Geschäfte haben unterschiedliche hashes. Volle Knoten immer überprüfen, dass alle Transaktionen in den neuen block, wenn Sie erhalten es in jedem Fall, Sie haben nicht nur das Vertrauen der Bergleute.

+976
John Pardon 03 февр. '09 в 4:24

Ich wollte zu konvertieren, Bitcoin zu Bitcoin Bargeld. Mit changelly ich wusste, dass succefully aber schickte Sie zurück zu der gleichen Bitcoin-Wallet. So, meine habe ich verloren, mein Geld? Ich bin völlig neu hier. Gibt es irgendetwas, was ich tun kann?

+957
paxromana 28.06.2010, 08:12:02

kann jemand zuordnen btc-Adresse mit der Brieftasche? Ich meine, wenn ich 5 Adressen in einer wallet, kann jemand von außen beweisen, dass diese 5 Adressen gehören zu einer person/Geldbörse? Ich weiß, Sie können sehen, IP, dass daraufhin die Transaktion, aber wenn Sie mit einem TOR oder eine andere SW gibt es viele weitergeleitete Transaktionen aus, die IP, es wird also nichts sagen.. oder bin ich falsch? Vielen Dank für die Antworten.

+926
Recycled Steel 03.01.2018, 09:15:33

Ich verstehe, dass das Bitcoin-mining-problem besteht darin, einem string s (hash des vorherigen Blocks + - Transaktion hashes + nonce), so dass sha256(N) hat n Nullen, wobei n bestimmt die mining-Schwierigkeit.

Das Ergebnis sha256(s) ist ein 64-Länge hexadezimal-string aus. Jede position 64 36 Möglichkeiten (a-z, 0-9). So, die erwartete Anzahl von Vermutungen wäre 36^n.

Den hash block #485891 ist

0000000000000000007ea3c67381ecfcf8e44e9941dcef554e8b029068857b55 

die 18 führenden Nullen. So, die erwartete Anzahl von Vermutungen ist

36^18 = 10314424798490535546171949056.

Dieser hash wurde von Antpool die eine hash-Leistung von 1284.32 PH/s. Also, die erwartete Zeit für Antpool zu finden, der hash wäre

36^18 / (1284.32 * 10^15) = 8.03104*10^9 s = 255 Jahren.

Diese Zeit ist offensichtlich falsch. Gibt es irgendetwas, was ich verpasst?

+920
apunn 04.07.2012, 08:19:51

Die bitcoin-wallet-Anwendungen für android, windows und mac können Sie exportieren .wallet-Dateien sind cross-kompatibel mit einander? Derzeit gibt es so viele wallet-Anwendungen da draußen, und ich möchte nur so wenig wie möglich, geben ein Gefühl der Sicherheit, wenn man am Tag der app-Entwickler hält die Entwicklung für Ihre app.

+914
255 06.09.2019, 15:29:40

Ich Stand vor einem ähnlichen Problem und fand diesen reddit post ganz hilfreich. Ich bin nicht eine bitcoin-Experte, aber ich werde schreiben Sie eine Antwort zu beschreiben, was ich denke, passiert ist, da gibt es keine anderen Antworten noch nicht.

Wenn Sie geschickt die erste low-fee-tx, habe es weitergegeben Geldstrafe für das Netzwerk blieb aber unbestätigt. Wenn Sie öffnete die Electrum wallet ein paar Stunden später unbestätigten tx verschwunden, weil Ihre electrum wallet-Verbindung zu einem Knoten, die entfernt Ihre tx aus dem mempool als unter dem minimum relais Gebühr.

Also man erstellt sich eine zweite Transaktion, aber während die meisten Knoten (einschließlich block-Erkunder, Miner) sah Ihrer Transaktion, die Sie sofort ausgeworfen Sie aus dem mempool für eine versuchte doppelte ausgeben.

Nur Ihre erste tx jede chance zu gehen durch. Aber wenn es sehr niedrige Gebühren, es könnte nicht abgebaut werden und werden entfernt alle mempools nach einiger Zeit (3+ Tage?). Also, Sie haben zu warten, bis die erste Transaktion entfernt werden-alle mempools und erstellen Sie eine neue Transaktion mit höheren Gebühren.

Jede Bestätigung oder Korrektur für die oben von einem Experten würde geschätzt..

Hier ist, was Elektrum - Dokumentation schlägt vor, für die Fälle der unbestätigten Transaktionen: Wenn Sie eine Transaktion, die ist unbestätigt, können Sie:

  • Für eine lange Zeit warten. Schließlich, Ihre Transaktion wird entweder bestätigt oder storniert werden. Dies kann mehrere Tage in Anspruch nehmen.
  • Erhöhung der Transaktionsgebühr. Dies ist nur möglich für 'austauschbar' - Transaktionen. Für diese Art der Transaktion, Sie müssen aktiviert haben, "Ersetzen durch Fee' in Ihren Einstellungen, bevor das senden der Transaktion.
  • Erstellen Sie ein 'Kind Zahlt Für Eltern" - Transaktion. Ein CPFP ist eine neue Transaktion zahlt eine hohe Gebühr als Ausgleich für die kleine Gebühr der übergeordneten Transaktion. Es kann getan werden, indem die
    Empfänger der Mittel, oder durch den Absender, wenn die Transaktion hat ein
    ändern Sie die Ausgabe. (Hier ist eine Schritt-für-Schritt-Anleitung für diese option: link)

+883
special0ne 19.08.2010, 14:04:13

Neben dem Vorteil der größeren versuche, gibt es andere signifikante, messbare Optimierungen, die mining-pools bieten? Ich beziehe mich auf intrinsische Funktionen, wie beispielsweise nicht doppelt gescheitert "hashes" (vorausgesetzt, das ist tatsächlich eine implementierte Funktion), die eine direkte Ertrag von mining-hardware/software-arbeiten im Konzert, nicht mining-farm Vorteile wie Skaleneffekte Einsparungen (D. H. Gruppen-Rabatte auf Energie).

+829
ikashnitsky 19.01.2013, 02:24:50

SIGHASH flags ermöglichen die flexible änderung einer Transaktion.

Ja, aber die SIGHASH Arten vor allem ermöglichen, die für die inkrementelle Fortschritte in Richtung auf die Schaffung eine vollständige/abschließende Transaktion, wie die Kombination mehrerer Transaktionen unterzeichnet mit SIGHASH_SINGLE. Sobald die Transaktion ist vollständig aufgebaut, es gibt gewisse Verbesserungen, die getan werden kann, um es nicht zum erlöschen der tx aber änderung der TxID, und diese Verbesserungen können durchgeführt werden, unabhängig davon, wie es war, unterzeichnet.

Was Formbarkeit Risiken SIGHASH Transaktionen entstehen, die aufgrund Ihrer Nutzung?

Ich denke, die SIGHASH Unterzeichnung Typen erlauben die Veränderung von Transaktionen, bevor Sie endgültig sind. Sobald eine Transaktion ist endgültig, das malleability-Problem weiterhin bestehen, unabhängig davon, wie es war, unterzeichnet. In der Tat, ECDSA Unterzeichnung selbst (unabhängig von der SIGHASH-Typ verwendet wird) ist nicht-deterministisch, so könnte man Zeichen, die dieselbe Transaktion zweimal und verteilen Sie Sie, und Sie würden beide gültig sein (aber widerstreitende), haben aber unterschiedliche TxIDs.

Da gibt es legitime Verwendungen von SIGHASH und ändern eines Tx (und vermutlich die TxID auch), was ist der richtige Weg, mit Sighash w.r.t. eine TxID und Verfolgung Ihrer Fortschritte?

Die Nachverfolgung der Transaktionen die Fortschritte, werden Sie wahrscheinlich brauchen eine andere Weise zu identifizieren, die Transaktion anderer als der raw-TxID (Doppel-hash-Wert von tx-Daten). d.h. eine Zahl im Zusammenhang mit einer Transaktion übergeben wird, um allen, die es Bearbeiten, oder die überwachung der Ausgänge der Transaktion.

+787
Drm0223 07.12.2018, 08:35:44

Ich habe auf der Jagd gewesen für diese Informationen, mir, und hatte zu Graben, um die bitcoin-source-code, um die Antwort zu finden - konnte ihn nicht finden überall sonst.

Es ist eine fest programmierte Logik in bitcoin für P2SH Validierung:

Der stack ist gesichert zwischen den Stufen 2 und 3 (in der Regel zwischen scriptSig und scriptPubKey-Ausführung).

Nachdem beide Skripte ausgeführt und bestätigt wird, wird der stack wiederhergestellt wird, der von der früheren Sicherung das einlösen Skript ist aufgetaucht aus dem Stapel, deserialisiert, ausgeführt und verifiziert werden. Dies geschieht durch interne bitcoin-code, nicht von einem script.

Entsprechende Quellcode: https://github.com/bitcoin/bitcoin/blob/master/src/script/interpreter.cpp

Stack gesichert wird bei 1412, und wiederhergestellt im Jahr 1448, wo die Magie beginnt.

+767
gxpr 10.09.2019, 11:21:53

Ich benutze die "bitcoincashjs" oder "bch-lib" und möchte hinzufügen eines neuen opcode "OP_CHECKDATASIG" ausgegeben.Wie zu tun?

const utxo = {
 'txId' : 'b76e4563bfe2e9e40355e3791e060b774ceb9ba04bef70df151763f82acb69a0',
 'outputIndex' : 0,
 'Adresse' : '1bbLNcTwoffAjuWTyBuu4vSwNUBNMgYghl',
 'script' : '76a9147f27b2a0a88bc84d3db72f22ea82d52c99a6a0e088ac',
 'satoshis' : 2000
};

 const transaction = new bch.Transaction()
.aus(utxo)
 .auf('1bbLNcTwoffAjuWTyBuu4vSwNUBNMgYghl', 1500)
.sign(privateKey);
+695
arcety 23.05.2015, 12:59:35

Wenn ich ein Blitz-Kanal mit einem Knoten, habe ich einige bitcoins sind? Ja, Sie müssen stets einige BTC, auch wenn die andere Seite wollen, stellt die BTC für Sie, dann Weise Sie nicht zahlen!, Sie werden nur in der Lage zu erhalten. Zu zahlen, die Sie brauchen, um einige Ihrer auf-Kette-Geld in der off-chain-Vertrag (LN-channel) so dass das Geld handeln, als eine zeitliche pool zu bekommen, von Ihrem Geld in der pool-und pay-per LN in eine schnelle Art und Weise!

denke, dass der Kanal als eine Tasche mit Ihrem Geld, müssen Sie Geld in der Tasche, wenn Sie später bezahlen wollen, von dort, und Sie müssen die Zimmer/Platz in der Tasche, um eine Zahlung erhalten, wenn nicht die Münzen, die kippe halten

heute Kanäle und eine Seite finanziert werden, und der initiator ist, wer finanziert den Kanal, in die Zukunft full-duplex-dual finanziert werden, eingeleitet, wo beide legen BTC und es wird senden/empfangen in der Lage.

trotzdem gibt es andere Techniken, die heute auf Rückseite einen Kanal und empfangen werden können.

Dann, wenn ich was kaufen wollte mit lightning-Netzwerk (für Beispiel, einen Aufkleber von Blockstream), werde ich haben, um ein anderes Blitz-Kanal mit Blockcstream? Oder die zuvor synchronisierte Kanal wird verwendet, um zu lassen mich zu kaufen, von Blockstream?

Ihre vorher geöffneten (nicht synchronisiert) Kanal, wenn seine Verbindung zu einem Knoten über dem eine route zu destiny (Blockstream) gefunden werden konnte! werden Sie in der Lage zu zahlen, ohne das öffnen eines Kanals.

wenn Sie öffnen einen Kanal mit jeder Sie wollen, bezahlen müssen. ich die gleiche, wie die zahlen mit den normalen BTC, wie das öffnen eines Kanals ist ein on-chain-Betrieb. es wird nur dann Sinn machen, zu tun, wiederholte Zahlungen an dieselbe person, die LN ist viel mehr nützlich, als dass seine große!

denke, dass die LN-Netzwerk (wenn Sie einen Knoten mit der guten Kanäle geöffnet) als Ihre wirklichen Leben Brieftasche, sein handy für kleine Zahlungen, die Sie gehen und kaufen ein Bonbon, so dass Sie öffnen Sie Ihre real-life pocket Brieftasche, und Sie bezahlen! sofort, aber Sie tragen nicht Ihre Loch Leben Einsparungen in Ihrem real-life Tasche Brieftasche! wenn Sie ein Haus kaufen, Sie zur bank gehen, Fragen Sie nach dem öffnen der sicher ist für Sie, zeigen Sie Ihre Anmeldeinformationen, und Sie nehmen das Geld (sein sicherer, aber es braucht mehr Anstrengung zu tun hat), die bank zum Beispiel eine offline-Papier-wallet von BTC in diesem Beispiel. die wollen Sie aufwenden, um aus, müssen Sie zum importieren der private Schlüssel in einem Knoten, bezahlen und warten, bis die tx in einem block, und warten Sie einige weitere Blöcke (Bestätigungen), um sicher zu sein!... ein wenig mehr zeitaufwendig und unpraktisch als LN, denken Sie nicht? aber.. definitiv sicherer! wie der Safe in der Bank

+661
Charlie Patton 06.04.2010, 05:44:22

Ich habe mein Gleichgewicht auf meine Adresse beginnt mit " 3, welches nach 'addwitnessaddress" - Befehl.

Ich würde gern wissen wie kann ich richtig meine backup-Gleichgewicht zu halten, damit die Sicherheit.

Bitcoin Core ist eine Funktion, genannt backup-wallet an den " Geldbeutel.dat', aber es ist ein in unexpectable Fall von Korruption Datei.

Ich habe versucht, halten Sie es speichern, indem Sie 'dumpprivkey ', um meine priv-key.

Aber die Konsole sagt, "Address bezieht sich nicht auf einen Schlüssel". Also googelte ich es und fand es hat im Zusammenhang mit den sogenannten P2SH.

Es ist etwas schwer zu verstehen für mich zu verwenden, Bitcoin.

Können einige mir helfen, um meine backup-balance nur mit Hilfe von Bitcoin-Core-client statt " Geldbeutel.dat'?

Danke!

+596
Bin Stewart 23.07.2015, 09:01:56

In Bezug auf Quanten-Computern:

Wenn Sie eine skalierbare Quantencomputer gebaut wurden, das Bitcoin-Protokoll würde unsicher werden. Bitcoin-Adressen sind abgeleitet aus dem öffentlichen Schlüssel in ein elliptic curve cryptography system. Das ganze system hängt von der Besitzer hält seine/Ihre geheimen Schlüssel wirklich geheim. Quanten-Computer könnten effizient lösen, nicht nur das factoring-problem, sondern auch der diskrete Logarithmus problem:

http://en.wikipedia.org/wiki/Discrete_logarithm

Die Sicherheit Bitcoin leitet sich aus der elliptischen Kurven-Kryptographie beruht auf der Annahme, dass diskrete Logarithmus schwer ist.

+573
Suhakar erva 04.12.2012, 04:45:45

Ja, Sie sind gespeichert in der blockchain.

Sie sind auf 1000 Zeichen begrenzt.

Sie haben keine Verschlüsselung eingebaut, aber die Verschlüsselung aufgebaut werden kann an der Spitze. Sehen Sie die letzten 300 Meldungen hier. Sie können auch die Website durchsuchen und Blöcke finden Sie unter den Nachrichten eingebettet werden.

+533
Bosskins 02.09.2012, 18:50:34

Nehmen wir an ich halten, Erzeugung von Zufallszahlen, die öffentlichen Schlüssel mit Ihrer passenden privaten Schlüssel und benutzen Sie niemals. Severals Jahre später bin ich die Prüfung für das positive Spiel gegen die blockchain für alle meine generierten öffentlichen Schlüssel. Wenn eine übereinstimmung gefunden wird, dass bedeutet, jemand ist tatsächlich mit einem öffentlichen Schlüssel, die ich in der Vergangenheit erzielten und für die ich kennt den privaten Schlüssel. Ich sollte dann in der Lage sein, die Kontrolle über jemand anderes wallet auch im Fall einer Papier-oder brain-wallet. Beste Grüße,

+514
KimC 28.04.2017, 15:41:59

Der "puzzle" - Metapher kann nicht hilfreich sein. Das Ziel ist immer das gleiche: erstellen Sie einen block, dessen header hat ein klein genug hash-Wert, weniger als der aktuelle Gegner.

Also jeder miner kann einen block erstellen, der jede Art, wie Sie will, solange es erfüllt die Allgemeinen Anforderungen des Protokolls (alle Geschäfte sind rechtsgültig unterzeichnet, block-Belohnung ist nicht größer als der aktuelle standard-Wert, etc), und dann variieren Sie den nonce-Wert, in der Hoffnung, einen zu finden, die macht der hash hinreichend klein. Es gibt keine einzelne zentrale Behörde oder Protokoll, die Hände aus Blöcken für die Menschen zu arbeiten auf.

In der Praxis bedeutet dies, dass keine zwei Bergleute sind je funktionieren auf genau dem gleichen block. Zwei verschiedene solo-Miner haben die verschiedenen Blöcke da hat jeder einen coinbase-Transaktion, zahlt den Lohn an seine eigene Adresse. Zwei andere Mitglieder des gleichen pool zugewiesen werden verschiedene Varianten des gleichen Blocks, um Doppelarbeit zu vermeiden (vielleicht jeder seine eigene Kennung, die irgendwo in den block).

Das Ziel ist, in gewissem Sinne eindeutig bestimmt durch das Protokoll. Das Bitcoin-Protokoll legt fest, wie das Ziel wird berechnet, basierend auf dem Zeitstempel des vorherigen blocks; dies ist, was gewährleistet, dass es passt mit der gesamten mining-power von dem Netzwerk, um die block-Zeit in etwa konstant bei 10 Minuten. Sollte es der Fall sein, dass alle Bergleute im Netzwerk verwenden den gleichen Zielwert zu vergleichen, mit Ihren Blöcken.

Also in diesem Sinne, jeder versucht zu lösen, das gleiche "Rätsel" (Streben nach dem gleichen Ziel), aber jeder versucht einen anderen Ansatz zu tun (einen anderen Kandidaten zu blockieren).

Nur das target ändert sich alle 2016 Blöcke (ca. alle zwei Wochen). So sind die meisten der Zeit, können Sie wissen, was das Ziel wird nach dem nächsten block: das gleiche wie das aktuelle Ziel. Wenn der nächste block wäre ein Vielfaches von 2016, dann werden Sie warten müssen, bis es abgebaut wird, weil sein timestamp-einbezogen werden in die Berechnung des nächsten Ziels.

+511
Fred Patrick 08.12.2017, 06:46:43

Autopilot automatisch eine Verbindung zu peers im Hinblick auf die Schaffung eines p2p-Netzwerks. Ich finde nicht jedoch eine vollständige Erklärung seiner motivation und Logik.

+484
Francesco Baruchelli 23.07.2015, 19:48:05

Nicht Vertrauen MtGox oder sonstigen Austausch zum speichern Ihrer BTC. Alle BTC auf exchange ist in Gefahr, verloren zu gehen, gestohlen oder unzugänglich gemacht werden.

So halten Sie Ihre BTC verstauen in der eigenen Kühlhaus. Um dies zu tun erstellen Sie eine Geldbörse mit blockchain.info (oder gleichwertig), erstellen Sie Ihre eigenen BTC-deposit-Adressen und bewegen Sie Ihre BTC von MtGox um Ihre Adressen. Nun, wenn Sie den zugehörigen privaten Schlüssel für Ihre Adressen offline, dies ist, was bekannt als "cold storage". Beachten Sie, dass es tatsächlich "warme Lagerung", da Ihre BTC noch auf der blockchain; es gibt keine solche Sache wie Kälte-Speicher für BTC. Jetzt können Sie (und sollten) sichern Sie Ihre privaten Schlüssel.

Ihre BTC-Adressen Hinzugefügt werden können, um Ihren Geldbeutel als "watch only" - Adressen (der private Schlüssel ist nicht erforderlich). Auf diese Weise werden Sie Ihren Geldbeutel in der Lage sein, um Ihre BTC balance aber Ihre BTC ist immer noch sicher.

Verbringen Sie Ihre kalt gelagerten BTC, importieren von einem oder mehr von Ihrem BTC-Adressen in Ihrer Brieftasche, indem Sie Ihre privaten Schlüssel. Die BTC-Adresse(N), die Sie importieren, sind in Gefahr, so nicht wieder-nutzen Sie Sie.

+462
Luis Melendez 22.09.2010, 17:18:06

Also als eine übung, die ich bauen möchte einen mining-client, nur weil ich neugierig bin.

Ich verstehe, dass ich bin eigentlich erstellen einen hash, aber sobald ich den hash hast, wo soll ich Sie schicken?

Wie kann ich senden Sie es zurück an die block-chain?

+442
Shubham Rautela 13.08.2012, 00:06:02

Sie werden standardmäßig nur die Werte der Ausgänge und nicht die Eingänge. Sammeln Sie alle Werte für die Eingänge, die Sie benötigen, um eine Schleife durch Ihre Eingaben und verwenden Sie eine API zum erfassen der Transaktionen, bei denen die Eingänge waren mal Ausgänge.

Ich benutzte die BitPay Einblick API und Links einige Hinweise in den folgenden code:

var Bitcoin = require('bitcoinjs-lib');
var request = require('request');

Funktion getRawBlock(blockHash) {
 return new Promise((auflösen, ablehnen) => {
 request('https://insight.bitpay.com/api/rawblock/' + blockHash, // schlagen, einen Einblick API, um den vollen block
 (error, response, body) => {
 try {
 var block = JSON.parse(Körper); // Ergebnis wird im JSON-Format
beheben(block.rawblock)
 } catch(error) {
ablehnen(Fehler)
}
})
})
}

Funktion getTransaction(Transaktions-id) {
 return new Promise((auflösen, ablehnen) => {
 request('https://insight.bitpay.com/api/tx/' + Transaktions-id, // schlagen, einen Einblick API, um die vollständige Transaktion
 (error, response, body) => {
 try {
 var transaction = JSON.parse(Körper); // Ergebnis wird im JSON-Format
auflösen(Geschäft);
 } catch(e) {
reject(e)
}
});
})
}

getRawBlock('000000000000000000aabc9831a830ab8542137c68998368b86f9127432767d5')
 .dann((rawBlock) => {

 var block = Bitcoin.Block.fromHex(rawBlock); // verwenden bitcoinjs-lib zum konvertieren der raw-block, um brauchbare Daten
 var Transaktionen = block.Transaktionen; // Transaktionen befinden sich hier
 var transaction = - Transaktionen[1]; // mit der zweiten Transaktion als ein Beispiel, da das erste man ist miner belohnen
 // Sie können Schleife die Transaktionen in der Weise, die Sie mögen

 var inputs = Transaktion.ins; // brauchen, um die API verwenden, um die Ausgänge, jeder Eingang einmal war
 var Ausgänge = Transaktion.outs; // keine Notwendigkeit zu schlagen API für Ausgaben, Wert in Ausgaben[i].Wert

 var inputsWork = Eingänge.map((i) => { // anzeigen der Eingänge, um eine Reihe von Versprechungen, die wir später ausführen
 return new Promise((auflösen, ablehnen) => {
 var Transaktions-id = Puffer.aus(ich.hash).reverse().toString('hex'); // Ableitung der Transaktions-id auf diese Weise
 var outputIndex = ich.index; // output-index wird auch benötigt
getTransaction(Transaktions-id)
 .dann((transaction) => { //diese Transaktion gehört zu den geloopten Eingang (i)
 var Ausgänge = Transaktion.vout; // get-Ausgänge der Transaktion
 var Ausgabe = Ausgänge.find (i) => (i.n === outputIndex)); // stimmt die Eingabe/Ausgabe-Indizes
 lösen(Ausgang.Wert); // lösen mit unserer output-Wert
})
})
});

Versprechen.alle(inputsWork)
 .dann((inputValues) => { // execute Reihe von Versprechungen für die Eingänge

 var totalInputs = inputValues.reduce((a,b) => (a+b)); // hinzufügen, bis die input-Mengen
 var totalOutputs = Ausgänge.reduce((a,b) => (a.Wert+b.Wert)); // füge das output-Mengen
 totalOutputs = totalOutputs / 100000000; // Ausgänge in satoshis

 var feesIncurred = totalInputs - totalOutputs; // die Gebühren für eine Transaktion input Menge output Menge
 console.log(feesIncurred); // log-die Gebühren, die an die Konsole
})

})

Prost!

+416
TuxToaster 27.06.2014, 09:31:09

Ich glaube nicht, dass Welt-Bevölkerung lehnt ein Geld-system mit einem O(n) Kosten für die übertragung von Geld anstelle von einem O(1) - einfach, weil die Kosten nicht konstant - Sie tun sollten solche O(n) kleiner sein als O(1) für die gemeinsame übertragung Größen.

Ich Vergleiche das mit den Betriebssystemen' Planer. Seit Jahren der Heilige Gral war die Entwicklung einer O(1) scheduler, und in der Tat einige Disponenten durch ein solches Verhalten geschaffen wurden. Und dann, Con Kolivas, kam und zeigte es tatsächlich möglich war, erstellen Sie eine sehr einfache O(n) - scheduler, der regelmäßig outbeated der O(1) für die Nutzung Fall kümmerte er sich um die (end-user-desktop-computing-in Systemen mit geringer Menge von Kernen).

+388
89609542458 28.02.2010, 21:00:27

Hinweis: Die Konten feature ist als veraltet markiert von der codebase. Konten sind Gruppierungen von Adressen, gebaut von der wallet-software.

Sie können feststellen, dass die listunspent oder listreceivedbyaddress Befehle, die nützlich sind für Sie.

Ich wollte wissen was die "" und 0.81234545 und wo meine realen Adressen

"" ist die Standard-Namen ein Konto

0.81234545 ist die Bilanz Ihrer Brieftasche, in BTC.

+341
unreadheart 24.11.2014, 12:39:38

es gibt eine Liste von Implementierungen , die in der bip32 Dokumentation:

Zwei Python-Implementierungen vorhanden sind:

PyCoin (https://github.com/richardkiss/pycoin) ist eine suite von Dienstprogrammen für den Umgang mit Bitcoin enthält BIP0032 Brieftasche-features. BIP32Utils (https://github.com/jmcorgan/bip32utils) ist eine Bibliothek und command-line-interface speziell ausgerichtet auf BIP0032 Brieftaschen und scripting.

Eine Java-Implementierung ist verfügbar unter https://github.com/bitsofproof/supernode/blob/1.1/api/src/main/java/com/bitsofproof/supernode/api/ExtendedKey.java

Eine C++ - Implementierung ist verfügbar unter https://github.com/CodeShark/CoinClasses/tree/master/tests/hdwallets

Eine Objective-C-Implementierung ist verfügbar unter https://github.com/oleganza/CoreBitcoin/blob/master/CoreBitcoin/BTCKeychain.h

Eine Ruby-Implementierung ist verfügbar unter https://github.com/GemHQ/money-tree

Zwei Go-Implementierungen vorhanden sind:

hdkeychain (https://github.com/conformal/btcutil/tree/master/hdkeychain) bietet eine API für bitcoin hierarchische deterministische erweiterte Tasten (BIP0032). Gehen HD-Wallet (https://github.com/WeMeetAgain/go-hdwallet).

Zwei JavaScript-Implementierungen vorhanden sind: abrufbar unter https://github.com/sarchar/brainwallet.github.com/tree/bip32und https://github.com/bitpay/bitcore

Ein PHP-implemetation ist erhältlich bei https://github.com/Bit-Wasp/bitcoin-lib-php

Eine C# - Implementierung ist verfügbar unter https://github.com/NicolasDorier/NBitcoin (ExtKey, ExtPubKey)

Eine Haskell-Implementierung ist verfügbar unter https://github.com/haskoin/haskoin zusammen mit einer CLI-Schnittstelle an https://github.com/np/hx

Sie sollten überprüfen Sie die Dokumentation , anstatt sich auf meine Kopie hier, aber, da mein Exemplar gehen wird out-of-date über die Zeit

+290
Rosie Giesie 09.09.2012, 02:15:25

Tatsächlich, die SCHRAUBE wurde speziell für sehr starke Privatsphäre-Eigenschaften mit Hinblick auf die Wachtürme. Sie können damit alle Ihre Engagement tx-id ersten Hälften zu einem Wachtturm und es immer noch nicht lernen etwas über den zweiten Hälften, andere txs oder irgendetwas anderes über den Zustand des Kanals (oder welcher Kanal es ist gerade alle), solange das volle Engagement tx nicht zeigen, bis auf die blockchain. Sobald es das tut, es immer noch nicht lernen, alles, was darüber hinaus eine Verpflichtung Zustand. Das hier ist getan und es ist ziemlich bemerkenswert, IMHO.

+177
infiniti5 02.08.2010, 10:54:56

Ich bin ein Neuling auf bitcoins, und brauche etwas Hilfe!

Ich habe die Bitcoin client und installiert es auf meinem laptop.

Es ist "die Synchronisierung mit dem Netz" und tut dies bereits seit über einem Tag. Ist das normal? Ich habe Breitband-internet, und manchmal laden Sie große Dateien in einem vernünftigen amout der Zeit also ich bin mir ziemlich sicher, dass es nicht meine internet-Verbindung Geschwindigkeit.

Ich verstehe, es ist das herunterladen der blockchain Ding bit für bit, aber ist es wirklich so lange dauern? Muss ich das gleiche tun, wenn ich waren zu ändern, laptops oder einen neuen computer?

Auch, es ist zwar 'Synchronisation mit dem Netzwerk' es Total verlangsamt meinen laptop, so viel, so dass es dauert eine Ewigkeit, bis auch starten meine internet-browser. Ist das normal? Wird es immer tun wenn ich den Bitcoin-client, also verlangsamen das gesamte system nach unten, oder ist dies nur der Fall, wenn man 'Synchronisation mit dem Netzwerk?

Vielen Dank!!

+172
Ur answer 22.05.2010, 22:30:24

Sie können nicht "lösen" eine Bitcoin-Transaktion. Diese Transaktion hat bereits an die neue Brieftasche, es ist nur noch nicht bestätigt. Bitcoin-Transaktionen von Natur aus unumkehrbar.

Sie können Fragen Sie den Besitzer des Empfänger-wallet zum senden der Transaktion weiter, um eine Brieftasche, die Sie besitzen, und Huckepack eine neue, zusätzliche Gebühr an Sie zu senden, um es an Sie zurück. Die Summe der beiden Gebühren kann gewinnen Bergmann.

Obwohl theoretisch nicht erlaubt, können Sie versuchen, "senden Sie die Bitcoins irgendwo anders," aber das würde effektiv ein doublespend. Sie können versuchen, doublespend die Transaktion mit einer höheren Gebühr zurück, um eine Geldbörse, die Sie besitzen, und hoffen, dass einige miner nimmt die neue, fragwürdige Transaktion. Das original ausgeben würde, dann verwaist. Siehe: Konnte keine standard-Gebühr für die Transaktion werden doppelt ausgegeben, indem eine höhere Gebühr?

+78
amanda adams 04.03.2012, 02:34:18