BIP91 Aktivierung Zeit

Ich verstehe, dass BIP91 muss 269/336 signalisiert Blöcke.
Meine Frage ist, ist es ein rollendes Fenster von jedem 336 Blöcke oder gibt es Aktivierungs-Zeiten von 336 Blöcke beginnen und enden zu bestimmten Nummern blockieren?

+871
Nj van as 03.07.2019, 16:22:38
29 Antworten

Ich habe schon mit einem kleinen Betrag an bitcoins auf Coinbase und bin zu entscheiden, um es in der Brieftasche.

Ich wollte vorbereitet sein für die Bitcoin Gold Gabel kommen bis in den Oktober und war neugierig über den besten Ansatz, um darüber zu gehen, so daß ich irgendwann mein äquivalent Bitcoin Gold (anstelle von Spenden für den Austausch)!

Wenn ich meine BTC aus der exchange/Coinbase und in eine Brieftasche, die ich jetzt offiziell eigene es, da ich den privaten Schlüssel.

Wenn ich wollte, um nutzen zu empfangen Bitcoin Gold ist, möchte ich diesen Schritt machen, bevor Oct 25 (offensichtlich smart, um es zu bewegen, um eine Brieftasche sowieso, aber ich schweife ab..)

Danach bin ich ein wenig verwirrt, was zu tun ist, um tatsächlich Holen Sie sich die BTG. Ich verstehe, jemand braucht, um es zu unterstützen, aber das, was jeder andere auch tun?

Danke, hoffe mir kann jemand klären, wie Sie Vorgehen!

+985
Sun Lite 03 февр. '09 в 4:24

Könnte jemand sagen, wenn der Ubuntu-Server hat keine Vorteile gegenüber der Ubuntu-Desktop für den Bergbau?

Im Grunde, hier ist erklärt, dass es keinen großen Unterschied da, dass der Server und Desktop sind verschiedene durch die ersten Pakete installiert haben.

Ich Frage mich:

  1. wenn Energie eingespart werden kann, da Sie nicht mit der grafischen Umgebung
  2. wenn die GPU würde haben eine bessere Leistung im Fall mining PC verwalten durch die SSH-Verbindung mit einem monitor verbunden ist es bei der Verwendung von Ubuntu-Desktop
  3. wenn die mining-PC besser funktionieren wird - habe ich bemerkt, dass einige Symbole (wie updates) sind nicht ansprechbar auf meinem Ubuntu-Desktop nach 24 Stunden mining ein

Alle anderen vor-und Nachteile über die Verwendung der server-Versionen gegen desktop-version, die jeder teilen kann, wird hilfreich sein.

+978
Alexis1988 05.04.2017, 04:42:18

Die anderen Antworten sind nur teilweise richtig. BitCoin verwendet ECDSA-Schlüssel zu sichern Brieftaschen. Ihre öffentliche Adresse wird einfach der öffentliche Schlüssel des Schlüsselpaars ist, und Ihrem "Geldbeutel" hat den privaten Schlüssel für jede öffentliche Adresse (Hinweis: ist es nicht zeigen Sie diesen Schlüssel, wie zu viele Menschen machen dumme Sachen mit ihm). Derzeit gibt es keine praktischen Mittel, um umzukehren, einen öffentlichen Schlüssel zu finden der private. Also Münzen gesichert durch den Verlust eines privaten Schlüssels (bei Verlust der Geldbörse oder anderweitig) nicht zugänglich sind.

Allerdings ECDSA ist anfällig für Shor ' s Algorithmus. Quantum-Prozessoren sind beschränkt auf 4-qubits Letzte, was ich sah, so BitCoin 256-bit-Schlüssel sind vorerst sicher. Schließlich Quantum-Prozessoren auf den Punkt kommen, wo Sie knacken kann 256-bit ECDSA. Nur bevor das passiert BitCoin hat einen eingebauten Mechanismus, um zu verkünden, dass ein neues Adresse-Algorithmus startet jeder verwenden, und das Leben ist gut noch. Direkt nach diesen Prozessoren verfügbar sind, jemand wird zweifellos nutzen Sie zu knacken, die Brieftaschen, die nicht aktualisiert wurden, und ergreifen Sie die BitCoins, wieder in Umlauf.

Ich bin mir nicht sicher, ob dies ein beabsichtigtes "feature" des BitCoin. ECDSA war das beste, was wir hatten, (immer noch der beste von den gut cryptanalyed algorithmen, wie Sie schreiben), aber wir haben seit einiger Zeit bekannt, dass eines Tages Quanten-Prozessoren wäre es obsolet. In jedem Fall ist es wahrscheinlich, dass 256-qubit-Prozessoren wird nicht verfügbar sein für ein Jahrzehnt, vielleicht mehr, also nichts zu befürchten, für eine Weile.

+928
user67460 17.08.2013, 22:01:48

Ich bin versucht zu implementieren bitcoin Zahlungen für das Projekt, an dem ich gerade arbeite, und ich brauche zum erstellen einer bitcoin-wallet, das sollte drin sein, ein USB-stick. Dieser USB-stick sollte in den Händen der Projektleiter und jeder Entwickler, der will testen bitcoin-Zahlungen sollten Fragen, für die USB, stecken Sie es auf Ihren computer, machen Sie eine Zahlung mit, der Geldbeutel und gibt ihn zurück. Da das Portemonnaie gefüllt wird, die mit dem Unternehmen Geld für Testzwecke, können wir nicht nur unseren persönlichen Geldbeutel.

Was ich tun möchte, ist, dass die blockchain in einem freigegebenen Ordner im Netzwerk, in einem Ort, es ist zugänglich von allen dev-Maschinen, und zur gleichen Zeit mit einem einzigen Brieftasche, in dem der USB-stick nutzbar sein soll von allen.

Also meine Fragen sind:

  1. Ist das überhaupt möglich?
  2. Ich weiß, dass ich einstellen kann das Daten-Verzeichnis auf Bitcoin Core mit der datadir="/data/Verzeichnis/was auch immer", aber für diese zu arbeiten, werde ich vermutlich benötigen Sie eine externe Festplatte statt eines usb-Sticks, da diese auch Punkte, um die Lage der blockchain. Kann ich das irgendwie einstellen das wallet-Ordner getrennt von der blockchain-Ordner?
  3. Wenn bitcoin-core macht es nicht, gibt es einen anderen client, ermöglicht dies geschehen kann, ohne die Nutzung einer externen Dienstleistung?
+812
Ivan Koshkin 06.09.2015, 07:08:44

Ich bin der CEO der Crypto-Straße, so kommen wir damit aus dem Weg. Ich schrieb vor kurzem einen blog-post über diesem erklärt. Aber das wesentliche ist, dass wir eine Seite von standard Finanzmärkte:

Im Devisenmarkt werden Währungen angezeigt werden als was bekannt als ein Währungspaar. Trades erfordern, dass eine Währung sein für einen anderen ausgetauscht werden, im Verhältnis zu den zitierten-pair-Mädchen. Als Beispiel betrachten wir den USD/JPY, die zu dem Zeitpunkt von diesem post ist Betrug nach drei Jahren 98,74. Was das bedeutet ist, dass, um zu kaufen 1 USD, müssen Sie Betrug nach drei Jahren 98,74 JPY. Generell sind die stärkere Währung notiert erste, so dass man kann leicht verstehen, wie viele der kurswährung einer müssen kaufen die Basiswährung. Wenn wir reveresed es, und statt zitiert JPY/USD, würde dies bedeuten, dass zu kaufen 1 JPY würde ich geben müssen 0.01012760785902 USD. Das ist viel schwieriger intuitiv zu erfassen sind, als Betrug nach drei Jahren 98,74!

+779
swhvcj 01.02.2015, 18:56:06

Bit 31 ist manchmal schwer Gabel bit.

BIP34 setzen, ist eine Beschränkung auf zahlen version 2 oder höher. Als der block-version ist ein 32-bit-Ganzzahl mit Vorzeichen, die Einstellung seiner höchsten bit-Ergebnis in eine negative Zahl, gegen BIP34.

Als ein Ergebnis, eine Verwendung, die bit-Ergebnisse in einer rückwärts-inkompatible änderung an den Regeln - eine harte Gabel - das ist offensichtlich für alle Teilnehmer im system.

+749
gimaN 06.06.2015, 12:16:08

Ich möchte Experimentieren Sie mit der Bitcoin-code (sowohl Core-und das Unbegrenzte, ob es einen Unterschied macht).

Ich wollte wirklich zu verwenden CLion, aber war nicht in der Lage zu kompilieren und zum laufen bringen (etwas zu tun mit einer anderen Machen?)

Ich bin schwächer auf der "setting up stuff" - Seite, und ich in der Regel nicht mit C++, also eine ausführliche Erklärung, wie etwas zu tun, wie drucken, "Hallo Welt" jedes mal, wenn ein neuer block empfangen wird, wird mein Traum wahr.

Danke!

+714
user84546 23.08.2014, 02:13:26

Die beiden Transaktionen, die Sie verbunden waren, bestätigt in der blockchain vor einer Weile, und Ihre Ausgänge wurden seitdem ausgegeben. Sie können sehen, wenn Sie kopieren/einfügen die Adresse in einen block-explorer-website und betrachten Sie die Transaktion Geschichte.

Wenn Sie die Schlüssel zu den beiden Adressen, aber nicht verbringen die bitcoins selbst, nachdem die Transaktionen in diesen beiden Adressen, dann scheint es Ihrer Brieftasche kann kompromittiert wurden, und Ihre bitcoins gestohlen.

+701
Nick Taylor 24.10.2017, 17:14:12

Als ein willkürliches Beispiel, ist die Transaktions-id:

114be7fea4d3dd0cf2e88a8fa9a56d4ea741efbabd07d61d08cf0810be2254fd

Auch der hash verwendet wurde als die "hash Dinge zu Zeichen" für die "signature generation" für diese Transaktion?

+677
phenriverau 30.01.2014, 21:13:59

https://bitcointalk.org/index.php?topic=41718.0 Verpassen Sie nicht die Fäden links an der Unterseite der post.

Aber ich würde nicht empfehlen Tauchen rechts in, wenn Sie nicht wissen, die Grundlagen der bitcoin-Funktionen. Sie gehen zu müssen, eine Ordnung Verständnis von Kryptografie verwendet und C++, Netzwerk-und Programm-design.

+673
dattatreya 21.03.2013, 13:49:04

Während die kleinste Fraktion von bitcoins, die derzeit umgesetzt werden, ist der Satoshi (10-8 BTC oder 10 nBTC (nano-bitcoins)), wegen der Transaktionsgebühren scheint es eine minimale Menge an BTC ausgegeben werden, der größer ist als Satoshi. Was ist derzeit die kleinste Menge an BTC kann man verbringen, bei vergleichsweise wenig bis gar keine Gebühren. also, was ist derzeit die kleinste sinnvolle Einheit von Mikrotransaktionen?

+667
Pooja 19.08.2010, 04:10:35

Ich versuche zu verstehen, die Risiken für die Privatsphäre mit einem hardware wallet wie einen Trezor, Ledger, oder ähnliches. Ich verstehe die gemeinsamen workflow mit diesen Geldbörsen ist, dass Sie einen SPV bitcoin-client für die Kommunikation mit dieser hardware wallet über USB. Auf der "geben" - Seite der Dinge, ich gehe davon aus die hardware wallet Anzeichen für eine Transaktion, die der SPV-client sendet an das Netzwerk. Auf der "überprüfen Sie Salden - /Bestätigungs" - Seite der Dinge, ich glaube, dass die SPV-client wäre zu überprüfen, mit verschiedenen Knoten, wie es wäre für einen normalen Geldbeutel, also diejenigen Knoten hätte Informationen, welche-Adressen, von denen verknüpft zusammen und kommen aus einem einzigen IP-Adresse.

Ich vermute, eine Menge von dieser, so bin ich der Hoffnung, jemand kann aufklären.

+654
Enrico B 06.05.2018, 03:13:12

Weiß jemand, wie kalt ist das Coinbase cold storage?

Ich bin nicht wirklich in Coinbase aber wenn ich lese über Ihre kalten Speicher ich ein bisschen skeptisch: zum Beispiel, wie verarbeiten Sie Auszahlungen in einer cold-storage-system?

Und was bedeutet das?

Bis zu 97% der Kunden Gelder offline gespeichert werden.

Tun Sie das speichern von X BTC in Y Brieftaschen, und dann speichern die privaten Schlüssel in eine kalte Lagerung (sollte dies nicht Ansatz mehrere Transaktionsgebühren pop-out beim abheben)?

+603
user32798 08.05.2010, 00:33:50

Ausbauen Phelix Antwort, die Diskussion, die er erwähnt http://dot-bit.org/forum/viewtopic.php?f=2&t=360 ist über zwei Dinge:

  1. Das gleiche wie diese Frage - warum namecoin die Preise so niedrig sind
  2. Möglichkeiten der Anpassung der Preise in der Zukunft.

Die Antwort zu Thema 1 scheint ziemlich vernünftig, zumindest auf lange Sicht (obwohl namecoin kann nicht so lange überleben in der kurzen Frist, wenn das problem weiterhin besteht). Nämlich die Menschen, sagte, dass die Bergleute weniger namecoins generieren Blöcke, werden Sie verlangen höhere Gebühren auf Transaktionen in die Blöcke. Schließlich die Bergleute den Preis für die Registrierung basierend auf, wie schnell jemand will, einen Namen zu registrieren. Wenn Sie don ' T care, wenn es registriert ist, können Sie geben einen kleinen oder nonexistant Gebühr und Ihr name wird wahrscheinlich in einer künftigen block. Auf der anderen Seite, wenn Sie eine schnelle Registrierung, können Sie eine viel höhere Gebühr wahrscheinlich in den nächsten block. So wird in vielen Fällen Registrierung Preise werden durch den freien Markt und mein Aufstieg deutlich höher als 1 NMC.

+545
abra 25.07.2014, 21:39:15

Ist es möglich, laden Sie eine aktuelle Momentaufnahme der chainstate Datenbank?

Ich bin mit bitcoind (v. 0.11.8) auf einem Rechner mit ~1mb/s download-Geschwindigkeit. Nachdem mein client erreicht 300000 Blöcke, die Synchronisation geht wahnsinnig langsam. Ich vermute, es ist, weil die überprüfung ist sehr langsam. Der bitcoind Prozesse ist mit nahezu 100% CPU. Allerdings, für meine Zwecke, ich brauche nur einen halbwegs aktuellen (d.h., bis zu 30 Tage alt) chainstate Datenbank.

+531
Marc Turpin 17.09.2012, 10:20:33

Von Vitalik Buterin Beitrag zu "Bergbau", die er erwähnt:

Der zweite Ansatz ist etwas anders: erstellen Sie einen Mechanismus für Generierung von neuen hash-Funktionen, und stellen Sie den Raum der Funktionen, die es erzeugt so groß , dass die Art von computer ist am besten geeignet, um die Verarbeitung Sie ist per definition komplett generalisiert, dh. eine CPU. Dieser Ansatz wird die Nähe von "nachweislich ASIC-resistent" und damit mehr zukunftssicher, anstatt sich auf spezifische Aspekte wie Speicher,...

Meine Frage ist, wie würde ein solcher Mechanismus funktionieren und wie könnte es realisiert werden oder realisiert?

Was mir unklar ist, wie Sie zu einem PoW-Mechanismus, ist in der Lage, erstellen Sie einfach neue nie-vor-gesehen-hash-Funktionen auf Ihren eigenen und irgendwie haben alle Knoten im Netzwerk Ableitung dieser hashing-Algorithmus, der in einem unabhängigen, trustless Art und Weise? Eine zweite große Sorge ist, wie können Sie sicher sein, dass das abgeleitete Algorithmus ist auch kryptographisch sicher?

Beachten Sie, fand ich eine ähnliche Frage hier. Aber es gibt einen entscheidenden Unterschied: diese Frage ist in Bezug auf die Kommissionierung aus einer endlichen Menge vordefinierter kryptografisch überprüft hash-Funktionen und ändern Ihre Aufträge auf Abruf dynamisch. Die Methode Vitalik wird suggeriert, der Mechanismus ist die Ableitung eines neuen hash-Funktion, die vorher nicht existierten, und mit, dass, wie der PoW-Funktion für einen gegebenen block, die an diesem Punkt in der Zeit.

+489
Bitoma 05.11.2018, 23:53:20

Wie zu niedriger Schwierigkeitsgrad auf blockchain?

Das problem ist jetzt, manchmal einige Benutzer erstellen, die pools und die Nutzung gemietet mining-rigs zu mir auf meiner Münze. Aber nach einer Weile Sie aufhören und meine blockchain stucks zu einem bestimmten block.

Sie könnten in Ihrer erwarteten Schwierigkeit der Berechnung ein Faktor von Zeit, wo, sagen wir, zum Beispiel, alle 10 Minuten, da die zu erwartenden nächsten block-Zeit (vorausgesetzt, Sie haben ein zehn-Minuten-Durchschnittliche block-Zeit) die erwartete Schwierigkeit gesenkt, durch einen Faktor, sagen wir durch 2 geteilt.

Das problem mit dieser Methode ist, dass es kann zulassen, dass Betrug, wenn man auch gezielt Steuern, Netzwerk-Zeit. Wenn es nicht sorgfältig verwaltet dann ein cheat Einreichen könnte einen block mit Zukunft-Zeit und einen niedrigeren Schwierigkeitsgrad.

+445
Carles Arnal 22.11.2019, 00:50:30

Gibt es eine Möglichkeit, andere als importaddress, zu beobachten, Salden von bestimmten Adressen?

Importieren Sie eine Geldbörse, die exportiert wurde, in der dumpwallet - format mit der importwallet Befehl. Sie können auch importieren Sie Adressen mit importmulti und importpubkey. Aber im Allgemeinen, Nein, es gibt keinen Weg, um zu sehen Salden bestimmte Adressen im Bitcoin-Kern ohne die Verwendung eines import -* - Befehl.

Mit Bitcoin Core 0.17, können Sie die scantxoutset der Befehl scan der UTXO-set für die UTXOs, die zu einem output-Skript (definiert in verschiedener Weise).

Wenn nicht, wie ist es möglich, Brieftaschen und Forscher, um Informationen zu geben (Saldo, Transaktionen) zu bestimmten Adressen, obwohl importaddress einige Zeit in Anspruch nimmt? Denn wir haben erneut zu Scannen, früher oder später.

Portemonnaies verfolgen, diese Informationen selbst. Sie tun dies in der gleichen Weise, dass die import -* - Befehl funktioniert. import* Befehle sind wallet Befehle zu sagen, einen Geldbeutel zu behalten bestimmte Ausgabe Skripte. Sie verfolgen diese in der gleichen Weise: Scannen Sie eingehende Blöcke und Transaktionen für Ausgänge, die mit dem übereinstimmen, was Sie suchen.

Blockchain explorers nicht verwenden, Bitcoin Core, noch haben Sie die Brieftasche für diese Art von Sachen. Sie unterhalten eigene Datenbanken, die die Informationen gespeichert, die für alle Transaktionen und Ihre Ausgänge. Sie tun dies in einer ähnlichen Weise zu dem Geldbeutel, aber anstatt sich für eine bestimmte Ausgabe-Skripte, die Sie einfach speichern Sie alle output-Skripte.

+415
pruthu 13.12.2011, 02:11:42

Der Teil, der Sie fehlt, ist, dass es ist ein preorder und die aktuelle Schätzung ist, dass wenn Sie jetzt bestellen, würden Sie wahrscheinlich nicht erhalten Sie Ihre mining-hardware an, bis April 2014.

Diese Website zeigt einen guten Rechner und ich habe es konfiguriert, um zu zeigen, das (fehlende) Gewinne, die Sie machen würde, wenn Sie begonnen mining mit diesem miner ab April:

http://mining.thegenesisblock.com/a/7141b8c779

+375
Jhonatan Gongora Torrres 20.01.2019, 20:05:41

Wenn wir davon ausgehen, dass "halb-signed" bedeutet, dass beide Parteien unterzeichnen die Transaktion, dann die Verletzung Abhilfe Transaktion würden auch das verbringen aus dem anderen Ausgang in der Verpflichtung Transaktion, die würde dann auch verlangen, Bob ' s Signatur. Diese logisch Sinn macht (aber nicht ausdrücklich vermerkt ist, in das Papier), wie es wäre, reduzieren die Transaktionskosten und zu festigen UTXOs. Aber ja, du hast Recht, es gibt keine Notwendigkeit, haben beide Parteien unterzeichnen die Verletzung Abhilfe Transaktion.

Die aktuelle Protokoll-design ist tatsächlich nicht vollkommen Weg, mit der Verletzung Abhilfe und jederzeit Widerrufliche Lieferung von Transaktionen durch die Verwendung von speziellen Skripts, die für die Durchsetzung der Regeln, die diese Transaktionen durchsetzen würde durch die bestehenden. Dieses Skript verwendet die relative lock-Zeit (mit OP_CHECKSEQUENCEVERIFY) zur Durchsetzung der Widerrufliche versandregel. Es verwendet auch eine Widerrufs-Schlüssel, die erzeugt werden können durch die Partei, die die Durchführung der Widerruf nach einem Engagement Transaktion widerrufen wurde, so zu tun, Weg mit der Verletzung Abhilfe Transaktion. Die Ausgabe-Skript Bau beschrieben ist hier.

+334
iYonatan 13.02.2013, 01:59:36

Der Versuch der Umsetzung der Schnittstelle KeyCrypter ist ein würdiger übung, aber es scheint zu verlangen, mehr als ein paar einfache Zeilen code. bitcoinj bietet eine Implementierung mit der Klasse KeyCrypterScrypt und möchten Sie vielleicht einen Blick auf die Quelle-Datei für diese Klasse. Da jedoch bei dieser Umsetzung vorhanden ist, werden Sie nicht brauchen, um Ihre eigene Implementierung der KeyCrypter wenn alles, was Sie tun möchten, ist die Fähigkeit zum verschlüsseln und entschlüsseln Tasten. Dies kann wie folgt erledigt werden:

import org.bitcoinj.core.ECKey;
import org.bitcoinj.crypto.KeyCrypter;
import org.bitcoinj.crypto.KeyCrypterScrypt;
import org.spongycastle.crypto.params.KeyParameter;

public class Test {

 public static void main(String[] args){

 ECKey k1 = new ECKey(); // eine zufällige Schlüssel

 // verschlüsseln einen Schlüssel
 KeyCrypter crypter1 = new KeyCrypterScrypt();
 KeyParameter aesKey1 = crypter1.deriveKey("einige beliebige passphrase");
 ECKey k2 = k1.verschlüsseln(crypter1, aesKey1);
 System.aus.println(k2.isEncrypted()); // true

 // entschlüsseln einen Schlüssel
 KeyCrypter crypter2 = k2.getKeyCrypter();
 KeyParameter aesKey2 = crypter2.deriveKey("einige beliebige passphrase");
 ECKey k3 = k2.entschlüsseln(aesKey2);
 System.aus.println(k1.equals(k3)); // true
}
}
+209
honso 31.08.2016, 04:48:03

Betrachten wir ein Szenario, in dem 5 kryptogeld-Inhaber möchten, erstellen Sie eine Partnerschaft. Alle von Ihnen fügen Sie einen Betrag von Geld in einer Brieftasche, um die Finanzierung einer Idee. Die Brieftasche ist geteilt zwischen allen Partnern, um anzeigen und Einzahlung auf, aber in der Bestellung zurückzutreten, alle 5 (oder sogar die Mehrheit 4/5) müssen die vorgeschlagenen Transaktion geben irgendeine Art von Genehmigung. Gibt es eine kryptogeld, das könnte passen mit den oben genannten Szenario?

+184
Mustknowjoe 21.05.2019, 03:38:39

Zum zurücksetzen der peer-Datenbank auf den Ausgangszustand, stop Bitcoin Core, löschen Sie die Kollegen.dat-Datei, und starten Sie Bitcoin Core wieder.

+158
Seth Urquhart 24.05.2013, 23:44:37

Je nach Gabel.lol und Pieter ist bitcoin.sipa, es würde derzeit ~200 Tage für einen Angreifer mit 100% des aktuellen hashpower zu schreiben, die gesamte btc-blockchain. Meine Frage bezieht sich auf, wie ein Angriff wie dieser konnte tatsächlich spielen:

Können davon ausgehen, dass 100% der hashpower ist in ein Angreifer die Hände, und die btc-Kette gestoppt voran. Der Angreifer Punkte 100% der hashpower in Richtung mining auf der genesis-block, so dass Sie generieren der erste 2016 Blöcke SUPER schnell, und dann die Schwierigkeit erhöht sich um den Faktor 4. Dies wird fortgesetzt, bis die Schwierigkeit erreicht, ist es dem aktuellen Niveau, und nach ~200 Tagen des Angreifers Kette eine höhere kumulative Schwierigkeiten, obwohl er eine viel geringere Blockhöhe.

Aber ich denke nicht, dass das sehr interessant ist, der rest des Netzwerks werden erkennen, es ist ein problem, mit dem vor rund 200 Tage vergangen, und wahrscheinlich code eine Lösung von irgendeiner Art, um die Dinge reibungslos.

So wie möglich ist eine weitere verdeckte Angriff? Könnte ein Angreifer mit einer bescheidenen Menge an hashpower mir eine private Kette, und spoof die Zeiten zu halten, die Schwierigkeit geringer, als es sein sollte? So ermöglicht die Schaffung einer 'replica' - Kette mit ein paar txs geändert für die Angreifer nutzen?

Dies könnte geschehen, während die ehrlichen Kette ist immer noch in Betrieb, und der Angreifer würde sich langsam fangen, bis zu den ehrlich-Kette. Die weiter entlang der Angreifer macht es, je mehr hash-Kraft Sie aufwenden müssen, um den Angriff zu halten auslaufende jede ehrliche Bergleute. Aber wenn ein bescheidener Betrag von hashpower können privat umschreiben, dass ein guter Teil der frühen Geschichte, es scheint, wie die aktuellen 200-Tage-Fenster könnte tatsächlich eine leichte überschätzen.

Hinweis: In diesem Szenario, die Zeit insgesamt zu erlassen, die der Angriff länger als 200 Tage, aber einige von dieser Zeit verbringen privat mining mit einem Anteil von hash-macht, die "nicht verpasst werden" durch das Netzwerk. Also der rest des Netzes kann nur in der Lage sein zu bemerken, dass ein Angriff passiert im inneren der 200-Tage-Fenster.

Ich sehe das nicht als echte Bedrohung, ich bin mehr daran interessiert, zu verstehen, was eigentlich möglich ist, vor allem in Hinblick auf spoofing Zeitstempel auf einer privaten Kette zu halten, Schwierigkeiten, Ziele niedrig.

+141
Tom Jenkinson 14.08.2012, 08:22:57

Nach dem Lesen der vorhandenen Antworten und Ihre Kommentare zu diesem, ich glaube was du suchst ist dieser.

Ihre Frage basiert auf einem Missverständnis. Die Abbildung "Bitcoin kann Prozess-7-Transaktionen pro Sekunde" ist nicht ein burst-rate. Es spricht über die langfristigen Netzwerk-weiten Durchschnitt und ergibt sich aus der Tatsache, dass (a) die Blöcke sind in der Größe begrenzt und (b) der block-Produktion-rate begrenzt ist.

Einzelne Bitcoin-Knoten-Implementierungen Prozess weit mehr Transaktionen pro Sekunde als das, aber unbedingt notwendig ist um ein Vielfaches schneller ist als die rate, die das gesamte Netzwerk betreibt.

Wenn ein neuer block erstellt wird, werden die Knoten im Netzwerk müssen in der Lage sein, um es zu verarbeiten schnell, um keine Verzögerung, wie lange es dauert, bevor die anderen Bergleute können beginnen, auf der Oberseite des Blocks. Aufgrund der inhärenten Varianz in der block-Produktion, der nächste block hat eine kleine, aber signifikante Wahrscheinlichkeit, die sich nur Sekunden später. Wenn Netzwerk-Knoten können nicht überprüfen Sie den vorherigen block innerhalb dieser Zeit, werden Sie benachteiligt sind. Jedoch, der Bergmann, der block selbst hat keine solche Strafe (weiß er schon seine eigene Sperre gültig ist). In der Regel sind diese Verzögerungen in der Bearbeitung neigen dazu, zu Gunsten der größeren und gut verbunden Bergleute proportional mehr als kleinere - ein Effekt, der sich sehr nachteilig auf die Dezentralisierung des Netzes, also unter allen Umständen vermieden werden. Aus diesem Grund, die Zeit zwischen den Blöcken muss ein Vielfaches größer sein als die Zeit, die es braucht, um überprüfen Sie die Transaktionen in es.

+113
papa muda 12.12.2015, 14:43:59

Transaktionen haben 2 Möglichkeiten, um in die blockchain in bitcoind:

  • mempool -> newblock

  • newblock nicht im mempool

können überprüfen AcceptToMemoryPool Funktion

https://github.com/bitcoin/bitcoin/blob/c719cefc417cc578f48b33069b764339a61054ce/src/main.cpp#L876

CAmount nFees = nValueIn-nValueOut;

in Fall-outs > ins

nFees<0

wenn (mempoolRejectFee > 0 && nFees < mempoolRejectFee) {
 return Zustand.DoS(0, false, REJECT_INSUFFICIENTFEE, "mempool min Gebühr nicht erfüllt", false, strprintf("%d < %d", nFees, mempoolRejectFee));

negative nFees werden abgelehnt, alles ist gut in diesem Punkt

ok können überprüfen Connectblock Funktion

https://github.com/bitcoin/bitcoin/blob/c719cefc417cc578f48b33069b764339a61054ce/src/main.cpp#L1805

für jedes tx, blockieren wir tun:

nFees += view.GetValueIn(tx)-tx.GetValueOut();

https://github.com/bitcoin/bitcoin/blob/c719cefc417cc578f48b33069b764339a61054ce/src/main.cpp#L1826

 CAmount blockReward = nFees + GetBlockSubsidy(pindex->nHeight, chainparams.GetConsensus());
if (block.vtx[0].GetValueOut() > blockReward)
 return Zustand.DoS(100,
 Fehler("ConnectBlock(): coinbase zahlt zu viel (ist=%d vs limit=%d)",
 block.vtx[0].GetValueOut(), blockReward),
 REJECT_INVALID, "bad-cb-Betrag");

An dieser Stelle berechnen wir die maximal mögliche Belohnung für diesen block: alle tx-Gebühren + mining-Belohnung

dann überprüfen wir, dass coinbase Belohnung nicht mehr als dieser Wert

was ist, wenn gleiche miner erstellen und beinhalten Transaktion, die haben Eingänge für 1 btc und Ausgänge für 2 btc, so ist die Gebühr für diesen tx-1 btc

dann miner einstellen kann Belohnung für coinbase-Transaktion zu 25 btc + alle Gebühren - 1 btc.

also dieses (block -.vtx[0].GetValueOut() > blockReward) return True

als Ergebnis haben wir die Transaktion, die mehr Münzen, die Sie dann erhalten, innen blockchain

Wo ist mein Fehler?

+112
Alexander Bird 24.11.2016, 04:01:27

Ich entwickle eine Bitcoin-Anwendung, so sende ich eine Menge "Spielzeug" - Transaktionen für die Prüfung, mit 0 Gebühren.

Aber es scheint, dass diese nehmen Sie für immer zu erhalten, bestätigt. (Momentan warte ich 45 Minuten für eine Transaktion bestätigt bekommen. Zuvor war es über 30 Minuten.)

Ist mein Verdacht richtig, oder mache ich etwas falsch? Wie wichtig ist die Gebühr, die für die Bergleute? Tun Sie preferentiate?

Oder mache ich etwas falsch (nicht die Ausstrahlung, um genug Knoten, vielleicht?)?

Und machen Knoten, die nicht Bergleute (mit offiziellen client, den ich vermute), preferentiate zu senden, um Transaktionen, die mit Gebühren?

(edit: beachten Sie, dass die Frage geschrieben wurde, im Jahr 2012, wenn die Blöcke waren immer noch leer.)

+53
Pabi 07.06.2015, 03:29:43

Ich versuche ein Skript erstellen, dass mir der Betrag, den ein Benutzer versendet hat, zu einem bestimmten bitcoin-Adresse. Derzeit werden diese Daten im JSON-format.

Wie kann ich diese JSON-Daten, um zu wissen, die Menge, die ZULETZT an eine bestimmte Adresse?

Für den moment habe ich da eine Rücksendung der eingereichten form:

$userIDsent = $_POST['userID'];
$adrsBTCsent = $_POST['adrsBTC'];

$bcInfo = json_decode(file_get_contents("https://blockchain.info/address/". $adrsBTCsent ."?format=json"), true);

$nombre_de_transac = $bcInfo["n_tx"];
$valeur_en_satochi = $bcInfo["total_received"];

If ($nombre_de_transac > 1){
 /* mehr als 1 Transaktion für diese BTC ergänzt. Ich muss wissen, was ist der Betrag, den zuletzt gesendeten und NICHT die gesamte Menge auf, dass die Adresse */


} else {
 /* 1 Transaktion diese Adresse neu ist also die Menge der BTC gesendet */
 echo "Der Benutzer ".$userIDsent." geschickt hat ". $valeur_en_satochi . "uBTC";
 echo "BH, bla, bla weiter gehts";
}

Danke für Eure Hilfe.

+25
AmerllicA 19.02.2010, 14:50:33

Brauchen Sie zu bewegen, Ihre Münzen zu so etwas wie Elektrum. Geben Sie diese tutorials einen Versuch vielleicht:

+13
Macgirl 04.01.2017, 22:51:26

Fragen mit Tag anzeigen