Glosari

Privasi dan penyulitan

Perkataan ini digunakan secara longgar dalam perihalan apl, dan perbezaan di antaranya adalah tepat di mana nilainya. Tersembunyi tidak dikunci. Dikunci tidak disulitkan. Dan kunci yang dipegang orang lain sebenarnya bukan milik anda.

Tersembunyi vs disulitkan

Tersembunyi bermaksud aplikasi bersetuju untuk tidak menunjukkan sesuatu. Disulitkan bermakna bait pada cakera tidak boleh dibaca tanpa kunci. Yang pertama ialah janji; yang kedua ialah aritmetik.

Folder tersembunyi masih lagi folder biasa. Apa-apa sahaja yang membaca cakera secara langsung — sandaran, pengurus fail, alat forensik, aplikasi lain dengan kebenaran yang betul — melihat dengan tepat apa yang ada di dalamnya, kerana tiada apa-apa tentang fail yang berubah.

Penyulitan menukar fail. Apa yang terdapat pada cakera ialah hingar, dan ia kekal bunyi bising untuk sesiapa sahaja tanpa kunci, termasuk sesiapa yang menulis apl itu. Perbezaan itu hanya dapat dilihat pada hari ia penting, itulah sebabnya ia patut diketahui sebelum itu.

Lihat juga: Semasa rehat vs dalam transitChaCha20-Poly1305

ChaCha20-Poly1305

Algoritma penyulitan moden yang kedua-duanya menyembunyikan data dan mengesan gangguan dengannya. Pantas pada telefon, yang tidak selalu mempunyai pecutan perkakasan untuk alternatif yang lebih lama.

ChaCha20 melakukan penyulitan; Poly1305 menghasilkan teg yang mengesahkan data tidak diubah. Bersama-sama mereka adalah apa yang dipanggil penyulitan disahkan - penyahsulitan gagal dengan kuat pada fail yang diubah suai dan bukannya menghasilkan sampah yang munasabah.

Ia adalah pembinaan yang sama yang digunakan dalam TLS dan dalam pemesejan selamat moden. Pada perkakasan tanpa pecutan AES ia bermakna lebih pantas daripada AES, itulah sebabnya telefon cenderung memilihnya.

Lihat juga: Semasa rehat vs dalam transitPembalut kunci

Pembalut kunci

envelope encryption

Menyulitkan fail dengan satu kunci, dan kemudian menyulitkan kunci itu secara berasingan dengan setiap laluan masuk. Menukar kod laluan membungkus semula kunci kecil dan bukannya menyulitkan semula segala-galanya.

Fail disulitkan sekali, dengan kunci dijana pada peranti. Kunci itu kemudiannya dibalut — disulitkan — oleh kod laluan, dan dibalut semula dengan kod pemulihan. Dua sampul surat, satu kunci di dalam setiap satu.

Akibatnya semuanya praktikal. Perubahan kod laluan menulis semula beberapa ratus bait dan bukannya seratus gigabait. Buka kunci biometrik ialah satu lagi salinan berbalut dan bukannya model keselamatan kedua. Dan kehilangan setiap pembungkus kehilangan kunci, kerana kunci itu tidak wujud di tempat lain.

Lihat juga: Kod pemulihanChaCha20-Poly1305

Kod pemulihan

Rentetan sekali yang boleh membuka kunci induk apabila kod laluan terlupa. Tiada siapa yang boleh mengeluarkannya semula, kerana tiada orang lain yang pernah mengalaminya — termasuk orang yang menulis apl itu.

Ia ditunjukkan sekali, semasa persediaan, dan ia adalah pintu kedua daripada dua pintu. Ditulis dan disimpan di tempat selain peranti, ia mengubah kod laluan yang terlupa menjadi kesulitan.

Jika kod laluan terlupa dan kod pemulihan hilang, fail tidak boleh dinyahsulit oleh sesiapa sahaja. Itu bukan dasar sokongan yang boleh dipertikaikan; ia adalah apa yang tidak mempunyai salinan kunci bermakna. Simpannya dengan berhati-hati seperti yang sepatutnya dilakukan oleh fail.

Lihat juga: Pembalut kunciPengetahuan sifar

Bilik kebal umpan

plausible deniability

Kod laluan kedua yang membuka peti besi yang berbeza dan tidak berbahaya. Seseorang yang dibuat untuk membuka kunci apl boleh, dan apa yang dibuka bukanlah perkara yang mereka cari.

Kedua-dua kod laluan adalah nyata dan kedua-duanya membuka peti besi sebenar. Tiada apa-apa pada skrin menunjukkan bahawa satu lagi wujud, dan apl tidak boleh ditanya yang mana yang ditunjukkan.

Ia wujud untuk situasi di mana enggan membuka kunci bukan pilihan — sempadan, permintaan, seseorang yang berdiri di atas anda. Penyulitan sahaja tidak membantu di sana, kerana masalahnya bukan kunci, ia terpaksa menggunakannya.

Lihat juga: Kod pemulihanTersembunyi vs disulitkan

Rantai kunci

Simpan sistem yang dilindungi untuk rahsia kecil, disokong oleh perkakasan keselamatan peranti. Ia adalah tempat kunci dan token berada, dan di mana tiada yang besar harus pergi.

Item di dalamnya boleh membawa syarat: hanya boleh dibaca apabila peranti dibuka kunci, hanya pada peranti ini, hanya selepas pengesahan biometrik atau kod laluan. Syarat tersebut dikuatkuasakan oleh perkakasan dan bukannya oleh aplikasi yang bertanya dengan sopan.

Ia menyimpan rahsia, bukan data. Kunci, token dan bahan berbalut pergi ke sana; fail yang disulitkan itu sendiri hidup pada cakera, di mana saiz tidak menjadi masalah.

Lihat juga: Pembalut kunciSemasa rehat vs dalam transit

Semasa rehat vs dalam transit

Disulitkan semasa rehat bermakna tidak boleh dibaca pada cakera. Disulitkan dalam transit bermakna tidak boleh dibaca pada rangkaian. Ia adalah perlindungan yang berasingan, dan produk mungkin secara jujur menuntut satu sementara tidak melakukan yang lain.

HTTPS ialah penyulitan dalam transit: selamat daripada sesiapa yang menonton rangkaian dan boleh dibaca sepenuhnya oleh pelayan di hujung yang lain sebaik sahaja ia tiba. Penyulitan semasa rehat adalah mengenai salinan yang disimpan, yang merupakan perkara penting jika peranti hilang atau cakera diimej.

Membaca tuntutan privasi dengan berhati-hati biasanya bermaksud mencari tahu yang mana antara keduanya. "Data anda disulitkan" tanpa dilampirkan mana-mana perkataan ialah ayat yang telah dipilih untuk tidak disebut.

Lihat juga: ChaCha20-Poly1305Pengetahuan sifar

Pengetahuan sifar

Reka bentuk di mana pengendali tidak dapat membaca apa yang disimpannya, kerana kunci tidak pernah meninggalkan peranti pengguna. Ujiannya mudah: bolehkah mereka menetapkan semula kata laluan anda dan masih memberikan data anda?

Jika perkhidmatan boleh memulihkan akses selepas anda melupakan segala-galanya, ia memegang sesuatu yang boleh membuka kunci data anda — yang bermaksud ia boleh dipaksa untuk menggunakannya dan sesiapa yang melanggar perkhidmatan itu mewarisi keupayaan yang sama.

Perdagangan adalah nyata dan harus dinyatakan dengan jelas dan bukannya dijual sebagai faedah tulen: pengetahuan sifar tulen bermakna benar-benar kehilangan akses apabila kunci terakhir hilang. Tiada pilihan ketiga di mana pengendali boleh menyelamatkan anda tetapi tiada orang lain yang boleh.

Lihat juga: Kod pemulihanSemasa rehat vs dalam transit

Biometrik

Face ID, Touch ID

Peranti, bukan apl, mengesahkan ia adalah anda; aplikasi diberitahu ya atau tidak. Tiada cap jari atau data muka pernah sampai ke apl, dan tiada satu pun daripadanya adalah kata laluan.

Buka kunci biometrik ialah kemudahan yang diselubungi rahsia, bukan pengganti untuk satu. Perkara yang dilindunginya ialah kunci yang disimpan, itulah sebabnya kod laluan sentiasa wujud di belakangnya — biometrik boleh gagal, dan sandaran mestilah sesuatu yang anda tahu.

Perbandingan berlaku di dalam perkakasan khusus dan templat tidak pernah meninggalkannya. Apl yang menawarkan Face ID sedang bertanya kepada sistem, bukan mengumpul apa-apa.

Lihat juga: Rantai kunciPembalut kunci

Analitik tanpa nama

Mengira peristiwa tanpa merekodkan siapa yang melakukannya. Nilai tuntutan bergantung sepenuhnya pada perkara yang dilampirkan pada setiap peristiwa — dan nama fail, laluan dan URL adalah tempat janji sedemikian biasanya dilanggar.

Mengetahui bahawa skrin dibuka adalah satu kiraan. Mengetahui fail yang dimainkan ialah perihalan seseorang. Garis antara kedua-duanya bukanlah perkataan "tanpa nama"; ia adalah bidang yang membawa acara.

Tuntutan yang patut dipercayai menyatakan apa yang *tidak* dihantar secara khusus seperti apa yang ada: tiada nama fail, tiada laluan, tiada URL, tiada bukti kelayakan, tiada pengecam yang bertahan merentas sesi — dan menawarkan cara untuk mematikan semuanya.

Lihat juga: Semasa rehat vs dalam transit

Subjek lain