![]() |
|
|
![]()
|
|
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
Использую алгоритм AES с 128-битным ключом. Суть заключается в следующем. Инсталлятор собирает необходимые данные, шифрует их и сохраняет в файл. Затем программа, которая устанавливается, расшифровывает файл и пользуется данными. Всё это происходит на Windows (2000, XP, 2003, Vista). Вопрос заключается в следующем - что использовать в качестве ключа? Было бы неплохо брать какую-нибудь специфичную для данного компьютера информацию, так, чтобы расшифровать можно было только на нём, а на других нельзя было ни расшифровать, ни получить ключ. И если свой ключь генерить, то как его хранить? Хардкодить не хочется, тем более написано это на C#.
|
|||
|
||||
| v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: нет Всего: 56 |
ключ надо именно генерить ... существует множество специальных алгоритмов.
суть алгоритма в том, что ты зашифровав данные ключём не сможешь расшифровать их не зная ключа. варианты храненения ключа: - защищённое хранилище (место куда может доступится только твоя прога и администратор) - внешний носитель (выдать такой носитель пользовател|ю(ям), который будет пользоваться программой и сказать что бы берёг(ли) его как зеницу глаза ). |
|||
|
||||
| Alexandr87 |
|
|||
![]() дыкий псых ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1459 Регистрация: 27.11.2004 Где: Алматы, Казахстан Репутация: 1 Всего: 39 |
Dray, я так понял, суть манипуляций в том, чтобы уже синсталлированную программу нельзя было просто скопировать и запустить на другом компе?
Добавлено через 2 минуты и 9 секунд вопрос в том, как преобразовать эту информацию в форму ключа? |
|||
|
||||
| Dray |
|
||||||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
Не... не для этого. Просто пользователь при инсталяции будет вводить личные для него данные. Их надо хранить в зашифрованном виде. Вопрос заключается в том, где взять такую информацию, которая будет специфична только для этого компьютера, чтобы сгенерить из неё ключь. Если такую информацию взять негде, то как я понимаю придётся генерить ключ из каких-то случайных данных? Как их потом восстановить? И если ключь хранить...
С этим будет сложнее... Т. к. инсталируемая программа - это сервис. Который крутится на сервере и соответственно не будет возможности запросить у пользователя какие-либо действия.
А вот это уже интересней. Можно пример? Или что в моём случае подойдёт? |
||||||
|
|||||||
| maxdiver |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 29.1.2008 Где: Саратов Репутация: 16 Всего: 18 |
Dray
Поищите на http://wasm.ru/forum. Не так давно (несколько месяцев назад) точно такая же тема обсуждалась. |
|||
|
||||
| Dray |
|
|||
![]() Материалист ![]() ![]() Профиль Группа: Участник Сообщений: 652 Регистрация: 7.10.2003 Где: г. Всеволожск Репутация: нет Всего: 6 |
Всем спасибо, было решено использовать System.Security.Cryptography.ProtectedData вместо AES. Проблема с ключём решилась, т. к. там выполняется защита данных специфичная для данного компьютера автоматически.
|
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |