הרעיון הבסיסי של פרוטוקול אתגר-מענה לאימות זהויות מאוד פשוט, במקום לשלוח את הסיסמה עצמה באופן גלוי, הסיסמה משמשת כמפתח הצפנה לאחר המרה למפתח הצפנה באמצעות פונקציה מוסכמת (בדרך כלל פונקציית גיבוב קריפטוגרפית), כך שהנתונים שעוברים בערוץ התקשורת אינם במצב קריא. השימוש במפתחות הצפנה שנגזרים מסיסמת הלקוח כדי לאמת את זהותו נקרא אימות חזק, במובן שהמאמת אינו נדרש לחשוף את סיסמתו או המפתח הפרטי שלו באופן שמאפשר למצותת ליירטו, אלא תחת זאת שולח ערכים זמניים המוצפנים באמצעות המפתח הסודי שברשותו. חילופי המסרים בין המוכיח למאמת אינם מספקים כל תועלת למצותת, גם ניתוחם לא ישא פרי, מאחר שהם בכמות מועטה מדי שאינה מספקת לצורך ניתוח הצופן או ניחוש המפתח.
ניתן ליישם פרוטוקול אתגר-מענה במספר דרכים: באמצעות טכניקות סימטריות בלבד, בשילוב הצפנה א-סימטרית או בשיטת הוכחה באפס ידע.
מנגנון האימות של GSM משתמש בפרוטוקול אתגר מענה בשלושה מהלכים, באמצעים סימטריים בלבד, לצורך אימות הלקוח בעת חיוג בטלפון הנייד. טיוטה הנקראת Salted Challenge Response Authentication Mechanism בקיצור SCRAM מפרטת את מנגנוני האימות מבוססי אתגר-מענה של שלד התוכנה SASL ו-GSS-API.
פרוטוקול אתגר-מענה מבוסס הצפנה סימטרית.
במנגנון אתגר-מענה המבוסס על הצפנה סימטרית המוכיח והמאמת צריכים לשתף ביניהם מפתח הצפנה (או סיסמה ממנה נגזר מפתח ההצפנה) מראש. במקרה של רשת מרובת משתתפים נדרשת מעורבות צד שלישי נאמן הנקרא שרת הפצת מפתחות. תפקודו העיקרי של שרת זה הוא לייצר ולספק מפתחות הצפנה זמניים לכל אחד ממשתמשי הרשת כל אימת שמשתמש אחד נדרש לאמת זהותו מול משתמש אחר, זאת בעזרת שיתוף מפתחות הצפנה סודיים ארוכי טווח, מראש בין כל המשתמשים לבין שרת זה. דוגמה טובה לשרת כזה היא שרת KDC של פרוטוקול קרברוס.
טכניקות אימות המבוססות על תקן איזו ISO/IEC 9798 מניחות מראש כי המשתתפים משתפים ביניהם מפתחות הצפנה סודיים. כאשר המוכיח מאמת את זהותו כלפי המאמת על ידי הוכחת ידיעת מפתח ההצפנה המשותף במשלוח מסר אקראי תלוי-זמן, המוצפן תחת מפתח זה. בתנאי שפונקציית ההצפנה מספקת באופן עקיף גם שלמות המסר ומבטיחה כי כל שינוי בצופן ייחשף. להלן דוגמאות לפרוטוקול אימות מבוסס אתגר-מענה לפי מפרטי תקן איזו:
פרוטוקול אימות חד-צדדי עם חותם זמן:
הפרוטוקול מבוצע במהלך אחד, בו המוכיח A שולח למאמת B את formula_1 הקרוי חותם זמן, זהו ערך המכיל את הזמן שמקורו בשעון המקומי של המוכיח בעת משלוח הוכחת האימות. אותו הוא מצפין בעזרת formula_2 - פונקציית הצפנה סימטרית כלשהי המכילה מנגנון הבטחת שלמות, כאשר formula_3 הוא המפתח המשותף. במסר זה המוכיח כולל גם את זהותו של המאמת B, זאת כדי לייחד הודעה זו כדי למנוע שימוש חוזר בה מול A. כאן B מסוגל לאמת את זהותו של A על ידי פענוח המסר המוצפן באמצעות המפתח המשותף ובדיקת פרמטר הטריות formula_1 (מה שמחייב סנכרון הזמן בין המשתתפים), הוכחת הזהות מתקבלת אם וכאשר הזמן שמתקבל הוא בטווח המותר.
פרוטוקול אימות חד-צדדי עם מספר אקראי:
בפרוטוקול זה המאמת שולח תחילה מספר אקראי formula_5 כלשהו למוכיח, כאשר המוכיח משיב במסר המכיל את המספר שקיבל כשהוא מוצפן באמצעות פונקציית הצפנה "E" עם המפתח המשותף "K". אולם כדי למנוע התקפה על הפרוטוקול (כאשר התוקף עלול לחזור ולשדר מסר זה מאוחר יותר כדי להתחזות ל-A), יש צורך להגביל את הפרוטוקול באופן שלא יאפשר שידור חוזר של אותם ערכים בטווח זמן כלשהו.
פרוטוקול אימות דו-צדדי עם מספר אקראי:
פרוטוקול זה דומה לקודמו אך מכיל מסר שלישי שנועד לאמת את זהותו של B כלפי A. כאשר A מאמת את זהותו על ידי בדיקת התאמת הערכים המוצפנים formula_6 שקיבל לאלו שמצויים ברשותו קודם לכן. אפשר לבסס פרוטוקול אימות דומה על פונקציית גיבוב במקום על פונקציית הצפנה, כאשר את formula_2 מחליפים ב-formula_8 הנקראת MAC (קוד אימות מסרים) שהיא בעצם פונקציית גיבוב עם מפתח. ובשינוי קל של הפרוטוקול כדלהלן:
פרוטוקול אימות מבוסס MAC (פרוטוקול זה קרוי SKID):
במקום לפענח את המסר, המשתתפים מאמתים את זהות חבריהם על ידי הפעלת פונקציית הגיבוב על המסר הגלוי formula_5 ו-formula_10 בהתאמה (תוך שימוש במפתח המשותף) ואז השוואת התוצאה עם הערך המתקבל.
פרוטוקול אתגר-מענה מבוסס מפתח-פומבי.
בפרוטוקול כזה הטוען מוכיח את זהותו בהוכחת ידיעת המפתח הפרטי שברשותו בשני אופנים: בפענוח אתגר שהוצפן עבורו במפתח הפומבי המתאים. או על ידי חתימה דיגיטלית על המסר. דוגמה פשוטה לשימוש במפתח פומבי:
פרוטוקול אימות חד-צדדי מבוסס מפתח פומבי:
הפרוטוקול מצריך שימוש בפונקציית גיבוב כדי להסתיר את המספר האקראי r במסר הראשון, בנוסף ערך אקראי זה מוצפן תחת המפתח הפומבי של A יחד עם פרטים נלווים. כאן הטוען A מוכיח את זהותו על ידי פענוח האתגר שהוצפן באמצעות המפתח הפומבי שלו ושליחתו אל המאמת במצב קריא. בהצגת יכולת הפענוח במפתח הפרטי המתאים, הוא מוכיח זהותו.
פרוטוקול נידהם-שרודר לשיתוף מפתח מזוהה, מבוסס על רעיון דומה כאשר בנוסף לערך האקראי המשתתפים בפרוטוקול שולחים זה לזה מפתחות הצפנה חד-פעמיים לצורך הצפנה סימטרית.
אתגר-מענה המבוסס על חתימה דיגיטלית.
מנגנון X.509 וכן מנגנון האימות של תקן איזו 9798, מיישמים פרוטוקול אתגר-מענה המבוסס על חתימה דיגיטלית. פרוטוקולים אלו מסתמכים על ההנחה כי המאמת מסוגל להשיג את מפתח האימות של החתימה הדיגיטלית של המוכיח באמצעים מקובלים (המבטיחים את שייכותם למשתמש) כמו באמצעות סרטיפיקט מפתח פומבי. להלן דוגמאות לפרוטוקולים מסוג זה המקבילים לתקן איזו עבור מנגנוני האימות הסימטריים לעיל:
אימות חד-צדדי מבוסס חתימה דיגיטלית עם חותם זמן:
המוכיח שולח חותם זמן החתום בחתימה הדיגיטלית שלו. בקבלת המסר החתום, המאמת B יכול לוודא באמצעות המפתח הפומבי של A כי החתימה אכן נעשתה על ידו ובזה הוא מקבל את זהותו. על המאמת כמובן להשיג מראש את מפתח האימות הפומבי של החותם כאמור, באמצעים שיבטיחו עבורו את שלמותו ושייכותו לחותם.
פרוטוקול אימות עם מספר אקראי המבוסס על חתימה דיגיטלית:
המאמת שולח למוכיח ערך אקראי חד פעמי במצב קריא וכל מה שהמוכיח עושה הוא חותם על ערך זה ומחזירו למאמת יחד עם החתימה. פרוטוקול אימות דו-צדדי מבוסס חתימה דיגיטלית, זהה לקודמו מלבד זאת ששני הצדדים שולחים זה לזה ערכים אקראיים חתומים בעזרת מנגנון החתימה הדיגיטלית שלהם.
פרוטוקול CHAP.
Challange-Handshake Authentication Protocol הוא פרוטוקול אימות המבוצע מעל פרוטוקול נקודה לנקודה (PPP) - תקן תקשורת להעברת חבילות מידע להתקשרות דו כיוונית. אלגוריתם CHAP משתמש בשיטת אתגר מענה המתוארת באמצעות תהליך הקרוי Handshake המתבצע בשלושה מהלכים לביצוע אימות זהויות המשתתפים בפרוטוקול. הפרוטוקול מבוצע בשכבת הקו של מודל ה-OSI בתחילת ההתקשרות וכן עשוי להתבצע פעמים נוספות במהלך ההתקשרות, על מנת לצמצם את הזמן בו הקשר חשוף לניסיונות התחזות מצד תוקף פוטנציאלי.
אלגוריתם CHAP מתבצע בסיום שלב ההתקשרות בין הנקודות, לאחר שההתקשרות בוצעה בהצלחה, צד אחד הקרוי 'מזהה' שולח מסר הקרוי 'אתגר' לחברו. החבר מגיב במתן 'מענה' - ערך המופק בדרך כלל באמצעות פונקציית גיבוב והמזהה בודק אם המענה מתאים לערך שהוא מחשב בעצמו. אם הערך נמצא מתאים למצופה המזהה מגיב בחיוב, אחרת הקשר מסתיים בכישלון.
יתרונות הפרוטוקול הם במתן הגנה מפני התקפת שידור חוזר מצד אחד מהצדדים המשתתפים בפרוטוקול לאחר סיום ההתקשרות או מצד גורם שלישי המצותת למהלכי פרוטוקול ומנסה להתחזות לאחד הצדדים. זאת באמצעות שימוש בערכים משתנים גם של המזהה וגם של האתגר. תהליך האימות מסתמך על סוד הידוע אך ורק לצדדים המשתתפים בפרוטוקול, המזהה והצד המתקשר עמו. הסוד המשותף עצמו לא מועבר במהלך האימות בערוץ התקשורת ועל כן אינו נתון לסכנת ציתות וחשיפה. כמו כן הפרוטוקול מאפשר אימות זהויות דו כיווני. החסרונות הם שהפרוטוקול מחייב שהסוד המשותף יהיה במצב גלוי ועל כן לא ניתן להצפינו באופן שלא ניתן לשחזור (כגון באמצעות פונקציה חד כיוונית). הפרוטוקול אינו יעיל במערכות גדולות מאחר הוא מחייב סוד משותף נפרד לכל זוג מתקשרים אפשרי. מלבד זאת הפרוטוקול אינו מסתמך על צד שלישי נאמן ועל כן לא ניתן להעביר את הסוד המשותף לנקודות אחרות ברשת מבלי להסתכן, גם אם הסוד יוצפן בדרך המאפשרת שחזורו.
חומרה.
פרוטוקול אתגר-מענה ניתן ליישום בעזרת כרטיס חכם המכיל שבב או מעגל אלקטרוני מתאים, אם המעגל המשולב או שבב הזיכרון שבו הם חסיני מגע (tamper resistant).
אגן
האגן (TA:Os coxae) הוא מבנה גַרמי הממוקם בבסיס עמוד השדרה. תוצר של שלוש עצמות שהתאחו בבוגרים, האגן מחבר בין עמוד השדרה לגפיים התחתונות בחיבורו לעצם העצה דרך מפרק העצה והכסל מצד אחד ודרך מבנה באגן המכונה "מַרְחֶשֶׁת", שהיא ה"מכתש" של המפרק הכדורי של הירך בצד הגפיים.
מבנה כללי ותפקידים.
האגן, סימטרי במרכיביו ובמראהו, אך לא רגיל בצורתו, עשוי משלוש עצמות בכל צד. עצמות אלו: ה"כֶּסֶל" (ilium; בריבוי: כְּסָלִים), ה"שֵׁת" (ischium) וה"חֵיק" (pubis), מתאחות במהלך הגדילה לכדי שני צדדיו של האגן, כאשר כל צד הוא מבנה גרמי שלם. לעיתים מכונה המבנה הזה אִינומִינֵיט (innominate, מילולית: "חסַר שם").