Replying to Avatar kohanucha

ลองทำครับ ไม่รู้ว่าถูกมั้ย ฝากตรวจการบ้านด้วยครับ #siamstr #righttech

ข้อ 5 สร้าง multisig address แบบ P2SH แบบ 1-of-4 จาก publickey ในอินพุตทั้งสี่ของธุรกรรมนี้

37d966a263350fe747f1c606b159987545844a493dd38d84b070027a895c4517

1. get raw transaction แล้วหา public key เนื่องจาก address เป็น segwit ให้ดูตรง txinwitness index ที่ 1 ตรงนั้นจะเป็น public key

```

$ bitcoin-cli getrawtransaction 37d966a263350fe747f1c606b159987545844a493dd38d84b070027a895c4517 true

{

"txid": "37d966a263350fe747f1c606b159987545844a493dd38d84b070027a895c4517",

"hash": "e28a0885b6f413e24a89e9c2bac74d4c6f335e17545f0b860da9146caf7ffe39",

"version": 2,

"size": 666,

"vsize": 344,

"weight": 1374,

"locktime": 818817,

"vin": [

{

"txid": "c9da5e51de40985b8e29d9ddd11b5d8818250773e3f3129bf065900ee841f6b5",

"vout": 0,

"scriptSig": {

"asm": "",

"hex": ""

},

"txinwitness": [

"304402200dd758801b40393f68dad8ab57558803efcd2b681ee31eb44fb3cfa9666d2bf90220254d34fa4990e23652bf669053c5e16fd2fbb816bed2eeb44c1f1e6e54143e3e01",

"02bbb4ba3f39b5f3258f0014d5e4eab5a6990009e3e1dba6e8eaff10b3832394f7"

],

"sequence": 4294967294

},

{

"txid": "44fbdaec8b794fa0b6e9ff70d76d4464ada38fe5aeac7285f16fbbaf86894fd5",

"vout": 0,

"scriptSig": {

"asm": "",

"hex": ""

},

"txinwitness": [

"304402201694761a5749b6a84f71459c04a44cf9d34a36ae8c9044c3af7a3a5514ef2e64022058f61feb92d6d54b71fdea47e7dfcd20f6a5c12e2fbcb15bc44fe95c73f2e80801",

"03aaf17b1a7b4108f7e5bc4f7d59c20f7fb1a72dbc74a9a3d6d1f8488df159c760"

],

"sequence": 4294967294

},

{

"txid": "c5263cf8798dd44f4aeae6421a1b5ab6a26d8623d7294c5487eec3b162305e47",

"vout": 0,

"scriptSig": {

"asm": "",

"hex": ""

},

"txinwitness": [

"3044022014b65c60f65e62d9dac893e404c8de2a007c7c6b74dbac18e454d8374e159759022012453f69112adadf9495fd3fe288aa5ed9e3d836340da06fa1e82c8e09adef5701",

"03a6d919c76d9117c23570a767450013edf31cf6be7d3b5a881c06a9aa1f2c24ce"

],

"sequence": 4294967294

},

{

"txid": "09f87c09c96058b8b72ed0caefff37fbefd9d4ebe64876d3df93cc2e358763a5",

"vout": 0,

"scriptSig": {

"asm": "",

"hex": ""

},

"txinwitness": [

"304402203d3b02390803c1d673fa49bd64d4a26fbeb29e3fc152af8f844d776c9409e41302206903a011a04e00a7f4ec606da4320226d2d393f565702cc58cfcef6dca67f84c01",

"0383d12258e3e294a6d7754336f6b4baef992ec4b91694d3460bcb022b11da8cd2"

],

"sequence": 4294967294

}

],

"vout": [

{

"value": 0.01000698,

"n": 0,

"scriptPubKey": {

"asm": "0 8070ec3954ecdcbfc210d0117e8d28a19eb84672",

"desc": "addr(bc1qspcwcw25anwtlsss6qgharfg5x0ts3njad8uve)#pzjnvw8p",

"hex": "00148070ec3954ecdcbfc210d0117e8d28a19eb84672",

"address": "bc1qspcwcw25anwtlsss6qgharfg5x0ts3njad8uve",

"type": "witness_v0_keyhash"

}

},

{

"value": 0.08230000,

"n": 1,

"scriptPubKey": {

"asm": "0 b5fe46c647353ec9c06374655502094095f0289c",

"desc": "addr(bc1qkhlyd3j8x5lvnsrrw3j42qsfgz2lq2yu3cs5lr)#hzcalwww",

"hex": "0014b5fe46c647353ec9c06374655502094095f0289c",

"address": "bc1qkhlyd3j8x5lvnsrrw3j42qsfgz2lq2yu3cs5lr",

"type": "witness_v0_keyhash"

}

}

],

"hex": "02000000000104b5f641e80e9065f09b12f3e373072518885d1bd1ddd9298e5b9840de515edac90000000000feffffffd54f8986afbb6ff18572acaee58fa3ad64446dd770ffe9b6a04f798becdafb440000000000feffffff475e3062b1c3ee87544c29d723866da2b65a1b1a42e6ea4a4fd48d79f83c26c50000000000feffffffa56387352ecc93dfd37648e6ebd4d9effb37ffefcad02eb7b85860c9097cf8090000000000feffffff02fa440f00000000001600148070ec3954ecdcbfc210d0117e8d28a19eb8467270947d0000000000160014b5fe46c647353ec9c06374655502094095f0289c0247304402200dd758801b40393f68dad8ab57558803efcd2b681ee31eb44fb3cfa9666d2bf90220254d34fa4990e23652bf669053c5e16fd2fbb816bed2eeb44c1f1e6e54143e3e012102bbb4ba3f39b5f3258f0014d5e4eab5a6990009e3e1dba6e8eaff10b3832394f70247304402201694761a5749b6a84f71459c04a44cf9d34a36ae8c9044c3af7a3a5514ef2e64022058f61feb92d6d54b71fdea47e7dfcd20f6a5c12e2fbcb15bc44fe95c73f2e808012103aaf17b1a7b4108f7e5bc4f7d59c20f7fb1a72dbc74a9a3d6d1f8488df159c76002473044022014b65c60f65e62d9dac893e404c8de2a007c7c6b74dbac18e454d8374e159759022012453f69112adadf9495fd3fe288aa5ed9e3d836340da06fa1e82c8e09adef57012103a6d919c76d9117c23570a767450013edf31cf6be7d3b5a881c06a9aa1f2c24ce0247304402203d3b02390803c1d673fa49bd64d4a26fbeb29e3fc152af8f844d776c9409e41302206903a011a04e00a7f4ec606da4320226d2d393f565702cc58cfcef6dca67f84c01210383d12258e3e294a6d7754336f6b4baef992ec4b91694d3460bcb022b11da8cd2817e0c00",

"blockhash": "000000000000000000024a848a9451143278f60e4c3e73003da60c7b0ef74b62",

"confirmations": 70717,

"time": 1701158269,

"blocktime": 1701158269

}

```

2. นำ public key ทั้ง 4 อันมาสร้าง multisig address

```

$ bitcoin-cli createmultisig 1 '["'"02bbb4ba3f39b5f3258f0014d5e4eab5a6990009e3e1dba6e8eaff10b3832394f7"'","'"03aaf17b1a7b4108f7e5bc4f7d59c20f7fb1a72dbc74a9a3d6d1f8488df159c760"'","'"03a6d919c76d9117c23570a767450013edf31cf6be7d3b5a881c06a9aa1f2c24ce"'","'"0383d12258e3e294a6d7754336f6b4baef992ec4b91694d3460bcb022b11da8cd2"'"]'

{

"address": "3GyWg1CCD3RDpbwCbuk9TTRQptkRfczDz8",

"redeemScript": "512102bbb4ba3f39b5f3258f0014d5e4eab5a6990009e3e1dba6e8eaff10b3832394f72103aaf17b1a7b4108f7e5bc4f7d59c20f7fb1a72dbc74a9a3d6d1f8488df159c7602103a6d919c76d9117c23570a767450013edf31cf6be7d3b5a881c06a9aa1f2c24ce210383d12258e3e294a6d7754336f6b4baef992ec4b91694d3460bcb022b11da8cd254ae",

"descriptor": "sh(multi(1,02bbb4ba3f39b5f3258f0014d5e4eab5a6990009e3e1dba6e8eaff10b3832394f7,03aaf17b1a7b4108f7e5bc4f7d59c20f7fb1a72dbc74a9a3d6d1f8488df159c760,03a6d919c76d9117c23570a767450013edf31cf6be7d3b5a881c06a9aa1f2c24ce,0383d12258e3e294a6d7754336f6b4baef992ec4b91694d3460bcb022b11da8cd2))#0a7gjjjl"

}

```

nostr:naddr1qvzqqqr4gupzq7gq3eup4hk8vlxgugum2vldevv75t3xp7fgr2gjt6f5yh06eyu4qyt8wumn8ghj7mn0wd68yttjv4kxz7fwv9c8qtcprpmhxue69uhhyetvv9ujumn0w3hhx6rf9emkjm30qq2456rzfy6nve20g5uywk2jx36yjw2wx4xx2xsfpqc

#siamstr #righttech

ข้อ 7 มีเอาต์พุตเดียวที่ยังไม่ได้ใช้งานจากบล็อก 123,321 เอาต์พุตดังกล่าวถูกส่งไปที่ address ไหน

1. get block 123321

$ bitcoin-cli getblockhash 123321

0000000000005e5c28343b9ffd104931077012d0ce93e57a4a4082771f2de3da

$ bitcoin-cli getblock 0000000000005e5c28343b9ffd104931077012d0ce93e57a4a4082771f2de3da 1

{

"hash": "0000000000005e5c28343b9ffd104931077012d0ce93e57a4a4082771f2de3da",

"confirmations": 766368,

"height": 123321,

"version": 1,

"versionHex": "00000001",

"merkleroot": "e5dbb7b33277b280059ea86866ca66be80072e22ba3215dd29d1aeaf05529dc1",

"time": 1305132066,

"mediantime": 1305130878,

"nonce": 1622957241,

"bits": "1a6a93b3",

"difficulty": 157416.4018436489,

"chainwork": "00000000000000000000000000000000000000000000000052d3424e95383558",

"nTx": 8,

"previousblockhash": "00000000000016c0f1e1dd4c2db7cdb772d22a024c9195cf3bf625eb394b6df0",

"nextblockhash": "00000000000038a25c178707b64535c2fb8d36a70e3093b36f866849e9539d55",

"strippedsize": 3068,

"size": 3068,

"weight": 12272,

"tx": [

"255fb8ff561fc1668c79fbf902f394ffd1fbf29797d6d9266821ca4baef56906",

"551d33c93e4a7d7753b621bd275314ae4fe9741a9b4e54894d36138614d182e9",

"481bbbaafa310605a5cd049432c7636e1ec8008bdbb420ffacb9c4a1477f0d95",

"4437c011da6875608c20848f18d83beb8354314116bbf9e99caf8a20a2784aba",

"136a01c0ab4943a501cf4f44484202ccfe41b93a8a2d7d1fc2874295a86d59c3",

"67784993545a27ace47e5dd293f4fbf0bfea8ac706634497acf6ded523c93807",

"097e521fee933133729cfc34424c4277b36240b13ae4b01fda17756da1848c1e",

"8ff78938648b2fb5d2dfe4094f98b8e2a34d53064abbca4b17db271001ae4078"

]

}

2. วน loop getrawtransaction ของทุก transaction เพื่อตรวจสอบ vouts

$ bitcoin-cli getrawtransaction 255fb8ff561fc1668c79fbf902f394ffd1fbf29797d6d9266821ca4baef56906 1

$ bitcoin-cli getrawtransaction 551d33c93e4a7d7753b621bd275314ae4fe9741a9b4e54894d36138614d182e9 1

$ bitcoin-cli getrawtransaction 481bbbaafa310605a5cd049432c7636e1ec8008bdbb420ffacb9c4a1477f0d95 1

$ bitcoin-cli getrawtransaction 4437c011da6875608c20848f18d83beb8354314116bbf9e99caf8a20a2784aba 1

$ bitcoin-cli getrawtransaction 136a01c0ab4943a501cf4f44484202ccfe41b93a8a2d7d1fc2874295a86d59c3 1

$ bitcoin-cli getrawtransaction 67784993545a27ace47e5dd293f4fbf0bfea8ac706634497acf6ded523c93807 1

$ bitcoin-cli getrawtransaction 097e521fee933133729cfc34424c4277b36240b13ae4b01fda17756da1848c1e 1

$ bitcoin-cli getrawtransaction 8ff78938648b2fb5d2dfe4094f98b8e2a34d53064abbca4b17db271001ae4078 1

3. ใช้ gettxout ของทุก vouts ในแต่ละ trnasction แล้วถ้าอันไหนมี output แปลว่าอันนั้นยังไม่ได้ถูกใช้งาน

ซึ่งจะได้คำตอบคือ output ที่ส่งไปที่ address 1FPDNNmgwEnKuF7GQzSqUcVQdzSRhz4pgX

$ bitcoin-cli gettxout 097e521fee933133729cfc34424c4277b36240b13ae4b01fda17756da1848c1e 0

{

"bestblock": "000000000000000000007f8b78d080e1f17988c6185d8f580924d3dca0e714f4",

"confirmations": 766370,

"value": 0.15001501,

"scriptPubKey": {

"asm": "OP_DUP OP_HASH160 9dc53ca382aea9d38d6f010d14df2ccca4ce3106 OP_EQUALVERIFY OP_CHECKSIG",

"desc": "addr(1FPDNNmgwEnKuF7GQzSqUcVQdzSRhz4pgX)#vey4q7p4",

"hex": "76a9149dc53ca382aea9d38d6f010d14df2ccca4ce310688ac",

"address": "1FPDNNmgwEnKuF7GQzSqUcVQdzSRhz4pgX",

"type": "pubkeyhash"

},

"coinbase": false

}

Reply to this note

Please Login to reply.

Discussion

No replies yet.