2012-01-20 2 views
2

Я намерен сохранить пароль/секретный ключ в своем приложении Go, которое будет использоваться в общении с некоторыми другими приложениями. Интересно, как защитить его, например, от кого-то, получающего двоичный файл, и поиска его в каком-то шестнадцатеричном просмотре. Являются ли такие методы безопасности распространенными, или я слишком беспокоюсь?Go - защита паролем в двоичном формате

+4

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

+0

@KevinBallard Я не собираюсь распространять секретный ключ для пользователей, только чтобы использовать его для связи с другим моим приложением (один экземпляр приложения общается с одним экземпляром другого приложения, он не распространяется по многим экземплярам, и т.д.). – ThePiachu

+1

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

ответ

3

Обфускать данные и/или код. Это означает, что хранить пароль в форме, которую трудно найти, и если ее местоположение обнаружено, пароль достаточно сложно расшифровать.

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

13

Кратко:

Не надо!

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

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