לפעמים תראה חשיפות MD5, SHA-1 או SHA-256 מוצגות לצד הורדות במהלך הנסיעות שלך באינטרנט, אבל לא ממש ידוע מה הן. מחרוזות הטקסט האקראיות לכאורה הללו מאפשרות לך לוודא שקבצים שאתה מוריד אינם פגומים או מטופלים. אתה יכול לעשות זאת באמצעות הפקודות המובנות ב- Windows, macOS ו- Linux.
איך Hashes עובדים, וכיצד הם משמשים לאימות נתונים
האש הם תוצרי הצפנה אלגוריתמים נועד לייצר מחרוזת דמויות. לעיתים קרובות מחרוזות אלה הן בעלות אורך קבוע, ללא קשר לגודל נתוני הקלט. התבונן בתרשים שלמעלה ותראה כי גם "שועל" וגם "השועל האדום קופץ מעל הכלב הכחול" מניבים את אותה תפוקת אורך.
כעת השווה את הדוגמה השנייה בתרשים לשלישית, הרביעית והחמישית. תראה שלמרות שינוי קל מאוד בנתוני הקלט, החשיפות שנוצרו שונות מאוד זו מזו. גם אם מישהו ישנה חלק קטן מאוד מנתוני הקלט, הגיבוב ישתנה באופן דרמטי.
MD5, SHA-1 ו- SHA-256 הם פונקציות חשיש שונות. לעתים קרובות יוצרי תוכנה לוקחים הורדת קובץ - כמו קובץ .iso של לינוקס, או אפילו קובץ .exe של Windows - ומפעילים אותו באמצעות פונקציית hash. לאחר מכן הם מציעים רשימה רשמית של החשיפות באתרי האינטרנט שלהם.
בדרך זו, אתה יכול להוריד את הקובץ ואז להפעיל את פונקציית ה- hash כדי לאשר שיש לך את הקובץ האמיתי והמקורי ושהוא לא נפגם במהלך תהליך ההורדה. כפי שראינו לעיל, אפילו שינוי קטן בקובץ ישנה באופן דרמטי את החשיש.
אלה יכולים להיות שימושיים גם אם יש לך קובץ שקיבלת ממקור לא רשמי ואתה רוצה לאשר שהוא לגיטימי. נניח שיש לך קובץ .ISO של לינוקס שקיבלת מאיפשהו ואתה רוצה לאשר שלא טופלו בו. אתה יכול לחפש את החשיש של קובץ ה- ISO הספציפי באתר האינטרנט של הפצת לינוקס. לאחר מכן תוכל להפעיל אותו דרך פונקציית החשיש במחשב שלך ולאשר שהיא תואמת לערך החשיש שהיית מצפה שיהיה לו. זה מאשר שהקובץ שיש לך הוא אותו הקובץ המוצע להורדה באתר האינטרנט של הפצת לינוקס, ללא כל שינוי.
שים לב כי "התנגשויות" נמצאו עם הפונקציות MD5 ו- SHA-1. מדובר במספר קבצים שונים - למשל קובץ בטוח וקובץ זדוני - המביאים לאותו חשיש MD5 או SHA-1. לכן כדאי להעדיף את SHA-256 במידת האפשר.
כיצד להשוות בין פונקציות Hash בכל מערכת הפעלה
עם זאת, בואו נבדוק כיצד לבדוק את הגיבוב של הקובץ שהורדתם, ולהשוות אותו לזה שקיבלתם. להלן שיטות עבור Windows, MacOS ו- Linux. ה- hashes תמיד יהיו זהים אם אתה משתמש באותה פונקציית hashing באותו קובץ. לא משנה באיזו מערכת הפעלה אתה משתמש.
חלונות
תהליך זה אפשרי ללא כל תוכנת צד שלישי ב- Windows בזכות PowerShell.
כדי להתחיל, פתח חלון PowerShell על ידי הפעלת קיצור הדרך "Windows PowerShell" בתפריט התחל.
הפעל את הפקודה הבאה, והחלף את "C: \ path \ to \ file.iso" בנתיב לכל קובץ שתרצה להציג את הגיבוב של:
Get-FileHash C: \ path \ to \ file.iso
ייקח את ה- hash של הקובץ זמן מה, תלוי בגודל הקובץ, באלגוריתם שבו אתה משתמש ובמהירות הכונן בו הקובץ נמצא.
כברירת מחדל, הפקודה תציג את ה- Hash של SHA-256 עבור קובץ. עם זאת, תוכל לציין את אלגוריתם הגיבוב שבו ברצונך להשתמש אם אתה זקוק ל- MD5, SHA-1 או סוג אחר של חשיש.
הפעל אחת מהפקודות הבאות כדי לציין אלגוריתם hashing אחר:
Get-FileHash C: \ path \ to \ file.iso -Algorithm MD5
Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA1
Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA256
Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA384
Get-FileHash C: \ path \ to \ file.iso -Algorithm SHA512
Get-FileHash C: \ path \ to \ file.iso -Algorithm MACTripleDES
Get-FileHash C: \ path \ to \ file.iso -Algorithm RIPEMD160
השווה את התוצאה של פונקציית הגיבוב לתוצאה שציפית לראות. אם זה אותו ערך, הקובץ לא נפגם, לא טופל או שונה מהמקור.
MacOS
macOS כולל פקודות לצפייה בסוגים שונים של חשיפות. כדי לגשת אליהם, פתח חלון טרמינל. תוכלו למצוא אותו ב- Finder> יישומים> כלי עזר> טרמינל.
ה
סמוקי
הפקודה מציגה את ה- hash של MD5 של קובץ:
md5 / path / to / file
ה
שסום
הפקודה מציגה את ה- Hash של SHA-1 של קובץ כברירת מחדל. פירוש הדבר שהפקודות הבאות זהות:
shasum / path / to / file
shasum -a 1 / path / to / file
כדי להציג את ה- SHA-256 של הקובץ, הפעל את הפקודה הבאה:
shasum -a 256 / path / to / file
לינוקס
ב- Linux, גש לטרמינל והפעל אחת מהפקודות הבאות כדי להציג את ה- hash של הקובץ, תלוי בסוג ה- hash שברצונך להציג:
md5sum / path / to / file
sha1sum / path / to / file
sha256sum / path / to / file
חלק מהאש חותמים בצורה קריפטוגרפית ליתר ביטחון
אמנם חשיפות יכולות לעזור לך לאשר שקובץ לא טופל איתו, אך עדיין יש כאן דרך התקפה אחת. תוקף יכול להשיג שליטה על אתר הפצה של לינוקס ולשנות את החשיפות המופיעות בו, או תוקף יכול לבצע התקפה של איש באמצע ולשנות את דף האינטרנט במעבר אם היית ניגש לאתר באמצעות HTTP במקום HTTPS מוצפן .
לכן הפצות לינוקס מודרניות מספקות לרוב יותר מ- hashes המופיעים בדפי האינטרנט. הם חותמים באופן קריפטוגרפי על חשיפות אלה בכדי לסייע בהגנה מפני תוקפים העלולים לנסות לשנות את הגיבוב. אתה רוצה לאמת את חתימת ההצפנה כדי להבטיח שקובץ ה- hash נחתם בפועל על ידי הפצת לינוקס אם אתה רוצה להיות בטוח לחלוטין שה- hash והקובץ לא טופלו.
קָשׁוּר: כיצד לאמת את בדיקת ה- ISO של לינוקס ולאשר שלא טופלה
אימות החתימה ההצפנתית הוא תהליך מעורב יותר. לקרוא המדריך שלנו לאימות תקני לינוקס לא טופלו עם לקבלת הוראות מלאות.
אשראי תמונה: חורחה סטולפי / ויקימדיה