Jelas bagi semua orang ( saya harap ) bahwa menyimpan kata sandi tanpa setidaknya memberi salin / hashing adalah ide yang buruk .
Bagaimana dengan email? Katakanlah Anda menyimpan alamat email berlangganan, jika Anda mengenkripsi dengan benar mungkin tidak dapat digunakan untuk mengirim email ke pengguna. Di sisi lain, jika Anda tidak mengenkripsi dan database dicuri, semua pengguna Anda berisiko spam potensial.
Pertanyaan ini bukan tentang masalah hukum khusus (meskipun mungkin diberikan, mereka tetap bergantung pada negara) atau tentang mengenkripsi basis data itu sendiri.
Jawaban:
Menyimpan hash asin dari alamat email bisa menjadi pilihan jika Anda menyimpan catatan itu hanya untuk konfirmasi / otentikasi akun.
Dalam kasus lain, tampaknya bagi saya bahwa mengenkripsi email akan membuat pekerjaan mempertahankan database lebih sulit sambil mendapatkan sedikit imbalan.
Mungkin mengamankan akses database itu sendiri adalah pilihan yang lebih baik: biasanya ada banyak informasi lain dalam database yang Anda tidak ingin dikumpulkan.
Pertanyaan serupa tentang Stackoverflow: Apakah layak untuk mengenkripsi alamat email dalam database?
sumber
Saya pikir Anda sudah mengatakan itu semua.
Satu-satunya hal yang dapat saya pikirkan adalah tidak menggunakan filter hash satu arah seperti SHA1 untuk menyimpan alamat email. Gunakan beberapa enkripsi kunci publik (reversibel) dalam aplikasi Anda dan pastikan bahwa kunci pribadi Anda tidak ada di dekat basis data, sehingga mereka tidak dapat "dicuri" bersamaan.
Dengan begitu, Anda masih bisa tidak mengenkripsi alamat email untuk mengirim email,
sumber