RC6 הוא צופן בלוקים סימטרי שפותח ב-1998, על ידי רונלד ריבסט יחד עם Matt Robshaw ,Ray Sidney ו-Yiqun Lisa Yin, מחברת RSA ו-MIT עבור תקן ההצפנה המתקדם שהחליף את DES. זהו דור ההמשך של צופן RC5 שפותח במיוחד כדי להתאים לדרישות התקן והיה מבין חמשת המועמדים המובילים (מקום רביעי אחרי Twofish). כקודמו RC6 עושה שימוש נרחב בהזזה מעגלית בסיביות (bitwise rotation) תלויית מידע. אולם נוספו בו מאפיינים חדשים; הוא מנצל ארבעה אוגרים במקום שניים וכולל כפל מודולרי בשלמים שמגביר באופן ניכר את רמת הפיזור (diffusion) לסבב. מה שמניב ביטחון טוב יותר בפחות סבבים ובתפוקה גבוהה יותר. כיתר המועמדים שעלו לגמר במהלך התחרות הוכרז כי לא נמצאו התקפות יעילות נגדו. RC6 רשום כפטנט, שמו הוא סימן רשום והזכויות עליו שייכות לחברת RSA. ייתכן שהשימוש בו מצריך רישיון (החברה הצהירה כי אם ייבחר על ידי התקן יהיה השימוש בו חופשי אולם לא ניתנה כל הצהרה נוספת לאחר סגירת התחרות).
שיקולי פיתוח.
RC6 נולד בעקבות הרצון להתאים את צופן RC5 שיצא ב-1995 לתקן המתקדם ובעקרון הם דומים בפשטותם הרבה. את השם RC ניתן לפרש כקיצור של Rivest Cipher או Ron's Code. אף על פי שלא התגלו התקפות מעשיות מוצלחות כנגד RC5, מחקרים גילו אפשרות להתקפה תאורטית שנובעת מהעובדה שמידת ההזזה המעגלית אינה מושפעת מכל סיביות האוגרים. הפתרון היה הוספת כפל שלמים מודולרי. בנוסף, כדי לעמוד בדרישות התקן על הבלוק להיות 128 סיביות לפחות. למרות היותו מהיר RC5 מכיל רק שני אוגרי 32 סיביות לכן לא ניתן היה להרחבה ביעילות כדי להגיע ל-128 סיביות ללא שימוש באוגרים גדולים יותר שהתקן אינו תומך בהם, במקום זאת הוחלט להגדיל את מספר האוגרים. והתוצאה היא RC6 – בטוח ומהיר יותר וכמו קודמו שומר על פשטות וביצועים גבוהים בתוכנה.
תיאור האלגוריתם.
RC6 הוא אלגוריתם פרמטרי המוגדר על ידי הסימון RC6-w/r/b. גודל מילה הוא formula_1 סיביות, מספר הסבבים הוא formula_2 והמפתח בגודל formula_3 בתים, לצורך התקן נקבע formula_4 והמפתח יכול להיות formula_5 בתים. האלגוריתם פועל על ארבע מילים בגודל formula_1 תוך שימוש בפעולות הבאות:
הקלט הוא 128 סיביות טקסט גלוי המחולקות לארבע מילים בגודל 32 סיביות formula_7 לפי סדר בתים קטן (הסיביות הראשונות של הקלט מוצבות בבית הראשון של formula_8). וכן מפתח מורחב (ראה להלן) שהוא מערך של 43 מפתחות-סבב בגודל 32 סיביות כל אחד, המסומן formula_9. בתיאור הצופן, סבב מתייחס לתהליך דמוי רשת פייסטל, דהיינו בכל סבב מחצית סיביות הקלט עוברות טרנספורמציה בהתאם למחצית השנייה ולאחר מכן מחליפים מקומות לפי סדר formula_10. להלן פסאודו קוד.
הרחבת מפתח.
תהליך הרחבת המפתח תואם את תהליך הרחבת המפתח של RC5, עם יותר מילות מפתח. המפתח מורחב ממפתח הצופן formula_3 המסופק על ידי המשתמש כשהוא מרופד באפסים לפי הצורך ומיוצג על ידי מערך formula_32 המכיל formula_33 מילים בגודל formula_1 סיביות. אם המפתח formula_35 אזי formula_36 ו-formula_37. מספר המילים הדרוש למפתח המורחב formula_38 הוא formula_39. מכינים מערך formula_9 תוך שימוש בקבוע formula_41 שהוא ייצוג הקסדצימלי של formula_42 (כאשר formula_43 הוא בסיס הלוגריתם הטבעי) ובקבוע formula_44 שהוא ייצוג הקסדצימלי של formula_45 כאשר formula_46 מייצג את יחס הזהב (אילו ערכים שרירותיים שאפשר להחליפם באחרים להתאמה אישית) מבצעים כדלהלן:
ביצועים וביטחון.
יישום צופן RC6 (על פנטיום 2) בשפת c הגיע למהירות של כ-600 מחזורי שעון לבלוק או כ-5 מגה לשנייה. RC6 עולה בביצועיו על ריינדל במימוש בתוכנה בעיקר על מחשב אינטל 32 סיביות. כמו יתר המועמדים (לפי דרישות התקן) מתאים ליישום גם בחומרה או במעבד כרטיס חכם, אם כי לריינדל ביצועים טובים יותר בשטח זה. היות ש-RC6 אינו משתמש בתיבות החלפה מימוש האלגוריתם מאוד קומפקטי ויכול לאכלס פחות מ-256 בתים. הערכת המפתחים היא שההתקפה הטובה ביותר האפשרית כנגד הצופן, היא בסיבוכיות בין formula_61 ל-formula_62.
קוד לדוגמה.
להלן קוד C++ לא אופטימלי להמחשה. לפי פרמטרים: formula_63. המפתח באורך b יכול להיות 16, 24 או 32 בתים. הקלט והפלט הם מערכי 4 מילים בגודל 32 סיביות. S הוא מערך עזר בגודל 44 מילים.
void Setup(byte *key, int b, unsigned int *S)
int i, j, s, v;
unsigned int L[8], A, B;
L[((b + 4 - 1) / 4) - 1] = 0;
for (i = b - 1; i &gt;= 0; i--)
L[i / 4] = (L[i / 4] « 8) + key[i];
S[0] = 0xB7E15163;
for (i = 1; i &lt;= 43; i++)
S[i] = S[i - 1] + 0x9E3779B9;
A = B = 0;
i = j = 0;
v = 44;
if (((b + 4 - 1) / 4) &gt; v) v = ((b + 4 - 1) / 4);
v *= 3;
for (s = 1; s &lt;= v; s++)
A = S[i] = ROTL(S[i] + A + B, 3);
B = L[j] = ROTL(L[j] + A + B, A + B);
i = (i + 1) % 44;
j = (j + 1) % ((b + 4 - 1) / 4);
void Encrypt(unsigned int *pt, unsigned int *ct, unsigned int *S)
unsigned int A = pt[0], B = pt[1], C = pt[2], D = pt[3];
B += S[0], D += S[1];
for (int i = 2; i &lt;= 40; i += 2)
t = ROTL(B * (2 * B + 1), lgw);
u = ROTL(D * (2 * D + 1), lgw);
A = ROTL(A ^ t, u) + S[i];
C = ROTL(C ^ u, t) + S[i + 1];
x = A, A = B, B = C, C = D, D = x;
A += S[42], C += S[43];
ct[0] = A, ct[1] = B, ct[2] = C, ct[3] = D;
void Decrypt(unsigned int *pt, unsigned int *ct, unsigned int *S)
unsigned int A = ct[0], B = ct[1], C = ct[2], D = ct[3];
C -= S[43], A -= S[42];
for (int i = 40; i &gt;= 2; i -= 2)
x = D, D = C, C = B, B = A, A = x;
u = ROTL(D * (2 * D + 1), lgw);
t = ROTL(B * (2 * B + 1), lgw);
C = ROTR(C - S[i + 1], t) ^ u;
A = ROTR(A - S[i], u) ^ t;
D -= S[1], B -= S[0];
pt[0] = A, pt[1] = B, pt[2] = C, pt[3] = D;
תא כתבי הבית הלבן
תא כתבי הבית הלבן (באנגלית: White House Correspondents' Association, או בקיצור WHCA) הוא מלכ"ר אמריקני של עיתונאים המסקרים את פעילותו של הממשל האמריקאי ואת הנשיא האמריקני המכהן. הארגון ידוע בערב גאלה אותו הוא מקיים בשבת האחרונה של חודש אפריל. בשנה הראשונה של כהונת הנשיא זה מתלכד עם סיום מאה ימים של חסד.
הארגון נוסד ב-25 בפברואר 1914 על ידי עיתונאים, בתגובה לשמועה חסרת בסיס שוועדה של הקונגרס צפויה לבחור מי העיתונאים שיורשו להשתתף במסיבות עיתונאים של הנשיא וודרו ווילסון. הארגון פועל באופן עצמאי בבית הלבן.
הארגון נודע במיוחד בשל אירוע ארוחת הערב השנתית שהוא מארגן מדי שנה בבית הלבן, בהשתתפות עיתונאים, פוליטיקאים, שחקנים וידוענים, אשר במסגרתו בשנים האחרונות קומיקאי בולט והנשיא המכהן עורכים נאומים הומוריסטיים בפורמט ה-Roast האמריקני.
ארוחת הערב השנתית של תא כתבי הבית הלבן.
בשנת 1920 החל הארגון לערוך אירוע זה מדי שנה, אשר הפך מאז למסורת בוושינגטון כאשר במסגרתו בדרך כלל נוהג להשתתף הנשיא האמריקני המכהן או סגן הנשיא. עד היום השתתפו באירוע 15 נשיאים אמריקנים שונים לפחות פעם אחת. הנשיא קלווין קולידג' היה הראשון להשתתף באירוע ב-1924. ארוחת הערב מתקיימת באופן מסורתי במהלך שעות הערב של יום השבת האחרון של חודש אפריל במלון הילטון בוושינגטון. עד 1962 נכחו באירוע רק גברים, על אף שארגון WHCA כלל גם נשים. איסור זה בוטל לאחר שהנשיא המכהן ג'ון פ. קנדי ​סירב להשתתף באירוע אלא אם כן האיסור יבוטל.
לפני מלחמת העולם השנייה האירוע כלל גם קטעי שירה בין הארוחות השונות, הצגה של סרט קצר, ומופע באורך שעה שהתקיים לאחר ארוחת הערב בהשתתפות שחקנים וקומיקאים בולטים. מאז 1983 מרבית הדוברים הם קומיקאים כאשר החלק המרכזי באירוע נערך בפורמט ה-Roast האמריקאי בו הקומיקאי סוקר את פעילות הנשיא וממשלו באופן הומוריסטי ולעיתים מלגלג כביכול.
ההכנסות מהמכירה של כרטיסים למושבים באירוע מועברות כולן למלגות ופרסים הניתנים לעיתונאים צעירים.
לאורך השנים בוטלו או צומצמו באופן ניכר אירועים אלו בעקבות מקרי מוות של אישים בולטים או בעקבות משברים פוליטיים - בשנת 1930 בוטל האירוע בעקבות מותו של הנשיא לשעבר ויליאם הווארד טאפט. האירוע בוטל ב-1942 בעקבות כניסתה של ארצות הברית למלחמת העולם השנייה. כמו כן האירוע בוטל ב-1951 בעקבות מה שהנשיא טרומן כינה "אי הוודאות של המצב בעולם". ב-2017 וב-2018 בחר הנשיא דונלד טראמפ שלא להשתתף באירוע השנתי.
בעשורים האחרונים נהוג בדרך כלל שבמהלך האירוע הנשיא המכהן עורך נאום הומוריסטי או מציג סרטון וידאו הומוריסטי.
במסגרת האירוע מוענקים גם מספר פרסי העיתונות - Merriman Smith Memorial Award, Aldo Beckman Memorial Award, Edgar A. Poe Memorial Award.
רפי רוזנפלד
רפי רוזנפלד (נולד ב-2 במרץ 1963) הוא עיתונאי, שדרן ומוציא לאור - ומבעליה של קבוצת התקשורת R&amp;B Media המחזיקה בישראל את הזיכיון למגזין העסקים האמריקני פורבס (Forbes).
ביוגרפיה.
רוזנפלד החל בכתיבה בגיל 16 במעריב לנוער, ומייד לאחר שהשתחרר מצה"ל – באמצע שנות ה-80 - הצטרף לידיעות אחרונות והשתלב בדסק החדשות של העיתון. בתחילת שנות ה-90 שימש ככתב קול ישראל בלונדון וסיקר את פרישתה מהחיים הפוליטיים של ראש ממשלת בריטניה מרגרט תאצ'ר, מלחמת המפרץ הראשונה, מותו המסתורי של איל ההון היהודי רוברט מקסוול וקריסתה של אימפריית התקשורת שלו.
רדיו.