Thread

Zero-JS Hypermedia Browser

Relays: 5
Replies: 10
Generated: 02:34:08
‼️ข้างใน Bitcoin Wallet ของเรา… มันมีอะไรบ้างนะ ? 🤔 . 🙋‍♂️สำหรับใครที่เก็บบิตคอยน์ใน Hardware Wallet แล้วมีคำถามหรือมีข้อสงสัยว่า.. ➡️ ทำไม Address ที่ใช้รับบิตคอยน์มันเปลี่ยนใหม่ไปเรื่อย ๆ เลย ? ➡️ ใช้ Address เดิมรับบิตคอยน์ซ้ำได้มั้ย ? ➡️ เวลาโอนออกทำไมค่าฟีไม่เท่ากัน ทั้ง ๆ ที่ใส่เลขเดียวกัน เช่น กำหนดไว้ที่ 5 sats/vB แต่บางครั้งก็จ่ายเยอะ บางครั้งก็จ่ายน้อย ? ✅ งั้นเราลองมาดูโครงสร้างกระเป๋าแบบง่าย ๆ กันดีกว่าเนาะ 😊 . ❗️ในระบบกระเป๋าบิตคอยน์แบบ HD Wallet.. หรือกระเป๋าบิตคอยน์แบบที่เราต้องจดบันทึก ‘Seedphrase' ไว้เป็น Backup นั่นแหละ ,, เค้ามีโครงสร้างแตกย่อยไปอีกเยอะแยะมากมาย 👍 (มองให้เป็นต้นไม้ ,, ที่แตกแยกย่อยเป็นกิ่งใหญ่, กิ่งเล็ก และแต่ละกิ่งก็แยกเป็นใบหรือเป็นดอกเป็นผล.. จะทำให้เข้าใจง่ายขึ้น😊) ➡️ ยกตัวอย่าง 'Seedphrase 1 ชุด' ไม่ว่าจะเป็นแบบ 12 คำหรือ 24 คำก็ตาม ,, มันจะสร้างกระเป๋าได้หลายแบบ เช่น Legacy, Segwit, Native Segwit หรือ Taproot (แต่ยังไม่ต้องไปสนใจมันหรอกนะ..) เอาเป็นว่า… ‼️ โดยทั่วไปเราจะได้ใช้กระเป๋าแบบ Native Segwit (BIP-84) หรือเวลาที่เราสร้าง Address เพื่อรับบิตคอยน์ ,, เราจะได้ Address ที่มีชื่อขึ้นต้นด้วย bc1q.... นั่นแหละฮะ ➡️ ในกระเป๋าแต่ละแบบนั้น.. เราก็ยังแยกย่อยได้อีกเป็นหลาย ๆ Account (เหมือนบัญชีธนาคารแหละ .. ถ้าเราอยากมีบัญชีธนาคารหลาย ๆ เล่ม เราก็ทำได้ไม่มีใครห้าม ,, แต่เวลาจะโอนหรือถอนเงินก็ต้องนำสมุดบัญชีเล่มนั้น ๆ ไป) 👍 ➡️ จากนั้นในแต่ละ Account ก็จะแบ่งเป็นกลุ่มของ Address สำหรับใช้เพื่อ 'รับบิตคอยน์' และ Address สำหรับใช้เพื่อรับ 'เงินทอน' ,, ซึ่งสามารถสร้าง Address ได้อีก 'จำนวนมากมายมหาศาล' ชนิดที่เรียกได้ว่าใช้ยังไงก็ไม่มีวันหมด 🧐 ✅ โดยเมื่อนำมาเขียนเรียงกันจะได้ประมาณนี้ [m/84'/0'/0'/0/0] ,, ซึ่งสิ่งนี้เองที่เราเรียกว่า 'Derivation Path' 🧡👍 งงป่ะ ? งั้นดูตามภาพประกอบเลยแล้วกัน 😅 . 1️⃣ Receive Addresses หรือรายการ Address สำหรับ 'รับโอน' บิตคอยน์ ,, ซึ่งหากเราใช้ Address ใดในการโอนเข้าเรียบร้อยแล้ว เจ้าตัว Software wallet จะเลือก Address 'ลำดับถัดไป' ให้เราโดยอัตโนมัติ เช่น … ครั้งแรกเราโอนไปยัง Address ลำดับ 0 [m/84'/0'/0'/0/0] ,, จากนั้นการโอนครั้งถัดไปมันจะเลือก Address ลำดับ 1 [m/84'/0'/0'/0/1] และลำดับ 2 [m/84'/0'/0'/0/2] … ต่อไปเรื่อย ๆ ✅ สำหรับการโอนบิตคอยน์ไปยัง ’Address เดิม‘ ที่ถูกใช้งานแล้ว.. สามารถโอนไปได้ปกตินะครับ ไม่ได้มีผลต่อการใช้งานใด ๆ เลย 👍 ,, เพียงแต่ว่ามันจะ 'ลดความเป็นส่วนตัวลง' ,, เพราะจะทำให้คนอื่น ๆ สามารถรู้ได้ว่าเรามีบิตคอยน์เยอะหรือน้อยแค่ไหน ,, โดยเฉพาะคนที่ไม่เคยโอนไปยัง Address ใหม่ ๆ เลยยิ่งมีความเสี่ยงครับ ❗️กลุ่มคนส่วนใหญ่ที่ใช้ Address เดิมซ้ำ ๆ ก็จะเป็น Exchange หรือกระเป๋ากองทุน เพื่อให้ง่ายในการบริหารจัดการหรือตรวจสอบ ✅ 2️⃣ Change Addresses หรือรายการ Address สำหรับรับ 'เงินทอน' ,,❗️เวลาเราโอนบิตคอยน์ออกจากกระเป๋า.. เช่น เรามี UTXO ขนาด 1,000,000 sats และต้องการโอนไป Address ปลายทางเพียงแค่ 300,000 sats ,, ส่วนที่เหลืออีก 700,000 sats นั่นแหละจะถูกโอนกลับมายัง Address เหล่านี้ ,, ซึ่งการใช้ Change Addresses ก็จะไล่ลำดับไปเรื่อย ๆ เช่นกัน โดยเริ่มจาก Change Address ลำดับ 0 [m/84'/0'/0'/1/0] ... และต่อไปเรื่อย ๆ ตามจำนวนครั้งที่เราโอนบิตคอยน์ออกจากกระเป๋า 😘 3️⃣ ส่วนนี้เรียกว่า UTXO หรือชื่อเต็ม ๆ คือ Unspent Transaction Outputs หรือแปลเป็นไทยก็คือ 'บิตคอยน์ที่ยังไม่ถูกใช้' 🧡 ,, ซึ่งจำนวน UTXO จะขึ้นอยู่กับ ’จำนวนครั้ง‘ ที่เรารับโอนบิตคอยน์มาเก็บ เช่น เราโอนบิตคอยน์ออกจาก Exchange มายัง Address ลำดับ 0 ก็จะมี UTXO จำนวน 1 อัน ,, และวันต่อมาเรารับโอนบิตคอยน์จากเพื่อนเข้าที่ Address ลำดับ 0 (Address เหมือนเดิม) ก็จะมี UTXO เพิ่มมาอีก 1 อัน ,, สรุปตอนนี้กระเป๋าของเราจะมี UTXO จำนวน 2 อัน แต่อยู่บน Address เดียวกันทั้ง 2 อัน ‼️งงมั้ยนะ 🥺 ,, ลองคิดภาพง่าย ๆ ก็คือ ทุกครั้งที่เรารับบิตคอยน์เข้ากระเป๋า เราจะได้แบงค์ที่มีจำนวน Satoshi เท่ากับจำนวนที่เราโอนเข้ามา ,, ถ้าโอน 2 ครั้งก็จะมีแบงค์ 2 ใบ ,, ถ้าโอน 10 ครั้งก็จะมีแบงค์ 10 ใบ โดยที่ไม่สนใจว่าจะโอนไป Address เดียวกันหรือคนละ Address กันก็ตาม ✅ อ้ออ.. แต่หลังจากเรามีการโอนบิตคอยน์ออกจาก UTXO แล้ว.. มันจะถูกทำลายและสร้างเป็น UTXO ใหม่ก็คือ ’เงินทอน‘ (ถ้ามี) ✅ 4️⃣ ในกรณีใช้ซอฟต์แวร์ Sparrow Wallet จะสามารถ ‘เลือก’ UTXO ที่ต้องการโอนออกได้เลย (ถ้าเราไม่เลือก.. โปรแกรมก็จะเลือกให้เองแหละ แต่บางครั้งมันก็อาจจะไม่ถูกใจเราไง) ‼️สมมุติเราจะโอน UTXO สีเขียว ,, เราก็สามารถที่จะเลือก UTXO นั้น และคลิกที่ Send Selected ได้เลย ,, โดยที่เราจะส่งบิตคอยน์ได้ ‘ไม่เกิน’ จำนวน satoshi ที่มีใน UTXO นั้นนะ ❌😅 ✅ ในกรณีเราต้องการโอนบิตคอยน์เกินขนาด UTXO เช่น ต้องการโอนจำนวน 4,000,000 satoshi ,, เราจำเป็นต้องโอนออกจาก UTXO สีเขียว และ UTXO สีม่วง ’รวมกัน‘ (เพื่อให้มีจำนวนมากกว่า Output ที่ต้องการ) 👍 ➡️ ซึ่งกรณีที่มี Input มากกว่า 1 UTXO เนี่ยแหละ.. มันทำให้ Transaction ของเรามีข้อมูล ’เพิ่มขึ้น‘ และทำให้ ‘ค่าธรรมเนียม’ ที่ต้องจ่าย ’มากขึ้น’ ตามลำดับ❗️(ยิ่งมีหลาย UTXO ก็ยิ่งต้องจ่ายค่าฟีแพงขึ้น) ,, อาจารย์จึงแนะนำว่า 1 UTXO ไม่ควรมีขนาดเล็กเกินไป ,, ถ้าจะให้ดีควรมีมากกว่า 1,000,000 sats (โหดอยู่) 😂🙏 . ‼️สำหรับท่านที่ใช้งานเฉพาะ Application ที่มากับเจ้าตัว HW เช่น Trezor Suite ก็อาจจะไม่เคยเห็นโครงสร้างละเอียดแบบนี้ ,, แต่โดยหลักการแล้วทำงานเหมือนกัน 🧡 และเพื่อให้ใช้บิตคอยน์ได้สนุกขึ้นจึงอยากให้ลองศึกษาการใช้งาน HW ร่วมกับซอฟต์แวร์ Sparrow Wallet ดูครับ 👍✅ . ป.ล. ผมกำลังเขียนบทความสอนใช้งาน Sparrow Bitcoin Wallet อยู่นะฮะ.. แต่น่าจะอีกสักพักใหญ่ ๆ 😅 #เวลามีค่าศึกษาบิตคอยน์ #bitcoinselfcustody #Siamstr image image
2024-12-26 11:53:36 from 1 relay(s) 6 replies ↓
Login to reply

Replies (10)

มีแหล่งรายได้นึงของผม เขา accept เฉพาะ wallet ที่ขึ้นต้นด้วยเลข 1 เท่านั้นเลยครับ มันเรียกว่า legacy ใช่มั้ยครับ มีข้อคำนึงอะไรเป็นพิเศษในการใช้ legacy wallet ไหมครับ (แต่เอาจริงๆ ผมก็จะใช้ legacy wallet รับเงินจากเขา แล้วโอนเข้ามาเก็บใน segwit อยู่ดี)
2024-12-27 03:43:27 from 1 relay(s) ↑ Parent 1 replies ↓ Reply
จริง ๆ ก็ไม่ต่างกันครับ ,, ในทางเทคนิคอล P2PKH ยังปลอดภัยเพียงพอ 👍 เพียงแต่ตอนโอนออกจ่ายค่าฟีแพงกว่า BIP84 ครับ 😊
2024-12-27 09:57:34 from 1 relay(s) ↑ Parent Reply
👍👍👍 nostr:nevent1qqsqqqxj0d0x8a9ar7sakck4yq295rtx8rtjygdt5p27yqdk4r0khecpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhsygq6h3qvtxcay2p3gjh6c3jec0dmlsdpkfj6h8kww29q59xxe4swgypsgqqqqqqskg6zn3
2025-01-02 23:30:35 from 1 relay(s) ↑ Parent Reply