בפונקציה מתבצע הכפל של הקבוע formula_69 (שהוא תוצאת הצפנה של מחרוזת אפסים) במשתנה formula_91 הדרך הארוכה לחישוב formula_92 אינה יעילה, אפשר לפשט את התהליך על ידי רקורסיה של הכפלות בפולינום formula_93 המיוצג על ידי האלמנט formula_4 המקביל למחרוזת הבינארית '10' (או בבסיס הקסדצימלי 0x02). פעולה זו שוות ערך לפעולת Shift left, כלומר הזזה של כל הסיביות שמאלה (למעלה) פוזיציה אחת, הסיבית המשמעותית ביותר נפלטת והסיבית הראשונה מתאפסת, הפעולה Shift מובנית בכל המעבדים והיא יעילה. אם הסיבית המשמעותית ביותר של formula_91 (לפני ההזזה) המיוצגת על ידי formula_96 היא אפס, מתקבל למעשה פולינום ממעלה 127, אחרת התרחשה גלישה ולכן לפי כללי החשבון המודולרי יש צורך לחלק את התוצאה בפולינום הפרימיטיבי formula_97 ולקחת את השארית. כלומר למצוא formula_98 ו-formula_99 המקיימים formula_100. קל לפתור את המשוואה עבור המקרה formula_101 כי אז מתקבל formula_102. יוצא שהצמצום המודולרי מקביל למעשה לפעולת חיסור אחת במקדמים הנמוכים של formula_103. בשדה בינארי פעולת חיבור מתבצעת על כל המקדמים בנפרד מודולו 2 שהיא מקבילה למעשה לפעולת XOR. היות ש-XOR הופכי של עצמו חיסור זהה לחיבור.
בסיכומו של דבר הכפל ב-formula_93 דורש רק הזזת כל סיביות המחרוזת פוזיציה אחת ופעולת XOR מותנית אחת עם הקבוע לעיל. שהן כידוע פעולות מהירות וזולות במונחי מחשוב. מכאן הדרך לביצוע כל כפל ביעילות רבה ברקורסיה. כדי לחשב את formula_105 מייצגים את formula_31 כחזקות של האלמנט formula_4, מבצעים רקורסיה formula_108 כלומר בכל שלב מכפילים את formula_91 ב-formula_4 בשיטה המתוארת ואם formula_111 מבצעים חיבור אחד נוסף ב-XOR (מלבד החיסור המותנה בכפל ב-formula_4), התוצאה היא ב-formula_113 כדלהלן:
מספר הפעמים שיש להפעיל את אלגוריתם הכפל בהצפנה אחת של טקסט בגודל formula_119 סיביות הוא formula_120. וכן אם יש מידע נלווה בגודל formula_98 סיביות יש להוסיף formula_122 פעולות כפל. יתרה מזו, אם הזיכרון זמין, אפשר להאיץ את פעולת הכפל על ידי הכנה מוקדמת של טבלאות כפל. כלומר כדי לחשב את formula_92 אפשר להכין טבלה של תת-קבוצה של חזקות של formula_69. אם מחלקים את 128 הסיביות של formula_69 ל-16 בתים, ומכינים 16 טבלאות formula_126 של 256 ערכים כל אחת, פעולת הכפל של formula_91 כלשהו יכולה להיות:
הערך formula_71 מתייחס לבית ה-formula_130 של formula_91. הרעיון הוא שאם מבודדים שמונה סיביות של formula_91 כלשהו פעולת הכפל ב-formula_69 היא תוצאה אחת מתוך formula_134 תוצאות אפשריות, כלומר 256 אלמנטים. אם מכפילים ב-16 מתקבל למעשה כל האפשרויות כאשר סך כל הזיכרון המנוצל הוא 65,536 בתים. ויקטור שופ הציע רעיון לצמצם את דרישות הזיכרון במחיר של חישוב ארוך יותר. אפשר להיפטר מכל הטבלאות formula_135 למעט formula_136 ולבצע את הכפל כדלהלן:
כלומר אפשר לבצע את הכפל ב-formula_138 רקורסיבית יחד עם פעולות XOR. וכן להיעזר בטבלה formula_136 כדי לחשב את formula_140. אולם תהיה בעיה של עם formula_141 כי הוא חורג מגודל 16 בתים. אפשר להוסיף טבלה formula_142 שתכלול את כפולות formula_34 ב-formula_141. בשיטת שופ אפשר לצמצם את דרישות הזיכרון של שתי הטבלאות formula_136 ו-formula_142 לסך הכול 256 ועוד 64 בתים במחיר של מעט עבודה נוספת. להלן תיאור אלגוריתם שופ:
האלגוריתם להכנת הטבלה formula_136 הוא:
באותה דרך אפשר להכין את יתר הטבלאות formula_165.
ביטחון ויעילות.
GCM בנוי לפי פרדיגמה של הצפנה מאומתת שנקראת "הצפנה ואז אימות" (encrypt-then-authenticate) שידועה בביטחון שהיא מספקת, בתנאי שהמרכיבים הבסיסיים כמו הצופן הסימטרי ופונקציית הגיבוב בטוחים. ההעדפה של מצב מונה נובעת מתכונת המקביליות ומהפשטות שלו. וניצול כפל פולינומים מעל השדה המורחב formula_85 נובע גם בשל תכונת האקראיות המוכחת ובשל היעילות במימוש במיוחד בחומרה. פחות מעגלים ופחות עיכובים בצינור עיבוד נתונים. הפולינום של השדה נבחר באופן שיכיל משקל נמוך (מספר סיביות אחד נמוך) והוא נלקח מטבלה של גדיאל סרוסי מהטכניון. לצורך האלגוריתם נדרש רק מפתח הצפנה יחיד, בעוד שמפתח פונקציית האימות נגזר ממנו. השימוש בכפל פולינומים מעל שדה בינארי מורחב, הוכח כבטוח נגד התקפת גלוי-נבחר על ידי בלייר, קיליאן, רוגווי ואחרים. השימוש בפונקציית גיבוב 'אוניברסלית' להבטחת שלמות ואימות כמו בקוד אימות מסרים הוכח כבטוח על ידי ווגמן וקרטר. מצב מונה שהועלה לראשונה על ידי דיפי והלמן ב-1979 הוכח על ידם כיעיל ובטוח. לפי הצהרת המפתחים תפוקת האלגוריתם עם זיכרון של 256 בתים עומדת על כ-90 מחזורי שעון לבית בממוצע. וכן הסיכויים להתקפה מוצלחת כנגד מנגנון האימות הם בהסתברות של formula_167.
ניילס פרגוסון (ממפתחי אלגוריתם Twofish) גילה שתי חולשות במנגנון האימות של GCM כאשר משתמשים בתג אימות קצר כמו 32 או 8 סיביות, בנוסף להערות טכניות לגבי התכנון של GCM. הבעיה הראשונה שהעלה מראה שאפשר להעלות את הסיכויים לזיוף מוצלח לכדי חצי ממה שצפוי, לדוגמה עבור תג אימות בגודל 32 סיביות הסיכויים הם formula_168, שזה גבוה במידה ניכרת ממה שהצהירו המפתחים. הסיבה לבעיה אינה GHASH עצמה כיוון שהפונקציה מוכחת כחד כיוונית והתנגשויות הן בהסתברות של formula_169 עבור formula_170 בלוקים. הסיבה לנקודת התורפה נעוצה בעובדה שתוצאת GHASH מוצפנת על ידי המפתח באמצעות XOR שכידוע אינו מגן מפני מניפולציה של סיביות הפלט (כלומר קלט עם סיבית שגויה אחת ישפיע רק על הסיבית המקבילה בפלט, זוהי פרצה שמאפשרת התקפה כאשר ידוע איזו סיבית שגויה). אבל הבעיה היותר חמורה היא שבעקבות זיוף מוצלח אחד ניתן להגביר את הסיכויים לחשיפת סיביות אחרות של מפתח האימות formula_69 עד כדי חשיפת המפתח כולו אחרי מספר ניסיונות די קצר. ההמלצה שלו היא להשתמש בתג אימות באורך 128 סיביות ולא פחות או במנגנון אימות אחר. אם למשל משנים את GCM כך שלפני XOR עם המפתח מצפינים את התוצאה באמצעות צופן הבלוקים נראה שהבעיה תיפתר על חשבון יעילות.
כמו כן מעלה נילס פרגוסון כמה מגבלות ראויות לציון בתכנון GCM. העובדה שאורך המסר המאומת הוגבל ל-formula_172 שזה יחסית קצר וכן העובדה שהאלגוריתם אינו מגביל את אורך המסר לגבולות בתים מה שעלול ליצור בעיות תאימות וכן העובדה שבמצב אופטימלי נדרשות טבלאות גדולות כדי להגיע לביצועים גבוהים, מה שלטענתו אינו מעשי.
The Way
The Way (בעברית: הדרך) הוא שיר של הזמרת האמריקאית אריאנה גרנדה, השיר יצא לאור ב-27 במרץ 2013 כסינגל הראשון מתוך אלבום הבכורה שלה, Yours Truly"," בשיר מתארח הראפר האמריקאי מק מילר.
השיר זכה להצלחה מפתיעה באמריקה לאחר שהגיע למקום 9 במצעד הבילבורד הוט 100 ולמעמד של פלטינה משולשת בארצות הברית.
רקע והוצאה.
למרות שסינגל הבכורה של גרנדה הוא "Put Your Hearts Up" שהיה בסגנון "פופ מסטיק" גרנדה אמרה במהלך ריאיון בתוכנית רדיו שזהו אחד השירים השנואים עליה, שהוא עושה רושם ראשוני רע בתור מוזיקאית רצינית והיא אף הסתירה את הקליפ לשיר בערוץ ה-VEVO שלה וכאשר היא הוציאה את הסינגל "The Way" היא אמרה שהוא מראה על התבגרותה גם בחיים וגם בסגנון המוזיקלי שהוא יותר בוגר ועם תשוקה מאשר הסינגל הקודם שהיה יותר ילדותי ולא מייצג אותה לכן היא מעדיפה שהוא יחשב כסינגל הבכורה שלה ולא "Put Your Hearts Up".
הסינגל קיבל בעיקר ביקורות חיוביות, כאשר המבקרים השוו את קולה של גרנדה לקולה של מריה קארי בזכות המעד הקולי הרחב של השתיים שמגיע ל-4 אוקטבות ואף נתנו לה את הכינוי "מריה קארי החדשה", חלק מהמבקרים אף אמרו שגרנדה היא "הדבר הגדול הבא".
הסינגל הצליח גם מבחינה מסחרית כשלאחר שבע שעות מצאת הסינגל הוא כבר הגיע לעשירייה הפותחת המצעד האמריקאי של "iTunes" וזאת הפעם הראשונה מאז סינגל הבכורה של יעל נעים "New Soul" שסינגל בכורה מגיע לעשירייה הפותחת של iTunes תוך פחות מיממה וב-1 באוגוסט 2014 הגיע הסינגל למעמד של "פלטינה משולשת" בארצות הברית לאחר שמכר יותר משלוש מיליון תקליטים ולמעמד של "זהב" בבריטניה, אוסטרליה וונצואלה.
ההופעה הטלוויזיונית הראשונה של גרנדה עם השיר הייתה ב-29 במאי 2013 כאשר הופיעה ביחד עם מילר במופע של אלן דג'נרס, היא גם הופיעה עם השיר בפתיחה של טקס פרסי ה-VMA של MTV. בנוסף להופעות הטלוויזיוניות של השיר, גרנדה הופיע איתו גם כחימום במספר הופעות של ג'סטין ביבר בסיבוב ההופעות השני שלו "Believe Tour".
לשיר יצאו עוד שתי גרסאות, גרסה אחת בספרדית (שבה היא מארחת את ג'יי באלווין) וגרסה אחת בלי קטע הראפ של מילר.
הקליפ לשיר הועלה לערוץ ה-VEVO של גרנדה ב-28 במרץ 2013, בקליפ מוצגים גרנדה, מילר ורקדנים כאשר ברקע יש תמונות שונות של גרנדה ומילר (שצולמו במצלמה ביתית על ידי מילר) ותוך כדי הרקדנים רוקדים בחדר עם בלונים. הקליפ צבר למעלה מ-400 מיליון צפיות בYouTube.
בני אבני
בני אבני (נולד ב-26 בספטמבר 1970) הוא שחקן וטייס ישראלי. מוכר כדמותו של דניאל וייסמן בסדרה "החברים של נאור".
קורות חייו.
אבני גדל בכפר בלום בן לאב צייר ולאמא מורה למוזיקה קלאסית לאחר שסיים את לימודי התיכון כשל להתקבל לקורס טיס ושובץ כלוחם בחיל השריון בו שירת כלוחם וכקצין, לקראת תום שרותו הצבאי התקבל אבני לקורס טיס, ולאחר מכן שירת כטייס בחיל האוויר הישראלי.