Wednesday, February 18, 2026
HomeUncategorizedแบบฝึกหัดของ Satoshi สำหรับผู้อ่าน

แบบฝึกหัดของ Satoshi สำหรับผู้อ่าน


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

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

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

ตัวกรองมีไว้สำหรับสแปม

เอกสารไวท์เปเปอร์ยอมรับว่าการส่งต่อธุรกรรมสาธารณะเป็นรากฐานสำคัญของการต่อต้านการเซ็นเซอร์ของ Bitcoin แต่มีเพียงไม่กี่คำเกี่ยวกับวิธีการทำงาน: “ธุรกรรมใหม่จะถูกถ่ายทอดไปยังโหนดทั้งหมด แต่ละโหนดรวบรวมธุรกรรมใหม่ลงในบล็อก แต่ละโหนดทำงานเพื่อค้นหาการพิสูจน์การทำงานที่ยากลำบากสำหรับบล็อกของตน”1

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

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

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

ขั้นตอนการตรวจสอบความถูกต้อง เช่น การตรวจสอบลายเซ็น และการจัดการการพึ่งพา mempool อาจมีราคาแพงในการคำนวณ ธุรกรรมที่มีลายเซ็นแบบเดิม (pre-segwit) จำนวนมากอาจใช้เวลาไม่กี่นาทีในการตรวจสอบความถูกต้องของฮาร์ดแวร์บางตัว2ดังนั้นโหนดส่วนใหญ่จะกรองธุรกรรมขนาดใหญ่ออกไป การใช้ทรัพยากรไม่เพียงแต่เฉพาะในโหนดเท่านั้น ธุรกรรมที่ยอมรับมักจะถูกนินทาไปยังเพียร์อื่นๆ โดยใช้แบนด์วิธเป็นสัดส่วนกับจำนวนโหนดบนเครือข่าย

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

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

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

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

ในอดีต โหนดอาศัยการศึกษาพฤติกรรมและขีดจำกัดการพึ่งพา ซึ่งทำให้ผู้ใช้เสียดสีและเปิดเวกเตอร์การปักหมุดใหม่ Mempool ที่ติดตามคลัสเตอร์สามารถประเมินความเข้ากันได้ของสิ่งจูงใจได้แม่นยำยิ่งขึ้น แต่ยังคงต้องจำกัดการพึ่งพา Mempool ข้อจำกัดประเภทนี้จะสร้างเวกเตอร์การปักหมุดสำหรับธุรกรรมที่เกี่ยวข้องกับหลายฝ่ายที่ไม่ไว้วางใจซึ่งกันและกัน ผู้โจมตีสามารถป้องกันไม่ให้ผู้ร่วมทำธุรกรรมใช้ CPFP โดยการผูกขาดขีดจำกัด

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

ข้อตกลงกับ Mevil

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

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

การปักหมุดเป็นเรื่องของความพยายามในการวิจัยและพัฒนาเป็นเวลาหลายปี ส่งผลให้เกิดรูปแบบธุรกรรมที่จำกัดเชิงโทโพโลยีจนกระทั่งยืนยัน (TRUC)4ประเภทเอาต์พุต Pay to Anchor (P2A)5,นโยบายฝุ่นชั่วคราว6,คลัสเตอร์เมมพูล7การส่งต่อพัสดุมีจำนวนจำกัด8และการปรับปรุงความน่าเชื่อถือของทรานแซคชันรีเลย์ต่างๆ คุณสมบัติเหล่านี้ได้รับการออกแบบมาเพื่อให้การรับประกันที่แข็งแกร่งยิ่งขึ้นสำหรับการแพร่กระจายการแทนที่ค่าธรรมเนียมที่สูงขึ้นของธุรกรรมที่ใช้ร่วมกัน

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

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

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

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

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

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

รับสำเนา The Core Challenge ของคุณวันนี้!

อย่าพลาดโอกาสในการเป็นเจ้าของ ประเด็นหลัก — นำเสนอบทความที่เขียนโดย Core Builders หลายคนที่อธิบายโครงการที่พวกเขาทำด้วยตัวเอง!

งานชิ้นนี้เป็นจดหมายจากบรรณาธิการที่นำเสนอล่าสุด พิมพ์ นิตยสาร Bitcoin ฉบับ The Core Challenge เรากำลังแชร์แนวคิดนี้ที่นี่เพื่อเป็นการดูแนวคิดต่างๆ ที่ได้รับการสำรวจในฉบับเต็มตั้งแต่เนิ่นๆ

(1) https://bitcoin.org/bitcoin.pdf

(2) https://delvingbitcoin.org/t/great-consensus-cleanup-revival/710

(3) https://delvingbitcoin.org/t/mempool-incentive-compatibility/553

(4) https://github.com/bitcoin/bips/blob/grasp/bip-0431.mediawiki

(5) https://github.com/bitcoin/bitcoin/pull/30352

(6) https://bitcoinops.org/en/subjects/ephemeral-anchors/

(7) https://delvingbitcoin.org/t/an-overview-of-the-cluster-mempool-proposal/393?u=glozow

(8) https://bitcoinops.org/en/subjects/package-relay/

(9) https://bluematt.bitcoin.ninja/2024/04/16/stop-calling-it-mev/

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

ความเห็นล่าสุด