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

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

אבני בניין עם מצופים

ה- nonce הוא מספר 32 סיביות. הוא נשאר בכותרת החסימה יחד עם נתוני מפתח אחרים, כגון יעד הקושי וחותמת הזמן. כאשר כורים בונים בלוקים, הם בוחרים באופן אקראי בלאץ ‘ומכניסים אותו לכותרת הבלוק ויוצרים חשיש כותרת חדש.

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

מבנה חסימות

גודל 32 הסיביות של ה- nonce פירושו שיש ארבעה מיליארד שילובים אפשריים. למרות טכנית, זה הרבה יותר גבוה בגלל משהו שנקרא נונס נוסף. זהו שטח נוסף לאירוע ארוך יותר, כלומר אתה יכול לקבל עשרות מיליארדי שילובים.

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

הקשר לקושי בכרייה

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


בעת כריית ביטקוין, הקושי מתאים את כל חסימות 2016. זה מסתדר כל שבועיים. עם זאת, לחסימות PoW אחרות יש התאמות מהירות יותר. למשל, ליטקוין, בגלל זמן החסימה הקצר יותר, הקושי שלו מסתגל כל שלושה וחצי ימים. לעומת זאת, Digibyte מתאים את הקושי שלו בכל בלוק בזמן אמת.

מדוע ההתאמה חשובה

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

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

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

הגנה על ידי אלגוריתמים מאובטחים

חוסנו של האלגוריתם SHA-256 מונע מכורים אפשרות להאיץ ולרמות את תהליך הניסוי והטעייה. SHA-256 שייך למשפחת SHA-2 של אלגוריתמי hash מאובטחים ושוחרר על ידי ה- NSA בשנת 2001. אם אלגוריתם זה היה נשבר, כפי שקרה למחלקה SHA-1 של אלגוריתמי hash הצפנתיים, אז תהליך ה- PoW היה מתערער..

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

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

פונקציית Hash

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

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

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

ערך הוכחת העבודה

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

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

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

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me