Table of Contents
קודים נמוכים-רגישות של Parity-Check (LDPC) כבר מזמן אבן הפינה של התקשורת הדיגיטלית המודרנית, המציעים תיקון שגיאות כמעט-Shannon-limit עם אלגוריתמים יעילים של קידודים קידודים, בהקשר של טכנולוגיית בלוקצ'יין, שבו שלמות נתונים היא רבת ערך אך לעיתים קרובות מאתגרת על ידי דרישות אחסון גוברות ורמת רשתות, קודים של LDPC מציגים כלי משלים משכנע.
עקרונות קודים של LDPC
קודים LDPC הם קודים ליניאריים המוגדרים על ידי parity-check matrix - ממטריקס המכיל מספר קטן מאוד של ערכים שאינם אפסיים ביחס לממדיו.ספארסity זו היא המפתח לניתוק יעיל שלהם, בדרך כלל מבוצע באמצעות קידוד האמונה (אלגוריתם מוצר-ת) על הגרף הטנר המשויך, שהומצא במקור על ידי רוברט גלנט ב-1963 שלו, ה-DISDS, בעיקרומים אלה היו חשופים ל-CDC2 עד היום).
היתרון העיקרי של קודים LDPC על קודים תיקון שגיאות קודמות כגון ריד-Solomon או קודים convolutional הוא היכולת שלהם להשיג שיעור נמוך מאוד של מעט-טרור עם מורכבות בינונית. Decoding הוא במקביל, מה שהופך אותם מתאימים עבור יישומים עתירי זיהוי גבוה.היכולת התיקון הוא טונה על ידי שינוי שיעור הקוד (ratio של פיסות מידע לסך הכל) ואת ה- parity-check תכונות אלה מאוחסן על ידי קובצי Cookie יעילה.
אינטגרציה נתונים ב- blockchains
מכניזם מסורתי
מערכות blockchain לאבטחת שלמות נתונים בעיקר באמצעות חיתול הצפנה.כל בלוק מכיל חיס של בלוק הקודם, ויצר שרשרת בלתי-מוטחת. Merkle עצים, מבנה שבו עלים הם בלוקים נתונים ו nodes non-leaf הם יש של ילדיהם, ומאפשר אימות יעיל של נתונים גדולים עם רק O(log n) זיכרון עבור הוכחות. Ethereum ושימוש ב-256-256-K- בעוד ש-K-x-xk מנסה לתקן שגיאות בתוך מערכת הפעלה לא מנגנונים פגומים.
יתר על כן, כמו blockchains בקנה מידה להתמודד עם terabytes של נתונים (למשל, ברשתות אחסון מבוזר כמו Filecoin או Arweave, או בנתוני זמינות נתונים sharding הצעות כמו Danksharding של Ethereum), העלות של אחסון כל הנתונים על כל מחיקה הופך להיות חסימת נתונים.
תפקיד קודי LDPC ב-Blockchain Data Integrity
תיקון ארס ותיקון שגיאות
(ההעברת קודים LDPC למערכת blockchain כוללת בלוקים נתונים של ⁇ לתוך סיסמאות ארוכות יותר לפני שהם מחויבים לשרשרת.ה נתח הנתונים המקורי עשוי להיות מחולק ל-FLT:0kkFLT:1 סמלים מידע, ולאחר מכן להרחיב לתוך קידוד:2nFLT 3: סמלים (קודד 7k:4k /nFLT:5) באמצעות שכבה אידיאלית של קוד פתוח, או סמלים, אם הם פחות או סמלים).
יכולת זו היא בעלת ערך מיוחד בפרוטוקולים הנשען על קוד נתונים (DAS) ב DAS, לקוח אור מדגים באופן אקראי מספר קטן של נתחים מבלוק.שימוש בקוד LDPC, הלקוח יכול לאמת עם הסתברות גבוהה כי הבלוק זמין לחלוטין, כי אם ⁇ מסתיר יותר מדי נתחים, סביר להניח שהלקוח לא יקודש.
השוואה עם קודים אחרים
קודים של ריד-סומון, הבחירה המסורתית למחיקת מערכות בלוקצ'יין (למשל, ב- BIP152 המקורי של ביטקוין או בהצעות זמינות הנתונים המוקדמות של Ethereum), דורשים O(n log n) ⁇ /decoding והם לא יעילים עבור מספרי בלוק גדולים. LDPC מציעים FLT:0O(n) LT decoding 1 (n) עם מורכבות גרועה יותר עבור קודים מתקדמים, אשר ניתן לתקן באופן משמעותי.
עם זאת, קודים LDPC יש חסרונות.הם לא אופטימליים עבור כל גדלים בלוק; הביצועים הטובים ביותר מרתיע לעתים קרובות דורש אורך בלוק גדול (1000-10000 ביט), אשר עשוי להוסיף שקיפות.העיצוב של מטריקס טוב לבדיקת כפל עבור יישום ספציפי blockchain הוא לא טריוויאלי ועשוי לדרוש אלגוריתמים מחזוריים (למשל, הימנעות מחזורים קצרים בגרף) למנוע קודים כפולים מוטציות לנטרל מוטציות או מוטציות אטומיות עלות.
המונחים
אדריכלות: Encoding and Decoding Architecture
עבור אינטגרציה על שרשרת או קונצנזוס, קודר LDPC וקודד צריך להיות מיושם בסביבה הביצועית (למשל, precompile in Ethereum Machine) או הוצא להורג מחוץ לשרשרת על ידי אימותים.האחרון נפוץ יותר, כמו חישובי חישוב של LDPC decoding הוא מתון אך עדיין משמעותי עבור בתוך גז transaction.
צריכת זיכרון היא דאגה: למרות שהמטריקס של ה- parity-check הוא ספאר, לאחסן אותו כמריצה מלאה עבור קודים גדולים FLT:0nearFLT:1 עשוי להיות בלתי אפשרי. אי-ציות להשתמש בקודים מובנה כגון קוואסי-ציקלי (QC) קודים פתוחים blockchain, אך המטריקס מורכב מ- circulant pertmutationmatrices (Dic-C) מאפשר שימוש באופן דרמטי ב-Dicials (D) LD-C) באמצעות קוד פתוח.
השלכות אבטחה
קודים LDPC אינם מספקים אבטחה קריפטוגרפית בעצמם. An Attacker עם היכולת של סמלים מושחתים לא ניתן למנוע לעשות זאת, אבל הקוד יכול לתקן מספר מסוים של שגיאות.אם שיעור השגיאה עולה על יכולת התיקון של הקוד, נתונים הופכים בלתי ניתנים להוכחה.בהגדרה blockchain, זה יכול להוביל לכישלונות חיים או להתקפות מתגלגלות.
דאגה נוספת היא כי טבילה יכולה ליצור מזחלות מזויפות או לטעון תוצאות מרתיעות כוזבות.כדי להתמודד עם זה, את הפרמטרים הקוד (תיאור מטריקס, קוד, זרע למבנה) צריך להיות מחויב ללוח השדרה, וכל הנקודות הכנים חייבים להשתמש באותה מטריצה. דרישה זו תואמת את התכונות של blockchain: כל צומת יכול לאמת את הקידוד באופן עצמאי, זה גם אומר כי יש צורך יעיל עבור קודים מטריקס.
סקלאלה ודרך לוח
קודים LDPC מצטיינים בתרחישים באמצעות ביצועים גבוהים כי decoding הוא מקביל מאוד באמצעות GPUs או מעגלים משולבים ספציפית יישומים (ASICs) עבור רשתות blockchain עיבוד מאות עסקאות לשנייה, הליטלוסיה / decoding latency חייב להישאר מתחת למסגרת בלוק. עם קוד QC-LDPC , חסימת גדלים של כמה מגה-בתים ניתן לעבד בתוך מילימטרים שניות, מה שהופך נתונים מתאימים עבור מחסנים מתקדמים כגון קודים מתקדמים או LDC.
עבור לקוחות קלים, היכולת לפענח מקבוצה אקראית של סמלים פירושה שהם יכולים להשיג יתרונות גבוהים של זמינות נתונים עם רק כמה מאות קילוביטים של נתונים שהורדו לבלוק. ניגודים אלה עם אימות מלא-לא-מפשע הדורש הורדת כל בלוק. LDPC קודים ובכך לאפשר פרוטוקול אור מדרגי יותר ללא הקרבת ערבויות אבטחה.
יישומים מעשיים ופרויקטים
שכבת זמינות נתונים
כמה פרויקטים blockchain כבר לחקור מחיקה של זמינות נתונים. Celestia, blockchain מודולרי התמקד זמינות נתונים, נחשב במקור באמצעות 2D ריד-Solomon אבל מאז מחקר קודים LDPC עבור שדרוגים הבאים שלה. בדומה, ההצעה זיהוי של Ethereum משתמש תוכנית קידוד דו-ממדי עם ריד-Solo לאורך שורות ועמודות, אבל LDPC הם בדיקות פוטנציאליות לשימוש קודים של אופטימיזציה של התקנים בעת ובעונה אחת של אופטימיזציה של אופטימיזציה של התקנים אפשריים.
מאמר מחקר בולט מ-FLT:0 [FLT] [1]001Eum Research TeamFcioFveLT:2IRFLT 3: 3 ניתח את הרכישות בין קודים שונים למחיקה של נתונים.ממצאים שלהם הצביעו כי LDPC קודים מעודכנים-Solomon במונחים של מהירות מרתיעה עבור גודלי בלוק גדולים ומציעה שולי אבטחה טובים יותר כאשר ה-DValtststststative Control של רשת משמעותית.
רשתות אחסון מבוזרות
Filecoin ו Arweave להשתמש בקידוד LDPC יכול לאפשר רשתות אלה להפחית את יחס האחסון (אלא שכפול) תוך שמירה על אותה רמה של עמידות לנתונים.לבצע או תוספת עם קודים LDPC יכול לאפשר לרשתות אלה להפחית את יחס האחסון (אלא שכפול) תוך שמירה על אותה רמה של התאוששות.עבור FileRpowers.com, שבו מיכלי אחסון להוכיח החזקה באמצעות הוכחה של אחריות (Pos), קודים LDC יכולים לשמש כקודים להורדת יעילות נמוכה לפרוטוקולים של יעילות נמוכה יותר.
בשרשרת האספקה ויישומים של blockchain, שבו אי-יכולת נתונים משולבת עם אחסון מחוץ לשרשרת, קודים LDPC יכול להגן מפני רקרק רוטט במאגרי ענן.סמלי השוויון המפוזרים ניתן לאחסן על פני ספקי ענן מרובים, ואת בלוקצ'יין פועל כשורש מטא-נתונים המבטיחים כי כל שילוב לגיטימי של סמלים יכול לשחזר את הנתונים המקוריים - גם אם כמה ספקים מאבדים נתונים או להיות נפגע.
אתגרים ובעיות פתוחות
למרות התכונות המבטיחות, כמה אתגרים נותרו לפני קודים של LDPC ניתן לאמץ באופן נרחב במערכות בלוקצ'יין.
- (FLT:0) עיצוב קוד: חיקוי: ⁇ 1 (עיצוב מטריקס מקוצר בשפע אשר משיג רצפות שגיאה נמוכה עבור אורך בלוק אופייני בלוקצ'יין (כל מיליטרים למגבת) הוא לא טריוויאלי. קודים אקראיים עשויים להיות בעיות התכנסות; קודים QC-LDPC צריכים להיות אופטימיזציה בזהירות כדי למנוע השפלה.
- (FLT:0)Consensus Overhead:FLT:1ves הציגה את הקידוד בדרגה הקונצנזוס עשוי לסבך את פרוטוקול ה-block propagation. אימותים חייבים לחכות מספיק shards לפני ביצוע - תהליך שעולה השקיפות.המשחק בין זמן שחזור LDPC ו- קונצנזוס יש להתאים בזהירות.
- (ב) סודיות עבור לקוחות אור: FLT: בעוד קודים LDPC מאפשרים ללקוחות קלים לאמת זמינות נתונים עם מספר קטן של דגימות, הוכחה אבטחה מסתמכת על ההנחה כי הקוד יש תכונות התרחבות טובה (כלומר, כל קבוצה גדולה מספיק של סמלים חסרים יזהה) לא כל משפחות LDPC מבטיחות נכס זה; קודים אקראיים פגיעים לבחירה הפוכה של סמלים חסרים: 4.
- שילוב עם תשתיות בלוקצ'יין קיימות.בלוקצ'יין רבים יש מבני בלוק קבועים ואימות Native של מיסטרקל הוכחות.הוספת אימות LDPC דורש הטבות קשות או רכיבי off-שרשרת. Interoperability עם פרוטוקולים של לקוחות אור נוכחיים (למשל, Helios for Ethereum) יש לשמור.
- יעילות אנרגיה: LDPC קידוד הוא erative ועשוי לצרוך כוח משמעותי במכשירים ניידים או IoT הפועלים כלקוחות קלים.עבור מכשירים כאלה, יש למזער את מספר ההאקרים המידרדרים.
כיוונים עתידיים
מחקר בצומת של תורת הקידוד והבלוקצ'יין ממשיך להתפתח.כיוון מבטיח אחד הוא השימוש של קודים (FLT:0) LDPC המוחזקים (SC-LDPC) , אשר יש מבנה קבוע והצגת תכונות התיישבות הסף - כלומר הם ניגשים למגבלת שאנון יותר קרוב מאשר קודים קלאסיים של SC-LDPC יכול להיות מתאים במיוחד עבור זרם נתונים חסומים נמוכים, כמו גם לבלוקים של בלוקים של בלוקים ריקים, ללא עיבוד ריצוף נמוך של בלוקים.
אזור אחר הוא השילוב של קודים LDPC עם הוכחות אפס ידע (ZKPs) לדוגמה, מוכיח כי הם מחזיקים מספיק סמלים קודמו בתוקף מבלי לחשוף את הנתונים המקוריים, באמצעות מעגל Zk-SNARK על משוואות ה- LDPC-check.זה יאפשר בדיקות פרטיות של נתונים או רטיקול נתונים פרטיים על בלוקצ'יין.
לבסוף, פיתוח של חומריה-מחדשת LDPC מתואמים עבור צמתים blockchain - אולי באמצעות FPGAs - יכול להביא את הזמן המפחיד עבור בלוקים בגודל terabyte שניות, המאפשר את החזון של blockchains בקנה מידה מסיבי עם שלמות נתונים בקנה מידה עצום.
מסקנה
קודים נמוכים-רגישות מציעים שיטה חזקה, יעילה ונשמעת תיאורטית לשיפור אימות מהימנות הנתונים במערכות blockchain.על ידי מתן תיקון שגיאות מהיר, זמינות נתונים מדרגת, וצמצום אחסון באדום, קודים LDPC לטפל במספר צווארי בקבוק בסיסיים כי אדריכלות blockchain הנוכחית אתגרים - במיוחד סביב עיצוב קוד, קונצנזוס, ואבטחת לקוחות - נשאר פעיל, מחקר מקיף על ידי פונקציות מבוססות DAS מבטיחות פונקציות חשובות יותר ויותר על ידי פיתוח אבטחה.