ترجمة آلية لم تُراجَع بعد. النص الإنجليزي هو المرجع في حال الاختلاف.
الملخص
إن OpenVM هو إطار عمل zkVM عالي الأداء وقابل للتخصيص والتوسع. قبل الإصدار 1.7.0 في سلسلة الإصدارات 1.x والإصدارات الأولية المتأثرة 2.0 و 2.1، لا يحظر `MemoryMerkleAir` صفوف توسعة Merkle عند `parent_height` = 0 أو أقل بينما `expand_direction` != 0. يمكن لمُثبِّت ضارين بناء شجرة فرعية أسفل ورقة ذاكرة وتبديل الملخصات داخل تلك الشجرة الفرعية لتغيير جذر الذاكرة المُلتزَم به دون عملية ذاكرة مقابلة. لا تزال الصفوف الاحتيالية تتوازن مع ناقلات Merkle والضغط ولا تتطلب عملية ناقل ذاكرة للورقة المُتغيرة. ونظرًا لأن جذر Merkle للذاكرة يربط حالة ذاكرة الآلة الافتراضية عبر حدود قطاعات الاستمرارية، فإن هذا يؤثر على سلامة إثباتات OpenVM التي تستخدم الذاكرة الدائمة. تم إصلاح هذه المشكلة في الإصدارات 1.7.0 و 2.0.0-rc.3 و 2.1.0-preview.
المعالجة
المراجع
- مرجعhttps://github.com/openvm-org/openvm/blob/v2.0.0-alpha/crates/vm/src/system/memory/merkle/air.rs
- مرجعhttps://github.com/openvm-org/openvm/blob/v2.0.0-beta.2/crates/vm/src/system/memory/merkle/air.rs
- مرجعhttps://github.com/openvm-org/openvm/blob/v2.1.0-dev.0/crates/vm/src/system/memory/merkle/air.rs
- مرجعhttps://github.com/openvm-org/openvm/commit/bb123f6073691bd2b794171c594264c77e45c376
- مرجعhttps://github.com/openvm-org/openvm/pull/148
- مرجعhttps://github.com/openvm-org/openvm/releases/tag/v1.7.0
- مرجعhttps://github.com/openvm-org/openvm/releases/tag/v2.0.0-rc.3
- مرجعhttps://github.com/openvm-org/openvm/releases/tag/v2.1.0-preview
- مرجعhttps://github.com/openvm-org/openvm/security/advisories/GHSA-396x-v8w4-9x82