2016-12-19 3 views
0

Я создал простую почтовую программу, которая принимает учетные данные электронной почты и использует ее для отправки электронных писем определенных видов на выбранные адреса. Проблема в том, что мне пришлось вводить учетные данные прямо в код, поэтому любой, кто использует dex2jar, может получить исходный код и получить электронное письмо, используемое для пересылки, и сделать его устаревшим.Шифрование/скрытие частей исходного кода

Я полагаю, что я не единственный, кто сталкивается с этой проблемой, так что некоторые способы сделать мой код безопасным?

+0

http://www.stackoverflow.com/questions/8611960/piracy-piracy-piracy-what-can-i-do –

+0

Я не особо обеспокоен пиратством, поскольку я сказал, что приложение простое. Я только хочу скрыть одну строку кода, может быть, есть более простой способ сделать это? – MilesWeirdo

+1

Предполагая, что обычный компьютер/ОС по существу не может быть выполнен. Чтобы JVM что-то предпринимала, он должен знать, что делать. Это означает, что вам нужны эти инструкции, написанные в форме, которую JVM может читать. Если вы не делаете что-то вроде выпуска пользовательского оборудования с ключом дешифрования, JVM/OS/etc не будет иметь никакой информации, к которой у хакера также не будет доступа. И это означает, что нет способа скрыть что-то от хакера, но у него есть доступ к JVM. – yshavit

ответ

1

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

Вместо того, чтобы жестко кодировать их, вы могли бы позволить пользователю указать их при запуске приложения? Если этого нельзя избежать, вместо этого вы можете получить удаленный сервис, который будет отправлять и пересылать ваш запрос на это.

+0

Проблема в том, что вся логика приложения заключается в том, что он должен принимать входные данные и отправлять их по электронной почте, используя адрес электронной почты для пересылки, который я указываю, и адрес получателя, чтобы получать эти письма. – MilesWeirdo

+0

Единственное решение - * избегать * хранения этих деталей на стороне клиента, т.е. в приложении, которое вы распространяете. Вместо этого вы можете иметь удаленный сервис, который будет выполнять отправку и перенаправление вашего запроса на этот –

+0

. Где я могу прочитать эту удаленную службу? – MilesWeirdo

0

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

+0

Как мне это сделать? Какие-нибудь учебники доступны? – MilesWeirdo

+0

Что-то вроде этого, просто нужно создать, как вы хотите отправить данные - https://www.asp.net/web-pages/overview/getting-started/11-adding-email-to-your- веб-сайт – pizzaslice

+0

http://stackoverflow.com/questions/18326738/how-to-send-email-in-asp-net-c-sharp/* edit: лучший ресурс stacko link – pizzaslice

Смежные вопросы