כל מוצר מחובר מגיע לרגע שבו הוא צריך להכיר את הענן שלו, והענן צריך להכיר אותו בחזרה. רישום מכשירים מאובטח בענן הוא התהליך שבו כל יחידה מקבלת זהות ייחודית שאי אפשר לזייף או לשכפל, והוא מתחיל הרבה לפני שהלקוח פותח את הקופסה: הוא מתחיל על פס הייצור. אנחנו בפרוג'קטס האוס רואים לא מעט פרויקטים שבהם האלקטרוניקה מוכנה, האפליקציה מוכנה, ורק בשלב ההרצה מתגלה שאין תשובה לשאלה הפשוטה ביותר: איך המפעל צורב זהות נפרדת לכל יחידה בלי לחשוף את מפתחות ההצפנה של החברה.
למה הזהות נצרבת דווקא בפס הייצור
אפשר תיאורטית לרשום מכשיר בפעם הראשונה שהוא מתחבר לרשת בבית הלקוח, ולתת לו אז מפתח. בפועל זו גישה שנשברת מהר. אם כל היחידות יוצאות מהמפעל עם אותו סוד משותף בקושחה, די בכך שאדם אחד יחלץ אותו מזיכרון הפלאש כדי לייצר אלפי יחידות מזויפות שהשרת שלכם יקבל בברכה. לכן הגישה המקובלת כיום היא זהות ייחודית ליחידה שנוצרת ונצרבת בשלב ההרכבה. במילים אחרות, רישום מכשירים מאובטח בענן אינו פעולה חד־פעמית בצד השרת אלא שרשרת שמתחילה בעמדה במפעל ונסגרת אצל הלקוח. בעמדת הבדיקה בסוף הקו המכשיר מקבל מספר סידורי, מפתח פרטי ותעודה חתומה, ומיד לאחר מכן נרשם בטבלת המכשירים המורשים בענן. חיבור העמדה הזו לתוך הרצת ייצור מסודרת הוא מה שהופך את הרישום לשלב בתהליך במקום לתיקון בדיעבד.
מה בדיוק נצרב בכל יחידה
- מזהה ייחודי: מספר שאינו רץ ברצף צפוי, כדי שלא ניתן יהיה לנחש מזהים של יחידות אחרות.
- מפתח פרטי: נוצר בתוך רכיב האבטחה ואינו יוצא ממנו לעולם, גם לא לצורכי גיבוי.
- תעודה דיגיטלית: חתומה על ידי רשות אישורים פרטית של החברה, ומאפשרת לענן לאמת שהמכשיר אכן יצא מהקו שלכם.
- פרמטרי חיבור: כתובת השרת, מזהה הדייר ומספר הפורט, כדי שהמכשיר ידע לאן לפנות בהפעלה הראשונה.
- גרסת קושחה ומספר אצווה: מידע שמאפשר לאתר בהמשך בעיה שהתגלתה רק בשדה ולבודד את היחידות המושפעות.
זהות בחומרה מול מפתחות בתוכנה
ההבדל בין רישום מכשירים מאובטח בענן שמחזיק מעמד לבין פתרון שנראה טוב רק במצגת נעוץ בשאלה אחת: איפה שמור המפתח. רכיב ייעודי מסוג Secure Element או מודול אבטחה משולב במיקרו־בקר מייצר את המפתח בתוכו, מבצע את פעולות ההצפנה פנימית ולעולם לא מוסר את הסוד החוצה. העלות הנוספת היא בדרך כלל כמה שקלים ליחידה, וזה מחיר נמוך מאוד ביחס לנזק של שכפול המוצר. פתרון תוכנתי בלבד, שבו המפתח שוכב בזיכרון, הגיוני רק כשהוא משולב עם אתחול מאובטח והצפנת קושחה. בכל מקרה, החלטת האבטחה הזו צריכה להתקבל יחד עם בחירת המיקרו־בקר, ולא אחרי שהמעגל כבר יוצא לייצור.
מה קורה בהפעלה הראשונה אצל הלקוח
ברגע שהמכשיר עולה לאוויר הוא פותח חיבור מוצפן ומציג את התעודה שלו. השרת מאמת אותה מול רשות האישורים, מוודא שהמכשיר לא נמצא ברשימת המבוטלים, ורק אז מאפשר תקשורת. השלב הבא הוא שיוך המכשיר לחשבון של המשתמש, שנעשה בדרך כלל דרך האפליקציה בעזרת קוד או קוד QR שמודפס על המוצר. כאן נכנס לתמונה גם תהליך חיבור המוצר לרשת האלחוטית, ובחירת ערוץ התקשורת השוטף מושפעת ישירות מההחלטה בין פרוטוקולים. מוצר שמתוכנן נכון מפריד בין השלב הטכני של אימות הזהות לבין השלב העסקי של הבעלות, כך שהחלפת בעלים אינה דורשת החלפת מפתחות.
טעויות נפוצות שאפשר למנוע מראש
- מפתח יחיד לכל הסדרה, בלי אפשרות לבטל יחידה בודדת שנפרצה.
- רישום ידני בגיליון אלקטרוני במפעל, שמוביל לכפילויות ולמזהים חסרים.
- אין סביבת בדיקות נפרדת, וכל אב טיפוס נרשם באותו מאגר שבו יושבים מכשירי הלקוחות.
- אין מנגנון להחלפת תעודה שפג תוקפה, כך שצי שלם מאבד חיבור באותו שבוע.
- אין תיעוד של מי במפעל מורשה להפעיל את עמדת הצריבה.
ניהול נכון של השלבים האלה הוא הבסיס לניהול צי מכשירים ולעדכוני תוכנה מרחוק, ומשתלב עם שאר נושאי פיתוח התוכנה והענן למוצר מחובר שאנחנו מלווים. הכלל המנחה פשוט: אם אי אפשר לבטל יחידה בודדת בלי לפגוע בשאר, התהליך עדיין אינו רישום מכשירים מאובטח בענן אלא רק רישום.
מתכננים מוצר מחובר ורוצים לוודא שהזהות, הענן והייצור מדברים באותה שפה כבר מהיום הראשון? קבלו מאיתנו הצעת מחיר לפיתוח מלא של המערכת, כולל עמדת הרישום במפעל.
רוצים להפוך רעיון למוצר? צרו קשר עם צוות פרוג'קטס האוס בע"מ – טלפון: 054-8936922 | דוא"ל: info@projects-house.com – ונשמח ללוות אתכם משלב הרעיון ועד המדף.