Есть ли способ добиться анонимной электронной почты? - PullRequest
0 голосов
/ 08 января 2020

Я хочу реализовать функцию связи, аналогичную Airbnb, где реальный адрес электронной почты отправителя и получателя скрыт. Например, если у отправителя есть адрес электронной почты john@gmail.com, а адрес получателя - smith@gmail.com, то когда связь между ними происходит с использованием электронной почты, тогда реальный адрес электронной почты должен быть скрыт, а некоторые другие случайно сгенерированные сообщения электронной почты, такие как info@xyz.com, для каждого из они должны отображаться. Есть ли способ, которым я могу достичь этого?

Когда Джон отправляет электронное письмо Смиту, Смит должен видеть что-то вроде xyz@info.com в качестве отправителя электронного письма, когда Смит получает почту на своем соответствующем почтовом сервере, таком как Google, Yahoo и др. c. И когда Смит отвечает на электронное письмо, тогда Джон также должен видеть что-то вроде abc@info.com в качестве электронного письма отправителя.

Как это возможно в Java? Можно ли это сделать с помощью Java JMS? Предположим, что почтовый сервер - это Google, тогда, когда электронное письмо получено с какого-то случайного электронного письма, такого как abc@info.com, тогда как можно ответить на письмо на фактическое электронное письмо отправителя, не раскрывая фактический адрес электронной почты?

Это будет отлично, если кто-нибудь может добавить фрагмент кода для этого.

Ответы [ 2 ]

1 голос
/ 08 января 2020

Часть за @ интересна для вас. Это должен быть ваш веб-сервер, который может обрабатывать запросы SMTP. (gmail.com - это не что иное, как / несколько почтовый сервер, управляемый Google под этим DNS-адресом)

Тогда у вас будет база данных (хотя на самом деле она не должна быть), отображение <real-email> до <generated-email>. Примерно так:

<real-email>    | <generated-email>
john@gmail.com  | foo@example.com
smith@gmail.com | bar@example.com

Где example.com будет адресом вашего почтового сервера

Затем вам придется переадресовывать любую входящую электронную почту с:

Sender:   <real-sender-email>
Receiver: <generated-receiver-email>

Кому:

Sender:   <generated-sender-email>
Receiver: <real-receiver-email>
1 голос
/ 08 января 2020

Конечно. И, как и airbnb, единственный способ сделать это - запустить почтовый сервер. Затем вы генерируете 2 длинные случайные строки и сохраняете в БД то, что они маскируют:

Token             | Real mail
-----------------------------
quxpzo1mak        | john@gmail.com
ddi2mla12m        | smith@gmail.com

вы отправляете электронное письмо с yourmailserver.com на номер john@gmail.com с адреса 'ddi2mla12m@yourmailserver.com' , Если Джон отвечает, то это письмо будет получено вами (оно будет отправлено на адрес вашего почтового сервера, и вы сможете настроить его в режиме перехвата, направляя весь трафик c на какое-то программное обеспечение, находящееся под вашим контролем / на почтовый ящик, и ваш IMAPs программного обеспечения в него, чтобы прочитать эти). Это программное обеспечение замечает письмо, пришедшее с «john@gmail.com» и адресованное «ddi2mla12m», и, таким образом, затем отправляет письмо на «smith@gmail.com» (вы посмотрели на ddi2mla12m, чтобы выяснить это), и вы маскируете от, следовательно, отправителем является 'quxpzo1mak@gmail.com'.

Если кузнец тогда отвечает на это, то же самое происходит снова в обратном порядке.

Тогда вы должны принять во внимание антиспам и тому подобное .

Это сложное мероприятие, но именно так airbnb делает это, и я не думаю, что есть какой-то другой способ выполнить sh это.

...