Multisig เป็นแนวคิดที่คุ้นเคยสำหรับคนส่วนใหญ่ใน Bitcoin: ธุรกรรม multisig ต้องได้รับการอนุมัติจากหลายฝ่ายก่อนจึงจะดำเนินการได้ เราแยกความแตกต่างระหว่างน-ของ-น“การลงนามหลายฉบับ โดยที่จำนวนฝ่ายที่เกี่ยวข้องคือ นและพวกเขาทั้งหมดต้องได้รับการอนุมัติและ”ที-ของ-น” ลายเซ็นเกณฑ์ที่มีจำนวนน้อยกว่าเท่านั้น ที ของผู้เข้าร่วมต้องได้รับการอนุมัติ แผนการเข้ารหัสเช่น MuSig มูซิก-ดีเอ็น และ มูซิก2 สำหรับลายเซ็นหลายรายการและ น้ำแข็ง โดย Komlo และ Goldberg สำหรับลายเซ็นเกณฑ์สามารถลดต้นทุนธุรกรรมและปรับปรุงความเป็นส่วนตัวของกระเป๋าเงินหลายลายเซ็นได้
จนถึงขณะนี้ ในชุมชน Bitcoin FROST ถูกใช้เฉพาะในการใช้งานจริงเท่านั้น ในโพสต์นี้ เราจะอธิบายว่าทำไมจึงเป็นเช่นนั้น และเราตั้งเป้าที่จะพัฒนา FROST ในสภาพแวดล้อมการผลิต Bitcoin อย่างไรด้วยการเผยแพร่บทความล่าสุดของเรา ร่าง BIP สำหรับ ChillDKG โปรโตคอลการสร้างคีย์แบบกระจาย
ประการแรก FROST มีประโยชน์อะไรบ้าง?
ความเป็นส่วนตัวและการเพิ่มประสิทธิภาพด้วย MuSig2 และ FROST
แม้ว่าผู้เข้าร่วมหลายคนจะร่วมกันลงนามด้วย MuSig2 และ FROST ผลลัพธ์ก็เป็นเพียงลายเซ็นเดียว
วิธีนี้ไม่เพียงแต่ทำให้ผู้เข้าร่วมมีความเป็นส่วนตัวมากขึ้นเท่านั้น แต่ยังทำให้การทำธุรกรรมดูเหมือนกับการทำธุรกรรมผ่านกระเป๋าเงินเดี่ยวทั่วไปอีกด้วย นอกจากนี้ยังช่วยลดขนาดการทำธุรกรรมลง ทำให้ขนาดของธุรกรรมเล็กลง และด้วยเหตุนี้ ค่าธรรมเนียมการทำธุรกรรมจึงลดลงด้วย นับว่าดีมาก!
MuSig2 และ FROST ช่วยให้ผู้ใช้ Bitcoin สามารถใช้งานกระเป๋าเงินหลายลายเซ็นด้วยค่าธรรมเนียมธุรกรรมเท่ากับกระเป๋าเงินลายเซ็นเดียวทั่วไป ประโยชน์ด้านต้นทุนมีความสำคัญอย่างยิ่งสำหรับระบบที่มีผู้ลงนามจำนวนมากและมีธุรกรรมบ่อยครั้ง เช่น ไซด์เชนแบบรวม เช่น ของเหลว หรือ เฟดิมินท์ซึ่งแตกต่างจากกระเป๋าเงินแบบมัลติซิกแบบดั้งเดิมซึ่งทิ้งรอยนิ้วมือเฉพาะไว้เพื่อให้ผู้สังเกตการณ์บล็อคเชนสามารถระบุธุรกรรมของกระเป๋าเงินได้ กระเป๋าเงินที่ใช้ FROST นั้นแยกแยะไม่ออกจากกระเป๋าเงินลายเซ็นเดียวทั่วไปบนบล็อคเชน ดังนั้น กระเป๋าเงินเหล่านี้จึงให้ความเป็นส่วนตัวที่ดีขึ้นเมื่อเทียบกับกระเป๋าเงินแบบมัลติซิกแบบดั้งเดิม
แม้ว่า MuSig2 จะได้รับการยอมรับจากอุตสาหกรรม Bitcoin แต่เท่าที่เราทราบ FROST ก็ยังไม่สามารถพูดแบบเดียวกันได้ นี่อาจเป็นเรื่องน่าแปลกใจเมื่อพิจารณาจากการที่มีการนำ FROST มาใช้หลายรูปแบบ เช่น แซดเอฟ ฟรอสต์ (โดยมูลนิธิ Zcash) เซ็ป256เคฟัน (โดย Lloyd Fournier) และการใช้งานเชิงทดลองใน libsecp256k1-zkp (โดย Jesse Posner และ Blockstream Analysis) ยังมีข้อกำหนดของ IETF สำหรับ FROST ด้วย กฎข้อบังคับ RFC 9591 (แม้ว่าจะไม่เข้ากันได้กับ Bitcoin เนื่องจากการปรับแต่ง Taproot และคีย์สาธารณะแบบ x เท่านั้น) หนึ่งในคำอธิบายที่เป็นไปได้มากที่สุดก็คือกระบวนการสร้างคีย์ของ FROST มีความซับซ้อนมากกว่า MuSig2 มาก
ปริศนาที่ยังไม่ได้รับการแก้ไขของ FROST ในระบบการผลิต
FROST ประกอบด้วยสองส่วนหลักๆ คือ การสร้างคีย์และการลงนาม แม้ว่ากระบวนการลงนามจะคล้ายกับ MuSig2 มาก แต่การสร้างคีย์มีส่วนเกี่ยวข้องมากกว่าใน MuSig2 มาก การสร้างคีย์ใน FROST เป็นแบบเชื่อถือได้หรือแบบกระจาย:
- การสร้างคีย์ที่เชื่อถือได้เกี่ยวข้องกับ “ตัวแทนจำหน่ายที่เชื่อถือได้” ซึ่งสร้างคีย์และแจกจ่ายคีย์ที่แชร์ให้กับผู้ลงนาม ตัวแทนจำหน่ายเป็นตัวแทนของจุดล้มเหลวเพียงจุดเดียว: หากเป็นอันตรายหรือถูกแฮ็ก กระเป๋าสตางค์ FROST อาจเสี่ยงต่อการถูกลบออก
- การสร้างคีย์แบบกระจาย (DKG) ถึงแม้จะไม่จำเป็นต้องมีผู้ค้าปลีกที่เชื่อถือได้ แต่ก็มีปัญหาในตัวเอง นั่นคือ ผู้เข้าร่วมทั้งหมดจะต้องมีส่วนร่วมใน “พิธีการ” การสร้างคีย์แบบโต้ตอบก่อนจึงจะเริ่มต้นการลงนามได้
ความท้าทายหลัก: ข้อตกลง
โดยทั่วไป DKG ต้องใช้ช่องทางที่ปลอดภัย (กล่าวคือ ต้องมีการตรวจสอบและเข้ารหัส) ระหว่างผู้เข้าร่วมเพื่อส่งข้อมูลที่เป็นความลับให้กับผู้ลงนามแต่ละราย และกลไกข้อตกลงที่ปลอดภัย วัตถุประสงค์ของกลไกข้อตกลงที่ปลอดภัยคือเพื่อให้แน่ใจว่าผู้เข้าร่วมทั้งหมดจะบรรลุข้อตกลงในที่สุดเกี่ยวกับผลลัพธ์ของ DKG ซึ่งรวมถึงไม่เพียงแต่พารามิเตอร์ต่างๆ เช่น คีย์สาธารณะเกณฑ์ที่สร้างขึ้นเท่านั้น แต่ยังรวมถึงการไม่มีข้อผิดพลาดเกิดขึ้นและพิธีการไม่ได้ถูกรบกวนจากผู้เข้าร่วมที่ประพฤติตัวไม่เหมาะสม
แม้ว่าข้อกำหนดของ IETF จะถือว่า DKG อยู่นอกขอบเขตโดยสิ้นเชิง แต่การนำ FROST ไปใช้งานที่กล่าวถึงข้างต้นไม่ได้นำข้อตกลงที่ปลอดภัยไปใช้งาน จึงปล่อยให้ผู้ใช้ไลบรารีเป็นผู้ดำเนินการ แต่ข้อตกลงนั้นไม่ใช่เรื่องง่ายในการนำไปใช้งาน มีโปรโตคอลและข้อตกลงรูปแบบต่างๆ มากมายนับไม่ถ้วน ตั้งแต่รูปแบบการออกอากาศเสียงสะท้อนแบบง่ายๆ ไปจนถึงโปรโตคอลฉันทามติแบบไบแซนไทน์ที่สมบูรณ์แบบ และการรับประกันความปลอดภัยและความพร้อมใช้งานนั้นแตกต่างกันอย่างมาก และบางครั้งก็แตกต่างกันอย่างละเอียดอ่อน
แม้ว่าโปรโตคอลข้อตกลงที่หลากหลายอาจสร้างความสับสนได้ แต่ข้อตกลงที่ชัดเจนที่ DKG อ้างอิงมักไม่ได้รับการสื่อสารไปยังวิศวกรอย่างชัดเจน ทำให้วิศวกรไม่ทราบข้อมูลที่แท้จริง
ChillDKG: DKG แบบสแตนด์อโลนสำหรับ FROST
เพื่อเอาชนะอุปสรรคนี้ เราเสนอ ChillDKG ซึ่งเป็นโปรโตคอล DKG แบบ “พร้อมใช้งาน” ใหม่ที่ปรับแต่งให้เหมาะกับการใช้งานใน FROST (ร่าง) เราให้คำอธิบายโดยละเอียดในรูปแบบร่างข้อเสนอปรับปรุง Bitcoin (BIP) ซึ่งมีวัตถุประสงค์เพื่อใช้เป็นข้อกำหนดสำหรับผู้ใช้บริการ
คุณสมบัติหลักของ ChillDKG คือเป็นแบบสแตนด์อโลน การสร้างการสื่อสารที่ปลอดภัยและข้อตกลงที่ปลอดภัยนั้นทำได้ภายในโปรโตคอล ในขณะที่ความซับซ้อนพื้นฐานทั้งหมดนี้ซ่อนอยู่ภายใต้ API ที่เรียบง่ายและยากต่อการใช้งานในทางที่ผิด ด้วยเหตุนี้ ChillDKG จึงพร้อมใช้งานในทางปฏิบัติและไม่ต้องพึ่งพาสมมติฐานการตั้งค่าใดๆ ยกเว้นว่าผู้ลงนามแต่ละคนได้ตัดสินใจเลือกชุดของผู้ลงนามร่วมตามที่ระบุด้วยคีย์สาธารณะของแต่ละคน ChillDKG มีพื้นฐานมาจากโปรโตคอล SimplPedPop ซึ่ง Blockstream Analysis มีส่วนเกี่ยวข้องในการออกแบบและพิสูจน์ความปลอดภัยอย่างเป็นทางการ โปรดดูเอกสาร CRYPTO 2023ลายเซ็นเกณฑ์ Schnorr ที่ใช้งานได้จริงโดยไม่ต้องใช้แบบจำลองกลุ่มพีชคณิต” โดย Chu, Gerhart, Ruffing (Blockstream Analysis) และ Schröder
เป้าหมายเพิ่มเติมสำหรับการออกแบบของ ChillDKG ได้แก่:
- ความสามารถในการใช้งานที่กว้างขวาง: ChillDKG รองรับสถานการณ์ต่างๆ มากมาย ตั้งแต่สถานการณ์ที่อุปกรณ์การลงนามเป็นของและเชื่อมต่อโดยบุคคลเพียงคนเดียว ไปจนถึงสถานการณ์ที่เจ้าของหลายรายจัดการอุปกรณ์จากตำแหน่งที่แตกต่างกัน
- การสำรองข้อมูลแบบง่ายๆ: แทนที่จะต้องสำรองข้อมูลลับที่ได้รับจากผู้ลงนามคนอื่นในตำแหน่งที่ปลอดภัย ChillDKG อนุญาตให้กู้คืนกระเป๋าสตางค์จากเมล็ดพันธุ์ของอุปกรณ์และข้อมูลสาธารณะเท่านั้นซึ่งเหมือนกันสำหรับผู้เข้าร่วม DKG ทั้งหมด ดังนั้น ผู้โจมตีที่เข้าถึงข้อมูลสำรองสาธารณะจะไม่ได้รับคีย์การลงนามลับ และหากผู้ใช้สูญเสียข้อมูลสำรอง พวกเขาสามารถขอจากผู้ลงนามที่ซื่อสัตย์คนอื่นได้
การ ชิลล์ดีเคจี บีไอพี ขณะนี้อยู่ในขั้นตอนร่าง และเรากำลังขอคำติชมเกี่ยวกับตัวเลือกการออกแบบและรายละเอียดการใช้งาน แม้ว่ารายละเอียดจะเสร็จสมบูรณ์เกือบหมดแล้ว แต่ยังขาดเวกเตอร์การทดสอบ และเรากำลังพิจารณาเพิ่มฟีเจอร์เพิ่มเติมบางอย่าง (เช่น “การยกเลิกที่ระบุได้”) เมื่อเสร็จสิ้นแล้ว สามารถใช้ ChillDKG BIP ร่วมกับ BIP สำหรับการลงนาม FROST เพื่อสร้างอินสแตนซ์ของโปรโตคอล FROST ทั้งหมดได้
นี่เป็นโพสต์ของแขกรับเชิญโดย Jonas Nick, Kiara Bickers และ Tim Ruffing ความคิดเห็นที่แสดงออกมาล้วนเป็นความคิดเห็นส่วนตัวของพวกเขาเองและไม่จำเป็นต้องสะท้อนถึงความคิดเห็นของ BTC Inc หรือ Bitcoin Journal