I have successfully used Pulldata to verify specified email addresses. However, I want to enhance this by adding the ability to check for duplicate respondents using the same email while storing only a hashed version. The goal is to keep email addresses private while still allowing manual verification of duplicates later.
IMPORTANT: there is a currently a bug in Enketo which means you must put a string(...) [or some other equivalent calculation…] around the thing you are taking a hash of for it to work correctly; otherwise you’ll get a hash value back that never actually changes irrespective of what you enter!
BTW you dont need to workaround this for KoboCollect, but there’s no harm in putting string() around it anyway to ensure it will work correctly in both clients.
Also, please be aware that hashes are case-sensitive - whereas emails are not - so you’ll get a different hash back for “joe.blogs@kobotoolbox.org” than you will for “Joe.Blogs@kobotoolbox.org”. So if you are going to use this for checking, say, email collisions, then you’d probably better convert everything to the same case before taking the hash.