LifeVeil آپ کی فائلوں کی حفاظت کیسے کرتا ہے
یہ صفحہ آسان الفاظ میں بتاتا ہے کہ LifeVeil کیا کرتا ہے، اور یہ بھی کہ یہ کیا نہیں کر سکتا۔ ہم چاہتے ہیں کہ آپ حدود جانیں، بجائے اس کے کہ کسی بہت بڑے وعدے پر بھروسہ کریں۔
مختصراً
- تمام انکرپشن آپ کے فون پر ہوتی ہے۔ LifeVeil کا کوئی سرور نہیں اور کوئی اکاؤنٹ نہیں۔
- آپ کی فائلیں ایک بے ترتیب کلید سے مرموز ہوتی ہیں۔ اس کلید کو صرف آپ کا پیٹرن، آپ کا بازیابی کا فقرہ یا آپ کا فنگر پرنٹ کھول سکتا ہے۔
- ہم ڈیولپرز کے پاس کبھی آپ کا پیٹرن، فقرہ یا کلیدیں نہیں ہوتیں۔ ہم آپ کی فائلیں نہیں کھول سکتے، اور آپ کا پیٹرن ری سیٹ نہیں کر سکتے۔
- ہم Android میں موجود انکرپشن اور معروف libsodium لائبریری استعمال کرتے ہیں۔ ہم نے اپنی انکرپشن خود نہیں لکھی۔
- LifeVeil کا ابھی تک کوئی آزاد سیکیورٹی آڈٹ نہیں ہوا۔
آپ کے پیٹرن سے کلید تک
آپ 5×5 گرڈ پر کم از کم 6 نقطے استعمال کر کے پیٹرن بناتے ہیں، اور کوئی نقطہ دو بار نہیں آتا۔ LifeVeil اس پیٹرن کو libsodium (Android پر ورژن 1.0.20) کے Argon2id کے ذریعے ایک کلید میں بدلتا ہے۔
- ترتیبات: 64 MiB میموری، 3 پاس، 1 لین، 256 بٹ کلید۔
- Argon2id جان بوجھ کر سست ہے اور ہر اندازے کے لیے بہت زیادہ میموری مانگتا ہے۔ اس سے گرافکس کارڈز کے ذریعے اندازے لگانا کہیں زیادہ مہنگا ہو جاتا ہے۔
- ہمارے ٹیسٹ فونز پر ایک بار کھولنے میں تقریباً 0.6 سے 0.9 سیکنڈ لگتے ہیں۔
- پیٹرن کو ایک بے ترتیب 16 بائٹ کے ڈیوائس سالٹ کے ساتھ ملایا جاتا ہے۔ یہ سالٹ ایپ میں محفوظ ہوتا ہے اور ایک ایسی کلید سے مرموز ہوتا ہے جو Android Keystore میں رکھی جاتی ہے، جسے فون سے باہر کاپی نہیں کیا جا سکتا۔
- پیٹرن کی کوئی کاپی محفوظ نہیں کی جاتی۔ ایپ پیٹرن کو جانچنے کے لیے اس سے کلید کھولنے کی کوشش کرتی ہے۔
- لگاتار 5 غلط پیٹرنز کے بعد آپ کو 30 سیکنڈ انتظار کرنا ہوگا۔ ہر اگلی غلطی کے بعد انتظار دگنا ہو جاتا ہے، زیادہ سے زیادہ 16 منٹ تک۔
فائلیں کیسے مرموز ہوتی ہیں
- ہر والٹ کی ایک بے ترتیب 256 بٹ ماسٹر کلید ہوتی ہے۔ آپ کے پیٹرن کی کلید اور بازیابی کی کلید صرف اس ماسٹر کلید کو "لپیٹتی" (مرموز کرتی) ہیں۔
- فائلیں، تھمب نیلز اور آپ کے آئٹمز کی فہرست (فائلوں کے اصل نام، تاریخیں، سائز) Android کی اپنی انکرپشن سے AES-256-GCM کے ذریعے مرموز ہوتی ہیں۔ GCM یہ بھی پکڑ لیتا ہے کہ کوئی فائل بدلی یا تبدیل کی گئی ہے۔
- ایپ کے اندر فائلوں کے نام بے ترتیب ہوتے ہیں۔ بڑی فائلیں 1 MiB کے ٹکڑوں میں مرموز ہوتی ہیں، اس لیے ویڈیوز اسٹوریج پر کبھی کوئی غیر مرموز کاپی لکھے بغیر چلتی ہیں۔
- JPEG تصاویر کی چھپی ہوئی تفصیلات (EXIF، جیسے کیمرا اور تاریخ) الگ سے محفوظ ہوتی ہیں، اور وہ بھی مرموز۔
- جب ایپ مقفل ہوتی ہے تو وہ میموری میں موجود کلیدوں کو صفر سے مٹا دیتی ہے۔
بازیابی کا فقرہ
- جب آپ والٹ بناتے ہیں تو فون کا محفوظ بے ترتیب نمبر جنریٹر انگریزی کے 9 الفاظ چنتا ہے۔ یہ 1,024 عام الفاظ کی دو فہرستوں سے، 4 مقررہ ترتیبوں میں سے کسی ایک میں آتے ہیں۔ یہ 92 بٹ کی بے ترتیبی ہے۔ ایپ کی ہر زبان میں یہ الفاظ انگریزی ہی ہوتے ہیں۔
- فقرہ بھی Argon2id کی انہی ترتیبات سے گزرتا ہے اور اکیلے ہی ماسٹر کلید کھول دیتا ہے۔ اسے ڈیوائس سالٹ کی ضرورت نہیں ہوتی، اس لیے یہ تب بھی کام کرتا ہے جب پیٹرن کام نہ کرے۔
- فقرے کی ایک کاپی فون پر دو بار مرموز کر کے محفوظ ہوتی ہے: ایک بار ماسٹر کلید سے اور ایک بار Android Keystore کی کلید سے۔ آپ اپنا پیٹرن دوبارہ بنا کر اسے ترتیبات میں دیکھ سکتے ہیں۔
- جب آپ اپنا پیٹرن بدلتے ہیں یا فقرے سے دوبارہ اندر جاتے ہیں تو آپ کو نیا فقرہ ملتا ہے۔ پرانا کام کرنا بند کر دیتا ہے۔
فنگر پرنٹ
فنگر پرنٹ سے کھولنا اختیاری ہے۔ فنگر پرنٹ Android جانچتا ہے، LifeVeil نہیں؛ ایپ کو آپ کا فنگر پرنٹ کبھی نہیں ملتا۔ Android Keystore کی ایک کلید، جو صرف مضبوط بایومیٹرک جانچ کے فوراً بعد کام کرتی ہے، ماسٹر کلید کھولتی ہے۔ اگر کوئی فون میں نیا فنگر پرنٹ شامل کرے تو یہ کلید کام کرنا بند کر دیتی ہے اور آپ کو دوبارہ اپنا پیٹرن استعمال کرنا ہوگا۔
بیک اپ فائل
- بیک اپ ایک
.lvbفائل ہوتی ہے۔ اس میں آپ کے آئٹمز بالکل ویسے ہوتے ہیں جیسے وہ پہلے سے مرموز ہیں، اور ساتھ ماسٹر کلید کی دو لپیٹی ہوئی کاپیاں: ایک اس پیٹرن کے لیے جو آپ نے بیک اپ بناتے وقت بنایا، اور ایک اس بازیابی کے فقرے کے لیے جو اس وقت آپ کے پاس تھا۔ - پیٹرن والی کاپی ہر بیک اپ کے لیے ڈیوائس سالٹ کی جگہ ایک نیا بے ترتیب سالٹ استعمال کرتی ہے۔ اسی وجہ سے آپ بیک اپ کو نئے فون پر کھول سکتے ہیں۔
- فائل کا ہیڈر محفوظ ہوتا ہے، اس لیے تبدیلیاں یا بدلے گئے حصے پکڑے جاتے ہیں۔
- اسے کہاں محفوظ کرنا ہے، یہ آپ Android کی اپنی محفوظ کرنے والی اسکرین سے چنتے ہیں۔ یہ کبھی ہمارے ذریعے نہیں گزرتی۔
- بحال کرنے کے لیے فائل کو اس کے پیٹرن یا اس کے فقرے سے کھولیں۔ پھر آپ نیا پیٹرن بناتے ہیں اور نیا بازیابی کا فقرہ حاصل کرتے ہیں۔
ایپ میں دیگر حفاظتی انتظامات
- ہر اسکرین پر اسکرین شاٹس، اسکرین ریکارڈنگ اور حالیہ ایپس کی فہرست میں پیش نظارہ بند ہیں۔
- بطور ڈیفالٹ، ایپ سے نکلتے ہی وہ مقفل ہو جاتی ہے۔ اس کی جگہ آپ 30 سیکنڈ یا 1 منٹ چن سکتے ہیں۔
- Android کا اپنا کلاؤڈ بیک اپ اور ایک فون سے دوسرے فون میں منتقلی LifeVeil کا ڈیٹا شامل نہیں کرتے۔ اس کی جگہ بیک اپ فائل استعمال کریں۔
- ایپ مقام، رابطوں یا "تمام فائلوں" تک رسائی نہیں مانگتی۔
- غلط پیٹرن پر خالی والٹ۔ جو پیٹرن کوئی والٹ نہیں کھولتا، وہ خرابی کے بجائے ایک خالی والٹ کھولتا ہے، اس لیے جو آپ کو ایپ کھولنے پر مجبور کرے اسے پتا نہیں چلتا کہ اور کیا ہے۔ غلط کوششیں اب بھی گنی جاتی ہیں، گھسنے والے کی تصویر اب بھی لی جاتی ہے اور انتظار کا وقت اب بھی لاگو ہوتا ہے۔ آپ اسے ترتیبات > سیکیورٹی > غلط پیٹرن پر خالی والٹ میں بند کر سکتے ہیں۔
AI اور پیٹرن کا اندازہ لگانا
- AI حساب کو چھوڑ نہیں سکتا۔ ہر اندازے کو پھر بھی 64 MiB میموری کے ساتھ Argon2id سے گزرنا پڑتا ہے۔ AI نہ Argon2id کو توڑتا ہے نہ AES کو، اس لیے کوئی ایک اندازہ بھی سستا نہیں ہوتا۔
- AI صرف اندازوں کی ترتیب بدلتا ہے۔ یہ وہ شکلیں سیکھ سکتا ہے جو لوگوں کو پسند ہیں (حروف، چوکور، شروع کرنے کے پسندیدہ کونے) اور پہلے انہیں آزما سکتا ہے۔ یہ آپ کے کندھے کے اوپر سے بنائی گئی ویڈیو یا اسکرین پر انگلیوں کے نشانات سے پیٹرن پڑھنے میں بھی مدد کر سکتا ہے۔
- اس لیے بچاؤ حساب میں نہیں، پیٹرن میں ہے۔ مضبوطی بتانے والا میٹر عام شکلوں سے خبردار کرتا ہے۔ پیٹرن + PIN ایک 4–6 ہندسوں کا PIN شامل کرتا ہے، اس لیے ویڈیو میں دیکھا گیا پیٹرن کافی نہیں ہوتا۔ پیٹرن کی لکیر چھپائیں فلمانے کے لیے کوئی لکیر نہیں چھوڑتا۔ Android Keystore میں موجود ڈیوائس سالٹ فون سے باہر اندازے لگانے کو روکتا ہے۔
حدود جو آپ کو معلوم ہونی چاہئیں
کوئی بھی ایپ ہر چیز سے حفاظت نہیں کر سکتی۔ یہ LifeVeil کی سچی حدود ہیں۔
آسان پیٹرنز کا اندازہ لگایا جا سکتا ہے
چھوٹی یا عام شکلیں (L، Z، سیدھی لکیر) آپ کو دیکھ کر، اسکرین پر انگلیوں کے نشانات سے، یا چند کوششوں میں اندازہ لگائی جا سکتی ہیں۔ اصل پیٹرنز کا اندازہ لگانا ممکنہ پیٹرنز کی تعداد سے کہیں زیادہ آسان ہوتا ہے۔ زیادہ نقطے اور زیادہ موڑ استعمال کریں۔ ایپ بہت آسان پیٹرنز کے بارے میں آپ کو خبردار کرتی ہے۔
اندازہ لگانے میں کتنا وقت لگ سکتا ہے
ایپ کے اندر ہر کوشش میں تقریباً ایک سیکنڈ لگتا ہے، اور 5 غلطیوں کے بعد انتظار بڑھتا جاتا ہے۔ لیکن جس کے پاس آپ کی بیک اپ فائل ہو، یا جس نے روٹ کیے ہوئے فون سے ڈیوائس سالٹ نکال لیا ہو، وہ کسی انتظار کے بغیر کمپیوٹر پر اندازے لگا سکتا ہے۔ Argon2id اسے سست کرتا ہے، لیکن پیٹرن میں لمبے پاس ورڈ کے مقابلے بہت کم امکانات ہوتے ہیں۔ ایک اعلیٰ درجے کے گرافکس کارڈ (RTX 4090 کی سطح) کے لیے، تقریباً 1,000 اندازے فی سیکنڈ پر، موٹے اندازے:
| کس چیز کا اندازہ | امکانات | وقت، ایک گرافکس کارڈ |
|---|---|---|
| 10,000 سب سے عام پیٹرنز | 104 | تقریباً 10 سیکنڈ |
| 6 نقطوں والا ہر پیٹرن | 1.28 × 108 | تقریباً 1.5 دن |
| 7 نقطوں والا ہر پیٹرن | 2.42 × 109 | تقریباً 28 دن |
| 8 نقطوں والا ہر پیٹرن | 4.36 × 1010 | تقریباً 1.4 سال |
| بازیابی کا فقرہ (92 بٹ) | 4.95 × 1027 | تقریباً 1.6 × 1017 سال |
یہ اندازے ہیں، پیمائشیں نہیں۔ پیٹرنز کی تعداد بالائی حد ہے؛ اصل پیٹرنز اس سے کہیں کم ہوتے ہیں۔ زیادہ یا تیز ہارڈویئر اسی تناسب سے اندازے لگانا تیز کر دیتا ہے۔
اپنی بیک اپ فائل نجی رکھیں
بیک اپ فائل میں ڈیوائس سالٹ نہیں ہوتا، اس لیے جسے بھی یہ مل جائے وہ اوپر دکھائے گئے طریقے سے آف لائن پیٹرنز آزما سکتا ہے۔ اسے صرف ایسی جگہ رکھیں جہاں صرف آپ کی رسائی ہو، جیسے آپ کا اپنا کلاؤڈ اکاؤنٹ، اور لمبا پیٹرن استعمال کریں۔
روٹ کیے ہوئے یا متاثرہ فونز
اگر کوئی ایپ کی اجازتوں کے ساتھ کوڈ چلا سکے (مثلاً روٹ کیے ہوئے فون پر، یا پورا کنٹرول رکھنے والے میلویئر کے ذریعے)، تو وہ ڈیوائس سالٹ کھول کر آف لائن اندازے لگا سکتا ہے۔ جب والٹ کھلا ہو تو کلیدیں میموری میں ہوتی ہیں اور روٹ رسائی یا ڈیبگر سے پڑھی جا سکتی ہیں۔ Android اور Flutter کے اندر بننے والی کچھ کاپیاں، اور اسکرین پر دکھائی گئی تصاویر، میموری سے فوراً نہیں مٹائی جا سکتیں۔
کچھ معلومات نظر آتی ہیں
ایپ کی اسٹوریج میں مرموز فائلوں کی تعداد، ان کے اندازاً سائز، اور یہ کہ وہ کب بنیں یا بدلیں، چھپے ہوئے نہیں ہیں۔ یہ بات بھی نہیں چھپی کہ LifeVeil انسٹال ہے۔
خالی والٹ صرف اسکرین کو دھوکا دیتا ہے
جو ایپ کی فائلیں پڑھ سکے (مثلاً روٹ کیے ہوئے فون پر) وہ والٹ فولڈر گن سکتا ہے اور دیکھ سکتا ہے کہ یہ ترتیب آن ہے۔ اور 5 غلط پیٹرن کے بعد ایپ انتظار کرواتی ہے، جس سے پتا چلتا ہے کہ پہلے کے پیٹرن نے کچھ نہیں کھولا۔
بھیس صرف ہوم اسکرین بدلتا ہے
- صرف لانچر کا آئیکن اور نام بدلتا ہے۔ فون کی ترتیبات > ایپس کی فہرست، ایپ کی معلومات اور اسٹوریج کی اسکرینیں پھر بھی LifeVeil دکھاتی ہیں۔
- اسکرین ریڈرز پھر بھی "LifeVeil" بول سکتے ہیں۔ مثلاً Samsung One UI کا لانچر TalkBack کو ایپ کا اصل نام دیتا ہے، اور ایپ اسے نہیں بدل سکتی۔
- Android کا شیئر مینو ہمیشہ ایپ کا اصل نام دکھاتا ہے، اس لیے آئیکن بدلنے پر LifeVeil خود کو اس سے ہٹا دیتا ہے۔ آپ اسے دوبارہ آن کر سکتے ہیں۔
- Android کی اجازت کی درخواستیں اصل نام دکھاتی ہیں، اس لیے ایپ آئیکن بدلنے سے پہلے اجازتیں مانگ لیتی ہے۔
- جب تک آئیکن بدلا ہوا ہو، ایپ اطلاعات نہیں بھیجتی۔
- بھیس کا کوڈ (4 سے 8 ہندسے) صرف مقفل اسکرین دکھاتا ہے۔ یہ آپ کی فائلیں نہیں کھولتا۔ یہ سالٹ شدہ ہیش کے طور پر محفوظ ہوتا ہے، لیکن اتنے کم امکانات کی وجہ سے اگر کسی کو فائل مل جائے تو اسے معلوم کرنا آسان ہے۔
فنگر پرنٹ ایک کمزور راستہ ہے
فنگر پرنٹ سے کھولنا Argon2id کو چھوڑ دیتا ہے۔ اس کی مضبوطی آپ کے فون کے فنگر پرنٹ سینسر اور Android Keystore پر منحصر ہے۔ آپ اسے کسی بھی وقت ترتیبات میں بند کر سکتے ہیں۔
گھس بیٹھیے کی تصاویر
ایپ شٹر کی آواز نہیں چلاتی، لیکن کچھ ممالک، جیسے جاپان اور کوریا، میں فروخت ہونے والے فون ہمیشہ یہ آواز چلاتے ہیں۔ اگر کوئی دوسری ایپ کیمرا استعمال کر رہی ہو یا سامنے والا کیمرا نہ ہو تو کوئی تصویر نہیں لی جاتی۔ جب تک آپ اپنا بنایا ہوا پہلا والٹ نہ کھولیں، تصاویر Android Keystore کی ایک کلید سے بند رہتی ہیں۔
تصویر کی تفصیلات
- HEIC، PNG اور WebP تصاویر کی چھپی ہوئی تفصیلات (EXIF) فائل کے اندر ہی رہتی ہیں۔ پوری فائل پھر بھی مرموز ہوتی ہے۔
- Android 10 اور اس کے بعد کے ورژنز پر، Android ان تصاویر سے GPS مقام ہٹا دیتا ہے جو LifeVeil پڑھتا ہے، کیونکہ ایپ مقام تک رسائی نہیں مانگتی۔ جب اصل فائل گیلری سے حذف ہو جائے تو وہ مقام ختم ہو جاتا ہے۔
- Android کے فوٹو پکر سے شامل کی گئی تصاویر کو تاریخ پر مبنی نئے نام ملتے ہیں، کیونکہ پکر اصل نام نہیں دیتا۔
سسٹم اسکرینز کے دوران مقفل ہونا رک جاتا ہے
جب کوئی سسٹم اسکرین کھلی ہو (اجازت کی درخواست، حذف کرنے کی تصدیق، تصویر یا فائل پکر، فنگر پرنٹ کا اشارہ) اور جب کوئی امپورٹ یا ایکسپورٹ چل رہا ہو، تو ایپ مقفل ہونے کا انتظار کرتی ہے۔ اگر آپ ایپ سے نکل چکے ہوں تو اس کے ختم ہونے کے 2 سیکنڈ بعد وہ مقفل ہو جاتی ہے۔
والٹس ایک ہی ڈیوائس سالٹ استعمال کرتے ہیں
ایک فون کے تمام والٹس ایک ہی ڈیوائس سالٹ استعمال کرتے ہیں۔ اگر کسی کے پاس یہ سالٹ ہو تو ایک اندازہ ایک ساتھ ہر والٹ کو جانچ لیتا ہے۔ کسی ایک والٹ پر حملے کی لاگت وہی رہتی ہے۔
وہ چیزیں جنہیں کوئی ایپ نہیں روک سکتی
کوئی آپ کو پیٹرن بناتے ہوئے دیکھ رہا ہو، یا کوئی کیمرا آپ کی اسکرین فلما رہا ہو۔
اگر آپ دونوں کھو دیں تو کوئی مدد نہیں کر سکتا
اگر آپ اپنا پیٹرن اور بازیابی کا فقرہ دونوں کھو دیں تو کوئی بھی آپ کی فائلیں واپس نہیں لا سکتا۔ ہم بھی نہیں۔