กลไกการทำงานของ zkSync นั้นแยกออกมา มันไม่ได้ "หยุดทำงาน" บ่อยนัก

ฉันเห็นเพื่อนคนหนึ่งบ่นว่า @zkSync หยุดทำงานตลอดเวลา อันที่จริง การเรียกมันว่า "ดาวน์ไทม์" นั้นเป็นการพูดเกินจริงไปเล็กน้อย พูดให้แม่นยำ มันคือ "การสร้างบล็อกที่ไม่เสถียร"

โดยพื้นฐานแล้ว เวลายืนยันสุดท้ายของธุรกรรมที่ส่งโดย Sequencer จะไม่เสถียร แต่การรับรู้ของผู้ใช้ไม่ชัดเจนที่ส่วนท้ายแบบโต้ตอบ เนื่องจากการออกแบบการยืนยันของ zkSync มีความล่าช้าในการยืนยัน

ความไม่แน่นอนในขั้นตอนการกระจายอำนาจในอนาคตจะบรรเทาลง ฉันวาดเวิร์กโฟลว์เพื่อหารือกับคุณ

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

ฉันใช้เวลาประมาณ 30 นาที-1 ชั่วโมงในการสังเกตการเปลี่ยนแปลงสถานะจาก Commit เป็น Verified จากเบราว์เซอร์อย่างเป็นทางการ ในขณะที่ DApp แบบโต้ตอบฝั่งผู้ใช้แทบจะไม่ได้รับผลกระทบจากสิ่งนี้

บทความนี้มุ่งเน้นไปที่ตรรกะพื้นฐานของเทคโนโลยี zkSync ทางวิทยาศาสตร์ที่เป็นที่นิยม และทำให้คุณเข้าใจ zkSync อย่างชัดเจน

ตามที่แสดงในเวิร์กโฟลว์ zkSync จะทำงานตามขั้นตอนต่อไปนี้:

  1. ผู้ใช้ส่งธุรกรรมแบทช์ไปยัง Sequencer ผ่านการส่งต่อรีเลย์

  2. Sequencer มีหน้าที่รับผิดชอบในการเรียงลำดับธุรกรรม การรวมและการจัดกลุ่มเป็นชุดใน Merkle tree

  3. zkPorter สร้างใบรับรอง zk-SNARK จาก Merkle tree ใบรับรอง zk-SNARK จะถูกส่งต่อไปยัง L2 Validators และ L1 main chain ตามลำดับเพื่อสร้าง Commit Hash Validator มีหน้าที่รับผิดชอบในการตรวจสอบ

  4. ความถูกต้องของหลักฐาน zk-SNARK ถูกส่งไปยัง L1 smart contract เพื่อสร้าง Verify Hash

  5. zkSync smart contract บน L1 ตรวจสอบการจับคู่ของ Commit Hash และ Verify Hash

  6. หลังจากการจับคู่สำเร็จ ธุรกรรมที่ได้รับการยืนยันจะถูกสร้างขึ้นและธุรกรรมจะถูกอัปโหลดไปยังเชนในที่สุด

  7. หากการจับคู่ล้มเหลว Commit Hash เดิมจะใช้งานไม่ได้ และ Sequencer จะส่งแบทช์ใหม่และดำเนินการตามขั้นตอนอีกครั้ง

จำเป็นต้องเน้นที่นี่ว่า zkSync ใช้ "การคอมมิตแบบสองเฟส (2PC)" และสุดท้ายกำหนดชุดธุรกรรมทางกฎหมายผ่านการตรวจสอบแฮชในสองขั้นตอนของคอมมิตแฮชและตรวจสอบแฮช

ในแง่หนึ่งสิ่งนี้สามารถรับประกันความสอดคล้องของข้อมูลและความปลอดภัยในกระบวนการการทำงานของระบบในความเข้าใจส่วนตัวของฉันมันเป็นการแสดงแนวคิดของการกระจายอำนาจที่ จำกัด สององค์ประกอบของระบบ Sequencer และ Validator และสมควร ของการสรรเสริญ

เวิร์กโฟลว์ของ zkSync มีบทบาทหลักสี่ประการ ได้แก่ Relay, Sequencer, zkPorter และ Validator จะมี "ปัจจัยที่ไม่เสถียร" มากมายในการทำงานประสานงาน

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

สำหรับความซับซ้อนของอัลกอริทึม นี่คือชะตากรรมของห่วงโซ่ zkSync และนักพัฒนาระบบนิเวศจำเป็นต้องทำงานอย่างหนักเพื่อเอาชนะมัน สำหรับความเสถียรของโหนดข่าวกรองและการทำงานร่วมกัน ฉันคิดว่าหลังจากการมาถึงของขั้นตอนการกระจายอำนาจในอนาคต มันจะได้รับการปรับปรุงอย่างมีประสิทธิภาพ ตรรกะก็ง่ายเช่นกัน:

โหนดแบบกระจายหลายโหนดสามารถหลีกเลี่ยงความไม่เสถียรของเครือข่ายที่เกิดจากความล้มเหลวเพียงจุดเดียว และระบบมีความทนทาน กลไกจูงใจโทเค็นแบบกระจายสามารถให้แหล่งที่มาของแรงจูงใจแก่นักพัฒนาเพื่อรักษาความเสถียรของโหนด

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

กล่าวโดยสรุป หากคุณอธิบายกระบวนการทำงานทั้งหมดของ zkSync และเข้าใจความซับซ้อนทางเทคนิคของเลเยอร์ 2 และกลไก "พิเศษ" ที่ออกแบบมาเพื่อความปลอดภัยมากขึ้น คุณจะสามารถเพิ่มความมั่นใจในเส้นทางทางเทคนิค L2 ได้

ดูต้นฉบับ
เนื้อหานี้มีสำหรับการอ้างอิงเท่านั้น ไม่ใช่การชักชวนหรือข้อเสนอ ไม่มีคำแนะนำด้านการลงทุน ภาษี หรือกฎหมาย ดูข้อจำกัดความรับผิดชอบสำหรับการเปิดเผยความเสี่ยงเพิ่มเติม
  • รางวัล
  • แสดงความคิดเห็น
  • แชร์
แสดงความคิดเห็น
0/400
ไม่มีความคิดเห็น
  • ปักหมุด