Welche Vorsichtsmaßnahmen zu ergreifen sind, wenn die Arbeit mit nur ein oder zwei Bestätigungen?

Ich bin der Erbringung einer Dienstleistung akzeptiert Bitcoin. Um die Dinge zu beschleunigen ein wenig, ich bin der Planung zu reduzieren, die Anzahl der Bestätigungen, die ich, bevor ich überlegen das Geld angekommen zu sein.

Ich habe gelesen, dass es ziemlich sicher ist, mit zu arbeiten, auch eine einzelne Bestätigung, wenn Sie einige Vorkehrungen treffen, Maßnahmen. Was sind diese?

Genauer gesagt, mit welchen Optionen sollte ich laufen bitcoind ?

+381
user283167 02.08.2011, 03:18:47
31 Antworten

Ein Problem finde ich, wenn ich Reise, ist, dass ich möchte, um zu besuchen ein cafe, das akzeptiert Bitcoin aber weil ich im Ausland bin ich in der Regel don ' T haben eine internet Verbindung auf meinem Handy. Ich konnte WiFi verwenden, aber was ist der beste Weg, um transact Bitcoin ohne internet am point of sale? ich.e low-value Transaktionen.

+985
vijaya Singh 03 февр. '09 в 4:24

Es gibt derzeit keine Pläne zur Unterstützung von hardware wallets im Kern. Allerdings bedeutet dies nicht, dass es nicht passieren wird, es bedeutet nur, dass niemand arbeitet derzeit daran, diese Initiativen zu unterstützen. Leider gibt es keine vollständigen Knoten-wallets, die Unterstützung der hardware-wallets. Aber ich arbeite an hardware-wallet-support in die Waffenkammer, damit Sie sich freuen können, die kommen in ein paar Monaten (wahrscheinlich).

+888
Ben Greenman 06.10.2016, 02:20:28

Was sind die möglichen Nachteile der Praxis, wo ich zum download eine bitcoin-wallet auf mein Handy, notieren Sie sich die Samen und die Adresse, das löschen der app in die Nichtexistenz und weiterhin meine glückliches Leben, Teile meine Adresse, es zu benutzen, wie zum Beispiel ein Sparkonto?

Ich würde dann überprüfen Sie die balance, alle paar Jahre.

+875
Maribel martin 08.02.2016, 07:56:25

Der "Makel" einer Bitcoin Transaktion bewertet die Assoziation zwischen einer Adresse und früheren Transaktion Adressen. Die mehr "Makel" je stärker die Verbindung zwischen den beiden Adressen.

https://bitcoin-class.weebly.com/taint-analysis.html

+831
qaisjp 04.03.2012, 21:04:25

OK, ich löste dies durch die zahlreichen trial-and-error Commands. Das problem lag in der Waffenkammer Umsetzung, insbesondere der --datadir - flag.

Die arbeiten CLI-flags:

  • WAFFENKAMMER: -qt.exe --testnet --datadir=d:\Daten\Arsenal\testnet3 --satoshi-datadir=d:\Daten\bitcoincore --rpcport=8332
  • BITCOIN-QT: bitcoin-qt.exe -datadir="d:\data\bitcoincore" -testnet -rpcport=8332

Widersprechen Armory FAQ (in der FAQ) ist die Anforderung explizit zu identifizieren, die testnet3 Verzeichnis für die --data-dir flag (--data-dir==EINIGE\DIR\ " Waffenkammer\testnet3). Wenn die testnet3 Verzeichnis ist nicht identifiziert, die Waffenkammer verwirrt die mainnet blockchain Daten mit dem testnet-chain-Daten.

Die bitcoin.conf Inhalte waren:

listen=1
daemon=1
server=1
rpcconnect=127.0.0.1
rpcport=8332
+773
Cladael 25.05.2017, 16:45:14

Je nach client, den Sie verwenden, könnte dies eine sehr schlechte Idee, der Grund dafür ist, dass einige clients senden zu ändern, um neue Adressen, während andere senden Sie die änderung zurück zu der Absender-Adresse.

Wenn Sie eine online-Geldbörse, wie blockchain.info Sie sollten in Ordnung sein, da es sendet die änderung zurück zu sich selbst, und in diesem Fall wirst du sowohl online, so dass Ihre Kunden immer eine aktuelle Liste der Transaktionen für die Adresse.

Die Wahrscheinlichkeit, dass eine Kollision (aka: Doppelte ausgeben) ist sehr niedrig, da dies erfordert, dass Sie beide verbringen die gleichen Transaktionen innerhalb von Sekunden von einander, und wenn Ihr beide mit der gleichen online-Geldbörse, würde es wohl getan werden müssen, in der Nähe gleichzeitig.

Denken Sie daran, dass die privaten Schlüssel vollständig kontrolliert Eigentum an den Münzen (damit sein eigenes), so dass Sie brauchen, um vollständig zu Vertrauen jemand mit wissen darüber.

+763
buukspcbr 22.09.2016, 17:48:27

Der Schlüssel zum Verständnis was hier abläuft, ist zu erkennen, dass es nicht zwei, sondern drei Komponenten eine bitcoin-Transaktion zu bestimmen, wo die Münzen am Ende. Dies sind die Eingänge, die Ausgänge und der oft vergessenen Rest. Die inputs einer Transaktion sind die Adressen, die Münzen, die ausgegeben werden, und die Ausgänge werden die Adressen, wo die Münzen geschickt werden sollen. Die Erinnerung ist der Betrag von Münzen, die übrig bleibt, wenn die Eingänge sind größer als die Ausgänge. In eine bitcoin-Transaktion, der Rest geht an die miner, das bestätigt, dass der block mit der Transaktion. Das ist, warum braucht es einen "ändern" - Adresse. Wenn Sie mehr Münzen in Ihrem input-Adressen als die, die Sie senden möchten, um die Ausgänge, die Sie brauchen, um zu senden Sie zurück zu sich selbst, sonst verlieren Sie Sie.

Die standard bitcoin-client übernimmt das transparent durch die Generierung von neuen Adressen ändern, wenn Sie eine Transaktion abzuschließen. Dies ist die "sichere" Sache zu tun, weil technisch re-verwenden Sie eine Adresse öffnen können Sie bis zu einer Art von Angriff, die erlauben würde, was auch immer Münzen noch gestohlen werden. Dieser Angriff beruht auf berechnen, um einen privaten Schlüssel von einem öffentlichen Schlüssel jedoch so, bis Quanten-Computer werden eine Sache, die Sie nicht wirklich brauchen, sich darum zu kümmern.

Obwohl es "weniger" sicher, es ist gültig verwenden eine input-Adresse wird auch als output-Adresse. Ich glaube, das ist, was die blockchain ist mit einer Uhr nur, Adresse. Anstatt eine Adresse ändern für den Rest in einer Transaktion, es sendet die änderung zurück auf die ursprüngliche Adresse. Dies bedeutet, dass Sie können verwenden Sie eine Uhr nur Adresse mehrere Male ohne das erstellen eines neuen paper wallet. Dies bedeutet, dass Sie verwenden müssen, blockchain, wenn Sie die Ausgaben sind Münzen aber. Wenn Sie importieren Sie Ihre Schlüssel in bitcoin-qt und verbringen Sie die Münzen, Ihre paper wallet nicht mehr enthalten keine Münzen. Sie wird verschoben wurden, um eine neue Adresse ändern.

EDIT:

Das wollte ich überprüfen und sehen, ob dies ist, wie blockchain tatsächlich funktioniert, und meine Vermutung richtig ist. Wenn Sie verbringen die Münzen aus einem cold-storage Adresse, blockchain sendet die änderung zurück auf die ursprüngliche Adresse. Sie können sehen, ein Beispiel für diese Art von Transaktion hier.

+742
Wade Tregaskis 01.11.2014, 10:31:59

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.

+709
Abdelhamid Ahmed 12.03.2019, 21:43:46

Ich bin mir nicht sicher, ob du meinst, eine scripting-Sprache ersetzen Sie C++ oder ersetzen bitcoin ist eine scripting-Sprache. Wenn du meinst, ersetzen Sie C++, natürlich -, php -, python -, ruby -, javascript-und, im Allgemeinen, die meisten Programmiersprachen sind turing-vollständig wie C oder C++. Sie können tun, was machbar mit einer von Ihnen. Es gibt bereits bitcoin-voller Knoten implementiert, die in anderen Sprachen wie java, ich denke nicht, dass python zu weit aus, wenn es nicht umgesetzt bereits.

Wenn du meinst, der bitcoin die scripting-Sprache (https://en.bitcoin.it/wiki/Script), wieder, ja, es könnte werden Sie alles was Sie wollen. Wenn Sie im Begriff waren, Sie zu ersetzen bitcoin-Skripte mit eine turing-vollständige Sprache ist, gibt es einige Risiken, die Sie benötigen, um. Hier ist eine Liste von einigen möglichen Angriffen auf das Netzwerk missbrauchen turing-Vollständigkeit:

https://bitcointalk.org/index.php?topic=278122.0

Die meisten Bitcoin-script-Betrieb sind eigentlich "deaktiviert" aus Gründen der Sicherheit und re-aktivieren Sie würde wahrscheinlich erfordern eine softfork oder sogar ein hardfork.

Abgesehen davon, es gibt viele Gründe, warum möchten Sie die Skriptsprache, die sehr einfach zu sein, weil Sie möchten, dass alle die verschiedenen Implementierungen des Skript-interpreter Verhalten sich in genau der gleichen Weise, auch optimiert Dolmetscher.

Hier ein paar wesentliche Voraussetzungen für eine Sprache:

"b. Das script muss einfach sein, als Tausende von Knoten, die weltweit laufen mehrere Implementierungen zu erreichen, müssen die globalen-Konsens über nicht nur das Ergebnis eines Skripts, aber auch einige Aspekte der Ausführung (z.B. eine Anweisung Zähler). Konsens Ausfälle, ob aufgrund von bugs oder fehlerhafte Konstruktionen führen können ungesicherte Zahlung Netzwerken und möglich Verluste in die Millionen von Dollar oder mehr. Dolmetscher entkommen wäre absolut katastrophal. So einfach, minimalistisch, aber ausdrucksstark Architekturen mit einfachen fail-safe-Implementierungen werden bevorzugt über komplexe, aber benutzerfreundlich (RISC besser als CISC).

c. Die Sprache muss die Unterstützung der verschiedenen kryptographischen primitiven notwendig für die Durchführung von core-bitcoin-Funktionen. Meistens ist dies nur bedeutet das hinzufügen einer Handvoll vordefinierte Wörter, die für die Durchführung von starke kryptographische hashes und elliptic curve signature verification, aber es gibt einige Anforderungen an die design-Sprache so gut, vor allem in Entscheidungen darüber, wie der Stapel dargestellt, die für hash Operationen und die Förderung der authentifizierten Daten-Strukturen primitive Typen für externe Zustand."

Entnommen aus: https://groups.yahoo.com/neo/groups/concatenative/conversations/messages/4950

Im Grunde wäre es eine schlechte Idee, direkt eine Sprache so mächtig ist, wie python für die Skripterstellung, aber man konnte eine weitere einfache Sprache, nennen wir es secureScript und bauen ein compiler von python zu secureScript.

+666
Sadique Manzar 21.09.2019, 03:40:35

Eine Brieftasche ist ein client zum speichern von Bitcoin-Adressen. Der standard-client sein kann, lief in einem server-Modus, die Ihnen erlauben, es zu nehmen HTTP-JSON-RPC-Befehle. Einer von Ihnen ist "getwork" - ein standard-Befehl verwendet, von den Bergleuten, um Daten zu hash. Der standard-client erstellt neuen Blöcke, die Gutschrift auf eine der Adressen, die in seiner Brieftasche mit dem block reward. Bergmann Einreichen können fertige Arbeit an den client zu helfen, es zu lösen.

Diese Lösung ist nicht ideal für die meisten Bergarbeiter, die Nutzung des pools als Vermittler zwischen einem client und einem Bergmann, erlauben die block-Belohnung werden zwischen Ihnen aufgeteilt.

+647
OYMax 05.01.2011, 15:51:06

Nach BIP-141, reden über die Bitcoin-Kette, es würde immer noch trigger "Zeuge Programm" und wird das Geld sicher aufbewahrt in der SegWit Adresse-nach der Gabel.

Reden über das Bitcoin-Cash-Kette, die Bergleute einlösen können SegWit Ausgänge (beide Bitcoin Bargeld geschickt SegWit Adressen und Bitcoins in SegWit-Adressen pre-hardfork.) Aber diese Adressen müssen aufgedeckt haben, Ihr Zeugnis-Programm, oder die Ausgänge können nicht eingelöst werden.

+624
sreeprasad 11.06.2013, 13:32:16

Ich weiß, dass die Formel für die Berechnung der Schwierigkeiten unter -

Schwierigkeit = T (max) / T
Wo T (max) = 1d00ffff in dezimal ist es 486604799.

**enter image description here**

Wie Sie sehen können, wie in der obigen Abbildung die Schwierigkeit, block '55798' ist 12.85. Ich bin versucht, um diesen Wert zu berechnen mit der Formel aber immer die anderen Ergebnis.

D = T (max) / T

Wenn ich die richtigen Werte in die Formel ein, Es wird wie -

D = (486604799 / 471067731) = 1.03

Ich weiß nicht, warum ich bin immer die anderen Schwierigkeit. Der richtige Wert ist 12.85. Können Sie bitte lassen Sie mich wissen, der Grund dafür?

+619
jaggu 03.02.2019, 18:46:00

Bitcoin-Transaktionen sind absichtlich offen. Einige Formen der Formbarkeit sind Funktion und design. Viele von den fortgeschrittenen benutzt Bitcoin-Transaktionen (siehe die Verträge, die wiki-Seite) verlassen sich auf die Fähigkeit zum ändern von Transaktionen in spezifischen und begrenzten Möglichkeiten.

Jedoch, die aktuellen Probleme sind nicht verwandt, und wegen der unbeabsichtigten malleabilities. Einige sind bekannt (und wurden seit Jahren bekannt). Macht Sie unmöglich, erfordert änderungen am Protokoll, um Validierung software und Geldbörsen, so kann sehr schnell durchgeführt werden. In der Tat, der Referenz-client der version 0.8 freigegeben (fast ein Jahr) einige Arten der Formbarkeit bereits nicht-standard, mit der Hoffnung, eines Tages zu können, fügen Sie eine strenge Netzwerk-Regel verbietet es.

Der Grund, warum die Transaktion Unterschriften Unterschreiben Sie nicht die volle Transaktions-hash, ist, weil das verlangen würde, dass die Kenntnis der Signatur vor der Unterzeichnung. Die Signatur ist Teil der Transaktion, so dass es Einfluss auf die Transaktion hash. Aufgrund des Designs, der scripting Sprache, die es jedoch Anzeichen weniger als nur nicht die Signaturen. Dies ist die Quelle von vielen (aber nicht allen) malleabilities. Einige sind durch Wege, in denen die Signatur selbst kann geändert werden, ohne ungültig, es.

+616
user191707 14.11.2011, 22:24:21

Weil Bitcoin Core nicht unterstützt "balance-of-Adresse".

Die Brieftasche hat ein einziges Gleichgewicht, und Adressen behandelt werden als separate Eingangs-gates in das Gleichgewicht, so können Sie unterscheiden, was bezahlt wird (indem Sie eine andere Adresse zu jedem Zahler).

Das argument getbalance ist ein account-Namen. Konten sind nur Erbsenzähler: Sie entsprechen nicht der tatsächlichen Münzen in das Netzwerk. Sie können ändern Sie Ihre balance mit dem verschieben RPC-Befehl, der nicht einmal eine Transaktion erstellen. Sie sind eine rein lokale Abstraktion. Können Sie zuordnen, eine Adresse und ein Konto, damit erhält diese Adresse eine Gutschrift auf dem Konto, und Sie können die sendfrom RPC abzuziehen, die gesendet Gelder von ein Konto (aber die eigentliche Transaktion Ausgänge verwendet werden, sind immer noch gezeichnet von einem Schwimmbad das ganze Portemonnaie).

Konten sind eine verwirrende Funktion, aber, und Sie sind schwer zu verwenden, in der richtigen Weise. Deshalb sind Sie auch für die geplanten Auslaufen in Bitcoin Core.

Vielleicht sind Sie auf der Suche für die getreceivedbyaddress RPC?

+548
dabuek 16.12.2017, 13:17:39

Wenn ein Eingang erlöst ein P2PKH Ausgabe (zahlen, um eine Adresse beginnend mit einer 1), das format der Eingabe-Skript (die scriptSig) ist: [Unterschrift] [public-key]. Weil der öffentliche Schlüssel enthalten sind sowohl standard-Eingabe-Skripts (einlösen P2PKH-Ausgaben) und-output-Skripte (P2PK), das Skript.getPubKey() - Methode geschrieben wurde, um die Rückkehr der öffentliche Schlüssel in beiden Eingabe-Skripte-oder output-Skripts, damit es für Sie arbeiten kann hier.

Public-key-Hashwerte (- Adressen), jedoch nur in der standard-Ausgabe-Skripte. Also das Skript.getPubKeyHash() - Methode davon ausgegangen, dass Sie reden über eine output - Skript, so dass es nicht für die Arbeit Sie Sie hier.

Ein input script einlösen P2SH (zahlen zu Adresse, beginnend mit einer 3) Ausgang ist nicht unbedingt 5 chunks, aber die Adresse ist die hash des einlösen-Skript, und das einlösen script ist immer das Letzte Stück. (Insbesondere die input-Skript: [Skript-sig für das einlösen Skript (möglicherweise mehrere chunks)] [einlösen Skript].) So alle Sie tun müssen, ist, um den letzten chunk (das ist auch das, was du tust für P2PKH) und Hashen.

Der Ort, den Sie könnten in Schwierigkeiten geraten, wenn Sie einlösen P2SH output-und die input-script ist 2 chunks. (Diese könnte sich, zum Beispiel, wenn das einlösen Skript [public-key] OP_CHECKSIG - dann die sigScript wäre in der form [Unterschrift] [20-byte-hash -], nicht zu unterscheiden von einem einlösen des P2PKH Ausgabe.) Die Art und Weise, um dies zu überprüfen, wäre zu schauen, der vorherigen Transaktion, und überprüfen Sie die Ausgabe-Skripte (die würde Ihnen auch die Adressen, die Sie suchen leichter).

Aber unter der Annahme, dass beim einlösen P2SH-Ausgänge der input-Skript ist mehr als 2 chunks, so etwas wie dies funktionieren sollte:

public static Adresse getWalletAddressOfSender(final Transaction tx) {

 Adresse fromAddress = null;

 für die (endgültige TransactionInput ti : tx.getInputs()) {

 try {

 Skript scriptSig = ti.getScriptSig();
 List<ScriptChunk> Stücke = scriptSig.getChunks();

 byte[] pubKey = Stücke.bekommen(Brocken.size() - 1).Daten;
 byte[] pubKeyHash = Utils.sha256hash160(pubKey);

 wenn (Brocken.size() > 2) { // angenommen P2SH
 fromAddress = Adresse.fromP2SHHash(MainNetParams.get(), pubKeyHash);
 } else if (Brocken.size() == 2) { // angenommen P2PKH
 fromAddress = new Adresse(MainNetParams.get(), pubKeyHash);
}
 zurück fromAddress;

 } catch (final ScriptException x) {
System.aus.println(x.getMessage());
}
}

 return null;
}

(Hinweis: ich benutzte die Namen von Variablen, pubKey und pubKeyHash hier, aber in dem Fall P2SH diese werden stattdessen ein Skript und ein Skript hash. Diese Methode könnte auch zu Problemen führen, wenn die Ausgabe verwiesen wird, ist eine multisig, P2PK, oder etwas nicht-standard.)

Ich merke auch, deine Methode gibt nur die ersten Absender-Adresse. Wenn eine Transaktion hat Eingänge aus verschiedenen Quellen, könnte es sich lohnen, der Rückkehr eine Liste oder ein set von diesen Absender-Adressen. Nur so ein Gedanke.

Hoffe, das hilft!

+532
Dazel 12.08.2011, 21:57:48

Es kommt darauf an, XRP ist die tatsächliche oder wahrgenommene-Dienstprogramm, dann die Spekulation auf XRP Zukunft; die meisten scheinen bullish, so gibt es Kurssteigerungen. Da XRP wird als Verbindungsstück zwischen ALLEN Währungspaaren innerhalb des Ripple-Netzwerk, XRP halten Ihre Nützlichkeit und in der Tat wahrscheinlich noch nützlicher werden, wie die Zeit vergeht und neue Brücken über die zuvor isolierte Märkte. XRP wird helfen, schmieren den Motor von dem Ripple-Protokoll. Solange das Protokoll verwendet wird, jeden Tag mehr und ist "gesund", was es derzeit ist, ist der Preis von XRP "sollte" zu erhöhen zusammen mit es – ebenso wie ein motor braucht Schmieröl zu erhalten.

Es ist auch eine chance es könnte sich eine Art "reserve" - Währung in der Zukunft, vorausgesetzt, der Erfolg des Ripple-Protokolls.

+501
ertel pat 10.11.2010, 04:08:04

Ich habe 4 Grafikkarten: 2x 7970 & 2x 6970.

Dies ist eine Frage der Effizienz in Bezug auf MH/s. Ganz einfach, ich würde gerne wissen, was besser ist:

  1. ~1900 MH/s auf einer Maschine
  2. ~1200 MH/s und ~700 MH/s auf den jeweiligen Maschinen
  3. Es spielt keine Rolle,

Könnte das bitte um Antwort gehören Effizienz für sowohl solo-mining und mining-pool?

+482
PONRAJ 17.01.2019, 19:58:44

Für einige Grund ich bekomme den Fehler: {"code":-25,"message":"Fehlende Eingaben"}

EDIT: Update-Fehler jetzt, dass die volle testnet blockchain heruntergeladen

"code":-26,"message":"16: zwingend erforderlich-script-verify-flag-failed (Operation nicht gültig mit der aktuellen stack-Größe)

Ich bin mir nicht sicher, warum ich immer diese Fehlermeldung. Kann mir jemand helfen debug oder zeigen Sie mich in die richtige Richtung ? Mit TESTNET3

0100000002f739b61642740a6f9b24859a30cf5f248722e9dd8f38f981e5d8a7c1f16354350100000000ffffffff0a31a52da8f2fc706d15025810eca7b6bfa53bdabcc5feefc5d55e1d2f728a170000000000ffffffff0290333200000000001976a9141ce00dca082ca1215c9e5a7a3237d267124fea3288ac00000000000000001a6a1857485920546573746e65742067697665206d65207061696e00000000



{
"Version": "1",
"LockTime": "0",
"Vin": [
{
 "TxId": "355463f1c1a7d8e581f9388fdde92287245fcf309a85249b6f0a744216b639f7",
 "Vout": "1",
 "ScriptSig": {
 "Asm": "",
 "Hex": ""
},
 "CoinBase": null,
 "Sequence": "4294967295"
},
{
 "TxId": "178a722f1d5ed5c5effec5bcda3ba5bfb6a7ec105802156d70fcf2a82da5310a",
 "Vout": "0",
 "ScriptSig": {
 "Asm": "",
 "Hex": ""
},
 "CoinBase": null,
 "Sequence": "4294967295"
}
],
"Vout": [
{
 "Value": 0.0329,
 "N": 0,
 "ScriptPubKey": {
 "Asm": "OP_DUP OP_HASH160 1ce00dca082ca1215c9e5a7a3237d267124fea32 OP_EQUALVERIFY OP_CHECKSIG",
 "Hex": "76a9141ce00dca082ca1215c9e5a7a3237d267124fea3288ac",
 "ReqSigs": 1,
 "Type": "pubkeyhash",
 "Adressen": [
"mi9dcxfvGTsDCs46UZXXYQ8JH5MLcGxMxz"
]
}
},
{
 "Wert": 0,
 "N": 1,
 "ScriptPubKey": {
 "Asm": "OP_RETURN 57485920546573746e65742067697665206d65207061696e",
 "Hex": "6a1857485920546573746e65742067697665206d65207061696e",
 "ReqSigs": 0,
 "Type": "nulldata",
 "Adressen": null
}
}
],
"TxId": "998221ecf0e85c1b3f1e06fbdfd5bb6b2957c244fcdbb8a2e2a8ad9b3270d440"

}

+458
Care 24.11.2014, 14:31:19

Ich bin derzeit mit blockchain payment API. Diese API hat die Adressen für den Empfang von Zahlungen. https://blockchain.info/api/api_receive

Können wir wissen, die Liste der ungenutzten Adressen in dieser blockchain-API geschaffen hat. Ich weiß, wir können wissen, die Anzahl der Lücke(nicht verwendete Adressen), aber ich würde gerne wissen, die detail-Adressen. Ich überprüfte Einstellungen->Adressen->Managed-Adressen auf meine blockchain wallet-Konto. Jedoch konnten nicht in Ordnung diese Informationen. Nur ein paar hier angesprochen sind dort aufgeführt.

Ihre Ratschläge werden sehr geschätzt.

+375
CedricCornelis 15.06.2017, 06:37:22

Ja, Bitcoin Core macht eine Komprimierung der standard-Ausgabe-Skripte, um zu speichern, die minimale Menge an Daten benötigt.

Jedenfalls gehe ich Recht in der Annahme, dass Sie nur eine Adresse von Skript-Typen 0 und 1 (von base58-Kodierung die Skript-Daten)?

Ja

In anderen Worten, die chainstate leveldb enthält keine Zeugen-Daten erhalten Sie Adressen für utxos mit P2WPKH und P2WSH scripts?

Wenn durch Zeugen die Daten, die Sie bedeuten Segwit Ausgänge, keine. ALLE Ausgabe scriptPubKeys werden in der Datenbank gespeichert, sonst wäre es nicht in der Lage, um zu überprüfen, Transaktionen, verbringen beliebige Skripte und segwit scripts. Diese Skripts gespeichert werden, ohne spezielle Kompression (also die Art Dinge hier) und nur serialisiert ist. Segwit-Ausgänge sind bereits in eine minimale form, so gibt es keine Notwendigkeit für eine Art hier.

Da alle scriptPubKeys in der Datenbank gespeichert sind, können Sie berechnen, die Adresse für jedes UTXO, wenn er eines hat, einschließlich segwit UTXOs.

Auch der Begriff Zeugnis-Daten beziehen sich auf die Unterschriften und Daten für eine Transaktion, verbringt segwit Ausgabe. Es bezieht sich nicht auf etwas, das segwit Verwandte. Die Verwendung des Begriffs "Zeugen Daten" Ihre Frage ist verwirrend.

+312
Alex Yeremenko 26.06.2017, 00:36:38

So sind alle Transaktionen, werden in den nächsten block schon fest, bevor der block gefunden wird?

Ja. Sobald der block abgebaut wurde, der Bergmann nicht ändern können, welche Transaktionen in den block, ohne nochmal seine Arbeit.

+273
Sam Sehnert 01.10.2015, 12:02:23

Bitcoin nutzt den SHA-256 und RIPEMD-160-hashes. In den meisten Fällen eine Doppel-Runde von SHA-256 verwendet wird, aber für Adresse generieren, RIPEMD-160 verwendet wird, denn es erzeugt einen kürzeren hash-Wert. RIPEMD-160 ist ein 160-bit-oder 20-byte-hash-Wert, während SHA-256 eine 256-bit-oder 32-byte.

So RIPEMD-160 verwendet wird, für die es kürzer hash. Allerdings, SHA-1 produziert einen 160-bit-hash. RIPEMD-160 ist eine weniger populäre Algorithmus aber in der Tat, erzielt genau das gleiche wie SHA-1 gilt.

Der einzige wirkliche Unterschied, den ich im internet finden kann, ist in dem folgenden fragment aus RIPEMD-160 Wikipedia-Seite:

RIPEMD-160 wurde in der offenen akademischen Gemeinschaft, im Gegensatz zu die NSA entwickelt, SHA-1 und SHA-2-algorithmen. Auf der anderen Seite, RIPEMD-160 zu sein scheint, verwendet etwas weniger Häufig als SHA-1, die möglicherweise verursacht haben, werden weniger hinterfragt als SHA. RIPEMD-160 nicht bekannt ist, eingeengt werden keine Patente.

Sind patent-Probleme der Grund? Warum SHA-1 ist ein problem, aber SHA-256 nicht? Ich weiß, dass SHA-1 und SHA-2 (von dem SHA-256 ist ein Teil) sind verschiedene Iterationen von SHA-initiative und so haben wahrscheinlich sehr unterschiedliche rechtliche Umsetzung.

Hat jemand wirklich weiß, warum RIPEMD-160 ausgewählt wurde, bevor die populäreren SHA-1?

+264
Jonatas Eduardo 24.10.2016, 07:36:25

Wenn ich könnte kaufen eine bitcoin Exchange Eine für 2000$, umdrehen und sofort verkaufen Sie auf Exchange B für 2.500 US-Dollar, und machen einen sofortigen Gewinn von $500, würde ich den ganzen Tag tun, und Reich!

Aber wenn sogar eine kleine Preis-Diskrepanz existiert zwischen zwei Börsen, viele Menschen finden Sie es, und starten Sie den Kauf auf eine/Verkauf auf der anderen.

Allen, die einseitig den Kauf in einem Markt und verkaufen auf dem anderen Markt bewegt sich der Preis wieder zu einem Gleichgewicht.

+246
Pratik Parmar 02.02.2015, 09:39:43

Ich will laufen zwei Instanzen von bitcoind auf meinem Rechner.

Ich weiß, dass mein bitcoin.conf-Datei befindet ./bitcoin/bitcoin.conf, und ich weiß (Dank diesem thread), dass ich ändern muss mein .conf-Datei, um auf verschiedene Daten-Verzeichnisse und RPC-ports, etc.

Allerdings gibt es nur eine .conf-Datei.

Wie gehe ich über den Hinweis meiner zweiten bitcoind Instanz auf eine neue bitcoin.conf-Datei? Ich kopierte das Verzeichnis mit den kompilierten code in ein neues Verzeichnis, dass ich die Annahme, dass der kompilierte code kann kopiert werden in ein anderes Verzeichnis und es funktioniert ohne Probleme.

+189
Joshua Mark 26.11.2016, 05:57:14

Ich bin mir nicht sicher was du meinst mit Sortieren, aber hier ist ein kleines python-Skript zum überprüfen auf doppelte txid ' s:

importieren json
from sys import argv, stdin

Datei = stdin.read() #liest die Transaktion von der input-Liste
json_file = json.Lasten (- Datei)

#zählt die Anzahl der doppelten txid ' s
txid_list = [Transaktion["txid"] für die Transaktion in json_file]
print "Es gibt", len(txid_list) - len(set(txid_list)), "Duplikate"

Nehmen wir an, Sie speichern diese in eine Datei namens check_duplicates.py. Jetzt müssen Sie nur die Ausgabe der Transaktionen, die auf eine Datei und ziehen Sie Sie, um das Skript:

$ ./bitcoind -datadir=1 listtransactions "*" > Transaktionen.melden
$ python check_duplicates.py < - Transaktionen.melden
Es gibt N Duplikate

Je nachdem, was Sie brauchen, andere Sortiervorgänge durchgeführt werden kann. Es ist einfach zu verwalten json mit python.

+188
Aravindh S 19.01.2010, 06:49:09

Ich begann Bergbau auf dem computer eines Freundes, und es zeigt 300 kH/s. Aber wenn ich die Forschung anderer Völker,' hash-raten, die ich in der Regel sehen MH/s. Sind diese Geschwindigkeiten die gleiche wie Kilobyte und Megabyte?

Auch, wenn ich sagen 300 kH/s bedeutet das, dass rund 300.000 Hashes pro Sekunde generiert?

+123
Raymond Rosenbaum 11.03.2015, 01:31:53

Wenn ein HD-Brieftasche nur gibt mir die 12 Wort Mnemonik, wie kann man die master public key?

+115
user28511 18.03.2018, 21:42:54

Während sicherlich nicht so fortschrittlich wie nealmcb s writeup von homomorphe Verschlüsselung, eine Lösung mit einem vernünftigen Maß an Sicherheit gegen "Gummi-Schlauch-Zugang" konnte gebaut werden, die über eine Kombination von kalten Lagerung, M von N, die Unterzeichnung und plausible deniability Passwörter.

Grundsätzlich, Sie halten die meisten Ihrer bitcoins in einer oder mehreren offline-wallets, die gehalten werden in einem physischen format an einem sicheren Ort, um Kompromisse diese Münzen/Portemonnaies hätte Sie genötigt in die physisch Reisen zu diesem Ort, das ist viel riskanter auf den Dieb, als einfach nur gegen ein Passwort von dir. Zweitens, wenn es drei "Unterzeichner" auf dem main-account und zwei von Ihnen waren erforderlich, um eine übertragung, schlagen die Kennwörter, die aus mindestens zwei von Ihnen ist doppelt so hart wie schlagen sich die Passwörter aus nur einer, besonders wenn Sie weit entfernt. Schließlich wäre es eine einfache Sache für viele vorhandene Websites, um Benutzername - /Passwort-Kombinationen, Ihre unique-Einschränkung, eher als nur username. Dies würde effektiv ermöglichen Benutzern das erstellen von einer oder mehreren "dummy" - Konten, die gefährdet werden könnte, ohne Ihre gesamte balance. Da teilen Sie alle den gleichen Nutzernamen, wäre es schwierig zu beweisen, wie viele Konten jemand hatte, ohne eine vollständige Kompromittierung der Website selbst, also die Bereitstellung von zumindest gewisse plausible deniability.

+78
Adeep 31.07.2016, 17:47:22

Nach der Blockchain.info: Kosten pro Transaktion, die neueste "Kosten pro Transaktion", Wert 16 USD. Anscheinend ist es nicht die Transaktionsgebühr, was bedeutet es dann?

+56
Michael Andreev 15.04.2013, 08:28:15

Nein, Sie sind an nichts fehlt. Ja mit P2PKH verbirgt den öffentlichen Schlüssel, und ja, der öffentliche Schlüssel wird enthüllt werden, wenn die UTXO ausgegeben wird (der öffentliche Schlüssel wird benötigt um die Signatur zu prüfen). Daher die Verschleierung der öffentliche Schlüssel besteht nur, bis der UTXO ausgegeben wird und nicht nach. Dies ist, warum es wird empfohlen, nicht zu verwenden Sie die gleiche Adresse zweimal. Wenn Sie teilweise verbringen UTXO, die 'Menge ändern' gesendet werden soll, zu einer neuen Adresse, also den öffentlichen Schlüssel des neuen UTXO ist noch verschleiert.

+54
Hanxiao Lu 14.08.2012, 03:19:31

Ihre Transaktion, zwar nicht ungültig, ist nicht standard. Da es nicht dem standard entspricht, wird es nicht weitergegeben werden und wird zurückgewiesen als nicht-standard. Allerdings bedeutet dies nicht, dass es nicht in einen block; es können. Es erfordert nur, dass die miner und alle Knoten zwischen dir und der miner muss ausgeführt werden, einige software, die akzeptiert und relais nicht-standard-Transaktionen. Jedoch nicht viele Knoten machen, so haben Sie möglicherweise eine harte Zeit, gute Ausbreitung der Transaktion.

+15
Michael Chambers 18.05.2016, 11:24:31

Fragen mit Tag anzeigen