Was ist service-oder entity-Sendungen Transaktionen mit OP_RETURN Daten beginnend mit "LP..."?

Es wurden schon ein paar OP_RETURN Transaktionen vor kurzem, wo OP_RETURN Daten in der scriptPubKey beginnt mit 4c 50 die LP als ASCII.

Zum Beispiel diese Transaktionen:
- ccce20a2b4c79d80fe57bd4008c398c548cefc7f353e71044353432f434d8e6a
- 2d02e75f6f72a1e633e4f1b36066428f1904ca5859bc6a711806961b8b6fbfd3
- f85a0efd449f193605048b73dd7bb0287c7a331ab92755497b4d77806090849e
- b193bb721f21e2efc9dcfd9bb8ab8753f9a70f6ff7ce8bbffb0a173a45adf6b0
- ... und viele mehr (6447 in den letzten zwei Stunden zum Zeitpunkt des Schreibens dieses)




Da die ersten bytes sind in der Regel als ein Bezeichner (z.B. omni für OmniLayer) ich wäre neugierig, ob jemand passiert, zu wissen, wo diese entstehen könnten, aus.

+246
Drm0223 13.04.2014, 18:16:17
18 Antworten

Ich fand, dass in Electrum, können Sie zusätzliche Adressen ändern, indem Sie über die Konsole und Eingabe von:

for i in range(0, 100): print wallet.create_new_address(True)

wo 100 ist die Anzahl der Adressen ändern zu erstellen. Die True bedeutet, dass ein ändern von Adressen erstellt, während False erstellt eine standard-Empfängeradresse. Das problem ist gelöst jetzt :)

+935
xt1 03 февр. '09 в 4:24

Ich habe eine Blockchain-Konto, da ich damit verbracht habe, ein paar Tage auf alle Davi-sets, die Erforschung und die Gewinnung all dieser satoshi, aber mein Kontostand ist immer noch aktuell bei null. Nachdem alle, die Arbeit, die ich dachte, ich würde etwas sehen. Ich begann microwallets, und macht alle Dinge neu. Ich könnte wirklich zu schätzen, jemand zu helfen, zu Fuß mich durch einige Schritte. Ich werde weiter recherchieren und ich bin ein unersättlicher student. Vielen Dank

+916
mustafatufan 02.09.2014, 13:33:39

Im Fall der scriptPubKey einer Transaktion ist eine standard-M-von-N script, das N verschiedene Adressen entsprechend dem öffentlichen Schlüssel werden hier aufgelistet.

Es gibt wahrscheinlich nur sehr wenige oder gar keine Transaktionen, die in den mainnet Kette, als die wenigen multisig Transaktionen, die auftreten, sind fast ausschließlich mit pay-to-scripthash, wo die Ausgabe nicht enthalten die real-Skript (nur dessen hash), so dass es nicht vollständig entschlüsselt.

+904
Dimitar Lichev 23.04.2019, 17:24:25

Was würden Sie wahrscheinlich tun möchten, ist erstellen Sie einfach eine Geldbörse für sich selbst, die Sie verschlüsseln, und erstellen Sie dann eine gewisse Art von Information auf Ihrem server, den so genannten wallet, das könnte man beliebig viele.

Wenn die Menschen wollen, um die Kaution Geld auf "Ihre" Brieftasche, die Sie erzeugen würde, eine neue Adresse für Ihre Brieftasche, die Sie tun können, so oft wie Sie wollen. Sobald die bitcoins kommen Sie Kredit Ihnen jedoch viele bitcoins Sie ließ sich auf Ihre gefälschte Brieftasche, die nur Leben auf Ihrem server.

Dann, wenn Sie wollen, um Geld abzuheben, senden Sie bitcoins von Ihrer Brieftasche, so dass Sie sicher, dass Sie niemals erlauben, Sie zu widerrufen mehr, dann werden Sie gutgeschrieben wurden.

Wenn die Menschen wollen, um einen Kauf mit bitcoins auf Ihrer Website, die Sie nur geben Ihnen, was Sie bezahlt und abziehen wie viele bitcoins sind derzeit auf Ihrem Konto gutgeschrieben.

Dies ist zwar alles möglich, es sei denn, Ihr macht einen stark bitcoin-centric service wie eine Börse, ich würde empfehlen, mit einem Drittanbieter-Dienst, der die bereits integrierten tools für Händler wie coinbase oder coinlab.

+855
imaginair 24.02.2013, 09:11:39

Es sieht aus wie der neue Anrufe werden noch nicht unterstützt in btcClient.

https://github.com/ruimarinho/bitcoin-core/issues/77 bezieht sich im Allgemeinen auf Ihr Problem.

v2.0.0 veröffentlicht wurde "vor einem Jahr" nach https://www.npmjs.com/package/bitcoin-core; v0.17 bitcoind, der die änderung vorgenommen hat, vor vier Monaten.

Wenn du nur basteln, Sie könnte erwägen eine Herabstufung Ihrer bitcoind, bis die Bibliothek holt.

+850
Jigarius 15.08.2013, 23:02:12

Gehen Sie in das Verzeichnis mit den bitcoind binäre.

Stellen Sie sicher, dass es ausführbar: chmod +x bitcoind

Jetzt führen Sie es: ./bitcoind daemon

+839
Ricardo Anjos 12.05.2010, 02:29:06

könnten Sie mir litecoins; der Vorteil einer GPU gegenüber einer CPU ist nicht so pronouced als mit bitcoin aber es könnte immer noch profitabel sein. möglicherweise haben diese zahlen allerdings. ltc-charts.com für die Wechselkurse.

+673
bdeonovic 09.06.2019, 03:05:40

Das wäre wahrscheinlich entweder Bitcoin-OTC oder Lokale Bitcoins, als Sie den Handel direkt zwischen den Menschen. Auf diese Weise können Sie Tauschhandel für bessere Preise, und Sie müssen nicht eine Gebühr zahlen.

+481
Silent Throb 03.12.2012, 05:07:30

Ich habe kürzlich in der bitcoin-arena, und bitcoinj war mein tool der Wahl. Experimentieren regression-test-Modus, ich war in der Lage, erstellen Sie die folgende benutzerdefinierte Transaktion. Es hat eine geänderte schließ-script und bräuchte eine modifizierte entsperren, input, script.

 //Absender: sig pubk [dup() hash() pubk equ() chksig() OP_VERIFY() match_me eqal()] 
 //Empfänger: matcher sig pubk [dup() hash() pubk equ() chksig()]

 Skript sperren = new ScriptBuilder()
.op(OP_DUP)
.op(OP_HASH160)
.Daten(address3.getHash160())
.op(OP_EQUALVERIFY).op(OP_CHECKSIG)
 .op(OP_VERIFY)/*entledigt sich der wahre linke von früheren checksig*/
 .Daten(match_me)/*32bytes aufeinander abgestimmt werden, um Skript*/
 .op(OP_EQUAL)/*überprüft die Gleichheit der match_me durch ein, durch den Empfänger*/
.build();

 Die Transaktion Vertrag = new Transaktion(params); 

 Vertrag.addOutput(MEDAILLE.multiplizieren(25), sperren); 
 SendRequest req = SendRequest.forTx(Vertrag); 
wallet2.Brieftasche().completeTx(req);
wallet2.Peer().broadcastTransaction(req.tx);

Hier, ich versuche zu schaffen, diese Transaktion, die nicht ausgegeben werden, bis der Empfänger liefert Daten, Spiele 'match_me'. Die Transaktion, die Hälfte erfolgreich verbringt die Münzen des Absenders Brieftasche, Subtraktion 25 BTC von wallet2. Allerdings wallet3 war noch immer leer, auch nach dem erzeugen einer neuen block.

Transaktion:
bd52d8ef024715096b5177d581121122dc1ce9f8925c105a496bb290691ba1a7
 aktualisiert: 2016-10-02T23:19:14Z
 in PUSHDATA(72) [3045022100f5664de61bd0c9576d7dd2aaf98f2ba4e60c1013e55a36e62bf1d47c38a0fb5c02206872b35821f05069df5d2302dadc55011e6e6d7569e2e46c655deb9265390f3f01] PUSHDATA(33)[035562c04ff3ddb5a8ba566f4cd84c3e47478997ab8730bd923a4260fc9dfe246e] 50.00 BTC
 outpoint:7738e333b27700e835d3c118444d9f2181033c8d796ca116c66d795140ad64df:1 hash160:67d4ea4c50e80497380b7eb2f901664dc341db4b
 aus DUP HASH160 PUSHDATA(20)[d713cf366138ad0d0aac8c148ca724c18a8c4e4d] EQUALVERIFY CHECKSIG ÜBERPRÜFEN PUSHDATA(16)[e04fd020ea3a6910a2d808002b30309d] GLEICH 25.00 BTC
 aus DUP HASH160 PUSHDATA(20)[2515ad4a14c15cc363796684149fd23ae1c3146e] EQUALVERIFY CHECKSIG 24.999877 BTC
 Gebühr 0.00050204 BTC/kB, 0.000123 BTC für 245 bytes
 prps USER_PAYMENT

Ich spekulieren, dass es der Fall sein könnte, dass wallet3 nicht erkennt, die benutzerdefinierte Transaktion, so dass es nicht in Ihrem Gleichgewicht. Denken Sie so? Wenn ich beschlossen, verbringen Sie die Transaktion über eine der txid, wie würde ich es schaffen, die Eingänge zu entsperren? wie erstelle ich scriptsig mit (.Daten(matcher).Daten(sig).Daten(pubkey))?

Danke

+480
Ted Sarvata 03.08.2013, 22:17:02

Ich habe schon viele wissenschaftliche Artikel, aber konnte nicht herausfinden, was der Mindestgröße einer Transaktion und einem block. Gibt es irgendeine Referenz wo finde ich eine Antwort auf meine Frage?

+388
user239798 23.06.2011, 20:03:36

Lernen über bitcoin in einem hands-on-Weise, habe ich beschlossen, kaufen ein paar. Erstellt habe ich eine Geldbörse mit blockchain.info und dann verwendet, Bitonic (Ein niederländischer bitcoin Verkäufer, kein exchange) zu kaufen eine kleine Menge von bitcoin. Später habe ich noch einige mehr.

So weit, So gut, das Geld ist angekommen in meiner Brieftasche, und ich habe genießen den letzten Anstieg.

Jedoch entschied ich mich für die blockchain-explorer, um einen Blick auf das, was wirklich passiert ist während dieser Transaktionen, und wenn ich mir meine wallet-Adresse (die, die ich geben Bitonic), es ist leer und es sind keine Transaktionen mehr. Blick auf die eigentlichen Transaktionen, die blockchain.info Punkte, sind es Ausgänge, mit der richtigen Menge, Sie haben aber verschiedene Adressen.

Ich hatte erwartet, zu finden in meiner Brieftasche, die auf die blockchain, mit der aktuellen Menge an BTC, die ich besitze und mit zwei Transaktionen zu tun.

Was ist hier Los? Ist Bitonic eigentlich senden blockchain.info die Münzen aus-Kette? Bitonic bekommt nur die wallet-Adresse, so dass Sie sollten nicht in der Lage zu sagen, wer verwaltet das Schlüsselpaar für mich. Auf der anderen Seite, wenn bitonic sendet es an die Adresse, die ich Ihnen gab, warum eine andere Adresse zeigen, bis auf die Transaktion die Ausgabe? Gibt es eine Zuordnung zwischen Adressen, die sich innerhalb der blockchain, die ich nicht kenne?

+388
LAAiT 24.07.2015, 11:15:13

Transaction malleability hat eine sehr geringe Wirkung auf regelmäßige Nutzer, bei den meisten kann es mess up einige Ihrer Buchführung, wenn Sie beim speichern des Transaktions-Id der Transaktion, bevor es bestätigt ist.

Transaction malleability betrifft nur unbestätigte Transaktionen. Der bug ermöglicht eine unbestätigte Transaktion dupliziert werden mit einem neuen Transaktions-id. Da die zwei (oder mehr) Transaktionen sind die Ausgaben im gleichen Eingang nur eine Durchlaufen kann, aber, dass einer von Ihnen, liefern sollten das Geld einfach wie erwartet. Für die wichtigsten Dienste, die sich auf eine große Anzahl von unbestätigten Transaktionen, kann dies dazu führen, dass einige Kopfschmerzen, aber es gibt keinen Weg, es könnte verwendet werden, zu stehlen Geld von Ihrem Bitcoin-Qt wallet.

+339
Unaiz 22.06.2017, 23:05:46

Kann ich tun, Bergbau mit einem normalen PC?

Ja, Sie können.

Ich habe nicht zu viele Erwartungen. Vielleicht 0,1 in einer Woche?

Nein, nicht möglich. Sie werden effektiv konkurrieren gegen alle Computer-Ressourcen auf der Erde, und jetzt knackten diese Nuss. Wenn ich abschätzen kann, ein bescheidenes Heim-PC produzieren, um 1 - 100 MH/s, basierend auf CPU-oder GPU-mining-stats. Dieser Bereich umfasst verschiedene CPUs und single-GPU-Rechner. Vergleichen Sie die hash-rate mit der Gewinn-Schätzung mit diesem Rechner. Basierend auf der hash-rate, Ihre Stromrechnung wird viel Gewicht keinen Gewinn aus dem Bergbau.

Zur Erreichung eines 0,1 BTC/Woche müssten Sie investieren in eine ziemlich teure, Stromfressende ASIC-box, die produzieren können zig GH/s, vorbehaltlich der zunehmenden Komplexität.

+201
David Allen 10.07.2012, 19:24:47

Der source-code hier ist eine Liste von RPC-Befehlen und einer "okSafeMode" - parameter.

Was ist der Zweck dieser SafeMode und wie funktioniert es Auswirkungen auf die Nutzung der client?

+154
Hudson Serge 21.06.2011, 23:12:20

Gemäß dem Hinweis in Developer Guide - MultiSig und BIP147 bei der Verwendung OP_CHECKMULTISIG eine OP_0 muss vorangestellt werden, um die scriptSig, um Platz für einen bug in der original-Bitcoin-Implementierung.

Wenn die gleiche Problemumgehung angewendet wird, in ein Zeugnis-Programm, das Skript scheint zu scheitern, die SCRIPT_FLAGS_VERIFY_NULLDUMMY überprüfen. Was ist der richtige Weg, um die OP_0 zu einer MultiSig Zeuge Programm? Hinzufügen eines OP_0 gemäß dem Beispiel unten, die Ergebnisse in eine endgültige stack-element mit 0x00 die scheitert die Prüfung.

auto aliceKeyData = ParseHex("bbc27228ddcb9209d7fd6f36b02f7dfa6252af40bb2f1cbc7a557da8027ff866");
CKey aliceKey{};
aliceKey.Set(aliceKeyData.begin(), aliceKeyData.Ende(), true);
CPubKey alicePubkey = aliceKey.GetPubKey();

auto keyData = ParseHex("619c335025c7f4012e556c2a58b2506e30b8511b53ade95ea316fd8c3286feb9");
CKey bobKey{};
bobKey.Set(keyData.begin(), keyData.Ende(), true);
CPubKey bobPubKey = bobKey.GetPubKey();

CScript redeemScript = CScript{} << OP_1 << ToByteVector(alicePubkey) << ToByteVector(bobPubKey) << OP_2 << OP_CHECKMULTISIG;
uint256 redeemScriptHash{};
CSHA256().Schreiben(redeemScript.Daten(), redeemScript.size()).Finalize(redeemScriptHash.begin());
CScript scriptPubkey = CScript{} << OP_0 << ToByteVector(redeemScriptHash); // P2WSH

int Betrag = 600000000;

CScript scriptSig;
CScriptWitness scriptWitness;
CMutableTransaction tx = BuildFundingTransaction(scriptSig, scriptWitness, Betrag);

uint256 coinZeroSigHash = SignatureHash(redeemScript, tx, 0, SIGHASH_ALL, Menge, SIGVERSION_WITNESS_V0);

CScript op0Script = CScript{} << OP_0;

std::vector<uint8_t> coinZeroBobSig{};
bobKey.Zeichen(coinZeroSigHash, coinZeroBobSig, 0);
coinZeroBobSig.push_back(SIGHASH_ALL);

CScriptWitness& witness = tx.vin[0].scriptWitness;
Zeuge.stack.push_back(ToByteVector(op0Script)); // <-- Ergebnisse in 0x00 stack-element in Zeugnis-Programm.
Zeuge.stack.push_back(ToByteVector(coinZeroBobSig));
Zeuge.stack.push_back(ToByteVector(redeemScript));

CDataStream txSpendingStm(SER_NETWORK, PROTOCOL_VERSION);
txSpendingStm << tx;
std::cout << "die Ausgaben Tx": "< < CTransaction(tx).ToString() << std::endl;

bitcoinconsensus_error err;
auto spendCoinZeroResult = bitcoinconsensus_verify_script_with_amount(scriptPubkey.Daten(), scriptPubkey.size(), Menge, (const unsigned char*)&txSpendingStm[0], txSpendingStm.size(), 0, bitcoinconsensus_SCRIPT_FLAGS_VErify_all, &err);
std::cout << "Ausgeben Münze, die Null-Resultat:" << spendCoinZeroResult < < "Fehler-code" << err << std::endl;

Eine triviale Lösung ist, fügen Sie einen leeren Vektor Zeuge-Programm-stack eher als eine OP_0, wie mithilfe von Zeugen.stack.emplace_back() anstelle von Zeugen.stack.push_back(ToByteVector(op0Script)), aber es wird wahrscheinlich dazu führen, dass andere Probleme?

+137
ericknatosen 05.12.2014, 04:41:27

Alles, was Sie tun müssen, ist importprivkey. Die software wird den Rest erledigen. Alles, was es sonst noch so braucht, kann abgeleitet werden aus dem privaten Schlüssel, und es wird tun, also, wenn Sie geben Sie einen privaten Schlüssel.

+125
user297618 08.07.2019, 15:15:32

Es gibt derzeit keine Lösung in Bitcoin Core. Ich denke, dass es möglich wäre ein Skript schreiben, dass in regelmäßigen Abständen bewegt die blkxxxx.dat-Dateien in einem komprimierten Dateisystem und ersetzt die original-Dateien bei symlinks. Diese Dateien sind groß und relativ komprimierbar, so dass Sie möglicherweise sparen Sie ein paar GBs auf diese Weise. Die anderen Datenbank-Dateien sind nicht sehr komprimierbar, obwohl.

Die große blkxxxx.dat-Dateien sind tatsächlich nicht verwendete Bitcoin-Core-außer zu übermitteln alten Blöcken zu Gleichaltrigen, Lesen Sie die block-Kette für Geldbörse Transaktionen, Griff reorgs, und hol beliebige Blöcke/Transaktionen via JSON-RPC. Ändern Bitcoin Core zum verwerfen dieser Daten wäre ziemlich einfach, aber wenn jeder Tat dies, dann das Netzwerk zusammenbrechen würde, so ist es zurzeit nicht unterstützt. In der Zukunft, Knoten, wird wahrscheinlich speichern nur eine zufällige Teilmenge dieser Daten (vielleicht ein paar GBs) und verwerfen Sie den rest.

+37
Ksuha13zed 13.09.2017, 01:14:51

Ja, effektiv. Es ist nicht wirklich, dass es "zurückgegeben", aber das Honorar ist eigentlich nie "gesammelt", bis die Transaktion bestätigt wird.

Wenn Ihre Transaktion nicht bestätigt, dann wird kein Geld bewegt sich überhaupt. Der gesamte Betrag, einschließlich der Gebühren, bleibt Ihnen für Ihre Nutzung in einer zukünftigen Transaktion, obwohl Sie möglicherweise ein wenig warten, während für das ablaufen aus dem Speicher-pool von anderen Knoten auf dem Netzwerk, und abhängig von Ihrer wallet-software, Sie möglicherweise verwenden Sie einigen obskuren Befehle, um es zu vergessen die ursprüngliche Transaktion.

+34
thaddeusphoenix 20.12.2010, 11:38:23

Fragen mit Tag anzeigen