Cara LifeVeil melindungi fail Anda
Halaman ini menerangkan apa yang dilakukan oleh LifeVeil, dengan kata-kata yang mudah, dan juga apa yang tidak dapat dilakukannya. Kami lebih suka Anda mengetahui hadnya daripada mempercayai janji yang terlalu besar.
Secara ringkas
- Semua penyulitan berlaku pada telefon Anda. Tiada pelayan LifeVeil dan tiada akaun.
- Fail Anda disulitkan dengan kunci rawak. Hanya corak, frasa pemulihan atau cap jari Anda yang dapat membuka kunci itu.
- Kami, pembangun apl, tidak pernah memegang corak, frasa atau kunci Anda. Kami tidak dapat membuka fail Anda, dan kami tidak dapat menetapkan semula corak Anda.
- Kami menggunakan penyulitan yang terbina dalam Android dan pustaka libsodium yang terkenal. Kami tidak menulis penyulitan kami sendiri.
- LifeVeil belum lagi menjalani audit keselamatan bebas.
Daripada corak Anda kepada kunci
Anda melukis corak pada grid 5×5, menggunakan sekurang-kurangnya 6 titik dan tiada titik digunakan dua kali. LifeVeil menukar corak itu menjadi kunci dengan Argon2id, daripada libsodium (versi 1.0.20 pada Android).
- Tetapan: memori 64 MiB, 3 laluan, 1 lorong, kunci 256 bit.
- Argon2id sengaja dibuat perlahan dan memerlukan banyak memori untuk setiap tekaan. Ini menjadikan tekaan dengan kad grafik jauh lebih mahal.
- Pada telefon ujian kami, satu buka kunci mengambil masa kira-kira 0.6 hingga 0.9 saat.
- Corak dicampur dengan garam peranti rawak 16 bait. Garam itu disimpan dalam apl, disulitkan dengan kunci yang disimpan dalam Android Keystore, yang tidak boleh disalin keluar dari telefon.
- Tiada salinan corak disimpan. Apl menyemak corak dengan cuba membuka kunci.
- Selepas 5 corak salah berturut-turut, Anda perlu menunggu 30 saat. Masa menunggu berganda selepas setiap kesilapan seterusnya, sehingga 16 minit.
Cara fail disulitkan
- Setiap peti besi mempunyai kunci induk rawak 256 bit. Kunci corak dan kunci pemulihan Anda hanya "membalut" (menyulitkan) kunci induk ini.
- Fail, imej kecil dan senarai item Anda (nama fail asal, tarikh, saiz) disulitkan dengan AES-256-GCM, menggunakan penyulitan terbina dalam Android. GCM juga mengesan jika fail telah diubah atau ditukar ganti.
- Fail di dalam apl mempunyai nama rawak. Fail besar disulitkan dalam kepingan 1 MiB, jadi video dimainkan tanpa pernah menulis salinan biasa ke storan.
- Bagi foto JPEG, butiran tersembunyi (EXIF, seperti kamera dan tarikh) disimpan secara berasingan, juga disulitkan.
- Apabila apl dikunci, ia menulis ganti kunci yang dipegangnya dalam memori dengan sifar.
Frasa pemulihan
- Apabila Anda mencipta peti besi, penjana nombor rawak selamat telefon memilih 9 perkataan bahasa Inggeris. Perkataan itu datang daripada dua senarai 1,024 perkataan biasa, dalam salah satu daripada 4 susunan tetap. Itu bersamaan 92 bit kerawakan. Perkataan itu dalam bahasa Inggeris dalam setiap bahasa apl.
- Frasa itu melalui tetapan Argon2id yang sama dan membuka kunci induk dengan sendirinya. Ia tidak memerlukan garam peranti, jadi ia tetap berfungsi walaupun corak tidak lagi berfungsi.
- Satu salinan frasa disimpan pada telefon, disulitkan dua kali: sekali dengan kunci induk dan sekali dengan kunci Android Keystore. Anda boleh melihatnya dalam Tetapan selepas melukis corak Anda sekali lagi.
- Apabila Anda menukar corak atau menggunakan frasa untuk masuk semula, Anda mendapat frasa baharu. Frasa lama berhenti berfungsi.
Cap jari
Buka kunci cap jari adalah pilihan. Android yang menyemak cap jari, bukan LifeVeil; apl tidak pernah menerima cap jari Anda. Kunci dalam Android Keystore yang hanya berfungsi sejurus selepas semakan biometrik yang kukuh membuka kunci induk. Jika seseorang menambah cap jari baharu pada telefon, kunci ini berhenti berfungsi dan Anda perlu menggunakan corak Anda semula.
Fail sandaran
- Sandaran ialah satu fail
.lvb. Ia memegang item Anda tepat seperti yang telah disulitkan, serta dua salinan kunci induk yang dibalut: satu untuk corak yang Anda lukis semasa membuat sandaran, dan satu untuk frasa pemulihan yang Anda miliki ketika itu. - Salinan corak menggunakan garam rawak baharu bagi setiap sandaran, bukan garam peranti. Itulah yang membolehkan Anda membuka sandaran pada telefon baharu.
- Pengepala fail dilindungi supaya perubahan atau bahagian yang ditukar ganti dapat dikesan.
- Anda memilih tempat untuk menyimpannya melalui skrin simpan Android sendiri. Ia tidak pernah melalui kami.
- Untuk memulihkan, buka fail dengan coraknya atau frasanya. Anda kemudian melukis corak baharu dan mendapat frasa pemulihan baharu.
Perlindungan lain dalam apl
- Tangkapan skrin, rakaman skrin dan pratonton dalam senarai apl terbaharu disekat pada setiap skrin.
- Secara lalai, apl dikunci sebaik sahaja Anda meninggalkannya. Anda boleh memilih 30 saat atau 1 minit sebagai gantinya.
- Sandaran awan dan pemindahan telefon ke telefon Android sendiri tidak merangkumi data LifeVeil. Gunakan fail sandaran sebagai gantinya.
- Apl tidak meminta akses kepada lokasi, kenalan atau "semua fail".
- Peti besi kosong untuk corak salah. Corak yang tidak membuka mana-mana peti besi akan membuka peti besi kosong dan bukannya ralat, jadi orang yang memaksa Anda membuka apl tidak tahu apa lagi yang ada. Cubaan yang salah tetap dikira, foto penceroboh tetap diambil dan masa menunggu tetap dikenakan. Anda boleh mematikannya dalam Tetapan > Keselamatan > Peti besi kosong untuk corak salah.
AI dan tekaan corak
- AI tidak dapat melangkau pengiraan. Setiap tekaan masih perlu menjalankan Argon2id dengan memori 64 MiB. AI tidak memecahkan Argon2id atau AES, jadi tiada satu tekaan pun menjadi lebih murah.
- Apa yang diubah oleh AI ialah urutan tekaan. Ia boleh mempelajari bentuk yang disukai orang (huruf, segi empat, sudut permulaan kegemaran) dan mencubanya dahulu. Ia juga boleh membantu membaca corak daripada video yang dirakam dari belakang bahu Anda, atau daripada kesan comot pada skrin.
- Jadi pertahanannya berkaitan dengan corak, bukan pengiraan. Meter kekuatan memberi amaran tentang bentuk yang biasa. Corak + PIN menambah PIN 4–6 digit, jadi corak yang dilihat dalam video tidak mencukupi. Sembunyikan garisan corak tidak meninggalkan garisan untuk dirakam. Garam peranti dalam Android Keystore menghalang tekaan di luar telefon.
Had yang perlu Anda ketahui
Tiada apl yang dapat melindungi daripada segala-galanya. Inilah had LifeVeil yang sebenar.
Corak yang mudah boleh diteka
Bentuk yang pendek atau biasa (L, Z, garisan lurus) boleh diteka dengan memerhati Anda, melalui kesan comot pada skrin, atau dalam beberapa cubaan. Corak sebenar jauh lebih mudah diteka daripada yang digambarkan oleh bilangan corak yang mungkin. Gunakan lebih banyak titik dan lebih banyak belokan. Apl memberi amaran kepada Anda tentang corak yang terlalu mudah.
Berapa lama tekaan boleh mengambil masa
Di dalam apl, setiap cubaan mengambil masa kira-kira satu saat, dan masa menunggu bertambah selepas 5 kesilapan. Tetapi seseorang yang memiliki fail sandaran Anda, atau yang telah mengambil garam peranti daripada telefon yang telah di-root, boleh meneka pada komputer sebaliknya, tanpa masa menunggu. Argon2id memperlahankan proses ini, tetapi corak mempunyai jauh lebih sedikit kemungkinan berbanding kata laluan yang panjang. Anggaran kasar untuk satu kad grafik mewah (kelas RTX 4090) pada kira-kira 1,000 tekaan sesaat:
| Apa yang diteka | Kemungkinan | Masa, satu kad grafik |
|---|---|---|
| 10,000 corak yang paling biasa | 104 | kira-kira 10 saat |
| Setiap corak 6 titik | 1.28 × 108 | kira-kira 1.5 hari |
| Setiap corak 7 titik | 2.42 × 109 | kira-kira 28 hari |
| Setiap corak 8 titik | 4.36 × 1010 | kira-kira 1.4 tahun |
| Frasa pemulihan (92 bit) | 4.95 × 1027 | kira-kira 1.6 × 1017 tahun |
Ini adalah anggaran, bukan ukuran. Bilangan corak ialah had atas; corak sebenar jauh lebih sedikit. Perkakasan yang lebih banyak atau lebih pantas menjadikan tekaan lebih cepat secara berkadar.
Rahsiakan fail sandaran Anda
Fail sandaran tidak mengandungi garam peranti, jadi sesiapa yang mendapatkannya boleh mencuba corak di luar talian, seperti yang ditunjukkan di atas. Simpan fail itu hanya di tempat yang boleh dicapai oleh Anda seorang, seperti akaun awan Anda sendiri, dan gunakan corak yang lebih panjang.
Telefon yang telah di-root atau dijangkiti
Jika seseorang dapat menjalankan kod dengan kebenaran apl (contohnya pada telefon yang telah di-root, atau dengan perisian hasad yang mempunyai kawalan penuh), mereka boleh membuka garam peranti dan meneka di luar talian. Semasa peti besi dibuka, kunci berada dalam memori dan boleh dibaca dengan akses root atau penyahpepijat. Sesetengah salinan yang dibuat di dalam Android dan Flutter, serta foto yang ditunjukkan pada skrin, tidak dapat dipadamkan daripada memori dengan serta-merta.
Sesetengah maklumat kelihatan
Bilangan fail yang disulitkan dalam storan apl, anggaran saiznya, dan bila fail itu dicipta atau diubah tidak disembunyikan. Begitu juga hakikat bahawa LifeVeil telah dipasang.
Peti besi kosong hanya memperdaya skrin
Orang yang boleh membaca fail apl (contohnya pada telefon yang di-root) boleh mengira folder peti besi dan melihat bahawa tetapan ini dihidupkan. Selain itu, selepas 5 corak salah apl membuat Anda menunggu, dan ini menunjukkan bahawa corak sebelumnya tidak membuka apa-apa.
Penyamaran hanya mengubah skrin utama
- Hanya ikon dan nama pelancar yang berubah. Senarai Tetapan > Apl, maklumat apl dan skrin storan pada telefon masih menunjukkan LifeVeil.
- Pembaca skrin mungkin masih menyebut "LifeVeil". Contohnya, pelancar Samsung One UI memberikan nama sebenar apl kepada TalkBack, dan apl tidak dapat mengubahnya.
- Menu kongsi Android sentiasa menunjukkan nama sebenar apl, jadi LifeVeil mengeluarkan dirinya daripada menu itu apabila Anda menukar ikon. Anda boleh menghidupkannya semula.
- Permintaan kebenaran Android menunjukkan nama sebenar, jadi apl meminta kebenaran sebelum Anda menukar ikon.
- Semasa ikon ditukar, apl tidak menghantar pemberitahuan.
- Kod penyamaran (4 hingga 8 digit) hanya menunjukkan skrin kunci. Ia tidak membuka fail Anda. Kod ini disimpan sebagai cincangan bergaram, tetapi dengan kemungkinan yang begitu sedikit, ia mudah ditemui jika seseorang mendapatkan fail tersebut.
Cap jari ialah laluan yang lebih lemah
Buka kunci cap jari melangkau Argon2id. Kekuatannya bergantung pada penderia cap jari dan Android Keystore telefon Anda. Anda boleh mematikannya dalam Tetapan pada bila-bila masa.
Foto penceroboh
Apl tidak memainkan bunyi pengatup, tetapi telefon yang dijual di sesetengah negara, seperti Jepun dan Korea, sentiasa memainkannya. Tiada foto diambil jika apl lain sedang menggunakan kamera atau tiada kamera hadapan. Sehingga Anda membuka peti besi pertama yang Anda cipta, foto itu dimeterai dengan kunci Android Keystore.
Butiran foto
- Bagi foto HEIC, PNG dan WebP, butiran tersembunyi (EXIF) kekal di dalam fail. Keseluruhan fail tetap disulitkan.
- Pada Android 10 dan versi lebih baharu, Android membuang lokasi GPS daripada foto yang dibaca oleh LifeVeil, kerana apl tidak meminta akses lokasi. Apabila foto asal dipadamkan daripada galeri, lokasi itu hilang.
- Foto yang ditambah melalui pemilih foto Android mendapat nama baharu berdasarkan tarikh, kerana pemilih tidak memberikan nama asal.
Penguncian dijeda semasa skrin sistem
Semasa skrin sistem dibuka (permintaan kebenaran, pengesahan pemadaman, pemilih foto atau fail, gesaan cap jari) dan semasa import atau eksport sedang berjalan, apl menunggu untuk dikunci. Jika Anda telah meninggalkan apl, ia dikunci 2 saat selepas proses itu tamat.
Peti besi berkongsi satu garam peranti
Semua peti besi pada telefon menggunakan garam peranti yang sama. Jika seseorang memiliki garam itu, satu tekaan menguji setiap peti besi sekali gus. Kos untuk menyerang satu peti besi tetap sama.
Perkara yang tidak dapat dihalang oleh mana-mana apl
Seseorang yang memerhati Anda melukis corak, atau kamera yang merakam skrin Anda.
Jika Anda kehilangan kedua-duanya, tiada sesiapa dapat membantu
Jika Anda kehilangan kedua-dua corak dan frasa pemulihan, tiada sesiapa dapat memulihkan fail Anda. Kami pun tidak.