เคยสงสัยไหมว่าทำไมบิตคอยน์ถึงอยู่รอดมานานขนาดนี้ โดยที่ไม่มีใครสามารถพิมพ์เงินเพิ่มออกมาใช้สุรุ่ยสุร่ายได้เลย? ในฐานะบล็อกเกอร์ด้าน Web3 ที่ติดตามเรื่องนี้มานับปี ผมมักจะบอกเพื่อนๆ ในกรุงเทพฯ ว่าการส่งบิตคอยน์จากกระเป๋าเงินในโทรศัพท์ของคุณไปยังกระเป๋าของคนอื่น มันไม่ใช่แค่กดปุ่มแล้วเสร็จ แต่มีกระบวนการซับซ้อนที่ทำให้ระบบนี้แข็งแกร่งดั่งหินผา วันนี้เราจะมาถอดรหัสกลไกนี้กันแบบละเอียดยิบ เหมือนกับการแกะเปลือกหอมหัวใหญ่ทีละชั้น เพื่อให้คุณเข้าใจว่าทำไมบิตคอยน์ถึงเป็น 'ทองคำดิจิทัล' ที่น่าเชื่อถือสำหรับนักลงทุนไทย

บิตคอยน์ไม่ได้ทำงานเหมือนบัญชีธนาคารที่แสดงยอดเงินแล้วบวก ลบไปมา แต่ใช้โมเดลที่เรียกว่า UTXO หรือ Unspent Transaction Output ซึ่งแปลว่าผลลัพธ์จากการทำธุรกรรมที่ยังไม่ได้ใช้ กล่าวง่ายๆ เงินของคุณไม่ได้นั่งนิ่งในบัญชี แต่เป็นชุดของ 'ใบเสร็จ' จากธุรกรรมเก่าๆ แต่ละใบระบุจำนวนเงินและกุญแจล็อกว่าสามารถใช้ได้โดยใครเท่านั้น

ใบเสร็จเหล่านี้คือ UTXO นั่นเอง เมื่อคุณใช้เงิน คุณไม่ได้หักยอดคงเหลือ แต่จะทำลายใบเสร็จเก่า (นำมาเป็นอินพุต) แล้วสร้างใบเสร็จใหม่ (เอาต์พุต) ให้ผู้รับ และอาจสร้างใบเสร็จหาทอนให้ตัวเองด้วย

มาดูภาพรวม: กระบวนการทำธุรกรรมบิตคอยน์ทั้งหมด (แบบแผนภาพข้อความ)

แผนภาพกระบวนการทำธุรกรรมบิตคอยน์ แสดงตั้งแต่การส่ง 0.5 BTC จากโทรศัพท์ เลือก UTXO เป็นอินพุต สร้างโครงสร้างธุรกรรมที่มีอินพุต เอาต์พุต และค่าธรรมเนียม ลงนามและกระจายไปยังเครือข่าย สุดท้ายนักขุดรวมเข้ากับบล็อกและสร้าง UTXO ใหม่

สมมติคุณอยากส่ง 0.5 BTC ให้เพื่อน

กระเป๋าเงินของคุณมี UTXO สามชิ้น: 0.3 BTC + 0.4 BTC + 0.8 BTC (รวม 1.5 BTC)

กระเป๋าจะเลือกอินพุตที่พอเหมาะ (มักเลือกชุดที่ใกล้เคียงที่สุดเพื่อลดของเสีย)

เลือก 0.4 BTC + 0.3 BTC = 0.7 BTC เป็นอินพุต

สร้างโครงสร้างธุรกรรม

• อินพุต (Inputs): อ้างอิง ID ธุรกรรมของ UTXO สองชิ้นนั้น + ดัชนีเอาต์พุต + สคริปต์ปลดล็อก (ลายเซ็นของคุณยืนยันว่าคุณเป็นเจ้าของ)

• เอาต์พุต (Outputs):

  • ส่งให้เพื่อน: 0.5 BTC (ล็อกไว้ที่แฮชที่อยู่สาธารณะของเพื่อน)

  • หาทอนให้ตัวเอง: 0.18 BTC (ล็อกไว้ที่ที่อยู่ของคุณ หักค่าธรรมเนียม 0.02 BTC)

• ค่าธรรมเนียม: คำนวณจากผลรวมอินพุต ลบผลรวมเอาต์พุต = 0.02 BTC (นักขุดได้รับ)

ลงนาม: ใช้กุญแจส่วนตัวเซ็นทั้งธุรกรรม (ป้องกันการแก้ไขจำนวนเงิน)

กระจายไปยังเครือข่าย: ส่งไปยังโหนดใกล้เคียง โหนดตรวจสอบแล้วใส่ในพูลหน่วยความจำ (mempool)

นักขุดเห็นธุรกรรมนี้ → รวมในบล็อก кандидат

นักขุดขุดสำเร็จ → บล็อกขึ้น链 → UTXO เก่าของคุณถูก標記ว่าใช้แล้ว → สร้าง UTXO ใหม่ (0.5 ของเพื่อน + 0.18 หาทอนของคุณ)

ยืนยัน: ยิ่งมีบล็อกต่อเนื่องมากเท่าไหร่ ยิ่งปลอดภัย (ปกติ 6 ยืนยันถือว่ามั่นใจ)

กระบวนการทั้งหมดเหมือนการโยนลูกหิมะ: UTXO เก่าถูกใช้หมด ใหม่เกิดขึ้นมาแทนที่ ทำให้ปริมาณบิตคอยน์คงที่ 21 ล้านเหรียญ เพียงแค่ย้ายไปมาระหว่าง UTXO เหล่านี้

โครงสร้างธุรกรรมหน้าตาเป็นยังไง? (แยกส่วนหลักๆ)

ธุรกรรมบิตคอยน์ไม่ใช่แค่ 'ฉันให้เงินคุณกี่บาท' แต่เป็นโครงสร้างข้อมูลที่ประกอบด้วยส่วนต่างๆ ดังนี้

• หมายเลขเวอร์ชัน (4 ไบต์): ปัจจุบันส่วนใหญ่เป็น 2 ใช้สำหรับสัญญาณอัปเกรดแบบอ่อน

• จำนวนอินพุต (ตัวแปร): กี่ UTXO ที่ถูกใช้

• แต่ละอินพุต:

  • แฮชธุรกรรมก่อนหน้า (32 ไบต์)

  • ดัชนีเอาต์พุต (4 ไบต์ บอกว่าเป็นเอาต์พุตตัวไหน)

  • ความยาวสคริปต์เซ็น

  • สคริปต์ปลดล็อก (ScriptSig): ลายเซ็น + กุญแจสาธารณะของคุณ

  • จำนวนเอาต์พุต

• แต่ละเอาต์พุต:

  • จำนวนเงิน (8 ไบต์ หน่วยซาโตชิ 1 BTC = 100 ล้านซาโตชิ)

  • ความยาวสคริปต์ล็อก

  • สคริปต์ล็อก (ScriptPubKey): พบบ่อยสุดคือ P2PKH (Pay to Public Key Hash): OP_DUP OP_HASH160 [แฮชกุญแจสาธารณะ 20 ไบต์] OP_EQUALVERIFY OP_CHECKSIG

• เวลาล็อก (4 ไบต์): มักเป็น 0 หมายถึงมีผลทันที

ส่วนสำคัญคือ ภาษาสคริปต์!

สคริปต์ของบิตคอยน์ถูกออกแบบให้ไม่สมบูรณ์แบบแบบติวริง (โดยตั้งใจให้เรียบง่าย) แต่ทรงพลังมาก

มันเหมือนเครื่องจักรเสมือนขนาดเล็กที่ตอบคำถามเดียว: 'เงินนี้ใช้ได้ตอนนี้หรือยัง?'

ตัวอย่างสคริปต์ล็อกทั่วไป:

  • P2PKH (ยอดนิยม): ล็อกไว้ที่แฮชที่อยู่ ปลดล็อกต้องให้ลายเซ็น + กุญแจสาธารณะ ตรวจสอบว่าลายเซ็นตรงกับกุญแจและแฮชตรงกับที่อยู่
  • P2SH: ยืดหยุ่นกว่า รองรับมัลติซิกเนเจอร์ ล็อกเวลา ฯลฯ
  • Taproot (อัปเกรดปี 2021 เป็นหลัก): ใช้ลายเซ็น Schnorr เพิ่มความเป็นส่วนตัว ลดค่าธรรมเนียมสำหรับมัลติซิก

สคริปต์ทำให้บิตคอยน์สามารถโปรแกรมได้ แต่ไม่เสี่ยงบั๊กใหญ่เหมือนอีเธอเรียม ความปลอดภัยคือหัวใจหลัก

การขุด: ใครเป็นคนรวมธุรกรรมเหล่านี้?

ภาพประกอบการขุดบิตคอยน์และพูลหน่วยความจำ กลุ่มหุ่นยนต์นักขุดล้อมพูลที่เต็มไปด้วยธุรกรรมที่ยังไม่ยืนยัน (ติดป้ายค่าธรรมเนียมต่างกัน) พวกเขาใช้ตาข่ายตักธุรกรรมค่าธรรมเนียมสูงใส่บล็อกของตัวเอง ขณะคำนวณ 'ปริศนาแฮช (Nonce)' นักขุดตัวหนึ่งสำเร็จ พบบล็อกแล้ว บล็อกสว่างขึ้นและแสดง 'BLOCK FOUND!'

นักขุดคือ 'นักบัญชีและยามรักษาความปลอดภัย' ของเครือข่าย

หน้าที่หลักของพวกเขา:

1. รวบรวมธุรกรรมจากพูลหน่วยความจำที่ค่าธรรมเนียมสูงสุด (優先ธุรกรรมแพงๆ)

2. สร้างบล็อก:

หัวบล็อก (80 ไบต์ สำคัญยิ่ง):

  • เวอร์ชัน

  • แฮชบล็อกก่อนหน้า (เชื่อม链)

  • Merkle Root (รากต้นไม้ลายนิ้วมือของธุรกรรมทั้งหมด)

  • เวลาปัจจุบัน

  • เป้าหมายความยาก (ฟิลด์ Bits)

  • Nonce (ตัวเลขสุ่ม นักขุดลองเปลี่ยนมัน)

รายการธุรกรรม: ธุรกรรม coinbase (รางวัลนักขุด) อยู่ด้านหน้า + ธุรกรรมปกติ

3. คำนวณ Nonce: ทำให้แฮช SHA256 สองชั้นของหัวบล็อกทั้งหมด < เป้าหมายความยาก (ต้องมีศูนย์นำหน้าเยอะๆ) เช่น ถ้าเป้าหมายคือ 00000000ffff... คุณต้องลอง Nonce ไปเรื่อยๆ จนแฮชมีศูนย์นำหน้าเพียงพอ

4. ใครคำนวณได้ก่อน → กระจายบล็อก → โหนดอื่นตรวจสอบ → ยอมรับ → ขุดบล็อกถัดไป

5. รางวัล: ปัจจุบัน 3.125 BTC (หลังฮาล์ฟปี 2024) + ค่าธรรมเนียมจากธุรกรรมที่รวม

การขุด本质คือลอตเตอรี่: พลังคำนวณทั้งเครือข่ายยิ่งสูง ยิ่งยากที่จะชนะ แต่ความยากจะปรับอัตโนมัติ (จะอธิบายต่อ)

โครงสร้างบล็อก: ดูง่ายๆ ชัดเจน

บล็อก = หัวบล็อก + ร่างกายธุรกรรม

ฟิลด์หัวบล็อก:

  • เวอร์ชัน (4B)
  • Prev Hash (32B)
  • Merkle Root (32B)
  • Timestamp (4B)
  • Bits (ความยาก 4B)
  • Nonce (4B)

ร่างกายธุรกรรม:

  • นับธุรกรรม
  • ธุรกรรม coinbase (นักขุดส่งรางวัลให้ตัวเอง + ข้อความ任意 เช่น ในบล็อกแรกของซาโตชิ 'The Times 03/Jan/2009 Chancellor on brink of second bailout for banks')
  • ธุรกรรมปกติ

ต้นไม้ Merkle ฉลาดมาก: จัดการธุรกรรมพันๆ รายการได้ด้วยแฮชราก 32 ไบต์ ถ้าแก้ไขธุรกรรมใด รากจะเปลี่ยน ตรวจสอบรวดเร็ว

การปรับความยาก: 'คันเร่งอัตโนมัติ' ของบิตคอยน์

บิตคอยน์ตั้งใจให้บล็อกใหม่เกิดเฉลี่ยทุก 10 นาที

ไม่ว่าพลังคำนวณทั้งเครือข่ายจะพุ่งสูง (เครื่องขุดใหม่) หรือตกต่ำ (เช่น การห้ามในบางประเทศ) ก็ต้องพยายามรักษาไว้ที่ 10 นาที

วิธีปรับ:

  • ทุก 2016 บล็อก (ราวสองสัปดาห์) คำนวณเวลาจริง
  • เวลาตั้งเป้า: 2016 × 10 นาที = 20,160 นาที
  • ถ้าใช้เวลาน้อยกว่า (พลังสูง) ความยากเพิ่ม (เป้าหมายแฮชเล็กลง ศูนย์นำหน้าเพิ่ม)
  • ถ้าใช้เวลานานกว่า ความยากลด
  • สูตรปรับ: ความยากใหม่ = ความยากเก่า × (20,160 นาที / เวลาจริง)
  • แต่มีขีดจำกัด: ปรับครั้งเดียวไม่เกิน 4 เท่า (ป้องกันการสั่นไหวรุนแรง)

กลไกนี้สุดยอดตรงไหน?

มันทำให้การออกบิตคอยน์มีจังหวะแน่นอนดั่งนาฬิกา

ไม่ว่าอุตสาหกรรมจะพัฒนาแค่ไหน ขีดจำกัด 21 ล้านและการฮาล์ฟก็ไม่เคยคลาดเคลื่อน

นี่คือรากฐาน信仰ของบิตคอยน์ในฐานะ 'ทองคำดิจิทัล' ที่นักลงทุนไทยชื่นชอบ โดยเฉพาะในยุคที่เศรษฐกิจผันผวน

ทำไมการออกแบบเหล่านี้ทำให้บิตคอยน์มั่นคงขนาดนี้?

  • UTXO: ป้องกันการใช้ซ้ำง่ายดาย (UTXO หนึ่งใช้ได้ครั้งเดียว ใช้แล้วลบ)
  • สคริปต์: โปรแกรมได้แต่จำกัด ปลอดภัย
  • PoW + ปรับความยาก: ใช้ต้นทุนไฟฟ้าจริงปกป้องเครือข่าย การโจมตี 51% แพงหูฉี่
  • กฎ链ยาวที่สุด: เครือข่ายยอมรับ链ที่มีงานมากสุด (ยากปลอม)

ธุรกรรมหนึ่งจากการเริ่มต้นจนยืนยัน คือการต่อสู้ ตรวจสอบ แข่งขันแบบเรียลไทม์จากโหนดและนักขุดนับหมื่นทั่วโลก

ตอนนี้คุณพร้อมคุยกับเพื่อนได้แล้ว:

'บิตคอยน์ไม่ใช่ยอดบัญชี แต่เป็น UTXO ที่เต้นรำบน链 นักขุดโหวตด้วยการใช้ไฟฟ้าว่าธุรกรรมไหนจะบันทึกก่อน ความยากปรับทุกสองสัปดาห์เพื่อรักษาจังหวะ'

อยากเจาะลึกกว่านี้? เช่น SegWit ช่วยประหยัดพื้นที่ยังไง Taproot ลดค่ามัลติซิกได้อย่างไร หรือ Lightning Network โอนเงินเร็วปรื๊ด?

หรือคุณบอกมาสิ ส่วนไหนงงที่สุด ผมจะอธิบายให้ละเอียดยิบ~

แนะนำ 3 แพลตฟอร์มแลกเปลี่ยนคริปโตชั้นนำระดับโลก:

  • สมัคร Binance (ราชาแห่งปริมาณการซื้อขาย ครบครันทุกเหรียญ สิทธิพิเศษสำหรับมือใหม่เพียบ);
  • สมัคร OKX (เครื่องมือสัญญาซื้อขายยอดเยี่ยม ค่าธรรมเนียมต่ำ);
  • สมัคร Gate.io (นักล่าเหรียญใหม่ คัดลอกการเทรด + แอร์ดรอปพิเศษ).

อยากครบเครื่องเลือก Binance เล่นโปรเลือก OKX ล่าเหรียญเล็กเลือก Gate! สมัครด่วนรับส่วนลดค่าธรรมเนียมตลอดชีพ~