RPC-Aufruf zu bekommen unbestätigten Gleichgewicht auf einer Uhr nur die Brieftasche

Wir haben eine bitcoin-core-client, der sich auf einer Produktions-Maschine. Diese Maschine kann den privaten Schlüssel, so dass jede Adresse, die Hinzugefügt wird, als nur zusehen.

Bislang hat es funktioniert perfekt, aber vor kurzem haben wir anzeigen müssen die btc-Betrag, der darauf wartet, Bestätigung und der Betrag bestätigt wird (mindestens 1 Bestätigung)

bitcoin-rpc getbalance * 0 wahr
bitcoin-rpc getunconfirmedbalance

dies sind die zwei Methoden, die ich im Netz gefunden habe, die funktionieren sollte, aber Sie funktionieren nicht.

getbalance gibt nur den bestätigten Betrag und getunconfirmedbalance gibt immer 0

Wie bekomme ich die unbestätigten Gleichgewicht auf einer Uhr nur die Brieftasche?

+53
sonata101010 05.07.2012, 21:48:59
23 Antworten

Ich glaube, ein tx ist aus einer Ausgabe der vorhergehenden tx.
Also, ich glaube auch, dass alle tx zurückzuführen sind, zu Texas, die ursprünglich (als mining-Belohnung).
Aber, in blockchain.info und blockexplorer.com konnte ich nicht finden, relais von tx. Wir kennen nur die Verbindung der Adressen in der tx-Seite.

Dann habe ich drei Fragen über relais von tx.
1. Ist eine id(hash) des tx-inklusive in der nächsten tx-id?
2. Gibt es eine Möglichkeit, um Informationen von früheren tx in diesen websites ?
3. Warum diese websites verstecken Verbindung von tx?


Vielen Dank für die Hilfe!

+925
Jofre Mateu 03 февр. '09 в 4:24

Dank @pieter-wuille, ich bestätige, es ist ein P2SH embedded Segwit Adresse:

$ echo '0 [a01..pukbKeyHash..e8e]' | bx-script-zu-Adresse -v-196
2Mu..xxxx..r

Oder:

$ echo '0 [a01..pukbKeyHash..e8e]' > script3
$ bx Skript-encode < script3 | bx sha256 | bx ripemd160 | bx base58check-encode --version 196
2Mu..xxxx..r

Das ist die Adresse, die ich suchte.

+893
user22674 25.02.2014, 01:05:52

Was sind die Unterschiede zwischen getwork und getblocktemplate? Wer die Notwendigkeit erkannt, für das neue Protokoll? Wer waren die primären Mitwirkenden zu seiner Schöpfung?

+838
Niiikka 12.09.2014, 04:53:26

Bitten Sie ggf. ViaBTC.com für eine schnellere Transaktion. Wenn Ihre Transaktion schließt ein minimum von 0,0001 BTC/KB Gebühr, können Sie uns Ihre txid der Transaktion Accelerator so ViaBTC priorisieren Sie Ihre Transaktion. Die 100 Beiträge Grenze setzt jeder vollen Stunde.

+778
orison 19.01.2012, 23:47:05

Ist es möglich, eine blockchain-system, das ermöglicht das herunterladen von bestimmten Blöcken aus der blockchain nicht auf die gesamte blockchain?

In meinem Fall zum Beispiel, ich brauche nur 1 giga in der gesamten Kette, also warum muss ich alle herunterladen die blocks? Ich verstehe, dass dies geschieht, um sicherzustellen, dass die Kette nicht manipuliert wird und so weiter...

Aber ist es möglich, um es wie eine torrent-Datei? wo können Sie nur die Dateien herunterzuladen, die Sie brauchen, und keine Notwendigkeit zum download, die alles mit es.

+775
Mehdi Sadeghi 20.11.2010, 09:41:09

Unter Berücksichtigung, dass 64bytes Tasten sind wahrscheinlich Saatgut Schlüssel in bip32 format, das Sie benötigen könnten, um daraus die wichtigsten zuerst. Ich veränderte den code, um widerzuspiegeln, dass

npm installieren coinstring hdkey
Knoten 
var HDKey = require('hdkey')
var cs = require('coinstring')

// Das ist dein base64 Schlüssel 
var seed = 'oMQqnDrGq/K6aplGroOvGPUb8cn6fazEySUTzE3QFYndqcd13nta+sc1R8VmLYGp6TYaCqxgSnOjIb2RA7zorw=='
var hdkey = HDKey.fromMasterSeed(new Buffer(seed, 'base64'))

var hex = hdkey.privateKey
var version = 0x80; //Bitcoin privaten Schlüssel
console.log(cs.Codierung(hex, version)) 

Es sollte Ihnen die vertraute WIF-format private key.

5HyfJgfUm7WVgUrLuo9uwtJR6ME7MYfGrhk2aeckzrooskygxp8

+730
Hamid Pishbin 13.02.2014, 18:11:45

Der fix war:

setsebool -P httpd_can_network_connect 1

Amazon AWS offenbar Grenzen httpd-Netzwerk-verbindungen zunächst.

+711
Amar Alamar 26.08.2019, 03:42:32

Der Zweck des IBLT-based block-transfer-Mechanismus ist die Reduktion der Bandbreite (wie viel Daten gesendet insgesamt) und der Wartezeit (wie lange es dauert, bis der transfer der block), und je nachdem, auf welcher die Priorität hat, gibt es unterschiedliche Lösungen.

Wenn die Wartezeit kurz ist kein Grund zur Besorgnis, Sie würden senden Sie einfach eine block-header zusammen mit einer Liste von (abgeschnitten) txids, und die peer-würden, Antworten Sie mit "mir fehlt Transaktionen 3, 7, 112 und 234", gefolgt von " just senden, die Transaktionen. Eine solche Lösung würde mehrere round-trips: zuerst senden die txids, die peer anfordert, die er fehlt, und senden Sie uns den Transaktionen.

Wenn die Latenz ist ein Problem, aber das ist immer noch nur 3 Schritte, aber jeder dieser Schritte kann in der Größenordnung von einer halben Sekunde oder mehr, je nachdem, wie weit entfernt Sie sind. Wenn Ihre Netzwerkverbindung über 10 Mbit/s, können Sie einfach übertragen Sie den gesamten block in der zusätzlichen Zeit verschwendet, die Rundfahrten.

So ist dieses, wo IBLT und andere effiziente blockieren die Vermehrung Protokolle kommen: Sie versuchen, zu konstruieren, ein einzelnes Paket gibt genug Informationen für die peer-zu rekonstruieren, in der-block, aber ohne das senden der vollen block. Gelegentlich schlägt dieser Versuch fehl, false positives auftreten, und die Rekonstruktion wird scheitern (als die block-hash nicht mit dem übereinstimmt, was in Anspruch genommen wurde). In diesem Fall werden wir nur zurückgreifen, um die naive version: go Antrag der Transaktionen, die Sie verpassen, und gegen die damit verbundenen zusätzlichen Latenz.

+678
Drejk 07.02.2017, 03:40:51

Möchten Sie vielleicht einen Blick auf die Konzepte der "Makel" und "colored coins". Sie können auch hier beginnen:

Taint: https://bitcointalk.org/index.php?topic=92416.0

Farbige Münzen: https://bitcointalk.org/index.php?topic=106373.0

+600
TRUSISHKA 08.10.2012, 16:39:55

Ich bin auf der Suche, um einen Wasserhahn Webseite, aber Frage mich, was ist die maximale Anzahl der Ausgabe-Adressen kann man senden, um mit einem bitcoin Transaktion?

+591
Just jude 09.07.2015, 12:30:25

Ich würde gerne eine kopflose bitcoind Instanz auf einem server, um die zum Netzwerk beitragen. Gibt es spezifische Konfigurations-Optionen, die empfohlen werden für diesen Zweck?

Meine Absicht war es in Erster Linie um das Netzwerk sicherer, indem Sie eine weitere "gute" Knoten, aber da bin ich nicht vertraut mit einigen der vielleicht mehr subtilen Aspekte des Protokolls, würde ich begrüßen Hinweise auf andere Möglichkeiten, wie ein einzelner Knoten oder beitragen könnte.

Ich war nicht unbedingt der Planung ausgeführt Bergmann.

+575
user34075 02.12.2014, 03:06:26

Ich sehe zwei große Lösungen:

Verwenden Sie eine API, können Sie Blöcke durch einen block Höhe

BlockChain.info ermöglicht die Abfrage für Blöcke in einer bestimmten Höhe. Beispiel:

https://blockchain.info/block-height/100?format=json

gibt

{ "blocks" : [
{
"hash":"000000007bc154e0fa7ea32218a72fe2c1bb9f86cf8c9ebf9a715ed27fdb229a",
"ver":1,
(snipped)

(Denken Sie daran heraus zu filtern, Blöcke, die nicht in der Hauptkette, mit einem Blick auf die "main_chain" - Attribut.)

Sie können hash-Werte, und suchen Sie den block:

https://blockchain.info/rawblock/000000007bc154e0fa7ea32218a72fe2c1bb9f86cf8c9ebf9a715ed27fdb229a

gibt

{
"hash":"000000007bc154e0fa7ea32218a72fe2c1bb9f86cf8c9ebf9a715ed27fdb229a",
 "ver":1, 
"prev_block":"00000000cd9b12643e6854cb25939b39cd7a1ad0af31a9bd8b2efe67854b1995",
"mrkl_root":"2d05f0c9c3e1c226e63b5fac240137687544cf631cd616fd34fd188fc9020866",
"Zeit":1231660825,
(snipped)

(Diese ist im JSON-format Benutzerdefiniert, um die BlockChain - ich habe keine gefunden API-Anbieter, die zurückkehren wird der roh block. Ein bisschen nervig.)

Schreiben Sie einen client, der bekommt die Blöcke aus dem Netz

Lädt es die Kopfzeilen des Bitcoin blockchain (viel kleiner als die ganze blockchain). Dann geht es durch die block-Header und downloads die, die Sie wollen.

WalletAppKit kit = new WalletAppKit(MainNetParams.get(), new java.io.Datei("."), "test");
// Kopfzeilen herunterladen
kit.startAndWait();
BlockChain Kette = kit.Kette();
BlockStore bs = Kette.getBlockStore();
Peer Peer = kit.Peer().getDownloadPeer();
// Letzten block
StoredBlock current = bs.getChainHead();
// Schleife, bis die genesis-block
while(current.getHeight() > 1) {
 // Komplett heruntergeladen werden Blöcke zwischen 100 und 200
 if(100 <= Strom.getHeight() && current.getHeight() <= 200) {
 Block b = peer.getBlock(Strom.getHeader().getHash()).get();
System.aus.println(b);
}
 Strom = Strom.getPrev(bs);
}

Dieses Beispiel verwendet BitcoinJ, aber andere SPV Bitcoin-Bibliotheken können dies auch tun.

(Dank an Diego Basch für den code.)

+570
Drummond Pike 10.10.2014, 14:39:24

Ich wurde beauftragt, eine Brieftasche von "Versteckte Brieftasche" Zwiebel-Website - meine BTC nie angekommen ist weil es ein Betrug. Ich habe die wallet-Adresse und den Nachweis, dass es zugewiesen wurde, der mich nach Benutzername und Passwort Kann ich meine bitcoins zurück oder senden aus, dass die wallet auf einen anderen ?

+567
Jane WIlkie 17.10.2018, 18:23:07

Sie möglicherweise wollen überprüfen, BIP16 (pay-to-script-hash) https://github.com/bitcoin/bips/blob/master/bip-0016.mediawiki

Die Signatur ist nicht im Lieferumfang enthalten in den erlösen Skript, in der Regel nur der öffentliche Schlüssel. (Ihr Skript könnte alles sein, alles was ich weiß ist, es hat eine CHECKSIGVERIFY in ihm, so bin ich der Beantwortung breit...)

Der INPUT SCRIPT aka scriptSig der Transaktion AUSGABEN aus der P2SH Ausgang müssten dann enthalten die Signatur und die gesamte serialisiert einlösen Skript (preimage der script-hash in der Ausgabe).

+517
pouzeot 12.06.2017, 04:45:34

Basierend auf dem time-frame und mein Eindruck von den Fähigkeiten der verschiedenen Gruppen zu entwickeln wallet-software in diesem Zeitraum meine erste Vermutung war, dass die Bitpay copay software könnte die Quelle dieser Signaturen. Copay ist eine multi-Signatur wallet wurde ursprünglich veröffentlicht , um diese Zeit.

Als ich bin kein javascript-Entwickler es nahm mir ein bisschen Mühe zu Graben, durch den historischen Abhängigkeiten auf den code, war zu diesem Zeitpunkt geltenden, aber ich glaube, mein Verdacht wahrscheinlich bestätigt:

[Wenn es gibt ein paar tool zu gehen, greifen alle Abhängigkeiten einer JS-Anwendung bestimmten Zeitpunkt gewesen wäre super nützlich.]

return new bignum(SecureRandom.getRandomBuffer(8));

Dieser code wählt ein 8-byte (64-bit) nonce. Ich bin nicht sicher , wie genau dieser Fehler kam über--senden 32 an eine Funktion, die nahm bits als ein argument Größe, zum Beispiel, hätte Sinn gemacht-aber wie auch immer es geschah, es war nicht gefangen im Rückblick erscheint und verschickt wurden.

Die pull-Anforderung eingeführt, das die Schwachstelle war dabei die javascript cryptography Umsetzung schneller durch den Wechsel der zugrunde liegenden EG-Operationen, um eine andere Bibliothek 'elliptisch'. Zu der Zeit elliptisch vorgestellten eigene Unterzeichnung Funktionen, die im Lieferumfang enthalten RFC6979 deterministische nonce-Generierung. Ich sehe nicht ein, warum bitcore nicht geändert, um die Verwendung der elliptischen Unterzeichnung Funktion auch mit dem Autor von elliptischen kommentieren in der Unterstützung der öffentlichkeitsarbeit, aber da gab es pre-bestehenden 'zu Hause rollte,' das signieren von code, es kann nur das nicht geschehen, um niemanden zu wechseln, um die library-Routinen. Gibt es nicht viel Diskussion über die pull-Anfrage.

Die Sicherheitslücke wurde in der Folge festgelegt , aber schwache Signaturen weiterhin für einige Zeit. Denn Bitpay ist bitcore gefördert wurde als ein all-Zweck Bitcoin-Bibliothek ist es möglich, dass andere software als copay hatte, übernommen.

Ich bin nicht in der Lage zu finden, jede Ankündigung oder Diskussion über diese Sicherheitsanfälligkeit, andere als die fix im repository.

Allerdings habe ich nicht sorgfältig analysiert es, bemerkte ich, dass vor der Umstellung auf elliptisch, die codebase bisher verwendeten "bitcoin-js", die-zumindest in einigen Versionen--verwendet einen Zufallszahlengenerator, die schwach war, aufgrund eines review-umgehen subtile Art Fehler , so dass es durchaus der Fall sein kann, dass der Fehler-Einführung ändern sich einfach geändert, die software von einer form von Schwäche zu einem anderen.

Es ist auch möglich, dass, obwohl bitcore hatte genau die richtige Schwachstelle eingeführt, zum richtigen Zeitpunkt, dass es Zufall war und die schlechte Signaturen, die in das Papier erstellt wurden, durch eine andere Implementierung. Wenn dem so ist, denke ich, die parallele Bruch ist immer noch informativ.

Ich denke, die Forschung und die relevanten code stellen Sie für ein gutes Beispiel, wie einfach es ist, sich diese Dinge falsch, wie selbst kleine Fehler können in der Folge total security bricht, und dass die bloße Tatsache, dass etwas open-source ist nicht automatisch sichergestellt, dass es ausreichend abgeben.

+496
Mrjohn 25.07.2016, 00:55:42

Es gibt nur eine Handvoll von Arten von Skripts, die akzeptiert werden. Muss der code geändert werden, um zu akzeptieren, mehr Typen, das passiert gelegentlich. Aber man kann nicht einfach schreiben, beliebige Skripte.

Auch sehe ich nicht, wie CPU-intensiv würde dazu führen, dass einige Computer abzulehnen, zu blockieren.

+487
Mr Milk 23.01.2019, 21:15:07

Für die offline-pre-segwit Brieftaschen (Adressen beginnend mit 1), was die Vorteile von Migration oder nicht Migration zu segwit (Adressen beginnend mit 3)?

Obwohl segwit miner-Gebühren sind oder werden angeblich senken ich fand keine schlüssigen Daten auf genau, wie viel tiefer Sie sind im moment, daher gehe ich davon aus, dass die Aufbewahrung von Münzen in 'legacy' formatieren würde immer noch billiger sein im Hinblick auf künftige Ausgaben, da die miner Gebühr für den übergang zu einer segwit Adresse wäre immer noch deutlich höher als in Zukunft mögliche Gewinne. Ist das richtig? Würde dies immer noch wahr sein, wenn die Münzen werden ausgegeben, z.B. in einem Jahr, zwei oder fünf?

Unter den derzeitigen Nachteile von Migration zu segwit Geldbörsen ich sehe unvollständige Unterstützung in bestehenden Anwendungen, auch z.B. Myzel nicht mit einem ledger nano, wenn es so konfiguriert ist wie segwit. Diese subreddit schlägt vor, Sie gehen mit segwit.

Kann segwit betrachtet werden, bereit für den Einsatz?

+377
user3558605 28.10.2010, 23:57:29

Wenn ich verstehe, multi-PPS-richtig, es ist wirklich einfach.

  1. Wie funktioniert die multi-PPS-Arbeit: Bergmann, Alice, meldet sich bei Bob ' s-pool: Sie gibt Bob einen Ihrer Adressen (für Ausschüttungen) und Bob gibt Ihr eine seiner Adressen (zur Verwendung in coinbase Transaktionen). Bob will Alice geben Kredit für Bergbau Aktien, die zahlen, die coinbase-Adresse, und in definierten Abständen oder Ausgleichszahlungen, er werde die Zahlung senden, um Ihre Auszahlung Adresse. Alice registriert auch mit Charlie ' s pool, was gibt Ihr eine andere coinbase-Adresse, die nicht die gleiche Sache.

    Über ein Protokoll wie GetBlockTemplate, Alice bekommt einen block Vorlage aus einem vollen Knoten und fügt eine benutzerdefinierte coinbase-Transaktion mit zwei Ausgängen: der eine zahlt 50% der Summe+Gebühren auf der coinbase-Adresse von Bob 's pool, und man zahlt 50% der coinbase-Adresse von Charlie' s pool. Wenn Alice findet eine teilen, reicht Sie einen merkleblock für seine coinbase-Transaktion, plus die coinbase-Transaktion selbst, an beiden pools. Beide pools geben Ihr 50% der Gutschrift für diese Aktie basiert auf der Schwierigkeit, pool-Gebühren, und andere pool-Regeln. Das gleiche passiert, für einen block, außer dass Alice nur vorlegen muss, die vollen block mal so es kommt auf die block-Kette---die pools immer noch geben Ihren Kredit für es als eine Aktie, wenn Sie sehen es auf der block-Kette. Bei den angegebenen Lohn Intervallen, die bis zu den pool-Politik, jede pool zahlt Alice Ausschüttung-Adresse, basierend auf der Anzahl der Aktien, die Sie eingereicht und der Prozentsatz der einzelnen angerechnet auf den pool.

    Zwei pools mit jeweils 50% ist hier das Beispiel, aber in Wirklichkeit Alice verteilen können Ihr 100% bei wie vielen pools in welchem Verhältnis Sie will, vorausgesetzt es ist technisch möglich und erlaubt, Schwimmbad Politik. Denn das ist Pay-Per-Share (PPS), Alice Varianz vollständig bestimmt wird durch teilen Schwierigkeitsgrad---so Alice macht die gleiche Menge an Geld, Bergbau-für einen winzigen pool, als ein riesiger Swimmingpool, solange die Freigabe Schwierigkeit ist die gleiche.

    Der Clou---wenn ich das richtig verstanden habe---ist, dass multi-KKS reduziert auch die Varianz des pools auf den Durchschnitt aller pools Ihre Bergleute in mine in. Zum Beispiel, wenn alle Bergbau wurde in pools und jeder miner abgebaut in jedem pool (egal wie wenig von Ihren Belohnung haben, die Sie gewidmet ist, zu einem bestimmten pool), jede pool hätte Varianz genau gleich zu, dass der regelmäßige block Erstellung (z.B. 99.8% chance auf einen block abgebaut werden innerhalb von 60 Minuten: 1-exp(-1/10.*60)).

  2. Können multi-PPS bergbaulichen Zentralisierung: Sie können nicht verhindern, was schon geschehen ist. :-) Ernsthaft, multi-PPS ist kein Allheilmittel (und Herrn Rosenfeld nicht behaupten, dass es ist), und es gibt noch Skaleneffekten, profitieren große Swimmingpools---auch Dinge, die keine Bitcoin-Technologie lösen können, wie marketing-Vorteile. Was multi-PPS bietet, ist die Fähigkeit des kleinen pools haben die gleiche Varianz wie große pools, was einen erheblichen Wettbewerbsvorteil große pools genießen derzeit.

    Multi-PPS hat des weiteren sehr nützlichen Vorteil, dass, um es zu implementieren, block-Schöpfung Politik müssen getrennt werden, bis zu einem gewissen Grad vom pool-Ausschüttungen---in anderen Worten, wenn Alice Minen in beide Bob und Charlie pools zur gleichen Zeit, weder Bob noch Charlie wird so viel zentralisierte Kontrolle darüber, welche Transaktionen Alice erzeugt, die weitere Dezentralisierung der Bergbau.

    Dies ist jedoch auch multi-PPS ' s primäre Schwäche und wahrscheinlich der Grund, niemand hat es umgesetzt in den 15 Monaten, seit Herr Rosenfeld es als Erster beschrieben hat: aktuelle Bergbau-und pool-software ist nicht voll kompatibel mit dezentraler mining. Und, außer für die Bitcoin-Core-Entwickler Lukas-Jr, ich weiß nicht, wer den Schwerpunkt auf die dezentrale pooled mining möglich. (Vielleicht alle anderen, die wirklich kümmert sich um dezentrale pooled mining hat sich bereits eingeschaltet, um P2Pool.)

    Eine weitere Schwäche ist, dass die meisten Menschen nicht wichtig genug ist, verwenden Sie mehrere pools, oder, dass Sie gekommen sind zu Vertrauen bestimmte pool-Betreiber. Weil multi-PPS macht kleine pools mehr konkurrenzfähig, hoffentlich werden Sie in der Lage sein, zu innovieren, um sich mehr wünschenswert, um Bergleute. Zum Beispiel, können Sie sofort die Auszahlungen für jede Aktie erhielt mit einem micropayment-Kanal, erheblich reduziert das Vertrauen Bergleute müssen in den pool-Betreiber.

+362
user3049 19.03.2017, 21:28:26

0.9.0 veröffentlicht wurde, sind heute früher.

+331
Sydney Sroka 12.02.2012, 12:49:18

Nein, Wenn Sie den transfer-token von deiner Adresse zu einer anderen dann, dass die Transaktion store im Mempool und von Ihren miner entscheiden sollte, validieren, verarbeiten oder nicht. Wie, wenn Sie haben hohe Transaktionsgebühren dann miner Holen Ihre ersten Transaktion und legte im nächsten block, und wenn die Transaktionskosten sehr niedrig, dann kann es auch mehr Zeit für Validierung.

+240
honestduane 06.06.2016, 02:39:33

Der BOP die Enterprise-Bitcoin-Server ist ein open-source-full-node-Implementierung mit remote (das ist der client-Seite) Brieftasche. Der server lädt die block-Kette lässt sich die Transaktions-und block-Validierung und-Routen Transaktionen unterzeichnet an den client.

Der client verbindet sich mit dem server über einen message-bus. Es gibt eine Java-und andere APIs verfügbar, mit zusätzlichen client-Seite-Funktionen. Source code: https://github.com/bitsofproof/supernode

Kommerzielle Unterstützung und gehostete Instanzen verfügbar http://bitsofproof.com

+239
alfa64 01.06.2013, 23:06:13

Ich habe die öffentliche Adresse, und die privaten Schlüssel eines BTC wallet. Wie kann ich importieren diese in bitcoin core, so dass ich es verwenden kann zum signieren von Nachrichten?

Ich muss in der Lage sein, um eine Nachricht signieren, um zu zeigen, dass ich über die private keys für einen account.

Vielen Dank für jede Hilfe.

+218
Korol1468 24.07.2016, 03:39:44

Sie können dies tun, mit BitcoinJ durch die Umsetzung der PeerEventListener - Schnittstelle.

Die OnTransaction wird jedesmal aufgerufen, wenn eine neue Transaktion ist die Sendung aus und erhielt von einem Peer.

+16
fedulovnazar 13.02.2019, 16:11:27

Fragen mit Tag anzeigen