Arsitektur Keamanan: Tumpukan Teknis Penuh
Vaultaire tidak bergantung pada satu algoritma atau satu trik pintar. Ia menggunakan arsitektur kriptografi berlapis di mana setiap komponen memiliki tugas tertentu, dan kegagalan pada satu lapisan tidak membahayakan lapisan lainnya. Inilah tumpukan keamanan: setiap keputusan sandi, protokol, dan desain yang menjadi penghalang antara data pribadi Anda dan seluruh dunia.
Vaultaire menggunakan AES-256-GCM untuk enkripsi yang diautentikasi di seluruh indeks vault, kunci terbungkus, header file, konten, thumbnail, dan metadata. PBKDF2-HMAC-SHA512 memperoleh kunci vault lokal dari pola dan seluruh perangkat Keychain garam. Kunci brankas tersebut membungkus kunci master 256-bit acak terpisah, yang melakukan enkripsi file melaluinya CryptoKit dalam proses aplikasi.
Tumpukan Kriptografi
Vaultaire menggunakan beberapa mekanisme kriptografi yang bekerja bersama-sama, masing-masing dipilih untuk pekerjaan tertentu. PBKDF2 mengubah kredensial manusia menjadi brankas atau kunci pemulihan. AES-256-GCM melindungi indeks, pembungkus, metadata, thumbnail, dan konten file. Kunci master acak memisahkan enkripsi file yang berumur panjang dari pola yang dapat diubah. Keychain dan iOS Perlindungan Data melindungi catatan garam dan pemulihan yang terikat perangkat saat perangkat terkunci. Tidak ada kunci dekripsi yang dimiliki penyedia yang memberi pengembang akses rutin ke teks biasa vault.
Ini bukanlah kompleksitas yang ada. Setiap lapisan menangani permukaan serangan yang berbeda. AES-256-GCM menggabungkan kerahasiaan dengan otentikasi, sehingga ciphertext yang dimodifikasi gagal verifikasi. PBKDF2 meningkatkan biaya pengujian setiap pola atau frasa. Kunci master acak berarti perubahan pola dapat membungkus ulang satu kunci alih-alih mengenkripsi ulang setiap file. Keychain perlindungan data menjaga garam lokal dan catatan pemulihan, sementara aplikasi masih mengakui bahwa enkripsi simetris terjadi dalam memori proses.
Secara bersama-sama, lapisan-lapisan ini membentuk arsitektur pertahanan yang mendalam, namun tidak semuanya merupakan penghalang yang independen. Pola yang ditebak dapat diperiksa berdasarkan nama file indeks dan AES-GCM autentikasi, dan perangkat tidak terkunci yang disusupi dapat mengamati kunci atau teks biasa dalam proses aplikasi. Oleh karena itu, arsitekturnya bergantung pada entropi kredensial, PBKDF2 biaya, iOS perlindungan perangkat, dan penanganan enkripsi terotentikasi yang benar serta kekuatan AES itu sendiri.
Bayangkan hierarki Vaultaire sebagai sekumpulan kontainer terkunci yang bersarang. Pola yang diturunkan kunci brankas membuka indeks yang diautentikasi. Indeks merilis bungkusan acak kunci utama. Kunci master itu melindungi file dan metadata. PBKDF2, AES-GCM, Keychain, dan iOS Perlindungan Data menyumbangkan properti yang berbeda, namun klaim keamanan hanya sekuat rantai yang lengkap.
AES-256-GCM: Enkripsi File
Setiap foto, video, dan dokumen yang disimpan di Vaultaire dienkripsi AES-256-GCM — Standar Enkripsi Lanjutan dengan kunci 256-bit Mode Galois/Penghitung. Vaultaire juga menggunakan AES-GCM untuk indeks brankas, header file, thumbnail, dan amplop kunci. Algoritme dan ukuran kunci distandarisasi; Keamanan Vaultaire masih bergantung pada penanganan nonce, manajemen kunci, kekuatan kredensial, dan kebenaran implementasi.
“256” di AES-256 mengacu pada panjang kunci dalam bit. Kunci 256-bit memiliki 2256 nilai yang mungkin. Sebagai gambaran angka tersebut: ada sekitar 1080 atom di alam semesta yang dapat diamati. Jika setiap atom adalah superkomputer yang menguji satu miliar kunci per detik, yang dijalankan sejak Big Bang, mereka hanya akan menjelajahi kurang dari sepertriliun, sepertriliun, dan satu persen ruang kunci. AES-256 tidak akan dipaksakan. Tidak hari ini. Bukan abad ini. Tidak sebelum bintang-bintang padam.
Mengapa Mode GCM Penting
AES adalah cipher blok, yang mengenkripsi data dalam potongan 128-bit. “mode” menentukan bagaimana potongan tersebut digabungkan. GCM (Galois/Counter Mode) menyediakan dua hal yang tidak dimiliki mode sederhana seperti CBC: enkripsi paralel dan autentikasi bawaan.
Bagian otentikasi sangat penting. GCM menghasilkan tag kriptografi untuk setiap file terenkripsi. Tag ini bertindak sebagai segel tamper. Jika bahkan satu bit teks sandi diubah, baik oleh aktor jahat atau sektor disk yang rusak, tag otentikasi tidak akan cocok, dan dekripsi akan gagal. Anda tidak mendapatkan data yang rusak. Anda mendapatkan sinyal yang jelas bahwa ada sesuatu yang salah. Properti ini disebut enkripsi terautentikasi, dan mencegah seluruh kelas serangan di mana musuh memodifikasi data terenkripsi untuk memanipulasi keluaran yang didekripsi.
PBKDF2: Derivasi Kunci
Vaultaire mendapatkan kunci berbeda untuk pekerjaan berbeda. Pola dan seluruh perangkat Keychain pakan garam PBKDF2-HMAC-SHA512 untuk 600.000 iterasi untuk menghasilkan kunci brankas lokal. Derivasi pola deterministik menghasilkan kunci cadangan cloud terpisah. Frase pemulihan yang dinormalisasi mencapai 800.000 PBKDF2 iterasi untuk menghasilkan kunci untuk amplop pemulihan. Tak satu pun dari turunan tersebut yang mengubah kredensial manusia menjadi entropi 256 bit hanya karena panjang keluarannya 256 bit.
Bagaimana PBKDF2 Melindungi Pola Anda
Ide inti di baliknya PBKDF2 adalah pekerjaan yang disengaja. Dibutuhkan pola serial atau frase yang dinormalisasi dan berjalan ratusan ribu HMAC-SHA512 iterasi. Pengguna yang sah membayar biaya tersebut satu kali selama upaya membuka kunci atau pemulihan. Seorang penyerang membayarnya untuk setiap kandidat, meskipun pilihan perangkat keras dan implementasi paralel menentukan tingkat tebakan sebenarnya.
Vaultaire mengonfigurasi PBKDF2 dengan 600.000 iterasi untuk kunci turunan pola. Hal ini membuat setiap tebakan menjadi lebih mahal, namun perkiraan serangan yang bertanggung jawab harus menyatakan waktu per kandidat dan asumsi perangkat keras yang terukur. Tepatnya 1 ms per kandidat, 1.000.000.000 tebakan serial memerlukan waktu sekitar 11,6 hari, bukan tahun. Hasil 256-bit tidak memperluas entropi pola yang dapat diprediksi.
Derivasi pola lokal menggunakan satu garam acak secara kriptografis untuk perangkat, disimpan sebagai WhenUnlockedThisDeviceOnly Keychain barang. Garam tersebut bukan rahasia dan dibagikan oleh brankas di perangkat itu. Ini mencegah tabel yang dibuat untuk satu perangkat agar tidak diterapkan langsung ke perangkat lain dengan garam berbeda, namun tidak memaksa penyerang untuk memulai kembali setiap brankas di perangkat yang sama.
AES-256-GCM: Perlindungan Metadata
Mengenkripsi konten file saja tidak cukup. Nama file, tanggal pembuatan, dimensi thumbnail, dan struktur brankas semuanya merupakan metadata, dan metadata dapat mengungkapkan hal yang sama seperti data itu sendiri. File bernama “tax-return-2025.pdf” memberi tahu penyerang apa yang sebenarnya ada di dalamnya meskipun kontennya dienkripsi. Stempel waktu ditampilkan saat Anda menggunakan brankas. Ukuran thumbnail menunjukkan apakah sesuatu itu foto atau video.
Vaultaire melindungi metadata ini dengan AES-256-GCM, bukan ChaCha20. Nama file dan MIME jenis dikodekan ke dalam header file terenkripsi. Indeks brankas terenkripsi berisi catatan file, tanggal, informasi ukuran, tata letak penyimpanan, dan kunci master yang dibungkus. Data thumbnail juga dienkripsi dengan kunci master acak.
Mengapa Enkripsi yang Diautentikasi untuk Metadata?
Metadata membutuhkan integritas dan kerahasiaan. AES-GCM menghasilkan tag autentikasi untuk setiap nilai terenkripsi, sehingga Vaultaire dapat menolak header, indeks, thumbnail, atau amplop yang dimodifikasi alih-alih menerima teks biasa yang dikendalikan penyerang. Desainnya sengaja menggunakan satu konstruksi enkripsi terautentikasi di seluruh format penyimpanan ini daripada mengklaim keragaman kriptografi yang tidak disediakan oleh implementasinya.
Sandi yang sama tidak berarti kunci atau nonce yang sama digunakan kembali secara membabi buta. Kunci brankas melindungi indeks dan membungkus kunci master acak; kunci utama melindungi materi file. CryptoKit membuat kotak tersegel yang diautentikasi dengan nonce baru, sementara format streaming Vaultaire memperoleh nonce berbeda untuk setiap potongan yang dipesan. Jaminan yang relevan berasal dari pemisahan kunci, disiplin nonce, dan otentikasi, bukan dari sandi metadata kedua.
Arsitektur Tanpa Pengetahuan
Berikut adalah pertanyaan yang patut ditanyakan tentang aplikasi keamanan apa pun: apa yang terjadi jika perusahaan di belakangnya diretas, dipanggil, atau ternyata berbahaya?
Pada sebagian besar aplikasi, jawabannya tidak nyaman. Mereka menyimpan data Anda, kunci Anda, atau keduanya. Perintah pengadilan memaksa mereka untuk menyerahkannya. Pelanggaran data mengungkapnya. Seorang karyawan nakal mengaksesnya. Keamanan aplikasi’ hanya sekuat keamanan operasional perusahaan’, dan sejarah menunjukkan bahwa perusahaan sering dibobol.
Vaultaire tidak mengoperasikan akun atau layanan penyimpanan yang menerima pola, frasa rahasia, kunci dekripsi, atau konten brankas Anda yang dapat dibaca. Enkripsi dan dekripsi terjadi dalam proses aplikasi di perangkat Anda. Kapan iCloud pencadangan diaktifkan, aplikasi mengirimkan teks sandi yang diautentikasi ke pribadi Anda CloudKit database, bukan ke layanan vault yang dikendalikan Vaultaire.
Apa Arti Tanpa Pengetahuan dalam Praktek
Jika lembaga penegak hukum memberikan surat perintah pengadilan kepada Vaultaire yang meminta teks biasa brankas, perusahaan tidak memiliki pola, frasa pemulihan, kunci brankas, kunci cadangan, atau kunci master yang diperlukan untuk mendekripsinya. Terenkripsi iCloud catatan tinggal di pengguna CloudKit basis data pribadi. Namun di perangkat, materi pemulihan disimpan dalam bentuk terenkripsi Keychain database, dan kunci simetris ada di memori aplikasi sementara CryptoKit mengenkripsi atau mendekripsi brankas terbuka.
Batasan penyedia ini adalah properti arsitektur, bukan janji bahwa setiap bagian lingkungan klien berada di luar model kepercayaan. Vaultaire tidak memiliki kunci dekripsi sisi server yang dapat diserahkan untuk pemulihan vault rutin. Aplikasi yang dikirimkan, iOS, perangkat yang tidak terkunci, dan penerapan kriptografi masih dapat memproses data yang dapat dibaca dan harus dipercaya.
Batasan penyedia Vaultaire menghapus kunci dekripsi milik perusahaan dari desain normal. Hal ini mengurangi potensi pelanggaran Vaultaire itu sendiri. Itu tidak menghilangkan kebutuhan untuk mempercayai klien yang dikirimkan, iOS, status perangkat, atau implementasi hierarki kunci yang terdokumentasi. Batasan-batasan tersebut harus dievaluasi secara terpisah dan tidak diruntuhkan menjadi sebuah janji mutlak.
Keychain dan Batas Proses Aplikasi
milik Apple Secure Enclave dapat melindungi kunci pribadi yang didukung dan berpartisipasi dalam bagian arsitektur keamanan platform, namun API publiknya tidak menerima sembarangan PBKDF2-mendapatkan kunci simetris dan melakukan Vaultaire AES-GCM operasi file di dalam koprosesor. Oleh karena itu Vaultaire tidak mendeskripsikan sandi brankasnya sebagai Secure Enclave AES.
Vaultaire menggunakan yang biasa iOS Keychain item kata sandi umum untuk garam perangkat acak, basis data pemulihan terenkripsi, dan kunci acak yang melindungi basis data tersebut. Item ini menggunakan kelas aksesibilitas WhenUnlockedThisDeviceOnly. Keychain dan Perlindungan Data menciptakan batasan perangkat yang berarti, terutama saat ponsel terkunci, namun arsitektur ini berbeda dari yang tidak dapat diekspor Secure Enclave kunci.
Saat Anda menggambar polanya, CommonCrypto mendapatkan kunci vault dalam proses aplikasi. CryptoKit dan CryptoEngine Vaultaire kemudian menggunakan byte kunci simetris dalam proses tersebut untuk mengautentikasi dan mendekripsi indeks, membuka kunci master, dan memproses file. Aplikasi menghapus status aktif ketika terkunci, namun penyerang yang memiliki hak istimewa yang mengamati sesi tidak terkunci memiliki peluang berbeda dibandingkan pemeriksa yang hanya memegang teks sandi perangkat yang terkunci.
Sistem operasi yang sudah di-jailbreak atau disusupi dapat menargetkan input pola, memori aplikasi, pratinjau yang didekripsi, ekspor, atau layar. Vaultaire merekomendasikan yang terkini, tidak di-jailbreak iPhone karena desainnya mengandalkan iOS isolasi proses, Keychain, dan Perlindungan Data. Ia tidak mengklaim bahwa kompromi root membuat kunci simetris brankas terbuka tidak dapat diakses.
Vektor Inisialisasi Per File
Saat Anda mengenkripsi dua file identik dengan kunci yang sama, implementasi yang naif akan menghasilkan teks sandi yang identik. Ini adalah sebuah masalah. Seorang penyerang yang melihat dua gumpalan terenkripsi yang identik mengetahui, tanpa mendekripsi apa pun, bahwa kedua file asli itu sama. Dalam lemari besi yang penuh dengan foto, analisis pola semacam ini dapat mengungkap informasi bahkan melalui enkripsi.
Vaultaire mencegah ciphertext deterministik dengan menghasilkan nonce kriptografi baru untuk masing-masing ciphertext AES-256-GCM operasi penyegelan. Header file dan konten file disegel secara terpisah, dan file besar menggunakan format streaming yang diautentikasi dengan nonce dasar acak dan nonce berbeda untuk setiap potongan yang dipesan. Oleh karena itu, dua salinan dari foto yang sama tidak menghasilkan representasi terenkripsi yang sama.
Nonce disimpan dengan ciphertext dan tidak bersifat rahasia; persyaratan keamanannya adalah keunikan pada kunci yang diberikan. Vaultaire meminta nonce 96-bit dari generator acak kriptografi Apple untuk enkripsi satu kali dan mencatat nonce dasar di header streaming. Risiko tabrakan diatur oleh jumlah enkripsi dalam satu kunci, sehingga penerapannya menghasilkan nilai baru dibandingkan menyajikan ukuran 96-bit sebagai satu-dalam-2 yang tetap.96 jaminan seumur hidup.
Manajemen Memori: Menghapus Status Kunci Aktif
Kegagalan umum dalam perangkat lunak keamanan adalah meninggalkan data sensitif di memori setelah tidak diperlukan lagi. Kunci enkripsi, kata sandi turunan, dan data yang didekripsi dapat bertahan di RAM lama setelah aplikasi selesai menggunakannya. Alat forensik dapat membuang memori perangkat dan mencari sisa-sisa ini, sebuah teknik yang dikenal sebagai serangan boot dingin atau analisis dump memori.
Vaultaire membatasi berapa lama status kunci aktif dan data UI yang didekripsi tetap tersedia. Saat aplikasi terkunci atau sesi dihentikan, kodenya mengikuti beberapa jalur pembersihan:
- Status vault aktif dihapus. Aplikasi menghapus sesi kunci brankas saat ini dan memerlukan pembukaan kunci lagi sebelum menyajikan konten brankas.
- Pembungkus kunci menghapus buffer yang dimiliki. Kontainer byte aman Vaultaire akan menimpa buffer yang dimilikinya saat kontainer tersebut dibatalkan alokasinya.
- Status kunci master yang di-cache tidak valid. Kunci master yang didekripsi yang disimpan untuk indeks terbuka dibuang pada jalur kunci dan penyetelan ulang cache yang relevan.
- Cache UI yang didekripsi akan dihapus jika dikontrol oleh Vaultaire. Pembersihan thumbnail dan pratinjau mengurangi status aplikasi sisa, tanpa mengklaim kendali atas setiap salinan yang dibuat oleh Swift, iOS, atau proses lainnya.
Saat Vaultaire dibuka lagi dalam keadaan terkunci, Anda menggambar polanya dan aplikasi mendapatkan kunci vault lagi sebelum dapat mengautentikasi indeks dan membuka kunci master. Ini adalah pembersihan sesi, bukan klaim bahwa setiap salinan memori sementara menerima penghapusan multi-pass yang dapat dibuktikan atau bahwa a Secure Enclave referensi kunci dihancurkan. Penyebab kecelakaan iOS untuk mendapatkan kembali proses tersebut, tetapi kode pembersihan tidak dapat dijalankan setelah setiap penghentian mendadak.
Pertanyaan yang Sering Diajukan
Apakah AES-256 benar-benar tidak bisa dipecahkan?
AES-256 adalah cipher blok yang terstandarisasi dan banyak dianalisis. Tidak ada serangan praktis terhadap penerapan yang benar AES-256-GCM dengan kunci acak 256-bit diketahui publik, tapi itu tidak membuat seluruh brankas tidak bisa dipecahkan. Entropi kredensial, PBKDF2 biaya, penanganan nonce, penyimpanan kunci, pemulihan, status perangkat, dan kelemahan implementasi tetap menjadi jalur serangan.
Mengapa menggunakan PBKDF2 untuk derivasi kunci?
Vaultaire menggunakan PBKDF2-HMAC-SHA512 melalui CommonCrypto: 600.000 iterasi untuk pola dan 800.000 untuk frase pemulihan. Derivasi pola lokal menggunakan satu garam acak di seluruh perangkat yang disimpan di dalamnya Keychain. PBKDF2 meningkatkan biaya setiap tebakan tetapi tidak menambah entropi pada pola, sehingga waktu serangan bergantung pada kekuatan kredensial, kecepatan perangkat keras yang diukur, dan paralelisme.
Data apa yang dikirim Vaultaire ke servernya?
Tidak ada. Vaultaire tidak memiliki server yang menerima data Anda. Jika Anda mengaktifkan pencadangan iCloud, data terenkripsi Anda disimpan di akun iCloud pribadi Anda yang dienkripsi, sebelum meninggalkan perangkat Anda dengan kunci yang tidak dimiliki Apple. Vaultaire perusahaan tidak pernah menerima, memproses, atau menyimpan data pengguna apa pun, terenkripsi atau lainnya.
Bisakah iPhone yang sudah di-jailbreak membahayakan brankas saya?
Jailbreak secara signifikan melemahkan batasan perangkat. milik Vaultaire AES-GCM operasi berjalan dalam proses aplikasi melalui CryptoKit, jadi byte kunci simetris ada di memori aplikasi saat brankas terbuka. Kompromi tingkat root dapat menargetkan input, memori, tangkapan layar, atau output yang didekripsi. Keychain dan Perlindungan Data masih menambah penghalang saat perangkat terkunci, namun Vaultaire tidak mengklaim bahwa kunci AES-nya tetap terisolasi di dalam Secure Enclave.
Bagaimana metadata dienkripsi?
Vaultaire tidak menggunakan ChaCha20 untuk metadata brankas. Nama file, MIME jenis, stempel waktu, data thumbnail, struktur brankas, dan kunci master yang dibungkus dilindungi di dalamnya AES-256-GCM teks sandi yang diautentikasi. Menggunakan satu konstruksi yang diautentikasi menjaga kerahasiaan dan pemeriksaan integritas tetap konsisten di seluruh format penyimpanan.
Apa yang terjadi pada kunci saya jika aplikasi mogok?
iOS mengambil kembali proses yang dihentikan, dan peluncuran berikutnya memerlukan pembukaan kunci baru sebelum Vaultaire memulihkan status kunci aktif. Vaultaire tidak membuat cakupan sesi Secure Enclave Referensi AES. Sementara pembungkus kuncinya menghapus buffernya pada deallokasi dan jalur kunci menghilangkan status aktif, Swift dan iOS tidak memberikan jaminan bahwa setiap salinan sementara telah ditimpa sebelum terjadi kerusakan.
Lihat Aksi Tumpukan
Enkripsi terautentikasi, kunci berlapis, derivasi mahal, dan tidak ada kunci brankas yang disimpan penyedia. Unduh Vaultaire untuk menggunakan arsitektur yang dijelaskan di sini, dengan batasan perangkat dan kredensialnya dinyatakan dengan jelas.
Unduh Vaultaire Gratis