GaiaEx AcademyGaiaEx Academy
กระเป๋า MPC คืออะไร? ความปลอดภัยแบบ Multi-Party Computation
ผู้เริ่มต้นบล็อกเชน6 min read

กระเป๋า MPC คืออะไร? ความปลอดภัยแบบ Multi-Party Computation

แบ่ง private key เพื่อไม่ให้บุคคลใดคนเดียวถือกุญแจหลัก

แชร์โพสต์

ปัญหาของ Private Key

กระเป๋าเงินคริปโตทุกอันสรุปลงมาเป็นความลับเดียว: private key ใครถือมันได้ ก็ควบคุมเงินได้ จบ

การออกแบบนั้นสวยงามในทางทฤษฎี แต่ในความเป็นจริง มันสร้างหายนะแบบสโลว์โมชัน Chainalysis ประมาณว่า ประมาณ 20% ของ Bitcoin ที่ขุดขึ้นมาทั้งหมด — มากกว่า $140 billion ที่ราคาปัจจุบัน — อยู่ในกระเป๋าเงินที่เจ้าของสูญเสียการเข้าถึง private key ไปแล้ว Stefan Thomas โปรแกรมเมอร์ในซานฟรานซิสโก เหลือความพยายามเดารหัสผ่านอีกสองครั้งบนไดรฟ์ IronKey ที่มี 7,002 BTC ของเขาอยู่ หลังจากนั้น ไดรฟ์จะเข้ารหัสตัวเองอย่างถาวร เขาไม่ได้ลองเดาทั้งสองครั้งนั้นมาหลายปีแล้ว

ดังนั้นคุณก็สำรอง key ด้วยตัวเอง คุณเขียนซีดเฟรส 24 คำลงบนแผ่นโลหะ ล็อกไว้ในเซฟ อาจแยกเก็บไว้หลายที่ คุณกลายเป็นธนาคารของตัวเอง — และเป็นจุดล้มเหลวเดียวของตัวเองด้วย ไฟไหม้บ้าน ลืมรหัสเซฟ ถ่ายรูปเผลอแล้วอัปโหลดขึ้น iCloud แค่นี้ก็จบเห่

ทางเลือกอื่นล่ะ? ยก key ให้ผู้ดูแล ตลาดแลกเปลี่ยน วิธีนี้ใช้ได้จนกระทั่ง FTX ล้มลงในเดือนพฤศจิกายน 2022 ทำให้เงินฝากลูกค้า $8 billion หายไปในชั่วข้ามคืน ก่อนหน้านั้นคือ Mt. Gox แล้วก็ QuadrigaCX รูปแบบนี้เกิดขึ้นซ้ำ ๆ เพราะสถาปัตยกรรมมันเรียกร้องแบบนี้: key เดียว ที่เดียว จุดพลาดจุดเดียว

เป็นเวลาสิบปีที่นั่นคือสองทางเลือกเดียวที่มี — จัดการความเสี่ยงเอง หรือส่งต่อให้คนที่คุณต้องเชื่อใจ MPC ทำลายตัวเลือกสองทางนั้น

MPC ทำอะไรกันแน่

Multi-Party Computation เป็นสาขาหนึ่งของวิทยาการเข้ารหัสที่พัฒนาขึ้นในทศวรรษ 1980 โดย Andrew Yao แห่ง Stanford แนวคิดหลัก: หลายฝ่ายสามารถคำนวณฟังก์ชันร่วมกันโดยใช้อินพุตส่วนตัวของตัวเอง โดยไม่ต้องเปิดเผยอินพุตเหล่านั้นให้กันเลย เมื่อนำมาใช้กับกระเป๋าเงิน มันหมายความว่า private key ถูกแบ่งออกเป็นชิ้นที่เข้ารหัสไว้ — share — กระจายไปทั่วอุปกรณ์และเซิร์ฟเวอร์ที่แยกจากกัน key ที่สมบูรณ์ไม่ถูกประกอบขึ้นที่ไหนเลย ไม่ใช่บนโทรศัพท์ของคุณ ไม่ใช่บนเซิร์ฟเวอร์ ไม่ใช่ในหน่วยความจำ ไม่มีที่ไหนเลย

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

สิ่งนี้เรียกว่า threshold signing การตั้งค่าแบบ 2-of-3 หมายความว่ามี share อยู่สามชิ้น และสองใน้สามสามารถร่วมมือกันเพื่ออนุมัติธุรกรรมได้ share หนึ่งอยู่บนโทรศัพท์ของคุณ อีกหนึ่งอยู่บนเซิร์ฟเวอร์ของแพลตฟอร์ม และอีกหนึ่งอยู่ในแบ็คอัพออฟไลน์ที่เข้ารหัสไว้ ถ้าโทรศัพท์ของคุณถูกขโมย ผู้โจมตีจะมี share เพียงชิ้นเดียว — ซึ่งไม่มีประโยชน์ใด ๆ ในทางคณิตศาสตร์เมื่อแยกออกมา share ที่เหลืออีกสองชิ้นสามารถสร้าง share สำหรับอุปกรณ์ใหม่ได้ โดยไม่เปลี่ยนที่อยู่กระเป๋าของคุณหรือต้องเคลื่อนย้ายเงิน

การคำนวณเกิดขึ้นในหน่วยมิลลิวินาที คุณกด "ยืนยัน" share ต่าง ๆ ทำการคำนวณแบบกระจายของตัวเอง แล้วธุรกรรมมาตรฐานก็ขึ้นบล็อกเชน ไม่มีความล่าช้าที่มองเห็นได้ ไม่มีลายเซ็นเพิ่มเติมบนเชน ไม่มีลายนิ้วมือที่แยกมันออกจากกระเป๋าเงินอื่น ๆ ได้

MPC Key Sharding — 2-of-3 Threshold Private Key never assembled in full Device Share your phone or laptop Server Share platform infrastructure Recovery Share encrypted offline backup Any 2 of 3 shares can sign — no single share is useful alone Share A computes partial result sig_partial_1 = f(share_a, tx) Share B computes partial result sig_partial_2 = f(share_b, tx) Valid Signature standard ECDSA output
private key ถูกแบ่งเป็นสามชิ้นแบบเข้ารหัส สองในสามชิ้นร่วมมือกันสร้างลายเซ็นธุรกรรมที่ถูกต้อง — บล็อกเชนเห็นเป็นกระเป๋าเงิน key เดียวมาตรฐานทั่วไป

ปัญหา Single Key ในรูปแบบภาพ

วิธีที่ง่ายที่สุดในการเข้าใจว่า MPC เปลี่ยนแปลงอะไร คือการวางมันเทียบกับกระเป๋าเงินแบบดั้งเดิม

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

กระเป๋าเงิน MPC กระจายความเสี่ยงนั้นไปทั่วระบบที่เป็นอิสระจากกันหลายระบบ share หนึ่งถูกเจาะ? ไม่มีประโยชน์โดยไม่มีอันอื่น share หนึ่งถูกทำลาย? share ที่เหลือสร้างตัวแทนขึ้นใหม่ ที่อยู่กระเป๋าเงินยังเหมือนเดิม เงินไม่เคลื่อนย้าย และ share เก่าถูกทำให้เป็นโมฆะทางวิทยาการเข้ารหัส นี่คือสถาปัตยกรรมที่แตกต่างกันโดยพื้นฐาน — สร้างขึ้นบนสมมติฐานที่ว่า ส่วนประกอบแต่ละส่วนจะล้มเหลวในสักวันหนึ่ง แทนที่จะหวังว่าจะไม่เกิดขึ้น

Traditional Wallet MPC Wallet Private Key one copy, one location Key stolen = total loss Key lost = funds unrecoverable No rotation without new address single point of failure Share 1 device Share 2 server Share 3 backup 1 share stolen = attacker gets nothing 1 share lost = recoverable from others Shares refresh, address stays the same no single point of failure
กระเป๋าเงินแบบดั้งเดิมรวมความเสี่ยงทั้งหมดไว้ใน key เดียว MPC กระจายมันไปทั่ว share ที่เป็นอิสระจากกัน — การเจาะเพียงชิ้นเดียวไม่ได้ผลอะไร

MPC ไม่ใช่ Multisig

ถ้าคุณเคยใช้กระเป๋าเงินแบบ multisig MPC อาจฟังดูคุ้นเคย ทั้งสองอย่างขจัดจุดล้มเหลวเดียวได้เหมือนกัน แต่กลไกแตกต่างกันโดยสิ้นเชิง และความแตกต่างนั้นสำคัญกว่าที่คุณคาดไว้

Multisig ทำงานที่ระดับบล็อกเชน กระเป๋าเงิน multisig แบบ 2-of-3 ถือ private key ที่เป็นอิสระจากกันสามตัว เมื่อคุณเซ็นธุรกรรม ผู้ถือ key สองคนจะแต่ละคนสร้างลายเซ็นแบบเต็มรูปแบบ และทั้งสองลายเซ็นไปขึ้นบนเชน บล็อกเชนตรวจสอบว่าถึงเกณฑ์ขั้นต่ำหรือไม่ ทุกคน — นักขุด บล็อกเอ็กซ์พลอเรอร์ ใครก็ตามที่มองดูอยู่ — เห็นได้ว่านี่คือการตั้งค่า multisig

MPC ทำงานอยู่ต่ำกว่าระดับบล็อกเชน share สามชิ้นของ key เดียวกันร่วมมือกันแบบออฟเชนเพื่อสร้างลายเซ็นมาตรฐานหนึ่งรายการ บล็อกเชนไม่รู้เลยว่ามี MPC เข้ามาเกี่ยวข้อง มันเห็นแค่ธุรกรรมปกติจากที่อยู่ปกติ

ความแตกต่างนี้มีผลที่แท้จริง การรองรับ multisig แตกต่างกันอย่างมากในแต่ละเชน — การใช้งานของ Bitcoin แตกต่างจากของ Ethereum, Solana จัดการต่างออกไปอีกแบบ และ L2 rollup หลายตัวมีการรองรับแบบดั้งเดิมที่จำกัดหรือไม่มีเลย MPC สร้างลายเซ็นแบบ ECDSA หรือ EdDSA มาตรฐาน จึงใช้ได้กับทุกเชนโดยไม่ต้องปรับเปลี่ยน ค่า Gas ก็แตกต่างกันด้วย: ธุรกรรม multisig พกลายเซ็นหลายรายการ หมายถึง calldata ที่ใหญ่ขึ้นและค่าธรรมเนียมที่สูงขึ้นบน Ethereum (บางครั้งสูงถึง 2–3 เท่า) ธุรกรรม MPC มีขนาดเหมือนกับธุรกรรม key เดียวทั่วไปทุกประการ

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

แล้วก็เรื่องการหมุน key การเปลี่ยนผู้เซ็นในการตั้งค่า multisig ส่วนใหญ่ต้องปรับใช้สัญญาใหม่หรือย้ายไปที่อยู่ใหม่ — กระบวนการที่ก่อกวนและกินค่าธรรมเนียมมาก share ของ MPC สามารถรีเฟรชได้: สร้าง share ใหม่จากชุดปัจจุบัน share เก่าถูกทำให้เป็นโมฆะ ทั้งหมดนี้โดยไม่เปลี่ยนที่อยู่กระเป๋าเงินหรือแตะบล็อกเชนเลย พนักงานลาออกจากบริษัท? หมุน share แล้วเดินหน้าต่อ ไม่ต้องย้าย ไม่มีเวลาหยุดทำงาน

ใครใช้สิ่งนี้จริง ๆ

Fireblocks คือชื่อที่ถูกพูดถึงเป็นอันดับแรก โครงสร้างพื้นฐาน MPC ของพวกเขาประมวลผลปริมาณการโยกเงินสะสมไปแล้วมากกว่า $6 trillion ข้ามลูกค้าสถาบันมากกว่า 1,800 ราย — ธนาคารอย่าง BNY Mellon และ BNP Paribas เฮดจ์ฟันด์ ผู้ประมวลผลการจ่ายเงิน และตลาดแลกเปลี่ยน เมื่อสถาบันเหล่านั้นโยกเงินคริปโต มันคือ MPC threshold signing ที่อนุมัติแต่ละธุรกรรม ไม่ใช่คนคนเดียวที่มีกระเป๋าฮาร์ดแวร์ล็อกอยู่ในลิ้นชัก

ในฝั่งผู้บริโภค Zengo พิสูจน์แล้วว่า MPC ไม่จำเป็นต้องรู้สึกซับซ้อน กระเป๋าเงินมือถือของพวกเขาใช้สคีม MPC แบบ 2-of-2 — share หนึ่งอยู่บนอุปกรณ์ อีกหนึ่งอยู่บนเซิร์ฟเวอร์ของ Zengo — และผู้ใช้ไม่ต้องเจอกับซีดเฟรสเลย ไม่มี 24 คำที่ต้องเขียนจดไว้ ไม่มีอุปกรณ์ฮาร์ดแวร์ที่ต้องซื้อ การยืนยันตัวตนด้วยไบโอเมตริก แอปที่ดูเหมือนแอปทั่วไป และชุดกู้คืนที่หนุนหลังด้วยการทำแผนที่ใบหน้า มีผู้ใช้มากกว่าหนึ่งล้านคนตั้งแต่ปี 2019 และไม่มีบัญชีแม้แต่บัญชีเดียวที่ถูกแฮกหรือถูกอายัด

เทรนด์ในระดับสถาบันชันมาก แบบสำรวจอุตสาหกรรมของ Fireblocks ในปี 2024 พบว่า 67% ของบริษัทคริปโตระดับสถาบัน ได้นำมาใช้หรือกำลังประเมินการดูแลสินทรัพย์ที่อิงกับ MPC อย่างจริงจัง เพิ่มขึ้นจาก 38% เมื่อเพียงสองปีก่อน ข้อกำหนดด้านประกันภัยและหน้าที่ในฐานะผู้ดูแลผลประโยชน์เป็นตัวขับเคลื่อนการเปลี่ยนแปลงนี้ส่วนใหญ่ — โมเดล single-key ไม่ใช่ตัวเลือกที่เป็นไปได้เลยสำหรับใครก็ตามที่บริหารเงินของคนอื่นภายใต้การตรวจสอบของหน่วยงานกำกับดูแล

โครงสร้างพื้นฐานข้ามเชนก็พึ่งพา MPC อย่างมากด้วย บริดจ์อย่าง Wormhole และโปรโตคอลอย่าง Axelar ใช้เครือข่าย validator ที่ได้รับการป้องกันด้วย MPC เพื่ออนุมัติการโยกสินทรัพย์ระหว่างเชน เมื่อเงินหลายร้อยล้านดอลลาร์เคลื่อนจาก Ethereum ไปยัง L2 มันคือ threshold signing แบบกระจาย — ไม่ใช่ private key ของ validator ตัวใดตัวหนึ่ง — ที่อนุมัติการมินต์ที่อีกฝั่งหนึ่ง

GaiaEx นำ MPC มาใช้อย่างไร

GaiaEx สร้าง MPC เข้าไปในสถาปัตยกรรมตั้งแต่พื้นฐาน แทนที่จะติดตั้งเพิ่มเข้าไปในโมเดลการดูแลแบบดั้งเดิมหลังเปิดตัว

การสร้างบัญชีจะกระตุ้นการสร้าง key และการแบ่ง share ทันที share หนึ่งตกอยู่บนอุปกรณ์ของคุณ; ส่วนที่เหลือกระจายไปทั่วโครงสร้างพื้นฐานที่แยกกันทางภูมิศาสตร์ของ GaiaEx ไม่มีจุดใดเลยที่เซิร์ฟเวอร์เดียว — หรือ GaiaEx ในฐานะบริษัท — จะมี share มากพอที่จะสร้าง key ของคุณขึ้นใหม่หรือโยกเงินของคุณได้ นั่นไม่ใช่การตัดสินใจเชิงนโยบาย มันคือข้อจำกัดทางคณิตศาสตร์

ในช่วงการเทรด การคำนวณ threshold signing รันภายในเวลาไม่ถึง 200 มิลลิวินาที คุณยืนยันคำสั่งหรือการถอนเงิน แล้ว share ที่เกี่ยวข้องจะร่วมมือกันสร้างธุรกรรมบล็อกเชนมาตรฐาน เลเยอร์ MPC มองไม่เห็น — ไม่มีขั้นตอนยืนยันเพิ่มเติม ไม่มีความล่าช้าที่สัมผัสได้ ไม่มีรอยที่บนเชนที่บอกว่าการเซ็นแบบกระจายเกิดขึ้น

การกู้คืนอุปกรณ์ที่หายไปทำงานได้โดยไม่ต้องใช้ซีดเฟรส share ที่เหลือจะยืนยันตัวตนของคุณผ่านโปรโตคอลการกู้คืนของ GaiaEx สร้าง share สำหรับอุปกรณ์ใหม่ และทำให้ share เก่าเป็นโมฆะ ที่อยู่กระเป๋าเงินของคุณยังเหมือนเดิม เงินไม่เคลื่อนย้าย กระบวนการทั้งหมดใช้เวลาไม่กี่นาที ไม่ใช่หลายชั่วโมงที่วิตกกังวลพยายามจดจำว่าคุณเขียน 24 คำนั้นไว้ที่ไหน

สิ่งนี้หมายความว่าอย่างไรในทางปฏิบัติ: GaiaEx ส่งมอบการันตีของ self-custody — key ของคุณ เหรียญของคุณ — โดยไม่ต้องให้คุณกลายเป็นผู้เชี่ยวชาญด้านวิทยาการเข้ารหัส การเซ็นแบบกระจายรันอยู่เบื้องหลังในขณะที่คุณเทรด สิ่งที่คุณได้คือตลาดแลกเปลี่ยนที่ไม่มีการเจาะระบบครั้งเดียว ไม่มีคนในที่ทุจริต และไม่มีอุปกรณ์ที่หายไปตัวใดที่สามารถทำให้สินทรัพย์ของคุณเสียหายได้ ความปลอดภัยของ cold storage ความเร็วของ hot wallet และความเรียบง่ายจากการไม่ต้องคิดเรื่องการจัดการ key เลย