אל תסמכו על החתימות הדיגיטליות

בקצרה: פרצו את MD5.

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

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

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

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

אבל יש קוץ קל בכל השימחה. לחתום על הודעה, חוזה, או קובץ בגודל דיי גדול באמצעות אחד מהאלגוריתמים המוזכרים למעלה הינה פעולה יקרה וארוכה. כתוצאה מכך, בד”כ בוחרים בשיטה אחרת לביצוע חתימות. השיטה מכונה פונקצית האש קריפטוגרפית “cryptographic hash function”.

הרעיון הוא כזה. פונקציה y=f(x)‎ תחשב פונקצית האש טובה אם אפשר להגיד עליה כך:
בהנתן x, קל לחשב את y (אחרת למה אנחנו משתמשים בה).
בהנתן y, קשה למצוא x שמקיים את הפונקציה (הפונקציה לא הפיכה).
קשה למצוא שני xים, כך שיש להם את אותו ה-y.

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

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

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

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

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

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

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

עד כאן הרקע, ועכשיו לחדשות

:
שברו את MD5. בגדול, יש שלושה דברים שהמשפט הקודם עלול/עשוי להגיד, בסדר עולה של חומרה:
1. תוקף מסוגל לייצר שתי הודעות שעונות על תנאי מתמטי מסויים, כך שלשתי ההודעות אותו האש.
2. תוקף מסוגל לייצר שתי הודעות, פחות או יותר כרצונו, כך שלשתי ההודעות אותו האש.
3. תוקף מסוגל לייצר הודעה חדשה כך שיש לה את אותו ההאש כמו הודעה קיימת.

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

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

מצד שני, אם זה כל מה שיש לי, יהיה לי מאוד קשה לייצר שתי הודעות טקסט שמכילות טקסטים (כמעט) כרצוני, ושיהיה להם את אותו ההאש.

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

אחרי ששלחתם אלי את החוזה חתום, אני מוציא לכם חשבונית על 10,000 דולר. “מה זה?”, אתם שואלים. “הנה, החוזה שחתמתם עליו”, אני עונה. כדי להוכיח, אני שולח לכם חוזה, ואכן כתוב בו שאתם מתחייבים לשכור את שירותי למשך שנה, בעלות דו-חודשית של 10,000$. החוזה חתום בחתימה דיגיטלית המוצפנת באמצעות המפתח שלכם, הכל נראה כשר ותקף.

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

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

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

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

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

שחר

פטנטים, זכויות יוצרים, וקניין רוחני בכלל

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

הסוגים של קניין רוחני:

  1. זכויות יוצרים
  2. פטנטים
  3. סימני מסחר
  4. סודות מסחריים


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

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

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

בואו נראה אילו זכויות מקנה כל סוג של קניין רוחני, ומהן המגבלות עליו:

סימן מסחר (Trademark)


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

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

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

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

סוד מסחרי


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

זכויות יוצרים


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

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

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

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

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

כל מי שנחרד מהרעיון שהיוצר לא יוכל להנות מפירות יצירתו, מוזמן לעשות את התרגיל המחשבתי הבא:
בן כמה Windows 3.11? המערכת יצאה לשוק אי שם בשנות השמונים המאוחרות של המאה הקודמת. לצורך הדיון, בואו נניח 1988. במילים אחרות, היום אנחנו כבר 18 שנה אחרי יציאת המערכת לשוק. כמה הכנסות יש לחברת מיקרוסופט מהמערכת הזו? האם יש פה מישהו שחושב שהם מרוויחים יותר מאשר 1000$ בשנה על מכירות חלונות 3.11? האם באמת מיקרוסופט תסבול קשות אם בעוד 7 שנים אפשר יהיה להעתיק את חלונות 3.11 ללא רשותה, ולעשות בו שינויים?

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

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

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

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

האם זו באמת תמונה כל כך קשה? למה אני כל כך בטוח שאי שיחרור יצירה לנחלת הכלל יפגע ביצירתיות? בואו נחשוב על זה כך. ללא public domain רחב ועשיר, היצירות הבאות כנראה לא היו באות לעולם:
אף תרגום של התנ”ך, סיפור הפרוורים, אף אחד מסרטי דיסני המצויירים המודרניים (למעט “מלך האריות”), כל ספרות הפנטזיה, ועוד ועוד ועוד. ללא יכולת נטולת סיכון וסיבוך ליצור בלי חשש מתביעות, כל תהליך היצירה מאט ואף עוצר. ראיתם סרט טוב לאחרונה?

אבל אם אתם חושבים שזה רע, חכו עד שאני אכתוב על פטנטים……

שחר

שבט מנשה – לא יהודים

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

שחר

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

האמת על הבית הלבן יוצאת לאור

ספק הודעה לעיתונות, ספק תמליל של נאום של בוש: http://www.whitehouse.gov/news/releases/2004/08/20040805-4.html

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

פליטת פה, או שהאמת סוף סוף יצאה לאור?

שחר

A Freudian slip is when you mean one thing, but say your mother

הצליח למיקרוסופט

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

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

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

שחר

תחרות Hacking – סיכום?

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

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

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

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

לגבי טענתו של מולי שהוא יכול לכתוב rootkits ברמה של מה שמופיע ב-rootkit.com. אני מאמין לו. באמת. הנקודה שניסיתי להעביר לא היתה שהוא לא מסוגל. מה שניסיתי להעביר זה שגם אם הוא היה עושה את זה, וגם אם הוא לא היה שם את קוד המקור על המכונה, וגם אם הוא לא היה משאיר דלת אחורית במגבלות שהוא שם על הקרנל, עדיין היינו פותרים. במילים אחרות – הפתרון שלנו היה עובד, והיינו מגיעים אליו באותן 15 דקות, גם אם רמת האתגר היתה עולה לרמה שמולי מגדיר בבלוג שלו כ”בלתי אפשרית”.

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

שחר

Bear