אבטחה
אבטחה
איך VaultWell מגינה על מה ששומרים בה, במילים פשוטות. כולל החלקים שהיא לא יכולה להגן עליהם, ומה שעוד לא עשינו.
ממי וממה אנחנו מגינים
VaultWell תוכננה לאיומי פרטיות יומיומיים, מהסוג שרוב האנשים באמת נתקלים בו.
- מישהו מרים את הטלפון שלכם. בן או בת זוג, קרוב משפחה, עמית לעבודה או זר שמוצא אותו. בלי המסלול הכספת נשארת סגורה, גם אם הם יודעים את קוד הגישה של הטלפון.
- מישהו לוחץ עליכם לפתוח. אפשר לפתוח כספת יומיומית או את כספת הכפייה. שום דבר על המסך לא מראה שיש כספות אחרות.
- מישהו מעתיק את קובצי האפליקציה. המפתחות קשורים לחומרת האבטחה של הטלפון, כך שאי אפשר להריץ ניחושים על מחשב מהיר.
- מישהו משנה קבצים שמורים. כל חלק מוצפן מאומת, כך ששינויים מזוהים במקום שיוצגו.
היא לא תוכננה לעמוד מול תוקף שכבר התקין תוכנה זדונית בטלפון שלכם, שצופה בכם משרטטים את המסלול, או שיכול לאלץ אתכם לחשוף כל מסלול שיש לכם. אף אפליקציה לא יכולה להבטיח זאת.
איך ההצפנה עובדת
- מסלול. סדר התאים שאתם משרטטים על חלת הדבש (לפחות שמונה, בלי חזרות) הופך לקלט.
- Argon2id. הקלט מחוזק באמצעות Argon2id עם 64 MiB זיכרון ושני מעברים, כך שכל ניחוש דורש זמן וזיכרון אמיתיים.
- קשירה לחומרה. התוצאה משולבת עם סוד שנשמר ב־Secure Enclave ב־iPhone, או ב־Android Keystore (ב־StrongBox כשהוא זמין). אי אפשר לייצא את הסוד הזה, ולכן אפשר לגזור את המפתח רק בטלפון שלכם.
- מפתח ראשי. לכל כספת יש מפתח ראשי אקראי של 256 סיביות, שנשמר רק בצורה מוצפנת תחת המפתח שנגזר מהמסלול שלכם.
- AES-GCM במקטעים. הפריטים מוצפנים ב־AES-256-GCM במקטעים של 1 MiB. כל מקטע קשור לפריט ולמיקום שלו, כך שאי אפשר להחליף, לסדר מחדש או לקטוע מקטעים בלי שהפתיחה תיכשל. גם התמונות הממוזערות, רשימת הפריטים וההגדרות מוצפנות.
אין חשבון ואין שרת. המפתחות שלכם אף פעם לא יוצאים מהטלפון, ושום דבר מהכספות שלכם לא נשלח אלינו.
כספות נסתרות, ומה בודק עדיין עשוי לראות
על המסך, VaultWell לא מסגירה דבר. מסך הנעילה הוא רק חלת הדבש. מסלול שגוי ומסלול שמעולם לא שימש נראים אותו דבר. אין רשימה או ספירה של כספות. קובץ ההגדרות של כל כספת מרופד לאותו גודל, כך שאי אפשר לדעת מבחוץ מה האפשרויות של כספת, כולל אם היא כספת הכפייה.
על הדיסק, אנחנו רוצים לדייק. כל כספת נשמרת כתיקייה מוצפנת משלה. מי שיש לו גישה מלאה לקבצים הגולמיים של האפליקציה, למשל דרך חילוץ פורנזי מטלפון לא נעול, יוכל לספור את התיקיות האלה, ולספור לכמה כספות הוגדר ביטוי שחזור. הוא לא יוכל לפתוח אותן או לראות מה יש בהן, אבל יוכל להסיק שיש יותר מכספת אחת. אנחנו מתכננים לצמצם זאת, למשל בעזרת רשומות הטעיה, ונפרסם פרטים כשזה ישתנה.
על המסך
לא מסגיר דבר
- רק חלת הדבש מוצגת
- אין רשימה או ספירה של כספות
- מסלול שגוי נראה כמו מסלול שמעולם לא נעשה בו שימוש
בקבצים הגולמיים, עם גישה מלאה
אפשר לספור
- כמה תיקיות כספת מוצפנות קיימות
- לכמה כספות הוגדר ביטוי שחזור
נשאר בלתי קריא
- מה יש בכל כספת
- איזו כספת היא כספת הכפייה
כספת הכפייה
כשכספת הכפייה נפתחת במסלול שלה, VaultWell מוחקת קודם את קובץ המפתח של כל כספת אחרת ואת קובצי השחזור שלהן, ואז מסירה את התיקיות של הכספות האלה. בלי קובצי המפתח אי אפשר לפענח את הנתונים. לאחר מכן כספת הכפייה נפתחת כמו כל כספת אחרת, בלי שום הודעה על המסך.
- המחיקה בטלפון היא לצמיתות. אי אפשר לבטל אותה.
- פתיחת כספת הכפייה באמצעות ביטוי השחזור שלה לא מוחקת דבר.
- גיבויים ושיתופים שנשמרו במקום אחר לא מושפעים.
גיבויים ושיתופים
גיבויים (.vwbackup) צריכים להיפתח בטלפון חדש, ולכן הם לא יכולים להשתמש בחומרה של הטלפון הישן. במקום זאת, כל גיבוי נועל את המפתח הראשי של הכספת באמצעות Argon2id מהמסלול שלכם (ומהביטוי, אם הוגדר) עם salt אקראי חדש. הפריטים נשארים מוצפנים בדיוק כפי שנשמרו. האבטחה של גיבוי תלויה בחוזק המסלול או הביטוי שלכם, לכן שמרו על קובצי הגיבוי בפרטיות.
שיתופים (.vwshare) משתמשים במפתח אקראי חדש, שננעל בביטוי שיתוף נפרד. הפריטים מוצפנים מחדש לתוכו, כך שהנמען אף פעם לא לומד את המפתח של הכספת שלכם. מגבלות הפתיחות, התפוגה והשמירה החוצה נאכפות על ידי האפליקציה, לא על ידי קריפטוגרפיה, כי אין שרת. מי שנחוש ויש בידיו הביטוי עדיין יכול להעתיק את מה שהוא רואה.
מה אנחנו לא טוענים
- עדיין לא הושלמה ביקורת. ביקורת אבטחה עצמאית מתוכננת לפני ההשקה. נפרסם את התוצאה.
- לא בלתי נראית. האפליקציה גלויה בטלפון שלכם, גם עם סמל הסוואה, ובדיקה פורנזית עשויה להראות שיש כמה כספות.
- לא חסינה מצילומי מסך ב־iPhone. VaultWell מגינה מפני לכידת מסך, אבל iOS לא מאפשרת לאפליקציות לחסום צילומי מסך; VaultWell מודיעה לכם כשמצלמים מסך. אף אפליקציה לא יכולה למנוע צילום של המסך.
- אין שחזור מצדנו. אם איבדתם את המסלול ואת הביטוי, לא נוכל לעזור. הם אף פעם לא אצלנו.
דיווח על בעיה
אם מצאתם בעיית אבטחה, נשמח לשמוע עליה קודם באופן פרטי, ונציין את שמכם אם תרצו. פרטי יצירת קשר יתווספו לפני ההשקה.