רשת פרטית של Ethereum - צור בלוקצ'יין משלך של Ethereum!



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

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

מעוניין בפיתוח אתריום? בדוק את ה- Live .





הדרכת רשת פרטית של Ethereum

אלה הנושאים שאעסוק במדריך זה:

מהי רשת פרטית של Ethereum?

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



הדרכה פרטית וציבורית - אתריום רשת פרטית - אדוריקה

מדוע משתמשים בפרטי Ethereum?

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

תכונות של רשת פרטית Ethereum

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



  • הוא פועל כמאגר מבוזר
  • Blockchain ברשת הפרטית של Ethereum יכולה להכיל נתונים פרטיים (מכיוון שהרשת אינה ציבורית)
  • הגישה יכולה להיות מבוססת הרשאה
  • ביצוע עסקאות יכול להיות בחינם
  • ניתן להקצות חשבונות עם אתריםעל ידי עצמנו אשר אפילו לא דורש קניית אתרים וירטואליים

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

התקנת Ethereum באובונטו

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

כדי להתקין את Ethereum, הפעל את הפקודות הבאות במסוף:

$ sudo apt-get install software-properties-common $ sudo add-apt-repository -y ppa: ethereum / ethereum $ sudo apt-get update $ sudo apt-get install ethereum

בוצע! זה יתקין את Ethereum במערכת שלך.

נתחיל ביצירת הרשת הפרטית.

הדגמה: יצירת רשת פרטית של Ethereum וביצוע עסקה

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

יצירת חשבונות עבור רשת פרטית של Ethereum

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

$ mkdir private-ethereum $ cd private-ethereum

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

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

$ geth --datadir ./datadir חשבון חדש

להיכנס ל ביטוי סיסמה עבור כל חשבון כשנשאל. אל תשכח את משפט הסיסמה הזה!

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

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

יצירת קובץ בראשית

קובץ Genesis מכיל את המאפיינים המגדירים את Blockchain. קובץ Genesis הוא נקודת ההתחלה של Blockchain ולכן חובה ליצור את קובץ Genesis כדי ליצור Blockchain. עכשיו, בואו ניצור את בראשיתקוֹבֶץ.

ראשית, צור קובץ בשם genesis.json

ניתן להשתמש ב- system.exit (0) לסיום התוכנית.
$ nano genesis.json

ועכשיו העתיקו והדביקו את הקוד הבא בקובץ זה:

{'config': {'chainId': 2019, 'homesteadBlock': 0, 'eip155Block': 0, 'eip158Block': 0, 'byzantiumBlock': 0}, 'קושי': '400', 'gasLimit': ' 2000000 ',' alloc ': {' 82c440bba462220c9b54600e584373014706c177 ': {' balance ':' 100000000000000000000000 '},' 9db5b590fdecc10cdb04b85a3503e94e61b207ca ': {' balance ': '0000'} '000000000000000000000000000000000

הערה: בקוד שלעיל, החלף את הכתובת תחת להקצות קטע עם כתובת החשבונות שיצרת בשלב הקודם.

שמור אותו ויצא.

תן לי להסביר בקצרה את תוכן קובץ בראשית:

chainId - זהו מספר זיהוי השרשרת המשמש להבחנה בין Blockchains
homesteadBlock, eip155Block, eip158Block, byzantiumBlock - מאפיינים אלה קשורים למזלגות שרשרות וגירסאות. אנחנו לא צריכים את אלה לצורך ההדרכה שלנו, אז בואו נגדיר אותם ל -0.
קושי - המספר הזה מחליט כמה קשה יהיה הבלוקים שלי. עבור רשתות פרטיות, טוב להגדיר מספר נמוך יותר מכיוון שהוא מאפשר לך לכרות חסימות במהירות, מה שמביא לעסקאות מהירות.
gasLimit - מספר זה הוא כמות הגז הכוללת שניתן להשתמש בכל בלוק. אנחנו לא רוצים שהרשת שלנו תגיע לגבול, ולכן הגדרנו את זה גבוה.
להקצות - חלק זה משמש להקצאת אתרים לחשבונות שכבר נוצרו.

קובץ בראשית מוכן. עכשיו, הגיע הזמן להתחיל את הבלוקצ'יין.

יישום מדריך נתונים מיידי

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

$ geth --datadir ./myDataDir init ./genesis.json

על יישום מוצלח, אתה אמור לראות את הפלט הבא:

עם ספריית הנתונים המיידית, אנו יכולים כעת להפעיל את ה- Blockchain.

התחלת בלוקצ'יין פרטי של Ethereum

כדי להפעיל את Blockchain, הפעל את הפקודה הבאה:

$ geth --datadir ./myDataDir - קונסולת 1114 של networkid 11 >> Eth.log

בוצע! Ethereum Blockchain הפרטי שלך פועל.

בפקודה לעיל אנו שולחים את כל היומנים בקובץ נפרד שנקרא את.לוג . Geth ייצור אוטומטית קובץ חדש אם הוא לא נמצא.

הפלט של קוד זה אמור להראות בערך כך:

עכשיו, נכנסנו ל geth לְנַחֵם שם נוכל להפעיל פקודות עבור הבלוקצ'יין שלנו.

קריאת יומנים

בחלק הקודם ציינתי שאנחנו שומרים את היומנים בקובץ אחר. בחלק זה, אני אגיד לך כיצד לקרוא את היומנים מקובץ זה.

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

$ tail -f Eth.log

מבנה נתונים ואלגוריתם בג'אווה

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

ייבוא ​​חשבונות לרשת פרטית

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

כשאנחנו יוצרים חשבון, כל פרטי החשבון נשמרים ב- UTC קוֹבֶץ בספריה שהוזכרה במהלך יצירת החשבון (נתיב: ./datadir/keystore ). כדי לייבא את החשבונות, עלינו להעתיק קבצים אלה ולהדביק ב חנות מפתחות בספריית הנתונים(נָתִיב: ./myDataDir/keystore )

זה הכל! החשבונות מיובאים. פשוט, לא? כדי לאמת את הייבוא, נפעיל את הפקודה הבאה ב- geth לְנַחֵם.

> eth.accounts

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

כדי לבדוק את היתרה בחשבונות אלה, נשתמש בפקודה הבאה:

> web3.fromWei (eth.getBalance (), 'ether')

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

ביצוע עסקה

במדריך זה של רשת פרטית של Ethereum, נשלח כמה אתריםמחשבון אחד למשנהו.

התחביר לשלוח אתרים הוא כדלקמן:

> eth.sendTransaction ({מ: 'כתובת', אל: 'כתובת', ערך: web3.toWei (כמות, 'אתר')})

אנו נשלח 1000 אתרים מחשבון 1 לחשבון 2 באמצעות הפקודה הבאה:

> eth.sendTransaction ({מ: eth.accounts [0], ל: eth.accounts [1], ערך: web3.toWei (1000, 'אתר')})

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

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

personal.unlockAccount (eth.accounts [0], '')

עכשיו נשלח אתריםבְּהַצלָחָה:

> eth.sendTransaction ({מ: eth.accounts [0], ל: eth.accounts [1], ערך: web3.toWei (1000, 'אתר')})

זה אמור להחזיר מזהה עסקה.

בוצע! ביצעת בהצלחה עסקה!

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

> web3.fromWei (eth.getBalance ('0x82c440bba462220c9b54600e584373014706c177'), 'ether')
> web3.fromWei (eth.getBalance ('0x9db5b590fdecc10cdb04b85a3503e94e61b207ca'), 'ether')

יש! אנו יכולים לראות כי 1000 אתריםנשלחו מחשבון אחד למשנהו!

מזל טוב! יצרת רשת פרטית של Ethereum וביצעת עסקה. אני מקווה שמדריך זה ברשת הפרטית של Ethereum היה אינפורמטיבי ועזר לך להבין את Ethereum Private Network. עכשיו, קדימה ונסה להתנסות ברשת הפרטית שזה עתה נוצרה.

שירותי הדרכה לשילוב שרתים

יש לך שאלה עבורנו? אנא פרסם אותו ב ונחזור אליך.

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