Say hypothetically I want a service where users express their opinions. But those opinions are heavily dependent upon where they work, and the best way to prove that they actually work at a specific place is by having access to an email address there. However, the service must guarantee that it (or anyone other entity) cannot know the user's specific email address, or else the user won't express their honest opinions.

Is this do-able?

So say I work at companyx, and my email is bob@companyx.com. When I sign up for this service, the service needs me to prove that I have access to a valid, current email address at the companyx.com domain. However I do not want to type in anywhere that my email is "bob@companyx.com" because then the service would know that I own that specific address. The service does not care that I specifically own "bob@companyx.com", just that I own some valid address at "companyx.com".

  • $\begingroup$ Doesn't the service needs to actually send an email to that address to validate that the user has access to that address? Otherwise I could just the address of somebody at some other company that I have previously corresponded with. Or is the correctness of this information not that important (and if that's the case why ask for local parts in the first place)? $\endgroup$ – SEJPM Jan 17 '19 at 20:17
  • $\begingroup$ The service cannot know the actual address - this may not be possible to do.... but figured I ask anyway. $\endgroup$ – reedvoid Jan 17 '19 at 20:36
  • 1
    $\begingroup$ Hmm... what if you enter a range of addresses, like 100 addresses, and the service pings them all? ( spam filters aside ) That seems to be a valid way to hide your address... but definitely would get this service banned by every email server on earth. $\endgroup$ – reedvoid Jan 17 '19 at 20:39

Your idea is exactly what is achieved in a recent paper:

Blind Certificate Authorities. Liang Wang, Gilad Asharov, Rafael Pass, Thomas Ristenpart, abhi shelat. At IEEE S&P 2018.

The server and client use secure multiparty computation to jointly make an SMTP+TLS connection to a mailserver, generating the appropriate encrypted packets to send an email to username@domain.com, so that the server doesn't learn username and the client doesn't learn the random challenge in the body of the email.

| improve this answer | |
  • $\begingroup$ So wouldn’t the email server become aware of such activities? I am sure the traffic is going to look a little unusual? E.g., as the email server I can know exactly who is doing such activities. Although I cannot tie the postings (post proof of email) to any individual email account, I could still id a subset of suspicious accounts - unless every email in that domain does this at approx the same time.... ? $\endgroup$ – reedvoid Jan 19 '19 at 17:46
  • $\begingroup$ You would have to look closely at the paper to see how they address this. I think they might assume that the random challenge is somehow steganographically embedded in the email, to make it look innocuous to the mail server. $\endgroup$ – Mikero Jan 19 '19 at 19:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.