ZK-Rollups: โซลูชันการขยายเลเยอร์ 2 บนพื้นฐานของการพิสูจน์ความรู้เป็นศูนย์
แตกต่างจากการพิสูจน์การฉ้อโกง [1] Zk-Rollup ใช้การพิสูจน์ความถูกต้องโดยใช้การพิสูจน์ความรู้เป็นศูนย์เพื่อรับรองความถูกต้องของธุรกรรม ก่อนที่ข้อมูลจะถูกอัปโหลดไปยังลูกโซ่ ข้อมูลจะได้รับการตรวจสอบผ่านการพิสูจน์ความรู้เป็นศูนย์เพื่อพิสูจน์สิ่งนั้นก่อน ไม่มีปัญหากับธุรกรรม จากนั้นส่งสถานะที่อัปเดต หลักฐานการทำธุรกรรม และข้อมูลธุรกรรมที่ถูกบีบอัดไปยังเชนหลักเพื่อให้มั่นใจถึงความถูกต้องของข้อมูลที่เกี่ยวข้องในเชนและความปลอดภัยของเงินทุน
ความปลอดภัยของ Zk-Rollup ขึ้นอยู่กับหลักการเข้ารหัส และข้อดีหลักประการหนึ่งก็คือ ไม่ต้องมีช่วงเวลาท้าทาย [2]
ในปัจจุบัน ความสามารถในการประมวลผลทั่วไปของ Zk-Rollup ยังย่ำแย่ และเวอร์ชันออนไลน์ส่วนใหญ่สามารถใช้ได้เฉพาะการถ่ายโอนและสถานการณ์แอปพลิเคชันเฉพาะเท่านั้น ซึ่งไม่เป็นมิตรกับนักพัฒนา ขณะนี้โซลูชัน Zk-Rollup ล่าสุดบางส่วนกำลังศึกษาโซลูชันการขยาย L2 ที่เข้ากันได้กับ EVM ทั่วไป หากประสบความสำเร็จ ก็จะมีความสำคัญอย่างยิ่ง
Zk-Rollup สอดคล้องกับสไตล์ของโลก crypto มากกว่า โดยใช้หลักการเข้ารหัสเพื่อพิสูจน์ความถูกต้องของธุรกรรม แทนที่จะรอให้ผู้อื่นรายงานธุรกรรมที่ไม่ถูกต้อง
หลักฐานความรู้เป็นศูนย์
การพิสูจน์ความรู้เป็นศูนย์เป็นแนวคิดการเข้ารหัส หรือที่เรียกว่าการพิสูจน์การรั่วเป็นศูนย์ และประกอบด้วยผู้พิสูจน์และผู้ตรวจสอบ
เครื่องพิสูจน์จำเป็นต้องทำงานบนฮาร์ดแวร์พิเศษและไม่น่าเชื่อถือ ซึ่งหมายความว่าความปลอดภัยของระบบไม่จำเป็นต้องถือว่าเครื่องพิสูจน์นั้นเชื่อถือได้ หรือฮาร์ดแวร์ที่เครื่องพิสูจน์ใช้นั้นเชื่อถือได้ เนื่องจากในทางคณิตศาสตร์ไม่มีวิธีการปลอมแปลงของปลอม การพิสูจน์ความรู้เป็นศูนย์
ตัวตรวจสอบไม่จำเป็นต้องใช้ฮาร์ดแวร์พิเศษและสามารถทำงานบนโหนดใดก็ได้ ในแง่ของคนธรรมดา ผู้พิสูจน์สร้างการพิสูจน์จากอินพุตของระบบ และผู้ตรวจสอบจะตรวจสอบเพื่อยืนยันว่าผู้พิสูจน์ได้อัปโหลดผลการคำนวณจริงโดยไม่จำเป็นต้องคำนวณใหม่ มันอีกครั้ง
เพื่อให้เป็นไปตามหลักปรัชญา หากฉันต้องการพิสูจน์ว่าบัญชี Bitcoin บางบัญชีเป็นของฉัน ฉันต้องการพิสูจน์ว่าฉันรู้รหัสส่วนตัวของบัญชีนี้ แต่ฉันไม่สามารถบอกรหัสส่วนตัวให้ผู้อื่นได้ (ลายเซ็นคีย์ส่วนตัว, การตรวจสอบคีย์สาธารณะ)
zk-SNARK
ที่ใช้กันมากที่สุดในบล็อกเชนคือ zk-SNARK ซึ่งเป็นหลักฐานพิสูจน์ความรู้แบบพิเศษที่ต้องไม่มีการโต้ตอบ (ตัวอย่างก่อนหน้าของการพิสูจน์ความรู้เป็นศูนย์ที่ตรวจสอบว่า Bitcoin ไม่ใช่แบบโต้ตอบและต้องเปลี่ยนเป็นแบบไม่โต้ตอบใน กล่าวอีกนัยหนึ่ง ฉันเพิ่งออกธุรกรรมการโอนและโอนเหรียญในบัญชีไปยังบัญชีอื่น เพื่อให้โหนดทั้งหมดสามารถตรวจสอบได้ว่าบัญชี Bitcoin นี้เป็นของฉัน สำหรับสถานการณ์บล็อกเชน ผู้พิสูจน์เพียงต้องการส่งข้อความเผยแพร่ไปยังบล็อกเชนเท่านั้น โหนดทั้งหมดสามารถตรวจสอบได้ไม่จำเป็นต้องโต้ตอบกับผู้พิสูจน์ตัวตรวจสอบประเภทนี้เรียกว่า Public Verifier) และความเรียบง่าย (ต้องใช้เพียงไม่กี่ร้อยไบต์แม้ว่าอินพุตดั้งเดิมจะมีขนาดใหญ่การสร้างการพิสูจน์ก็ง่ายมาก เล็ก).
ข้อเสียคือภาระงานของผู้พิสูจน์ในการสร้างหลักฐานมีขนาดใหญ่มาก ใช้เวลาเพียงไม่กี่วินาทีในการเริ่มต้นธุรกรรมการโอนเงินโดยไม่เปิดเผยตัวตนเมื่อทำการโอนเงิน และใช้เวลาเพียงไม่กี่วินาทีในการตรวจสอบความถูกต้องตามกฎหมายของธุรกรรม
zk-SNARK ต้องการการตั้งค่าความน่าเชื่อถือ ซึ่งกำหนดให้สร้างชุดพารามิเตอร์สาธารณะที่ใช้ร่วมกันระหว่างการเริ่มต้น แหล่งที่มาแบบสุ่มที่ใช้ระหว่างการเริ่มต้นจะต้องถูกทำลาย หากรั่วไหล ระบบรักษาความปลอดภัยจะล่มสลาย และผู้โจมตีที่เป็นอันตรายสามารถสร้างตามลำดับได้ เพื่อหลีกเลี่ยงความเสี่ยงของการพิสูจน์เท็จ กระบวนการเริ่มต้นของ zk-SNARK เกี่ยวข้องกับหลายฝ่าย ตราบใดที่ฝ่ายใดฝ่ายหนึ่งทำลายแหล่งสุ่มที่ใช้ระหว่างการเริ่มต้น ระบบก็จะปลอดภัย
การประยุกต์ใช้ zk-SNARK ใน blockchain
แอปพลิเคชันตัวแทนหนึ่งรายการคือ Zcash และอีกรายการหนึ่งคือ Filecoin ทั้งสองโครงการนี้ไม่ใช่ L2 พวกเขาใช้ที่นี่เพื่อแสดงสถานการณ์การใช้งานของ zk-SNARK เท่านั้น
Zcash ใช้ zk-SNARK เพื่อซ่อนข้อมูลธุรกรรม ข้อมูลประจำตัวของทั้งสองฝ่ายในการทำธุรกรรม และจำนวนธุรกรรม Zcash สามารถตรวจสอบความถูกต้องของธุรกรรมโดยไม่ต้องทราบ sender.address, gets.address, iuput.value และ out ค่า. สิ่งนี้แตกต่างจาก Bitcoin มาก ทุกธุรกรรมใน Bitcoin จะต้องอธิบายแหล่งที่มาของสกุลเงินและธุรกรรมก่อนหน้าที่สกุลเงินนั้นมา ด้วยวิธีนี้เท่านั้นที่เราจะพิสูจน์ได้ว่าสกุลเงินที่เราใช้นั้นถูกกฎหมาย ไม่ใช่ถูกสร้างขึ้นมา . สำหรับ Zcash จะต้องได้รับการพิสูจน์ทางคณิตศาสตร์เท่านั้นว่าสกุลเงินที่คุณใช้เป็นสกุลเงินตามกฎหมายที่มีอยู่ในระบบปัจจุบัน ไม่จำเป็นต้องระบุว่าเป็นสกุลเงินใด ดังนั้นจึงไม่มีทางติดตามแหล่งที่มาของสกุลเงินได้
Filecoin เป็นเครือข่าย zk-SNARK ที่ใช้งานที่ใหญ่ที่สุดจนถึงปัจจุบัน โดยสร้างการพิสูจน์ความรู้แบบศูนย์นับล้านรายการทุกวัน นักขุด Filecoin จะได้รับรางวัลบล็อกจากการจัดเก็บข้อมูลและจำเป็นต้องพิสูจน์เป็นประจำว่าพวกเขากำลังจัดเก็บข้อมูลที่สัญญาไว้ นักขุดเหล่านี้เป็นผู้พิสูจน์ในโปรโตคอล zk-SNARK และจำเป็นต้องจัดให้มีการพิสูจน์สองประเภท การพิสูจน์การจำลองแบบ [3] และกาลอวกาศ หลักฐาน [ 4].
หลักฐานการจำลองแบบจะเกิดขึ้นเพียงครั้งเดียว เมื่อผู้ใช้และผู้ให้บริการพื้นที่เก็บข้อมูลเริ่มเข้าถึงธุรกรรมการจัดเก็บข้อมูล ผู้ให้บริการพื้นที่จัดเก็บข้อมูลจำเป็นต้องพิสูจน์ว่าพวกเขาจัดเก็บข้อมูลของผู้ใช้จริง ๆ จะต้องมีการจัดเตรียมหลักฐานตามเวลาอวกาศเป็นระยะเพื่อพิสูจน์ว่าผู้ให้บริการพื้นที่เก็บข้อมูล ยังคงจัดเก็บข้อมูลอย่างต่อเนื่องเมื่อเวลาผ่านไป สำหรับข้อมูลต้นฉบับ ผู้ให้บริการพื้นที่จัดเก็บข้อมูลจำเป็นต้องจำนำไฟล์โทเค็นที่เกี่ยวข้องเมื่อตกลงที่จะจัดเก็บข้อมูลให้กับลูกค้าเป็นครั้งแรก หากผู้ให้บริการไม่สามารถจัดเตรียมการพิสูจน์พื้นที่-เวลาในระหว่างข้อตกลงได้ จะถูกลงโทษและอาจสูญเสียโทเค็นไฟล์ที่จำนำไว้
ข้อดีของเทคโนโลยี zk-SNARK คือ การพิสูจน์ที่สร้างขึ้นนั้นสั้นมาก ช่วยประหยัดแบนด์วิธเครือข่าย และรวดเร็วในการตรวจสอบ Filecoin ไม่ได้ใช้การประมวลผลความเป็นส่วนตัวตามความหมายที่แท้จริงเท่านั้น ไม่ได้ใช้สำหรับข้อมูลผู้ใช้ จนถึงตอนนี้ วงจร zk-SNARK เกือบทั้งหมดเป็นวงจรรวมเฉพาะแอปพลิเคชัน ซึ่งเป็นเทคโนโลยีพิสูจน์ความรู้แบบศูนย์ที่ปรับแต่งตามแอปพลิเคชันต่างๆ สัญญาอัจฉริยะของ Ethereum นั้นเสร็จสมบูรณ์แล้ว และเทคโนโลยี zk-SNARK ยังไม่เสร็จสมบูรณ์ แต่เป็นสัญญาที่ชาญฉลาด
โครงการตัวแทน ZK-Rollup
ZK Rollup มีโปรเจ็กต์ตัวแทนสองโปรเจ็กต์ ได้แก่ zkSync และ STARKWARE
zkSync
zkSync ใช้อัลกอริธึมความรู้เป็นศูนย์ของ zk-SNARK และการรักษาความปลอดภัยขึ้นอยู่กับการตั้งค่าความน่าเชื่อถือเริ่มต้น (ตัวเลขสุ่มถูกกำหนดโดยผู้เข้าร่วมบางคน รวมถึง V God ผู้ก่อตั้ง Ethereum โดยกำหนดให้ผู้เข้าร่วมอย่างน้อยหนึ่งคนต้องซื่อสัตย์ จากนั้นระบบนี้สามารถพิสูจน์ได้ว่าปลอดภัย ).
ในแง่ของความเข้ากันได้ของ EVM zkSync มีคอมไพเลอร์ที่แปลงสัญญาอัจฉริยะเป็น opcode ที่ zkEVM รองรับเพื่อให้เกิดความเข้ากันได้แบบ Solidity
ในแง่ของความพร้อมใช้งานของข้อมูล zkSync มอบโซลูชันความพร้อมใช้งานข้อมูลสองแบบ ผู้ใช้สามารถเลือกที่จะอัปโหลดข้อมูลไปยังเชน (นั่นคือ เก็บไว้ในเชน L1 หรือเก็บไว้ใน Ethereum เพื่อความปลอดภัยที่สูงขึ้น และในเวลาเดียวกัน พวกเขาจำเป็นต้อง จ่ายมากกว่าห่วงโซ่) (ค่าธรรมเนียมก๊าซลดลง) ผู้ใช้ยังสามารถเลือกที่จะจัดเก็บข้อมูลนอกเครือข่ายได้ (ซึ่งสามารถขยายขีดความสามารถได้มากขึ้นและประหยัดค่าธรรมเนียมก๊าซมากขึ้น แต่จะเสียสละการกระจายอำนาจและความปลอดภัยบางส่วน) กล่าวอีกนัยหนึ่ง zkSync รองรับโหมดการจัดเก็บข้อมูลทั้งแบบออนไลน์และออฟไลน์ บางคนคิดว่าข้อมูลนอกเครือข่ายไม่ใช่ L2 ในความหมายที่แท้จริง เนื่องจาก L2 จะต้องรับประกันความปลอดภัยเช่นเดียวกับ L1 หากข้อมูลถูกเก็บไว้ -chain ความพร้อมใช้งานจะเหมือนกับ L1 มีความแตกต่างหากถูกจัดเก็บไว้ที่ผู้ให้บริการคลาวด์นอกเครือข่าย มันจะขัดแย้งกับแนวคิดของการกระจายอำนาจ ยังไม่มีวิธีรับประกันความพร้อมใช้งานของข้อมูล (มีอยู่ใน IPFS และจะแตกต่างออกไปหากมีอยู่บน Ethereum) ในบล็อกเชน เช่น Ethereum และ Bitcoin ข้อมูลที่เก็บไว้จะไม่สูญหาย แต่ IPFS ไม่รับประกันว่าจะไม่- การงัดแงะ
สตาร์กแวร์
ปัจจุบัน ระบบกระแสหลักสองระบบสำหรับการสร้างหลักฐานที่ไม่มีความรู้ในตลาดคือ zk-SNARK และ zk-STARK
zk-Sync ใช้ zk-SNARK และ StarkWare เป็นเทคโนโลยีการเข้ารหัสที่อิงตามการพิสูจน์ zk-STARK zk-STARK เทคโนโลยีนี้ถูกคิดค้นโดยทีมงาน StarkWare ซึ่งถือได้ว่าเป็นเวอร์ชันอัพเกรดของเทคโนโลยี zk-SNARK ซึ่งสามารถทำให้บล็อกเชนสามารถปรับขนาดได้มากขึ้น ชั้นล่างสุดของบล็อกเชนโดยใช้อัลกอริธึมนี้ช่วยให้นักพัฒนาสามารถเพิ่มระบบออนไลน์ได้ ข้อมูลธุรกรรมและการจัดเก็บข้อมูลบางส่วนจะถูกถ่ายโอนไปยังนอกเครือข่ายเพื่อการแก้ปัญหา ข้อมูลนอกเครือข่ายที่ประมวลผลเป็นชุดสามารถบรรจุเพื่อสร้างใบรับรอง STARK ซึ่งสามารถส่งไปยังเครือข่ายเพื่อให้ผู้มีส่วนได้เสียไปที่ ตรวจสอบความถูกต้อง STARK มีข้อดีหลักสามประการเมื่อเทียบกับ SNARK ที่ใช้โดย zk-Sync ข้อดีประการแรกคือความโปร่งใส ซึ่งหมายความว่าระบบไม่ต้องการการตั้งค่าความน่าเชื่อถือในการทำงาน ในขณะที่การพิสูจน์ SNARK ต้องใช้การตั้งค่าความน่าเชื่อถือ หากผู้เข้าร่วมในการตั้งค่าเริ่มต้นไม่ซื่อสัตย์ สามารถสร้างใบรับรองปลอมและธุรกรรมปลอมแปลงได้ ในขณะที่ zk-STARK ไม่ต้องการการตั้งค่าความน่าเชื่อถือจากภายนอก มันสามารถป้องกันไม่ให้ฝ่ายใดฝ่ายหนึ่งทำลายหรือแก้ไขพารามิเตอร์ผ่านการตรวจสอบสาธารณะแบบสุ่ม มูลค่าที่แท้จริงที่ข้อได้เปรียบมีไม่ชัดเจน (ครูเซียวคิดว่าข้อได้เปรียบนี้ไม่สำคัญเลย)
ข้อได้เปรียบประการที่สองคือความสามารถในการขยายขนาด StarkWare อ้างว่า zk-STARK ช่วยลดความซับซ้อนในการคำนวณและสร้างการพิสูจน์ STARK ได้เร็วกว่า SNARK แต่ข้อความนี้ค่อนข้างขัดแย้งกัน
ข้อได้เปรียบประการที่สามคือการต้านทานการโจมตีควอนตัม ตามทฤษฎีแล้ว zk-STARK ใช้ฟังก์ชันแฮชที่ต้านทานการชนกันเพื่อปรับปรุงความสามารถในการต้านทานการโจมตีควอนตัม
ข้อเสียของ STARK ก็คือเทคโนโลยีมีความสมบูรณ์น้อยกว่า SNARK มากและอัตราการเจาะระบบก็ต่ำเช่นกัน ข้อดีของ StarkWare ก็คือทีมงานด้านเทคนิคมีขนาดเล็กมาก รวมถึงผู้ประดิษฐ์ของ STARK และ SNARK ด้วย ข้อเสียก็คือชุมชน นิเวศวิทยายังตามหลังอยู่มาก นอกจากนี้ยังเกี่ยวข้องกับอัตราการเจาะทะลุที่ไม่เพียงพอของ STARK
ปัญหาอีกประการหนึ่งคือความเข้ากันได้ของ EVM EVM ของ Ethereum เสร็จสมบูรณ์แล้ว แต่หาก STARK ต้องการบรรลุความสมบูรณ์ของ Turing มันจะเป็นเรื่องยากที่จะเข้ากันได้กับ EVM ภาษาสัญญาอัจฉริยะของ Ethereum จำเป็นต้องแปลงเป็นรูปแบบที่เข้ากันได้กับ STARK ซับซ้อนมาก ทีมงาน StarkWare จึงสร้างภาษาการเขียนโปรแกรมเฉพาะ Cario เพื่อรันโปรแกรมที่ STARK รองรับ ค่าใช้จ่ายในการเรียนรู้ค่อนข้างสูง และเข้ากันไม่ได้กับ EVM ทำให้ Dapps ที่มีอยู่บน Ethereum มีความซับซ้อนมาก ยากต่อการโยกย้าย ซึ่งเป็นเหตุผลหนึ่งที่ทำให้ระบบนิเวศของ StarkWare ไม่ใช่เรื่องง่ายที่จะสร้าง จากมุมมองอื่น ยังมีประโยชน์ในการใช้ภาษาใหม่ ซึ่งไม่มีภาระหนักในอดีตและสามารถบรรลุฟังก์ชันบางอย่างที่ Ethereum ไม่สามารถทำได้
ในแง่ของความพร้อมใช้งานของข้อมูล StarkWare มีแผนความพร้อมของข้อมูลสองแบบ StarkWare มีระบบ Voluation ที่อนุญาตให้ผู้ใช้เลือกว่าแต่ละธุรกรรมจะใช้รูปแบบ Rollup ที่มีข้อมูลออนไลน์อยู่ หรือรูปแบบการตรวจสอบความถูกต้องที่มีข้อมูลนอกสายโซ่
คณะกรรมการความพร้อมใช้งานของข้อมูลของโครงการ validium ประกอบด้วยหน่วยงานเข้ารหัสที่มีชื่อเสียงบางแห่ง จากมุมมองของความปลอดภัยของข้อมูล ข้อมูลที่จัดเก็บไว้ในห่วงโซ่จะปลอดภัยที่สุด ข้อเสียคือต้นทุนค่อนข้างสูง ซึ่งเหมาะสำหรับเงินทุนจำนวนมาก และความต้องการแบบเรียลไทม์ที่ต่ำ การจัดเก็บข้อมูลแบบออฟไลน์จะทำให้มีการรักษาความปลอดภัยในระดับหนึ่ง ข้อดีคือ ต้นทุนมีขนาดเล็ก และเหมาะสำหรับสถานการณ์แอปพลิเคชันที่มีเงินทุนค่อนข้างน้อยและมีความต้องการแบบเรียลไทม์สูง เช่น GameFi
การตีความคำนาม
การพิสูจน์การฉ้อโกง: ในระบบแบบกระจาย การพิสูจน์การฉ้อโกงจะถูกใช้เพื่อตรวจจับและแก้ไขการอัปเดตสถานะที่ไม่ถูกต้อง ซึ่งมักใช้ใน Optimistic Rollups ซึ่งถือว่าการดำเนินการส่วนใหญ่นั้นถูกต้อง แต่มีกลไกในการท้าทายและแก้ไขการดำเนินการที่ผิดพลาด
ช่วงเวลาท้าทาย: ช่วงเวลาท้าทายคือกรอบเวลาที่กำหนดซึ่งช่วยให้ผู้ตรวจสอบสามารถตรวจสอบและยืนยันความถูกต้องของการอัปเดตสถานะ ซึ่งเป็นสิ่งสำคัญในการรับรองความปลอดภัยและความยุติธรรมของระบบ
หลักฐานการจำลอง: หลักฐานการจำลองพิสูจน์ว่าข้อมูลบางอย่างถูกจัดเก็บไว้ในตำแหน่งที่ระบุ ณ เวลาใดเวลาหนึ่งและมีการทำสำเนาหลายชุด
การพิสูจน์อวกาศ-เวลา: การพิสูจน์อวกาศ-เวลาเป็นกลไกการพิสูจน์ที่รวมพื้นที่ (การจัดเก็บ) และเวลา (การจัดเก็บอย่างต่อเนื่อง) ซึ่งบ่งชี้ว่าข้อมูลบางอย่างยังคงถูกเก็บไว้เป็นระยะเวลาหนึ่ง
บทสรุป
ในเดือนมกราคม 2021 Buterin ผู้ก่อตั้ง Ethereum กล่าวว่า ในระยะสั้น Optimistic-Rollups จะชนะเนื่องจากความเข้ากันได้ของ EVM และ ZK-Rollups จะมีแนวโน้มที่จะชนะมากกว่าในกรณีการใช้งาน เช่น ธุรกรรมธรรมดา ๆ ในระยะกลางถึงระยะยาว เมื่อเทคโนโลยี zk-SNARK พัฒนาขึ้น ในที่สุด ZK-Rollups ก็จะชนะทุกกรณีการใช้งาน
Chainyuan Technology เป็นบริษัทที่มุ่งเน้นด้านความปลอดภัยบล็อกเชน งานหลักของเราประกอบด้วยการวิจัยด้านความปลอดภัยบล็อคเชน การวิเคราะห์ข้อมูลออนไลน์ และการช่วยเหลือช่องโหว่ด้านสินทรัพย์และสัญญา และเรายังกู้คืนสินทรัพย์ดิจิทัลที่ถูกขโมยจำนวนมากสำหรับบุคคลและสถาบันได้สำเร็จ ในเวลาเดียวกัน เรามุ่งมั่นที่จะจัดทำรายงานการวิเคราะห์ความปลอดภัยของโครงการ การตรวจสอบย้อนกลับแบบออนไลน์ และบริการให้คำปรึกษา/สนับสนุนทางเทคนิคแก่องค์กรอุตสาหกรรม
ขอบคุณสำหรับการอ่าน เราจะมุ่งเน้นและแบ่งปันเนื้อหาความปลอดภัยของบล็อกเชนต่อไป