Post
Topic
Board Кодеры
Re: Технические подробности майнинга Bitcoin.
by
xDilettante
on 13/10/2023, 20:13:21 UTC
Как создавать "coinbase tx"? Можно ли построить её через createrawtransaction или её можно создать только в коде? Тогда я не полностью понимаю как устроенно построение данной транзакции.

На примере транзакции из реального блока, приведу то что я понимаю в ней. То что помечено вопросами или не обозначено, я не понимаю.

Code:
{
    "result": {
        "in_active_chain": true,
        "txid": "26110d654a1e52dd6fb6aa141e9ed37b83367daf3cfd35059188285bf5a4ca23",
        "hash": "fe239009e8a7c65da8ff48be0a50a3bd1cb19016e29d16453a94a89570b50ce9",
        "version": 2,
        "size": 214,
        "vsize": 187,
        "weight": 748,
        "locktime": 0,
        "vin": [
            {
                "coinbase": "03ed630c04a95e29652f466f756e6472792055534120506f6f6c202364726f70676f6c642f1a0727769676000000000000",
                "txinwitness": [
                    "0000000000000000000000000000000000000000000000000000000000000000"
                ],
                "sequence": 4294967295
            }
        ],
        "vout": [
            {
                "value": 6.36546374,
                "n": 0,
                "scriptPubKey": {
                    "asm": "0 35f6de260c9f3bdee47524c473a6016c0c055cb9",
                    "desc": "addr(bc1qxhmdufsvnuaaaer4ynz88fspdsxq2h9e9cetdj)#ry8yggxl",
                    "hex": "001435f6de260c9f3bdee47524c473a6016c0c055cb9",
                    "address": "bc1qxhmdufsvnuaaaer4ynz88fspdsxq2h9e9cetdj",
                    "type": "witness_v0_keyhash"
                }
            },
            {
                "value": 0.0,
                "n": 1,
                "scriptPubKey": {
                    "asm": "OP_RETURN aa21a9ed95c53abf59b8c6df571b1ca9ff8ad0e6f77a82b2b59c229463cda7a0281a4caf",
                    "desc": "raw(6a24aa21a9ed95c53abf59b8c6df571b1ca9ff8ad0e6f77a82b2b59c229463cda7a0281a4caf)#thl9sjed",
                    "hex": "6a24aa21a9ed95c53abf59b8c6df571b1ca9ff8ad0e6f77a82b2b59c229463cda7a0281a4caf",
                    "type": "nulldata"
                }
            }
        ],
        "hex": "020000000001010000000000000000000000000000000000000000000000000000000000000000ffffffff3103ed630c04a95e29652f466f756e6472792055534120506f6f6c202364726f70676f6c642f1a0727769676000000000000ffffffff0246edf0250000000016001435f6de260c9f3bdee47524c473a6016c0c055cb90000000000000000266a24aa21a9ed95c53abf59b8c6df571b1ca9ff8ad0e6f77a82b2b59c229463cda7a0281a4caf0120000000000000000000000000000000000000000000000000000000000000000000000000",
        "blockhash": "00000000000000000002faa1874cb499bcc39f45689a36387c4fbe9f3e5a28e4",
        "confirmations": 1,
        "time": 1697210044,
        "blocktime": 1697210044
    },
    "error": null,
    "id": null

Code:
# nVersion: 02000000
#   marker: 00
#     flag: 01
#     txIns:
#        #    countIns: 01
#        #          in: 0000000000000000000000000000000000000000000000000000000000000000
         #    sequence: ffffffff
         #              31 - ?????????????
         # heigt_block: 03ed630c
         #              04 - ?????????????
         #        time: a95e2965
         #     message: 2f466f756e6472792055534120506f6f6c202364726f70676f6c642f1a0727769676000000000000 - extranonce?
#                           : ffffffff
#                           : 02
#                           : 46edf025
#                           : 0000000016
#   (hex_address vout n - 0): 001435f6de260c9f3bdee47524c473a6016c0c055cb9
#                           : 000000000000000026
# default_witness_commitment: 6a24aa21a9ed95c53abf59b8c6df571b1ca9ff8ad0e6f77a82b2b59c229463cda7a0281a4caf  - ???????
#                   whitness: 01200000000000000000000000000000000000000000000000000000000000000000
#                  nLockTime: 00000000