לדלג לתוכן

הצפנה – הבדלי גרסאות

מתוך ויקיפדיה, האנציקלופדיה החופשית
תוכן שנמחק תוכן שנוסף
Catocato88 (שיחה | תרומות)
יצירה באמצעות תרגום הדף "Encryption"
Catocato88 (שיחה | תרומות)
אין תקציר עריכה
שורה 1: שורה 1:
'''הצפנה''' היא תהליך [[קריפטוגרפיה|קריפטוגרפי]] של [[קוד|קידוד]] [[מידע]]. תהליך זה ממיר את הייצוג המקורי של המידע, המכונה [[טקסט רגיל|טקסט גלוי]] (באנגלית: plaintext), לצורה חלופית, המכונה [[קוד צופן|טקסט מוצפן]] (באנגלית: ciphertext).<ref name=":1">{{קישור כללי|כתובת=https://www.garykessler.net/library/crypto.html|הכותב=Kessler, Gary|כותרת=An Overview of Cryptography|אתר=www.garykessler.net|תאריך_וידוא=2021-05-03}}</ref>
טקסט

[[קריפטוגרפיה|בקריפטוגרפיה]], '''הצפנה''' היא תהליך של [[קוד|קידוד]] מידע. תהליך זה ממיר את הייצוג המקורי של המידע, המכונה [[טקסט רגיל|טקסט גלוי]] (באנגלית: plaintext), לצורה חלופית, המכונה [[קוד צופן|טקסט מוצפן]] (באנגלית: ciphertext).<ref>{{קישור כללי|כתובת=https://www.garykessler.net/library/crypto.html#purpose|כותרת=An Overview of Cryptography|אתר=www.garykessler.net|תאריך_וידוא=2021-04-20}}</ref>


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


=== בעת העתיקה ===
=== בעת העתיקה ===
אחת משיטות ההצפנה המוקדמות ביותר היא החלפת סמלים, שיטה שנצפתה לראשונה בקברו של [[Khnumhotep II|חנומותפ השני]], [[אציל]] [[מצרי]] שחי בשנת 1900 לפני הספירה.<ref name=":0">{{קישור כללי|כתובת=https://academy.binance.com/en/articles/history-of-cryptography|כותרת=History of Cryptography|אתר=Binance Academy|שפה=en|תאריך_וידוא=2021-04-20}}</ref> ב[[יוון העתיקה]] [[רומא העתיקה|ורומא העתיקה]] נעשה שימוש בשיטת הצפנה מוקדמת זו למטרות צבאיות.<ref name=":0" /> אחד מהצפנים הצבאיים המפורסמים ביותר מהתקופה הוא [[צופן קיסר]], [[צופן החלפה]] שבו כל אות בטקסט המקור מוחלפת באות המרוחקת ממנה במספר קבוע של מקומות בסדר האלפביתי, ונמען שיודע את מספר המקומות בו הוסטו האותיות יכול לפענח את ההודעה.<ref />
אחת משיטות ההצפנה המוקדמות ביותר היא החלפת סמלים, שיטה שנצפתה לראשונה בקברו של [[Khnumhotep II|חנומותפ השני]], [[אציל]] [[מצרי]] שחי בשנת 1900 לפני הספירה.<ref name=":0">{{קישור כללי|כתובת=https://academy.binance.com/en/articles/history-of-cryptography|כותרת=History of Cryptography|אתר=Binance Academy|שפה=en|תאריך_וידוא=2021-04-20}}</ref> ב[[יוון העתיקה]] [[רומא העתיקה|ורומא העתיקה]] נעשה שימוש בשיטת הצפנה מוקדמת זו למטרות צבאיות.<ref name=":0" /> אחד מהצפנים הצבאיים המפורסמים ביותר מהתקופה הוא [[צופן קיסר]], [[צופן החלפה]] שבו כל אות בטקסט המקור מוחלפת באות המרוחקת ממנה במספר קבוע של מקומות בסדר האלפביתי, ונמען שיודע את מספר המקומות בו הוסטו האותיות יכול לפענח את ההודעה.<ref name=":2" />


צפני החלפה מופיעים גם בשפה העברית; דוגמה לצופן כזה הוא [[צופן אתב"ש]], שבא לידי ביטוי במספר מקומות ב[[מסורת (יהדות)|מסורת היהודית]].
צפני החלפה מופיעים גם בשפה העברית; דוגמה לצופן כזה הוא [[צופן אתב"ש]], שבא לידי ביטוי במספר מקומות ב[[מסורת (יהדות)|מסורת היהודית]].<ref>{{צ-מאמר|שם=Encryption techniques: a timeline approach|קישור=http://dx.doi.org/10.1016/s1361-3723(05)70275-x|כתב עת=|שנת הוצאה=2005-11|עמ=4-5|כרך=|doi=10.1016/s1361-3723(05)70275-x|מחבר=J.H.P. Eloff, M.M. Eloff}}</ref>


בסביבות שנת 800 לספירה, המתמטיקאי הערבי [[אל-כנדי]] פיתח את טכניקת [[ניתוח תדירויות|ניתוח התדירויות]] בניסיון לפתח שיטה לפיצוח צופן קיסר. טכניקה זו בחנה את תדירות הופעת האותיות בהודעה המוצפנת כדי לקבוע את מספר ההסטות.<ref>{{צ-מאמר|שם=Cryptographic methods and development stages used throughout history|קישור=http://aip.scitation.org/doi/abs/10.1063/1.5095118|שנת הוצאה=2019|עמ=030033|doi=10.1063/1.5095118|מחבר=Ender Sahinaslan, Onder Sahinaslan}}</ref> בשנת 1465, הסופר האיטלקי [[לאונה בטיסטה אלברטי|ליאונה אלברטי]] פיתח את צופן אלברטי, שיטת הצפנה המבוססת על מכשיר הצפנה המורכב משני דיסקים משולבים שעל כל אחד מהם כתובים 24 תווים. צופן אלברטי היה אחד הצפנים הרב-אלפבתיים הראשונים, ולא היה ניתן לפצחו בשיטת ניתוח התדירויות של אל-כנדי.<ref />
בסביבות שנת 800 לספירה, המתמטיקאי הערבי [[אל-כנדי]] פיתח את טכניקת [[ניתוח תדירויות|ניתוח התדירויות]] בניסיון לפתח שיטה לפיצוח צופן קיסר. טכניקה זו בחנה את תדירות הופעת האותיות בהודעה המוצפנת כדי לקבוע את מספר ההסטות.<ref name=":2">{{צ-מאמר|שם=Cryptographic methods and development stages used throughout history|קישור=http://aip.scitation.org/doi/abs/10.1063/1.5095118|שנת הוצאה=2019|עמ=030033|doi=10.1063/1.5095118|מחבר=Ender Sahinaslan, Onder Sahinaslan}}</ref> בשנת 1465, הסופר האיטלקי [[לאונה בטיסטה אלברטי|ליאונה אלברטי]] פיתח את [[צופן אלברטי]], שיטת הצפנה המבוססת על מכשיר הצפנה המורכב משני דיסקים משולבים שעל כל אחד מהם כתובים 24 תווים. צופן אלברטי היה אחד הצפנים הפוליאלפביתיים הראשונים, ולא היה ניתן לפצחו בשיטת ניתוח התדירויות של אל-כנדי.<ref />


=== המאה ה-19-20 ===
=== המאה ה-19-20 ===
בסביבות שנת 1790, [[תומאס ג'פרסון]] פיתח צופן תיאורטי שנועד לשימוש בהתכתבויות צבאיות, אך לעולם לא נבנה בפועל. הצופן, המכונה היום צופן הגלגל או [[דיסק ג'פרסון]], תואר כסליל שניתן להשתמש בו בשביל להצפין הודעה ב[[אנגלית]] באורך עד 36 תווים, כך שאדם שנמצא ברשותו סליל תואם יכול לפענח את הטקסט המוצפן.<ref />
בסביבות שנת 1790, [[תומאס ג'פרסון]] פיתח צופן תיאורטי שנועד לשימוש בהתכתבויות צבאיות, אך לעולם לא נבנה בפועל. הצופן, המכונה היום צופן הגלגל או [[דיסק ג'פרסון]], תואר כסליל שניתן להשתמש בו בשביל להצפין הודעה ב[[אנגלית]] באורך עד 36 תווים, כך שאדם שנמצא ברשותו סליל תואם יכול לפענח את הטקסט המוצפן.<ref>{{קישור כללי|כתובת=https://www.monticello.org/site/research-and-collections/wheel-cipher|כותרת=Wheel Cipher {{!}} Thomas Jefferson's Monticello|אתר=www.monticello.org|תאריך_וידוא=2021-05-03}}</ref>


מכשיר הצפנה זהה לדיסק ג'פרסון, הM-94, פותח בשנת 1917 באופן בלתי תלוי על ידי [[מייג'ור]] צבא [[ארצות הברית]] ג'וזף מאובורן. המכשיר שימש את צבא ארצות הברית לצרכי תקשורת עד שנת 1942.
מכשיר הצפנה זהה לדיסק ג'פרסון, הM-94, פותח בשנת 1917 באופן בלתי תלוי על ידי [[מייג'ור]] צבא [[ארצות הברית]] ג'וזף מאובורן. המכשיר שימש את צבא ארצות הברית לצרכי תקשורת עד שנת 1942.<ref>{{קישור כללי|כתובת=https://maritime.org/tech/csp488.htm|כותרת=USS Pampanito - CSP-488|אתר=maritime.org|תאריך_וידוא=2021-05-03}}</ref>


ב[[מלחמת העולם השנייה]], [[מדינות הציר]] השתמשו בגרסה מתקדמת יותר של הM-94, הקרויה ה[[אניגמה]]. מכונת האניגמה היתה יותר מורכבת, כיוון שבשונה מדיסק ג'פרסון והM-94, אופן גיבוב האותיות באניגמה הוחלף כל יום. הצירוף של היום הנוכחי היה ידוע רק למדינות הציר, ולכן רבים סברו שהדרך היחידה לפצח את הצופן היא לנסות מעול 17,000 צירופים אפשריים תוך 24 שעות. [[בעלות הברית]] השתמשו במשאבי חישוב עוצמתיים על מנת להגביל באופו משמעותי את כמות הצירופים הסבירים שצריך לבדוק ביום נתון, וזה היה אחד הגורמים שתרמו ל[[פיצוח האניגמה]] בסופו של דבר.
ב[[מלחמת העולם השנייה]], [[מדינות הציר]] השתמשו בגרסה מתקדמת יותר של הM-94, הקרויה ה[[אניגמה]]. מכונת האניגמה היתה יותר מורכבת, כיוון שבשונה מדיסק ג'פרסון והM-94, אופן גיבוב האותיות באניגמה הוחלף כל יום. הצירוף של היום הנוכחי היה ידוע רק למדינות הציר, ולכן, על מנת לפצח את הצופן בהתקפת [[כוח גס]], היה על התוקפים לנסות מעול 17,000 צירופים אפשריים תוך 24 שעות.<ref>{{צ-ספר|שם=Cryptography Made Simple|קישור=http://link.springer.com/10.1007/978-3-319-21936-3_8|מו"ל=Springer International Publishing|שנת הוצאה=2016|מקום הוצאה=Cham|ISBN=978-3-319-21935-6|עמ=133-134|מחבר=Nigel P. Smart}}</ref> שימוש במשאבי חישוב עוצמתיים לבדיקת מפתחות ההצפנה היה אחד הגורמים שתרמו ל[[פיצוח האניגמה]] בסופו של דבר.


=== בעת המודרנית ===
=== בעת המודרנית ===
כיום, הצפנה משמשת לאבטחת תקשורת ב[[אינטרנט]], ובפרט ל[[אבטחת מידע]] פרטי ו[[מסחר אלקטרוני]]. באינטרנט, מידע רגיש כמו [[סיסמה|סיסמאות]] והתכתבות אישית עשוי להיחשף לגורמים חיצוניים. כדי להגן על מידע זה, אלגוריתמי הצפנה ממירים טקסט גלוי לטקסט מוצפן בלתי קריא, שמשמעותו נגישה רק לגורמים מורשים שיכולים לפענח את הנתונים חזרה לפורמט קריא.
כיום, הצפנה משמשת לאבטחת תקשורת ב[[אינטרנט]], ובפרט ל[[אבטחת מידע]] פרטי ו[[מסחר אלקטרוני]]. באינטרנט, מידע רגיש כמו [[סיסמה|סיסמאות]] והתכתבות אישית עשוי להיחשף לגורמים חיצוניים. כדי להגן על מידע זה, אלגוריתמי הצפנה ממירים טקסט גלוי לטקסט מוצפן בלתי קריא, שמשמעותו נגישה רק לגורמים מורשים שיכולים לפענח את הנתונים חזרה לפורמט קריא.<ref name=":1" />


עמידות של הצפנה נמדדת, בין השאר, ברמת הקושי של החישוב שגורם חיצוני יצטרך לבצע כדי לפענח את הצופן אם אין ברשותו מפתח הצפנה מתאים. ככל שהכוח החישובי של [[מחשב|מחשבים]] גדל, נוצר צורך בשיטות הצפנה חדשות, כיוון שפענוח של צפנים קיימים הופך לקל יותר, וכתוצאה מכך שיטות ההצפנה הללו מפסיקות להיות בטיחותיות.
עמידות של הצפנה נמדדת, בין השאר, ברמת הקושי של החישוב שגורם חיצוני יצטרך לבצע כדי לפענח את הצופן אם אין ברשותו מפתח הצפנה מתאים. ככל שהכוח החישובי של [[מחשב|מחשבים]] גדל, נוצר צורך בשיטות הצפנה חדשות, כיוון שפענוח של צפנים קיימים הופך לקל יותר, וכתוצאה מכך שיטות ההצפנה הללו מפסיקות להיות בטיחותיות.
שורה 29: שורה 27:




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


תהליך ההצפנה והפענוח של הודעות כולל שימוש במפתחות הצפנה. שני הסוגים העיקריים של מפתחות במערכות קריפטוגרפיות הם מפתח סימטרי ו[[מפתח ציבורי]], המכונה גם מפתח א-סימטרי.<ref>{{קישור כללי|כתובת=https://www.sciencedirect.com/topics/computer-science/key-cryptography#:~:text=The%20two%20main%20categories%20of,of%20public%20and%20private%20keys.|כותרת=Key Cryptography - an overview {{!}} ScienceDirect Topics|אתר=www.sciencedirect.com|תאריך_וידוא=2021-05-03}}</ref>
אורכו של מפתח ההצפנה הוא מדד לחוזק שיטת ההצפנה: לדוגמה, מפתח ההצפנה המקורי, [[DES]] (Data Encryption Standard), הכיל 56 [[סיבית|סיביות]], ולכן היו [2^56] מפתחות אפשריים בסך הכל. מאז פותחו מחשבים עם כוח חישוב מספיק כדי לפצח צופן עם מפתח בן 56 סיביות על ידי התקפת [[כוח גס]], ולכן צופן זה אינו בטיחותי יותר. נכון לשנת 2020, תקן מפתחות ההצפנה המודרניים הוא עד 2048 ביט במערכת RSA, וכמות המפתחות האפשריים מבטיחה שהצופן כמעט בלתי ניתן לפיצוח על ידי מחשבים מודרניים. עם זאת, משוער ש[[מחשב קוונטי]] יהיה מסוגל לפצח צופן מסוג זה.<ref>{{Cite web|url=https://www.technologyreview.com/s/613596/how-a-quantum-computer-could-break-2048-bit-rsa-encryption-in-8-hours/|title=How a quantum computer could break 2048-bit RSA encryption in 8 hours|last=arXiv|first=Emerging Technology from the|website=MIT Technology Review|language=en-US|accessdate=2020-04-02}}</ref>

אורכו של מפתח ההצפנה הוא מדד לחוזק שיטת ההצפנה: לדוגמה, מפתח ההצפנה המקורי, [[DES]] (Data Encryption Standard), הכיל 56 [[סיבית|סיביות]], ולכן היו [2^56] מפתחות אפשריים בסך הכל. מאז פותחו מחשבים עם כוח חישוב מספיק כדי לפצח צופן עם מפתח בן 56 סיביות על ידי התקפת כוח גס, ולכן צופן זה אינו בטיחותי יותר. נכון לשנת 2020, תקן מפתחות ההצפנה המודרניים הוא עד 2048 ביט במערכת RSA, וכמות המפתחות האפשריים מבטיחה שהצופן כמעט בלתי ניתן לפיצוח על ידי מחשבים מודרניים. עם זאת, משוער ש[[מחשב קוונטי]] יהיה מסוגל לפצח צופן מסוג זה.<ref>{{Cite web|url=https://www.technologyreview.com/s/613596/how-a-quantum-computer-could-break-2048-bit-rsa-encryption-in-8-hours/|title=How a quantum computer could break 2048-bit RSA encryption in 8 hours|last=arXiv|first=Emerging Technology from the|website=MIT Technology Review|language=en-US|accessdate=2020-04-02}}</ref>


=== סוגי מפתחות ===
=== סוגי מפתחות ===
שורה 40: שורה 39:
==== מפתח ציבורי ====
==== מפתח ציבורי ====
[[קובץ:Public_key_encryption_keys.svg|ממוזער| איור המתאר תקשורת בין [[שרת (מחשבים)|שרתים]] תוך כדי שימוש ב[[מפתח ציבורי|הצפנת מפתח ציבורי]] .]]
[[קובץ:Public_key_encryption_keys.svg|ממוזער| איור המתאר תקשורת בין [[שרת (מחשבים)|שרתים]] תוך כדי שימוש ב[[מפתח ציבורי|הצפנת מפתח ציבורי]] .]]
בהצפנת מפתח ציבורי נעשה שימוש במפתחות שונים להצפנה ולפענוח, כאשר מפתח ההצפנה מפורסם בפומבי כך שכל אחד יכול להשתמש בו להצפנת הודעות, אבל רק לנמען יש גישה למפתח הפענוח, המאפשר קריאת הודעות. הצפנת מפתח הציבורי תוארה לראשונה במסמך סודי בשנת 1973; לפני כן, כל תוכניות ההצפנה השתמשו במפתח סימטרי. בשנת 1976, [[פרוטוקול דיפי-הלמן]] הוצג לראשונה במאמר בכתב עת עם קהל קוראים גדול.
בהצפנת מפתח ציבורי נעשה שימוש במפתחות שונים להצפנה ולפענוח, כאשר מפתח ההצפנה מפורסם בפומבי כך שכל אחד יכול להשתמש בו להצפנת הודעות, אבל רק לנמען יש גישה למפתח הפענוח, המאפשר קריאת הודעות. הצפנת מפתח הציבורי תוארה לראשונה במסמך סודי בשנת 1973<ref>{{קישור כללי|כתובת=https://web.archive.org/web/20100519084635/http://www.gchq.gov.uk/history/pke.html|כותרת=Public-Key Encryption - how GCHQ got there first|אתר=web.archive.org|תאריך=2010-05-19|תאריך_וידוא=2021-05-03}}</ref><ref>{{קישור כללי|כתובת=http://www.bristol.ac.uk/graduation/honorary-degrees/hondeg08/cocks.html|הכותב=University of Bristol|כותרת=Dr Clifford Cocks CB|אתר=www.bristol.ac.uk|שפה=אנגלית|תאריך_וידוא=2021-05-03}}</ref>; לפני כן, כל תוכניות ההצפנה השתמשו במפתח סימטרי. בשנת 1976, [[פרוטוקול דיפי-הלמן]] הוצג לראשונה במאמר בכתב עת עם קהל קוראים גדול.<ref>{{צ-מאמר|שם=New directions in cryptography|קישור=http://dx.doi.org/10.1109/tit.1976.1055638|כתב עת=IEEE Transactions on Information Theory|שנת הוצאה=1976-11-XX|עמ=644–654|כרך=22|doi=10.1109/tit.1976.1055638|מחבר=W. Diffie, M. Hellman}}</ref>


דוגמה נוספת למערכת הצפנה שמשמתמש במפתח ציבורי היא [[RSA]]. מערכת הצפנה זו נוצרה בשנת 1978, ונמצאת בשימוש גם כיום היום ביישומים הקשורים ל[[חתימה דיגיטלית|חתימות דיגיטליות]]. אלגוריתם RSA מיישם עקרונות מ[[תורת המספרים]]: האלגוריתם בוחר שני [[מספר ראשוני|מספרים ראשוניים]] ויוצר את מפתחות ההצפנה והפענוח תוך כדי שימוש ב[[חשבון מודולרי]].
דוגמה נוספת למערכת הצפנה שמשמתמש במפתח ציבורי היא [[RSA]]. מערכת הצפנה זו נוצרה בשנת 1978, ונמצאת בשימוש גם כיום היום ביישומים הקשורים ל[[חתימה דיגיטלית|חתימות דיגיטליות]]. אלגוריתם RSA מיישם עקרונות מ[[תורת המספרים]]: האלגוריתם בוחר שני [[מספר ראשוני|מספרים ראשוניים]] ויוצר את מפתחות ההצפנה והפענוח תוך כדי שימוש ב[[חשבון מודולרי]].<ref>{{צ-מאמר|שם=An overview of public key cryptography|קישור=http://dx.doi.org/10.1109/mcom.2002.1006971|כתב עת=IEEE Communications Magazine|שנת הוצאה=2002-05|עמ=42–49|כרך=40|doi=10.1109/mcom.2002.1006971|מחבר=M.E. Hellman}}</ref>


בשנת 1991, תוכנת ההצפנה [[PGP]], המשתמשת בהצפנת מפתח ציבורי, נכתבה והופצה לציבור ללא תשלום על ידי [[פיל צימרמן]] כחלק ממאבק נגד ניסיון חקיקה בארצות הברית שביקש למנוע שימוש בהצפנה חזקה בקרב הציבור. PGP נרכשה על ידי [[סימנטק]] בשנת 2010 ומתעדכנת באופן שוטף.
בשנת 1991, תוכנת ההצפנה [[PGP]], המשתמשת בהצפנת מפתח ציבורי, נכתבה והופצה לציבור ללא תשלום על ידי [[פיל צימרמן]] כחלק ממאבק נגד ניסיון חקיקה בארצות הברית שביקש למנוע שימוש בהצפנה חזקה בקרב הציבור. PGP נרכשה על ידי [[סימנטק]] בשנת 2010 ומתעדכנת באופן שוטף.<ref>{{קישור כללי|כתובת=https://www.forbes.com/sites/firewall/2010/04/29/symantec-acquires-encryption-provider-pgp-for-300-million/|הכותב=Andy Greenberg|כותרת=Symantec Acquires Encryption Provider PGP For $300 Million|אתר=Forbes|שפה=en|תאריך_וידוא=2021-05-03}}</ref>


== שימושים ==
== שימושים ==
שורה 54: שורה 53:




[[המכון לאבטחת מחשבים]](באנגלית: Computer Security Institute) בארצות הברית דיווח כי בשנת 2007, 71% מהחברות שנבדקו השתמשו בהצפנה עבור חלק מהנתונים שלהן בתנועה, ו53% השתמשו בהצפנה עבור חלק מהנתונים שלהן במנוחה.
[[המכון לאבטחת מחשבים]](באנגלית: Computer Security Institute) בארצות הברית דיווח כי בשנת 2007, 71% מהחברות שנבדקו השתמשו בהצפנה עבור חלק מהנתונים שלהן בתנועה, ו53% השתמשו בהצפנה עבור חלק מהנתונים שלהן במנוחה.<ref>{{צ-מאמר|שם=Computer crime survey|קישור=http://dx.doi.org/10.1016/0142-0496(85)90006-2|כתב עת=Computer Fraud & Security Bulletin|שנת הוצאה=1985-10-XX|עמ=1–4|כרך=7|doi=10.1016/0142-0496(85)90006-2}}</ref>


=== מחיקת נתונים ===
=== מחיקת נתונים ===

גרסה מ־11:36, 3 במאי 2021

הצפנה היא תהליך קריפטוגרפי של קידוד מידע. תהליך זה ממיר את הייצוג המקורי של המידע, המכונה טקסט גלוי (באנגלית: plaintext), לצורה חלופית, המכונה טקסט מוצפן (באנגלית: ciphertext).[1]

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

היסטוריה

בעת העתיקה

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

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

בסביבות שנת 800 לספירה, המתמטיקאי הערבי אל-כנדי פיתח את טכניקת ניתוח התדירויות בניסיון לפתח שיטה לפיצוח צופן קיסר. טכניקה זו בחנה את תדירות הופעת האותיות בהודעה המוצפנת כדי לקבוע את מספר ההסטות.[3] בשנת 1465, הסופר האיטלקי ליאונה אלברטי פיתח את צופן אלברטי, שיטת הצפנה המבוססת על מכשיר הצפנה המורכב משני דיסקים משולבים שעל כל אחד מהם כתובים 24 תווים. צופן אלברטי היה אחד הצפנים הפוליאלפביתיים הראשונים, ולא היה ניתן לפצחו בשיטת ניתוח התדירויות של אל-כנדי.שגיאת ציטוט: תג ה־<ref> הפותח פגום או בעל שם שגוי.

המאה ה-19-20

בסביבות שנת 1790, תומאס ג'פרסון פיתח צופן תיאורטי שנועד לשימוש בהתכתבויות צבאיות, אך לעולם לא נבנה בפועל. הצופן, המכונה היום צופן הגלגל או דיסק ג'פרסון, תואר כסליל שניתן להשתמש בו בשביל להצפין הודעה באנגלית באורך עד 36 תווים, כך שאדם שנמצא ברשותו סליל תואם יכול לפענח את הטקסט המוצפן.[5]

מכשיר הצפנה זהה לדיסק ג'פרסון, הM-94, פותח בשנת 1917 באופן בלתי תלוי על ידי מייג'ור צבא ארצות הברית ג'וזף מאובורן. המכשיר שימש את צבא ארצות הברית לצרכי תקשורת עד שנת 1942.[6]

במלחמת העולם השנייה, מדינות הציר השתמשו בגרסה מתקדמת יותר של הM-94, הקרויה האניגמה. מכונת האניגמה היתה יותר מורכבת, כיוון שבשונה מדיסק ג'פרסון והM-94, אופן גיבוב האותיות באניגמה הוחלף כל יום. הצירוף של היום הנוכחי היה ידוע רק למדינות הציר, ולכן, על מנת לפצח את הצופן בהתקפת כוח גס, היה על התוקפים לנסות מעול 17,000 צירופים אפשריים תוך 24 שעות.[7] שימוש במשאבי חישוב עוצמתיים לבדיקת מפתחות ההצפנה היה אחד הגורמים שתרמו לפיצוח האניגמה בסופו של דבר.

בעת המודרנית

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

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

מפתחות הצפנה

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

אורכו של מפתח ההצפנה הוא מדד לחוזק שיטת ההצפנה: לדוגמה, מפתח ההצפנה המקורי, DES (Data Encryption Standard), הכיל 56 סיביות, ולכן היו [2^56] מפתחות אפשריים בסך הכל. מאז פותחו מחשבים עם כוח חישוב מספיק כדי לפצח צופן עם מפתח בן 56 סיביות על ידי התקפת כוח גס, ולכן צופן זה אינו בטיחותי יותר. נכון לשנת 2020, תקן מפתחות ההצפנה המודרניים הוא עד 2048 ביט במערכת RSA, וכמות המפתחות האפשריים מבטיחה שהצופן כמעט בלתי ניתן לפיצוח על ידי מחשבים מודרניים. עם זאת, משוער שמחשב קוונטי יהיה מסוגל לפצח צופן מסוג זה.[9]

סוגי מפתחות

מפתח סימטרי

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

מפתח ציבורי

איור המתאר תקשורת בין שרתים תוך כדי שימוש בהצפנת מפתח ציבורי .

בהצפנת מפתח ציבורי נעשה שימוש במפתחות שונים להצפנה ולפענוח, כאשר מפתח ההצפנה מפורסם בפומבי כך שכל אחד יכול להשתמש בו להצפנת הודעות, אבל רק לנמען יש גישה למפתח הפענוח, המאפשר קריאת הודעות. הצפנת מפתח הציבורי תוארה לראשונה במסמך סודי בשנת 1973[10][11]; לפני כן, כל תוכניות ההצפנה השתמשו במפתח סימטרי. בשנת 1976, פרוטוקול דיפי-הלמן הוצג לראשונה במאמר בכתב עת עם קהל קוראים גדול.[12]

דוגמה נוספת למערכת הצפנה שמשמתמש במפתח ציבורי היא RSA. מערכת הצפנה זו נוצרה בשנת 1978, ונמצאת בשימוש גם כיום היום ביישומים הקשורים לחתימות דיגיטליות. אלגוריתם RSA מיישם עקרונות מתורת המספרים: האלגוריתם בוחר שני מספרים ראשוניים ויוצר את מפתחות ההצפנה והפענוח תוך כדי שימוש בחשבון מודולרי.[13]

בשנת 1991, תוכנת ההצפנה PGP, המשתמשת בהצפנת מפתח ציבורי, נכתבה והופצה לציבור ללא תשלום על ידי פיל צימרמן כחלק ממאבק נגד ניסיון חקיקה בארצות הברית שביקש למנוע שימוש בהצפנה חזקה בקרב הציבור. PGP נרכשה על ידי סימנטק בשנת 2010 ומתעדכנת באופן שוטף.[14]

שימושים

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

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

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


המכון לאבטחת מחשבים(באנגלית: Computer Security Institute) בארצות הברית דיווח כי בשנת 2007, 71% מהחברות שנבדקו השתמשו בהצפנה עבור חלק מהנתונים שלהן בתנועה, ו53% השתמשו בהצפנה עבור חלק מהנתונים שלהן במנוחה.[15]

מחיקת נתונים

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

מחשבים קוונטיים

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

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

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

נקודות חולשה של מערכות הצפנה

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

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

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

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

אמיתות הטקסט המוצפן

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


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

אורך הטקסט המוצפן וריפוד

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

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

ראו גם

הערות שוליים

לקריאה נוספת

[[קטגוריה:קריפטוגרפיה]] [[קטגוריה:Category:מדעי המחשב]] [[קטגוריה:Category:אבטחת מידע]]

  1. ^ 1 2 Kessler, Gary, An Overview of Cryptography, www.garykessler.net
  2. ^ 1 2 History of Cryptography, Binance Academy (באנגלית)
  3. ^ 1 2 Ender Sahinaslan, Onder Sahinaslan, Cryptographic methods and development stages used throughout history, 2019, עמ' 030033 doi: 10.1063/1.5095118
  4. ^ J.H.P. Eloff, M.M. Eloff, Encryption techniques: a timeline approach, 2005-11, עמ' 4-5 doi: 10.1016/s1361-3723(05)70275-x
  5. ^ Wheel Cipher | Thomas Jefferson's Monticello, www.monticello.org
  6. ^ USS Pampanito - CSP-488, maritime.org
  7. ^ Nigel P. Smart, Cryptography Made Simple, Cham: Springer International Publishing, 2016, עמ' 133-134, ISBN 978-3-319-21935-6
  8. ^ Key Cryptography - an overview | ScienceDirect Topics, www.sciencedirect.com
  9. ^ arXiv, Emerging Technology from the. "How a quantum computer could break 2048-bit RSA encryption in 8 hours". MIT Technology Review (באנגלית אמריקאית). נבדק ב-2020-04-02.
  10. ^ Public-Key Encryption - how GCHQ got there first, web.archive.org, ‏2010-05-19
  11. ^ University of Bristol, Dr Clifford Cocks CB, www.bristol.ac.uk (באנגלית)
  12. ^ W. Diffie, M. Hellman, New directions in cryptography, IEEE Transactions on Information Theory 22, 1976-11-XX, עמ' 644–654 doi: 10.1109/tit.1976.1055638
  13. ^ M.E. Hellman, An overview of public key cryptography, IEEE Communications Magazine 40, 2002-05, עמ' 42–49 doi: 10.1109/mcom.2002.1006971
  14. ^ Andy Greenberg, Symantec Acquires Encryption Provider PGP For $300 Million, Forbes (באנגלית)
  15. ^
    שגיאות פרמטריות בתבנית:צ-מאמר

    פרמטרי חובה [ מחבר ] חסרים
    {{{מחבר}}}, Computer crime survey, Computer Fraud & Security Bulletin 7, 1985-10-XX, עמ' 1–4 doi: 10.1016/0142-0496(85)90006-2
  16. ^ Solenov, Dmitry; Brieler, Jay; Scherrer, Jeffrey F. (2018). "The Potential of Quantum Computing and Machine Learning to Advance Clinical Research and Change the Practice of Medicine". Missouri Medicine. 115 (5): 463–467. ISSN 0026-6620. PMC 6205278. PMID 30385997.
  17. ^ Nikitin, Kirill; Barman, Ludovic; Lueks, Wouter; Underwood, Matthew; Hubaux, Jean-Pierre; Ford, Bryan (2019). "Reducing Metadata Leakage from Encrypted Files and Communication with PURBs" (PDF). Proceedings on Privacy Enhancing Technologies (PoPETS). 2019 (4): 6–33. doi:10.2478/popets-2019-0056.