php / המדריך לקידוד מידע / שיעור 1 - הקדמה

שיעור 1 - הקדמה

ג'ולי מלוני

ג'ולי מלוני היא המנהלת הטכנית בחברה i2I interactive והמחברת של ספר על PHPשיוצא לאור בקרוב . לרוב תוכלו למצוא אותה גוררת את מטלטליה מחוף אל חוף.

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

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

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

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

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

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

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

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

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



עמוד הבא: צופן המבוסס על מפתחות פרטיים וציבוריים>>




הקדמה
שעור 1
הקדמה >
צופן המבוסס על מפתחות
פרטיים וציבוריים
מתחילים עם PGP
מתחילים עם GnuPG
הקריאה למקודד המפתח
הציבורי
שעור 2
קידוד חד צדדי ו HASH
השמוש בפונקצית ()crypt
שמוש בספרית mcrypt