C#. Как зашифровать/дешифровать пароль для передачи его консольной программе в виде аргумента?
Всем привет.
Как зашифровать/дешифровать пароль для передачи его консольной программе в виде аргумента?
Или вообще как лучше передать пароль программе? Не зашивая его внутрь кода.
Сейчас передаю пока в открытом виде в виде аргумента
А какая разница, если я перехватил аргументы для вашей программы я их просто повторяю, и мне по большому счёту без разницы читаемый там пароль или абракадабра.
Передавать логин/пароль в качестве аргумента - вполне нормально. Можно ещё передавать, как переменную окружения. Шифровать не вижу смысла, хотя можно в интерактивном режиме ещё передавать
Передавать пароли через аргументы небезопасно - их может прочитать любой другой процесс с админскими правами, это можно увидеть на примере диспетчера задач.
Если планируете запускать приложение под Windows, то посмотрите в сторону Windows Credentials Manager. Он предоставляет безопасное окно для ввода учетных данных, а так же решает проблему безопасного хранения логинов и паролей.
Что мне с админскими привелегиями помешает сохранить credential и рулить от них? Это как вой о небезопасности мд5, ага у вас сперли базу данных а вы что то там лопочете о небезопасности.
Вы хоть суть вопроса топикстартера поняли? Что Ваш ответ, что комментарий к моему ответу - всё куда-то мимо кассы. Базы данных ещё какие-то приплетаете.