עדכון זה נכתב וסופק על ידי המפתח הראשי של Litecoin MimbleWimble דיוויד בורקט.
————
בְּדִיקָה
Quarkslab סיימו את הביקורת שלהם על הקוד! 🚀
אני אפגש איתם ביום שישי כדי לדון בממצאים שלהם. לאחר מכן, הם יעבדו על פרסום דוח הביקורת בפוסט בבלוג, שאותו אני מצפה לחלוק עם כולכם.
ממצאים
מכיוון שתוכלו לקרוא את הדו"ח המלא ברגע שהם ישתפו את הפוסט בבלוג שלהם, אני לא אצלול לעומק הממצאים כאן. אבל במבט מהיר:
נמצאה בעיה קריטית אחת שנבעה מטעות בעת מיזוג קוד MWEB וקוד v0.21.1 יחד. אז כאשר העתקתי את השינויים לקוד המהדורה האחרון, פספסתי שורת קוד אימות קטנה אך מכרעת שיכל לנצל על ידי תוקף זדוני כדי לגרום לשיבושים רציניים בשרשרת 😳
זה אומר לנו…
נוכל באמת להפיק תועלת מכיסוי בדיקות פונקציונלי טוב יותר סביב היגיון האימות שלנו כדי לוודא שנתפוס בעיות דומות בעצמנו במהדורות עתידיות.
עלינו לחשוב על הוספת כמה תהליכים שנוכל לעקוב אחריהם כדי למזער את האפשרות שזה יקרה. זה יכול להיות תיעוד של כל השינויים, או ש-2 אנשים יבצעו את המיזוג בנפרד ולאחר מכן השוואת תוצאות, או שינוי באופן שבו אנו ניגשים לסקירות הקוד.
הביקורת הייתה רעיון ממש טוב (תודה Quarkslab!)
היו גם כמה ממצאים קטנים יותר וכמה הצעות נהדרות כיצד נוכל לשפר את האיכות והבטיחות של הקוד. בסך הכל, הם התרשמו מאיכות הקוד, שהיה מרגש לשמוע 🥳
v0.21.1 (Taproot) שחרור
תהליך השחרור 5 שירשנו מביטקוין יכול להיות די כואב. הוא משתמש ב-gitian 4 כדי לבנות קבצים בינאריים ניתנים לחזרה ודטרמיניסטיים מקוד המקור. המשמעות היא שאנשים מרובים יכולים לבנות את הקוד על מכונות שונות (ואפילו מערכות הפעלה שונות) ועדיין לקבל את אותם קבצי שחרור מדויקים. לאחר מכן, כולנו יכולים להשוות את התוצאות ולאחר מכן לחתום על הפרסום, לאשר שכולנו מסכימים שהמהדורה שפורסמה בטוחה ומדויקת.
יש הרבה קסם בזה כדי לגרום לזה לעבוד, מה שמוביל לחוויה שלוקחת זמן ולעתים קרובות מתסכלת (במיוחד עבור n00bs כמוני). אז ממש גררתי את הרגליים על זה 😬
. לבסוף הכרחתי את עצמי לדחוף את זה לפני כמה ימים, ואחרי שנלחמתי עם כמה סקריפטים מיושנים, הצלחתי לבנות את כל הקבצים הבינאריים בהצלחה. אסיים לחתום על אלה מחר ואמסור אותם למפתחים אחרים כדי לחזור על הבנייה ולאמת את התוצאות.
MWEB Testnet
אחרי המון הבטחות ואחר כך חזרות, החלטתי סוף סוף לשחרר קובץ בינארי המאפשר למשתמשים לא טכניים לנסות את רשת הבדיקות של MWEB. יש לי רק את מהדורת Windows זמינה כרגע, אבל אני אעבוד על קבלת קבצים בינאריים עבור Mac OS X ביום שישי. משתמשי לינוקס יכולים לבנות משלהם, כי אני עייף 😝
קישור: גרסה 26 של MWEB Testnet
הנה מפתח ה-gpg שלי 8 אם תרצה לאמת תחילה את הקבצים הבינאריים (כדאי לך). אוסיף הוראות כיצד לעשות זאת בדף השחרור כשיהיה לי זמן.
אין מתקין, כי לא רציתי שמישהו יחליף בטעות את ארנק ה-litecoin האמיתי שלו, אז כדי להשתמש בו:
- הורד (ואמת) את קובץ ה-zip
- חלץ את
litecoin-63fe928e4e8a
תיקייה - מצא ורוץ
litecoin-qt.exe
מתוך תיקיית הפח
זה יעשה כברירת מחדל שימוש ברשת הבדיקות MWEB, אותה תוכל לדעת לפי הלוגו הלא-צבעוני וה-
(mwebtest)
בשורת הכותרת. אלה משתמשים במטבעות mwebtest, לא במטבעות litecoin בפועל.
אז בבקשה אל תנסה להשתמש בזה עם כסף אמיתי.
או שתצטרך לכרות בלוק כדי לקבל מטבעות של mwebtest (תוכל לכרות בלוק תוך זמן קצר), או למצוא מישהו שייתן לך כמה. אם מישהו מוכן להקים ברז, יש לי המון מטבעות שתוכל לקבל 🙂
כמו כן, אם למישהו מתחשק לכתוב מדריך כיצד ליצור כתובות חמקנות, לשלוח אליו ולקבל ממנו, וכל הדברים המהנים שמתלווים לכך, אתה תהיה האדם החדש והאהוב עליי.
לוח הזמנים שנותר
אתה פחות או יותר חזרת לחכות לי שוב ⏱
בזמן שאני מסיים ליישם הצעות ביקורת ואז לדחוף את התהליך המייגע של מיזוג, תיאום ביקורות סופיות, כתיבת הערות שחרור, ולבסוף מתחילים את הבנייה האהובה של gitian. אני לא יודע בדיוק כמה זמן זה ייקח, אבל השמועה אומרת שזה גדל ביום שלם לכל אדם ששואל אותי 😜
איזה מסע ארוך זה היה 😅
נ.ב. https://wenmweb.com 132 מעודכן.