Privacy Policy Cookie Policy Terms and Conditions פנקס חד פעמי - ויקיפדיה

פנקס חד פעמי

מתוך ויקיפדיה, האנציקלופדיה החופשית

קטע מפנקס חד-פעמי, במשמעותו הפשוטה: פנקס שבו מודפס רצף אקראי של אותיות
הגדל
קטע מפנקס חד-פעמי, במשמעותו הפשוטה: פנקס שבו מודפס רצף אקראי של אותיות

פנקס חד-פעמי (One time pad), הוא שיטת הצפנה שהומצאה בשנת 1917 ומבוססת על צופן ורנם, שייחודה בכך שקיימת הוכחה מתמטית לפיה אם המפתח המשמש להצפנה נבחר באקראי והשימוש בו הוא חד-פעמי, ההצפנה בלתי ניתנת לשבירה. שיטה זו היא הדוגמה הבולטת והפשוטה ביותר של שיטת הצפנה מושלמת, אך למרות זאת קיימות בה מספר בעיות שמונעות שימוש נרחב בה.

תוכן עניינים

[עריכה] אופן ההצפנה

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

כדי שההצפנה תהיה בטוחה על התנאים הבאים להתקיים: מפתח ההצפנה צריך להיבחר באופן אקראי, וכן אסור להשתמש בו יותר מפעם אחת. מהדרישה השנייה נגזר שמו של הצופן. שימוש חוזר במפתח יהפוך את הצופן לקל מאוד לשבירה - בהינתן שני מסרים שהוצפנו עם אותו מפתח, ביצוע חיבור בינארי (XOR) על שניהם, יחזיר את תוצאת XOR של שני המסרים (כשהם לא מוצפנים), כלומר יבטל את השפעת המפתח על הצופן. קיימות שיטות פשוטות יחסית המבוססות על ניתוח סטטיסטי, להפרדת שני המסרים המקוריים זה מזה.

[עריכה] סודיות מושלמת

למשך שנים רבות מאז המצאתו נחשב פנקס חד פעמי ל"קשה מאוד לשבירה", אך לא הייתה הוכחה מתמטית שהוא אינו ניתן לשבירה כלל. את ההוכחה לכך סיפק קלוד שנון, אבי תורת האינפורמציה, במאמר משנת 1949. שנון הגדיר "סודיות מושלמת" כהצפנה שבה ידיעת המסר המוצפן לא מוסיפה שום אינפורמציה לידיעת המסר המקורי. פירושו הוא שההסתברות שמסר \ M מסוים הוצפן, שווה להסתברות המותנית שהמסר \ M הוצפן בהינתן ידיעה של הצופן המקביל. למעשה, כל המסרים האפשריים סבירים במידה שווה. בניסוח מתמטי, אם \ M,\ C,\ K הם משתנים מקריים המייצגים את המסר, המפתח והצופן בהתאמה, כאשר \ H() מייצגת את פונקציית האנטרופיה אזי, \ H(M|C)=H(M) וכן \ I(M;C)=0. כלומר הצופן אינו תורם שום מידע לגבי המסר המקורי. שנון הוכיח כי תנאי הכרחי שהצפנה זו תקרא מושלמת (Perfect secrecy) היא ש-\ H(K) \ge H(M) כלומר רמת אי הוודאות של המפתח תהיה לכל הפחות כרמת אי הוודאות של המסר. אם המפתח עצמאי ובאורך המסר אזי \ H(K) = k, כלומר האנטרופיה שלו שווה למסר. לכן לפי שנון, אם \ k \ge H(M) הצופן יקרא מושלם.

לדוגמה, אם ידוע כי תשובה לשאלה כלשהי, שיכולה להיות "כן" או "לא", הוצפנה, וידוע שההסתברות של כל "כן" היא 1/3 ושל "לא" היא 2/3 (ולכן ההסתברות של מילים אחרות, למשל "ים" היא 0), הרי ששיטת ההצפנה תיחשב מושלמת אם בהינתן ידיעת ההודעה המוצפנת (למשל, "םר") ההסתברות ש"כן" היא המילה שהוצפנה היא עדיין 1/3 וההסתברות ש"לא" הוצפנה היא עדיין 2/3.


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

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

[עריכה] חסרונות השיטה

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

בעיה מרכזית נוספת המכונה "בעיית העברת המפתח" היא בעיה האופיינית לכל שיטת הצפנה סימטרית - כדי ששני הצדדים יוכלו לתקשר ביניהם בביטחה על שניהם לדעת מהו המפתח, אך על מנת לשתף את המפתח עליהם להיות מסוגלים להעבירו באופן בטוח מהאחד לשני (למשל, על-ידי פגישה פיזית או באמצעות שליח מהימן). המצאת שיטות ההצפנה הא-סימטריות ובראשן RSA פתרה חלקית את הבעיה. למשל, אפשר להשתמש בהצפנה אסימטרית, כדי לשתף מפתח (קטן יחסית) ולאחר מכן להשתמש בצופן סימטרי מהיר כמו AES (המהיר פי כמה מ-RSA) כדי להעביר את המסר עצמו. פתרון זה לא יועיל במקרה של הצפנת מפתח חד-פעמי מכיוון שהקושי בהעברת המפתח זהה לקושי שבהעברת המסר עצמו.

בעיה נוספת היא בעיית "הבטחת השלמות" (Integrity). שיטה זו אינה מונעת שינוי של המסר המוצפן בידי גורם זר המסוגל ליירט את הצופן, לשנות חלקים ממנו ולאפשר למסר להמשיך ליעדו המקורי מבלי שיעד זה יוכל לזהות שינוי זה. גם שיטת ההצפנה האסימטרית אינה פותרת בעייה זו. במקרה כזה יש צורך להפעיל שיטות נוספות שמטרתן הבטחת שלמות המסר או הצופן באופן שיאפשר לצדדים לזהות כל ניסיון לשינויו. זאת עושים בדרך כלל באמצעות פונקציית גיבוב וחתימה דיגיטלית.

[עריכה] שימושים

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

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

[עריכה] יישום פנקס חד-פעמי באמצעות הצפנה קוונטית

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

[עריכה] קישורים חיצוניים

THIS WEB:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2008 (no images)

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - bcl - be - be_x_old - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - co - cr - crh - cs - csb - cu - cv - cy - da - de - diq - dsb - dv - dz - ee - el - eml - en - eo - es - et - eu - ext - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gan - gd - gl - glk - gn - got - gu - gv - ha - hak - haw - he - hi - hif - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kaa - kab - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mdf - mg - mh - mi - mk - ml - mn - mo - mr - mt - mus - my - myv - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - quality - rm - rmy - rn - ro - roa_rup - roa_tara - ru - rw - sa - sah - sc - scn - sco - sd - se - sg - sh - si - simple - sk - sl - sm - sn - so - sr - srn - ss - st - stq - su - sv - sw - szl - ta - te - tet - tg - th - ti - tk - tl - tlh - tn - to - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu -

Static Wikipedia 2007:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu

Static Wikipedia 2006:

aa - ab - af - ak - als - am - an - ang - ar - arc - as - ast - av - ay - az - ba - bar - bat_smg - be - bg - bh - bi - bm - bn - bo - bpy - br - bs - bug - bxr - ca - cbk_zam - cdo - ce - ceb - ch - cho - chr - chy - closed_zh_tw - co - cr - cs - csb - cu - cv - cy - da - de - diq - dv - dz - ee - el - eml - en - eo - es - et - eu - fa - ff - fi - fiu_vro - fj - fo - fr - frp - fur - fy - ga - gd - gl - glk - gn - got - gu - gv - ha - haw - he - hi - ho - hr - hsb - ht - hu - hy - hz - ia - id - ie - ig - ii - ik - ilo - io - is - it - iu - ja - jbo - jv - ka - kg - ki - kj - kk - kl - km - kn - ko - kr - ks - ksh - ku - kv - kw - ky - la - lad - lb - lbe - lg - li - lij - lmo - ln - lo - lt - lv - map_bms - mg - mh - mi - mk - ml - mn - mo - mr - ms - mt - mus - my - mzn - na - nah - nap - nds - nds_nl - ne - new - ng - nl - nn - no - nov - nrm - nv - ny - oc - om - or - os - pa - pag - pam - pap - pdc - pi - pih - pl - pms - ps - pt - qu - rm - rmy - rn - ro - roa_rup - roa_tara - ru - ru_sib - rw - sa - sc - scn - sco - sd - se - searchcom - sg - sh - si - simple - sk - sl - sm - sn - so - sq - sr - ss - st - su - sv - sw - ta - te - test - tet - tg - th - ti - tk - tl - tlh - tn - to - tokipona - tpi - tr - ts - tt - tum - tw - ty - udm - ug - uk - ur - uz - ve - vec - vi - vls - vo - wa - war - wo - wuu - xal - xh - yi - yo - za - zea - zh - zh_classical - zh_min_nan - zh_yue - zu