2016-02-17 5 views
-1

Я создал программу, использующую FTP для загрузки некоторых файлов. Теперь проблема в том, что кто-то может использовать простой декомпилятор, чтобы увидеть исходный код (мои данные учетной записи ftp), что является лучшим способом для включения моей программы. Можно ли только зашифровать данные моего входа или предотвратить декомпиляцию моей программы? Также я хочу получить данные из внешнего источника с запросом HTTP. Будет ли это работать?Delphi, защищающий ваш исходный код

+0

Вы можете запутывать вещи, чтобы сделать их трудными, но в основном: нет действительно безопасного способа хранить секреты в коде. См. Также: [Где хранить хэши, соли, ключи в приложениях для рабочего стола] (http://stackoverflow.com/questions/28251867/where-to-store-hashes-salts-keys-in-desktop-applications). – Calrion

+2

Не храните конфиденциальные учетные данные в исходном коде приложения. Храните его зашифрованным вне программы, затем загружайте и расшифровывайте его только при необходимости. И убедитесь, что вы используете FTPS для защиты учетных данных при их передаче на FTP-сервер. Любой, у кого есть сетевой снифер, может получить незащищенные учетные данные. –

+1

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

ответ

3

Простой ответ заключается в том, что нет способа предотвратить декомпиляцию вашего кода.

скрыть встроенные пароли, используя некоторые простые трюки, такие как XOR-ing с «ключом». Или сложные трюки ...

Однако, если программа является автономной, то она должна быть в состоянии восстановить скрытый пароль для себя, когда он работает. И если это можно сделать, тогда хакер может понять, как он это делает, и делать одни и те же вычисления.