שתף קטע נבחר

איך עובד ביטקוין?

בלוקצ'יין, כרייה והצפנת גיבוב: איך פועלת שרשרת הכסף שמאחורי המטבע הווירטואלי?

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

 

עוד כתבות באתר מכון דוידסון :

מדוע לעופות גדולים יש כנפיים שחורות

איך עובדת החלקת שיער?

האם גלולות למניעת הריון מעלות את הסיכון לסרטן?

הכול על מדע באפליקציה של מכון דוידסון - להורדה באייפון ובאנדרואיד

 

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

 

 (shutterstock) (shutterstock)
(shutterstock)

 

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

 

הגנה מפני נוכלים

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

 

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

 (צילום: shutterstock) (צילום: shutterstock)
(צילום: shutterstock)
 

  

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

 

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

 

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

 

פונקציית גיבוב

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

 

 

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

 

אם נרצה לגבב את המשפט הקצר "hello world" בעזרת פונקציית גיבוב בשם SHA1, הפלט יהיה: "2aae6c35c94fcfb415dbe95f408b9ce91ee846ed".

 

גם משפט הרבה יותר ארוך, למשל "This is an example for a very long sentence", יגובב לפלט באותו אורך: "87f481d970d74c1c187a7ac05f02ec15b1388317".

 

ואם נשנה רק את האות הראשונה במשפט מ-T גדולה ל-t קטנה, נקבל פלט שונה לחלוטין: "22fefffbfa3f7de072eda3f012dad1f303af117e".

 

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

 

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

 

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

 

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

 

שאלה של אמון

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

 

הדרך להפיכת המטבעות הווירטואליים לאמצעי תשלום יום-יומי ובטוח עדיין ארוכה, וכיום רוב מערכת הבנקאות והשווקים עצמם מתייחסים אליהם בחשדנות. החששות מתגברים אף יותר בשל חוסר היציבות של הביטקוין – לדוגמה, בשנת 2010 הסכימה פיצרייה לקבל עשרת אלפים מטבעות ביטקוין תמורת שני מגשי פיצה. שוויים העדכני של המטבעות הללו נאמד כעת (תחילת דצמבר 2017) בכ-244 מיליון שקל. רוב העסקים עדיין לא מקבלים ביטקוין כאמצעי תשלום, אם כי יש חברות שכבר מוכנות לבצע עסקאות באמצעותו, ואנשים פרטיים כבר מביעים בו אמון מספיק כדי להציע למכירה מכוניות, קרקעות ונדל"ן תמורת מטבעות ביטקוין.

 

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

 

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