למרות שבעמוד זה כבר היו כמה תרשימים
של Rijndael, אנו הוספנו עוד אחד, אפילו עוד יותר מופשט
מהקודם, כדי שיהיה קל יותר לראות את "היער שמאחורי העצים", ולראות גם שהצעד
Mix Column באמת רק מערבב עמודות, וזה המקום היחיד שבו
זה קורה, ואיך שהצעד Shift Row עובד עם הצעד
Mix Column כדי להבטיח שכל החלקים של הגוש חודרים אחד
לשני.
הטכניקה הסטנדרטית לניתוח
הצפנה דיפרנציאלי
וליניארית יכולה להיות מותאמת לשימוש נגד Rijndael. בגלל
הדרך שבה עובדת הכפלת מטריצות, ובגלל שאנו עובדים בשדה גלואה
( 28
), לכל המקדמים של המטריצה Mix Column (כמו שאכן
כך כל המספרים מ-1 עד 255) יש הופכיים, התקפה מסוימת, מפותחת במקור נגד אב קדמון
Square, נקראת "Square Attack",
גם יכולה להיות שימושית.
אם משתמשים ב256- גושים של טקסט לא מוצפן
כלשהו, כל הביתים חוץ מאחד נשארים קבועים ולאחד הזה נותנים את כל ה-256 ערכים
אפשריים, אז אחרי מחזור אחד של Rijndael, ארבעה ביתים
יעברו דרך כל 256 הערכים האפשריים ושאר הביתים יישארו קבועים. אחרי סיבוב שני, 16
ביתים יעברו כל אחד דרך 256 הערכים האפשריים, כך שאף אחד מהביתים לא דומה לשני,
בקידוד של 256 גושים של טקסט לא מוצפן כלשהו. (לדוש בגודל 128 סיביות, זה כל בית;
לגושים גדולים יותר שאר הביתים יישארו קבועים.) בתכונה המעניינת הזאת, למרות שהיא
לא טריוויאלית לניצול, אפשר להשתמש כדי לכפות מצבים מסוימים על המפתח כאשר נוכח
מחזור אחד נוסף לפני או אחרי שני מחזורים מעורבים.
האפשרות של ההתקפה הזאת צוינה לראשונה על ידי
מפתחי Square ו-Rijndael בעצמם, וצוינה במאמר הראשון שהציג את Square.
|