SHA
מתוך ויקיפדיה, האנציקלופדיה החופשית
משפחת ה- Secured Hash Algorithm הינה קבוצה של פונקציות עירבול קריפטוגרפיות, אשר הנפוצה מביניהם היא ה- SHA-1, בה נעשה שימוש רב באפליקציות ופרוטוקולים מאובטחים כדוגמת TLS, SSL, S/MIME, PGP, SSH, IPSec. ה- SHA-1 נחשבת ליורשת של ה- MD5, פונקציית עירבול פופולרית אשר קדמה לה. אלגוריתמי ה- SHA הומצאו על ידי הסוכנות לביטחון לאומי של ארצות הברית (NSA) ופורסמו כסטנדרט של ממשלת ארצות הברית.
הפונקציה הראשונה במשפחת ה- SHA הינה ה- SHA-0 (שמה הרישמי הינו SHA אך הוסף לה המספר כדי למנוע בילבול עם הפונקציות הבאות בקבוצה) פורסמה ב- 1993. שנתיים מאוחר יותר פורסמה ה- SHA-1. במהלך השנים נוספו עוד ארבע פונקציות לקבוצה: SHA-224, SHA-256, SHA-384, SHA-512 (ידועה גם כ- SHA-2), אשר נבדלות בגודל הפלט שלהן.
מספר התקפות על פונקציות ה- SHA-0 וה- SHA-1 נתגלו עד כה. טרם דווח התקפות על SHA-2, אולם מכיוון שהפונקציות הללו מבוססות על אלגוריתם דומה, קיים חשש שגם האחרונה תהיה בקרוב פגיעה להתקפות ולכן חוקרים מחפשים מועמדים חדשים לתקן ערבול חסין יותר.
[עריכה] SHA-0 ו- SHA-1
המפרט של האלגוריתם פורסם ב- 1993 על ידי הסוכנות הממשלתית לסטנדרטים של ארצות הברית (NIST) בשם Secure Hash Standart, FIPS PUB 180 גרסה זו נקראת SHA-0 והוצאה משימוש זמן קצר לאחר פירסומה על ידי ה- NSA, כאשר הוחלפה על ידי גרסה מתוקנת ב- 1995, גירסת SHA-1, FIPS PUB 180-1. תיקון זה נעשה, לדברי ה- NSA על מנת לתקן פגם באלגוריתם המקורי אשר גרם לאבטחתו הקריפטוגרפית של האלגוריתם להיות ירודה. ה- NSA לא פרסם מהו אותו הפגם באלגוריתם המקורי. חולשות באלגוריתמים SHA-0 ו- SHA-1 נתגלו, אך עם זאת SHA-1 אכן עמיד יותר להתקפות מסוגים שונים. שני האלגוריתמים SHA-0 ו- SHA-1 מפיקים פלט של 160 ביטים מהודעה אשר גודלה עד 264 ביטים