ข้ามไปยังเนื้อหา

กระเป๋าเงินแบบหลายลายเซ็น

เรียนรู้ว่ากระเป๋าเงิน Multisig แบบ M-of-N กระจายอำนาจธุรกรรมอย่างไร Multisig แบบสคริปต์และแบบสัญญาอัจฉริยะต่างกันอย่างไร และยังมีความเสี่ยงด้านผู้ลงนาม การดำเนินการ โมดูล และการกู้คืนใดบ้าง

อัปเดต

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

คำตอบโดยตรง

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

Multisig แบบดั้งเดิมไม่ได้แบ่งกุญแจส่วนตัวหนึ่งดอกให้ผู้ลงนาม แต่ละคนมักควบคุมกุญแจหรือบัญชีแยกกัน แล้วสคริปต์หรือสัญญาจะตรวจสอบการอนุมัติหลายรายการ ส่วนระบบลายเซ็นแบบเกณฑ์หรือ MPC สามารถสร้างลายเซ็นหนึ่งรายการจากส่วนแบ่งกุญแจที่กระจายกัน โดยมีรูปแบบ on-chain และแบบจำลองความไว้วางใจต่างกัน

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

เกณฑ์ M-of-N แสดงขอบเขตทั้งด้านการถูกเจาะระบบและความพร้อมใช้งาน ระบบ 3-of-5 ยังทำงานได้เมื่ออำนาจสองรายการไม่พร้อมใช้งาน แต่อำนาจที่ถูกต้องสามรายการใดก็ได้สามารถอนุมัติการใช้จ่าย ที่อยู่ต่างกันไม่ได้หมายถึงอิสระ หากบุคคล ผู้ดูแลอุปกรณ์ บัญชีคลาวด์ สถานที่สำรองข้อมูล หรือผู้รับฝากรายเดียวควบคุมได้เพียงพอ

วิธีการทำงาน

  1. ตรวจสอบอำนาจก่อนเสนอธุรกรรม ยืนยันเครือข่ายและบัญชีหรือเอาต์พุต จากนั้นตรวจสคริปต์หรือสัญญาที่ติดตั้ง ชุดเจ้าของ เกณฑ์ กฎ nonce หรือลำดับ และทุกโมดูล guard, fallback handler, เส้นทางกู้คืน และสิทธิ์อัปเกรดที่ดำเนินการหรือบล็อกธุรกรรมได้
  2. สร้างและถอดรหัสคำขอที่แน่นอน ตรวจปลายทาง สินทรัพย์ มูลค่า calldata หรือสคริปต์ ประเภทการดำเนินการ nonce ค่าธรรมเนียม และเนื้อหาในชุด หากมีเครื่องมือที่เชื่อถือได้ให้จำลองการเรียกสัญญาที่ซับซ้อน และให้ผู้ลงนามตรวจสิ่งที่ลายเซ็นอนุญาตจริง ไม่ใช่เพียงป้ายบนอินเทอร์เฟซ
  3. รวบรวมการอนุมัติในโดเมนควบคุมอิสระ ผู้ลงนามตรวจ digest ธุรกรรมเดียวกันบนอุปกรณ์ที่เชื่อถือได้และสื่อสารผ่านช่องทางที่ยืนยันตัวตน กระบวนการที่ถูกต้องจะไม่ขอ Seed Phrase หรือกุญแจส่วนตัว
  4. ดำเนินการตามคำขอที่อนุมัติ การถึงเกณฑ์อาจเพียงทำให้ข้อเสนอดำเนินการได้ ผู้ดำเนินการยังต้องเผยแพร่หรือส่งธุรกรรมและอาจต้องจ่ายค่าธรรมเนียม Nonce ที่ล้าสมัย ข้อเสนอที่แข่งขันกัน สถานะสัญญาที่เปลี่ยน ค่าธรรมเนียมไม่พอ หรือการเรียกที่ล้มเหลวอาจขัดขวางการดำเนินการ
  5. ตรวจสอบความสำเร็จจากสถานะบนเชน รอนโยบายการยืนยันที่กำหนด ตรวจ payload และผลลัพธ์ที่ดำเนินการ และยืนยันยอดคงเหลือ การตั้งค่าเจ้าของ และเหตุการณ์ตามความเหมาะสม ประเมินข้อเสนอที่ค้างใหม่หลังเปลี่ยนเจ้าของ เกณฑ์ โมดูล หรือนโยบาย

ตัวอย่าง

คลังหนึ่งใช้บัญชีอัจฉริยะ Multisig แบบ 3-of-5 โดยเจ้าของ A, B, C, D และ E อยู่ในโดเมนควบคุมแยกกัน สำหรับการจ่าย 10,000 USDC ข้อเสนอจะบันทึกเครือข่าย บัญชี ผู้รับ สัญญาโทเคน จำนวน calldata, nonce และนโยบายค่าธรรมเนียมที่ถูกต้อง A, C และ E ถอดรหัสคำขอเดียวกันอย่างอิสระก่อนอนุมัติ

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

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

ความเสี่ยงและการควบคุม

  • การดูแลที่มีความสัมพันธ์กัน กุญแจหลายดอกอาจล้มเหลวพร้อมกันเมื่อใช้บุคคล อุปกรณ์ ตู้นิรภัยรหัสผ่าน ผู้ดูแล สถานที่ ผู้ให้บริการ หรือความลับกู้คืนร่วมกัน ควรทำแผนที่โดเมนควบคุมและทดสอบกู้คืนโดยไม่รวมอำนาจพอถึงเกณฑ์ไว้ที่เดียว
  • payload ที่เป็นอันตรายหรือเข้าใจผิด องค์ประชุมที่ถูกต้องอาจอนุมัติที่อยู่ผู้โจมตี สิทธิ์ใช้โทเคนไม่จำกัด delegate call หรือชุดคำสั่งอันตรายอย่างถูกต้อง ควรถอดรหัสและตรวจคำขอทั้งหมดอย่างอิสระ และใช้การจำลองเป็นหลักฐานประกอบ ไม่ใช่การรับประกัน
  • การสูญเสียและความล่าช้าขององค์ประชุม กุญแจหาย คนไม่พร้อม ข้อพิพาท เครือข่ายล่ม หรือเกณฑ์สูงเกินไปอาจขวางการดำเนินการเร่งด่วนหรือล็อกสินทรัพย์ถาวร ควรมีผู้ติดต่อที่ยืนยันตัวตน แผนสืบทอดเป็นลายลักษณ์อักษร ข้อมูลสำรองที่ทดสอบแล้ว และการออกแบบกู้คืนชัดเจน
  • อำนาจที่ซ่อนหรือข้ามเกณฑ์ โมดูล guards, fallback handlers, session keys, relayers, สัญญากู้คืน และผู้ดูแลอัปเกรดอาจข้ามเกณฑ์เจ้าของปกติหรือขัดขวางการดำเนินการ ควรทำบัญชีเส้นทางเหล่านี้และถือว่าการเปลี่ยนสิทธิ์ทุกครั้งเป็นธุรกรรมความเสี่ยงสูง
  • ความเสี่ยงของสัญญาและการติดตั้ง บั๊ก การเริ่มต้นไม่ปลอดภัย ข้อผิดพลาดของพร็อกซีหรือการอัปเกรด และการติดตั้งผิดเครือข่ายอาจทำลายนโยบายที่ตั้งใจ ควรตรวจที่อยู่และโค้ด ประเมินผลตรวจสอบตามบริบท ลดส่วนขยาย และเฝ้าดูการตั้งค่า
  • การแข่งขันหลังถูกเจาะและการยกเลิกสิทธิ์ไม่ครบ ผู้ลงนามที่ถูกเจาะอาจลงมือก่อนยืนยันการนำออก และการนำเจ้าของออกไม่ยกเลิกการกระทำหรือสิทธิ์ภายนอก ควรใช้แผนรับเหตุ เฝ้าดูสถานะต่อเนื่อง และถอนสิทธิ์องค์กรกับสิทธิ์ on-chain แยกกัน

ความเข้าใจผิดที่พบบ่อย

  • “ผู้ลงนามมากขึ้นปลอดภัยขึ้นเสมอ” ชุดที่ใหญ่ขึ้นอาจลดการกระจุกตัว แต่เพิ่มความเสี่ยงด้านการประสานงาน ฟิชชิง และความพร้อมใช้งาน ควรเลือกเจ้าของและเกณฑ์จากแบบจำลองภัยคุกคามและความสามารถในการดำเนินงาน
  • “กระเป๋า 3-of-5 ถูกควบคุมโดยคนอิสระห้าคน” เชนนับกุญแจหรือบัญชีเจ้าของที่ถูกต้อง ไม่ได้นับคน อุปกรณ์ ข้อมูลสำรอง ผู้ดูแล หรือผู้รับฝากร่วมกันอาจทำให้เจ้าของที่ดูแยกกันอยู่ในโดเมนเดียว
  • “Multisig เหมือนการยืนยันตัวตนสองปัจจัยหรือ MPC” ทั้งหมดกระจายการควบคุมได้ แต่ข้อมูลรับรอง เส้นทางตรวจสอบ หลักฐาน on-chain และสมมติฐานการกู้คืนต่างกัน
  • “เมื่อถึงเกณฑ์อนุมัติ การโอนเสร็จแล้ว” การอนุมัติ ความพร้อมดำเนินการ การส่ง การรวมในบล็อก และการยืนยันเป็นสถานะต่างกัน คำขออาจค้างหรือล้มเหลว
  • “Multisig ป้องกันการขโมยและการโจมตีสัญญา” ระบบจำกัดเฉพาะเส้นทางอำนาจที่เข้ารหัสในการนำไปใช้ องค์ประชุมที่ถูกต้อง โมดูลอภิสิทธิ์ สัญญาที่มีช่องโหว่ หรือเส้นทางกู้คืนไม่ปลอดภัยยังทำให้สูญเสียอย่างย้อนกลับไม่ได้

หัวข้อที่เกี่ยวข้อง

แหล่งที่มา

การนำทาง

ค้นหาในวิกิ...