נכתב למי שקורא את זה בחיפוש אחר ההגזמה.

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

מה נשמר, במדויק.

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

תמונת השימור המלאה
נתוןשימורצורה
face imagesאין.לא נכתב מעולם כפריט שמור.
face templatesאין.אין embeddings, אין תבניות, אין גלריה.
document imagesאין.נקרא, שימש, נעלם.
chip dataאין.מאומת בתוך הבקשה, לא נשמר.
face-derived hash A30 ימים.חד-כיווני. מאפשר זיהוי חוזר בתוך החלון.
face-derived hash B7 ימים.חד-כיווני.
name, national ID, date of birthללא תפוגה.מוצפן במנוחה. זאת השורה שדפים של ספקים אחרים משמיטים.
per-client tokenללא תפוגה.חד-כיווני, ושונה לכל לקוח.

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

המחיקה אינה הגדרה

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

וכמה מעט אתם מקבלים

אפשר להגדיר לקוח כך שיקבל רק verified, meets_age וage_gate_min. האינטגרציה שרצה בייצור היום לוקחת בדיוק את אלה ולא יותר.

מקור הצילום.

שני מכניזמים בלתי תלויים, ואף אחד מהם אינו שיפוט על כמה טוב נראית תמונה.

מניפסט הצילום, נחתם על המכשיר

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

Apple App Attest

ב-iOS, האפליקציה מוכיחה לשרת שהיא בנייה אמיתית ולא מתוקנת שרצה על חומרת Apple אמיתית, לפני שצילום מתקבל ברמות המאומתות. זה מסלול iOS, דרך Apple App Attest, ולא הצהרה כללית על כל מכשיר.

שרשרת אמון CSCA, מאומתת לגמרי ללא רשת

צ’יפ של דרכון נושא חתימה מהמדינה המנפיקה. אנחנו מאמתים את השרשרת עד השורש הלאומי של אותה מדינה, מול מאגר של 588 תעודות המכסות 112 מדינות, בלי שום קריאת רשת, בלי שליפת CRL ובלי בדיקת OCSP. צ’יפ שהמנפיק שלו אינו במאגר נדחה ולא מורד בדרגה. הפנים שמושוות לסלפי נלקחות מהנתונים החתומים של הצ’יפ עצמו, בצד השרת.

רמות וודאות, מוצהרות ונאכפות

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

שרשרת אמון ללא רשת

588
תעודות במאגר המקומי
112
מדינות שהן מכסות
0
קריאות רשת, שליפות CRL או בדיקות OCSP

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

תמונה מזויפת דורשת מודל גרפי

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

דיירות, שלמות ותעבורה.

החלקים שקצין אבטחת מידע ישאל עליהם במחצית השנייה של השיחה.

בידוד טוקנים לכל לקוח

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

שרשרת ביקורת שחבלה בה ניכרת

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

Webhooks חתומים

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

הגבלת קצב ומניעת החזרה

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

כל חומר המפתחות נוצר אצלכם, בהתקנה

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

בלי בדיקת רישוי, בלי טלמטריה, בלי קריאה הביתה

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

איך לבדוק את כל זה.

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

הטענה, ואיך אתם מאמתים אותה בעצמכם
טענההבדיקה שלכם
offline trust chainנתקו את המכונה והריצו דרכון. השרשרת עדיין נפתרת, או שהצ'יפ נדחה.
unknown issuer refusedהציגו צ'יפ שנחתם מחוץ למאגר התעודות וראו אותו נדחה.
zero retentionבדקו את הדיסק אחרי אימות שהושלם, כשאנחנו מסתכלים.
single-use nonceהחזירו מניפסט צילום אל פעימה שנייה. הוא נדחה.
token isolationאמתו את אותו אדם תחת שתי זהויות לקוח והשוו בין שני הטוקנים.
no phone-homeצפו בתעבורה היוצאת במהלך אימות. אין מה לראות.
signed webhooksשנו בייט אחד בגוף של מסירה וודאו שהאימות שלכם נכשל.
מבני בקשה ותשובה אמיתיים ←

הדף הזה באנגלית

שלחו לנו את השאלון עם השאלות הקשות.

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

לתיאום הדגמה

טופס הפנייה הוא באנגלית. אפשר גם במייל contact@jerix.co או בטלפון, בעברית.