HASH160 zu-Adresse - Was mache ich falsch?

Ich bin der dieser code ausgeführt und es passiert nichts.

Ich bin versucht, hash160 ein Skript mit OP_HASH160 {scriptHash} OP_EQUAL und erhalten Sie einen P2SH-Adresse als Ausgabe, aber nicht sicher, ob dies das richtige Skript, dies zu erreichen.

// OP_HASH160 {scriptHash} OP_EQUAL
var bitcoin = require('bitcoinjs-lib')
var bscript = require('./src/script')
var types = require('./src/Arten')
var typeforce = require('typeforce')
var OPS = require('bitcoin-ops')

Funktion überprüfen (Skript) {
 var buffer = bscript.kompilieren(Skript)

 return buffer.Länge === 23 &&
 buffer[0] === OPS.OP_HASH160 &&
 buffer[1] === 0x14 &&
 Puffer[22] === OPS.OP_EQUAL
}
check.toJSON = function () { return 'scriptHash output' }

Funktion Kodieren (scriptHash) {
 typeforce (- Typen.Hash160bit, scriptHash)

 zurück bscript.kompilieren([OPS.OP_HASH160, f1b914051eaabf34c22d354053698e512b36, OPS.OP_EQUAL])
}

Funktion decode (buffer) {
 typeforce(check, Puffer)

 return buffer.Scheibe(2, 22)
}

- Modul.Exporte = {
 check: überprüfen,
 decode: decode,
 encode: encode
}

Was mache ich falsch? Dank

+702
imageek 04.08.2013, 06:36:58
19 Antworten

Ja, in der Theorie, aber es würde so lange dauern, dass weder Sie, noch ich noch Leben durch eine lange erschossen.

Auf etwa 10.000-Schlüssel-Paare pro Sekunde, mit einem Adressraum von 2^160, es würde nehmen Sie 50 tredecillion Jahren zu beenden.

Das ist 50,000,000,000,000,000,000,000,000,000,000,000,000,000,000 Jahren Um das zu relativieren, die das Alter des Universums wird über 13,000,000,000 Jahren

+981
coatli 03 февр. '09 в 4:24

enter image description here

Ich verstehe das Bild oben ist veraltet-die ich hier gepostet nur für Referenz.

Übernehmen Sie die erste tx ist für Alice (Eigentümer 1) und die zweite ist für Bob (Besitzer 2). Meine Vorherige Frage (Verwirrt Über Hash In Satoshi Nakamoto Diagramm) bedeckt, dass die Unterschrift, die bis Ende in die zweite Transaktion verwendet ECDSA und nimmt den Eigentümer 1 der private Schlüssel und eine Nachricht als input. Die message wird der hash der Transaktion 1 (weniger sig). Die sig, die gespeichert wird in der Transaktion 2, wenn die Prüfung mit Alice ' s öffentlichen Schlüssel, der beweist, dass Alice freigegebenen Mittel zu Bob.

Aber wie funktioniert das Netzwerk wissen, dass Alice geben sollen, diese Mittel zu Bob? Wenn Alice "schickt" Münzen zu Bob, Sie zuerst zu bekommen, ist Bob 's Adresse (wollen wir es einfach halten für jetzt und sagen, dass Alice Bob' s öffentlichen Schlüssel). Nach, dass, es scheint mir, dass das Netzwerk zu verschlüsseln, die Alice ' s Signatur mit Bobs öffentlichem Schlüssel, so dass, wenn Bob will, um zu überprüfen, die sig mit der ECDSA-überprüfung-Algorithmus, er ersten würde müssen, um erfolgreich zu entschlüsseln, die sig mit seinem privaten Schlüssel. Ist das richtig? Die andere Möglichkeit, die ich sehe es ist, wenn das Netzwerk erstellt Transaktion 2 mit Bob ' s public-id, die in ihm ist, und nur Bob kann die Verwendung der Gelder, die Transaktion aufzeichnen, da verbringen Sie diese Mittel, Bob müssen der private Schlüssel.

Wenn weder die Annahme oben richtig ist, gibt es etwas über das Protokoll, das sicherstellt, dass Alice die übertragung des Eigentums den angegebenen Empfänger erreicht? Wenn Sie einen Fehler macht, dass der Empfänger den öffentlichen Schlüssel, gibt es eine Möglichkeit für Sie, korrigieren Sie Ihre Fehler, wenn Bob erhält nie den Münzen?

+955
Mho 18.09.2010, 20:40:50

Wenn Sie kaufen eine Reihe von Bitcoins mit schmutzigen Geld, und dann verkaufen die Bitcoins für sauberes Geld - Sie haben im wesentlichen in der Maschine gewaschen Ihr Geld mit Bitcoins. Sie können dann zu behaupten, dass Ihre Erträge ergaben sich aus Bitcoin-mining, und es wäre schwierig zu untersuchen.

Es ist sehr schwer, sich zu anonymisieren Ihre Bitcoin Transaktionen. Ich denke der Reiz ist, dass es fügt eine zusätzliche hoop für die IRS, um zu springen über.

Es ist nicht nur möglich und bewiesen , dass die Menschen verfolgen können-Transaktion Ursprung, aber es wird wahrscheinlich einfacher sein, zu tun in der Zukunft, wenn der Bitcoin-Kern bleibt unverändert in dieser Hinsicht.

Bitcoin-Anonymität ist ein Trugschluss.

+831
Daneel 23.05.2018, 10:46:10

Man muss nicht existieren, aber ich habe es auf meiner TODO-Liste (die ist ziemlich lang).

+754
Witali Tarasenko 06.03.2011, 13:13:14

Nichts hält es. So, für größere Transaktionen, wäre es klug, für die Empfänger auf eine Bestätigung wartet, bevor die Lieferung der Ware.

In diesem Fall, das restaurant hat die unternehmerische Entscheidung, dass es das Risiko Wert ist, um zu dienen Sie Ihre Mahlzeit, bevor die Transaktion bestätigt, obwohl es könnte später werden doppelt ausgegeben. Sie anscheinend denken, dass auf lange Sicht, solche Verluste überschritten werden, würde durch das zusätzliche Geschäft aus, die Kunden bezahlen mit Bitcoin und erhalten Ihre Nahrung sofort.

Wenn Sie waren verkaufen, etwas größer wie Computer, Autos oder Häuser, würden Sie wahrscheinlich entscheiden, dass es das Risiko nicht Wert, und das würden die Kunden eher bereit sein, zu warten, um zu erhalten Ihre Ware.

+660
Kalai Arasi 21.08.2013, 19:44:52

Im Moment versuchen zur Schätzung der Frequenz von eingehenden unlimitierten Aufträge zu MtGox Orderbuch. Übernehmen Sie die folgenden Kauf-limit-order:

GEBOT [email protected]

GEBOT [email protected]

gegen die EINEN Markt-Auftrag zum Verkauf 5 btc gesendet wird. Die Transaktionen werden aufgezeichnet, zum Beispiel als:

Trade_ID Unix_date Preis Menge Typ-Eigenschaften

1 123456789 150 2 verkaufen Markt

2 123456789 149 3 verkaufen Markt

Das zentrale problem ist, dass, obwohl es war nur eine eingehende Bestellung wird aufgenommen, die in zwei Reihen, denn es war abgestimmt, der gegen zwei herausragende limir Aufträge.

Mögliche Lösungen:

1) Wenn die beiden trades haben gleich TRADE_ID, ist es möglich, die Gruppe der Transaktionen. Funktioniert es wirklich so? Machen trades, die aus einem Auftrag, aber abgestimmt gegen mehr Aufträge gleichen Trade_ID?

2) Gruppierung nach unix-time-stamp. Ich gehe davon aus, dass diese beiden Transaktionen gleiche Zeitstempel? Wenn ja, ist es möglich, dass jeder andere Markt-Auftrag kommt gerade zur selben Mikrosekunde, wie oben? Oder ist die Mikrosekunde genau so kleines Zeitintervall, dass es nicht möglich ist, für zwei Aufträge, um den gleichen unix-Zeitstempel?

+634
rdsmith48 03.07.2010, 09:13:57

Gegeben ein Skript mit Multisig, wie kann ich konvertieren von Adressen für die hash, die verwendet werden können in das Skript dann montieren Sie das Skript und starten Sie es innerhalb einer Transaktion auf Bitcoin-testnet, das kann man auf einem block explorer ?

Auch codieren argument für OP_CHECKLOCKTIMEVERIFY , um die Gültigkeit in Bezug auf einen block Höhe ?

+629
Yoshi 16.02.2013, 01:19:07

Es ist ein upstart-Skript für Ubuntu in das Bitcoin-Core-source-tree. Mit dass ist die richtige Art und Weise.

Ich habe allerdings gerade anmelden als das Benutzerkonto möchte ich laufen Bitcoin Core-daemon, starten Sie ein terminal (wenn ich in der GUI), und führen Sie den folgenden Befehl zum Bearbeiten meiner crontab:

crontab -e

Dann ich fügen Sie die folgende Zeile:

@reboot bitcoind daemon

Speichern Sie die Datei und beenden. Jetzt jedes mal, wenn der computer bootet, Bitcoin Core-daemon gestartet werden. Auf shutdown, init/upstart/systemd/was auch immer senden eines SIGTERM-signal, das bitcoind zu fangen und zu interpretieren, als Sie den Befehl starten, um ein Sicheres Herunterfahren.

+624
matt2mi 22.11.2012, 14:29:18

Wie veröffentlichen Sie eine Transaktion, die abgebrochen wird, wenn eine Ausgabe nicht behauptet, von einer bestimmten Zeit? (ie Rückgabe alle Münzen ausgegeben, um Ihre Eingaben oder sonst schaffen neue Bedingungen, unter denen Sie geltend gemacht werden können)

Ist das möglich?

+612
Bruce Goldstein 28.11.2017, 05:11:34

Die einzigen Systeme, die nutzen aus verteilt wird, sind diejenigen, die die Anzeige der Eigenschaft des seins "peinlich parallel", oder eine Näherung davon. Aufgaben, die nicht erfordern eine erhebliche Menge an zu übertragenden Daten zwischen Betriebssystemen, oder diejenigen, die nicht erfordern einen beträchtlichen Koordinations-diese Beschreibung passt gut. In der Regel so etwas wie eine Datenbank ist schlecht geeignet, um verteilt wird und aufgrund der Notwendigkeit, die Kohärenz, die sehr schwer zu erreichen auf einer Strecke.

Bitcoin ist das Gegenteil von einem verteilten system auf der Knoten-Ebene, die jeder Teilnehmer im system erwartet wird, wiederholen Sie den Prozess der Validierung in der perfekten Genauigkeit, mit der Hunderttausende oder Millionen von früheren versuchen Synchronisation, die geschehen sind, bevor Sie es. Mit der Anzahl der Knoten steigt, es gibt keine Veränderung in der Menge von Berechnungen durchgeführt, in beide Richtungen.

Generell alles zu fordern, um die Effizienz zu verbessern durch die Verwendung einer dezentralen oder verteilten Netzwerk sollte mit Skepsis, einfach deshalb, weil dies in der Regel ein harter Kampf, das ist übernommen aus anderen Gründen trotz seiner Ineffizienz, nicht in einem Versuch, um die Effizienz zu gewinnen. Exemplarisch für diese, Bitcoin wäre leistungsfähigsten, nützlichsten und zuverlässigsten, wenn es lief auf einem einzelnen server, aber das würde vor allem die Niederlage der design-Auftrag für sein Vertrauen-weniger.

+437
Lilit2 12.08.2014, 18:10:42

Sie könnten versuchen, bitcoinLocator. Sie werben Dienstleistungen, die Sie in Ihrem Bereich, und die Leute können die Nachricht, die Sie privat.

Sie können auch versuchen, die Veröffentlichung auf den bitcoin Foren services board

+408
Nikki A 16.03.2014, 23:27:46

Also vor ein paar Jahren, die ich erstellt einen privaten Schlüssel, indem Sie würfeln. Die folgenden Anweisungen aus bitaddress.org ich rollte ein Würfel 99 mal und trat den string in die bitaddress.org. Statt speichern den private key im WIF-oder HEX, schrieb ich die 99 stellige Zeichenfolge Würfel rollt. Allerdings habe ich einiges geändert, die Würfel zu Rollen, um das verschleiern der wahren privaten Schlüssel, wenn jemand stolperte über die 99-stellige zahlen. Jetzt kann ich mich nicht erinnern, welche Ziffer(N) ich geändert.

Mithilfe von Python-Bibliotheken, ich habe versucht, verschiedene Kombinationen/Permutationen der 99-stellige Zahl. Sachen wie was ist wenn ich vertauscht zwei Positionen oder gerade Ersatz von einer oder zwei Ziffern. Kein Glück.

Irgendwelche Ideen? Wie schnell kann ich Sie Schlüssel erstellen und überprüfen, ob mein Schlüssel passt zu meiner bitcoin-Adresse? Python-Bibliotheken, die ich gefunden habe, lassen Sie mich prüfen über 10 Permutationen einer Sekunde. Wie viel schneller kann ich mit C?

+350
Adam John 26.12.2014, 20:56:36

Hallo, ich bin mit multibit als meine bitcoin-wallet. Ich werde mit Geld-Gramm, um Geld in mein Konto. Ich weiß nicht, wie zu kaufen bitcoins für mich.

Auf multibit es sagt, dass Sie senden können Sie Münzen, um jemand oder verlangen Sie aber nicht zu sich selbst sagen. Ich will nicht senden Sie Sie an jemand anderen, nur mir. Ich bin mit bitinstant, um Gelder zu transferieren in bitstamp, aber wo bekomme ich die wallet-Adresse?

Wo gebe ich den Betrag möchte ich in bitcoins auf bitinstant? Und wie bekomme ich mein Geld von bitstamp in meine Brieftasche? Welchen muss ich zuerst verwenden und wie lautet die Adresse die ich in die website, die ich bin den Kauf von items aus, so dass Sie ziehen Sie von meinem Konto ab?

Ich brauche wirklich Hilfe mit dem Kauf von bitcoins für mich und wo finde ich die Adresse und das werde ich tun, wenn ich gehen, um das Geld Gramm? Wo ist die Adresse gefunden? Und brauche ich bitstamp?

Gibt es ein einfacher Weg, dies zu tun, denn ich finde es wirklich schwer. Wenn es ein schneller, einfacher software oder website oder wallet zu verwenden, lassen Sie es mich bitte wissen!

Edit:
Auch, wo muss ich geben Sie den Betrag an, den werde ich in den moneygram-auf Bitstamp, verwende ich Bitinstant für, die? Was mache ich, wenn ich zu moneygram? Muss ich die Adresse eingeben? Kann mir jemand sagen, ein einfacher Prozess, einschließlich welche websites Sie verwenden alle und in welcher Reihenfolge und wie Sie eigentlich das Geld abzurufen, verwenden online?

+348
Larsenv 14.08.2010, 10:55:20

Nein, es gibt keinen Weg, um Menschen blockieren senden Sie bitcoins. Sie könnten jedoch, senden Sie die bitcoins an den Absender zurück. In der Tat, einlösen können Sie die Transaktion Ausgabe erstellt durch den Absender in einer neuen Transaktion, die Ihr geschaffen habt, zurück an den Absender. Dies würde zeigen, dass genau diese Mittel (und nicht nur Mittel um den gleichen Betrag) überwiesen wurden, zurück an den Absender.

+291
Ignacio Cases 17.01.2017, 19:47:43

Ist eine Rückerstattung möglich, wenn ich in der falschen Ziel-tag und die richtige Adresse während der übertragung XRP zu meinem bittrex Brieftasche.

+264
Jerome Stonebridge 31.10.2012, 22:48:56

Eine naive Implementierung, ja, aber in der Praxis Nein, es ist nicht ein problem.

Dies liegt daran, dass jeder Entwickler, der weiß, was Sie tun, ist smart genug, um eine Datenbank zu erstellen, die zumindest zeichnet jede Transaktion (oder seiner position auf der Festplatte) und das Verifizierungs-status. Also, wenn Sie erhalten eine neue Transaktion, anstatt zu Fuß zurück durch die Geschichte, die Sie gerade brauchen, um sich wieder auf die verwiesen vorherigen Transaktion. Als Teil der Validierung einer Transaktion prüfen, ob die Vorherige Transaktion gültig war. Wenn also eine Transaktion ist gekennzeichnet als gültig in Ihrer Datenbank haben, dann können Sie sicher sein, dass die Transaktionen, die vorausgegangen sind, sind auch gültig. So gibt es keine Notwendigkeit, um wirklich zu sehen, durch die Geschichte und die re-Validierung der Transaktionen.

Da es letztlich nur darum geht sich auf eine einfache Datenbank-lookup, ist es nicht schwieriger geworden, zur überprüfung neuer Transaktionen.

+123
arsal 03.05.2014, 13:10:58

Das wäre die effizienteste und profitable miner man bei k/hs g/hs ?

Ich Suche zu finden, die "Bergmann" - Algorithmus, D. H. daggerhashimoto blake2s etc würde am besten zu mir, mit die meisten der Zeit, anstatt dass alle

+93
user88377 27.09.2016, 15:03:04

Versuchen Sie, diese Währung Konverter Website, die Sie möglicherweise haben, aktualisiert Preise für BRL = BTC

+76
Norick 05.05.2019, 16:58:23

Ich würde gerne wissen, was der Schritt zu succefully migrieren einer beschnittenen Knoten.

Ich habe eine Raspnode (rPi2B+) und es ist so langsam, dass es scheint nicht zu synchronisieren der blockchain nach mehreren Tagen...

Ich will synchronisieren Sie die Knoten, ich habe in meinem laptop und verschieben Sie Sie (beschnitten), um die Raspnode.

Ich habe kopieren und fügen Sie alle Dateien in der .bitcoin Ordner und wenn ich die Ausführung der bitcoind daemon Befehl der Folgen ist, in die debug.log-Datei

2016-03-22 23:25:55 Eröffnung LevelDB in /home/pi/bitcoinData/blocks/index
2016-03-22 23:25:59 Geöffnet LevelDB erfolgreich
2016-03-22 23:25:59 Eröffnung LevelDB in /home/pi/bitcoinData/chainstate
2016-03-22 23:25:59 Geöffnet LevelDB erfolgreich
2016-03-22 23:26:37 LoadBlockIndexDB: letzter block Datei = 474
2016-03-22 23:26:45 LoadBlockIndexDB: letzter block Datei-Informationen: CBlockFileInfo(Blöcke=57, Größe=47829393, heights=403730...403810, Zeit=2016-03-22..$
2016-03-22 23:26:48 Überprüfung der blk-Dateien sind vorhanden...
2016-03-22 23:26:48 LoadBlockIndexDB(): Blockieren von Dateien, die zuvor beschnitten
2016-03-22 23:26:48 LoadBlockIndexDB: Transaktion index deaktiviert
2016-03-22 23:26:49 LoadBlockIndexDB: hashBestChain=000000000000000005323717f768df54444ee6dfccbe080548287f120546e6e3 height=403810 date=2016-03$
2016-03-22 23:26:49 init-Nachricht: Überprüfen Blöcke...
2016-03-22 23:26:49 Überprüfen der letzten 288 Blöcke auf der Ebene 3
2016-03-22 23:26:51 LevelDB Lesen fehlgeschlagen: Korruption: nicht eine sstable (bad magic number)
2016-03-22 23:27:14 Korruption: nicht eine sstable (bad magic number)
2016-03-22 23:27:14 : Fehler beim öffnen der Blocks Datenbank.

Wollen Sie den Wiederaufbau der block-Datenbank jetzt?
2016-03-22 23:27:14 Abgebrochen-block-Datenbank neu erstellen. Verlassen.
2016-03-22 23:27:14 Herunterfahren: In progress...
2016-03-22 23:27:14-scheduler-thread unterbrechen
2016-03-22 23:27:14 StopNode()
2016-03-22 23:27:14-Shutdown: erledigt
2016-03-22 23:39:01 AppInit2 : parameter der Interaktion: -prune -> Einstellung -disablewallet=1
2016-03-22 23:39:05 Prune konfiguriert, um den Gegner 30000MiB auf der Festplatte für block-und undo-Dateien.
2016-03-22 23:39:08

Die Idee ist, synchronisieren Sie die Knoten in meinem laptop und Aufrechterhaltung der Synchronisierung (und beschneiden) auf die Himbeeren pi-weil ich kann nicht führen Sie den Knoten die ganze Zeit in meinem laptop.

+16
Sunny Patel 24.12.2011, 14:05:52

Fragen mit Tag anzeigen