Sind Bitcoins dazu bestimmt, für immer im Wert steigt?

Die Idee, eine Währung mit einer begrenzten Anzahl von Einheiten scheint mir grundlegend zu bestehenden Währungen. Während andere Währungen basieren in der Regel auf permanente inflation - mehr "Einheiten" kommen in der Währung, die pool -, die bewirkt, dass jede Einheit weniger Wert sein, Bitcoin basiert auf einer festen Anzahl von "Einheiten", das sich nie verändert. Bedeutet dies, dass, wie die Auslastung steigt und die Zeit vergeht, jeder 'unit' wird unbedingt Wert sein, mehr und mehr und müssen aufgeteilt werden in kleinere und kleinere Mengen?

+111
viswa 25.10.2010, 07:53:21
27 Antworten

Wenn die blockchain zeigt, wurde das Geld in Ihrem Konto, dann werden Sie sich der Erfüllung Ihrer Anforderungen. An diesem Punkt, jede übertragung von Geld von Ihrem Konto muss unterzeichnet werden von Ihrem privaten Schlüssel. Diese signierte Transaktion ist das, was in der blockchain.

Der wahrscheinlichste Fall ist, dass die Anwendung, die Sie verwendet, um den Schlüssel zu generieren erzeugt einen schwachen Schlüssel. Wenn, zum Beispiel, gibt es einen Fehler in deinem key generation ist, die wahrscheinlich zu generieren, die eine von nur, sagen wir, eine Milliarde den privaten Schlüssel, dann könnte jemand durch die Arbeit jedes dieser Milliarden-Tasten, arbeiten aus dem hash und speichert ihn in einer Tabelle. Dann könnten Sie überwachen die eingehenden blockchain für den Zahlungsverkehr, und sucht den Hashwert in Ihre Tabelle. Wenn Sie finden einen passenden hash, suchen Sie die dazugehörigen privaten Schlüssel, und setzen Sie durch eine Transaktion. Eine Milliarde Schlüssel und Hashwerte von über 100 GB - und wenn Sie 28 Bitcoins macht, dass es alle lohnt.

+987
Tempest 03 февр. '09 в 4:24

Okay, ich habe meine Forschung getan, ich habe praktisch alles ausprobiert. Nur es frustriert mich, weil LTC mining war ein Stück Kuchen, aber ich kann nicht scheinen, um herauszufinden, wie mine bitcoins die das Gerät sagt, dass es tun kann, bitcoins plus dual-mining.

Ich habe versucht, BFGminer, aber es scheint nicht zu erkennen, meine gridseed, es sei denn, ich bin mining von LTC. Dann habe ich versucht CPUMiner und es funktioniert, bis es ungültig wird die ganze Zeit wie seine mit dem falschen Algorithmus, aber ich habe versucht, die -eine sha256d und produziert immer noch das gleiche Problem. Kann mir jemand helfen, ich habe die Treiber installiert und mein usb-Gridseed miner ist auf COM6. Ich habe auch versucht, CGMiner, und es sagt, kann nicht erkennen, alle USB-Geräte.

Ich habe versucht, jede mögliche Sache, die kommt auf den ersten paar Google-Ergebnisse. Ich bin nicht ganz neu im Bergbau als ich das getan habe Scrypt mining mit diesem feinen Gerät.

Hier ist das Produkt.

+940
juanbretti 14.05.2014, 19:55:28

Für einen Benutzer, der eine vollständige Knoten, das ist im Grunde, was passiert. Bei der Erstinstallation, die Sie herunterladen (von anderen peers im Netzwerk) eine Kopie der vollständige block chain, mit jeder Transaktion, die jemals ausgeführt. Also, wenn eine neue Transaktion eintrifft, haben Sie die Daten zur Rückverfolgbarkeit aller Transaktionen, die zu Ihr führte.

Um diese effizienter zu gestalten, wird der client unterhält eine Datenbank mit gültigen unverbrauchten Transaktion Ausgänge (utxo), indiziert durch die Transaktion hash (oder txid). Wenn eine neue Transaktion T ankommt, prüft der client, dass die Eingänge von T entspricht ganz unterschiedliche utxo in der Datenbank. Wenn Sie es tun, und alle Unterschriften sind in Ordnung, und alles, was über die Transaktion Sinn macht, dann wird die Transaktion akzeptiert wird. Die utxo ist entsprechend der Eingänge des T aus der Datenbank entfernt werden (da Sie nun verbrachte), und neue utxo Einträge erstellt entsprechend die Ausgänge von T.

Für die "dünnen" Knoten, die nicht halten Sie alle diese Daten, die Sie haben, es zu verlangen, aus anderen network-Knoten, die tun. Dies erschwert die Arbeit etwas und erfordert ein gewisses Vertrauen in die Knoten, die die Informationen.

+930
keelay48 27.06.2015, 19:32:32

Es ist ein embryo von einem patch auf github, das war genau das gemeint, dieses Problem zu lösen. Es wurde angekündigt, auf der dev-mailing-Liste, aber nie erhielt viel Aufmerksamkeit. Jetzt ist es ein bisschen veraltet (der Letzte merge mit master ist von Sep 26). Vielleicht können Sie von hier aus starten.

+806
kene 07.05.2011, 23:01:12

Sie don ' T haben Zugriff auf alle von einem HD-Brieftasche privaten Schlüssel und Ihre entsprechenden Adressen sofort und kann nicht überprüfen, Sie für die Mittel sofort.

Bei der Erzeugung des 128 bit-Samen und dann erzeugen die ersten Adressen der HD-wallets, werden Sie auf Duplikate. Auch wenn wir dies ignorieren und davon ausgehen, alle privaten Schlüssel, und jeder entsprechenden Adresse eindeutig sein (das macht die Mathematik leichter, so dass mehr Menschen können es verstehen), es ist ein unerreichbares Unterfangen.

Es sind derzeit über 4.67*10^7 UTXOs. Das best-case-Szenario für den Diebstahl zumindest etwas Geld ist, dass jeder UTXO gehalten wird, durch einen anderen privaten Schlüssel in eine andere Adresse. Statt darüber nachzudenken, wie unsere Chancen sind schlechter, als, dass, lassen Sie uns einfach annehmen, dass es um wahr zu sein.

HD-wallets verwenden Sie nur Ihre Samen nach 10^5 Runden sha256. Vernachlässigen wir den zusätzlichen Aufwand erstellen Sie einen private key, einen öffentlichen Schlüssel aus, die, Erstellung einer Adresse aus, die Sie beten zum Fliegenden Spaghettimonster, dass der Benutzer tatsächlich verwendet die allererste Adresse in Ihrer HD Geldbeutel und die Gelder, die erste Adresse sind noch unverbraucht, und die eigentliche Suche. Denn diese sind schwerer zu bestimmen, dass die Kosten für und als es bald raus, es ist unmöglich, auch wenn wir buchstäblich in der null-Kosten für, die.

Angesichts der oben genannten zahlen und unsere sehr großzügigen Annahmen, die wir haben, zu berechnen 2^128÷(4.67*10^7)*10^5 = 7.28656032*10^35 sha256 hashes, um Zugang zu 1 UTXO.

Die aktuelle hash-rate des gesamten Bitcoin-Netzwerk ist über 3*10^18 - hashes pro Sekunde. Natürlich, in Wirklichkeit können wir nicht nur Bergleute, da die 10^5 hashes wir berechnen pro Samen sind nicht unabhängig voneinander. In der Tat, Sie alle (aber die ersten) sind von einer vor Ihnen. Das ist das Schlimmste mögliche Szenario für die Berechnung einer Menge von hashes.

Aber selbst wenn wir davon ausgehen, dass wir den Zugang zu alle der weltweit Bitcoin Miner, Magische, neue Mittel laufen rein sequentiell Berechnungen parallel (was unmöglich ist, natürlich), und bekommen alle Strom diese Bergleute kostenlos, weil unser Onkel passiert einfach kaum mit seinem Atomkraftwerk, vor kurzem, wie auch immer, wir müssen immer noch warten 7.28656032*10^35 / (3*10^18) = 2.42885344*10^17 Sekunden pro UTXO in der Lage sein, es zu stehlen.

Zum Glück für uns, dass nur 7'701'843'734 Jahre , die kaum mehr als halb so alt ist wie das Universum. Ich denke, wir haben das 1 UTXO. Dann, wieder, unsere Annahmen waren ziemlich großzügig. Es wird wahrscheinlich ein wenig länger, um halt zu bekommen, dass 1 UTXO. Die meisten der großen UTXOs sind wahrscheinlich nicht einmal gespeichert in HD Brieftaschen, sondern in Kühlhäusern statt, so haben wir noch weniger hoffen, dass man von Ihnen halten, aber was solls.

+803
Daniel A Alexandrov 24.06.2010, 13:56:23

Ich versuche meine Kenntnisse zu erweitern von bech32 und SegWit und zu diesem Zweck arbeite meinen Weg durch diese Erklärung.

Hier ist eine hypothetische situation, in der ich versuche zu verstehen. Lassen Sie uns sagen, Jamal, hat Zugriff auf ein ein paar UXTOs.

UXTO #1: 10 BTC (P2PKH)
UXTO #2: 10 BTC (P2WPKH)

Weitere, sagen wir mal Jamal schicken will, 11 BTC zu Tyrone. Tyrone bietet eine bech32 Adresse BC1_XXX.

Also, wenn Jamal baut seine Transaktion, würde er haben:

Eingänge: 
 UXTO#1 10 BTC (P2PKH)
 UXTO#2 10 BTC (P2WPKH)

Ausgänge
 BC1_XXX 11 BTC
 BC1_CHANGE 9 BTC (eine neu erstellte P2WPKH-Adresse)

(unter der Annahme von null Transaktionskosten in diesem Beispiel)

Ist es akzeptabel, mix P2PKH und P2WPKH Eingänge in der gleichen Transaktion, wie oben beschrieben? Keines der Beispiele, die ich angezeigt haben, so weit habe bedeckt dieses Szenario.

und weiter...

In Bezug auf den Artikel hier: Es zeigt, dass es zwei unterstützte Transaktions-Formate:

(a) nVersion|txins|txouts|nLockTime
(b) nVersion|Markierung|Flagge|txins|txouts|Zeuge|nLockTime

...und dann später heißt es:

Wenn alle txins in einer Transaktion, die nicht mit einem Zeugen Daten, die Transaktion serialisiert werden MUSS in der ursprünglichen Transaktion format, ohne Markierung, Kennzeichen und Zeugen. Zum Beispiel, wenn keiner der txins kommen aus segwit UTXO, es MUSS serialisiert werden, in der ursprünglichen Transaktion format. (Ausnahme: coinbase-Transaktion)

Meine Fragen sind:

Wenn würde ich auf eine situation stoßen, wo "alle txins in einer Transaktion, die nicht mit einem Zeugnis-Daten"? Er sagt, diese situation würde sich ergeben, wenn "keine der txins kommen aus segwit UTXO". Aber selbst in dem Fall, wo die Eingänge kamen ausschließlich aus P2PKH (nicht P2WPKH) UTXOs, ich würde nicht noch Zeuge der Daten (d.h. die Signaturen) werden müssen "getrennt" in der "Zeuge" Teil der Transaktion? Oder ist es zu sagen, dass, wenn alle Eingänge sind nicht segwit, es bedeutet, dass die Transaktion selbst ist nicht segwit, und ich sollte daher-format (a) -- trotz segwit Ausgang(s)?

+802
Donald Priest 30.04.2014, 23:17:18

Vor kurzem erhielt ich $500 USD Guthaben für den Handel mit Coinsetter, ein NYC-basierte bitcoin-exchange, so dass ich beschloss, Sie zu nutzen und codiert ein bitcoin trading bot für mich (nie getan haben, so etwas vor); das problem Das ich habe ist jetzt, dass mein bot zu sein scheinen", kaufen höher, Verkauf niedriger" und ich weiß nicht, warum, sehen Sie:

Wenn ich mich im bot-logs, bekomme ich so etwas wie dieses:

bot_log

Die Preise dort sind die Preise, zu denen die market order angefordert wird, (was einen ungültigen Preis als argument für die API-Anforderung angeblich Ergebnisse in eine fehlgeschlagene Bestellung, so bitte ich die live-Preis die erste von coinsetter zweimal , bevor ich einen kaufen/verkaufen-Betrieb); ABER wenn wir gehen, um die coinsetter Transaktion Geschichte haben wir dies:

coinseter_history

Jedes mal also, wenn ich einen KAUFEN, ich Pumpe den Markt, und jedes mal, wenn ich eine verkaufen ich dump es, wie können diese vermieden werden? Würde ich kaufen, lieber auf die niedrigeren Preise und den Verkauf auf den höheren.

P. S. eine Weitere Frage wäre: Was denken Sie, ist der Reale Preis, zu dem ich kaufen/verkaufen? Der Preis, den ich VERLANGEN oder den Preis coinsetter sagt mir es ist die Geschichte?

Vielen Dank für Ihre Beratung.

+760
user2881 03.02.2010, 00:23:40

Es gibt ein Feld namens "Signatur-script" in den Eingängen.Signatur-Skript enthält die sender ' s voll (unhashed) public key finden Sie unter:Bitcoin Developer Guide.Erhalten Sie die sender die wallet-Adresse aus dem öffentlichen Schlüssel. In den Ausgaben gibt es ein Feld namens "pubkey " script" enthält die Empfänger der wallet-Adresse.

+695
Strategy Thinker 02.01.2012, 23:49:03

Ah, Sie generieren, nach einer Sekunde, die Sie kann, wie viele Sie generiert. Wenn das zu zufällig (Generierung einer dauert zu lange), generieren Sie für 10 Sekunden, zählen, dividieren Sie durch 10.

Ist das so schwer? Zählen Dinge, dividiert durch die Zeit sind ziemlich offensichtlich, oder?

+660
Shrinath Kumar 26.03.2013, 21:12:54

Zur Vermeidung der Probleme, die die aktuelle SSL-Zertifikat-Infrastruktur, die Electronic Frontier Foundation hat vorgeschlagen, Sovereign Keys, die angezeigt werden, unterstützt durch eine verteilte, nur Anhängen-datastructure, die wachsen können Hunderte von Gigabyte. Das klingt schrecklich vertraut-block-Kette. Gibt es ähnlichkeiten zwischen Souveränen Schlüssel und Bitcoin (oder Namecoin)? Tun Sie beschäftigen eine weitere Möglichkeit oder ist dies nur eine oberflächliche ähnlichkeit?

+648
adsilcott 19.09.2018, 09:01:59

Mithilfe von Ausschlussverfahren , ich würde so etwas tun.

Zuerst würde ich neu installieren, Ihre Bitcoin-wallet und sehen, ob es funktioniert. Wenn es richtig funktioniert, da war wohl ein Bitcoind-Konfiguration-Datei, die Durcheinander herum mit in Ihre original-Installations-oder Sie verwenden eine veraltete version.

Wenn es immer noch nicht funktioniert, installieren Sie eine Bitcoin-wallet auf einen anderen computer in Ihrem Netzwerk und sehen, ob es funktioniert. Wenn es funktioniert, als wahrscheinlich, es war etwas falsch mit der Windows-Konfiguration (vielleicht firewall oder antivirus-Programm blockiert den Zugriff). Wenn es nicht funktioniert, es ist etwas falsch mit Ihrem Netzwerk (möglicherweise ein problem in deinem router oder internet-provider)

On a side note, ich würde nicht empfehlen, läuft eine Brieftasche auf Windows XP, wenn Sie planen, zu halten alle Bitcoins auf, weil Sie unglaublich unsicher, da Windows aufgehört, ihn zu unterstützen.

+638
Cruel Aristocrat 23.12.2010, 21:18:03

Ich versuche, herauszufinden, wie Sie ein Trezor für meine Bedürfnisse. Ich würde gerne verschiedene "Ebenen" der Sicherheit, so dass mein plan ist, verwenden Sie dieses setup (weniger sicher on top):

  1. Online-Geldbörse für jeden Tag-Nutzung (1%)
  2. Trezor mit passphrase Einen angeschlossenen online-computer (19%)
  3. Trezor mit passphrase B verbunden offline-computer (80%)

Meine Frage ist: macht es Sinn auf verschiedene Ebenen 2 und 3 im online-und offline-Computer? Ich gehe davon aus, dass die Trezor nicht speichern Sie die passphrase mithilfe der passphrase B nur in einer sicheren offline-Rechner zum signieren von Transaktionen in dieser Schicht ist viel sicherer.

Danke!

+554
dominika27 08.08.2011, 16:16:34

Ist es möglich zu überprüfen, oder überprüfen, ob ein Austausch (für zB. mnt gehex), um zu bestimmen, wie viel bitcoin als Sie an Einlagen haben?

Sie könnten zum Beispiel veröffentlichen ein oder mehrere bitcoin-wallet-Adressen und die durch die Prüfung des block-Kette der Gesamtbetrag der bitcoin gehalten verifiziert werden konnte.

+513
no47ki 03.07.2014, 21:26:45

ive hatte das gleiche problem für die letzten 5 Stunden. war besorgt, dass es ws nur mich, aber ich nehme an, andere mit dem gleichen problem. könnte ein nanopool back-end-Thema. hoffe Sie beheben es bald für uns. nanopool verhält sich ein wenig in der letzten Zeit und ich hoffe, dass Ihr nicht etwas, permanent mit Ihnen, als Sie bisher ganz gut.

+434
Drudge 23.01.2013, 06:40:28

Ich kaufte vor kurzem einige Ark und ich an mein Ledger Nano S. ich sah Sie dort, nachdem die übertragung abgeschlossen war, so bin ich sicher, Sie waren auf meinem Ledger Nano-S. Dann nahm ich eine Stellvertretung und für ihn gestimmt. Das war vor einer Woche. Jetzt habe ich öffnete meine ledger in der Arche app und ich kann nicht sehen, keine Arche in jedem meiner Brieftaschen. Wie ist das möglich?

Wenn ich mich öffne die blockchain-explorer, dann sehe ich immer noch die Transaktionen in die Brieftasche, aber der client zeigt nicht das Gleichgewicht.

+414
user255113 05.05.2010, 01:58:20

Ich glaube, ich wurde verwirrt in der gleichen Weise, wahrscheinlich aufgrund der, wie der aktuelle bitcoin-wiki auf Transaktionen geschrieben, so dass ich denke, ich kann erklären.

In jede Bitcoin-Transaktion, gibt es einen Eingang und Ausgang. Die Ausgabe enthält die Bitcoin-Skript (Anweisungen für den Versand) so enthält der receiver die Bitcoin-Adresse. Eingabe enthält einen Verweis auf die Letzte Ausgabe, wo die Bitcoins gesendet werden aus, zusammen mit einer Unterschrift, um zu beweisen, dass der sender gehört, dass-Adresse. Also sagen wir, wir haben zwei Transaktionen. A und B.

[Eingang Ein - / Ausgabe A] -> [Input B (Referenzierung Output A / Output B]

Wenn eine Bitcoin-Knoten erhält die Transaktion B, es läuft ein Skript mit output A und Input B (Eingang B auf dem stack, und der Ausgabe Einer auf der Unterseite). Es scheint, dass Sie denken, dass das script ausgeführt wird auf Eingang B und Ausgang B, aber das wäre eindeutig fehl beim ausführen OP_EQUALVERIFY.

+394
Rohit Sharma 08.05.2011, 11:23:54

Diese situation würde nicht existieren. Stimmt market orders (kaufen oder verkaufen) kann nicht nur "hängen" um. Wenn Sie nicht sofort ausgeführt, gegen vorhandene limit-orders, dann sollten Sie gekündigt werden. Der Fall, in dem Sie nicht ausgeführt werden würden, wenn es keine Aufträge auf der anderen Seite. In dem Fall hängt es davon ab, wie das system verarbeitet die Bestellungen, aber es sollte entweder sagen, es kann nicht füllen Sie es und legen Sie niemals den Auftrag zu beginnen.

+325
Lydia Neuman 22.05.2016, 02:30:07

Ich bin mir bewusst, dass eine normale bitcoin-Transaktion kann nicht rückgängig gemacht werden einmal ausgestrahlt und bestätigt auf dem Netzwerk. Meine Frage ist ob es möglich ist, erstellen Sie eine seltsame Transaktion mit einer ungewöhnlichen einlösen script, das erlauben würde, den Absender auf Rückseite der Transaktion, wenn Sie diese Angaben.

Die wallet-software kann nicht akzeptieren, diese Transaktion als auszuschüttende aber egal wie, es soll eine ungewöhnliche Transaktion. Letztlich ist meine Frage, ob eine solche Transaktion überhaupt möglich ist, aber wenn nicht, wie würde ich mich über erstellen?

+289
Bundae Sahal 30.03.2014, 15:18:53

Ich denke, das ist ein falscher Eindruck. Der code beteiligt, die in CVE-2018-17144 relativ neu ist (die UTXO handling logic geschrieben wurde, die in 0,8 (veröffentlicht Februar 2013), und unterzog sich ein paar kleine änderungen nach, und eine große Verbesserung 0.15). Wenn du mit "original-code", Sie beziehen sich auf den code geschrieben, die von Satoshi, ist von diesem Problem nichts zu tun haben, als ziemlich wenig code übrig ist.

Das Problem war nicht, dass der code nicht verstanden wurde. Es ist, dass es war nicht klar, welches Stück code war verantwortlich für das, was.

Aus performance-Gründen -, block-Validierung ist aufgeteilt in mehrere Etappen; einige laufen, wenn der block zuerst erhalten, einige später ausführen, wenn er tatsächlich ein Kandidat für immer Teil der besten Kette ("Aktivierung"). Das Allgemeine Prinzip ist, dass Sie versuchen, die Arbeit verschwendet, die auf die überprüfung einen ungültigen block proportional zu der Arbeit, die ein Angreifer zu tun hat. Um dies zu erreichen, überprüfen Sie die Dinge, die Billig gefälschte erste, und die Dinge, die teuer sind gefälschte später.

Einer von denen überprüft wurde, ob es doppelt verbringt innerhalb einer Transaktion. Zunächst wird der check gemacht wird, wenn der block empfangen wurde, direkt, und eine Plausibilitätsprüfung während der Aktivierung. In 0.14, in einer performance-Verbesserung, die Prüfung im ersten block wurde entfernt, da es wurde der kritische Pfad für die Validierung des kompakten blocks. Das war falsch; stattdessen entfernen Sie den code, sollte es gewesen bewegt zur Zeit der Aktivierung, aber es schien, dass der Aktivierungs-code schon dabei war diese zu überprüfen. In 0.15, wenn die UTXO-handling-code wurde umgeschrieben, diese überprüfung an die Aktivierungszeit wurde entfernt, weil es nicht zu sein scheinen, tatsächlich Teil der Validierungs-code.

Der Fehler aus meiner Sicht war, dass das aufteilen der Verantwortung für diese Art von double-spending-check wurde nicht naheliegend und sollte dokumentiert werden. Ich war weitgehend verantwortlich für diese. Mehrere Verfahren sind an Ort und Stelle zu helfen, verhindern, dass Fragen dieser Größenordnung, einschließlich einer manchmal störend langsam review-Prozess und funktionale tests (die übung Doppel-Ausgaben, ... nur kein double-spending-in-one-Transaktion). In diesem Fall, die Verfahren gescheitert.

Der rest meiner Antwort ist meine persönliche Meinung, da ich nicht denke, ich spreche für alle anderen.

gibt es Teile der bitcoin-source-code, die "Unberührbaren"?

Nein. Sicherlich einige Teile sind noch gefährlicher zu ändern, aber es ist alles eine Frage von Kosten vs. nutzen. Die änderungen in 0.15 waren sehr gerechtfertigt performance-Verbesserung, und bekam eine Menge Augen, aber nicht genug. Für die Zukunft denke ich, dass dies bedeutet, dass die bar für die überprüfung und tests, vs der mögliche Gewinn muss überprüft werden, für änderungen, berühren Sie diese UTXO-handling-code.

Wie viel Magie es in der source-code, die Teilnehmer benötigen, um genau herauszufinden, vorhanden ist?

Ich glaube nicht, dass es keine Magie. Sicherlich nicht alle Logik ist ebenso einfach zu verstehen, aber das gilt für jedes software-Projekt.

Wenn bitcoin brach, würde die core-Teams bei der Gelegenheit zu springen, um neu bitcoin

Meine persönliche Meinung ist, dass das umschreiben etwas aus dem nichts, ist um Größenordnungen schwieriger zu tun korrekt, als die kleine, inkrementelle änderungen, sind individuell verlängerbar. Beachten Sie, dass die bar für die Richtigkeit im Konsens der code ist extrem hoch: nicht nur muss Sie es akzeptieren, werden alle gültigen Blöcke, muss es auch ablehnen, alle ungültigen Blöcke. Diese Art von Konsistenz zwischen codebase ist extrem schwer zu pflegen. Die meisten reimplementations der Bitcoin ist Konsens Regeln gehabt haben, eine oder ein paar schwere Fehler in Ihrer Geschichte, und ich wäre nicht überrascht, wenn die meisten von Ihnen haben noch nicht genau die gleiche Logik in allen Fällen.

bitcoin mit den neuen features (mast, Tippen Sie auf, schnorr) etc.

Zum Glück, die Dinger sind sehr gut isoliert Veränderungen mit einer einfachen Schnittstelle zum rest des Systems. Skript Validierung ist ziemlich einfach nur ein "rufen Sie eine Funktion mit dem output und input, ohne viel von einem anderen Zusammenhang, und true oder false zurückgeben". Es gibt auch naheliegende Möglichkeiten zur Einführung von abwärtskompatible änderungen: fügen Sie einfach zusätzliche "return false" Aussagen, dass es nicht zu ändern alle anderen Variablen.

Ist die Beschreibung der source-code als mit einem Krebs-Zentrum eine riesige übertreibung, oder ist es spielerisch genau?

Ich möchte nicht wissen, was das Zentrum sein würde, so dass ich denke, es ist eine übertreibung.

Die Idee ist, aktuelle Mitwirkenden arbeiten rund um den alten code wie das gehen auf Eierschalen genau?

Berühren Konsens code ist immer zu Fuß auf Eierschalen, aber das bedeutet nicht, dass es nicht sollten, oder nicht getan werden kann. Ich glaube auch nicht, es würde anders sein, wenn der code hatte eine andere Geschichte - Konsens der Korrektheit ist nur ein hartes problem.

+232
user956159 26.11.2018, 06:33:11

Ich möchte zur Ausgabe werden einige Befehle in die Bitcoin-qt-Konsole und speichern Sie Ihre Ausgabe in eine text-Datei (am besten als filter vor dem speichern). Gibt es eine Möglichkeit, das zu tun, ähnlich wie die, die ich verwenden würde, grep und > in einem normalen Linux terminal?

+187
ferretboii 26.04.2014, 09:08:34

Blockchain

[m1]-> [m2] -> [m3] -> [m4]

 | -> [f1] -> [f2] -> [new]
  • m - mainchain Blöcke
  • f - Gabel blockiert
  • neu - Tipp der Gabel, die in größerer Höhe als die Vorherige mainchain

In diesem Fall müssen wir wechseln von der mainchain auf die Gabel, wegen der Höhe der forkchain größer als die mainchain.

Meine Frage ist, über die Transaktionen in blocks [m3], [m4]. Im Falle einer Transaktion wurde in [m3], jedoch nicht in entweder die Blöcke [f1],[f2]. Da diese Transaktion nicht bestätigt, in den neuen mainchain (die forkchain) nach dem Schalter, würde das tx verfügbar sein für die Bergleute wieder für den nächsten block? Würden diese Transaktionen zurückgegeben werden, um die rawmempool?

Und was ist, wenn diese Transaktion Hinzugefügt wurde, ohne isStandard überprüfen (im Falle dass hinzufügen im block), sollten wir verarbeiten isStandard überprüfen Sie für diese Transaktion?

+162
Arturchiki 29.06.2018, 17:23:02

Wenn Sie mit bitcoin core-daemon auf dem server, wird es eine Brieftasche.dat, die Sie verschlüsseln kann (mit der encryptwallet Befehl), mit dem privaten Schlüssel. Also dann kann man nur sichern, dass die wallet-Datei und Ihre privaten Schlüssel wird sicher sein, solange Sie haben die Sicherung und der Entschlüsselungs-Schlüssel für die Brieftasche

+105
Zina 17.03.2018, 17:59:42

Wenn eine neue Transaktion erfolgt, scheint der client bevorzugen ältere Münzen in der Brieftasche.

Was ist der Grund dafür? Gibt es irgendwelche Fälle, in denen es nicht sinnvoll ist, streng sammeln Münzen durch das Alter?

+90
Sabu Edava 22.04.2012, 06:10:45

BitInstant hat zusammen mit einer bereits existierenden payment-Prozessor. Diese Zahlung Prozessor ist so konzipiert, dass diese ohne Kreditkarte online einzukaufen. Die Weise, die es funktioniert, ist, dass Sie Ihre Einkäufe, check-out und ein besonderer Empfang wird erzeugt, mit einer Transaktions-ID. An diesem Punkt wird die Transaktion in eine "pending" - Zustand, warten auf Zahlung. Nehmen Sie diesen Eingang an einem teilnehmenden Standort (Tausende weltweit), überprüfen Sie die Transaktions-ID aus dem Eingang und Ihr Geld und dann den Abschluss der Transaktion.

Kauf von bitcoins via BitInstant ist wirklich nicht anders, außer, dass Ihr "Warenkorb" enthält Bitcoins.

+65
Anale PogChamp 02.04.2014, 02:42:17

Immer wenn ich versuche zu installieren, durch ausführen von "make" es gibt mir Tonnen von Fehlern.

$ make
cc -ggdb -O3 -Wall -c -o-Muster.o-Muster.c
Muster.c:32:18: Fehler: pcre.h: No such file or directory
Muster.c:1604: Fehler: expected specifier-qualifier-list before 'pcre'
Muster.c: In function 'vg_regex_context_add_patterns':
Muster.c:1623: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1625: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1626: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1636: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1637: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1638: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c:1641: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1642: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1643: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1643: Fehler: "pcre" schwarzarbeit (erste Benutzung in dieser Funktion)
Muster.c:1643: Fehler: (Jeder nicht deklarierte Bezeichner wird nur einmal berichtet
Muster.c:1643: Fehler: für jede Funktion erscheint in.)
Muster.c:1643: Fehler: expected expression before ')' token
Muster.c:1644: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1644: Fehler: "pcre_extra" schwarzarbeit (erste Benutzung in dieser Funktion)
Muster.c:1644: Fehler: expected expression before ')' token
Muster.c:1645: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c:1646: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1651: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1652: Warnung: implizite Deklaration der Funktion "pcre_compile'
Muster.c:1654: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1667: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1668: Warnung: implizite Deklaration der Funktion "pcre_study'
Muster.c:1668: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1671: Warnung: implizite Deklaration der Funktion "pcre_free'
Muster.c:1671: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1674: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c: In function 'vg_regex_context_clear_all_patterns':
Muster.c:1692: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1693: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1694: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c: In function 'vg_regex_context_free':
Muster.c:1706: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Muster.c:1707: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c: In function 'vg_regex_test':
Muster.c:1723: Fehler: "pcre" schwarzarbeit (erste Benutzung in dieser Funktion)
Muster.c:1723: Fehler: "re" schwarzarbeit (erste Benutzung in dieser Funktion)
Muster.c:1764: Warnung: implizite Deklaration der Funktion "pcre_exec'
Muster.c:1764: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1765: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1771: Fehler: "PCRE_ERROR_NOMATCH" schwarzarbeit (erste Benutzung in dieser Funktion)
Muster.c:1779: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1783: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1788: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c:1797: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1798: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1799: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1806: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1806: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1807: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1808: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_extra'
Muster.c:1809: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c:1809: Fehler: "vg_regex_context_t' has no member named 'vcr_regex_pat'
Muster.c: In function 'vg_regex_context_new':
Muster.c:1840: Fehler: "vg_regex_context_t' has no member named 'vcr_regex'
Muster.c:1841: Fehler: "vg_regex_context_t' has no member named 'vcr_nalloc'
Hersteller: *** [Muster.o] Fehler 1
+61
user418983 04.03.2013, 00:39:59

Bitcoin ist ein Netzwerk-Protokoll, dass alle Knoten verwenden, um miteinander zu kommunizieren. So lange, wie eine software kann sprechen, dass das Protokoll, es kann dem Netzwerk beitreten. Da Bitcoin-Core ist open-source, die die Protokoll-Informationen sind frei verfügbar für jedermann zu sehen und zu implementieren, die sich an anderer Stelle. Die Protokoll-Informationen sind auch beschrieben auf bitcoin.org.

+55
Andrew997 12.11.2016, 03:27:41

Meine bitcoind client, läuft auf testnet hat begonnen, die Rückkehr viel Fehler heute. Es wurde damit für ein paar Stunden (Stand: 2014-08-29 9:50 UTC).

Wenn ich es über RPC, bekomme ich die folgende Antwort auf ALLE Anfragen

{
"Ergebnis":null,
 "error": {
"code":-2,
 "message":"Abgesicherten Modus: Warnung: Das Netzwerk scheint nicht zu Stimme voll und ganz! Einige Bergleute erscheinen, werden Probleme haben."},
"id":"1"
}
}

Es scheint nicht zu sein herunterladen neuer Blöcke. Es scheint, dass ich bin nicht der einzige, der betroffen ist. Wie jetzt, http://tbtc.blockr.io/ ist auch fest auf die Blöcke, das sind fast 5 Stunden alt.

Die version von bitcoind ich benutze, ist 0.9.2.1, und der debug-log sagt:

2014-08-29 05:11:59 ProcessBlock: ORPHAN BLOCK 0, prev=0000000000000e819b253066739275290fb4274b580bf62fbd279c518e6e2ebd
2014-08-29 05:11:59 ProcessBlock: ORPHAN BLOCK 1, prev=0000000000000e70d898fa12f328b9ee2d97912e9a495fc80eaeeb781096cadf
2014-08-29 05:11:59 ProcessBlock: ORPHAN BLOCK 2, prev=000000000000256194246bdabb62d3b50e2c309217258b17c543d13ec839367c
2014-08-29 05:12:00 CheckForkWarningConditions: Warnung: Große gültig Gabel gefunden
 die Verzweigung der Kette in der Höhe 277766 (000000009cf297bc2a9610af823b49fc1d98e001239e99204c3c410e1ad3fe54)
 nachhaltig bis Höhe 277767 (0000000000000e819b253066739275290fb4274b580bf62fbd279c518e6e2ebd).
Kette-state-Datenbank Korruption ist wahrscheinlich.
2014-08-29 05:12:00 UpdateTip: neue beste=00000000735de11454d7de10a71a14e9695135f59b70a4eb906b1107df842270 height=277770 log2_work=61.959615 tx=2398741 date=2014-08-29 05:20:26 progress=1.000001
2014-08-29 05:12:00 UpdateTip: neue beste=00000000e9cc8d1bea3894d11cd4bacf4099dac3b644cb4f39b4ba3ad89ed2f8 height=277769 log2_work=61.959615 tx=2398732 date=2014-08-29 05:00:09 Fortschritt=0.999999
2014-08-29 05:12:00 UpdateTip: neue beste=00000000d553cd36cc43b3d1255ec395c05e1d4ad730178cd987e960931399ae height=277768 log2_work=61.959615 tx=2398721 date=2014-08-29 04:39:40 Fortschritt=0.999997
2014-08-29 05:12:00 UpdateTip: neue beste=0000000000000f46520ca51be43443905945d2db5b513f35c2283c2d95a41077 height=277767 log2_work=61.959615 tx=2398683 date=2014-08-29 04:19:31 progress=0.999995
2014-08-29 05:12:00 UpdateTip: neue beste=000000009cf297bc2a9610af823b49fc1d98e001239e99204c3c410e1ad3fe54 height=277766 log2_work=61.959004 tx=2398667 date=2014-08-29 04:16:35 Fortschritt=0.999995
2014-08-29 05:12:00 UpdateTip: neue beste=0000000000000e819b253066739275290fb4274b580bf62fbd279c518e6e2ebd height=277767 log2_work=61.959615 tx=2398670 date=2014-08-29 04:15:08 Fortschritt=0.999995
2014-08-29 05:12:00 UpdateTip: neue beste=0000000000000e70d898fa12f328b9ee2d97912e9a495fc80eaeeb781096cadf height=277768 log2_work=61.960226 tx=2398674 date=2014-08-29 04:24:20 Fortschritt=0.999996
2014-08-29 05:12:00 CheckForkWarningConditions: Warnung: Große gültig Gabel gefunden
 die Verzweigung der Kette in der Höhe 277766 (000000009cf297bc2a9610af823b49fc1d98e001239e99204c3c410e1ad3fe54)
 nachhaltig bis Höhe 277767 (0000000000000e819b253066739275290fb4274b580bf62fbd279c518e6e2ebd).
Kette-state-Datenbank Korruption ist wahrscheinlich.

Was bedeutet diese Meldung? Wie wird eine Gabel von einem einzelnen block ein "großes gültigen Gabel"? Warum ist dieser, dass dies scheint komplett einzufrieren bitcoind? Wie kann ich es beheben?

+27
dmcgill50 24.08.2010, 11:20:23

Fragen mit Tag anzeigen