Зашифровать содержимое реестра - PullRequest
1 голос
/ 10 июля 2009

Я создаю файл *. Reg , используя код, который будет содержать некоторые важные данные. и пользователь сохранит это в реестре.

при запуске приложения я получаю значения из реестра и выполняю некоторую проверку.

но проблема в том, что в реестре и в файле *. Reg информация хранится в виде простого текста.

как мне сначала создать зашифрованный *. Reg файл.

тогда в запуске приложения. как расшифровать значение (зашифровано) из реестра ..

Я прочитал несколько статей. но они связаны с шифрованием / дешифрованием файла. здесь я работаю с файлом "* .reg" и самим реестром

Ответы [ 4 ]

1 голос
/ 10 июля 2009

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

Если есть другие программы, использующие данные, вы должны убедиться, что они могут получить доступ и понять информацию, которая им нужна.

0 голосов
/ 10 июля 2009

Извините, Мохсан, это неправильный путь. д. показал правильный путь.

Только представьте, если вы шифруете файл .reg. Что должно произойти потом? Вам захочется импортировать его в реестр, но прежде чем вы сможете расшифровать его, в текст поступает простой текст, который можно прочитать всем.

Так что не шифруйте имена ключей или значений. Зашифруйте содержимое ваших значений в реестре. Таким образом, ваша программа может читать, дешифровать и работать с ним. Вот пример:

[HKLM\Key\SubKey\SubSubKey\etc]
@=""
"Password"="KALSDJLSIWNKLDNISNDLKWDNLAW"

Итак, ваша программа открывает ключ, считывает значение и вычисляет алгоритм дешифрования для этого значения, преобразовывая его в «Мой секретный пароль»

0 голосов
/ 10 июля 2009

Вы не сможете прозрачно зашифровать реестр.

Я бы посмотрел на методы шифрования с открытым / закрытым ключом или симметричным ключом.

Вот быстрый проект по использованию RSA: http://www.codeproject.com/KB/security/RSACryptoPad.aspx

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

0 голосов
/ 10 июля 2009

Какой смысл? Любой человек может просто использовать такой инструмент, как Regmon, чтобы узнать, какие значения вы в любом случае установите.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...