Hi,
My suggestion is for storing email address use
MD5 algorithm(SQL). i think that would be better option as it is irreversible algorithm.
i know , you have question like if
MD5 is
irreversible then how can we match at the time of login ?
Answer is, you do not need to Decrept your email address, just pass it to your storedprocedure and it will again encrypt user input and match it with database value. then only problem with this flow is, when you would like to recover your email address then it is not possible. but yes you can do like user will enter his/her email address and if it is correct we can send an email on registered email address.
This method is very simple and effective for storing encrypted email address. and even it will not take more time / more database space for storage.
Hope above information will help you,
Thanks
-Amit