Proovik
מאמת ציבורי · PVK-PROOF/1

איך לבדוק הוכחה של Proovik בלי להסתמך על Proovik

דרושים לך קובץ ההוכחה (או קובץ ה-PDF של התעודה) והעותק שלך מהמסמך המקורי. שום דבר אינו מועלה: טביעת האצבע מחושבת בדפדפן שלך. למטה, המפרט המלא, שלב אחר שלב ועם ערכים אמיתיים.

גרסה 1 רשת: Kaspa mainnet מאמת ייחוס: 248 שורות של Python, ללא תלויות
כלי

אימות הוכחה באינטרנט

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

1 · קובץ הוכחה

2 · המסמך המקורי

המאמת לעולם אינו לוקח את הגיבוב מקובץ ההוכחה: אתה מספק אותו.

החבילה והגיבוב נשלחים אל POST /api/verify/proof. ללא חשבון. מגבלה: 120 אימותים לשעה לכל כתובת IP.

מופיע בתעודת ה-PDF ובסייר של Kaspa.

אפשר לחשב אותו על ידי גרירת המסמך בלשונית האחרת: הערך משותף.

מצב זה בונה מחדש את החבילה באמצעות פנייה אל api.kaspa.org. Kaspa מגישה את הכותרת המלאה רק במשך כ-40 שעות לאחר העיגון: לאחר מכן אי אפשר לחשב מחדש את החוליות 3 ו-4 וההכרעה תהיה לא חד־משמעית, לעולם לא “מוכיחה”. לאימות מלא השתמש בקובץ ההוכחה שנלכד באותו רגע.

GET /api/verify/proof/{txid}?hash=…. מגבלה: 30 לשעה לכל כתובת IP (מתבצעת פנייה לרשת).

הכרעה ·

הוכח לא חד־משמעי לא הוכח

ארבע החוליות תקינות: המסמך בעל ה-SHA-256 הזה היה קיים כשנכרה הבלוק המצוין. זכור מה ההוכחה אינה מוכיחה: לא מחברות ולא אמיתות התוכן.

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

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

לצפייה בעסקה ברשת
מסמך
txid
block_hash
רשת
מצב
כותרת
אומת

החוליות, אחת אחת

אזהרות

מה משמעות כל חוליה

היקף ההוכחה

מה בדיוק נטען

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

מה ההוכחה מוכיחה

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

מה ההוכחה אינה מוכיחה

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

על הגיבוב

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

דוגמה אמיתית · 20-09-2026

ארבע החוליות

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

1 2 3 4
התאריך

למה התאריך הוא גודל פיזיקלי ולא הצהרה

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

השפעת שינוי הכותרת על תוצאת הוכחת העבודה
כותרת תוצאת העבודה הכרעה
מקורית, ללא נגיעה0x15222b53caabb3b049ec…תקפה
nonce + 10x6775abc19ba960657f66…פסולה
timestamp שהוזז קדימה בשנייה אחת0xaee1e8274b1d268866ed…פסולה
המסקנה

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

קביעות

האם זה ימשיך לעבוד אחרי פיצולים קשיחים עתידיים?

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

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

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

1

לכידה בתוך החלון

לשמור את הכותרת בשלמותה ברגע העיגון, לפני שהרשת משליכה את הנתונים המלאים (כ-30-40 שעות).

2

לשמור את ההוכחה

קובץ ההוכחה (או קובץ ה-PDF שמכיל אותו מוטבע) עומד בפני עצמו: הוא אינו מפנה לשום שרת ואינו מבצע שום שאילתה מקוונת.

3

לשמר את מאמת הייחוס

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

אמת זאת בעצמך

עשה זאת בלי Proovik

מאמת הייחוס הוא 248 שורות של Python ללא תלויות חיצוניות: הוא מממש blake2b עם מפתח, את התמורה Keccak-f[1600], את המחולל xoshiro256++ ואת האריתמטיקה של המטריצה. אפשר לקרוא אותו בערב אחד ולבקר אותו בשניים.

מסוף
$ python3 verificador_kaspa.py prueba.json 0f7383b381366cc3a75dadd7e4a1e8998c492f7c5c5610f4384d7320f484aad8

  OK    1. El payload on-chain es el hash del documento
  OK    2. La transaccion esta en el arbol Merkle del bloque
  OK    3. La cabecera produce el hash de bloque declarado
  OK    4. La prueba de trabajo de esa cabecera es valida

RESULTADO: PRUEBA VALIDA

להוריד את מאמת הייחוס

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

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

מסגרת משפטית

היקף משפטי

Proovik מספק שירות חותמת זמן אלקטרונית לא מוסמכת כמשמעותו בסעיף 3.16(i) לתקנה (האיחוד האירופי) 910/2014. כדאי להיות מפורשים לגבי משמעות הדבר.

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

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

הפניות

סידור הכותרת והעסקה, בניית עץ Merkle והוכחת העבודה, לפי קוד המקור של מימוש הייחוס של Kaspa (rusty-kaspa): consensus/core/src/hashing/header.rs, consensus/core/src/hashing/tx.rs, consensus/core/src/merkle.rs, crypto/hashes/src/pow_hashers.rs, consensus/pow/.

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