קריפטואנליזה ליניארית – הבדלי גרסאות
תוכן שנמחק תוכן שנוסף
שורה 62:
</center>
כאשר <math>X_i</math> מייצג את הסיבית במיקום ה-<math>i</math> של בלוק הקלט <math>X=[X_1,X_2,...,X_n]</math> המכיל <math>n</math> סיביות וכן <math>Y_j </math> מייצג את הסיבית במיקום ה-<math>j</math> של בלוק הפלט <math>Y=[Y_1,Y_2,...,Y_n]</math>. המשוואה המתוארת מחברת תת-קבוצה באורך <math>u</math> סיביות של <math>X</math> עם תת-קבוצה באורך <math>v</math> סיביות של <math>Y</math>. המטרה היא למצוא סיביות קלט/פלט שמקיימות את המשוואה האמורה בהסתברות גבוהה באופן משמעותי או בהסתברות נמוכה באופן משמעותי. באופן כללי אסור שלינאריות כזו תתרחש בצופן, אחרת הוא יהיה חלש מאוד
ישנן מגוון דרכים לביצוע הקריפטואנליזה הליניארית. לצורך התיאור כאן נתייחס למה שמיצורו מצואי מכנה במאמר שלו '''אלגוריתם 1'''. למרות שבמשוואה הליניארית לעיל לא מופיעות סיביות ממפתח ההצפנה המותקף, האגף הימני במשוואה "0" כולל באופן עקיף סיביות מהמפתח שמיקומן ידוע אך לא ערכן. אם סכום הסיביות מהמפתח המשתתפות במשוואה הוא אפס, ההטייה תהיה עם סימן (פלוס או מינוס) זהה אילו המשוואה כללה סיביות מהמפתח (אם ההסתברות <math>p_L</math> התקבלה). אם <math>p_L=1</math> פירושו של דבר שהמשוואה המתוארת מייצגת את התנהגות הצופן בשלמות ולכן הצופן כנראה מכיל פגם חמור. אם <math>p_L=0</math> פירושו של דבר שהמשוואה המתוארת מייצגת [[פונקציה אפינית]] של הצופן, שגם
=== עיקרון הערמה===
|