Was / Wer ist das Bitcoin mining-power sinnvoll?

Ich suchte im internet, um herauszufinden, wer (oder was) wurde unter Ausnutzung des Ergebnisses des Bergbaus, aber ich konnte nicht finden eine klare und vollständige Antwort (und Quellen).

Ich weiß, Bitcoin Miner entschlüsseln von hashes, aber was ist das nützlich? Ich denke, es ist etwas dahinter, denn warum sonst sollten wir entschlüsseln von hashes, warum sollten wir brauchen eine große Kraft 24/7? Ist das wirklich ethisch zu mir Bitcoins ?

Ich bin nicht sehr vertraut mit dem virtuellen Geld, ich kann haben etwas verpasst!

+630
user26588 01.09.2011, 18:03:15
23 Antworten

Ich weiß, es gibt viele Werkzeuge, um zu überprüfen, eine ecdsa-Signatur, der eine bitcoin-Transaktion und verstehe ich das ecdsa-Algorithmus. Es dauert drei Eingänge, einen hash der Transaktion, die digitale Signatur und den öffentlichen Schlüssel des Absenders.

In einer raw-Transaktion, wie zum Beispiel dieses: http://blockexplorer.com/rawtx/9b4912711de5e258a74a529227f43647bc3b2304212fb508c5f8e910d5986270

Ich weiß, die Signatur ist die erste Zeile der Scriptsig und der öffentliche Schlüssel ist der zweite, und ich davon ausgegangen, dass der hash der Transaktion ist die erste Zeile auf der Seite (auch in der URL), aber Sie nicht validade und ich habe versucht, eine Handvoll von Transaktionen aus blockexplorer.

Meine Frage ist, was nehme ich als erste variable zu überprüfen, eine Transaktion in dieser form?

+959
Andrea Biro 03 февр. '09 в 4:24

Ich habe dabei eine Menge zu Lesen auf OP_RETURN, und ich möchte, um etwas zu verstehen, das scheint immer noch unklar. Wenn wir es schaffen, eine Transaktion mit OP_RETURN (was ich verstehen wird nicht ewig belasten Knoten RAM als die Transaktion nicht in der UTXO Datenbank), ist die OP_RETURN Daten, die repliziert die blockchain?

Diese Antwort aus einer ähnlichen Frage hier (Blockchain transaction message length limit) besagt, dass die OP_RETURN ist nicht Teil des Bitcoin-Protokolls, und die OP_RETURN Daten kann nur zugegriffen werden blockchain.info, die nicht sinnvoll von dem, was ich gelesen habe, wie der code zu standardisieren, die Anzahl der bytes für OP_RETURN Nachrichten direkt innerhalb des Bitcoin-source-code, und ist Teil des Protokolls, richtig?

TL;DR: ich versuche, eine Anwendung nutzt OP_RETURN, und ich würde gerne wissen, ob die OP_RETURN Daten vorhanden sind, die auf die blockchain für immer, und kann abgerufen werden, mithilfe von APIs andere als blockchain.info. Vielen Dank an alle

+944
Eamonn Travers 26.02.2015, 12:12:56

Ich denke was du suchst ist unmöglich(wie jetzt), da keine Brieftasche sind die Unterstützung von "real time trading" von Crypto zu crypto. sowieso, wenn Sie auf der Suche nach einer Geldbörse, die unterstützt mehrere Währungen, die Sie verwenden können, coinpayments, coinpayments ist die nächste Antwort auf Ihre Frage, da Sie können den Handel mit crypto zu crypto auf Coinpayments (Sie sind mit shapeshift Handel altcoins)

+915
cstrat 28.03.2016, 16:38:06
In Bezug auf die software verwendet für den Bergbau cryptocurrencies
+905
developerwjk 06.09.2018, 04:41:09

Ich bin mit sendtoaddress-API-Aufruf. Das problem ist, dass ich angeben muss, Betrag, enthält die Gebühren. Zum Beispiel, wenn ich abheben, 1 btc, ich brauche bitcoind Gebühren abzuziehen von dieser Summe und im Beispiel für das senden von 0.999 ... als Transaktion Betrag und 0.001 als Gebühr (oder jede andere Gebühr, die Menge, die empfohlen wird für diese Transaktion)

Bitte, helfen und sagen ob das möglich zu erreichen Ergebnis.

+794
atn 01.11.2010, 07:56:51

Sie können ein anderes wallet zu testen Sie Ihr Netzwerk. Mach dir keine sorgen über die Gebühr, es ist genug. Meistens tx, wird bestätigen, in 2 Stunden.

+766
Ki Sawarna Atma Dirga 10.08.2012, 00:40:56

1) Eine Bitcoin-Adresse ist zwischen 25 und 34 Zeichen lang sein

2) die Adresse beginnt immer mit einer 1 (in diesem Fall)

3) eine Adresse enthalten können alle alphanumerischen Zeichen, mit Ausnahme von 0, O, I und l.

(ref: https://thomas.vanhoutte.be/tools/validate-bitcoin-address.php)

Hier nun kommt der schwierige Teil: Die letzten vier bytes der Adresse werden die ersten vier bytes von Sha256(Sha256(2,3,4...21 Byte der Adresse))

Mehr info: https://bitcoin.stackexchange.com/a/50879/38618

+753
villiam 15.09.2017, 18:58:24

Ich versuche zu verstehen Bitcoin-Adressen, aber es scheint nicht einfach zu sein überhaupt.

Soweit ich weiß, eine Transaktion nutzt eine oder mehrere Adressen als Eingabe und eine Adresse als Ausgabe. Ist das richtig?

Wie ich es verstehe, eine bitcoin-Adresse ist ein hash-Wert Ihres öffentlichen Schlüssels. So ist es nicht völlig resistent gegen Kollisionen. So wie Sie beweisen, dass Sie der Besitzer einer bitcoin-Adresse?

Auch, da jeder es machen kann, eine Adresse aus Ihrem öffentlichen Schlüssel und den Empfänger der Transaktion nicht zum signieren der Transaktion, wie stellen Sie sicher, niemand kann Ihnen Bitcoins ohne Ihre Zustimmung? (Ich weiß wirklich nicht, ob dies ist ein problem, um ehrlich zu sein)

+685
user2695333 02.12.2014, 22:24:36

Gleiche news auf blockchain.info nicht nur ist die Transaktion bestätigt, aber es wird auch ausgegeben, es ist also sicherlich erhalten.

+639
Unknown Artists 07.11.2015, 21:49:57

Omar, Sie können tun fast alles, was Sie wollen, ist es mit der Waffenkammer mit der offline-Funktion. Die offline -, Luft-gapped computer können erstellen Sie den privaten Schlüssel und speichern Sie es. Die watch-only-wallet auf das internet angeschlossenen computer erstellen können Transaktionen werden signiert von dem offline-Rechner.

Vom Standpunkt der Sicherheit, ist es im Allgemeinen besser, etwas zu verwenden, eine Menge andere Menschen, die zuvor verwendet haben, als das erstellen eines eigenen Prozesses.

+601
Daniel Spiewak 11.05.2018, 16:20:53

Eine Bitcoin-wallet vor allem behält Sie Ihre privaten Schlüssel und verfolgt die Transaktionen, die zu den entsprechenden öffentlichen Schlüssel oder die Adressen. Die Bitcoin wallet wird auch helfen, übertragen Sie Ihre signierten Transaktionen.

Ein Blitz Geldbeutel tut alle das gleiche, aber zusätzlich es folgt der Blitz Netzwerk-Protokoll, was bedeutet, es hilft Ihnen jederzeit Widerrufliche Sequenz Reife Verträgen, die zum Bau einer Zahlung Kanal. Sie werden erstellt, indem eine Sequenz von unterzeichnet, aber noch nicht ausgestrahlt Transaktionen und Sperrung von Schlüsseln. Die Hash-Zahlenschloss-Verträge wünschen, sind für das routing sind gehalten in einer ähnlichen Weise. All dies ist der so genannte Kanal-Zustand und vertraulich gespeichert in einer Datenbank des Computers. Dieser Zustand ist notwendig, zusätzlich zu Ihrem privaten Schlüssel, um Zugriff auf Ihr Geld.

+526
Onepeice 28.04.2013, 15:36:08

Scheint, wie onchain senden-Funktionalität ist noch nicht implementiert. Workaround bis dahin ist das importieren der 24-Wort-Samen in eine andere Brieftasche. Diese parallel ausgeführt werden können mit eclair ohne Probleme.

+524
g allen 24.07.2015, 04:07:14

Es gibt 3 Darstellungen derselben Sache, die (mit unterschiedlichem Grad der Genauigkeit) in Bitcoin:

  • bit - unsigned int 32-bit
  • Ziel - unsigned int 256-bit
  • Schwierigkeit - double precision-float (64-bit)

und 6 Methoden notwendig sind, um das konvertieren zwischen irgendwelchen zwei von diesen:

  • bits -> target (SetCompact() in bitcoin/src/arith_uint256.cpp)
  • bits -> Schwierigkeit (GetDifficulty() in bitcoin/src/rpc/blockchain.cpp)
  • Ziel -> bits (GetCompact() in bitcoin/src/arith_uint256.cpp)
  • Ziel -> Schwierigkeit (gleiche wie Ziel -> bit -> Schwierigkeitsgrad)
  • Schwierigkeit -> bits (nicht in bitcoin/src)
  • Schwierigkeit -> Ziel (gleiche Schwierigkeitsgrad -> bit -> Ziel)

Das Bitcoin-Quellcode kann die Umwandlung von bits -> Schwierigkeiten, da fragte Sie die Frage, aber nicht die Umwandlung von Schwierigkeit -> bits als auch gebeten, in Frage.

Ich habe geschrieben, meine eigene Implementierung der Schwierigkeit -> bit-Konvertierung in vanilla Javascript durch Nachahmung der target -> bit-Konvertierung, wo möglich, plus einige zusätzliche checks:

Funktion difficulty2bits(Schwierigkeit) { 
 if (Schwierigkeit < 0) throw 'Schwierigkeiten nicht negativ sein darf';
 if (!isFinite(Schwierigkeit)) throw 'Schwierigkeit kann nicht unendlich sein';
 for (var shiftBytes = 1; true; shiftBytes++) {
 var Wort = (0x00ffff * Math.pow(0x100, shiftBytes)) / Schwierigkeit;
 if (word >= 0xffff) break;
}
 Wort &= 0xffffff; // umwandeln int < 0xffffff
 var size = 0x1d - shiftBytes;
 // die 0x00800000 bit kennzeichnet das Vorzeichen, so dass, wenn es bereits gesetzt ist, teilen sich die
 // Mantisse von 0x100 und erhöhen Sie die Größe von einem byte
 if (word & 0x800000) {
 word >>= 8;
size++;
}
 if ((Wort & ~0x007fffff) != 0) throw 'die \'bits\' \'word\' out of bounds';
 if (size > 0xff) werfen', die \'bits\' \'size\', ist out of bounds";
 var bits = (size << 24) | Wort;
 return bit;
}

Es ist möglich, zu überprüfen, dass die oben genannten Funktion gibt die richtigen Antworten, indem Sie die folgende Umsetzung:

bits -> Schwierigkeitsgrad -> bits

Wo bits -> Schwierigkeit wird durchgeführt unter Verwendung von Bitcoin ist GetDifficulty() und Schwierigkeit -> bits erfolgt mit difficulty2bits() oben. Wenn wir kommen zurück an den gleichen bit-Wert dann die difficulty2bits() - Funktion korrekt ist. Die einzige Ausnahme ist, wenn (bits & 0x00800000) != 0, da dies bedeutet, dass bits eine negative Zahl ist, in der Erwägung, dass die Schwierigkeit ist immer eine positive Zahl in Bitcoin.

Ich habe getestet, die die oben difficulty2bits() - Funktion, und es hat dasselbe Ergebnis zurück wie das original-bit Wert. Wenn Sie wollen, um die tests selbst dann habe ich eine live-Konvertierung-tool auf meinem blog, wo Sie können jede der 6 Konvertierungen aufgeführt, die oben in Echtzeit (ich habe transkribiert Bitcoin ist SetCompact(), GetDifficulty() und GetCompact() in Javascript): https://analysis.null.place/how-do-the-bitcoin-mining-algorithms-work/#form7

Beachten Sie, dass zahlen in Javascript sind IEEE 754 double-precision - dieselbe Genauigkeit wie die Schwierigkeiten der Bitcoin-Quelle, also Javascript ist so genau wie die Bitcoin Quelle für alle bits/Schwierigkeit/Ziel-conversions. Um jedoch der immer wieder geäußerten Skepsis ich habe auch die entsprechenden unit-tests von Bitcoin ist bitcoin/src/test/blockchain_tests.cpp und bitcoin/src/test/arith_uint256_tests.cpp Dateien auf dem blog gerade unter dem oben genannten tool - alle tests übergeben.

+476
George Kay 02.06.2010, 13:10:32

So wie ich das verstehe, die Dinge so weit, der ECDSA System Bitcoin verwendet eine Gruppe G erzeugt, indem ein Punkt auf der elliptischen Kurve y^2 = x^2 + 7.

Nun, G ist eine zyklische Gruppe der endlichen Ordnung n und ist damit isomorph zu der Additiven Gruppe Z/nZ.

Meine Frage ist: warum nicht die Arbeit in Z/nZ direkt dann? Ich gehe davon aus, dass es bestimmte Sicherheits-Vorteile der Verwendung von G aber mir fehlt der Allgemeine überblick um zu verstehen, warum.

+444
user267353 05.11.2012, 06:25:03

Ich arbeite auf einige Macken von einer Brieftasche, bin ich zu entwickeln, und eines der Probleme ist, was zu tun mit Veränderung der Mengen, die größer sind als Staub ~600 satoshis, aber weniger als eine praktische Höhe, um erneut gesendet werden, mit einer Gebühr. Sollte ich zurück in der Nähe-Staub Betrag ändern, oder nur tack auf zusätzliche mining-Gebühren?

Zum Beispiel, sagen wir, verbringt ein Nutzer einen Betrag, der nach Zahlung einer Leistung und einer ausreichenden Gebühr Blätter nur 1000 satoshis wie der Wandel. Soll ich Sie schicken diese 1.000 satoshis wie der Wandel obwohl die 1.000 satoshis zu klein ausgegeben werden, die wieder mit einer ausreichenden Gebühr?

Auch mit Gebühren so niedrig wie 10 satoshis pro byte mit einem Eingang und-Ausgang (P2PKH) bräuchte man mindestens 2000 satoshis für Gebühren.

Ich denke da könnte es besser sein, einfach die übrig gebliebenen Richtung zusätzliche mining-Gebühren ändern, wenn Menge unter eine bestimmte Schwelle, sagen 3,000 satoshis. Eine Adresse mit lediglich 1000 satoshis ist meist nutzlos, und möchte nur hinzufügen, um die wachsende UTXO setzen, würde wahrscheinlich nie ausgegeben werden. Ist dieser Ansatz angemessen erscheint, oder bin ich "Raub" - Nutzer um Ihr Staub?

+413
Asmund 08.09.2019, 09:04:56

Die changebars Grafik http://bitcoinity.org rote und grüne Balken. Einige von Ihnen unten und etwas über null.

Was ist Ihre Bedeutung?

  • Wenn Sie über null
    • und grün sind
    • und sind rot
  • wenn Sie unter null
    • und grün sind
    • und sind rot?

Gibt es einen wikipedia-Artikel über diese Art von graph? Was würde der Suchbegriff sein?

Der rest des Graphen wird hier erklärt http://i.imgur.com/516v5Nz.jpg aber nicht die roten und grünen Balken.

Danke.

+407
Nunction 09.10.2010, 07:42:57

Hier ist libblkmaker's Umsetzung:

statische
char varintEncode(unsigned char *out, uint64_t n) {
 if (n < 0xfd)
{
 out[0] = n;
 return 1;
}
 char L;
 if (n <= 0xffff)
{
 out[0] = '\xfd';
 L = 3;
}
sonst
 if (n <= 0xffffffff)
{
 out[0] = '\xfe';
 L = 5;
}
sonst
{
 out[0] = '\xff';
 L = 9;
}
 for (unsigned char i = 1; i < L; ++i)
 out[i] = (n >> ((ich - 1) * 8)) % 256;
 return L;
}
+350
anasteishazh 14.03.2013, 06:29:36

Sie könnten wahrscheinlich laufen goxtool in Python unter Cygwin, denn das würde geben Sie Sie ein terminal. Ich bin mir nicht sicher, ob das die einzige Linux-spezifische Sache, die es brauchen würde, aber es würde wahrscheinlich der Anfang sein.

+340
Jonas Gulle 16.03.2016, 03:20:00

Eine Geldbörse ist nicht damit verbunden, ob die blockchain herunter. Die blockchain wird nicht gespeichert in einer Brieftasche. Das zurückführen nicht erneut herunterladen der blockchain, es sei denn, Sie sind mit einem beschnittenen Knoten.

Verwenden importaddress, müssen Sie eine Brieftasche. Es funktioniert nicht ohne die wallet-Datei. Wenn Sie nicht über eine wallet-Datei aus irgendeinem Grund, beginnen Bitcoin Core normalerweise (d.h. ohne wallet-Optionen deaktivieren) wird es automatisch eine Brieftasche für Sie. Wenn Sie eine Geldbörse, und will nur importieren Sie die Adresse in eine andere, können Sie eine erstellen mit dem createwallet Befehl. Wenn Sie eine andere wallet-Datei, können Sie es verschieben, um die Bitcoin-Daten-Verzeichnis und laden Sie die Brieftasche mit dem loadwallet Befehl.


Jedoch laden oder erstellen eine digitale Brieftasche ist nicht das, was Sie wirklich wollen, zu tun. Sie wirklich nicht wollen, zu importieren einer Adresse in Ihre Brieftasche; Sie wirklich wollen, um zu überprüfen, ob diese Adresse tatsächlich hat die Menge an Bitcoin, dass Sie sehen, aufgeführt auf einer website. Um das zu tun, können Sie einfach die scantxoutset Befehl wurde in die Bitcoin-Core-0.17. Es braucht nicht eine Brieftasche und funktioniert wesentlich schneller als neu Einlesen. Sehen Sie, es ist ein Hilfe-text (mit Hilfe scantxoutset), wie es zu benutzen.

Was scantxoutset tut, ist, es durchsucht die UTXO für alle UTXOs entsprechen einem bestimmten Muster. Dies wird Ihnen sagen, was UTXOs sind im Zusammenhang mit einer Adresse oder Ausgangs-Skript. Von dort aus können Sie die Summe Ihrer Werte und berechnen Sie die gesamte verfügbare Guthaben. Dies gibt Ihnen die Informationen, die Sie sehen wollen, ohne Geldbörse und ohne die Erfassung der gesamten blockchain.

+300
sasdd sad 23.07.2018, 17:03:42

Ursprünglich habe ich habe ein setup von 3 Antminer D3 die folgenden ANWEISUNGEN Sie UNTER DIESEM LINK.

Ich verwendet eine Ausschüttung, die Adresse für meinen P2Pool Befehlszeile, die ich habe, meine Dash-Core-wallet. Ich habe zunächst NICHT nutzen wallet-Beleg-Adressen für jeden meiner miner-Namen der Arbeitnehmer, sondern nannte Sie DASH01, DASH02, DASH03.

Als ich weiter die Forschung, die versuchen, Wege zu finden, um meine optimieren Bergbau und meinen Miner auf meinen P2Pool ich gelernt, die Schwierigkeit mit Adresse+diffnumber. Das führte mich zu erkennen, dass der GRUND, warum ich war NICHT zu sehen, vollständige Statistiken für meinen Miner auf meinen P2Pool-monitoring web-Seiten, war, weil ich mich nicht mit der Brieftasche Rezeption-Adressen generiert, die durch meine Brieftasche/Knoten für meinen Namen der Arbeitnehmer.

Nun, dass jeder Arbeitnehmer verfügt über eine separate Geldbörse/empfangenden Knoten-Adresse, ich kann sehen, all die Statistiken.

Und hier liegt meine Frage. Sollte keiner meiner Arbeiter-Adressen verwenden Sie die gleiche Adresse wie meine Ausschüttung Adresse? Ich bin verwirrt über diesen Punkt. Vielen Dank für die Aufklärung jede konzeptionelle Fehler zu.

+240
user5962 25.02.2019, 05:17:36

Ich habe installiert und erstellt eine neue wallet in Multibit HD auf meinem PC habe ich die Samen 24 Wörter. Soweit ich das verstanden, mit dieser 24 Worte kann ich es wiederherstellen auf einem mycelium android, und ich sollte sehen und werden in der Lage zu verbringen die bitcoins an beiden Geräten. Das problem ist, dass nach der frischen Installation das Myzel auf android, die ich wählen, um von zu erholen Saatgut, geben Sie die 24 Worte, aber ich kann nicht sehen, meine bitcoins. Eine neue Geldbörse mit 0 bitcoins angezeigt. Ist es normal? was ich nicht verstehe, über HD-wallets? Ich dachte, dass auch Geldbörsen sollte identisch sein.

+162
LeanNoCopo 06.12.2011, 01:23:32

Ich test die Forderung: "Jeder nonce hat die gleiche chance, zu gewinnen."

Zeit-Evolution

Also habe ich gezeichnet, mit gnuplot, die nonce-Werte vs. hashes für alle gültigen Blöcke in der blockchain:
Nonces vs. Hashes
Nonces vs. Hashes (cummulative)
Nonces vs. Hashes (1,000 blocks shown at a time)
(Auch in der letzten Handlung, man kann wirklich visualisieren die Veränderung in der Schwierigkeit und sogar sehen, wo die Schwierigkeit verringert wurde.)



Histogramme

Macht es Sinn, dass die nonces gefunden sind verzerrt in Richtung 0, denn dies ist eine Auswahl Effekt: die meisten jeder beginnt mit der Suche nach nonces beginnend bei 0, also der untere nonces sind, gefunden erste, obwohl es möglicherweise auch höhere nonces, die produzieren könnte eine gewinnen-block: nonces histogram

Warum sind die hashes verteilt diese Weise, obwohl?: hashes distribution

2-D-Histogramm von hashes und nonces (logarithmische Farbskala): 2-D histogram of hashes and nonces

+127
RiZKiT 17.09.2015, 12:46:32

Ich habe cent os in meine amazon ec2-instance-ich versuche in diesem post zu installieren litecoin-daemon danach erfolgt die Kompilierung und Ausführung ./litecoind gibt die folgende Fehlermeldung

litecoind: Schlüssel.cpp:134: {anonymous}::CECKey::CECKey(): Assertion `pkey != __null' ist fehlgeschlagen.
Abgebrochen

Konfigurieren von litecoin.conf in AMI?

+91
Ayomide Tolu 01.01.2017, 04:02:43

Fragen mit Tag anzeigen