מה זה Keccak?
Keccak הוא משפחה של פונקציות האש הקריפטוגרפיות המשמשת כבסיס לתקן SHA-3 (Secure Hash Algorithm 3). פותח על ידי Guido Bertoni, Joan Daemen, Michaël Peeters ו-Gilles Van Assche, וזכה בתחרות פונקציות האש של NIST ב-2012.
מאפיינים עיקריים:
- מבנה ספוג: משתמש בעיצוב פונקציית ספוג חדשני עם שלבי ספיגה וסחיטה
- אורך פלט משתנה: יכול לייצר פלטי האש באורך כלשהו שרוצים
- מרווח אבטחה גבוה: מעוצב עם עתודות אבטחה משמעותיות
- שונה מ-SHA-1/SHA-2: מבוסס על עקרונות מתמטיים שונים לחלוטין
- וריאנט Keccak[c=2d]: יישום זה משתמש במפרט Keccak המקורי עם קיבולת c = 2d (כאשר d הוא אורך הפלט)
הבדלים בין Keccak ל-SHA-3 (FIPS 202): 🔍 הבחנה חשובה: Keccak המקורי ו-SHA-3 המתוקנן אינם זהים:
- Keccak מקורי: משתמש בקיבולת c = 2d ובריפוד שונה (ריפוד Keccak: 0x01)
- FIPS 202 SHA-3: משתמש בקיבולת c = 2d אך בריפוד שונה (ריפוד SHA-3: 0x06)
- הפרדת תחומים: הבדל הריפוד מבטיח שKeccak ו-SHA-3 מייצרים פלטים שונים לאותו קלט
- יישום כלי זה: מפרט Keccak המקורי עם פרמטריזציה Keccak[c=2d]
מצב אבטחה: ✅ Keccak נחשב בטוח ביותר ללא התקפות מעשיות ידועות. הוא מספק מרווחי אבטחה מצוינים ועמידות נגד טכניקות ניתוח קריפטוגרפי שונות.
שימושים נפוצים:
- בלוקצ’יין Ethereum (משתמש ב-Keccak-256 המקורי)
- מחקר אקדמי ופרוטוקולים קריפטוגרפיים
- יישומים הדורשים פלטי האש באורכים משתנים
- מערכות הדורשות חלופה למשפחת SHA-2
- יישומי בלוקצ’יין ומטבעות קריפטוגרפיים
יתרונות על פני האש מסורתיים:
- עיצוב שונה בתכלית מפחית סיכון התקפות קשורות
- אורך פלט גמיש (לא מוגבל לגדלים קבועים)
- בסיס אבטחה תיאורטי חזק
- עמידות נגד התקפות הארכת אורך
- ביצועים מצוינים בפלטפורמות שונות
הערות טכניות:
- Keccak-256: מייצר פלט של 256-ביט (הוריאנט הנפוץ ביותר)
- נוסחת קיבולת: c = 2d מבטיח רמת אבטחה מתאימה
- שימוש ב-Ethereum: Ethereum משתמש ספציפית ב-Keccak-256 המקורי ולא ב-SHA3-256