פיתוח פלטפורמת סטייקינג תווית לבנה מקצה לקצה

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

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

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית ווב עבור FEEDME
    פיתוח אפליקציית ווב עבור FEEDME
    1375
  • פיתוח חנות מקוונת לחברת FURNORO
    פיתוח חנות מקוונת לחברת FURNORO
    1349
  • עיצוב לוגו לחברת B2B Advance
    עיצוב לוגו לחברת B2B Advance
    794
  • פיתוח אפליקציית ווב עבור Enviok
    פיתוח אפליקציית ווב עבור Enviok
    1087
  • פיתוח לוגו חברת AIDER
    פיתוח לוגו חברת AIDER
    1032
  • פיתוח CRM עבור Chasseurs
    פיתוח CRM עבור Chasseurs
    1129

White label staking: היכן נשברת מכניקת הזיכויים

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

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

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

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

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

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

פלטפורמת white-label staking מוכנה מסירה את חלק העבודה שלוקח חודשים בפיתוח מאפס: חוזים, חישוב וחלוקת תגמולים, אזור אישי למשתמש, אינטגרציות עם ארנקים. רשימת הרשתות הנתמכות נפתחת ב-Ethereum וברשתות תואמות לו, הליבה עברה ביקורת ועובדת בנפחים אמיתיים. להלן — מה משתנה באופן מדיד, ולא "באופן כללי".

זמן ההשקה: שבועות במקום רבעונים

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

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

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

שיאי פעילות: האטה במקום כשל

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

סוג הכשלים שנעלם והשימור

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

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

סטייקינג קסטודיאלי ולא-קסטודיאלי: השוואת מודלים

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

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

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

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

כיצד אנו מובילים את היישום: שלבי עבודת ההנדסה

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

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

קונפיגורציות, סכימות ונוהלי תפעול

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

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

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

מקרה בוחן: פלטפורמה בעומס — נתונים לפני ואחרי

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

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

מדדים לפני ואחרי

מדד לפני אחרי
שיעור הפערים בחישובי תגמולים 2.4% מהתשלומים 0.08%
זמן תגובה לתקלת זיכוי 4–6 שעות, לפי תלונה 6 דקות, לפי התראה
שיעור התשלומים האוטומטיים לא היה, הכול ידני 97%
התאמה יומית 3 שעות של ייצוא ידני 12 דקות, אוטומטית

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

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

מה לעשות אם הפול כבר פועל על התשתית שלכם

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

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

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

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

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

כשלי צמתים, מפתחות ומגבלות: ספקות נפוצים

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

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

מי מחזיק במפתחות הוולידטור ואיך בנויה הגישה אליהם?

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

מה יקרה בעת כשל של צומת או נפילת רשת?

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

עד כמה בטוחות האינטגרציות עם בורסה וקסטודיאן?

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

האם נוכל לעבור לתשתית משלנו?

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

נדון במשימה ונחזור עם תוכנית עבודה

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

בתגובה אנו חוזרים עם תוכנית עבודה והרכב אספקה — לא תיאור כללי, אלא רשימת ארטיפקטים שעוברים אליכם:

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

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