Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как делаются пароли? [D5, Win95/98, WinME, NT4, Win2k, WinXP]


Страницы:   1 2 3 4

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)
> - не видно длину и расшифровать - только перебором, и прятать
> не надо.


И что такое хеш?


Страницы:   1 2 3 4

Наверх

Титульная страница Поиск, карта сайта Написать письмо