חזרה להתחלה
חמישה רעיונות. אפשר להתחיל מכל אחד.

05 · Kaspa

איך Kaspa מתמודדת עם בלוקים שנוצרים במקביל?

Kaspa משתמשת ב-Proof of Work.

כורים מנסים למצוא בלוקים, בדיוק כמו ברשתות Proof of Work אחרות.

אבל מידע עדיין צריך זמן כדי לעבור בין המחשבים בעולם.

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

עכשיו יש שני בלוקים תקינים שנוצרו במקביל מבחינת מבנה הרשת.

Kaspa נבנתה כדי להתמודד עם המצב הזה בצורה שונה משרשרת בלוקים רגילה.

בשרשרת אחת, שני בלוקים יוצרים שני ענפים

ב-Blockchain רגיל כל בלוק ממשיך מבלוק קודם אחד.

אם שני בלוקים נוצרים מאותו עבר, נוצרים שני ענפים.

ב-Bitcoin שני הענפים יכולים להיות תקינים לזמן קצר.

ככל שנוספת עבודה, הרשת ממשיכה בענף התקין שבו הצטברה יותר עבודת Proof of Work.

הענף האחר לא חייב להיות “מזויף”.

הוא פשוט לא נשאר חלק מהשרשרת הראשית.

Kaspa יכולה להשאיר את שני הבלוקים מחוברים

ב-Kaspa בלוק חדש יכול להפנות ליותר מבלוק קודם אחד.

לכן בלוק שמגיע מאוחר יותר יכול להתחבר לשני הבלוקים שנוצרו במקביל.

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

המבנה הזה נקרא BlockDAG.

תחילה מופיע בלוק קודם A, ואחריו שני בלוקים שהתגלו באופן עצמאי, B ו-C, שכל אחד מהם מפנה אל A. בלוק מאוחר יותר D מפנה גם אל B וגם אל C. כל ארבעת הבלוקים נשארים מחוברים. החצים מצביעים מהבלוקים החדשים אל הבלוקים הקודמים שאליהם הם מפנים.

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

BlockDAG הוא לא שרשרת אחת

Blockchain רגיל נראה בעיקר כמו קו:

בלוק → בלוק → בלוק → בלוק

ב-BlockDAG יכולים להיות גם בלוקים מקבילים, ובלוקים מאוחרים יותר יכולים להתחבר לכמה מהם.

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

אבל שמירת שני הבלוקים עדיין לא פותרת הכול.

עדיין צריך סדר מוסכם

נניח שבבלוק אחד נמצאת עסקה:

נועה → דן: 30 KAS

ובבלוק שנוצר במקביל:

נועה → מאיה: אותם 30 KAS

אפשר לשמור את שני הבלוקים ב-BlockDAG.

אבל אי אפשר לקבל את שני התשלומים.

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

GHOSTDAG נותן לרשת דרך להגיע לאותו סדר

Kaspa משתמשת ב-GHOSTDAG כדי לקחת את הקשרים בתוך ה-BlockDAG ולהגיע לסדר מוסכם.

הוא מסתכל על מבנה הגרף ועל עבודת ה-Proof of Work שנעשתה.

כך Nodes שקיבלו את אותם בלוקים יכולים להגיע לאותה דרך לסדר אותם.

בפשטות:

BlockDAG שומר את העבודה שנעשתה במקביל.

GHOSTDAG עוזר לקבוע איך לסדר את ההיסטוריה הזאת.

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

GHOSTDAG לא הופך עסקה לא תקינה לתקינה.

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

מה Kaspa מרוויחה מזה?

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

Kaspa פועלת כיום בקצב יעד של 10 BPS - עשרה בלוקים בשנייה.

כלומר, בממוצע, בלוק חדש בערך כל 0.1 שנייה.

אבל 10 BPS לא אומר “פי 10 יותר עסקאות”

BPS אומר כמה בלוקים נוצרים.

הוא לא אומר כמה עסקאות יש בכל בלוק.

עסקאות שונות יכולות לדרוש כמויות שונות של מקום, חישוב ואחסון.

דוגמה פשוטה בלבד:

במסמכי Kaspa, בלוק שמלא רק בעסקאות פשוטות מסוג נפוץ של קלט אחד ושני פלטים יכול להכיל בערך 245 עסקאות.

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

245 × 10 ≈ 2,450 עסקאות בשנייה.

זהו תרגיל להבנת הקשר בין BPS ל-TPS - לא הבטחה של 2,450 TPS בכל מצב.

בביטקוין, בלוק שמכיל רק עסקאות פשוטות יכול להכיל בסדר גודל של כ־7,000 עסקאות.

אבל Bitcoin מכוונת בממוצע לבלוק אחד בערך כל 10 דקות.

הדוגמה ממחישה למה אי אפשר להשוות רשתות רק לפי מספר הבלוקים או רק לפי מספר העסקאות בבלוק.

צריך להסתכל על שני הדברים יחד - וגם על דרישות המחשבים שבודקים.

יותר בלוקים פירושם גם יותר עבודה לצמתים

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

לכן השאלה היא לא רק:

“כמה מהר אפשר ליצור בלוקים?”

אלא גם:

“כמה אנשים עדיין יכולים לבדוק את הרשת בעצמם?”

וזה מוביל ישירות לשאלת Decentralization - ביזור.

אז מה Kaspa עושה אחרת?

כורים עדיין משתמשים ב-Proof of Work.

בלוקים עדיין צריכים לעבור אימות.

אבל בלוקים שנוצרים במקביל יכולים להישאר מחוברים בתוך BlockDAG.

GHOSTDAG נותן להם סדר מוסכם.

והמבנה הזה מאפשר ל-Kaspa לעבוד בקצב בלוקים גבוה בלי לדרוש שכל העולם ישמע על בלוק אחד לפני שאפשר ליצור את הבא.

מקורות

המקורות החיצוניים באנגלית.