Как шифровать пароль/электронную почту c #

В настоящее время я пытаюсь запустить отладочную почту. В тот момент, когда произошла ошибка, он отправит почту с ошибкой на почту, которую я использую. Но после того, как кто-нибудь проверил это, он фактически получил мой почтовый пароль и почту и решил сменить пароль.

public void Send() {
    MailMessage MailMesaji = new MailMessage();
    MailMesaji.Subject = "subject";
    MailMesaji.Body = "mail body";
    MailMesaji.From = "sender mail adress";
    this.MailMesaji.To.Add(new MailAddress("to mail adress"));
    System.Net.Mail.SmtpClient Smtp = new SmtpClient();
    Smtp.Host = "smtp.gmail.com";//for example gmail smtp server
    Smtp.EnableSsl = true;
    Smtp.Credentials = new System.Net.NetworkCredential("account name", "password");
    Smtp.Send(MailMesaji);
}

Поэтому мне было интересно, можно ли зашифровать имя учетной записи и пароль, чтобы предотвратить кражу?

Мне жаль, если я не искал достаточно хорошо, но не смог найти ничего о том, как шифровать электронную почту/пароль

0
nl ja de
Я сделал сообщение в блоге о том, как сделать простой, но эффективный шифрование, возможно, это поможет вам: aclassicgeek.blogspot.com/2011/11/encryption-in-c.html
добавлено автор Jeremy Holovacs, источник
Это клиентское приложение, которое отправляет сообщения разработчику? В таком случае зачем использовать электронную почту? Я просто отправлю запрос HTTPS POST на ваш сайт.
добавлено автор CodesInChaos, источник
Просто googled «C # encrypt» и heres первый результат: stackoverflow .com/вопросы/202011/& hellip;
добавлено автор SysDragon, источник
@SysDragon да, это обычное строковое шифрование. если я пытаюсь войти в систему (учетные данные пользователя), это просто говорит о недопустимом имени пользователя/пароле.
добавлено автор MX D, источник
@JeremyHolovacs Хороший учебник, но это не позволит мне зашифровать электронную почту/пароль и войти в службу (в этом случае hotmail.com) и отправить электронное письмо
добавлено автор MX D, источник
@codesinchaos - это опция, которую я уже попробовал, но текущий веб-хост блокирует все входящие почтовые запросы. там я пошел на альтернативную почту. но я думаю, что я немного обошел вокруг, чтобы заставить его работать :)
добавлено автор MX D, источник

1 ответы

Поскольку вам нужно восстановить исходный пароль для использования для отправки почты, вам нужно будет использовать обратное шифрование какой-либо формы.

Похоже, вы находитесь в ситуации, когда вы хотите передать свой исходный код другому пользователю для тестирования. Этот тестер сможет просто остановить ваш код в новой строке System.Net.NetworkCredential и посмотреть, что передается конструктору.

Таким образом, однако, вам удастся зашифровать ваши учетные данные, если вы передаете код (или исполняемый файл) кому-то еще для тестирования, тогда они смогут получить доступ к вашему паролю.

1
добавлено
Если вы отправляете кому-то файл .exe, им не очень сложно использовать отражатель ( red-gate.com/products/dotnet-development/reflector ), чтобы увидеть, что происходит. Вот почему приложения вызывают диалоги для пользователей, чтобы вводить учетные данные, а не хранить их в коде или конфигурации.
добавлено автор paul, источник
Либо (a) имеет незащищенный почтовый сервер и потенциально может открыть себя как спам-ретранслятор, либо (b) заставить пользователя ввести SMTP-адрес и учетные данные для почтового сервера их или (c) развернуть средний уровень, к которому пользователи обращаются, используя учетные данные, предоставленные вами самим. Затем этот средний уровень мог обеспечить контролируемый доступ к вашему почтовому серверу (т. Е. Отправлять только определенные сообщения с определенным контентом на определенные адреса)
добавлено автор paul, источник
Вы не можете поместить секреты в .exe, который работает в ненадежной системе. Это так просто.
добавлено автор CodesInChaos, источник
Я не отправляю исходный код, я отправляю файл .exe, который он создает после выпуска. но ему удалось просто получить мой пароль из этого
добавлено автор MX D, источник
Я получаю эту точку, но учетные данные всегда одинаковы. Я получаю отладочные журналы, отправленные мне по почте. Как мне нужно дистанционно вводить мои учетные данные на чужой машине? Или есть другой способ заставить его автоматически отправлять журналы отладки в мою почту/базу данных
добавлено автор MX D, источник
Я бы предпочел сохранить его без вмешательства пользователя. Потенциальный спам не будет проблемой. большая проблема прямо сейчас заключалась в том, что учетные данные были прочитаны из отправки, в результате чего человек превысил почту напрямую. просто сказал, что в настоящее время я использую почту hotmail.com. он отправился на HOtmail.com и вошел в систему с учетными данными пользователя
добавлено автор MX D, источник
Не могли бы вы объяснить, как вы имеете в виду вариант C? Я не уверен, что понимаю, что правильно
добавлено автор MX D, источник
Теперь, когда я понимаю вариант C, я думаю, что это может быть решением моей проблемы. Спасибо за помощь
добавлено автор MX D, источник
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot