Taproot คืออะไร? (ฉบับละเอียด)

Taproot คืออะไร? (ฉบับละเอียด)

Taproot คืออะไร? (ฉบับละเอียด)



นับตั้งแต่ Whitepaper ของบิตคอยน์ถูกเผยแพร่เป็นครั้งแรกเมื่อวันที่ 31 ตุลาคม พ.ศ. 2553 จนถึงปัจจุบันก็เป็นเวลากว่า 10 ปีแล้วที่โลกได้รู้จักกับคำว่า “บิตคอยน์” แม้ว่าเหรียญบิตคอยน์จะได้รับความสนใจจากผู้คนมากขึ้นเรื่อย ๆ และเกิดการซื้อขายเก็งกำไรจนราคาสูงสุดตลอดกาล (All Time High) ครั้งล่าสุด ณ วันที่ 10 พฤศจิกายน พ.ศ. 2564 อยู่ที่ประมาณ 69,000 ดอลลาร์สหรัฐฯ หรือคิดเป็นเงินไทยประมาณ 2.3 ล้านบาท (Coinmarketcap)



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



นักพัฒนาและผู้ใช้บิตคอยน์เล็งเห็นถึงข้อจำกัดดังกล่าว จึงพยายามพัฒนาบิตคอยน์ให้เหมาะกับการทำธุรกรรม ซึ่งมีตั้งแต่การรับส่งเงินทั่วไป ไปจนถึงธุรกรรมที่มีความซับซ้อน ผ่านการทำสิ่งที่เรียกว่า Soft Fork 



Soft Fork คือ การปรับปรุงชุดคำสั่งของโปรโตคอล โดยที่ชุดคำสั่งใหม่จะไม่ไปยกเลิกชุดคำสั่งเก่า ผู้ใช้ที่ไม่อยากอัปเกรดจึงยังสามารถใช้งานเวอร์ชั่นเก่าต่อไปได้ (Backwards Capability) ทั้งนี้ การปรับปรุงที่เกิดขึ้นในระบบที่มีการกระจายศูนย์กลางแต่ละครั้ง จำเป็นต้องผ่านความเห็นชอบจากสมาชิกส่วนใหญ่ในเครือข่ายเสียก่อน



ในกรณีของ Soft Fork “Taproot” ในบทความนี้ก็ไม่ต่างกัน โดยก่อนที่จะอัปเกรด Taproot ต้องได้รับความเห็นชอบจากสมาชิกในเครือข่ายอย่างน้อย 91%



ตลอดระยะเวลา 11 ปีที่ผ่านมา บิตคอยน์จึงมีการทำ Soft Fork ครั้งสำคัญ ๆ เพียง 2 ครั้งเท่านั้น ได้แก่ Bitcoin XT ในปีพ.ศ. 2557 และ SegWit ในปีพ.ศ. 2560 ทำให้การอัปเกรด Taproot  ถือเป็นการปรับปรุงโปรโตคอลครั้งสำคัญของบิตคอยน์ในรอบ 4 ปีเลยทีเดียว 



แต่การอัปเกรด Taproot คืออะไร? มีความสำคัญแค่ไหนกับบิตคอยน์? และเราในฐานะนักลงทุนควรรู้อะไรบ้าง? ไปร่วมหาคำตอบด้วยกันกับ Bitkub Academy ได้เลย!

  



Taproot เปลี่ยนแปลง Bitcoin อย่างไรบ้าง?



  1. เพิ่มความเป็นส่วนตัว การเพิ่มความเป็นส่วนตัวในที่นี้ ไม่ได้หมายความว่าสมาชิกในเครือข่ายบิตคอยน์จะสูญเสียความสามารถในการตรวจสอบธุรกรรมไป แต่หมายถึงข้อมูลส่วนที่ไม่ได้มีความจำเป็นต้องเปิดเผยต่อสาธารณชน และไม่ได้เกี่ยวข้องกับประสิทธิภาพในการทำธุรกรรม จะถูกรวมหรือแฮชจนเหลือแต่ใจความสำคัญเท่านั้น เช่น การใช้ความสามารถพิเศษของ Schnorr Signature ที่รวม Public Keys ของเจ้าของลายเซ็นทุกคนในธุรกรรม Multisig เข้าด้วยกัน การไม่เปิดเผยเงื่อนไขที่ไม่ได้ใช้ในธุรกรรมของ MAST และการที่ขนาดของธุรกรรมที่มีความซับซ้อนกับธุรกรรมปกติไม่แตกต่างกันจนเห็นได้ชัดอีกต่อไป ทำให้คนอื่นไม่สามารถรู้ได้แล้วว่าบล็อกไหนมีการทำธุรกรรมที่มีความซับซ้อนเกิดขึ้น

  2. ลดค่าธรรมเนียม สืบเนื่องมาจากการรวมและย่อข้อมูลส่วนที่ไม่จำเป็นต้องเปิดเผยให้เหลือแต่ใจความสำคัญ ทำให้ขนาดของธุรกรรมลดลง กระบวนการและเวลาที่ใช้ในการประมวลผลก็ลดลง ทำให้ความหนาแน่นและค่าธรรมเนียมของธุรกรรมก็ลดลงตามไปด้วย

  3. เพิ่มความยืดหยุ่นในการใช้งาน สืบเนื่องจากข้อ 2. เมื่อการประมวลผลธุรกรรมที่มีความซับซ้อนใช้เวลาน้อยลงและมีค่าธรรมเนียมที่ถูกลง การใช้งานสัญญาอัจฉริยะที่มีความซับซ้อน ซึ่งหมายรวมไปถึงการสร้างโปรเจกต์ DeFi บนบิตคอยน์ก็สามารถเป็นไปได้ง่ายขึ้น

  4. Lightning boost Layer 2 ของบิตคอยน์อย่าง Lightning Network ก็ได้รับอานิสงส์จากการอัปเกรด Taproot ด้วยเช่นกัน โดย Lightning Network ที่มีค่าธรรมเนียมที่ถูกอยู่แล้วก็จะยิ่งถูกลงกว่าเดิม แถมมีความยืดหยุ่นและความเป็นส่วนตัวมากขึ้นด้วย

    

    

การอัปเกรด Taproot คืออะไร?



การอัปเกรด Taproot คือ การปรับปรุงชุดคำสั่งของบิตคอยน์ที่จะช่วยเพิ่มประสิทธิภาพและความเป็นส่วนตัวให้กับการทำธุรกรรม โดยเฉพาะอย่างยิ่งการทำธุรกรรมที่ใช้คุณสมบัติที่มีความซับซ้อน เช่น คุณสมบัติในการจำกัดการใช้จ่ายบิตคอยน์จนกว่าจะถึงระยะเวลาหรือบล็อกที่กำหนด (Timelock) และคุณสมบัติในการทำธุรกรรมด้วยลายเซ็นมากกว่า 1 ลายเซ็น (multi-signature) เป็นต้น



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



ในปี พ.ศ. 2561 Gregory Maxwell ซึ่งขณะนั้นเป็น 1 ในนักพัฒนาเครือข่ายบิตคอยน์คนสำคัญ ได้นำเสนอ “Taproot” ซึ่งเขาเชื่อว่าจะเป็นทางแก้ของปัญหาที่ได้กล่าวไปข้างต้น โดยในการอัปเกรด Taproot นี้จะแบ่งออกเป็น 3 การอัปเกรดย่อยตามข้อเสนอการพัฒนาบิตคอยน์ หรือ Bitcoin Improvement Proposals (BIP) ได้แก่ Schnorr Signatures (BIP-340), Taproot (BIP-341), และ Tapscript (BIP-342)





Schnorr Signature (BIP-340) คืออะไร?



ก่อนที่จะเข้าใจว่า Schnorr Signature คืออะไร เราต้องทำความเข้าใจก่อนว่าในการทำธุรกรรมภายในบล็อกเชน Private Key และ Public Key คือสิ่งที่ขาดไม่ได้ เปรียบเสมือนรหัสผ่านเพื่อยืนยันความเป็นเจ้าของบัญชี และเลขที่บัญชี



ระบบจะสร้าง Private key ซึ่งเป็นชุดตัวเลขที่มีความยาวได้ทั้ง 32 และ 64 bytes ตามแต่ละแพลตฟอร์มจะกำหนด โดยที่ Private key นอกจากจะมีไว้สร้าง Public key ที่ใช้ทำงานคู่กันแล้ว มันยังมีเพื่อสร้าง “ลายเซ็นดิจิทัล” (Digital Signature) สำหรับการยืนยันธุรกรรม หรือก็คือการยืนยันความเป็นเจ้าของ Public key ที่เข้าคู่กัน โดยไม่จำเป็นต้องเปิดเผย Private key ซึ่งในการที่จะสร้าง Public key และลายเซ็นดิจิทัลได้นั้น จำเป็นที่จะต้องผ่านการเข้ารหัส Public key (Public-key Cryptography) เสียก่อน โดยก่อนหน้าการอัปเกรด Taproot บิตคอยน์จะใช้กระบวนการเข้ารหัสแบบ Elliptic Curve Digital Signature Algorithm (ECDSA) ที่อาศัย Curve Order แบบ secp256k และ Hash Function ชนิด SHA256 ในการทำงาน



อย่างไรก็ตาม การเข้ารหัสแบบ ECDSA ยังคงมีข้อจำกัดตรงที่มันไม่ได้ถูกออกแบบมาเพื่อเข้ารหัสธุรกรรมที่มีมากกว่า 1 Private key หรือพูดอีกอย่างคือมีมากกว่า 1 ลายเซ็น (Multi-signature; Multisig) กล่าวคือหากจะใช้ ECDSA ในการยืนยันความเป็นเจ้าของธุรกรรมแบบ Multisig มันจะทำการบันทึก Private key และ Public key ของ “ทุกลายเซ็น” ที่ร่วมทำธุรกรรมไว้ในเครือข่าย



ลองนึกภาพว่าหากเราต้องการทำธุรกรรมที่ต้องได้รับการเห็นชอบจากคน 20 คน เครือข่ายจะต้องเก็บข้อมูล Public key 20 ชุด และ Private key อีก 20 ชุด รวมเป็น 40 ชุด ซึ่งแต่ละชุดก็เป็นตัวเลขที่มีความยาวหลาย Bytes ทำให้นอกจากจะเปลืองพื้นที่ในการจัดเก็บข้อมูลบนเครือข่ายแล้ว ค่าธรรมเนียมก็มีราคาแพงอีกด้วย BIP-340 จึงมีเพื่อปรับปรุงข้อจำกัดส่วนนี้ โดยการเพิ่ม Schnorr Signature เข้ามา เพื่อใช้ควบคู่ไปกับ ECDSA



Schnorr Signature คือ วิธีการเข้ารหัส Public key และสร้างลายเซ็นดิจิทัลอีกรูปแบบหนึ่ง ที่มีการใช้โครงสร้างทางคณิตศาสตร์ที่เรียกว่า “Elliptic Curve” เป็นพื้นฐานของระบบลายเซ็นดิจิทัล เช่นเดียวกับ ECDSA ทำให้สามารถใช้เข้ารหัส Private key ที่สร้างจาก ECDSA ได้

 

ทว่า จุดเด่นของ Schnorr Signature คือคุณสมบัติในการรวมกุญแจเข้าด้วยกัน เมื่อมีการเข้ารหัสธุรกรรมแบบ Multisig ระบบจะรวบรวม Public key ของผู้ทำธุรกรรมทุกคนเข้าด้วยกันเป็น 1 ชุด ทำให้ผู้ร่วมธุรกรรมสามารถสร้างลายเซ็นที่ใช้ได้กับ Public key รวมแค่เพียงลายเซ็นเดียว ขั้นตอนนี้ถูกเรียกว่า Key aggregation 



ยกตัวอย่างเช่น ในการทำธุรกรรมที่มี 20 ลายเซ็น จากที่ระบบต้องบันทึกข้อมูลถึง 40 ชุด การใช้ Schnorr Signature จะลดการบันทึกข้อมูลเหล่านั้นให้เหลือเพียง 2 ชุดเท่านั้น

 

ผู้อ่านจะเห็นได้ว่า Schnorr Signature สามารถลดขั้นตอนและระยะเวลาในการยืนยันธุรกรรมแบบหลายลายเซ็นอย่างมีนัยสำคัญ จากที่ต้องตรวจสอบและยืนยันธุรกรรมจำนวนมากก็จะเหลือเพียงแค่ธุรกรรมเดียว ขนาดของธุรกรรมจึงมีขนาดเล็กลง ทำให้นอกจากค่าธรรมเนียมจะถูกลงแล้ว ธุรกรรมที่มีความซับซ้อนก็จะมีขนาดไม่ต่างไปจากธุรกรรมทั่วไป จึงไม่สามารถระบุได้ว่าธุรกรรมไหนใช้คุณสมบัติที่ซับซ้อนได้อีก





Taproot (BIP-341) คืออะไร?



Taproot คือ การปรับปรุงความสามารถในการกำหนดเงื่อนไขบนธุรกรรม ด้วยการเพิ่มโค้ดสำหรับการทำธุรกรรมผ่านบิตคอยน์วิธีใหม่ ที่มีชื่อว่า Pay-to-Taproot (P2TR) ซึ่งเป็นการอัปเกรดจากเวอร์ชันก่อนหน้าเพื่อให้สามารถรองรับ Schnorr Signatures ได้ โดยก่อนหน้าที่จะมีการใช้ P2TR บิตคอยน์ใช้วิธีที่มีชื่อว่า Pay-to-Public-Key-Hash (P2PKH) และ Pay-to-Script-Hash (P2SH) 



P2PKH คือ กลไกที่ใช้ตรวจสอบว่า Public Key Hash หรือก็คือ Bitcoin Address ของคนที่เราส่งบิตคอยน์ไปให้ และ Private key ของคนที่ใช้รับบิตคอยน์เข้าคู่กันจริง



ส่วน P2SH คือ การล็อกเงื่อนไขสำหรับการทำธุรกรรม ว่าธุรกรรมจะสามารถเกิดขึ้นได้ก็ต่อเมื่อเงื่อนไขที่กำหนดไว้ได้รับการเติมเต็มแล้วเท่านั้น เพื่อเป็นการเพิ่มความปลอดภัยให้กับการทำธุรกรรม



ปัญหาคือ P2SH จะอนุญาตให้ทุกคนไม่เพียงแต่เห็นเงื่อนไขที่ได้รับการเติมเต็มแล้วเท่านั้น แต่ยังสามารถเห็นเงื่อนไขทั้งหมดที่สามารถทำให้ธุรกรรมเกิดขึ้นได้จริงอีกด้วย  ทำให้นอกจากจะไม่มีความเป็นส่วนตัวแล้ว ยังใช้พื้นที่ในการเก็บข้อมูลจำนวนมาก เนื่องจากต้องรวมโค้ดเงื่อนไขหลายอันที่ไม่ได้เกี่ยวกับธุรกรรมนั้นเข้าไปด้วย

 

ในการอัปเกรด Taproot จึงมุ่งแก้ปัญหาดังกล่าวด้วยการนำ Merkelized Alternative Script Trees (MAST) มาใช้ โดย MAST คือ การล็อกเงื่อนไขสำหรับการทำธุรกรรมเช่นเดียวกับ P2SH แต่ต่างกันตรงที่ MAST จะไม่เปิดเผยเงื่อนไขอื่นนอกจากเงื่อนไขที่ถูกใช้ในการทำธุรกรรมปัจจุบัน เนื่องจาก MAST ใช้การจัดการข้อมูลที่มีคุณสมบัติพิเศษในการสรุปข้อมูลทั้งหมดเข้าด้วยกัน และเก็บไว้ในบล็อกเดียว เรียกว่า Merkle Tree



ในบริบทที่เรากำลังพูดถึง Merkle Tree จะเป็นการสรุปชุดเงื่อนไขที่ทำให้ธุรกรรมเป็นไปได้ทั้งหมดเข้าด้วยกันผ่าน Hash Function ชนิด SHA-256 ซึ่งคือการย่อข้อมูลให้สั้นลง แต่ยังคงเหลือไว้ซึ่งเอกลักษณ์ของข้อมูลนั้น โดยการสรุปข้อมูลของ Merkle Tree จะเป็นในลักษณะของแผนภูมิต้นไม้ จากกิ่งก้านต้นไม้หลายสาขา โดยที่แต่ละสาขาแทนเงื่อนไขแต่ละอัน จากนั้นแต่ละสาขาก็ค่อย ๆ ถูกสรุปยุบรวมเข้าด้วยกันเป็นชั้น ๆ จาก 8 เงื่อนไข กลายเป็น 8 ค่าแฮช ถูกสรุปรวมเป็น 4 ค่าแฮช เป็น 2 ค่าแฮช จนในที่สุดข้อมูลเงื่อนไขจากทุกกิ่งก้านก็ถูกสรุปเข้าเป็นรากค่าแฮชเพียงหนึ่งเดียวที่ไม่สามารถแกะได้ว่าประกอบไปด้วยเงื่อนไขใดบ้าง เรียกว่า Merkel Root 

ภาพ: River



เมื่อเจ้าของคนเก่าส่งบิตคอยน์มาให้เจ้าของคนใหม่ บิตคอยน์ก็จะถูกล็อกไว้กับเงื่อนไขการทำธุรกรรม ซึ่งก็คือ Merkle Root ในการที่จะนำบิตคอยน์ไปใช้ได้ เจ้าของคนปัจจุบันจะต้องแสดงให้เห็นว่าจะใช้โค้ดเงื่อนไขไหนในการปลดล็อกบิตคอยน์ และจะต้องพิสูจน์ด้วยว่าโค้ดดังกล่าวอยู่ใน Merkle Root ของธุรกรรมก่อนหน้าจริง ในการทำธุรกรรม เจ้าของเงินคนปัจจุบันจึงไม่จำเป็นต้องเปิดเผยทุกเงื่อนไข เปิดแค่เฉพาะอันที่จะใช้เท่านั้น ทำให้ความเป็นส่วนตัวและประสิทธิภาพในการทำธุกรรมเพิ่มขึ้น ในการอัปเกรด Taproot ทางทีมพัฒนาจึงเลือกใช้ MAST แทน P2SH

ทั้งนี้การอัปเกรด Schnorr Signatures (BIP-340) และ Taproot (BIP-341) จะไม่สามารถเกิดขึ้นได้เลย หากไม่มีการอัปเกรดส่วนที่ 3 ที่มีชื่อว่า Tapscript (BIP-342)

Tapscript (BIP-342) คืออะไร?



Tapscript คือ การอัปเกรดภาษาที่ใช้ในการโค้ดเพื่อให้สามารถรองรับการอัปเกรด Schnorr Signature และ Taproot ได้ เนื่องจากภาษาที่ใช้ในการโค้ดบนธุรกรรมของบิตคอยน์ จะเป็นตัวกำหนดว่านโยบายการจ่ายเหรียญบิตคอยน์จะเป็นอย่างไร ซึ่งเมื่อมีการเปลี่ยนนโยบายการจ่ายเหรียญมาเป็นแบบ Taproot ภาษาที่ใช้ในการโค้ดจึงต้องเปลี่ยนแปลงด้วย ซึ่ง Tapscript ก็คือภาษาที่ใช้กำหนดวิธีการใช้จ่ายบิตคอยน์ให้เป็นแบบ Taproot นั่นเอง





สรุป



Taproot คือ การอัปเกรดครั้งใหญ่ในรอบ 4 ปีของบิตคอยน์ นับตั้งแต่การ Soft Fork ครั้งล่าสุดที่เกิดขึ้นในปี พ.ศ. 2560 โดยการอัปเกรด Taproot จะแบ่งออกเป็น 3 การอัปเกรดย่อย ได้แก่ Schnorr Signatures (BIP-340), Taproot (BIP-341), และ Tapscript (BIP-342)



ซึ่งทั้งหมดนี้จะมาช่วยให้บิตคอยน์พัฒนาขึ้นอย่างมีนัยสำคัญ ทั้งในแง่ของความเป็นส่วนตัว การขยายระบบเพื่อรองรับจำนวนธุรกรรมที่เพิ่มขึ้น ความปลอดภัย และอื่น ๆ เพื่อให้บิตคอยน์เหมาะกับทั้งการนำไปใช้งานในชีวิตประจำวัน และสามารถนำไปใช้สร้างบริการทางการเงินอย่าง DeFi ได้ดียิ่งขึ้น





อ้างอิง:

Livemint , CNBC , River  , Decrypt , Coindesk , nicehash , experty , Coindesk , being crypto , medium , bitcoincore , ​​linuxfoundation , linkedin , efinancethai , nuuneoi , dwthai , Academy.Finance , river , kraken

Blockchain
Terms
Security

Latest Articles

DIGITAL TOKEN| Price Today!

Price

This content and activity is arranged under Bitkub Labs Co., Ltd. which is not a company operating under the regulations of the SEC. Cryptocurrency is highly risky; investors may lose all investment money.