Table of Contents
מהם מפתחות היגיינה?
הצפנה אסימטרית, הידועה גם כקריפטוגרפיה ציבורית-קי, מסתמכת על זוג בעלים מקושרים מתמטיים: אחד הציבור ואחד פרטי.המפתח הציבורי משותף בגלוי – בשימוש על ידי כל אחד כדי להצפין הודעות או לאמת חתימות דיגיטליות.המפתח הפרטי נשמר בסוד על ידי הבעלים שלו לפענוח או חתימה על פעולות.אדריכלות זו מבטלת את הצורך לשתף מפתח סודי מראש, לפתור בעיה הליבה של הצפנה סימטרית.
האלגוריתמים הנפוצים ביותר כיום הם RSA (Rivest-Shamir-Adleman) ו- ECC (Elliptic Curve Cryptography) RSA מבוסס על הקושי המעשי של גרימת מוצרים גדולים ראשוניים גדולים, בעוד ECC ממנפיק את המבנה האלגברי של עקומות אלרגיות אל-פלטיות על שדות סופיים עבור אבטחה שוות ערך עם הרבה יותר גדלים מרכזיים.
הבנת כי הצפנה אסימטרית אינה רק סקרנות מתמטית אלא גם סלע התקשורת הבטוחה – הכל מ-HTTP להצפנה בדואר אלקטרוני (PGP) לארנקים blockchain – עוזרת להבין מדוע ניהול מחזור החיים הוא קריטי למשימה. מפתח פרטי אחד לא מופרע יכול לחשוף מערכת שלמה, בעוד מפתח ציבורי נפגע יכול להוביל להתקפות הרסניות של האדם.
מחזור החיים של היגיינה המפתחות
מחזור החיים של זוג הצפנה אסימטרי משתרע מדור ראשון באמצעות הרס מאובטח סופי.כל שלב מציג סיכונים ספציפיים שיש לטפל בהם באופן יזום.
1.הדור מפתח
הדור המרכזי הוא הבסיס של אבטחה קריפטוגרפית.התהליך חייב להשתמש בגנרטור מספר אקראי מאובטח באופן cryptocurrencies (CSPRNG) כדי להבטיח חוסר אחריות.Weak אקראיות - בין אם מאלגוריתם פגומים, ערכי זרע צפויים, או בעיות אנטרופיה חומרה חומרה חומרה חומרה חומרה - יכול להפוך את זוג המפתח לשבירה גם אם הבעיה המתמטית הבסיסית נשאר קשה.
עבור RSA, הדור כולל בחירת שני ראשי ממשלה עצמאיים גדולים (בדרך כלל 2048 ביטים או גדול יותר), מחשוב המוצר FLT:0ncioFLT:1, ומניע את הציבור ופרטי exponents. for ECC, הגנרטור בוחר אינטגרטור אקראי בתוך סדר עקומה מוגדרת של מערכת אבטחה 800-56A ו-800-133 מציין אלגוריתמים אישר ו-H) כדי למנוע חשיפה אקראית (מחשוב בתוך אלגוריתם אבטחה) או אלגוריתם אבטחה (HCMware) יש צורך לשקול את האלגוריתם של אבטחה (מחשוב בתוך מערך אבטחה (מחשוב בתוך מערך אבטחה (מ-Mware) או אלגוריתם) או אלגוריתם) או אלגוריתם של אבטחה (מחשוב בתוך מערך אבטחה (MSM) או אלגוריתם אבטחה (מחדש) או אלגוריתם) או אלגוריתם אבטחה (מחשוב בתוך לוחמתעדיפה (מחשוב בתוך מערך אבטחה (מחדש) או אלגוריתם אבטחה (מחדש) או אלגוריתם אבטחה (מחדש) בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין היתר, בין אם הוא חייב להיות בעל אבטחה (Mware) בין היתר, בין היתר, בין היתר, בין היתר
פרט לעתים קרובות הוא כי מפתחות צריך להיות מיוצר עם מטרה מסוימת וחיים שלמים בראש. מפתח המיועד לחתימה קוד צריך להיות פרמטרים שונים מאשר אחד המשמש עבור אימות שרת TLS. tagging מפתחות עם metadata (בעל, מטרה, תאריך יצירה, תפוגה) מרגע של הדור לייעל פעולות מחזור חיים בעתיד.
2.הפצה של מפתח
בעוד המפתח הפרטי לעולם אינו מופץ, המפתח הציבורי חייב להיות מועבר לכל הצדדים הזקוקים לו.האתגר הקריטי כאן הוא להבטיח את ה-FLT:0authenticityFLT:1 של המפתח הציבורי: המקלט חייב להיות בטוח שהמפתח באמת שייך לישות הנטען.ללא אימות זה, תוקף יכול להחליף את המפתח הציבורי שלהם ולהירט או תקשורת לא מתאימה.
הפתרון הסטנדרטי משתמש בתשתית מפתח ציבורית (PKI) עם תעודות דיגיטליות שהנפיקו רשויות האישורים (CAs) תעודה נקשרת זהות של ישות (למשל, שם דומיין או שם ארגון) למפתח הציבורי שלה, חתום על ידי המפתח הפרטי של CA.עם זאת, אבטחת ה- PKI כולה תלויה בניהול החיים המרכזיים של CA - כפי שנראה בפשרות קודמות (למשל, שימוש בתעודה עצמית).
חלופות ל- PKI להפצת מפתח כוללות את רשת OpenPGP של מודל אמון ואת הגישה של פרוטוקול אות-על-השימוש הראשון (TOFU) לכל אחד יש עסקאות בין הנחות מדרגיות ואבטחה.לא משנה השיטה, שלב ההפצה הוא שבו התקפות רבות מתבטאות, כגון DNS spoofing כדי הפניה לשרת מפתח או חזיתית כדי לבלבל נתיבי אמון.
3.קיי אוגיל
במהלך שלב השימוש, זוג המפתח מועסק באופן פעיל: מפתח ציבורי עבור הצפנה או אימות חתימה, מפתח פרטי עבור פענוח או חתימה. האבטחה של שלב זה לעתים קרובות מתפתל על איך המפתח הפרטי מוגן תוך שימוש.אם תוקף מקבל גישה לזיכרון המערכת בעוד המפתח הפרטי טעון, הם יכולים להעתיק אותו.זה למה יישומים מודרניים להשתמש במאגרי מפתח הפעלה (למשל, Applechain, Applechain, אימות מפתח), או ממשקי ה-HSM) לשמור על מקשי API פרטיים.
השימוש מביא גם חששות תפעוליים.לקריט, המפתח הפרטי חייב להיות זמין באינטרנט (למשל, בשרת TLS המונח HTTPS) שיוצר חלון של פגיעות - אם השרת נפגע, המפתח יכול להיות מפורש.מייגציות כוללים שימוש במפתחות כרטיס ישיבה עם תקופות חיים קצרות ולא להתעקש על המפתח הפרטי לטווח ארוך מעבר לחיצת הידיים הראשוניות, או להשתמש אדריכלות ללא מפתח שבו אין צורך לחתום על מקשים פרטיים.
עבור חתימה על פעולות (קוד, מסמך חתימה, אישור העסקה), המפתח הפרטי צריך להיות מאוחסן באופן אידיאלי לא מקוון וגישה רק באמצעות ממשק מאובטח עם אישור פיזי או רב-ספקי.גניבת תעודות חתימה קוד בשימוש בהתקפה סולינדוס הראו את ההשפעות ההרסניות של פשרה מפתח חתימה - התקפות יכולות לחתום עדכונים זדוניים כלגיטימיות.
4.התחילה וההפצה
סיבוב מפתח הוא תהליך של פרישה זוג מפתח קיים ויצירת חדש לאחר תקופה או אירוע מראש.היתרונות הם כפולים: זה מגביל את כמות הנתונים מוצפנים תחת מפתח אחד (הפחתת ההשפעה של פשרה עתידית), והוא מכריח את המערכת להקים מחדש אמון בזוג מפתח טרי.
התאריכים Expiry מוטבעים ב- X.509 תעודות כדי לאכוף את הסיבוב.כאשר תעודה תוקפת, זוג המפתח מבחינה טכנית הופך לא חוקי למטרות של תעודה זו, אם כי המפתחות ההצפנה עצמם עשויים עדיין להיות בתוקף.קביעת תקופות תוקף מתאימות מאזן את הביטחון נגד ראש הממשלה: קצר מדי, וצוות המבצעים חייב לעדכן כל הזמן; ארוך מדי, וגיל מבוגר יש סיכוי גבוה יותר להיות cryptocurrencies או הפגום באופן פגום.
תהליך הסיבוב חייב לכלול נהלי מעבר חלקים.להפסקת TLS, את האישור החדש ואת זוג המפתח יש לפרוס לפני שהזקן יפוג, עם תוקף חפיפה המותר.עבור הצפנה, נתונים מוצפנים תחת מפתח ציבורי הישן חייב להיות מוקרן מחדש תחת המפתח החדש לאחר חלון הגירה.זה מאתגר במיוחד עבור סביבות נתונים מאוחסנים לאורך זמן. חלק מהמערכות להשתמש בגישה היברידית: "מפתח מצפין" (K) המאפשרת הצפנה מחדש של נתונים ללא סיבוב נתונים.
ייעוד וחורבן
ייעוד הוא מנגנון החירום לפסול זוג מפתח לפני ההתקוממות הטבעית שלו.הסיבה הנפוצה ביותר היא חשד או אישור של פשרה מפתח פרטית.גורמים אחרים כוללים עזיבתו של עובדים, אלגוריתם שהוגדר כבטוח (למשל, המעבר מ SHA-1 ל- SHA-256 בתעודות), או שינויים במדיניות ארגונית. Revocation דורש שידור זמני ואמין: PKI, Revocation Certificates (OL) מאפשר מענה זמני לפרוטוקולים של CSP) ו-CLLC.
חולשה בביטול הייתה בעיה מתמשכת. CRLs יכול להיות גדול רוחב פס, וטיפול בדפדפן של בדיקות ייעוד משתנה באופן נרחב.דפדפנים רבים היום להסתמך על CRLite או מסדי נתונים ייעוד מצטבר מסיבות ביצועים.הכישלון של ייעוד להגיע לכל הצדדים המסתמך בזמן הוביל למקרים שבהם תעודות נפילות נשאר אמין במשך ימים או שבועות.
הרס מאובטח של המפתח הפרטי פעם לא צריך עוד - בין אם בשל סיבוב, ביטול או השמצה - הוא הצעד האחרון.פשוט מחיקת הקובץ עשויה להשאיר שרידי התאוששות על דיסק.T SP 800-88 ממליץ על מחיקת קריפטוגרפיים: כתב את המפתח עם אפסים או באמצעות מנגנוני הרס מרכזיים בהמסטריטים כי אפסים את המפתח על גבי חומרת חומרה.
ניהול הטוב ביותר
ניהול מחזור חיים יעיל דורש מדיניות שיטתית ובקרות טכניות החלות בכל השלבים. להלן הם שיטות מפורטות שצוותי אבטחה צריכים ליישם.
אחסון מאובטח
מפתחות פרטיים לעולם לא מאוחסנים בטקסט על דיסק או בקבצי תצורה של יישומים.סטנדרט התעשייה הוא מודול אבטחה קשיח (HSM) - מכשיר פיזי בעל השפעה tamper-resistant המייצר, חנויות ומשתמש מפתחות פרטיים מבלי לחשוף אותם אי פעם למערכת המארחת. HSMs טווח ממכשירים המחוברים לרשת בענן (A256 CloudHSM, Azure HSM), אך ניתן לעטוף בתוכנות קטנות יותר, אך ורק בתוכנות המבוססות על ידי ASM.
גישה מרכזית צריכה להיות מוגבלת רק לתהליכים ולמשתמשים הדורשים זאת לחלוטין, באמצעות אימות חזק (למשל, גישה מבוססת תפקידים, אימות רב-factor עבור פעולות ניהוליות) עבור מפתחות בעלי ערך גבוה (מפתחי CA, מפתחי קוד), לשקול אישור רב-מפלגתי שבו שני או יותר מנהלי מערכת חייבים לאשר כל פעולה של שימוש מפתח.
רוטציה רגילה
סיבוב מפתח אוטומטי ככל האפשר.כלי כמו Certbot (Let's Encrypt) לחדש באופן אוטומטי את תעודות TLS כל 60-90 ימים.עבור PKI פנימי, להשתמש ב- Azure Key Vault או HashiCorp Vault כדי לאכוף לוחות זמנים של סיבוב ולשלב עם פלטפורמות ניהול מחזור חיים של תעודה. רוטציה צריך גם לגרום לקריפטציה מחדש של כל נתונים מוצפנים תחת המפתח הישן - זה לעתים קרובות החלק הקשה ביותר וחייב להיות מתוכנן על מערכת עיצוב מראש.
תדרי רוטציה לטיפוס מפתח: מפתחות TLS שנתי; מפתחות חתימה קוד כל 2-3 שנים; שורש CA מפתח כל 5-10 שנים (אך המפתחות הכפופים הם יכולים לסובב לעתים קרובות יותר).
הפצה: Authentic Key Distribution
תמיד להשתמש בערוצים מאובטחים, אותנטיים כדי להפיץ מפתחות ציבוריים.עבור מפתחות צפופים לציבור, לקבל תעודות מ CAs מכובד ולהשתמש בתעודה Transparency כדי לזהות misissuance. for Internal Keys, לפרוס CA פרטית עם מפתח מנוהל היטב. Distribute תעודות או מפתחות ציבוריים באמצעות הצפנה חוזרת, ניהול נקודות קצה מאובטח (למשל MD, M דוחף), או אימות ידני עבור קבוצות אבטחה קטנות יותר, ללא הצפנה פשוטה).
יישום תעודה קביעת מיקום המתאים - אך להיות מודע לסיכון המבצעי: ערפל יכול לגרום לבלוטות, ו pinning אינו מגן מפני פשרה של השרת המצוין. חלופה היא להשתמש ב- Expect-CT ו-Staple Headers כדי לאכוף בדיקות ביטול ושקיפות תעודה ללא קידוד קשיח.
פיקוח וביקורת
מרכזיזציה של כל אירועי מחזור החיים המרכזיים: דור, הפצה, שימוש, סיבוב, ייעוד והרס. השתמש במערכת מידע אבטחה וניהול אירועים (SIEM) כדי לקשור אירועים מרכזיים עם טלמטורי אבטחה אחרים.לדוגמה, עלייה פתאומית בניסיונות פענוח כושלים עשוי להצביע על מפתח שנבחן על ידי תוקף.קבע התראות לתעודה (למשל 30 ימים, 24 שעות לפני הפסקת האשפה)
באופן קבוע, לבדוק את המלאי המרכזי: אילו מפתחות קיימים, שיש להם, כאשר הם נוצרו, כאשר הם יפוגמו, ואם הם עדיין נדרשים. ארגונים רבים סובלים מ"צלחת מפתח" - מאותן של תעודות לא בשימוש קלודות חנויות אמון או שרתים, כל אחד סיכון פוטנציאלי.
לבצע בדיקות חדירה תקופתיות באופן ספציפי נגד חולשות ניהול מפתח: לבדוק את היכולת לקרוא מפתחות פרטיים מזרקות זיכרון, לאמת כי אין להחזיר תעודות ביטול, ולאשש כי הרס מפתח למעשה הופך את המפתח לבלתי ניתן לערעור.
תכנון תגובה ל Key Compromise
לא משנה כמה חזק ניהול מחזור החיים, האפשרות של פשרה מפתח נשאר.כל ארגון צריך להיות חוברת משחק תשובות: כיצד אנו מזהים פשרה מפתח? (למשל, תעודות בלתי צפויות שהוצאו, כניסה בלתי אפשרית עם חתימה מזויפת) כיצד אנו מכילים את זה? (להזכיר את האישור מיד, ליצור מפתחות חדשים, להודיע לצדדים).
צעדים מעשיים: רשימות תגמול לא מקוון מראש עבור CA הפרטית שלך, לשמור רשימות מגע של כל הצדדים הנשען, ולבדוק את תהליך הביטול לפחות מדי שנה. עבור שירותי ענן, להבין איך הספק מטפל בפשרות מפתח ומה הסכמים ברמת השירות החל.
מסקנה
מחזור החיים של מפתחות הצפנה סימטרית - מדור לדור באמצעות הרס מאובטח - הוא מחזור מתמשך של אמון וסיכון.כל שלב מציג פרצות כי, אם מתעלמים מהן, יכול תחת ההצפנה החזקה ביותר. על ידי אימוץ שיטות הטובות ביותר כגון אחסון מבוסס HSM, סיבוב אוטומטי, הפצה אותנטית, ביקורת יסודית, ארגונים יכולים לשמור על השלמות והזמינות של מערכות הקריפטוגרפיים שלהם.