Replying to Avatar chontit

ต่างกันที่ Locking script และความเก่าแก่ครับ (Legacy -> Segwit -> Native Segwit -> Taproot)

ตอนนี้ Native Segwit เป็นที่นิยมที่สุด Address ขึ้นต้นด้วย bc1q…

Address ฝั่งผู้ส่งและผู้รับ สามารถส่งไปมาหากันได้หมด มิได้กำหนดว่าต้องส่งแบบเดียวกัน เพียงแต่ว่าต้องส่งบน Bitcoin Mainnet (On chain) เท่านั้นครับ

และเมื่อความยาวของ Script ไม่เท่ากัน จะส่งผลให้จ่ายค่าธรรมเนียมตอนโอนออกไม่เท่ากันครับ

ปล. ผมขออนุญาตแปะการคำนวนค่าธรรมเนียมในการส่งบิตคอยน์ ที่เคยโพสในเฟสบุ๊คครับ

===========

ค่าโอน BTC On-chain จาก Non-Custodial Wallet ต้องคำนวนจากหลายปัจจัยมากเลยครับ เช่น

- ประเภทของกระเป๋าที่เราใช้ (ความซับซ้อนของ Locking script)

- จำนวน UTXO ที่เราจะโอนออก (จำนวนยิ่งมาก ยิ่งเพิ่มขนาด ยิ่งจ่ายแพงขึ้น)

- จำนวน UTXO ที่รับเงิน (จำนวนยิ่งมาก ยิ่งเพิ่มขนาด ยิ่งแพงขึ้น)

***แต่ไม่เกี่ยวกับจำนวนบิตคอยน์ที่ใช้โอน***

เพราะฉะนั้นค่าฟีที่ต้องจ่าย คือ "ขนาดของธุรกรรมรวมทั้งหมด คูณด้วย จำนวน sat/vB" ที่เราเลือกครับ

ผมยกตัวอย่างขนาดของธุรกรรมสำหรับการโอน Input 1 utxo ไป Output 1 utxo ครับ (ความยาวของ address ก็มีผล ซึ่งกระเป๋าแต่ละแบบมีความยาวไม่เท่ากัน, กระเป๋า Taproot มีความยาว Address มากที่สุด แต่ Locking script สั้นสุด เหมาะแก่การใช้งานในอนาคต 5555)

- กระเป๋า Native Segwit (Receive Address ขึ้นต้นด้วย bc1q...) ประมาณ 155 vB

- กระเป๋า Legacy (Receive Address ขึ้นต้นด้วย 1...) ประมาณ 235 vB

- กระเป๋า Segwit (Receive Address ขึ้นต้นด้วย 3...) ประมาณ 165 vB

- กระเป๋า Taproot (Receive Address ขึ้นต้นด้วย bc1p...) ประมาณ 145 vB

- กระเป๋า Multisig 2-of-3 แบบ Native Segwit (Receive Address bc1q...) ประมาณ 200 vB

ทั้งนี้ให้คำนวนขนาดของธุรกรรมเพิ่มขึ้น 25-50% ต่อ UTXO ที่จำนวนมากกว่า 1 อัน

อ้ออ … ถ้าโอนหมดทั้ง UTXO โดยไม่มีเงินทอนกลับมาหาเรา … ชุดคำสั่งใน Tx ก็จะสั้นลงอีก => ขนาดเล็กลง => ฟีลดลง

HW โดยทั่วไปจะให้เราใช้กระเป๋าแบบ Native Segwit เพราะฉะนั้นสามารถใช้เลขกลม ๆ 200 vB คูณด้วยจำนวน sat/vB ที่เราเลือกโอนได้เลยครับ

เช่น เลือกขนาด 20 sat/vB ก็จะต้องจ่ายค่าฟีโดยประมาณ = 200 x 20 = 4,000 satoshi

จากนั้นก็คำนวน satoshi เป็น "บาท" ตรง ๆ ก็จะได้ประมาณ 1,428,791.40 x 0.00004000 = 57.15 บาท

ขอสอบถามอีกนิดครับ ถ้า ส่ง btc

1.จาก address on chain ไปยัง SegWit แบบใดแบบหนึ่ง

2. ส่งจาก SegWit ไปยัง address on chain

กรณีที่กล่าวสามารถทำได้ ใช่มั้ยครับ

Reply to this note

Please Login to reply.

Discussion

อันนี้มีจุดที่เข้าใจยังไม่ค่อยถูกต้องครับ 🥹

ปกติแล้วการทำธุกรรมบิตคอยน์ (หรือมันคือการโอนบิตคอยน์ออกจาก Address หนึ่ง ไปอีก address หนึ่งครับ) มี 2 แบบหลัก ๆ คือ

1. Bitcoin on-chain หมายถึง การรับส่งบิตคอยน์ทึ่มีการบันทึก Transaction ลงใน Bitcoin blockchain และสามารถติดตาม ค้นหา ได้จาก Blockchain explorer ต่าง ๆ (นิยมใช้ mempool.space) ซึ่งก็คือการทำธุรกรรมระหว่าง Address ทั้ง 4 แบบครับ (Legacy, Segwit, Native Segwit, Taproot)

2. การทำธุรกรรม Off-chain นั่นคือ การรับส่งบิตคอยน์นอก Bitcoin chain หรือ Bitcoin Mainnet ,, ถ้าจะให้เข้าใจง่าย ๆ มันคือระบบ Bitcoin Lightning ครับ (เหมือนกับว่าดึงบิตคอยน์ออกมาไว้กับนาย A และนาย B, โดยที่นายทั้งสองคนเค้าต่อท่อถึงกันไว้ตลอดเวลา การรับส่งบิตคอยน์ก็จะทำได้แค่เท่ากับที่นาย A และนาย B มี,, ถ้านาย A ส่งให้นาย B ไป 10,000 sat, จำนวนบิตคอยน์ของนาย A ก็จะลดลง พร้อมกับนาย B จะมีเพิ่มขึ้น ,,,, แต่!! ทุกอย่างที่เกิดขึ้นระหว่างนาย A กับ B จะไม่มีใครรับรู้ได้)

งงไหมครับ ,, ผมพิมพ์ผมก็งง 😂

สรุปง่าย ๆ ว่า การรับส่งบิตคอยน์ที่เป็น Bitcoin Address ไม่ว่าจะขึ้นต้นด้วย 1, 3, bc1q หรือ bc1p มันคือการรับส่ง On-Chain ทั้งหมดครับ

ถ้า lighting มันจะยาว ๆ ๆ หรือบางทีขึ้นต้นด้วย lnurl…. (Lightning URL)

พอเข้าใจแล้วครับ

สงสัยตรงไหนถามพวกเราได้ตลอดเลยนะครับบ ไม่ต้องเกรงใจ ❤️