שדרוג Glamsterdam של את'ריום לא יופעל כרגע ברשת הבדיקות Hoodi. הסיבה אינה רק האפשרות שפעולות יעלו יותר: שינוי באופן שבו מחושבות עלויות גז עלול לשנות את התנהגותם של חוזים חכמים שכבר נפרסו, משום שחלקם מסתמכים על הנחות קבועות לגבי כמות הגז הדרושה לפעולות מסוימות. קרן את'ריום הודיעה ש-Hoodi לא תעבור את השדרוג עד שהבעיות ייפתרו.
8
מה משנים EIP-8037 ו-EIP-8038?
EIP-8037 מעלה את עלות יצירת המצב — הנתונים הקבועים שהרשת שומרת — ומציע מנגנון נפרד לחיוב על העלויות האלה. EIP-8038 משנה את עלויות הגז של גישה למצב קיים. יחד, ההצעות משנות את אופן החיוב על פעולות מסוימות, שעלויותיהן משמשות חלק מהחוזים כבסיס לתכנון ולחישוב.
20
23
8
העניין הוא שחוזים יכולים להקצות כמות מוגדרת של גז לפעולה, או לבדוק כמה גז נותר, כדי להחליט אם פעולה הצליחה, נכשלה או צריכה להתבצע שוב. אם כללי החיוב משתנים, ההנחות האלה עלולות לא להתאים עוד למציאות — במיוחד כשקריאה לחוזה אחר נכשלת.
6
19
איך הנחות לגבי גז עלולות לשנות את התנהגות החוזה
- הקצאת גז קבועה: חוזה עשוי להעביר לפעולה אחרת כמות גז שנקבעה לפי העלות שהייתה לה בעבר. אם הפעולה נעשית יקרה יותר, ייתכן שלא יישאר לה מספיק גז כדי להסתיים. קרן את'ריום ציינה שיש פרויקטים שמסתמכים על הנחות לגבי עלויות גז שההצעות החדשות ישנו.
8
9
- בדיקות באמצעות
gasleft(): לפי ChainSecurity, הפונקציה gasleft() מדווחת על יתרת גז הביצוע של מסגרת הפעולה. חיובים על יצירת מצב יכולים להיגרע גם מיתרה זו אם מאגר הגז הנפרד למצב מתרוקן. החברה מזהירה מפני ניסיון להסיק מסיבת הכישלון של קריאה רק לפי כמות הגז שנותרה: חוזה מתווך שמבצע ביטול או החזרת גז עלולים לשבש את המסקנה.
19
- טיפול בכישלון: לפי דיווח על ממצאי ChainSecurity, שינויי החיוב עלולים לגרום לחלק מהחוזים לרשום פעולה ככושלת באופן קבוע, במקום לבטל אותה בצורה נקייה או לאפשר ניסיון חוזר.
41 אם הלוגיקה הזאת חוסמת משיכה בחוזה שאי אפשר לשנות, הכספים עלולים להפוך לבלתי נגישים. זו אפשרות שהועלתה — לא עדות לכך ששדרוג ברשת הראשית כבר נעל כספים.
11
41
קרן את'ריום מתייחסת לשמונה הנחות הקשורות לגז, או "אינווריאנטים", שחלק מהחוזים עשויים להסתמך עליהן. אין פירוש הדבר שמדובר בשמונה דרכי כשל ודאיות שמשפיעות על כל חוזה באת'ריום. הקרן פרסמה דוגמאות ושאלות לבדיקה עצמית כדי לסייע לצוותים לבחון את הקוד שלהם.
2
8
מה נמצא — ומה המספר 13 אומר
אתר ethereum.org דיווח שזוהו 13 דוגמאות ברשת הראשית, ובסיקור נוסף תוארו 13 חוזים פרוסים שהלוגיקה שלהם לטיפול בכישלונות עשויה להיות מושפעת.
13
38 הדוגמאות ממחישות שהסיכון לתאימות אינו תיאורטי בלבד. הן אינן אומרות ש-13 חוזים כבר נכשלו: החשש הוא לאופן שבו הם עלולים להתנהג אם השינויים המוצעים יופעלו.
8
38
המקורות הזמינים אינם כוללים רשימה מלאה שניתן לאמת באופן עצמאי של כל 13 החוזים או של תרחישי הכשל שלהם. גם אין לראות בשמונה ההנחות הבטחה שכל החוזים נבדקו.
איך קרן את'ריום מגיבה
בעדכון מ-6 בנובמבר הודיעה הקרן שהיא עובדת עם חברות אבטחת החוזים ChainSecurity ו-Dedaub, לצד בדיקות פנימיות. היא גם ביקשה ממפתחים וממבקרים לבדוק אם הפרויקטים שלהם מסתמכים על ההנחות שעלולות להשתנות.
8 חומרי הקרן כוללים דוגמאות והנחיות לבדיקה עצמית, ודיווח מסר את כתובת הדוא"ל glamsterdam@ethereum.org לצוותים שעשויים להיות מושפעים.
2
הקרן מדגישה גם את הצורך בבדיקות ברמת כל פרויקט. ביקורת מערכתית אינה יכולה להבטיח שכל יישום והלוגיקה שלו לטיפול בכישלונות בטוחים; על צוותי הפרויקטים לבדוק את החוזים שלהם מול כללי הגז המשתנים.
8
33
כך השתנה לוח הזמנים
לפי הדיווחים, Glamsterdam הופעל ברשת הבדיקות Sepolia ב-6 באוקטובר.
6 ב-13 באוקטובר פרסמה ChainSecurity את הניתוח שלה על חשבונאות הגז.
19 ב-22 באוקטובר דחתה קרן את'ריום את ההפעלה המתוכננת של השדרוג ב-Hoodi, שנקבעה ל-26 באוקטובר, ולא מסרה אז מועד חלופי. הדחייה כללה גם העלאה מתוכננת של מגבלת הגז ב-Hoodi ל-200 מיליון.
34
49
ב-6 בנובמבר אישרה הקרן שהמפתחים לא יפעילו את השדרוג ב-Hoodi עד שהסיכונים שזוהו ייפתרו.
8 לכן, נכון לעדכונים שפורסמו, מדובר בהשהיה שנועדה לאפשר בירור של סוגיות אבטחה — ולא בהפעלה שנקבעה מחדש. המקורות הזמינים גם אינם מבססים שתוכנית התאוששות מאושרת כוללת הארד פורק חירום לאחור.