Title: OP_RETURN suggerimenti - idee Post by: bitbollo on October 24, 2016, 12:50:45 PM Ciao a tutti,
per utilizzare l'op code "OP RETURN" posso solo utilizzare bitcoin core o posso anche usare qualche altro tipologia di wallet? (multibit? multibit hd? electrum?) Perdonate la domanda da principiante , ma sto cercando di capire questa feature della blockchain ... Cosa ne pensate dei servizi on line come https://proofofexistence.com? Possono essere considerati affidabili, visto che si invia un documento / file direttamente sui loro server? Title: Re: OP_RETURN suggerimenti - idee Post by: HostFat on October 24, 2016, 03:43:18 PM C'è anche questo:
https://bitcointalk.org/index.php?topic=434468.0 Una volta creata la TX, puoi prenderla/copiarla e metterla in un qualsiasi servizio/wallet che ti permette di fare il broadcast delle transazioni sul network. Title: Re: OP_RETURN suggerimenti - idee Post by: arulbero on October 24, 2016, 04:56:50 PM Personalmente non conosco altri wallet a parte Bitcoin Core che supportino questa opzione.
Esistono anche i seguenti tool (mai usati personalmente): https://github.com/coinspark/python-OP_RETURN https://github.com/coinspark/php-OP_RETURN Per vedere i messaggi "nascosti" nelle transazioni: http://coinsecrets.org/ Per provare bitcoin-cli senza installarlo in locale: https://chainquery.com/bitcoin-api Per vedere come creare a mano una transazione con OP_RETURN (si usa il tag "data"): https://chainquery.com/bitcoin-api/createrawtransaction Quote createrawtransaction [{"txid":"id","vout":n},...] {"address":amount,"data":"hex",...} ( locktime ) Create a transaction spending the given inputs and creating new outputs. Outputs can be addresses or data. Returns hex-encoded raw transaction. Note that the transaction's inputs are not signed, and it is not stored in the wallet or transmitted to the network. Arguments: 1. "transactions" (string, required) A json array of json objects [ { "txid":"id", (string, required) The transaction id "vout":n (numeric, required) The output number "sequence":n (numeric, optional) The sequence number } ,... ] 2. "outputs" (string, required) a json object with outputs { "address": x.xxx (numeric or string, required) The key is the bitcoin address, the numeric value (can be string) is the BTC amount "data": "hex", (string, required) The key is "data", the value is hex encoded data ... } 3. locktime (numeric, optional, default=0) Raw locktime. Non-0 value also locktime-activates inputs Result: "transaction" (string) hex string of the transaction Examples > bitcoin-cli createrawtransaction "[{\"txid\":\"myid\",\"vout\":0}]" "{\"address\":0.01}" > bitcoin-cli createrawtransaction "[{\"txid\":\"myid\",\"vout\":0}]" "{\"data\":\"00010203\"}" > curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "createrawtransaction", "params": ["[{\"txid\":\"myid\",\"vout\":0}]", "{\"address\":0.01}"] }' -H 'content-type: text/plain;' http://127.0.0.1:8332/ > curl --user myusername --data-binary '{"jsonrpc": "1.0", "id":"curltest", "method": "createrawtransaction", "params": ["[{\"txid\":\"myid\",\"vout\":0}]", "{\"data\":\"00010203\"}"] }' -H 'content-type: text/plain;' http://127.0.0.1:8332/ Per vedere l'esempio di una transazione con OP_RETURN già inviata in rete, sempre dal sito https://chainquery.com/bitcoin-api vai su getrawtransaction id tx --> 8bae12b5f4c088d940733dcd1455efc6a3a69cf9340e17a981286d3778615684 con attivata l'opzione 1 si ottiene: Quote { "result": { "hex": "0100000001c858ba5f607d762fe5be1dfe97ddc121827895c2562c4348d69d02b91dbb408e01000 0008b4830450220446df4e6b875af246800c8c976de7cd6d7d95016c4a8f7bcdbba81679cbda242 022100c1ccfacfeb5e83087894aa8d9e37b11f5c054a75d030d5bfd94d17c5bc953d4a014104590 1f6367ea950a5665335065342b952c5d5d60607b3cdc6c69a03df1a6b915aa02eb5e07095a2548a 98dcdd84d875c6a3e130bafadfd45e694a3474e71405a4ffffffff020000000000000000156a136 36861726c6579206c6f766573206865696469400d0300000000001976a914b8268ce4d481413c4e 848ff353cd16104291c45b88ac00000000", "txid": "8bae12b5f4c088d940733dcd1455efc6a3a69cf9340e17a981286d3778615684", "hash": "8bae12b5f4c088d940733dcd1455efc6a3a69cf9340e17a981286d3778615684", "size": 254, "vsize": 254, "version": 1, "locktime": 0, "vin": [ { "txid": "8e40bb1db9029dd648432c56c295788221c1dd97fe1dbee52f767d605fba58c8", "vout": 1, "scriptSig": { "asm": "30450220446df4e6b875af246800c8c976de7cd6d7d95016c4a8f7bcdbba81679cbda242022100c 1ccfacfeb5e83087894aa8d9e37b11f5c054a75d030d5bfd94d17c5bc953d4a[ALL] 045901f6367ea950a5665335065342b952c5d5d60607b3cdc6c69a03df1a6b915aa02eb5e07095a 2548a98dcdd84d875c6a3e130bafadfd45e694a3474e71405a4", "hex": "4830450220446df4e6b875af246800c8c976de7cd6d7d95016c4a8f7bcdbba81679cbda24202210 0c1ccfacfeb5e83087894aa8d9e37b11f5c054a75d030d5bfd94d17c5bc953d4a0141045901f636 7ea950a5665335065342b952c5d5d60607b3cdc6c69a03df1a6b915aa02eb5e07095a2548a98dcd d84d875c6a3e130bafadfd45e694a3474e71405a4" }, "sequence": 4294967295 } ], "vout": [ { "value": 0.00000000, "n": 0, "scriptPubKey": { "asm": "OP_RETURN 636861726c6579206c6f766573206865696469", "hex": "6a13636861726c6579206c6f766573206865696469", "type": "nulldata" } }, { "value": 0.00200000, "n": 1, "scriptPubKey": { "asm": "OP_DUP OP_HASH160 b8268ce4d481413c4e848ff353cd16104291c45b OP_EQUALVERIFY OP_CHECKSIG", "hex": "76a914b8268ce4d481413c4e848ff353cd16104291c45b88ac", "reqSigs": 1, "type": "pubkeyhash", "addresses": [ "1HnhWpkMHMjgt167kvgcPyurMmsCQ2WPgg" ] } } ], "blockhash": "000000000000000004c31376d7619bf0f0d65af6fb028d3b4a410ea39d22554c", "confirmations": 127163, "time": 1404107109, "blocktime": 1404107109 }, "error": null, "id": null } Per tradurre il significato della stringa 636861726c6579206c6f766573206865696469 bisogna usare un convertitore http://string-functions.com/hex-string.aspx (come suggerito da HostFat qui --> https://bitcointalk.org/index.php?topic=105814.0) e in tal caso si ottiene charley loves heidi Title: Re: OP_RETURN suggerimenti - idee Post by: bitbollo on October 25, 2016, 09:33:28 AM Grazie HostFat e grazie arulbero delle info a riguardo, sapevo ci fosse un mondo dietro, in effetti è vero :)
Se ho ben capito bisogna sempre convertire il messaggio in esadecimali http://string-functions.com/hex-string.aspx prima di inserirlo come "data". Il servizio più userfriendly secondo voi qual'è? Intendo sia il metodo per inserire che per visualizzare il messaggio? Grazie ancora per l'aiuto! Title: Re: OP_RETURN suggerimenti - idee Post by: HostFat on October 25, 2016, 09:39:09 AM Una volta preparata la tx ce ne sono vari:
https://blockr.io/tx/push https://blockchain.info/pushtx In genere basta cercare "push tx bitcoin" su google. Questi sono tutti block explorer che mostrano gli op_return: https://blockchain.info https://www.blocktrail.com http://chainflyer.bitflyer.jp https://www.smartbit.com.au https://chain.so/btc Questa guida spiega come creare le tx, con dentro il messaggio, usando http://coinb.in/ http://moneywantersforum.com/bitcoin-e-crypto-monete/come-salvare-dati-nella-blockchain/ |