Войти

Показать полную графическую версию : Шифрование строки для конфигурационного файла


tumanovalex
06-06-2018, 16:55
Хотел бы в параметрах конфигурационного файла строковые значения некоторых параметров указывать в зашифрованном виде. Для этого мне нужно сделать программу, в которой я вводил бы незашифрованное значение параметра, а получал бы зашифрованную строку, которую я бы вставлял в конфигурационный файл. В основной программе я бы считанные из конфигурационного файла строки расшифровывал и сравнивал с незашифрованными значениями. Я посмотрел некоторые статьи в интернете, но как-то все очень сложно - хэши, открытый и закрытый ключи, различные алгоритмы шифрования. Программой будут пользоваться обычные пользователи, вряд ли они будут дизассемблировать код и пытаться расшифровать значения параметров программы для внутреннего применения. Посоветуйте, пожалуйста, как проще решить эту задачу с помощью NET.

Iska
06-06-2018, 20:26
tumanovalex, непонятно одно — зачем вот это:
Для этого мне нужно сделать программу, в которой я вводил бы незашифрованное значение параметра, а получал бы зашифрованную строку, которую я бы вставлял в конфигурационный файл. »
?! Само оригинальное приложение что — не будет сохранять данные параметры в файл конфигурации, только читать?

Busla
07-06-2018, 10:35
tumanovalex, да даже "необычные пользователи" не будут дизассемблировать - просто сохранят в блокнот зашифрованную строку, а после при необходимости вставят обратно

tumanovalex
07-06-2018, 10:44
Параметры будут только читаться, в программе сравниваться с незашифрованой строкой. Я не понял, зачем пользователям вставлять в блокнот зашифрованную строку?

Iska
07-06-2018, 12:39
tumanovalex, хмм… а смысл сравнения в чём? Подумайте, не подойдёт ли Вам более простой вариант: в файле конфигурации Вы храните хэш строки, например, MD5. Читаете его из файла конфигурации и, ничего не «расшифровывая», сравниваете хэши как есть. Примерно такой механизм использовался в Boot Cd Wizard.

tumanovalex
07-06-2018, 22:14
Такой вариант, по-моему, подойдет. Но все-же хотелось бы узнать, как зашифровать/расшифровать строку, может быть понадобится.

opel431
08-06-2018, 06:31
Но все-же хотелось бы узнать, как зашифровать/расшифровать строку, может быть понадобится »да ведь уже практически все сказали, посмотрите например в сторону оператора XOR!

Iska
08-06-2018, 08:08
Но все-же хотелось бы узнать, как зашифровать/расшифровать строку, может быть понадобится. »
Есть куча утилит, есть online-страницы для вычисления хэша MD5, есть, наконец, WSH и PowerShell:
([System.BitConverter]::ToString((New-Object -TypeName 'System.Security.Cryptography.MD5CryptoServiceProvider').ComputeHash((New-Object -TypeName 'System.Text.UTF8Encoding').GetBytes('Мама мыла раму')))).Replace('-', '')
Смысл в том, что «расшифровывать» — не надо (да и невозможно в данном контексте).

tumanovalex
08-06-2018, 14:09
Понял. Спасибо!




© OSzone.net 2001-2012