דפי ספקים שכתוב בהם FIPS validated אינם ראיה שאפשר לתייק. הראיה היא מספר תעודה, שם מודול, גרסה מאומתת ותנאי ההפעלה שמצורפים לה, והם חייבים להתאים לבנייה שאתם פורסים. ה-FAQ של NIST CMVP חד וברור לגבי ההבדל בין מוצר שמצהיר על תאימות לבין מודול שאומת. עברו על ארבעת השלבים שלמטה לפי הסדר, ושמרו את הרשומה יחד עם הפריסה.

שלב 1: להשיג את מספר התעודה, לא את התג

בקשו מהספק את מספר תעודת ה-CMVP שמכסה את המודול הקריפטוגרפי במוצר שאתם מתכוונים להריץ. מספר תעודה הוא אובייקט מסוים וניתן לבדיקה, ואילו תג הוא שיווק. אם התשובה מתארת אלגוריתם במקום מודול, התשובה ענתה על שאלה אחרת. התעקשו פעם נוספת על המספר במקום להסתפק ב-PDF של תג. הרשומה שמאחורי המספר היא מה שמבקר יכול לעקוב אחריו.

לאחר מכן חפשו את המספר בחיפוש הרשמי של מודולים מאומתים וקראו את הרשומה ולא תקציר שלה. הרשומה מפרטת את הספק, המודול, הגרסה המאומתת והסטטוס, והיא מקשרת למסמך מדיניות האבטחה שמתאר איך המודול אמור לפעול.

רשמו את חמשת השדות האלה, כי השלב הבא משווה אותם לבנייה. עמודה אחת בגיליון אלקטרוני מספיקה.

שלב 2: להתאים את גרסת המודול לבנייה

גרסת לקוח VPN וגרסת מודול מוטמע לעתים רחוקות חולקות אותו מספר, וזה נורמלי. מה שחשוב הוא אם גרסת המודול בבנייה שלכם מופיעה ברשומה המאומתת. עדכון יכול לשנות את המודול בלי לשנות את שם המוצר, וכך להזיז בשקט את הפריסה מחוץ לתצורה המאומתת.

שאלו איזה רכיב משתמש במודול ואיך נבחר המצב המאושר בתצורה הנתמכת. בנייה שיכולה לרוץ במצב לא מאושר אינה אותה ראיה כמו בנייה שהוגדרה למצב המאושר.

קראו את הבנייה המקומית, כדי שההשוואה תשתמש בארטיפקט ולא בעמוד ההורדה. הפקודות שלמטה מדפיסות בדיוק את זה.

openssl version -a
openssl list -providers -verbose
cat /proc/sys/crypto/fips_enabled

כשהמודול מדווח על גרסה שונה מזו של התעודה, ההצהרה נסחפה והרשומה צריכה להתעדכן לפני שמישהו חותם על משהו.

שלב 3: לקרוא את תנאי ההפעלה

התעודה נושאת תנאים שמתארים את הסביבה שהאימות מכסה. התנאים האלה יכולים לציין את הפלטפורמה, את התצורה, את גדלי המפתחות המותרים ואת השירותים שחייבים להגביל. התקנה רגילה שמתעלמת מהם היא פריסה מחוץ לגבול המאומת, גם כשהקובץ הבינארי זהה. לכן מסמך מדיניות האבטחה חשוב כמו מספר התעודה.

שמרו את הנחיות הספק לצד התעודה, כי הן מסבירות אילו הגדרות בוחרות את המצב המאושר ואילו מוציאות את המוצר ממנו.

אם אי אפשר לקיים את התנאים בסביבה שלכם, ההצהרה הכנה היא שהפריסה הזאת נמצאת מחוץ לתצורה המאומתת. ציון התנאי שאי אפשר לקיים הופך את ההצהרה הזאת למשהו שצוות יכול לתקן או לקבל.

שלב 4: לאמת את הסטטוס היום

לרשומת CMVP יש סטטוס, והסטטוס אינו קבוע. ה-FAQ של NIST מתאר את מועדי המעבר של FIPS 140-2 בשנת 2026, ולאחריהם רק אימותי FIPS 140-3 נשארים ברשימה הפעילה. תעודה שהייתה פעילה כשהרכישה אושרה יכולה להיות היסטורית היום.

היסטורי ומבוטל הם מצבים שונים, ולכל אחד משמעות משלו לרכש. בדקו את הרשומה החיה ולא צילום מסך מתיקיית הפרויקט, ורשמו את התאריך שבו בדקתם.

לאחר מכן שאלו את אחראי הציות או הרכש איזה סטטוס הדרישה שלהם מקבלת, כי זו החלטת מדיניות ולא ממצא טכני. תעדו את התשובה עם תאריך.

בדקו את הרשומה מול הפריסה

השוו את ארבעת הערכים שנאספו: מספר התעודה, גרסת המודול מהבנייה, תנאי ההפעלה בתוקף והסטטוס הנוכחי. כל אי-התאמה היא ממצא, והממצא שייך לרשומת הפריסה ולא לשקופית.

אחסנו את הראיה יחד עם הבנייה, כולל התאריך והאדם שבדק. תיקייה אחת לכל גרסה מספיקה.

date -u +%FT%TZ
openssl version -a | head -3
cat /proc/sys/crypto/fips_enabled

שמרו את ההצהרה גם בתוך הגבול שלה. אימות מודול לא אומר דבר על טיפול הפרוטוקולים של ה-VPN, על החלטות ההרשאה שלו או על מדיניות הרישום שלו. זו ראיה ספציפית על רכיב קריפטוגרפי מוגדר אחד, והתייחסות אליה כאל ציון מוצר היא הדרך שבה תיק ציות מתאר בסופו של דבר משהו שאף אחד לא פרס.

מאמרים קשורים