הצפנה מאומתת


כל מה שרצית לדעת על הצפנה מאומתת:
סכמת הצפנה מאומתת (Authenticated Encryption) בקיצור AE היא מצב הפעלה של צופן בלוקים סימטרי, שמטרתו לספק במקביל גם סודיות וגם שלמות ואימות המידע.
ההנחה היא שהשולח והמקבל משתפים ביניהם מפתח הצפנה סודי.
המצפין משתמש במפתח הסודי שברשותו כדי להצפין את המידע באמצעות צופן סימטרי ולייצר במקביל תג אימות באמצעות קוד אימות המסרים אותם הוא שולח יחד או בנפרד למקבל.
והמקבל מצידו משתמש במפתח הסודי שברשותו כדי לפענח את המידע ובאותה מידה לבדוק באמצעות פונקציית האימות את התג שקיבל כדי לוודא את שלמות המידע שקיבל ואת מקורו.
מעצם ההגדרה תג האימות מבטיח כי תוקף בעל יכולת חישוב סבירה לא יוכל לזייף מסר מוצפן ותג מתאים בלא ידיעת מפתח ההצפנה המשותף כך שהמקבל לא יבחין בכך.
כלומר שפונקציית האימות של המקבל תחזיר "אמת" כאילו ההודעה התקבלה מהשולח האותנטי.
הצורך בהצפנה מאומתת עולה באופן טבעי לאור העובדה שבדרך כלל צופן בלוקים כמו AES אינו מבטיח שלמות כלל.
כלומר קיים חשש שתוקף זדוני יצליח למחוק לשנות או להוסיף בלוקים שלמים כרצונו מבלי שלמקבל תהיה דרך להבחין בכך.
בעבר בהיעדר תקן כלשהו, מפתחי מערכות נטו לפתור בעיה זו בשיטות אד הוק כמו ריפוד במספר אקראי והוספת יתירות.
התקפות אינטרנט ניצלו פרצה זו‏ כדי לשבור מערכות כאלו, למרות שהצופן היה בטוח.
הניסיון מלמד ששילוב הצפנה עם אימות מורכב ומועד לשגיאות.
שגיאה נפוצה אחת היא הניסיון להבטיח אימות על ידי שימוש בפונקציית גיבוב לא קריפטוגרפית (ללא מפתח) או קוד תיקון שגיאות.
טעות אחרת היא להשתמש במפתח הצפנה יחיד הן להצפנה והן לאימות.
גם במקרה שהמרכיבים בטוחים יכול להיות שהמערכת כמכלול לא תהיה בטוחה.
הפרדיגמה הבסיסית כדי להבטיח שלמות יחד עם סודיות היא, לקחת צופן סימטרי בטוח המספק סודיות בלבד ולשלבו במצב הפעלה CBC או CTR (מונה) עם אלגוריתם אימות מסרים בטוח המספק אימות בלבד.
עם מפתח סודי נפרד או עם מפתח שנגזר באופן בטוח מהמפתח הראשון.
מפתח האימות ומפתח ההצפנה חייבים להיות שונים ובלתי תלויים סטטיסטית, כלומר לא ניתן לנחש מפתח אחד בהינתן השני.
אפשר להישתמש בשני מפתחות סודיים האחד לצורך הצפנה והשני לצורך אימות.
אך לשיטה זו מספר חסרונות; יעילות נמוכה, אחסון מספר רב של מפתחות סודיים וכן בעיית תאימות עם מערכות קיימות.
דרך אחרת היא להפיק את מפתח האימות מתוך מפתח ההצפנה בדרך בטוחה כמו באמצעות פונקציה אקראית 'אוניברסלית'.
שיטות השילוב של הצפנה עם אימות מתחלקות לשני סוגים עקריים; הרכבה גנרית, שבה הם נעשים בנפרד ללא קשר הדוק ביניהם, הרעיון נמצא בשימוש מעשי נרחב בסכמות רבות בין היתר HMAC, UMAC או CBC-MAC.
השיטות האחרות מנסות לשלב בין ההצפנה והאימות באופן יותר הדוק כדי להבטיח סודיות ואימות במחיר הנמוך ביותר האפשרי.
קיימות מספר שיטות כאלו, ביניהן אפשר למנות את: OCB, CCM, EAX, GCM שהוצעו ונבחנו על ידי מומחים ואושרו בתקן איזו ובארגוני תקינה נוספים.
וכן IACBC, XCBC, Helix, CWC.

נלקח מויקיפדיה

הגדרות נוספות הקשורות להצפנה מאומתת:
קריפטוגרפיה