הגדלת הסכמה עבור ארגונים: הסבר על האלגוריתם של IBFT

בלוג 1חדשות מפתחיםיזם הסבר על בלוקצ’יין אירועים וכנסים לחץעלונים

הירשם לניוזלטר שלנו.

כתובת דוא”ל

אנו מכבדים את פרטיותך

HomeBlogEnterprise Blockchain

הגדלת הסכמה עבור ארגונים: הסבר על האלגוריתם של IBFT

כיצד סובלנות תקלות ביזנטיות באיסטנבול (IBFT) משפרת את הסופיות ומגדילה את התפוקה ברשתות אתריום פרטיות. מאת ConsenSys 22 ביוני 2018 הוצג ב -22 ביוני 2018

גיבור אתריום ConsenSys

אלגוריתמים של קונצנזוס הם אחד מחידושי הליבה של בלוקצ’יין, ועם זאת גם אחד המבלבלים ביותר. Satoshi Nakamoto יצר גרסה של Proof of Work (PoW) שהוטמעה כאמצעי לאבטחה ואימות בו זמנית של עסקאות ביטקוין. קהילת הבלוקצ’יין בנתה על חזון הליבה הזה ליצור מרק אלפביתי של הוכחת ההימור (PoS), הוכחת הסמכות (PoA), PBFT (מעשי תקלות ביזנטיות מעשי) ורבים אחרים שכולם נועדו לבנות קונצנזוס בהפצה מבוזרת. מערכת, ויוצר מקור האמת היחיד שהופך את הבלוקצ’יין לכל כך חשוב.

IBFT (איסטנבול תקלות ביזנטיות באיסטנבול) הוא מנגנון קונצנזוס המהווה אלטרנטיבה להוכחת עבודה ברשת את’ריום. כמו אלגוריתמים אחרים, IBFT מבטיח הזמנה אחת מוסכמת לעסקאות בבלוקצ’יין, ומספק יתרונות נוספים עבור ארגונים, כולל סופיות התיישבות. IBFT היה מיושם לראשונה בגית על ידי חברת Amis Technologies, וזמן קצר לאחר מכן מיושם במניין.

לפני שנכנסים להפעלת מנגנון הקונצנזוס של IBFT, כדאי להזכיר מתי ולמה רוצים להשתמש ב- IBFT. בבלוקצ’יין ציבורי, סביר להניח שהתשובה הקצרה לא תעשה זאת. אבל כשמדובר בקונסורציום או חסימות פרטיות, IBFT מתחיל להראות מושך למדי.

אלגוריתם ה- PoW הוא יקר, הן בחומרה והן בחשמל. עלות זו מכוונת, כדי למנוע ממישהו להשתלט בקלות על הרשת, ולכן PoW מתאים מאוד למצבים עם ביזור מלא בו כל אחד (כולל תוקפים) יכול להשתתף. צמתים בקונסורציום / רשתות פרטיות המשמשות ארגונים, לעומת זאת, מהימנים יותר באופן מהותי מזה של רשת ציבורית. ככזה, מנגנון הקונצנזוס של PoW עלול להכביד יתר על המידה, ומנגנונים אחרים עשויים לספק אמון “מספיק” להפעלת מערכת מבוזרת..

הוכחת יתרה, כמו כן, עשויה להיות פחות רלוונטית עבור ארגונים, מכיוון שתשלום עבור דלק חשוב פחות ברשת מורשית. מכיוון שצמתים אינם (בהכרח) צריכים לשמור על מטבע ברשת, PoS יציג דרישות זרות.

בהתחשב בפשרויות אלה, הוכחת הרשות (PoA) מתגלה כפתרון הטוב ביותר האפשרי, תוך שימוש במערכת לפיה לצמתים ברשת מוקצית הפריבילגיה לייצר חסימות חדשות עבור הרשת באמצעות מערכת סביבה או מערכת שרירותית אחרת..

IBFT הוא אחד הטעמים הרבים של PoA ומספק את היתרונות הבאים:

  • סופיות חסימות מיידית. יש רק גוש אחד שהוצע בגובה שרשרת נתון. השרשרת הבודדת מסירה לפיכך מזלגות, חסימות דודים, ואת הסיכון שניתן “לבטל” עסקה פעם אחת בשרשרת במועד מאוחר יותר..
  • זמן מופחת בין חסימות. המאמץ הדרוש לבניית ואימות בלוקים מצטמצם משמעותית (בפרט ביחס ל- PoW), מה שמגדיל מאוד את תפוקת השרשרת..
  • שלמות נתונים גבוהה וסובלנות תקלות. IBFT משתמשת בקבוצת מאמתים כדי להבטיח את תקינות כל חסימה המוצעת. רוב-על (~ 66%) מאמתים אלה נדרשים לחתום על החסימה לפני הכנסתם לשרשרת, מה שמקשה מאוד על זיוף בלוקים. ‘המנהיגות’ של הקבוצה מסתובבת גם לאורך זמן – להבטיח שצומת פגום לא יכול להשפיע לטווח ארוך על השרשרת.
  • גמיש מבחינה תפעולית. ניתן לשנות את קבוצת המאמתים בזמן, ולהבטיח שהקבוצה מכילה רק צמתים מלאי אמון.

כאן סיפקנו סקירה של IBFT, במונחים לא טכניים בעיקר. לחלק מההצעות המקוריות של IBFT, תוכל לסקור את ה- EIP ב- GitHub:

להמשך מאמר זה, נחקור את השיקולים הטכניים יותר של IBFT, ונשוחח על רבים מהמושגים שנמצאו ב- EIP וכי למדנו באמצעות המחקר שלנו..

הערה: ניתן למצוא קוד IBFT גם בבקשה למשוך go-ethereum # 16385.

מבצע

מנגנון הקונצנזוס של IBFT כולל את המרכיבים הבאים:

  1. א PBFT מודל קונצנזוס קבוצתי השראה.
  2. תהליך שבאמצעותו ניתן להוסיף / להסיר חברים מקבוצת האימות.

IBFT מחייב את עיבוד הכותרת החסימה (בעדינות) כדי לתמוך בכל ההיבטים של היכולת.

מודל קונצנזוס קבוצתי

סקירה כללית

IBFT משתמשת במאגר צמתים מאמתים (Validators) הפועלים ברשת Ethereum כדי לקבוע אם חסימה מוצעת מתאימה לתוספת לשרשרת..

צומת אחד של המאמתים נבחר באופן שרירותי כמציע, והוא אחראי על בניית בלוק במרווח החסימה ושיתוף הבלוק האמור עם הקבוצה. אם רוב-על של המאמתים מחשיבים את החסימה כתקפה, היא מתווספת לבלוקצ’יין.

בסיום סבב הקונצנזוס, המאמתים רשאים לבחור מציע חדש אשר יהיה אחראי לספק לחסימת המועמדים במרווח החסימה הבא..

מנגנון הקונצנזוס הוא מכונת מדינה מסונכרנת אשר אחראית להבטיח שכל המאמתים מצרפים את אותו הבלוק לשרשרת באותו הגובה..

אם חסם נכנס להכניסה, המציע משתנה והתהליך מתחיל מחדש.

כדי להבטיח שניתן לחבר רק בלוק אחד למכונת המדינה, IBFT מונע שינוי של החסימה המוצעת ברגע שרוב-על של מאמתים הסכימו להכנסתה (אך לא ביצעו את העבודה האמורה), תהליך זה מכונה ‘נעילת חסימות’..

מנגנון הקונצנזוס של IBFT מציע יציבות מערכת בתנאי שפחות מ -1 / 3 מהצמתים המאמתים מתנהגים בצורה לא נכונה (בגלל פגיעה או בגלל קוד פגום). כְּלוֹמַר. כדי לסבול צמתים F פגומים על קבוצת האימות להכיל לפחות 3F + 1 צמתים (יותר מכך אינו מגביר את שלמות המערכת).

הערה: כאן F מרמז על מספר הצמתים הפגומים שעוברים על ידי המערכת.

מכונת מצבים

מכונת המדינה של IBFT

מדינות
  • ממתין להצעה. המאמת ממתין לחסום חדש שיסופק על ידי המציע הנוכחי. אם המאמת הוא המציע לסבב זה, הם מכינים את החסימה המוצעת ומעבירים אותה בהודעה מוכנה מראש.
  • מכין. קיבל חסימה מוצעת (תקפה) והודיע ​​על כך לעמיתי המאמת; מחכה כעת לעמיתי מאמת שיידעו על קבלתם את החסימה.
  • מוּכָן. קיבל אישור של חסימת מאמת-עמיתים ומחכה שהם יהיו בעמדה דומה. בשלב זה החסימה המוצעת ‘ננעלה’, ולא ניתן להחליף אותה עד שנעשה ניסיון הכנסה.
  • שינוי עגול. תם הזמן של הסבב לפני שהושגה הסכמה או שהבלוק לא הצליח להכניס. המתן שכל המאמתים יסכימו למספר הסיבוב הבא.
מעברים
  1. אהמתנה הצעה → מכינה. בקבלת בלוק חדש (הכנת הודעה) מהמציע (כלומר החסימה תקפה בתוכן, כמו גם נקודת הכנסת השרשרת המוצעת).
  2. ממתין להצעה → שינוי עגול. ההצעה שהתקבלה לא הייתה חסימה תקפה על פי מערכת כללים נתונה (למשל הצעה לא חוקית, מספור עגול שגוי).
  3. הכנה → מוכנה. בקבלת הודעות 2F + 1 (הכן הודעה) מצד עמיתים המאמתים המציינים כי החסימה המוצעת מתאימה להכנסה.
  4. מוכן → ממתין להצעה. בקבלת הודעות 2F + 1 (הודעת התחייבות) מצד עמיתים מאמת המעידים שהם מוכנים לצרף את החסימה לרשת. במעבר מתבצע תהליך הצמדת החסימה לשרשרת (הצלחה).
  5. מוכן → שינוי עגול. לפי מוכן->בהמתנה להצעה, הכנסת החסימה נכשלה.
  6. שינוי עגול → ממתין להצעה. 2F + 1 של מאמתים מסכימים להשתמש במספר הסיבוב הבא.

הערה: כל המעברים ל- “RoundChange” מביאים לכך שמאמת מעביר הודעה “RoundChange” לעמיתי המאמת שלו..

חסום נעילה

IBFT מחייב כי מזלגות לא ייווצרו. לשם כך, לאחר שהרוב הסכים לחסימה (כלומר בכניסה למצב Ready) הוא הופך ל”נעול “.

המשמעות היא שלא יחשבו הכניסה של בלוקים אחרים עד לנסות ניסיון להוסיף בלוק זה לשרשרת. כך שהבלוק מוכנס בהצלחה (ברגע שמתקבלות מספיק הודעות התחייבות, בסיבוב זה או לאחר מכן), או שהחסימה נכשלת, הוא מושלך, וחסימה חדשה מוצעת בגובה השרשרת הנוכחי..

חברות בקבוצת אימות

חברי קבוצת האימות עשויים להשתנות לאורך זמן באמצעות מנגנון הצבעה. ניתן להוסיף או להסיר חברים באמצעות הצבעה ברוב (קומה (N / 2) + 1); כל קול נקלט בכותרת הבלוק.

כל צומת ברשת (כולל צמתים שאינם מאמתים) אחראי על מעקב אחר טבלת ההצבעה עבור כל מאמת כדי לקבוע את המאמתים הנוכחיים ולהבטיח כי חתימות על בלוקים ממוקשים נופלות בתוך הקבוצה הצפויה.

בהינתן שכל הצבעה כלולה בכותרת הבלוק, רק המציע לסיבוב נתון מסוגל להצביע. לכן חשוב, אם יש להוסיף / להסיר צמתים בזמן, כי התפקיד המציע יעודכן על בסיס קבוע.

ברגע שצומת מגיע לקולות הרוב, הם מיד מצטרפים / עוזבים את קבוצת המאמתים.

IBFT מכיר בעידן ההצבעה, המגדיר נקודה בה כל הקולות שטרם הגיעו לרוב מוסרים, מה שמאלץ להפעיל מחדש את מצב ההצבעה. זה מרמז על אימות הצבעות, על המאמתים להתחיל רק בעידן האחרון. כברירת מחדל, עידן ההצבעה מתרחש כל 30,000 בלוקים.

הצבעות מגדירות שינוי מדינה (כלומר מועמדים מקבלים הצבעה, מאמתים מקבלים הצבעה), אי הצבעה עבור צומת נתון מרמזת כי המאמת אינו מעוניין שהצומת ישנה מצב (אין צורך בהצבעה מפורשת כדי לשמור על המצב הקיים).

חסום רפקטור כותרת

כדי לתמוך ב- IBFT ב- Ethereum יש לבצע מספר שינויים בכותרות החסימה. שינויים אלה כוללים:

  • מוטב: מזהה את הצומת שעבורו מתבצעת הצבעה.
  • nonce: מציין את כיוון ההצבעה – AUTH או DROP.
  • mixHash: מספר קסם קבוע, המזהה שחסימה זו מאומתת על IBFT.
  • ommersHash: חייב להיות חשיש של קבוצה ריקה, מכיוון שאין חסימות אוממר בעת פעולה תחת IBFT.
  • חותמת זמן: חייבת להיות לפחות מרווח הזמן + חסימת ההורה.
  • קושי: יש למלא 0x0000000000000001.
  • extraData: מכיל נתונים ספציפיים של IBFT כולל רשימת כתובות מאמת, ProposerSeal (מזהה את המציע), CommittingSeals (רשימת המאמתים שדיווחו על ‘התחייבות’ בבלוק זה).

מכיוון שרשימת ה- CommittingSeals עבור כל מאמת שונה (באופן פוטנציאלי), חשוב שה- hash של הבלוק לא יכלול מידע זה – כלומר, למרות שלשתי בלוקים יש שדות CommittingSeals שונים, הם מייצגים את אותו מידע (כלומר, עסקאות וכו ‘זהות)..

סיכום

לסיום, IBFT הוא פתרון סובלני לתקלות ביזנטיות המציע סופיות עסקית מיידית המפחיתה את התשתית הנדרשת ש- PoW דורשת..

למרות שלא סביר שישמש אי פעם במנה אתריום (עם מערך השחקנים המשתתף הרחב והבלתי ידוע), הוא מציע תועלת משמעותית בשימוש ברשת פרטית שבה מאגר המאמת מהימן ואחראי עליו; הוא מספק פיתרון אידיאלי עבור רשת עם קצב קבוע ושיעור עיבוד עסקאות צפוי.

התהליכים שנחקרו במאמר זה נותנים ביטחון בכך שרשת המעסיקה IBFT תהיה סובלנית כלפי הצמתים הביזנטיים וניתן יהיה לשחזר אם נראה כי צמתים אלה מפעילים שליטה ברשת..

ניוזלטר הירשם לניוזלטר שלנו לקבלת החדשות האחרונות של Ethereum, פתרונות ארגוניים, משאבי מפתח ועוד. כתובת דוא”ל תוכן בלעדימדריך מלא לרשתות עסקיות של Blockchainלהנחות

מדריך מלא לרשתות עסקיות של Blockchain

מבוא לטוקניזציהוובינר

מבוא לטוקניזציה

העתיד של נכסים דיגיטליים של פיננסים ו- DeFiוובינר

עתיד האוצר: נכסים דיגיטליים ו- DeFi

מה זה אתריום ארגוניוובינר

מה זה אתריום ארגוני?

בנקים מרכזיים ועתיד הכסףנייר לבן

בנקים מרכזיים ועתיד הכסף

קומגו בלוקצ'יין למימון סחר בסחורותמקרה סטודנטים

קומגו: בלוקצ’יין למימון סחר בסחורות

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
map