צופן זרם – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
אין תקציר עריכה
אין תקציר עריכה
שורה 1:
ב[[קריפטוגרפיה]], '''צופן זרם''' (ב[[אנגלית]]: '''Stream Cipher''') הוא סוג של [[צופן סימטרי]] שמצפין זרם באורך משתנה של יחידות מידע (המיוצגות על ידי [[סיבית|סיביות]], [[בית (מחשב)|בתים]] או [[מילה (מחשב)|מילים]]), תוך שימוש ב[[פונקציה|טרנספורמציה]] דינמית, המייצרת מפתח הצפנה באורך הרצוי לפי 'מצב פנימי' (internal state) של הצופן. צופן זרם מתפקד כ[[פונקציה פסידו-אקראית קריפטוגרפית|מחולל פסידו-אקראי]] ש'מותח' את מפתח ההצפנה המסופק על ידי המשתמש ומייצר ממנו זרם מפתח פסידו-אקראי כאורך המסר המיועד להצפנה. היות שהמחולל מתעדכן בהתאם למצבים קודמים, אומרים שלצופן זרם יש 'זיכרון'. זרם המפתח מחובר לאחר מכן עם המסרהקלט הקריא בחיבור בינארי ([[XOR]]) או בשיטה אחרת (הפיכה) לקבלת הטקסט המוצפן.
 
ההבחנה העיקרית בין צופן זרם לצופן בלוקים היא אופן יצירת מפתח ההצפנה. בהגדרת צופן זרם מתכוונים למחולל הפנימי (keystream generator) המייצר 'זרם-המפתח' באורך הרצוי. המחולל מתבסס על זיכרון פנימי ופועל בצורה של פעימות (clocking). מסיבה זו אומרים שלצופן זרם יש 'זיכרון', זאת בניגוד ל[[צופן בלוקים]] שכאשר הוא מופעל במצב רגיל, אינו מכיל זיכרון כלל, למשל [[AES]] מצפין בלוק בגודל 128 סיביות באמצעות פונקציה קבועה והוא אינו עושה שימוש במידע מהצפנה קודמת כדי להצפין את הבלוק הנוכחי. כל בלוק מוצפן בנפרד כאשר המידע היחיד הנחוץ הוא מפתח ההצפנה.