Hashing קריפטוגרפי: מדריך למתחילים

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

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

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

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

 

מה זה Hashing קריפטוגרפי?

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

אז מה הופך את הגיבוב לפופולרי וייחודי כל כך? זה בגלל שאי אפשר להפוך את זה!

כן, זו פונקציה חד כיוונית (פונקציית hash קריפטוגרפית) והיא נועדה לעבוד ככה בלבד.

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

כמו כן, לבדוק

  • כיצד לבנות בלוקצ’יין בפייתון
  • מדריך למתחילים: שימוש בקריפטוגרפיה בקריפטוגרפיה

יש עוד תכונה אחת שחלה על שיטת החשיש. כל נתון נתון ייתן את אותה פלט חשיש.

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

 


איך עובד השינגינג?

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

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

למטרות hashing, יש הרבה אלגוריתמים בשימוש. זה כולל את הדברים הבאים.

  • הודעה ישירה (MD5)
  • פונקציית Hash מאובטחת (SHA1)
  • פונקציית Hash מאובטחת (SHA-256)

לא כל פונקציות הגיבוב מאובטחות ב -100%. לדוגמא, קל לפצח את SHA1 ולכן לא מומלץ לשימוש מעשי. אחת מפונקציות הגיבוב הנפוצות ביותר בהן נעשה שימוש כוללת MD5 ו- SHA-256.

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

 

איפה נעשה שימוש בעיקר בחשיש?

Hashing משמש בעיקר לסיסמאות. בואו ניקח דוגמא כדי להבין את זה.

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

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

שימושים אחרים כוללים יצירת ואימות חתימות ובדיקות תקינות קבצים.

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

 

כיצד משתמשים בחשיש במטבעות קריפטוגרפיים

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

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

ביטקוין משתמש בשיטת ההסכמה הוכחת עבודה אשר בתמורה משתמשת בפונקציית חשיש חד כיוונית SHA-256.

 

דוגמה לתפקוד האשינג

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

כדי להקל עלינו ועבורך, אנו נשתמש בכלי SHA-256 הזמינים באינטרנט.

הנה הקישור אליו: SHA256 באינטרנט

כעת, אם תקליד 101Blockchains כקלט, זה ייתן את הפלט הבא.

קֶלֶט: 101Blockchains.com

תְפוּקָה: fbffd63a60374a31aa9811cbc80b577e23925a5874e86a17f712bab874f33ac9

באמצעות פונקציית Hash SHA256

כעת, אם תשים קלט “שלום עולם” כקלט, זה ייתן את הפלט הבא.

קֶלֶט: שלום עולם

תְפוּקָה: a591a6d40bf420404a011733cfb7b190d62c65bf0bcda32b57b277d9ad9f146e

בין שתי הפלטים, תראה ששני ערכי הפלט הם באותו אורך, כלומר 256 ביט, כלומר 64 תווים באורך.

עכשיו, בואו נכניס את 101 blockchain לקלט. שים לב שהסרנו את ה- “s” מ- 101Blockchains ששימש להפקת הגיבוב הראשון.

קֶלֶט: 101 בלוקצ’יין

תְפוּקָה: c4d67db72f3d18eaca2e8e8498271de353d25874e4448be4887f2563576c6fe8

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

אז מה למדנו מהדוגמה? בואו נסכם להלן.

  • כל התפוקות באותו אורך
  • שינויים קטנים בקלט גורמים ליציאות שונות לחלוטין
  • לא ניתן להפוך יציאות לתשומות.

מאפיינים של פונקציית Hash קריפטוגרפית

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

דטרמיניסטי

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

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

 

עמיד בפני תמונה

פונקציית ה- hash הקריפטוגרפית עמידה לפני תמונה מה שאומר שערך ה- hash שנוצר פעם אחת לא מגלה שום דבר על הקלט.

זו תכונה חשובה מכיוון שהיא נותנת את החשוב הרבה.

 

יעילות חישובית

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

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

 

לא ניתן להפוך מהונדס

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

 

עמיד בפני התנגשות

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

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

החדשות הטובות הן שרוב פונקציות החשיש הפופולריות עמידות בפני התנגשות.

 

שיעורי Hash פופולריים – רשימת אלגוריתמים Hashing

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

  • העברת הודעות (MD)
  • פונקציית Hash מאובטחת (SHF)
  • הודעת RIPE ישירה (RIPEMD)

בואו נעבור אותם אחד אחד.

העברת הודעות (MD)

Message Digest היא משפחה של פונקציות חשיש המשמשות לאורך ההיסטוריה של האינטרנט.

המשפחה מורכבת מפונקציות חשיש כגון MD2, MD4, MD6 וה- MD5 הפופולרי ביותר. כל פונקציות ה- hash של MD הן פונקציות hash של 128 סיביות, כלומר גדלי העיכול הם 128 סיביות.

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

MD5 אינו מאובטח כמו פונקציות גיבוב אחרות. בשנת 2004 נעשתה התקפה אנליטית על פונקציית החשיש שבוצעה תוך שעה בלבד. זה נעשה באמצעות אשכול מחשבים. זה הפך את ה- MD לא כל כך שימושי לאבטחת מידע ולכן משמש למשימות כגון אימות תקינות הקובץ.

אם אתה מעוניין ללמוד עוד על MD5, עיין בדף ה- Wiki עבור MD5 – MD5.

 

פונקציית Hash מאובטחת (SHA)

פונקציות Hash מאובטחות הן משפחה נוספת של פונקציות חשיש שהן פופולריות למדי. הוא פותח ופורסם על ידי המכון הלאומי לתקנים וטכנולוגיה (NIST). הם הוציאו ארבע גרסאות של SHA כולל SHA-0, SHA-1, SHA-2 ו- SHA-3.

כפי שהיית צריך לנחש, הגרסאות המאוחרות מתקנות כמה בעיות או חולשות עם הגרסאות הישנות של SHA. לדוגמה, SHA-1 שוחרר לאחר שנמצאה חולשת SHA-0. SHA-1 שוחרר בשנת 1995.

SHA-1 עשה שם משלו לאחר שחרורו. הוא שימש אז יישומים מגוונים, כולל שכבת שקע מאובטחת (SSL).

עם זאת, עם הזמן, נצלנים גילו גם על התנגשויות SHA-1 שהפכו אותו לחסר תועלת. NIST הגיעה למשפחת SHA-2 של פונקציות חשיש מאובטחות שהשתמשו בארבע גרסאות SHA כולל SHA-256, SHA-224, SHA-512 ו- SHA-384. בארבע גרסאות אלה, שתיים היו הליבה, כולל SHA-256 ו- SHA-512. ההבדל ביניהם הוא ש- SHA-512 השתמש במילים של 64 בתים ואילו ה- SHA-256 השתמש במילים של 32 בתים בלבד.. 

משפחת SHA-2 של פונקציות חשיש עדיין נמצאת בשימוש נרחב. עם זאת, היה גם SHA-3 אשר תוכנן ושוחרר על ידי מעצבים שאינם NSA במהלך תחרות ציבורית בשנת 2012. זה היה ידוע קודם לכן בשם Keccak. היתרונות של Keccak כללו עמידות טובה יותר בהתקפות וביצועים יעילים.

 

הודעה ישירה של RIPE (RIPEMD)

RIPE Message Direct (RIPEMD) היא משפחה של פונקציות חשיש שפורסמה בשנת 1992. כמו כן, RIPE מייצג RACE Integrity Primitives Evaluations.

הוא מתוכנן ומנוהל על ידי קהילת המחקר הפתוחה. בקרב המשפחה יש חמש פונקציות הכוללות RIPEMD, RIPEMD-160, RIPEMD-128, RIPEMD-320 ו- RIPEMD-256. עם זאת, הפונקציה הנפוצה ביותר היא RIPEMD-160.

העיצוב של RIPEMD מבוסס על Message Direct.

 

ההבדל בין Hashing, הצפנה והמלחה

בחלק זה נעבור בקצרה על ההבדל בין hashing, הצפנה והמלחה.

בוא נתחיל בהצפנה.

הצפנה היא תהליך של קשקש המידע המקורי באמצעות המפתח הציבורי ואז ביטול הנעילה באמצעות מפתח פרטי. זו פונקציה דו כיוונית.

לעומת זאת, Hashing הוא פונקציה חד כיוונית המשמשת לטרוף מידע למטרות אימות.

המונח האחרון הוא “המלחה”.

המלחה דומה ל- hashing, אך כאן נוסף ערך ייחודי לסיסמה כדי ליצור ערך hash שונה. כאן ערך המלח צריך להיות ייחודי ולהישאר מוסתר. 

 

סיכום

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

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

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

אז מה אתה חושב על חשיש? הגיבו למטה והודיעו לנו.

Mike Owergreen Administrator
Sorry! The Author has not filled his profile.
follow me
Like this post? Please share to your friends:
Adblock
detector
map