מדריך בד Hyperledger: מדריך תחילת העבודה

ברוכים הבאים ל מדריך בד Hyperledger. 

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

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

אבל למה בד Hyperledger ולא אף אחד מסגרת בלוקצ’יין ארגונית אחרת?

הסיבה היא ש- Hyperledger Fabric הינה מסגרת בלוקצ’יין ארגונית מהשורה הראשונה המציעה טכנולוגיית ספר חשבונות מבוזרת מורשית מעולה (DLT). יש לו כמה תכונות נהדרות שהופכות אותו לבחירה אידיאלית עבור ארגון. 

אתה יכול לאמוד את הפופולריות שלה על ידי בדיקת חבריה המורכבים מ- CISCO, IBM, Intel, SAP, Accenture ואחרים..

מהו בד Hyperledger?

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

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

ביסודו, Hyperledger Fabric ניתן להגדרה ומודולרית. המשמעות היא שארגונים יכולים לעבוד בצורה חלקה באמצעות המסגרת. כל התכונות הרצויות הללו הופכות את Hyperledger Fabric לבחירה מצוינת! בזמן כתיבת שורות אלה תוכלו לנסות את Hyperledger Fabric v1.4, שמגיע עם תכונות ופונקציות חדשות.

פונקציות בד Hyperledger

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

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

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

מדריך בד Hyperledger

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

אדריכלות מערכת

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

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

עסקאות

העסקאות ב- Hyperledger Fabric יכולות להיות משני סוגים:

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

מבני נתונים של Blockchain

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

  • לָשִׂים
  • לקבל

כל מבנה הנתונים נתפס כמדינה.

פִּנקָס

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

צמתים

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

לָקוּחַ

לקוח הוא מישהו שיכול לפעול למען משתמשי הקצה.

עמית

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

כותב את אפליקציית בד Hyperledger הראשונה שלך 

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

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

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

שלושת השלבים העיקריים שעליך לבצע בעת פיתוח אפליקציית בד Hyperledger כוללים את הפעולות הבאות:

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

בניית רשת ראשונה

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

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

בדוק גם ב- Hyperledger Composer: Build Your Blockchain Enterprise

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

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

כדי לעבור לספרייה זו, עבור לתיקייה עם פקודת cd כמפורט להלן.

דוגמאות בד CD / רשת ראשונה

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

יצירת חפצי רשת

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

.byfn.sh ליצור

תתבקש לקבל אישור לפני תחילת התהליך. לחץ על Y כדי להפעיל את מילוי הרשת במידע הדרוש, כולל הפעלת שירותי ההזמנה, תצורה וכו ‘.

מפעילה את הרשת

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

./byfn.sh למעלה

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

כברירת מחדל, תראה לך בפעולה. הסיבה לכך היא ש- Go היא שפת ברירת המחדל של קוד השרשרת. אבל, זה לא אומר שאתה לא יכול להשתמש בשפות תכנות אחרות. שרשרת קוד תומך גם ב- Node.js וב- Java. כדי לעבור לצומת, באפשרותך להשתמש בפקודה הבאה. 

.צומת byfn.sh -l

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

.byfn.sh למעלה -l java

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

./byfn.sh למעלה -ו וכו ‘טיוטה

./byfn.sh למעלה -או קפקא

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

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

השקת הרשת

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

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

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

הפקודה להפעיל את הרשת היא להלן:

./startFabric.sh JavaScript

התקנת האפליקציה

עכשיו הגיע הזמן להתקין את היישום. אך לפני שנעשה זאת, עלינו להתקין את התלות. 

התקנת npm

הפקודה לעיל תתחיל להתקין את התלות החשובה המוגדרת ב- package.json

בחבילה כלולים השיעורים החשובים שיוזמו

  • מחלקת רשת-בד → מאפשרת עסקאות, זהויות, ארנקים
  • fabric-ca-client → רישום משתמשים לרשויות האישור שלהם

לאחר שתסיים, נעבור לספריית fabcar / javascript. בואו נסתכל על קבצי הספריות למטה:

  • encrollAdmin.js
  • node_modules
  • package.json
  • registerUser.js
  • invoke.js
  • package-lock.json
  • query.js
  • ארנק

מתקשר עם רשות האישורים

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

בקשה לחתימת אישורים (CSR)

המשימה הראשונה שלנו היא לעבור תהליך של CSR. בתהליך זה, מנהל יוצר קשר עם רשות האישורים ליצירת האישור הציבורי, הפרטי ו- X.509. התוכנית המשמשת לעשות היא להירשם.js

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

צומתrollAdmin.js

כל המידע מאוחסן כעת ב- ארנק מַדרִיך.

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

צומת reisterUser.js 

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

שאילתת ספר חשבונות

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

מקור: Hyperledger Fabric Docs

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

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

צומת query.js

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

const {FileSystemWallet, Gateway} = דורש (‘רשת-בד’);

בשורה הנ”ל נוצר חיבור רשת

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

שער const = שער חדש ();

ממתינים ל gateway.connect (ccp, {wallet, identity: ‘user1 ‘});

ה ccp משמש לזיהוי זהות המשתמש ומידע הארנק הקשור אליו. 

מכיוון שרשת Hyperledger Fabric מפעילה מספר ערוצים, חשוב להתחבר לערוץ המסוים ליישום.

חוזה const = network.getContract (‘fabcar’);

הבנת החוזה החכם

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

כדי לגשת אליו, עליך לעבור לספריית המשנה קוד שרשרת / fabcar / javascript / lib. ברגע שאתה שם, פתח את fabcar.js בעורך.

שם תראה את השימוש במחלקת חוזה להגדרת החוזה החכם. יתר על כן, יהיו עסקאות ברורות המוגדרות במסגרת החוזה החכם, כולל queryCar, queryAllCars, initLedger, changeCarOwner ו- createCar.

העסקאות ייראו להלן:

async queryCar (ctx, carNumber) {…}

בואו נסתכל על עסקת queryCar.

שאילתת asyncAllCars (ctx) {

  const startKey = ‘CAR0’;

  const endKey = ‘CAR999’;

  const iterator = ממתינים ל- ctx.stub.getStateByRange (startKey, endKey);

מקור: Hyperledger Fabric Docs

עדכון ספר חשבונות: קניית רכב חדש

השלב האחרון הוא לעדכן את ספר החשבונות במידע חדש. במקרה זה, בואו ניצור מכונית חדשה באמצעות invoke.js. עליך לפתוח את הקובץ ולהוסיף אליו את הפקודה הבאה.

ממתינים ל- contract.submitTransaction (‘createCar’, ‘CAR12’, ‘CarBrand’, ‘Model’, ‘Color’, ‘Owner’);

בקוד שלעיל, האפליקציה קוראת לעסקאות חוזה חכמות createCar. בתמורה, היא תיצור את המכונית עם התכונות שלה, כולל CarBrand, Color, Model ו- Owner.

כעת הפעל את הקוד הבא כדי לדחוף אותו אל ספר החשבונות

צומת invoke.js

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

סיכום

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

אז האם אתה מתכוון להשתמש ב- Hyperledger Fabric לבניית בלוקצ’יין ארגוני? הגיבו למטה והודיעו לנו.

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