הצפנה

Transcription

הצפנה
‫הצפנה ‪ -‬אליס‪ ,‬בוב ושות'‬
‫עמיחי פרץ קלופשטוק‬
‫‪[email protected]‬‬
‫תודה רבה לאור דונקלמן על העצות וההערות המועילות!‬
‫מה ולמה ‪ -‬הצפנה‬
‫למה להצפין?‬
‫בוב‬
‫אליס‬
‫איב‬
‫היסטוריה של ההצפנה‬
‫המצרים הקדמונים‬
‫ספר ירמיהו‬
‫יוליוס קיסר‬
‫גלילאו גלילי‬
‫מרי מלכת הסקוטים‬
‫מלחמות העולם‬
WAR!
‫קריפטולוגיה‬
‫קריפטולוגיה – הגנה והעברה של מידע סודי‬
‫סטגנוגרפיה ‪ -‬הסתרה‬
‫קריפטוגרפיה ‪ -‬הצפנה‬
‫מיקרו‪-‬נקודות‬
‫החלפה‬
‫צפנים‬
‫קיסר‬
‫ויז'נר‬
‫העברה‬
‫קודים‬
‫אניגמה‬
‫‪RSA‬‬
‫גדר‬
‫רשת‬
‫גליל הצפנה‬
‫דיו סתרים‬
‫סוגי צפנים‬
‫קריפטוגרפיה‬
‫הצפנה של טקסט‬
‫סטגנוגרפיה‬
‫הסתרה של מסר‬
‫צופן אתב”ש‬
‫מיקרו נקודות‬
‫צופן קיסר‬
‫דיו סתרים‬
‫צופן החלפה‬
‫הסתרה כקעקוע שעליו צמח שיער‬
‫צופן ויז'נר‬
‫הסתרה על לוח עץ מצופה שעווה‬
‫אניגמה‬
‫הסתרה מתחת לקליפת ביצה‬
‫‪RSA‬‬
‫גליל הצפנה‬
‫הצפנה קוואנטית‬
‫יתרונות וחסרונות‬
‫קריפטוגרפיה‬
‫הצפנה של טקסט‬
‫סטגנוגרפיה‬
‫הסתרה של מסר‬
‫יתרונות‪:‬‬
‫יתרונות‪:‬‬
‫יעילות תלויה במפתח‬
‫יעילות ללא תלות במפתח‬
‫צפנים שאינם ניתנים לפענוח‬
‫לא גורם חשד‬
‫מגוון שיטות הצפנה‬
‫חסרונות‪:‬‬
‫חסרונות‪:‬‬
‫הפצת המפתחות‬
‫מספר הודעות מוגבל‬
‫במסר ניכר שהוא מוצפן‬
‫ניתן לפענוח בקלות יחסית‬
‫שלבים בהצפנה‬
‫טקסט‬
‫מפתח‬
‫אלגוריתם הצפנה‬
‫טקסט מוצפן‬
‫שלבים בפענוח‬
‫צופן‬
‫מפתח‬
‫אלגוריתם‬
‫טקסט רגיל‬
‫צופן אתב”ש‬
‫ספר ירמיהו‪:‬‬
‫"ּומֶ לְֶך שֵׁ שַׁ ְך י ִשְׁ ֶתה ַאחֲ ֵריהֶ ם"‬
‫"הִ נְׁנִי מֵ עִ יר עַ ל ָבבֶל ו ְׁאֶ ל י ֹשְׁ בֵי לֵׁ ב ָקמָ י רּוחַ מַ שְׁ חִ ית"‬
‫ָארץ אֵ יְך הָ י ְׁתָ ה לְׁשַ םָ ה ָבבֶל בַּגֹוי ִם"‬
‫"אֵ יְך נִ ְׁלכְׁדָ ה שֵׁ שַׁ ְך ו ַתִ תָ פֵׂש תְׁ הִ לַת כָל הָ ֶ‬
‫ששך = בבל‬
‫לב קמי = כשדים‬
‫תרגיל‪:‬‬
‫רטט רמקכ קרט שרט‪ ,‬קרט רקפכ רקכ שרט‬
‫ח ט‬
‫א ב ג ד ה‬
‫ו ז‬
‫ת ש ר ק צ‬
‫פ ע ס נ‬
‫י‬
‫כ ל מ נ ס ע‬
‫פ צ ק ר ש ת‬
‫ז‬
‫א‬
‫מ ל כ‬
‫י ט ח‬
‫ו‬
‫ה ד ג ב‬
‫צופן קיסר‬
‫דוגמאות‪:‬‬
‫‪yhql, ylgl, ylfl. = Veni, vidi, vici.‬‬
‫בעברית‪:‬‬
‫צבא של עכברים עליהם מפקד אריה יכול לעשות יותר מצבא של אריות עליו מפקד עכבר‪.‬‬
‫שהד בס קנהאמע קסמחע ערתז דאמח מנטס סקבטג מטגא עשהד בס דאמטג קסמט ערתז קנהא‪.‬‬
‫תרגיל‪:‬‬
‫באח באח במא בעכ‪ ,‬בעכ במא באח באח‬
‫א ב‬
‫ד ה‬
‫ג ד ה‬
‫ו‬
‫ו ז ח ט‬
‫ז ח ט י‬
‫י‬
‫כ ל מ נ ס ע פ צ ק ר ש ת‬
‫כ ל מ‬
‫ג‬
‫נ ס ע פ צ ק ר ש ת א ב‬
‫פענוח צופן קיסר‬
p hzzbyl fvb p ohk yhaoly il aol mpyza thu pu h cpsshnl yhaoly aohu zljvuk pu yvtl
a b c d e f
g h i
j k l m n o p
q r s
t u v w x y z
‫צופן החלפה‬
‫דוגמאות‪:‬‬
‫”אע ‪ 10‬חפקאו עד שזעאו תכפדו‪ ,‬שדי עותאזאו תאזשסאצ‪ ,‬פשדי עדש”‪.‬‬
‫”יש ‪ 10‬סוגים של אנשים בעולם‪ ,‬אלה שמבינים בינארית‪ ,‬ואלה שלא”‪.‬‬
‫תרגיל‪:‬‬
‫זגע זעב זגע‬
‫ח ט י‬
‫כ ל מ נ ס ע פ צ ק ר ש ת‬
‫א ב‬
‫ג ד ה‬
‫ו ז‬
‫ש ת‬
‫ק ר י‬
‫פ ט ג ה א ב ד‬
‫ו ז ח‬
‫כ ל מ נ ס ע‬
‫צ‬
‫ניתוח תדירויות‬
‫א = ‪4.7‬‬
‫ב = ‪4.7‬‬
‫ג = ‪1.5‬‬
‫ד = ‪2.6‬‬
‫ה = ‪8.6‬‬
‫ו = ‪11.4‬‬
‫ז = ‪0.9‬‬
‫ח = ‪2.2‬‬
‫ט = ‪1.5‬‬
‫י = ‪11.7‬‬
‫כ = ‪2.6‬‬
‫ל = ‪6.2‬‬
‫מ = ‪8.6‬‬
‫נ = ‪4.8‬‬
‫ס = ‪1.9‬‬
‫ע = ‪2.6‬‬
‫פ = ‪2.5‬‬
‫צ = ‪1.4‬‬
‫ק = ‪2.3‬‬
‫ר = ‪5.8‬‬
‫ש = ‪4.4‬‬
‫ת = ‪6.0‬‬
‫‪14.00%‬‬
‫‪12.00%‬‬
‫‪10.00%‬‬
‫‪8.00%‬‬
‫‪6.00%‬‬
‫‪4.00%‬‬
‫‪2.00%‬‬
‫‪0.00%‬‬
‫ת ש ר ק צ פ ע ס נ מ ל כ י ט ח ז‬
‫ו ה ד ג ב א‬
‫פענוח צופן החלפה‬
‫=]!> ‪,=(-‬‬
‫=]!> ‪,=(-‬‬
‫‪,=(>%{(} ,%]#/$‬‬
‫‪?=|- )>#$‬‬
‫=]!> ‪,=(-‬‬
‫!=‪,=($ /%+(#‬‬
‫|= ~(( ‪,!$^$‬‬
‫|)&‪.==| $= (/‬‬
‫ו!~(( ‪!$^$‬‬
‫=]!> ‪,=(-‬‬
‫=‪,=(<+] =()-$/‬‬
‫]= @‪.=>% -%#‬‬
‫א ב ג‬
‫ד ה‬
‫ו‬
‫ז‬
‫ח ט י‬
‫כ ל מ נ ס ע פ צ ק ר ש ת‬
‫צופן ויז'נר‬
‫דוגמה‪:‬‬
‫מפתח‪ :‬מחשב‬
‫”תןנזם םג בדלקך‪ ,‬תכשתקפ שא עץותן טזףףז הו ולב‬
‫ךףזצ בדלקך‪”.‬‬
‫”לטעות זה אנושי‪ ,‬להאשים את המחשב בטעות זה עוד‬
‫יותר אנושי‪”.‬‬
‫תרגיל‪:‬‬
‫מפתח‪ :‬סושי‬
‫זצח חה דדת ערדחב‪ ,‬דדת ערדחב רכק מצ‪.‬‬
‫נוצר ע"י ‪Erwin138‬‬
‫תוכנה אוטומטית לשימוש בצופן ויז'נר‪http://img2.tapuz.co.il/forums/1_94784909.htm:‬‬
‫פענוח של צופן ויז'נר‬
dlc mer krb dlc nse gild xm dlc wssci, dyv lexpsxgyryv tsbtmciq.
http://img2.tapuz.co.il/forums/1_94784909.htm :‫תוכנה אוטומטית לשימוש בצופן ויז'נר‬
‫שיפור צופן ויז'נר‬
:‫הודעה מוצפנת‬
fjhhq cv ytmr-simhuded, mw xlsd pvddabe igv wzdefxk.
http://img2.tapuz.co.il/forums/1_94784909.htm :‫תוכנה אוטומטית לשימוש בצופן ויז'נר‬
‫סודיות מושלמת (צופן וורנם)‬
‫צופן‪:‬‬
‫שטבקת לזדחחזך ןמגתרתנץסכיב ןאח חאהפב‬
‫שםסאע ןנ ץופ מקיסףףֶר תךפמרער נרשוז‬
‫דמיטטז פעגשאנ םםעןב דהףרץ שפמקט פב םי‬
‫טש צקףפשא שדהץעס ץףגבשה‪ ,‬ןהך רדרסה‬
‫הךיןז‪.‬‬
‫תוכנה אוטומטית לשימוש בצופן ויז'נר‪http://img2.tapuz.co.il/forums/1_94784909.htm :‬‬
‫‪XD‬‬
‫אב ר ם‬
‫מפתח‪:‬‬
‫י פ כ ז‬
‫י צ ח ק‬
‫מפתח‪:‬‬
‫אש ל ו‬
‫י ע ק ב‬
‫מברק צימרמן‬
‫תאריכים‪:‬‬
‫• נשלח‪16/1/1917 :‬‬
‫• יורט‪17/1/1917 :‬‬
‫• פוענח‪17/1/1917 :‬‬
‫חשיבות‪:‬‬
‫• גילוי יכולות הפענוח של בריטניה או ‪-‬‬
‫• עיכוב חבירת ארה"ב לבריטניה נגד הגרמנים‬
‫בסופו של דבר‪:‬‬
‫• מסירה לארה"ב תוך הצהרה שהתקבל מבוגד מקסיקני‬
‫• הכרזת מלחמה אמריקנית על הגרמנים ב‪6/4/1917-‬‬
‫אניגמה‬
MesserWoland ‫נוצר ע"י‬
‫אניגמה‬
‫מספר המפתחות האפשריים‪:‬‬
‫‪17,576‬‬
‫• מצבי המערבלים‪:‬‬
‫‪X‬‬
‫‪6‬‬
‫• סידור המערבלים‪:‬‬
‫‪X‬‬
‫‪100,391,791,500‬‬
‫• לוח המרכזייה‪:‬‬
‫=‬
‫• סה"כ מעל ‪ 10,000,000,000,000,000 -‬אפשרויות‬
‫סימולטור אניגמה‬
‫פיצוח האניגמה‬
‫‪:1932‬‬
‫• מפתח אישי יוצפן פעמיים ברצף ‪abcabc -‬‬
‫‪• ABCDEF GH I JK LMNOPQRSTUVWXYZ‬‬
‫‪• FQHPLWOGBMVRXU YCZ I TNJE A SDK‬‬
‫• מתוך הרבה הודעות התקבלה השרשרת‪J :‬‬
‫• מספר אפשרויות‪/‬שרשראות מוגבל ‪105,456 -‬‬
‫‪U‬‬
‫‪N‬‬
‫‪T‬‬
‫‪S‬‬
‫‪X‬‬
‫‪M‬‬
‫‪:1938‬‬
‫• מיכון הפענוח – מכונת "בֹומְׁ בַה"‬
‫‪:1939‬‬
‫• הוספה של שני מערבלים נוספים – הגדלת מספר האפשרויות מ‪ 6-‬ל‪60-‬‬
‫• הגבלה ביכולות ניתוח הצפנים – לא איכותית אל כמותית‬
‫‪J‬‬
‫פיצוח האניגמה‬
‫תחילת מלה"ע השנייה‪:‬‬
‫• שיפור מכונות ה"בומבה" ע"י בעלות הברית – מכונות "בֹומְׁ ב"‬
‫• ניתוח עריסות )הייל היטלר‪ ,‬אנא הגב‪ ,‬דו"חות קבועים וכד'(‬
‫דצמבר ‪:1941‬‬
‫• הוספת מערבל רביעי‬
‫• הגבלה ביכולת ניתוח הצפנים‬
‫מאי ‪:1943‬‬
‫• ייצור מכונות בומב משופרות ע"י ארה"ב‬
‫ספטמבר ‪:1944‬‬
‫• הפסקת ייצור עקב ההתקדמות במלחמה‬
‫כמה דברים נוספים‬
‫חולשות‪:‬‬
‫• אי יכולת להצפין אות בעצמה‬
‫לאחר מלה"ע השנייה‪:‬‬
‫• מכירה של מכונות אניגמה ע"י ארה"ב ובריטנייה‪ ,‬תוך הצהרה שהן בטוחות‪...‬‬
‫לורנץ וקולוסוס‬
‫• קולוסוס סימן ‪ – 1‬פבואר ‪1944‬‬
‫• קולוסוס סימן ‪ – 2‬יוני ‪1944‬‬
‫צפנים ממוחשבים‬
‫הפעלת פעולות מתמטיות על הודעה בקוד ‪ASCII‬‬
‫הודעה‪:‬‬
‫‪Haifux = 01001000, 01100001, 01101001, 01100110, 01110101, 01111000.‬‬
‫אלגוריתם‪ :‬הכפלה של כל אות במפתח‬
‫מפתח‪2 :‬‬
‫צופן‪:‬‬
‫‪10010000, 11000010, 11010010, 11001100, 11101010, 11110000‬‬
‫אינסוף אלגוריתמים להצפנה – אין הגבלה בגלל נוחות השימוש‬
‫‪AES vs DES‬‬
‫‪DES‬‬
‫‪AES‬‬
‫• פותח בשנת ‪ 1975‬ע"י ‪ IBM‬וה‪NSA -‬‬
‫• פותח ע"י יואן דימן ווינסט ריימן‬
‫• התקבל כתקן הצפנה בשנת ‪1976‬‬
‫• התקבל כתקן בשנת ‪2001‬‬
‫• לא היה שיתוף של הקהילה בתכנון‬
‫• שיתוף הקהילה בתכנון ותחרות‪ ,‬ללא ה‪NSA-‬‬
‫‪RC4‬‬
‫• פותח בשנת ‪ 1987‬במעבדות ‪ RSA‬ע"י רונלד ריבסט‬
‫• משמש ב‪ SSL-‬וב‪WEP-‬‬
‫• הודלף בשנת ‪ 1994‬באופן אנונימי באינטרנט‬
‫• בסופו של דבר ההדלפה אומתה ע"י ריבסט‬
‫בעיית הפצת המפתחות‬
‫רשת של ‪ 15‬משתתפים‪:‬‬
‫‪15 * 14 * 3 = 630‬‬
‫רשת של ‪ 20‬משתתפים‪:‬‬
‫‪20 * 19 * 3 = 1140‬‬
‫רשת של ‪ 50‬משתתפים‪:‬‬
‫‪50 * 49 * 3 = 7350‬‬
‫רשת של ‪ 100‬משתתפים‪:‬‬
‫‪100 * 99 * 3 = 29700‬‬
‫פרוטוקול דיפי ‪ -‬הלמן‬
‫שלבים‪:‬‬
‫תיאום ערכי ‪ Y‬ו ‪ (2<Y<P) P -‬לפונקצייה 𝑃 𝑑𝑜𝑚 𝑋 𝑌 באמצעות קו לא מאובטח‬
‫אליס‪:‬‬
‫‪ .1‬בחירת מספר סודי‪A :‬‬
‫בוב‪:‬‬
‫איב‬
‫‪ .1‬בחירת מספר סודי‪B :‬‬
‫‪ .2‬חישוב של 𝑃 𝑑𝑜𝑚 𝐴 𝑌‬
‫‪ .2‬חישוב של 𝑃 𝑑𝑜𝑚 𝐵 𝑌‬
‫‪ .3‬סימון התוצאה כ – ‪ α‬ושליחה‬
‫‪ .3‬סימון התוצאה כ – ‪ β‬ושליחה‬
‫‪ .4‬חישוב של 𝑃 𝑑𝑜𝑚 ‪𝑌 β‬‬
‫‪ .4‬חישוב של 𝑃 𝑑𝑜𝑚 ‪𝑌 α‬‬
‫תוצאה זהה‪K :‬‬
‫הצפנה באמצעות מפתח ציבורי‬
‫זוג מפתחות‬
‫מפתח ציבורי‬
‫אליס‬
‫מפתח פרטי‬
‫מפתח פרטי‬
‫בוב‬
‫מסר מוצפן וחתום‬
‫מפתח ציבורי של בוב‬
‫מפתח ציבורי של אליס‬
‫שרת מפתחות ציבוריים‬
‫מפתח פרטי‬
‫הצפנה באמצעות מפתח ציבורי‬
‫זוג מפתחות‬
‫מפתח ציבורי‬
‫אליס‬
‫מפתח ציבורי של בוב‬
‫מפתח פרטי‬
‫מסר מוצפן וחתום‬
‫מפתח פרטי‬
‫מפתח פרטי‬
‫שרת מפתחות ציבוריים‬
‫בוב‬
‫מפתח ציבורי של אליס‬
‫הצפנה היברידית‬
‫שולח‬
‫מקבל‬
Man in the middle
‫בוב‬
‫איב‬
‫אליס‬
‫רשת אמון ומסיבת החלפת מפתחות‬
‫הצפנה קוואנטית‬
‫העתיד של ההצפנה‬
‫אלגוריתם למציאת מספרים ראשוניים מתוך מכפלתם?‬
‫מחשוב קוואנטי?‬
‫הצפנה קוואנטית?‬
‫תקופת ביניים?‬
‫ומה הלאה?‬
‫אז מה היה לנו?‬
‫• ענפי הקריפטולוגיה‬
‫• הצפנה סימטרית‬
‫• הצפנה אסימטרית‬
‫• הצפנה קוואנטית‬
‫• העתיד של הקריפטולוגיה‬
‫שאלות? תגובות? הערות?‬
‫פורסם ע"י זהבית סודאי‬