บนพื้นผิว MPC มีความยืดหยุ่นและมีประสิทธิภาพ อย่างไรก็ตาม จากการวิจัยเชิงลึกของเรา เราพบช่องโหว่ด้านความปลอดภัยและเวกเตอร์การโจมตีที่มีอยู่ใน MPC และเราไม่สามารถปฏิเสธการมีอยู่ของปัญหาเหล่านี้ได้
ชื่อเดิม: " ความเสี่ยงของ MPC และการเปลี่ยนไปใช้ Smart ContractWallets "
เขียนโดย : สุคนธ์ อัสรานี
เรียบเรียง : มข
การโฮสต์ด้วยตนเองยังไม่น่าพอใจในขณะนี้ โซลูชันเริ่มต้น เช่น บัญชีแยกประเภท Metamask และบัญชีที่เป็นเจ้าของภายนอก (EOAs) อื่นๆ นำเสนอปัญหาที่แท้จริงสำหรับผู้ใช้ crypto-native
ในฐานะผู้ใช้ คุณต้อง:
1. ค้นหาวิธีปกป้องวลีเริ่มต้นของคุณ หากผู้โจมตีได้รับวลีเริ่มต้น 24 คำของคุณ พวกเขาสามารถขโมยทรัพย์สินทั้งหมดของคุณได้
2. หลีกเลี่ยงข้อผิดพลาดเมื่อซื้อขาย การลงนามในธุรกรรมที่เป็นอันตรายหรือส่งทรัพย์สินไปยังที่อยู่ผิดเป็นเรื่องปกติเกินไป
3. สร้างแผนการกู้คืนและสืบทอดแบบกำหนดเองในกรณีที่คุณหรือญาติของคุณสูญเสียการเข้าถึงวลีเริ่มต้นของคุณ
การคำนวณหลายฝ่าย (MPC) และกระเป๋าเงินสัญญาอัจฉริยะเป็นสองโซลูชันที่สามารถแก้ปัญหาเหล่านี้ได้ พวกเขาอนุญาตให้ผู้ให้บริการกระเป๋าเงินสร้างคุณสมบัติต่างๆ เช่น การกู้คืนทางสังคม ขีดจำกัดการทำธุรกรรม การรับรองความถูกต้องด้วยสองปัจจัย ฯลฯ นอกเหนือจาก EOA ที่ Waymont เริ่มแรกเราใช้ MPC บนพื้นผิว มันดูยืดหยุ่นและมีประสิทธิภาพ อย่างไรก็ตาม เมื่อเราเจาะลึกลงไป เราพบช่องโหว่ด้านความปลอดภัยและเวกเตอร์การโจมตีที่มีอยู่ใน MPC และเราไม่สามารถปฏิเสธการมีอยู่ของปัญหาเหล่านี้ได้
ดังนั้น ในที่สุดเราก็ตัดสินใจโอนโครงสร้างพื้นฐานไปยังสัญญาอัจฉริยะของ Safe ซึ่งปัจจุบันมีทรัพย์สินที่ปลอดภัยมากกว่า 100 พันล้านดอลลาร์สหรัฐ บทความนี้จะกล่าวถึงรายละเอียด: 1) วิธีการทำงานของ MPC wallets; 2) ปัญหาของ MPC ที่เราพบ; 3) ทำไมเราจึงเปลี่ยนไปใช้สัญญาอัจฉริยะ
1) หลักการทำงานของ MPC wallet
ในระดับสูง กระเป๋าเงิน MPC จะสร้างคีย์ส่วนตัวที่แบ่งไว้ล่วงหน้าเป็นการแชร์คีย์และแจกจ่ายให้กับฝ่ายต่างๆ การแชร์คีย์เหล่านี้สามารถเซ็นธุรกรรมได้อย่างอิสระ และลายเซ็นออฟไลน์ของการแชร์คีย์แต่ละรายการสามารถรวมกันเป็นลายเซ็น Ethereum ที่ถูกต้องได้
รูปแบบ MPC โดยทั่วไปจะคล้ายกัน แต่บุคคลที่ถือหุ้นหลักอาจแตกต่างกัน
MPC แบบรวมศูนย์: การแบ่งปันหลักทั้งหมดถูกควบคุมโดยหน่วยงานเดียว (เช่น Coinbase) แต่จัดการในสภาพแวดล้อมคลาวด์ที่แยกจากกันและปลอดภัย วิธีการนี้มักใช้โดยผู้ให้บริการโฮสติ้งระดับสถาบันเพื่อประสิทธิภาพการดำเนินงาน แต่อาจทำให้สินทรัพย์เสี่ยงต่อการถูกโจมตีจากวงในและเกิดความล้มเหลวเพียงจุดเดียว สิ่งนี้อาจกำหนดให้ผู้ให้บริการต้องลงทะเบียนเป็นผู้ดูแลตามกฎหมาย
MPC แบบไฮบริด: การแชร์คีย์จะถูกแจกจ่ายระหว่างผู้ใช้ ผู้ให้บริการกระเป๋าเงิน และบุคคลที่สาม ผู้ให้บริการอย่าง Fireblocks และ ZenGo ใช้วิธีนี้เพื่อที่คุณจะได้ไม่ต้องไว้วางใจผู้ให้บริการแบบรวมศูนย์เพียงรายเดียวในการถือหุ้นหลักทั้งหมด แม้ว่าสิ่งนี้จะมอบความปลอดภัยที่มากกว่า แต่ก็ยังต้องการฝ่ายส่วนกลางเพื่อแจกจ่าย จัดการ และยกเลิกการใช้คีย์ร่วมกันอย่างปลอดภัย
2) ความท้าทายของกระเป๋าเงิน MPC
ไม่ว่าคุณจะใช้รุ่นใด มีปัญหาหลักสามประการเกี่ยวกับการตั้งค่าโฮสติ้งแบบ MPC
ปัญหาที่ 1: คุณต้องเชื่อถือฝ่ายส่วนกลางเพื่อประสานงานการเซ็นชื่อและการสร้างคีย์อย่างปลอดภัย
การตั้งค่า MPC แบบไฮบริดหรือแบบรวมศูนย์จำเป็นต้องมีฝ่ายส่วนกลางที่เชื่อถือได้เพื่อปกป้องการแชร์คีย์ตั้งแต่หนึ่งรายการขึ้นไปอย่างปลอดภัย (และการแชร์คีย์สำรองที่อาจเกิดขึ้น)
ปัญหาที่ 1: คุณต้องเชื่อถือฝ่ายส่วนกลางเพื่อประสานงานการเซ็นชื่อและการสร้างคีย์อย่างปลอดภัย
การตั้งค่า MPC แบบไฮบริดหรือแบบรวมศูนย์จำเป็นต้องมีฝ่ายส่วนกลางที่เชื่อถือได้เพื่อปกป้องการแชร์คีย์ตั้งแต่หนึ่งรายการขึ้นไปอย่างปลอดภัย (และการแชร์คีย์สำรองที่อาจเกิดขึ้น)
การรักษาความปลอดภัยการแชร์คีย์เหล่านี้ต้องใช้โครงสร้างพื้นฐานระบบคลาวด์ที่ซับซ้อนและเชื่อถือได้ ความซับซ้อนที่เกี่ยวข้องกับการสร้างคีย์แบบกระจาย การหมุนเวียนคีย์ และการเพิกถอนคีย์อาจทำให้คุณเสี่ยงต่อการเปิดเผยการแบ่งปันคีย์ของคุณผ่านการคุกคามจากวงในและการโจมตีจากคนกลาง การเปิดเผยคีย์แชร์ในจำนวนที่เพียงพอจะทำให้ผู้โจมตีสามารถควบคุมทรัพย์สินของคุณได้อย่างสมบูรณ์
ปัญหาที่ 2: คุณต้องเชื่อมั่นว่าการแบ่งปันคีย์เก่าจะถูกยกเลิกอย่างถูกต้องในการเพิกถอนคีย์
หากคุณต้องการยกเลิกการเข้าถึงของผู้ลงนาม MPC คุณต้องสามารถเพิกถอนคีย์ได้ และคุณต้องไว้วางใจให้ทุกฝ่ายยกเลิกการใช้คีย์เก่าร่วมกัน ด้วยลักษณะที่กำหนดขึ้นของการเข้ารหัส การเพิกถอนการแชร์คีย์อาจเป็นเรื่องที่ท้าทาย หากโครงสร้างพื้นฐานการแชร์คีย์ของผู้ให้บริการกระเป๋าเงินถูกบุกรุกโดยไวรัส ไวรัสสามารถอยู่เฉยๆ ได้ โดยรวบรวมการแชร์คีย์เก่าทุกครั้งที่มีการเพิกถอนคีย์ จนกว่าผู้โจมตีจะมีคีย์แชร์เพียงพอสำหรับโอนทรัพย์สินทั้งหมด
ปัญหาที่ 3: คุณต้องเชื่อมั่นว่าอัลกอริทึม MPC ของคุณไม่มีข้อผิดพลาด
อัลกอริทึม MPC เกี่ยวข้องกับการเข้ารหัสที่ซับซ้อน และอัลกอริทึมจะได้รับการอัปเดตเป็นประจำเพื่อปรับปรุงประสิทธิภาพและการทำงาน พบช่องโหว่ในอัลกอริธึมมาตรฐานอุตสาหกรรม และข้อผิดพลาดในการใช้งาน MPC อาจนำไปสู่การสูญเสียเงินทุนทั้งหมดสำหรับผู้โจมตีที่ใช้ประโยชน์จากช่องโหว่
ตัวอย่างเช่น ช่องโหว่ 2 รายการที่เพิ่งค้นพบในพื้นที่ cryptocurrency:
1. การรั่วไหลของข้อมูลคีย์ส่วนตัวของ GG18 และ GG20 (อัลกอริธึม MPC ที่ Fireblocks ใช้ในปี 2562-2564)
2. ช่องโหว่ที่ค้นพบเมื่อเร็วๆ นี้ในการใช้งาน MPC ของ BitGo ซึ่งจะทำให้แฮ็กเกอร์เข้าถึงเงินของคุณได้อย่างเต็มที่ด้วยลายเซ็นเดียว
3) สัญญาอัจฉริยะ > กระเป๋าเงินที่ใช้ MPC
การย้ายไปยังโซลูชันสัญญาอัจฉริยะ (ปลอดภัย) ทำให้เราสามารถขจัดข้อกังวลทั้งหมดที่เรามี:
ปัญหาที่ 1: คุณต้องเชื่อถือฝ่ายส่วนกลางเพื่อประสานงานการเซ็นชื่อและการสร้างคีย์อย่างปลอดภัย
โซลูชันของ Safe: ลายเซ็นโปร่งใส + ตรวจสอบได้และการสร้างคีย์ ห้องนิรภัย Waymont ของคุณเป็นกระเป๋าเงิน multisig ที่ปลอดภัยแบบ 2 ต่อ 2 คุณสามารถตรวจสอบออนไลน์ได้ว่าผู้ลงนาม 1 เป็นอุปกรณ์มือถือที่ลงทะเบียนของคุณ และผู้ลงนาม 2 เป็นผู้คุ้มครองนโยบาย Waymont ของคุณ Waymont ไม่เคยถือหุ้นหลักใดๆ ดังนั้นแม้ว่าจะถูกเปิดเผย ธุรกรรมก็ไม่สามารถเริ่มต้นได้และสินทรัพย์ของคุณจะถูกบุกรุก
ปัญหาที่ 2: คุณต้องเชื่อมั่นว่าการแบ่งปันคีย์เก่าจะถูกยกเลิกอย่างถูกต้องในการเพิกถอนคีย์
โซลูชันของ Safe: คุณสามารถหมุนคีย์ ลบ และเพิ่มผู้ลงนามบนเครือข่ายได้อย่างอิสระ ไม่จำเป็นต้องละทิ้งคีย์แชร์ และไม่มีความเสี่ยงจากผู้ประสงค์ร้ายที่จะสะสมคีย์แชร์เก่า
ปัญหาที่ 3: คุณต้องเชื่อมั่นว่าอัลกอริทึม MPC ของคุณไม่มีข้อผิดพลาด
โซลูชันของ Safe: สัญญาอัจฉริยะของ Safe ปกป้องทรัพย์สินมูลค่ากว่า 1 แสนล้านดอลลาร์ ตั้งแต่ปี 2018 สัญญาอัจฉริยะของ Safe ได้ผ่านมาตรฐานความปลอดภัยสูงสุดของอุตสาหกรรม รวมถึงการตรวจสอบอย่างเป็นทางการ และทำงานได้ดีในการตรวจสอบความปลอดภัยมากกว่า 11 รายการ
อย่างไรก็ตาม การใช้ Safe นั้นไม่ได้เป็นการเสียสละแต่อย่างใด ด้วยการเพิ่มประสิทธิภาพการรักษาความปลอดภัย เรายอมรับต้นทุนก๊าซที่เพิ่มขึ้นและล็อคไว้ชั่วคราวบนห่วงโซ่ EVM เราคิดว่านี่เป็นทางเลือกที่ชัดเจนในตัวเอง ความสำคัญสูงสุดของเราคือความปลอดภัย สัญญาอัจฉริยะยังให้ประโยชน์อื่นๆ แก่ผู้ใช้ของเรา:
1. ไทม์ล็อกบนเครือข่าย - ไทม์ล็อกสำหรับการกู้คืนและการดำเนินการล่าช้าที่ผู้ใช้สามารถยกเลิกได้
2. ธุรกรรมแบบแบทช์ - ผู้ใช้สามารถแบทช์ธุรกรรมหลายรายการพร้อมกันเพื่อประหยัดน้ำมัน
3. ธุรกรรมที่สนับสนุน - บุคคลอื่นสามารถสนับสนุนธุรกรรมสำหรับผู้ใช้ (สามารถชำระค่าน้ำมันด้วยโทเค็น ERC20 ใดก็ได้)
4. การรักษาความปลอดภัยที่ตั้งโปรแกรมได้ - การหมุนเวียนคีย์บนเครือข่ายและการจัดการคีย์ที่ตั้งโปรแกรมได้ (เช่น ต้องใช้คีย์การเซ็นชื่อเพิ่มเติมหรือต่างกันสำหรับธุรกรรมที่มีมูลค่ามากกว่า $10,000)
MPC อาจยังคงมีบทบาทในการเป็นเจ้าภาพด้วยตนเองในอนาคต อาจเป็นตัวเลือกที่สมเหตุสมผลสำหรับสถาบันที่ต้องการทำงานกับผู้ดูแลทรัพย์สิน หรือตามที่ Lukas Schor ผู้ก่อตั้ง Safe ชี้ว่า MPC สามารถใช้เป็นโซลูชันในการปรับปรุงความปลอดภัยของคีย์การเซ็นสัญญากระเป๋าเงินอัจฉริยะ
MPC อาจยังคงมีบทบาทในการเป็นเจ้าภาพด้วยตนเองในอนาคต อาจเป็นตัวเลือกที่สมเหตุสมผลสำหรับสถาบันที่ต้องการทำงานกับผู้ดูแลทรัพย์สิน หรือตามที่ Lukas Schor ผู้ก่อตั้ง Safe ชี้ให้เห็น MPC สามารถใช้เป็นโซลูชันในการปรับปรุงความปลอดภัยของคีย์การเซ็นสัญญากระเป๋าเงินอัจฉริยะ
โดยรวมแล้ว หากใช้งานอย่างเหมาะสม การตั้งค่า MPC จะปลอดภัย แต่ตามที่ระบุไว้ข้างต้น MPC ต้องการสมมติฐานความน่าเชื่อถือโดยธรรมชาติและแนะนำเวกเตอร์ความเสี่ยงที่ Waymont และพวกเราส่วนใหญ่ผู้ใช้ crypto-native ต้องการหลีกเลี่ยง ส่งผลให้ปัจจุบัน Waymont ปกป้องทรัพย์สินมูลค่ากว่า 100 พันล้านดอลลาร์ได้อย่างมั่นใจผ่านสัญญาอัจฉริยะที่ปลอดภัย
ความคิดเห็นทั้งหมด