| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Алгоритмы > Ключ для AES |
| Автор: Dray 30.3.2008, 12:31 |
| Использую алгоритм AES с 128-битным ключом. Суть заключается в следующем. Инсталлятор собирает необходимые данные, шифрует их и сохраняет в файл. Затем программа, которая устанавливается, расшифровывает файл и пользуется данными. Всё это происходит на Windows (2000, XP, 2003, Vista). Вопрос заключается в следующем - что использовать в качестве ключа? Было бы неплохо брать какую-нибудь специфичную для данного компьютера информацию, так, чтобы расшифровать можно было только на нём, а на других нельзя было ни расшифровать, ни получить ключ. И если свой ключь генерить, то как его хранить? Хардкодить не хочется, тем более написано это на C#. |
| Автор: v2v 30.3.2008, 12:41 |
| ключ надо именно генерить ... существует множество специальных алгоритмов. суть алгоритма в том, что ты зашифровав данные ключём не сможешь расшифровать их не зная ключа. варианты храненения ключа: - защищённое хранилище (место куда может доступится только твоя прога и администратор) - внешний носитель (выдать такой носитель пользовател|ю(ям), который будет пользоваться программой и сказать что бы берёг(ли) его как зеницу глаза ). |
| Автор: Dray 31.3.2008, 10:21 | ||||||
Не... не для этого. Просто пользователь при инсталяции будет вводить личные для него данные. Их надо хранить в зашифрованном виде. Вопрос заключается в том, где взять такую информацию, которая будет специфична только для этого компьютера, чтобы сгенерить из неё ключь. Если такую информацию взять негде, то как я понимаю придётся генерить ключ из каких-то случайных данных? Как их потом восстановить? И если ключь хранить...
С этим будет сложнее... Т. к. инсталируемая программа - это сервис. Который крутится на сервере и соответственно не будет возможности запросить у пользователя какие-либо действия.
А вот это уже интересней. Можно пример? Или что в моём случае подойдёт? |
| Автор: maxdiver 31.3.2008, 12:38 |
| Dray Поищите на http://wasm.ru/forum. Не так давно (несколько месяцев назад) точно такая же тема обсуждалась. |
| Автор: Dray 31.3.2008, 20:46 |
| Всем спасибо, было решено использовать System.Security.Cryptography.ProtectedData вместо AES. Проблема с ключём решилась, т. к. там выполняется защита данных специфичная для данного компьютера автоматически. |