1 - BLOB adalah pilihan saya karena encoding ke base64 akan menambah ruang dan waktu pemrosesan (karena Anda juga harus mendekode base64 sebelum mendekripsi)
2 - openssl_seal
tidak memberi Anda kunci yang digunakan untuk mengenkripsi data. Tujuan env_keys adalah untuk menyimpan formulir terenkripsi dari kunci yang dihasilkan. Saat Anda memanggil openssl_open, Anda memberikan kunci amplop ini dan kunci pribadi yang diperlukan untuk mendekripsi kunci amplop. Kunci pribadi harus dicocokkan dengan kunci publik yang digunakan untuk membuat kunci amplop.
3- Jika kunci pribadi Anda memerlukan frasa sandi, maka secara teknis data Anda relatif aman. Bahkan jika mereka memiliki kunci amplop dan kunci pribadi, mereka tidak akan dapat menggunakannya ... tetapi seberapa aman frasa sandi Anda? Satu hal yang perlu disadari adalah Anda bisa hampir tidak pernah menjamin skema yang sepenuhnya aman, tetapi Anda pasti dapat mempersulit peretas. Gunakan imajinasi Anda di sini. Btw, apakah frasa sandi Anda dalam teks biasa dalam kode Anda?