| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > .NET для новичков > Хранение пароля от программы |
| Автор: СерегаГоляков 6.7.2011, 14:03 |
| Создал для себя программу хранение паролей. Вложил такую идею: Первая форма: Пароль от программы лежит в текстовом файле, файл зашифрован AES. Вход в программу: Юзер вводит пароль, этим паролем дешифруется пароль из файла, и если дешифрованный и введенный - совпадают, то программа запускается. Ограничил 3 попытки и поставил паузу между вводами пол секунды. 0)Можно как то просто удалить строки паузы и 3х кратного ввода? Пароль передается второй форме и удаляется из первой. Теперь пароль есть во 2й форме, очистить нельзя поскольку он же используется для шифрования баз данных-БД(почта+пароль к ней). 1)А если исп-ть другой пароль для шифрования БД, то как его хранить, чтоб удалить из формы(не находился в оперативке чтоль)? 2)Такое очень легко обойти, я прав? Читал http://forum.vingrad.ru/topic-12873.html, что в принципе код легко у c# NET FW 4 глянуть. 3)А очень трудно уже в запущенной программе узнать переданный пароль, или во время передачи как - то оперативка сканируется на появление новых байтов которые содержат пароль? ну и нуб я наверно |
| Автор: Mobi 6.7.2011, 14:05 |
| декомпильнуть идой можно всё) |
| Автор: СерегаГоляков 6.7.2011, 14:07 | ||
ида это название? Это вы про пункт 0 ? |
| Автор: Mobi 6.7.2011, 14:08 |
| http://www.idapro.ru/ |
| Автор: СерегаГоляков 6.7.2011, 14:22 | ||
декомпелировал ей допустим, изменил код и обратно закомпелировал так чтоле? Эта программа может просматреть все переменные запущенной программы? Пароль ведь не хранится в коде программы которая не запущена, и БД зашифрованы. Прочитать БД можно зная пароль, пароль зашифрован самим собой. Для того чтобы прочитать БД, нужно знать настоящий пароль. Базы дешифруются тем же паролем что и при входе. Даже если мы подменим дешифрованный пароль на тот кот вводим открыв доступ к программе,пароль не будет настоящим и все дешифрованный базы этим паролем будут неверно расшифрованы. |
| Автор: 500mhz 6.7.2011, 14:31 | ||
| 1) пароли уже давно не хранят ибо череповато, хранят хеши 2)
то есть я понимаю что сама прога не криптована? то нафига все эти пляски с бубном? |
| Автор: СерегаГоляков 7.7.2011, 09:28 | ||||
что значит некриптована? |
| Автор: vovogege 7.7.2011, 09:52 | ||
Никогда не понимал таких плясок. Если у пользователя стоит программа которая сканирует память или файл подкачки, так это его проблемы. Чего плохого хранить пароль в памяти? Компьютер - зона ответственности пользователя. Если пользователь лох тут ни как его не защитить. И если у него стоит такой сканер- то он лох и у него тайком сканерится и прослушиваться может что угодно:экран,клавиатура,микрофон,камера и т.д.. Мы же не пытаемся его защитить от таких вещей, а пароль почему то в памяти хранить нельзя. |
| Автор: 500mhz 7.7.2011, 11:40 | ||
срочно к прочтению http://www.aspack.com/ |
| Автор: klein 11.7.2011, 10:15 |
| Предлагаю добавить крипто соль, (после реализации минимума ее неплохо бы сделать сесионной). На диске хранить AES(хеш пароля+соль). В качестве ключа к аесу - хеш самого пароля. Соль лучьше хранить в отдельном файлике. Ну и данные шифровать не паролем, а его хешем. Второй форме передавать лучьше не пароль, а хеш введенного, бинарник файла в котором хранится AES(хеш пароля+соль) ну и соль, чтобы знать что отсекать. А саму прогу заобфусцировать. Всех проблем не решит, но усложнит защиту конкретно. |