ViewWiki

מפתח תשובות · יחידה 7

קריפטוגרפיה.

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

שיעור 1 מתוך 4 · כ־20 דקות

חשבון של שעון

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

לפתוח את השיעור

6 השלבים והתשובות שלהם
  1. שלב 1 מתוך 6

    לפתוח את השלב

    שארית

    תרגול · חשבו

    השאלה

    כמה זה 17 mod 517 \bmod 5⁠?

    התשובה הנכונה

    2 ± 0.01

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6
    הודעה נעולה / המתמטיקה
    המתמטיקה
    מתקבלת בטווח
    ± 0.01
    ערך קבוע בשאלה

    תשובות שגויות שהשאלה מזהה

    • 3 ± 0.01

      טעות נפוצה: Gives the quotient of the division (how many times it goes in) instead of the remainder.

      משוב מהקטלוג

      „a mod na \bmod n⁠” הוא השארית בחלוקה של aa⁠ ב־nn⁠, לא התוצאה של החילוק. ב־17÷517 \div 5⁠ החמישייה נכנסת 33⁠ פעמים, 3×5=153 \times 5 = 15⁠, ונשאר 22⁠: לכן 17 mod 5=217 \bmod 5 = 2⁠. השארית תמיד בין 00⁠ ל־n−1n - 1⁠, כמו מקום על שעון עם nn⁠ מקומות.

    • 3.4 ± 0.01

      טעות נפוצה: Gives the quotient of the division (how many times it goes in) instead of the remainder.

      משוב מהקטלוג

      „a mod na \bmod n⁠” הוא השארית בחלוקה של aa⁠ ב־nn⁠, לא התוצאה של החילוק. ב־17÷517 \div 5⁠ החמישייה נכנסת 33⁠ פעמים, 3×5=153 \times 5 = 15⁠, ונשאר 22⁠: לכן 17 mod 5=217 \bmod 5 = 2⁠. השארית תמיד בין 00⁠ ל־n−1n - 1⁠, כמו מקום על שעון עם nn⁠ מקומות.

    משוב לתשובה נכונה

    17=3×5+217 = 3 \times 5 + 2⁠, ולכן 17 mod 5=217 \bmod 5 = 2⁠. על שעון עם 55⁠ מקומות, 00⁠ עד 44⁠, צעד של 1717⁠ מ־00⁠ מקיף את השעון שלוש פעמים ונוחת על 22⁠.

    רמז

    כמה פעמים נכנסת 55⁠ ב־1717⁠, ומה נשאר?

    פתרון מלא

    1. חלקו: 55⁠ נכנסת ב־1717⁠ שלוש פעמים, 3×5=153 \times 5 = 15⁠.
    2. השארית: 17−15=217 - 15 = 2⁠.
    3. לכן 17 mod 5=217 \bmod 5 = 2⁠.

    אם עניתם 33⁠ או 3.43.4⁠, נתתם את תוצאת החילוק. „מודולו” שומר רק את מה שנשאר.

  2. שלב 2 מתוך 6

    לפתוח את השלב

    סביב השעון

    תרגול · חשבו

    השאלה

    השעון מראה 99⁠. מה הוא יראה בעוד 88⁠ שעות? (על שעון של 1212⁠ שעות, ו־1212⁠ נכתב כאן 00⁠.)

    התשובה הנכונה

    5 ± 0.01

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6
    הודעה נעולה / המתמטיקה
    המתמטיקה
    מתקבלת בטווח
    ± 0.01
    ערך קבוע בשאלה

    תשובות שגויות שהשאלה מזהה

    • 17 ± 0.01

      טעות נפוצה: Forgets to wrap round: gives the plain result instead of its remainder mod n.

      משוב מהקטלוג

      בחשבון מודולרי כל תוצאה „מסתובבת” חזרה לשעון: אחרי n−1n - 1⁠ באה 00⁠. שעה 99⁠ ועוד 88⁠ שעות היא לא 1717⁠ על שעון של 1212⁠, אלא 17 mod 12=517 \bmod 12 = 5⁠. גם בחזקות: 52=255^2 = 25⁠, אבל 52 mod 23=25^2 \bmod 23 = 2⁠. אחרי כל חישוב מחלקים ב־nn⁠ ושומרים רק את השארית.

    משוב לתשובה נכונה

    9+8=179 + 8 = 17⁠, ו־17 mod 12=517 \bmod 12 = 5⁠: חמש. זה חשבון מודולרי, חשבון של שעון: כל פעם שעוברים את 1212⁠, מתחילים שוב מאפס.

    רמז

    חברו, ואחר כך מצאו את השארית בחלוקה ב־1212⁠.

    פתרון מלא

    1. חברו: 9+8=179 + 8 = 17⁠.
    2. על שעון של 1212⁠ שעות: 17=1×12+517 = 1 \times 12 + 5⁠.
    3. 17 mod 12=517 \bmod 12 = 5⁠, והשעון יראה 55⁠.

    אם עניתם 1717⁠, שכחתם להסתובב: על השעון אין מקום 1717⁠.

  3. שלב 3 מתוך 6

    לפתוח את השלב

    חזקות במודולו

    תרגול · חשבו

    השאלה

    החשבון רץ מודולו p=23p = 23⁠, עם g=5g = 5⁠. הסוד של אליס קבוע על a=2a = 2⁠. מה היא שולחת, A=52 mod 23A = 5^2 \bmod 23⁠?

    התשובה הנכונה

    2 ± 0.01

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    2קבוע
    הודעה נעולה / המתמטיקה
    ערבוב צבעיםקבוע
    מתקבלת בטווח
    ± 0.01
    מחושבת מהסצנה בהגדרה של השלב
    What Alice sends, A = gᵃ mod p/nodes/kx/outputs/alicePublic

    תשובות שגויות שהשאלה מזהה

    • 25 ± 0.01

      טעות נפוצה: Forgets to wrap round: gives the plain result instead of its remainder mod n.

      משוב מהקטלוג

      בחשבון מודולרי כל תוצאה „מסתובבת” חזרה לשעון: אחרי n−1n - 1⁠ באה 00⁠. שעה 99⁠ ועוד 88⁠ שעות היא לא 1717⁠ על שעון של 1212⁠, אלא 17 mod 12=517 \bmod 12 = 5⁠. גם בחזקות: 52=255^2 = 25⁠, אבל 52 mod 23=25^2 \bmod 23 = 2⁠. אחרי כל חישוב מחלקים ב־nn⁠ ושומרים רק את השארית.

    • 10 ± 0.01

      טעות נפוצה: Multiplies the base by the exponent (5 × 6) instead of raising it to that power (5⁶).

      משוב מהקטלוג

      gag^a⁠ פירושו לכפול את gg⁠ בעצמו aa⁠ פעמים, לא לכפול את gg⁠ ב־aa⁠. 53=5×5×5=1255^3 = 5 \times 5 \times 5 = 125⁠, ולא 5×3=155 \times 3 = 15⁠. במודולו עושים את זה צעד אחרי צעד: כל חזקה היא הקודמת כפול gg⁠, ואחר כך השארית. מ־52 mod 23=25^2 \bmod 23 = 2⁠ מקבלים 53 mod 23=2×5=105^3 \bmod 23 = 2 \times 5 = 10⁠.

    • 1 ± 0.01

      טעות נפוצה: Gives the quotient of the division (how many times it goes in) instead of the remainder.

      משוב מהקטלוג

      „a mod na \bmod n⁠” הוא השארית בחלוקה של aa⁠ ב־nn⁠, לא התוצאה של החילוק. ב־17÷517 \div 5⁠ החמישייה נכנסת 33⁠ פעמים, 3×5=153 \times 5 = 15⁠, ונשאר 22⁠: לכן 17 mod 5=217 \bmod 5 = 2⁠. השארית תמיד בין 00⁠ ל־n−1n - 1⁠, כמו מקום על שעון עם nn⁠ מקומות.

    משוב לתשובה נכונה

    52=25=1×23+25^2 = 25 = 1 \times 23 + 2⁠, ולכן A=2A = 2⁠. על החוגה עם 2323⁠ המקומות, המחוג של אליס מצביע על 22⁠.

    רמז

    חשבו 525^2⁠, ואחר כך את השארית בחלוקה ב־2323⁠.

    פתרון מלא

    1. 52=5×5=255^2 = 5 \times 5 = 25⁠.
    2. 25=1×23+225 = 1 \times 23 + 2⁠.
    3. A=25 mod 23=2A = 25 \bmod 23 = 2⁠.

    אם עניתם 2525⁠, לא לקחתם שארית. אם עניתם 1010⁠, כפלתם 5×25 \times 2⁠ במקום להעלות בריבוע. אם עניתם 11⁠, נתתם את תוצאת החילוק במקום את השארית.

  4. שלב 4 מתוך 6

    לפתוח את השלב

    צעד אחרי צעד

    תרגול · הגיעו למטרה

    השאלה

    שנו את הסוד של אליס עד ש־A=5a mod 23A = 5^a \bmod 23⁠ שווה 1010⁠, ולחצו על בדיקה.

    המטרה

    • 10 ± 0.1

      בתחילת השלב: 5

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    1
    הודעה נעולה / המתמטיקה
    המתמטיקהקבוע
    נקרא מהסצנה בנקודה
    What Alice sends, A = gᵃ mod p/nodes/kx/outputs/alicePublic

    הגדרה אחת שמגיעה למטרה

    הסוד של אליס
    3

    משוב לתשובה נכונה

    a=3a = 3⁠: 53 mod 23=(52 mod 23)×5 mod 23=2×5=105^3 \bmod 23 = (5^2 \bmod 23) \times 5 \bmod 23 = 2 \times 5 = 10⁠. אין צורך לחשב את 53=1255^3 = 125⁠: אפשר לקחת שארית אחרי כל כפל, והמספרים נשארים קטנים. כך מחשבים חזקות של מספרים בני מאות ספרות.

    משוב לתשובה שגויה

    עוד לא. הסתכלו על הלוח של אליס: הוא מראה את AA⁠ לכל aa⁠.

    רמז

    כל חזקה היא הקודמת כפול 55⁠, ואחר כך השארית: 51 mod 23=55^1 \bmod 23 = 5⁠, 52 mod 23=25^2 \bmod 23 = 2⁠, ומה הלאה?

    פתרון מלא

    1. 51 mod 23=55^1 \bmod 23 = 5⁠.
    2. 52 mod 23=5×5 mod 23=25 mod 23=25^2 \bmod 23 = 5 \times 5 \bmod 23 = 25 \bmod 23 = 2⁠.
    3. 53 mod 23=2×5 mod 23=105^3 \bmod 23 = 2 \times 5 \bmod 23 = 10⁠.
    4. קבעו את הסוד של אליס על 33⁠.

    אם ניסיתם a=2a = 2⁠, קיבלתם A=2A = 2⁠: 5×2=105 \times 2 = 10⁠ הוא כפל, לא חזקה.

  5. שלב 5 מתוך 6

    לפתוח את השלב

    דילוגים

    תרגול · נבאו, ואז הסתכלו

    השאלה

    ב־a=3a = 3⁠ יוצא A=10A = 10⁠. מה יהיה AA⁠ כשהסוד של אליס יעלה ל־a=4a = 4⁠? כתבו מספר, ואחר כך הסצנה תעבור ל־a=4a = 4⁠.

    התשובה הנכונה

    4 ± 0.1

    ניבוי מספרי נחשב נכון בטווח ± 0.1

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    3קבוע
    הודעה נעולה / המתמטיקה
    המתמטיקהקבוע

    אחרי נעילת הניבוי הסצנה משתנה

    הסוד של אליס
    4קבוע

    ואז הסצנה מראה: 4 · What Alice sends, A = gᵃ mod p/nodes/kx/outputs/alicePublic

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

    משוב לתשובה נכונה

    10×5=50=2×23+410 \times 5 = 50 = 2 \times 23 + 4⁠, ולכן A=4A = 4⁠. המחוג קפץ מ־1010⁠ אחורה ל־44⁠: חזקות במודולו לא גדלות באופן מסודר, הן מדלגות על פני השעון. זה בדיוק מה שהופך אותן לקשות לניחוש.

    משוב לתשובה שגויה

    כפלו את AA⁠ הקודם, 1010⁠, ב־g=5g = 5⁠, וקחו את השארית בחלוקה ב־2323⁠.

    רמז

    כפלו את 1010⁠ ב־55⁠ וקחו שארית בחלוקה ב־2323⁠.

    פתרון מלא

    1. 54=53×55^4 = 5^3 \times 5⁠, ולכן 54 mod 23=(53 mod 23)×5 mod 235^4 \bmod 23 = (5^3 \bmod 23) \times 5 \bmod 23⁠.
    2. 10×5=5010 \times 5 = 50⁠.
    3. 50=2×23+450 = 2 \times 23 + 4⁠.
    4. A=4A = 4⁠.

    אם כתבתם 5050⁠, שכחתם להסתובב על השעון. אם כתבתם 1515⁠, הוספתם 55⁠ במקום לכפול בו.

  6. שלב 6 מתוך 6

    לפתוח את השלב

    סיבוב שלם

    תרגול · נבאו, ואז הסתכלו

    השאלה

    החזקות של 55⁠ מודולו 2323⁠ מדלגות על פני החוגה. מה יהיה A=522 mod 23A = 5^{22} \bmod 23⁠? בחרו, ואחר כך הסוד של אליס יעבור ל־2222⁠.

    התשובה הנכונה

    • נכונה 11⁠: אחרי 2222⁠ צעדים החזקות חוזרות להתחלה

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    3קבוע
    הודעה נעולה / המתמטיקה
    המתמטיקהקבוע

    האפשרויות

    • נכונה 11⁠: אחרי 2222⁠ צעדים החזקות חוזרות להתחלה

    • שגויה 2222⁠, המקום האחרון על החוגה

      משוב

      אין סיבה שהחזקה ה־2222⁠ תנחת דווקא על המקום ה־2222⁠: החזקות מדלגות, ו־511 mod 235^{11} \bmod 23⁠ כבר נוחתת שם.

    • שגויה 00⁠: החזקה גדולה כל כך שהיא מגיעה לכפולה של 2323⁠

      משוב

      5225^{22}⁠ הוא מכפלה של חמישיות בלבד, ו־2323⁠ ראשוני, ולכן 2323⁠ לא מחלק אותו לעולם: השארית אף פעם לא 00⁠, גדול ככל שיהיה המעריך.

    אחרי נעילת הניבוי הסצנה משתנה

    הסוד של אליס
    22קבוע

    ואז הסצנה מראה: 1 · What Alice sends, A = gᵃ mod p/nodes/kx/outputs/alicePublic

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

    משוב לתשובה נכונה

    522 mod 23=15^{22} \bmod 23 = 1⁠. החזקות של 55⁠, מ־515^1⁠ עד 5225^{22}⁠, עוברות על כל 2222⁠ המקומות שאינם אפס, כל אחד פעם אחת, וחוזרות ל־11⁠. מכאן הן חוזרות על עצמן: 523 mod 23=55^{23} \bmod 23 = 5⁠. מספר כמו 55⁠, שהחזקות שלו מגיעות לכל מקום, נקרא יוצר, ובו משתמשים בהחלפת מפתחות.

    רמז

    יש 2222⁠ מקומות על החוגה מלבד 00⁠. אם 55⁠ מגיע לכל אחד מהם בדיוק פעם אחת, לאן מגיעים אחרי סיבוב שלם?

    פתרון מלא

    1. החזקות של 55⁠ מודולו 2323⁠: 5, 2, 10, 4, 20, 8, 17, 16, 11, 9, 22, 18, 21, 13, 19, 3, 15, 6, 7, 12, 14, 1.
    2. אלה 2222⁠ מספרים שונים: כל המקומות על החוגה מלבד 00⁠.
    3. החזקה ה־2222⁠ היא 11⁠, ומשם הרצף מתחיל מחדש.

    זה מקרה של המשפט הקטן של פרמה: כש־pp⁠ ראשוני ו־gg⁠ לא מתחלק בו, gp−1 mod p=1g^{p-1} \bmod p = 1⁠.

שיעור 2 מתוך 4 · כ־25 דקות

מספרים ראשוניים

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

לפתוח את השיעור

6 השלבים והתשובות שלהם
  1. שלב 1 מתוך 6

    לפתוח את השלב

    מה זה ראשוני

    תרגול · בחרו

    השאלה

    אילו מהמספרים הבאים ראשוניים? בחרו את כולם.

    התשובה הנכונה

    • נכונה 22⁠

    • נכונה 9797⁠

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    100
    ניפוי הספירלה
    ספירלהקבוע

    האפשרויות

    יותר מאפשרות נכונה אחת: צריך לסמן את כולן.

    • שגויה 11⁠

      טעות נפוצה: Counts 1 as a prime number.

      משוב מהקטלוג

      מספר ראשוני הוא מספר טבעי שיש לו בדיוק שני מחלקים: 11⁠ והוא עצמו. ל־11⁠ יש רק מחלק אחד, ולכן הוא לא ראשוני, וגם לא פריק. ההגדרה נבחרה כך כדי שלכל מספר יהיה פירוק אחד בלבד למכפלה של ראשוניים: אילו 11⁠ היה ראשוני, אפשר היה לכתוב 6=2×3=1×2×36 = 2 \times 3 = 1 \times 2 \times 3⁠ ועוד אינסוף דרכים.

    • נכונה 22⁠

    • שגויה 5151⁠

      טעות נפוצה: Takes an odd number that has no obvious small factor, such as 51, 91 or 99, to be prime.

      משוב מהקטלוג

      מספר אי־זוגי לא מתחלק ב־22⁠, אבל הוא יכול להתחלק ב־33⁠, ב־77⁠ או בכל ראשוני אחר. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠ ו־99=9×1199 = 9 \times 11⁠. כדי לדעת שמספר ראשוני צריך לבדוק שאף ראשוני עד השורש שלו לא מחלק אותו: ל־9191⁠ צריך לבדוק את 22⁠, 33⁠, 55⁠ ו־77⁠, ו־77⁠ מחלק אותו.

    • שגויה 9191⁠

      טעות נפוצה: Takes an odd number that has no obvious small factor, such as 51, 91 or 99, to be prime.

      משוב מהקטלוג

      מספר אי־זוגי לא מתחלק ב־22⁠, אבל הוא יכול להתחלק ב־33⁠, ב־77⁠ או בכל ראשוני אחר. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠ ו־99=9×1199 = 9 \times 11⁠. כדי לדעת שמספר ראשוני צריך לבדוק שאף ראשוני עד השורש שלו לא מחלק אותו: ל־9191⁠ צריך לבדוק את 22⁠, 33⁠, 55⁠ ו־77⁠, ו־77⁠ מחלק אותו.

    • נכונה 9797⁠

    משוב לתשובה נכונה

    22⁠ ו־9797⁠. 22⁠ הוא הראשוני הזוגי היחיד. 9797⁠ לא מתחלק ב־22⁠, 33⁠, 55⁠ או 77⁠, וזה מספיק, כי 112=12111^2 = 121⁠ כבר גדול ממנו. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠, ו־11⁠ אינו ראשוני: יש לו מחלק אחד בלבד.

    רמז

    לכל מספר, נסו לחלק אותו בראשוניים 22⁠, 33⁠, 55⁠ ו־77⁠.

    פתרון מלא

    1. 11⁠: יש לו מחלק אחד בלבד, ולכן אינו ראשוני.
    2. 22⁠: מחלקיו 11⁠ ו־22⁠. ראשוני.
    3. 5151⁠: סכום הספרות 66⁠ מתחלק ב־33⁠, ו־51=3×1751 = 3 \times 17⁠. פריק.
    4. 91=7×1391 = 7 \times 13⁠. פריק.
    5. 9797⁠: לא מתחלק ב־22⁠, 33⁠, 55⁠ או 77⁠, ו־97<10\sqrt{97} < 10⁠. ראשוני.

    מספרים כמו 5151⁠ ו־9191⁠ „נראים” ראשוניים כי הם אי־זוגיים ולא נגמרים ב־55⁠. צריך לבדוק את כל הראשוניים עד השורש.

  2. שלב 2 מתוך 6

    לפתוח את השלב

    הגדול ביותר עד מאה

    תרגול · חשבו

    השאלה

    גבול הספירה קבוע על 100100⁠. מהו הראשוני הגדול ביותר עד 100100⁠?

    התשובה הנכונה

    97 ± 0.1

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    100קבוע
    ניפוי הספירלה
    ספירלהקבוע
    מתקבלת בטווח
    ± 0.1
    מחושבת מהסצנה בהגדרה של השלב
    The largest prime from 1 to count/nodes/spiral/outputs/largestPrime

    תשובות שגויות שהשאלה מזהה

    • 99 ± 0.1

      טעות נפוצה: Takes an odd number that has no obvious small factor, such as 51, 91 or 99, to be prime.

      משוב מהקטלוג

      מספר אי־זוגי לא מתחלק ב־22⁠, אבל הוא יכול להתחלק ב־33⁠, ב־77⁠ או בכל ראשוני אחר. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠ ו־99=9×1199 = 9 \times 11⁠. כדי לדעת שמספר ראשוני צריך לבדוק שאף ראשוני עד השורש שלו לא מחלק אותו: ל־9191⁠ צריך לבדוק את 22⁠, 33⁠, 55⁠ ו־77⁠, ו־77⁠ מחלק אותו.

    משוב לתשובה נכונה

    9797⁠. 100100⁠ ו־9898⁠ זוגיים, 99=9×1199 = 9 \times 11⁠, ו־9797⁠ לא מתחלק באף אחד מהראשוניים 22⁠, 33⁠, 55⁠ ו־77⁠. על המגש הוא אריח זהוב בולט.

    רמז

    רדו מ־100100⁠ ובדקו כל מספר אי־זוגי.

    פתרון מלא

    1. 100100⁠ ו־9898⁠ זוגיים: פריקים.
    2. 9999⁠: סכום הספרות 1818⁠ מתחלק ב־33⁠, ו־99=9×1199 = 9 \times 11⁠. פריק.
    3. 9797⁠: נבדוק את הראשוניים עד 97≈9.8\sqrt{97} \approx 9.8⁠, כלומר 22⁠, 33⁠, 55⁠ ו־77⁠. אף אחד מהם לא מחלק אותו.
    4. 9797⁠ הוא הראשוני הגדול ביותר עד 100100⁠.

    אם עניתם 9999⁠, הוא אי־זוגי אבל מתחלק ב־33⁠ וב־1111⁠.

  3. שלב 3 מתוך 6

    לפתוח את השלב

    הנפה

    תרגול · נבאו, ואז הסתכלו

    השאלה

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

    התשובה הנכונה

    • נכונה 88⁠: הראשוניים עד 2020⁠

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    400קבוע
    ניפוי הספירלה
    ספירלהקבוע

    האפשרויות

    • נכונה 88⁠: הראשוניים עד 2020⁠

    • שגויה 7878⁠: כל הראשוניים עד 400400⁠

      טעות נפוצה: Thinks the sieve must cross out multiples of every prime up to the count, not just of the primes up to its square root.

      משוב מהקטלוג

      מספר פריק עד nn⁠ תמיד מתחלק בראשוני שאינו גדול מ־n\sqrt{n}⁠: אם שני הגורמים שלו היו גדולים מ־n\sqrt{n}⁠, המכפלה הייתה גדולה מ־nn⁠. לכן אחרי שהנפה עברה את הראשוניים עד n\sqrt{n}⁠, כל מספר פריק כבר נמחק. עד 400400⁠, 400=20\sqrt{400} = 20⁠, ומספיקים שמונה ראשוניים: מ־22⁠ עד 1919⁠.

    • שגויה 44⁠: הראשוניים 22⁠, 33⁠, 55⁠ ו־77⁠

      משוב

      22⁠, 33⁠, 55⁠ ו־77⁠ מספיקים עד 120120⁠, אבל לא עד 400400⁠: 112=12111^2 = 121⁠, 132=16913^2 = 169⁠, 172=28917^2 = 289⁠ ו־192=36119^2 = 361⁠ הם פריקים שאף אחד מהם לא מוחק.

    אחרי נעילת הניבוי הסצנה משתנה

    ניפוי הספירלה
    0.62 (ספירלה → נפה ורווחים)קבוע

    ואז הסצנה מראה: 8 · How many primes the sieve runs through (those up to √count)/nodes/spiral/outputs/sievingPrimes

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

    משוב לתשובה נכונה

    שמונה: 2,3,5,7,11,13,17,192, 3, 5, 7, 11, 13, 17, 19⁠. כל פריק עד 400400⁠ מתחלק בראשוני שאינו גדול מ־400=20\sqrt{400} = 20⁠, ולכן אחרי 1919⁠ כבר אין מה למחוק. הנפה מתחילה למחוק כל ראשוני מהריבוע שלו, כי הכפולות הקטנות יותר כבר נמחקו.

    רמז

    למספר פריק עד 400400⁠ יש גורם ראשוני שאינו גדול מ־400\sqrt{400}⁠.

    פתרון מלא

    1. אם n=a×bn = a \times b⁠ ושני הגורמים גדולים מ־2020⁠, אז n>400n > 400⁠.
    2. לכן לכל פריק עד 400400⁠ יש גורם ראשוני שאינו גדול מ־2020⁠.
    3. הראשוניים עד 2020⁠: 2,3,5,7,11,13,17,192, 3, 5, 7, 11, 13, 17, 19⁠. שמונה.
    4. אחרי שהנפה עברה בהם, כל אריח שנשאר הוא ראשוני.

    אם בחרתם 7878⁠, הנפה הייתה ממשיכה לחינם: ל־2323⁠ אין אף כפולה פריקה עד 400400⁠ שלא נמחקה כבר, כי 232=52923^2 = 529⁠.

  4. שלב 4 מתוך 6

    לפתוח את השלב

    מתדלדלים

    תרגול · הגיעו למטרה

    השאלה

    עד 100100⁠ יש 2525⁠ ראשוניים. שנו את גבול הספירה עד שהלוח מראה 168168⁠ ראשוניים, ולחצו על בדיקה.

    המטרה

    • 168 ± 0.1

      בתחילת השלב: 25

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    100
    ניפוי הספירלה
    ספירלהקבוע
    נקרא מהסצנה בנקודה
    How many primes there are from 1 to count/nodes/spiral/outputs/primeCount

    הגדרה אחת שמגיעה למטרה

    גבול הספירה
    1000

    משוב לתשובה נכונה

    ב־10001000⁠. פי עשרה מספרים, אבל רק פי 6.76.7⁠ ראשוניים: עד 100100⁠ רבע מהמספרים ראשוניים, ועד 10001000⁠ פחות משישית. ככל שמספר גדול יותר, יש יותר ראשוניים קטנים שיכולים לחלק אותו.

    משוב לתשובה שגויה

    עוד לא. הלוח מאחורי המגש סופר את הראשוניים. המשיכו לספור הלאה.

    רמז

    אם הראשוניים היו שומרים על הצפיפות שלהם, 168168⁠ היו מגיעים כבר ב־700700⁠ בערך. הם לא.

    פתרון מלא

    1. הזיזו את גבול הספירה והסתכלו על מספר הראשוניים על הלוח.
    2. עד 900900⁠ יש 154154⁠ ראשוניים, ועד 11001100⁠ יש 184184⁠.
    3. בדיוק 168168⁠ מתקבל ב־10001000⁠.

    אם ציפיתם ל־168168⁠ בסביבות 700700⁠, הנחתם שהראשוניים שומרים על רבע מהמספרים. הם מתדלדלים.

  5. שלב 5 מתוך 6

    לפתוח את השלב

    שמינית

    תרגול · חשבו

    השאלה

    גבול הספירה קבוע על 10 00010\,000⁠, והלוח מראה כמה ראשוניים יש עד שם. איזה חלק מהמספרים עד 10 00010\,000⁠ ראשוניים? ענו באחוזים.

    התשובה הנכונה

    12.29 ± 0.05

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    10000קבוע
    ניפוי הספירלה
    ספירלהקבוע
    מתקבלת בטווח
    ± 0.05
    מחושבת מהסצנה בהגדרה של השלב
    How many primes there are from 1 to count/nodes/spiral/outputs/primeCount

    תשובות שגויות שהשאלה מזהה

    • 25 ± 0.05

      טעות נפוצה: Thinks primes keep the same share of the numbers however far you count, as the quarter below 100.

      משוב מהקטלוג

      הראשוניים הולכים ומתדלדלים. עד 100100⁠ יש 2525⁠, רבע מהמספרים; עד 10001000⁠ יש 168168⁠, פחות משישית; עד 10 00010\,000⁠ יש 12291229⁠, כשמינית. ככל שמספר גדול יותר, יש יותר ראשוניים קטנים ממנו שיכולים לחלק אותו. הסיכוי שמספר בסביבת nn⁠ ראשוני הוא בערך 1ln⁡n\tfrac{1}{\ln n}⁠, והוא קטן לאט. ובכל זאת הם לא נגמרים: אוקלידס הוכיח שיש אינסוף ראשוניים.

    • 16.8 ± 0.05

      טעות נפוצה: Thinks primes keep the same share of the numbers however far you count, as the quarter below 100.

      משוב מהקטלוג

      הראשוניים הולכים ומתדלדלים. עד 100100⁠ יש 2525⁠, רבע מהמספרים; עד 10001000⁠ יש 168168⁠, פחות משישית; עד 10 00010\,000⁠ יש 12291229⁠, כשמינית. ככל שמספר גדול יותר, יש יותר ראשוניים קטנים ממנו שיכולים לחלק אותו. הסיכוי שמספר בסביבת nn⁠ ראשוני הוא בערך 1ln⁡n\tfrac{1}{\ln n}⁠, והוא קטן לאט. ובכל זאת הם לא נגמרים: אוקלידס הוכיח שיש אינסוף ראשוניים.

    משוב לתשובה נכונה

    122910 000≈12.3%\tfrac{1229}{10\,000} \approx 12.3\%⁠: כשמינית מהמספרים. עד 100100⁠ זה היה רבע, ועד 10001000⁠ כשישית. הצפיפות יורדת בערך כמו 1ln⁡n\tfrac{1}{\ln n}⁠, לאט, ולעולם לא מגיעה לאפס.

    רמז

    חלקו את מספר הראשוניים ב־10 00010\,000⁠ וכפלו ב־100100⁠.

    פתרון מלא

    1. הלוח מראה 12291229⁠ ראשוניים עד 10 00010\,000⁠.
    2. החלק: 122910 000=0.1229\tfrac{1229}{10\,000} = 0.1229⁠.
    3. באחוזים: 12.29%12.29\%⁠.

    אם עניתם 25%25\%⁠ או 16.8%16.8\%⁠, השתמשתם בצפיפות של 100100⁠ או של 10001000⁠. הראשוניים מתדלדלים ככל שסופרים הלאה.

  6. שלב 6 מתוך 6

    לפתוח את השלב

    כיוון אחד קל

    תרגול · בחרו

    השאלה

    קל לכפול: 89×97=863389 \times 97 = 8633⁠. עכשיו בכיוון השני: מישהו נותן לכם רק את 86338633⁠. מה נכון לגביו?

    התשובה הנכונה

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

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    גבול הספירה
    10000
    ניפוי הספירלה
    נפה ורווחים

    האפשרויות

    מוצגות בסדר אקראי.

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

    • שגויה הוא ראשוני, כי הוא לא מתחלק ב־22⁠, 33⁠, 55⁠ או 77⁠

      טעות נפוצה: Takes an odd number that has no obvious small factor, such as 51, 91 or 99, to be prime.

      משוב מהקטלוג

      מספר אי־זוגי לא מתחלק ב־22⁠, אבל הוא יכול להתחלק ב־33⁠, ב־77⁠ או בכל ראשוני אחר. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠ ו־99=9×1199 = 9 \times 11⁠. כדי לדעת שמספר ראשוני צריך לבדוק שאף ראשוני עד השורש שלו לא מחלק אותו: ל־9191⁠ צריך לבדוק את 22⁠, 33⁠, 55⁠ ו־77⁠, ו־77⁠ מחלק אותו.

    • שגויה מוצאים את הגורמים שלו באותה מהירות שבה כופלים

      משוב

      כדי למצוא את הגורמים צריך לנסות ראשוניים אחד אחרי השני, עד 8633≈93\sqrt{8633} \approx 93⁠: עשרים וארבעה ניסיונות, ורק האחרון, 8989⁠, מצליח. כל זה במקום כפל אחד.

    משוב לתשובה נכונה

    8633=89×978633 = 89 \times 97⁠. כפל לוקח רגע, אבל הדרך הפשוטה לפרק היא לנסות ראשוניים אחד אחרי השני, וכאן צריך להגיע עד 8989⁠. במספרים בני מאות ספרות הכפל עדיין לוקח רגע, ולפירוק לא ידועה שום דרך מהירה. על הפער הזה, בין כיוון קל לכיוון קשה, נשענת ההצפנה.

    רמז

    כדי לדעת אם 86338633⁠ ראשוני, צריך לבדוק את כל הראשוניים עד 8633\sqrt{8633}⁠. כמה זה?

    פתרון מלא

    1. 8633≈92.9\sqrt{8633} \approx 92.9⁠, ולכן צריך לבדוק את הראשוניים עד 8989⁠.
    2. 22⁠, 33⁠, 55⁠, 77⁠ ועוד תשעה־עשר ראשוניים, עד 8383⁠, לא מחלקים את 86338633⁠.
    3. 8989⁠ מחלק: 8633÷89=978633 \div 89 = 97⁠.
    4. 8633=89×978633 = 89 \times 97⁠, מכפלה של שני ראשוניים.

    אם חשבתם שהוא ראשוני, עצרתם מוקדם מדי: בדיקה עד 77⁠ מספיקה רק למספרים עד 120120⁠.

שיעור 3 מתוך 4 · כ־20 דקות

מפתחות וניחוש

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

לפתוח את השיעור

6 השלבים והתשובות שלהם
  1. שלב 1 מתוך 6

    לפתוח את השלב

    הודעה נעולה

    תרגול · בחרו

    השאלה

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

    התשובה הנכונה

    • נכונה איב מעתיקה גם את המפתח, ופותחת בו כל הודעה

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    56 סיביות
    פתיחה צעד אחר צעד
    הודעה נעולהקבוע

    האפשרויות

    מוצגות בסדר אקראי.

    • נכונה איב מעתיקה גם את המפתח, ופותחת בו כל הודעה

    • שגויה אין בעיה: המפתח קצר, ואיב לא תשים לב אליו

      משוב

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

    • שגויה אין בעיה: נועלים את המפתח במפתח שני

      משוב

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

    משוב לתשובה נכונה

    מפתח שעבר בערוץ פתוח כבר לא סודי. זו בעיית הפצת המפתחות: כדי לדבר בסוד צריך מפתח משותף, וכדי להעביר מפתח צריך ערוץ סודי. בשיעור הבא נראה איך דיפי והלמן פתרו אותה ב־1976.

    רמז

    מה איב יכולה לעשות עם כל דבר שהיא מעתיקה?

    פתרון מלא

    1. כל מה שעובר בצינור מגיע גם לאיב.
    2. אם המפתח עובר בצינור, יש לאיב אותו מפתח שיש לבוב.
    3. עם המפתח היא פותחת כל הודעה שננעלה בו.

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

  2. שלב 2 מתוך 6

    לפתוח את השלב

    לספור מפתחות

    תרגול · חשבו

    השאלה

    אורך המפתח קבוע על 88⁠ סיביות, ולוח המכונה של איב מראה 28=2562^8 = 256⁠ מפתחות לנסות. כמה מפתחות שונים יש באורך 1616⁠ סיביות?

    התשובה הנכונה

    65540 ± 0.5

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    8 סיביותקבוע
    פתיחה צעד אחר צעד
    הודעה נעולהקבוע
    מתקבלת בטווח
    ± 0.5
    ערך קבוע בשאלה

    תשובות שגויות שהשאלה מזהה

    • 512 ± 0.5

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    • 32 ± 0.5

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    משוב לתשובה נכונה

    216=65 5362^{16} = 65\,536⁠. שמונה סיביות נוספות הכפילו את מספר המפתחות שמונה פעמים: 256×28=256×256256 \times 2^8 = 256 \times 256⁠. מפתח ארוך פי שניים מכיל לא פי שניים מפתחות, אלא את מספר המפתחות הקודם בריבוע.

    רמז

    כל סיבית נוספת מכפילה את מספר המפתחות. כמה סיביות נוספו?

    פתרון מלא

    1. לכל סיבית שתי אפשרויות, 00⁠ או 11⁠.
    2. ל־1616⁠ סיביות: 2×2×⋯×22 \times 2 \times \dots \times 2⁠, שש־עשרה פעמים, כלומר 2162^{16}⁠.
    3. 216=28×28=256×256=65 5362^{16} = 2^8 \times 2^8 = 256 \times 256 = 65\,536⁠.

    אם עניתם 512512⁠, הכפלתם פעם אחת, כאילו מפתח ארוך פי שניים מכיל פי שניים מפתחות. אם עניתם 3232⁠, כפלתם 16×216 \times 2⁠.

  3. שלב 3 מתוך 6

    לפתוח את השלב

    בית אחד יותר

    תרגול · נבאו, ואז הסתכלו

    השאלה

    אורך המפתח 5656⁠ סיביות, כמו של DES משנת 1977, והמכונה של איב מנסה את כל המפתחות בכעשרים שעות. עכשיו המפתח יתארך לאורך 6464⁠ סיביות. פי כמה יגדל הזמן שאיב צריכה?

    התשובה הנכונה

    • נכונה פי 256256⁠

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    56 סיביותקבוע
    פתיחה צעד אחר צעד
    הודעה נעולהקבוע

    האפשרויות

    • נכונה פי 256256⁠

    • שגויה פי 1.141.14⁠, כי המפתח ארוך יותר בשביעית

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    • שגויה פי 88⁠, כי נוספו שמונה סיביות

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    אחרי נעילת הניבוי הסצנה משתנה

    אורך המפתח
    64 סיביותקבוע

    ואז הסצנה מראה: 0.5845 · The same in years of 365.25 days/nodes/kx/outputs/yearsToTryAll

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

    משוב לתשובה נכונה

    פי 28=2562^8 = 256⁠: מעשרים שעות לכשבעה חודשים. כל סיבית מכפילה את מספר המפתחות ואת הזמן, ולכן שמונה סיביות, בית אחד, מכפילות אותו פי 256256⁠. ב־1998 מכונה מיוחדת מצאה מפתח DES בפחות משלושה ימים, וזו הסיבה שהיום משתמשים במפתחות ארוכים בהרבה.

    רמז

    כל סיבית מכפילה את מספר המפתחות. מה עושות שמונה סיביות?

    פתרון מלא

    1. ב־5656⁠ סיביות יש 2562^{56}⁠ מפתחות, וב־6464⁠ סיביות 2642^{64}⁠.
    2. היחס: 264256=28=256\tfrac{2^{64}}{2^{56}} = 2^{8} = 256⁠.
    3. באותו קצב ניסיון, הזמן גדל פי 256256⁠: מכעשרים שעות לכ־0.580.58⁠ שנה.

    אם בחרתם פי 1.141.14⁠ או פי 88⁠, חשבתם שמספר המפתחות גדל באותו יחס כמו אורך המפתח. הוא גדל פי שניים לכל סיבית.

  4. שלב 4 מתוך 6

    לפתוח את השלב

    שמונה סיביות נוספות

    תרגול · נבאו, ואז הסתכלו

    השאלה

    אורך המפתח 4040⁠ סיביות, והמכונה של איב, שמנסה 101210^{12}⁠ מפתחות בשנייה, עוברת על כולם בכ־1.11.1⁠ שניות. כמה זמן ייקח לה מפתח של 4848⁠ סיביות? כתבו בשניות.

    התשובה הנכונה

    281.5 s ± 5%

    ניבוי מספרי נחשב נכון בטווח ± 5%

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    40 סיביותקבוע
    פתיחה צעד אחר צעד
    הודעה נעולהקבוע

    אחרי נעילת הניבוי הסצנה משתנה

    אורך המפתח
    48 סיביותקבוע

    ואז הסצנה מראה: 281.5 s · Seconds Eve needs to try every key at guessRate keys a second/nodes/kx/outputs/secondsToTryAll

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

    משוב לתשובה נכונה

    1.1×256≈2811.1 \times 256 \approx 281⁠ שניות, קצת פחות מחמש דקות. או ישירות: 2481012≈2.8×10141012=281\tfrac{2^{48}}{10^{12}} \approx \tfrac{2.8 \times 10^{14}}{10^{12}} = 281⁠.

    משוב לתשובה שגויה

    כפלו את 1.11.1⁠ השניות של 4040⁠ סיביות במספר הפעמים שבו גדל מספר המפתחות.

    רמז

    שמונה סיביות נוספות: 28=2562^8 = 256⁠ פעמים יותר מפתחות.

    פתרון מלא

    1. מ־4040⁠ ל־4848⁠ סיביות נוספות 88⁠ סיביות, ומספר המפתחות גדל פי 28=2562^8 = 256⁠.
    2. הקצב לא משתנה, ולכן גם הזמן גדל פי 256256⁠.
    3. 1.0995×256≈281.51.0995 \times 256 \approx 281.5⁠ שניות.

    אם כתבתם 1.31.3⁠ שניות בערך, הגדלתם את הזמן באותו יחס כמו אורך המפתח, 4840\tfrac{48}{40}⁠.

  5. שלב 5 מתוך 6

    לפתוח את השלב

    מחוץ להישג יד

    תרגול · הגיעו למטרה

    השאלה

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

    המטרה

    • 0.58 ± 5%

      בתחילת השלב: 10780000000000000000

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    128 סיביות
    פתיחה צעד אחר צעד
    הודעה נעולהקבוע
    נקרא מהסצנה בנקודה
    The same in years of 365.25 days/nodes/kx/outputs/yearsToTryAll

    הגדרה אחת שמגיעה למטרה

    אורך המפתח
    64 סיביות

    משוב לתשובה נכונה

    6464⁠ סיביות: 2641012≈1.8×107\tfrac{2^{64}}{10^{12}} \approx 1.8 \times 10^7⁠ שניות, כשבעה חודשים. שמונה סיביות פחות, וזה עשרים שעות; שמונה סיביות יותר, 7272⁠, וזה כבר כמאה וחמישים שנה.

    משוב לתשובה שגויה

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

    רמז

    שנה היא כ־3.2×1073.2 \times 10^7⁠ שניות. כמה מפתחות המכונה מנסה בשבעה חודשים?

    פתרון מלא

    1. שבעה חודשים הם כ־0.58×3.16×107≈1.8×1070.58 \times 3.16 \times 10^7 \approx 1.8 \times 10^7⁠ שניות.
    2. בקצב של 101210^{12}⁠ מפתחות בשנייה, זה כ־1.8×10191.8 \times 10^{19}⁠ מפתחות.
    3. 264≈1.8×10192^{64} \approx 1.8 \times 10^{19}⁠.
    4. קבעו את אורך המפתח על 6464⁠ סיביות.
  6. שלב 6 מתוך 6

    לפתוח את השלב

    פי שניים באורך

    תרגול · בחרו

    השאלה

    מפתח של 256256⁠ סיביות ארוך פי שניים ממפתח של 128128⁠ סיביות. פי כמה מפתחות יש בו?

    התשובה הנכונה

    • נכונה פי 21282^{128}⁠, בערך 3.4×10383.4 \times 10^{38}⁠

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    אורך המפתח
    128 סיביות
    פתיחה צעד אחר צעד
    הודעה נעולה

    האפשרויות

    מוצגות בסדר אקראי.

    • נכונה פי 21282^{128}⁠, בערך 3.4×10383.4 \times 10^{38}⁠

    • שגויה פי 22⁠

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    • שגויה פי 128128⁠, כי נוספו 128128⁠ סיביות

      טעות נפוצה: Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

      משוב מהקטלוג

      למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

    משוב לתשובה נכונה

    22562128=2128\tfrac{2^{256}}{2^{128}} = 2^{128}⁠. כבר מפתח של 128128⁠ סיביות דורש מהמכונה של איב פי מיליארד מגיל היקום. מפתח של 256256⁠ סיביות מכפיל את זה עוד 3.4×10383.4 \times 10^{38}⁠ פעמים. ניחוש מפתח אינו דרך לפרוץ הצפנה טובה; מה שמאיים עליה הוא חולשה בשיטה עצמה.

    רמז

    22562128=?\tfrac{2^{256}}{2^{128}} = ?⁠

    פתרון מלא

    1. ב־128128⁠ סיביות יש 21282^{128}⁠ מפתחות, וב־256256⁠ סיביות 22562^{256}⁠.
    2. היחס: 22562128=2256−128=2128\tfrac{2^{256}}{2^{128}} = 2^{256 - 128} = 2^{128}⁠.
    3. 2128≈3.4×10382^{128} \approx 3.4 \times 10^{38}⁠.

    כשמכפילים את אורך המפתח, מעלים את מספר המפתחות בריבוע: 2256=(2128)22^{256} = \left(2^{128}\right)^2⁠.

שיעור 4 מתוך 4 · כ־30 דקות

החלפת המפתחות של דיפי והלמן

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

לפתוח את השיעור

6 השלבים והתשובות שלהם
  1. שלב 1 מתוך 6

    לפתוח את השלב

    ערבוב צבעים

    תרגול · בחרו

    השאלה

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

    התשובה הנכונה

    • נכונה כן: כל אחד מערבב צבע סודי משלו בצבע הפומבי, שולח את התערובת, ומוסיף את הסוד שלו למה שקיבל

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6מוסתר
    הסוד של בוב
    15מוסתר
    הודעה נעולה / המתמטיקה
    ערבוב צבעיםקבוע

    האפשרויות

    מוצגות בסדר אקראי.

    • נכונה כן: כל אחד מערבב צבע סודי משלו בצבע הפומבי, שולח את התערובת, ומוסיף את הסוד שלו למה שקיבל

    • שגויה לא: קודם הם צריכים להיפגש, או לשלוח את הסוד בשליח

      טעות נפוצה: Thinks two parties can only agree on a secret key if some secret has already passed between them, in advance or down the channel.

      משוב מהקטלוג

      זה מה שכולם חשבו עד 1976, ודיפי והלמן הראו שזה לא נכון. בהחלפת המפתחות שלהם אף סוד לא עובר בערוץ: כל צד שומר את הסוד שלו, aa⁠ או bb⁠, ושולח רק ga mod pg^a \bmod p⁠ או gb mod pg^b \bmod p⁠. כל צד מצרף לערך שקיבל את הסוד שלו, ושניהם מגיעים לאותו ss⁠. איב רואה כל מה שעובר, ובכל זאת אין לה דרך מהירה להגיע ל־ss⁠.

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

      משוב

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

    משוב לתשובה נכונה

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

    רמז

    הסתכלו על מה שעובר בצינור בסצנה: האם צבע סודי עובר בו אי פעם?

    פתרון מלא

    1. צבע פומבי ידוע לכולם, גם לאיב.
    2. אליס שולחת פומבי + הסוד שלה; בוב שולח פומבי + הסוד שלו. הסודות לא נשלחים.
    3. אליס מוסיפה את הסוד שלה למה שקיבלה מבוב, ובוב את הסוד שלו למה שקיבל מאליס.
    4. בשני הצדדים יש עכשיו פומבי + סוד של אליס + סוד של בוב: אותו צבע.
    5. לאיב יש שתי תערובות, ואי אפשר להפריד צבע מתערובת.

    אם עניתם שהם חייבים להיפגש, זו הייתה ההנחה של כולם עד 1976.

  2. שלב 2 מתוך 6

    לפתוח את השלב

    מצבע למספר

    תרגול · חשבו

    השאלה

    עכשיו במספרים. הערכים הפומביים: p=23p = 23⁠ ו־g=5g = 5⁠. הסוד של אליס הוא a=6a = 6⁠. מה היא שולחת, A=56 mod 23A = 5^6 \bmod 23⁠?

    התשובה הנכונה

    8 ± 0.1

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6קבוע
    הסוד של בוב
    15קבוע
    הודעה נעולה / המתמטיקה
    ערבוב צבעיםקבוע
    מתקבלת בטווח
    ± 0.1
    מחושבת מהסצנה בהגדרה של השלב
    What Alice sends, A = gᵃ mod p/nodes/kx/outputs/alicePublic

    תשובות שגויות שהשאלה מזהה

    • 30 ± 0.1

      טעות נפוצה: Multiplies the base by the exponent (5 × 6) instead of raising it to that power (5⁶).

      משוב מהקטלוג

      gag^a⁠ פירושו לכפול את gg⁠ בעצמו aa⁠ פעמים, לא לכפול את gg⁠ ב־aa⁠. 53=5×5×5=1255^3 = 5 \times 5 \times 5 = 125⁠, ולא 5×3=155 \times 3 = 15⁠. במודולו עושים את זה צעד אחרי צעד: כל חזקה היא הקודמת כפול gg⁠, ואחר כך השארית. מ־52 mod 23=25^2 \bmod 23 = 2⁠ מקבלים 53 mod 23=2×5=105^3 \bmod 23 = 2 \times 5 = 10⁠.

    • 15630 ± 0.1

      טעות נפוצה: Forgets to wrap round: gives the plain result instead of its remainder mod n.

      משוב מהקטלוג

      בחשבון מודולרי כל תוצאה „מסתובבת” חזרה לשעון: אחרי n−1n - 1⁠ באה 00⁠. שעה 99⁠ ועוד 88⁠ שעות היא לא 1717⁠ על שעון של 1212⁠, אלא 17 mod 12=517 \bmod 12 = 5⁠. גם בחזקות: 52=255^2 = 25⁠, אבל 52 mod 23=25^2 \bmod 23 = 2⁠. אחרי כל חישוב מחלקים ב־nn⁠ ושומרים רק את השארית.

    • 679 ± 0.1

      טעות נפוצה: Gives the quotient of the division (how many times it goes in) instead of the remainder.

      משוב מהקטלוג

      „a mod na \bmod n⁠” הוא השארית בחלוקה של aa⁠ ב־nn⁠, לא התוצאה של החילוק. ב־17÷517 \div 5⁠ החמישייה נכנסת 33⁠ פעמים, 3×5=153 \times 5 = 15⁠, ונשאר 22⁠: לכן 17 mod 5=217 \bmod 5 = 2⁠. השארית תמיד בין 00⁠ ל־n−1n - 1⁠, כמו מקום על שעון עם nn⁠ מקומות.

    משוב לתשובה נכונה

    A=8A = 8⁠. דרך קצרה: 56=(52)35^6 = (5^2)^3⁠, ו־52 mod 23=25^2 \bmod 23 = 2⁠, ולכן 56 mod 23=23=85^6 \bmod 23 = 2^3 = 8⁠. את 88⁠ אליס שולחת בצינור, ואיב מעתיקה אותו. את 66⁠ היא לא שולחת לאף אחד.

    רמז

    עלו בחזקות צעד אחרי צעד, עם שארית אחרי כל כפל: 52 mod 23=25^2 \bmod 23 = 2⁠, 53 mod 23=105^3 \bmod 23 = 10⁠, 54 mod 23=45^4 \bmod 23 = 4⁠…

    פתרון מלא

    1. 52=255^2 = 25⁠, ו־25 mod 23=225 \bmod 23 = 2⁠.
    2. 56=(52)35^6 = (5^2)^3⁠, ולכן 56 mod 23=23 mod 235^6 \bmod 23 = 2^3 \bmod 23⁠.
    3. 23=82^3 = 8⁠, קטן מ־2323⁠.
    4. A=8A = 8⁠.

    אפשר גם ישירות: 56=15 625=679×23+85^6 = 15\,625 = 679 \times 23 + 8⁠. אם עניתם 3030⁠, כפלתם 5×65 \times 6⁠. אם עניתם 15 62515\,625⁠, לא לקחתם שארית, ואם 679679⁠, נתתם את תוצאת החילוק.

  3. שלב 3 מתוך 6

    לפתוח את השלב

    המפתח של אליס

    תרגול · חשבו

    השאלה

    הסוד של בוב הוא b=15b = 15⁠, והוא שלח B=19B = 19⁠. אליס מצרפת אליו את הסוד שלה, a=6a = 6⁠. מה המפתח המשותף שלה, s=196 mod 23s = 19^6 \bmod 23⁠?

    התשובה הנכונה

    2 ± 0.1

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6קבוע
    הסוד של בוב
    15קבוע
    הודעה נעולה / המתמטיקה
    ערבוב צבעיםקבוע
    מתקבלת בטווח
    ± 0.1
    מחושבת מהסצנה בהגדרה של השלב
    The shared key s = Bᵃ mod p = Aᵇ mod p/nodes/kx/outputs/sharedSecret

    תשובות שגויות שהשאלה מזהה

    • 22 ± 0.1

      טעות נפוצה: Multiplies the base by the exponent (5 × 6) instead of raising it to that power (5⁶).

      משוב מהקטלוג

      gag^a⁠ פירושו לכפול את gg⁠ בעצמו aa⁠ פעמים, לא לכפול את gg⁠ ב־aa⁠. 53=5×5×5=1255^3 = 5 \times 5 \times 5 = 125⁠, ולא 5×3=155 \times 3 = 15⁠. במודולו עושים את זה צעד אחרי צעד: כל חזקה היא הקודמת כפול gg⁠, ואחר כך השארית. מ־52 mod 23=25^2 \bmod 23 = 2⁠ מקבלים 53 mod 23=2×5=105^3 \bmod 23 = 2 \times 5 = 10⁠.

    • 47050000 ± 1

      טעות נפוצה: Forgets to wrap round: gives the plain result instead of its remainder mod n.

      משוב מהקטלוג

      בחשבון מודולרי כל תוצאה „מסתובבת” חזרה לשעון: אחרי n−1n - 1⁠ באה 00⁠. שעה 99⁠ ועוד 88⁠ שעות היא לא 1717⁠ על שעון של 1212⁠, אלא 17 mod 12=517 \bmod 12 = 5⁠. גם בחזקות: 52=255^2 = 25⁠, אבל 52 mod 23=25^2 \bmod 23 = 2⁠. אחרי כל חישוב מחלקים ב־nn⁠ ושומרים רק את השארית.

    • 14 ± 0.1

      טעות נפוצה: Thinks the shared key can be worked out directly from the public values, for example as A × B mod p.

      משוב מהקטלוג

      הסוד המשותף הוא s=gab mod ps = g^{ab} \bmod p⁠: כדי להגיע אליו צריך את aa⁠ או את bb⁠. מהערכים הפומביים אפשר לקבל רק צירופים כמו A×B=ga+bA \times B = g^{a+b}⁠, עם סכום המעריכים ולא המכפלה שלהם. כאן A×B mod 23=8×19 mod 23=14A \times B \bmod 23 = 8 \times 19 \bmod 23 = 14⁠, ולא 22⁠. כדי למצוא את aa⁠ מתוך AA⁠, איב צריכה לפתור את בעיית הלוגריתם הבדיד, ולזה לא ידועה דרך מהירה.

    משוב לתשובה נכונה

    s=2s = 2⁠. 192 mod 23=1619^2 \bmod 23 = 16⁠, 194 mod 23=162 mod 23=256 mod 23=319^4 \bmod 23 = 16^2 \bmod 23 = 256 \bmod 23 = 3⁠, ו־196 mod 23=3×16 mod 23=48 mod 23=219^6 \bmod 23 = 3 \times 16 \bmod 23 = 48 \bmod 23 = 2⁠. זה המפתח שאליס תנעל בו את ההודעות שלה.

    רמז

    192=36119^2 = 361⁠, ו־361 mod 23=16361 \bmod 23 = 16⁠. עכשיו 194=(192)219^4 = (19^2)^2⁠, ו־196=194×19219^6 = 19^4 \times 19^2⁠.

    פתרון מלא

    1. 192=361=15×23+1619^2 = 361 = 15 \times 23 + 16⁠, ולכן 192 mod 23=1619^2 \bmod 23 = 16⁠.
    2. 194 mod 23=162 mod 23=256 mod 23=319^4 \bmod 23 = 16^2 \bmod 23 = 256 \bmod 23 = 3⁠, כי 256=11×23+3256 = 11 \times 23 + 3⁠.
    3. 196=194×19219^6 = 19^4 \times 19^2⁠, ולכן 196 mod 23=3×16 mod 23=48 mod 23=219^6 \bmod 23 = 3 \times 16 \bmod 23 = 48 \bmod 23 = 2⁠.
    4. s=2s = 2⁠.

    אם עניתם 2222⁠, כפלתם 19×619 \times 6⁠ במקום להעלות בחזקה. אם עניתם 1414⁠, כפלתם את שני הערכים הפומביים, 8×198 \times 19⁠: את זה גם איב יכולה לעשות, וזה לא המפתח.

  4. שלב 4 מתוך 6

    לפתוח את השלב

    המפתח של בוב

    תרגול · נבאו, ואז הסתכלו

    השאלה

    בוב קיבל מאליס A=8A = 8⁠, ומצרף אליו את הסוד שלו: הוא מחשב 815 mod 238^{15} \bmod 23⁠. מה הוא יקבל? בחרו, ואחר כך מבט פנימה יעבור להמתמטיקה.

    התשובה הנכונה

    • נכונה 22⁠, אותו מפתח שיש לאליס

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6קבוע
    הסוד של בוב
    15קבוע
    הודעה נעולה / המתמטיקה
    ערבוב צבעיםקבוע

    האפשרויות

    • נכונה 22⁠, אותו מפתח שיש לאליס

    • שגויה מספר אחר, כי כל אחד השתמש בסוד אחר

      משוב

      כל אחד השתמש בסוד אחר, אבל כל אחד קיבל מהשני את הסוד השני, ארוז בתוך AA⁠ או BB⁠. בשני הצדדים יש בסוף gg⁠ בחזקת aa⁠ ובחזקת bb⁠.

    • שגויה 1919⁠, המספר שבוב עצמו שלח

      משוב

      1919⁠ הוא 515 mod 235^{15} \bmod 23⁠: הסוד של בוב בלבד. ב־8158^{15}⁠ יש גם את הסוד של אליס, כי 8=56 mod 238 = 5^6 \bmod 23⁠.

    אחרי נעילת הניבוי הסצנה משתנה

    הודעה נעולה / המתמטיקה
    המתמטיקהקבוע

    ואז הסצנה מראה: 2 · The shared key s = Bᵃ mod p = Aᵇ mod p/nodes/kx/outputs/sharedSecret

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

    משוב לתשובה נכונה

    22⁠, בדיוק כמו אליס. Ab=(ga)b=gabA^b = (g^a)^b = g^{ab}⁠ ו־Ba=(gb)a=gabB^a = (g^b)^a = g^{ab}⁠: שני הצדדים מחשבים את 590 mod 235^{90} \bmod 23⁠, כל אחד בדרך שלו. זה כל הטריק של דיפי והלמן, משנת 1976.

    רמז

    8=56 mod 238 = 5^6 \bmod 23⁠, ולכן 815 mod 23=56×15 mod 238^{15} \bmod 23 = 5^{6 \times 15} \bmod 23⁠. ומה זה 196 mod 2319^6 \bmod 23⁠?

    פתרון מלא

    1. A=56 mod 23A = 5^6 \bmod 23⁠, ולכן A15 mod 23=56×15 mod 23=590 mod 23A^{15} \bmod 23 = 5^{6 \times 15} \bmod 23 = 5^{90} \bmod 23⁠.
    2. B=515 mod 23B = 5^{15} \bmod 23⁠, ולכן B6 mod 23=515×6 mod 23=590 mod 23B^{6} \bmod 23 = 5^{15 \times 6} \bmod 23 = 5^{90} \bmod 23⁠.
    3. אותו מספר: s=2s = 2⁠.
    4. אפשר לבדוק: 522 mod 23=15^{22} \bmod 23 = 1⁠, ו־90=4×22+290 = 4 \times 22 + 2⁠, ולכן 590 mod 23=52 mod 23=25^{90} \bmod 23 = 5^2 \bmod 23 = 2⁠.
  5. שלב 6 מתוך 6

    לפתוח את השלב

    פומבי וסודי

    תרגול · בחרו

    השאלה

    איב העתיקה את g=5g = 5⁠, p=23p = 23⁠, A=8A = 8⁠ ו־B=19B = 19⁠. מה עוד היא צריכה כדי לחשב את המפתח המשותף ss⁠?

    התשובה הנכונה

    • נכונה את aa⁠ או את bb⁠: היא צריכה לפתור 5x mod 23=85^x \bmod 23 = 8⁠ או 5x mod 23=195^x \bmod 23 = 19⁠

    הגדרות, אפשרויות ומשוב

    הסצנה בשלב הזה

    הסוד של אליס
    6
    הסוד של בוב
    15
    הודעה נעולה / המתמטיקה
    המתמטיקה

    האפשרויות

    מוצגות בסדר אקראי.

    • נכונה את aa⁠ או את bb⁠: היא צריכה לפתור 5x mod 23=85^x \bmod 23 = 8⁠ או 5x mod 23=195^x \bmod 23 = 19⁠

    • שגויה כלום: s=A×B mod ps = A \times B \bmod p⁠

      טעות נפוצה: Thinks the shared key can be worked out directly from the public values, for example as A × B mod p.

      משוב מהקטלוג

      הסוד המשותף הוא s=gab mod ps = g^{ab} \bmod p⁠: כדי להגיע אליו צריך את aa⁠ או את bb⁠. מהערכים הפומביים אפשר לקבל רק צירופים כמו A×B=ga+bA \times B = g^{a+b}⁠, עם סכום המעריכים ולא המכפלה שלהם. כאן A×B mod 23=8×19 mod 23=14A \times B \bmod 23 = 8 \times 19 \bmod 23 = 14⁠, ולא 22⁠. כדי למצוא את aa⁠ מתוך AA⁠, איב צריכה לפתור את בעיית הלוגריתם הבדיד, ולזה לא ידועה דרך מהירה.

    • שגויה את aa⁠ וגם את bb⁠

      משוב

      מספיק אחד מהם: עם aa⁠ איב מחשבת Ba mod pB^a \bmod p⁠, בדיוק כמו אליס, ועם bb⁠ היא מחשבת Ab mod pA^b \bmod p⁠, כמו בוב.

    משוב לתשובה נכונה

    היא צריכה את אחד הסודות. A×B=ga×gb=ga+bA \times B = g^{a} \times g^{b} = g^{a+b}⁠, עם סכום המעריכים, ולא gabg^{ab}⁠: כאן 8×19 mod 23=148 \times 19 \bmod 23 = 14⁠, ולא 22⁠. כדי לחלץ את aa⁠ מתוך AA⁠ היא צריכה לפתור לוגריתם בדיד, וזה החלק הקשה.

    רמז

    s=gab mod ps = g^{ab} \bmod p⁠. מה איב יכולה לקבל מ־AA⁠ ו־BB⁠ בלי לדעת את המעריכים?

    פתרון מלא

    1. המפתח המשותף: s=gab mod ps = g^{ab} \bmod p⁠.
    2. מהערכים הפומביים איב יכולה לחשב צירופים כמו A×B mod p=ga+b mod p=14A \times B \bmod p = g^{a+b} \bmod p = 14⁠, אבל לא את gabg^{ab}⁠.
    3. אם היא מוצאת את aa⁠, היא מחשבת Ba mod p=sB^a \bmod p = s⁠. אם היא מוצאת את bb⁠, היא מחשבת Ab mod p=sA^b \bmod p = s⁠.
    4. לכן היא צריכה את aa⁠ או את bb⁠, כלומר לפתור 5x mod 23=85^x \bmod 23 = 8⁠ או 5x mod 23=195^x \bmod 23 = 19⁠.

בכל היחידה · 10 טעויות נפוצות

קטלוג הטעויות הנפוצות

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

  • Gives the quotient of the division (how many times it goes in) instead of the remainder.

    הלומדים קוראים

    „a mod na \bmod n⁠” הוא השארית בחלוקה של aa⁠ ב־nn⁠, לא התוצאה של החילוק. ב־17÷517 \div 5⁠ החמישייה נכנסת 33⁠ פעמים, 3×5=153 \times 5 = 15⁠, ונשאר 22⁠: לכן 17 mod 5=217 \bmod 5 = 2⁠. השארית תמיד בין 00⁠ ל־n−1n - 1⁠, כמו מקום על שעון עם nn⁠ מקומות.

  • Forgets to wrap round: gives the plain result instead of its remainder mod n.

    הלומדים קוראים

    בחשבון מודולרי כל תוצאה „מסתובבת” חזרה לשעון: אחרי n−1n - 1⁠ באה 00⁠. שעה 99⁠ ועוד 88⁠ שעות היא לא 1717⁠ על שעון של 1212⁠, אלא 17 mod 12=517 \bmod 12 = 5⁠. גם בחזקות: 52=255^2 = 25⁠, אבל 52 mod 23=25^2 \bmod 23 = 2⁠. אחרי כל חישוב מחלקים ב־nn⁠ ושומרים רק את השארית.

  • Multiplies the base by the exponent (5 × 6) instead of raising it to that power (5⁶).

    הלומדים קוראים

    gag^a⁠ פירושו לכפול את gg⁠ בעצמו aa⁠ פעמים, לא לכפול את gg⁠ ב־aa⁠. 53=5×5×5=1255^3 = 5 \times 5 \times 5 = 125⁠, ולא 5×3=155 \times 3 = 15⁠. במודולו עושים את זה צעד אחרי צעד: כל חזקה היא הקודמת כפול gg⁠, ואחר כך השארית. מ־52 mod 23=25^2 \bmod 23 = 2⁠ מקבלים 53 mod 23=2×5=105^3 \bmod 23 = 2 \times 5 = 10⁠.

  • Counts 1 as a prime number.

    הלומדים קוראים

    מספר ראשוני הוא מספר טבעי שיש לו בדיוק שני מחלקים: 11⁠ והוא עצמו. ל־11⁠ יש רק מחלק אחד, ולכן הוא לא ראשוני, וגם לא פריק. ההגדרה נבחרה כך כדי שלכל מספר יהיה פירוק אחד בלבד למכפלה של ראשוניים: אילו 11⁠ היה ראשוני, אפשר היה לכתוב 6=2×3=1×2×36 = 2 \times 3 = 1 \times 2 \times 3⁠ ועוד אינסוף דרכים.

  • Takes an odd number that has no obvious small factor, such as 51, 91 or 99, to be prime.

    הלומדים קוראים

    מספר אי־זוגי לא מתחלק ב־22⁠, אבל הוא יכול להתחלק ב־33⁠, ב־77⁠ או בכל ראשוני אחר. 51=3×1751 = 3 \times 17⁠, 91=7×1391 = 7 \times 13⁠ ו־99=9×1199 = 9 \times 11⁠. כדי לדעת שמספר ראשוני צריך לבדוק שאף ראשוני עד השורש שלו לא מחלק אותו: ל־9191⁠ צריך לבדוק את 22⁠, 33⁠, 55⁠ ו־77⁠, ו־77⁠ מחלק אותו.

  • Thinks the sieve must cross out multiples of every prime up to the count, not just of the primes up to its square root.

    הלומדים קוראים

    מספר פריק עד nn⁠ תמיד מתחלק בראשוני שאינו גדול מ־n\sqrt{n}⁠: אם שני הגורמים שלו היו גדולים מ־n\sqrt{n}⁠, המכפלה הייתה גדולה מ־nn⁠. לכן אחרי שהנפה עברה את הראשוניים עד n\sqrt{n}⁠, כל מספר פריק כבר נמחק. עד 400400⁠, 400=20\sqrt{400} = 20⁠, ומספיקים שמונה ראשוניים: מ־22⁠ עד 1919⁠.

    מזוהה בשאלות
  • Thinks primes keep the same share of the numbers however far you count, as the quarter below 100.

    הלומדים קוראים

    הראשוניים הולכים ומתדלדלים. עד 100100⁠ יש 2525⁠, רבע מהמספרים; עד 10001000⁠ יש 168168⁠, פחות משישית; עד 10 00010\,000⁠ יש 12291229⁠, כשמינית. ככל שמספר גדול יותר, יש יותר ראשוניים קטנים ממנו שיכולים לחלק אותו. הסיכוי שמספר בסביבת nn⁠ ראשוני הוא בערך 1ln⁡n\tfrac{1}{\ln n}⁠, והוא קטן לאט. ובכל זאת הם לא נגמרים: אוקלידס הוכיח שיש אינסוף ראשוניים.

  • Thinks the number of keys grows in step with the key's length, doubling when the length doubles, instead of doubling with every bit added.

    הלומדים קוראים

    למפתח של nn⁠ סיביות יש 2n2^n⁠ ערכים, כי כל סיבית מכפילה את מספר האפשרויות. מפתח ארוך בשמונה סיביות לא מכיל עוד שמונה מפתחות, וגם לא פי 6456\tfrac{64}{56}⁠, אלא פי 28=2562^8 = 256⁠. ומפתח ארוך פי שניים, 256256⁠ סיביות במקום 128128⁠, מכיל לא פי שניים מפתחות אלא פי 21282^{128}⁠. זו הסיבה שמפתחות ארוכים במעט מוציאים את הניחוש מכל טווח.

  • Thinks two parties can only agree on a secret key if some secret has already passed between them, in advance or down the channel.

    הלומדים קוראים

    זה מה שכולם חשבו עד 1976, ודיפי והלמן הראו שזה לא נכון. בהחלפת המפתחות שלהם אף סוד לא עובר בערוץ: כל צד שומר את הסוד שלו, aa⁠ או bb⁠, ושולח רק ga mod pg^a \bmod p⁠ או gb mod pg^b \bmod p⁠. כל צד מצרף לערך שקיבל את הסוד שלו, ושניהם מגיעים לאותו ss⁠. איב רואה כל מה שעובר, ובכל זאת אין לה דרך מהירה להגיע ל־ss⁠.

  • Thinks the shared key can be worked out directly from the public values, for example as A × B mod p.

    הלומדים קוראים

    הסוד המשותף הוא s=gab mod ps = g^{ab} \bmod p⁠: כדי להגיע אליו צריך את aa⁠ או את bb⁠. מהערכים הפומביים אפשר לקבל רק צירופים כמו A×B=ga+bA \times B = g^{a+b}⁠, עם סכום המעריכים ולא המכפלה שלהם. כאן A×B mod 23=8×19 mod 23=14A \times B \bmod 23 = 8 \times 19 \bmod 23 = 14⁠, ולא 22⁠. כדי למצוא את aa⁠ מתוך AA⁠, איב צריכה לפתור את בעיית הלוגריתם הבדיד, ולזה לא ידועה דרך מהירה.

תוכן העניינים