![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как делаются пароли? [D5, Win95/98, WinME, NT4, Win2k, WinXP]
Dr.Karter © (2003-01-13 11:25:00)Я хочу знать где можно - нужно хранить информацию пароля(чтобы юзер не знал)
чтобы потом сделать проверку.
Дайте пример паролевой программки.
anatolyk (2003-01-15 10:07:00) [41]Народ, а что если для защиты применить след. способ.
На машине юзера создается файл, зашифрованный с каким-то паролем, напр. номером дистрибутива + s/n винта (С)+ какие-либо действия с этими числами (или строками) и т.п. Этот файл создается отдельной программой при установке (лично я установки делаю сам, и программа-инсталятор всегда со мной. Бабки, все-таки.8)). Сам файл можно разместить, напр. в каталоге Windows (GetSystemDirectory) и дать ему имя, напр. device.sys
Само приложение только проверяет пароль, пытается открыть файл и прочитать из него чего, нибудь. Нарушение структуры данных вызовет ошибку.
Для чайника вполне годится.
mrcat (2003-01-15 04:01:00) [42]vuk © (15.01.03 01:24)
...
то точно определить элемент первого множества не получится.
...
собственно определять нет никакого смысла, ибо находится посредством поиска коллизий
vuk (2003-01-15 01:24:00) [43]to MXA
>не правда
Я бы сказал, это не вся правда, а точнее её часть. В принципе, хеширование - алгоритм отображения одного множества значений на другое, обычно меньшее. И поскольку второе множество значений меньше, то точно определить элемент первого множества не получится.
>по-моему стоит или придумать свой "оригинальный"
>алгоритм/способ хранения паролей, стойкость которого и будет
>состоять в том, что он не известен
Для более или менее серьезных применений такой подход не годится. Да и уже давно известно - самые надежные алогритмы шифрования - те, алгоритмы которых известны всем и хорошо изучены.
>или изучать (не по форумам) известные
>теоретически стойкие алгоритмы.
Вот это есть правильно! А вообще сочетание хранения хешей вместо паролей и шифрования даст хорошоший эффект.
MXA (2003-01-15 00:05:00) [44]2 Сергей (14.01.03 11:57)
:(
и вообще
>...Это такая функция, зная значение которой невозможно определить её аргумент...
не правда
2 Dr.Karter © (14.01.03 15:32)
>А как насчет невидимого файла? Можно ли делать такие
на устройстве nul :)
и как бы ты хотел увидеть такой файл?
а чайник не увидит и файл с аттрибутом "скрытый"
по-моему стоит или придумать свой "оригинальный" алгоритм/способ
хранения паролей, стойкость которого и будет состоять в том,
что он не известен, или изучать (не по форумам) известные
теоретически стойкие алгоритмы.
Sha (2003-01-14 22:47:00) [45]2 Сергей (14.01.03 11:57)
:)
les (2003-01-14 16:05:00) [46]> Dr.Karter © (14.01.03 15:34
> А Если я чего не знаю, то я учусь
Молодец! Хочу подарить тебе ключ к любому познанию, держи:
RTFM, STFW.
Dr.Karter (2003-01-14 15:34:00) [47]
> A2 (14.01.03 09:19)
А Если я чего не знаю, то я учусь, благодаря Мастера DELPHI-
Спасибо вам!
Dr.Karter (2003-01-14 15:32:00) [48]А как насчет невидимого файла? Можно ли делать такие
Тебе Сергей СПАСИБО
A2 (14.01.03 09:19)
Я не знаю сколько ты за этим непростым делом, но что касается меня то за мной много программ, и единственный способ к познанию
учиться, что не когда не поздно!
За рекомендациями обращаться к Литвинову Илье Николаевичу по адресу: nsk_school_163@list.ru Меня зовут Денисов Игорь А.
или просто Dr.Karter! Милости Прошу!!!
Reindeer Moss Eater (2003-01-14 13:06:00) [49]vuk, в 11:57 было сказано новое слово в криптографии. А мы не заметили :)))
vuk (2003-01-14 13:01:00) [50]Блин, если это хеш то я уж и не знаю...
В принципе, хеш функция должна обладать тем свойством, что результаты вычислений для разных блоков данных имеют одинаковую длину и изменения в одном бите исходных данных ведут к изменениям более чем одного бита в результирующем значении хеш-функции.
mrcat (2003-01-14 12:27:00) [51]=)))))))
Reindeer Moss Eater (2003-01-14 12:02:00) [52]Сергей , не находишь, что способ твой ограниченно годен? Годится лишь для случаев, когда автор программы сам проверяет подлинность вводимого пароля.
Сергей (2003-01-14 11:57:00) [53]Доктор Картер. Я смотрю здесь тебе много советчиеов нашлось, которые считают себя величайшими криптографами. Не будем их разубеждать, но скажем, что читать их писанину весьма смешно. Молодцы!
Вот тебе кратко что такое Хэш-Функция. Это такая функция, зная значение которой невозможно определить её аргумент. То есть, если известно f(x), то x - нельзя определить. Например, функция mod (остаток)!
1 mod 3 = 1
2 mod 3 = 2
3 mod 3 = 0
4 mod 3 = 1
5 mod 3 = 2
.......... и т.д. То есть зная что (х mod 3) = 2 , мы не можем определить х, так как он может быть = 2,5,... Вот это и есть простейшая ХэшФункция. В реальных программах/алгоритмах используется не число 3, о большие (>64бит) простые числа.
Тебе же советую сделать файл в этом же каталоге например UserPassword.pwd, и все пароли которые будут использоваться хранить там в отдельной строке, причем не сами пароли, брать от каждого символа пароля отдельно байт/символ высчитывать его (mod 97) и + 101010101010.
Потом когда юзер будет вводить пароль, ты с ним (паролем) провернёшь вышеуказанные вычисления и сравнишь с тем, что есть в файле!
Надеюсь - помог!
Chubais (2003-01-14 10:27:00) [54]ААААААААААААААААААА!!!!!!!!!!!!!!!
Anatoly Podgoretsky (2003-01-14 10:16:00) [55]А так как хранятся оба ключа, то нет нужды использовать ассиметричные ключи, достаточно симметричного, просто без разницы
Rater2 (2003-01-14 10:02:00) [56]ХЕШ хорош при работе с вводимыми паролями,
а для хранения паролей для посылки куда-то (например аутентификациа в инет).
Для шифровки паролей наиболее простой метод XOR & ротация битов
для бешеной шифровки можно конечно PGP попробовать но хранить то придется всё и приватный и публичный ключ, так что ....
Спрашивающий (2003-01-14 09:42:00) [57]Все зависит какой степени защита требуется, если от Чайника то вообще ничего прятать и шифровать не надо он порой не может запустить ну например Word. Если программа расчитана на широкий круг ничего не видимого и зашифрованного(100%) не сделаешь, "умельцы" все сломают,хотя я думаю что в данном случае шифровать и прятать надо, ну хотя бы для того чтобы усложнить взлом .
Сергей Зимин (2003-01-14 09:29:00) [58]Вот здесь реализация алгоритма MD5
http://www.fichtner.net/delphi/md5/
Немного упростив - Хеш это контрольная сумма
Хеш двух различных строк (хоть на 1 бит) различен.
A2 (2003-01-14 09:19:00) [59]Парень!
А сколько часов всего-то ты занимаешься программированием - и сразу за программу с паролями!!!
Разберись сперва с азами.
Dr.Karter (2003-01-14 08:54:00) [60]А можно как-то создавать невидемый файл в той-же папке где расположена программа.
Если можно, то как и будет ли файл невидемый при переносе с одной машины на другую.
> Сохраняй, где удобно, в зашифрованном виде
Что значит в зашифрованном виде?
> Novice © (13.01.03 11:43)
> Вместо пароля удобно хранить хеш от пароля (напр., MD5)
> - не видно длину и расшифровать - только перебором, и прятать
> не надо.
И что такое хеш?