צופן זרם

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

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

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

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

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

יש שני סוגים עיקריים: סינכרוני וא-סינכרוני.

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

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

PRNG הוא מחולל שמנסה להיראות אקראי. הוא לא באמת אקראי כי הוא תלוי בהתחלה שלו.

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

A5/1 שימש פעם להצפנת שיחות סלולריות. מפתחו היה 64 סיביות ונמצאו בו חולשות,
כך שאפשר לשבור אותו בזמן קצר.

E0 שימש בבלוטות'. הוא עבד עם ארבעה LFSR ומפתח של 128 סיביות. גם הוא נמצא פגיע.

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

אל תשתמשו בשני מסרים עם אותו מפתח. שימוש חוזר עלול לחשוף את המסרים.

צופני תוכנה כמו RC4 ו-Salsa20 נבנו במיוחד לריצת מחשב. רבים משתמשים גם ב-Nonce כדי למנוע חזרתיות.

eSTREAM היה פרויקט שבחן צופני זרם טובים בין 2004 ל-2008. הפרויקט חיפש צופנים מתאימים לתוכנה ולחומרה.

תגובות גולשים

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

עדיין אין תגובות. היה הראשון להגיב!