Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.01.01;
Скачать: CL | DM;

Вниз

Пароль   Найти похожие ветки 

 
Id   (2005-12-12 11:54) [0]

Здравствуйте.
Хотелось бы обсудить такую тему.
В некоторых проектах требуется защита входа или выхода из программы, т.е. возникает потребность пароля, который можно поменять, зная старый. Я использую такой способ. Создается произвольный файл. С помощью Random заполняю различными символами. Затем произвожу запись пароля по буквенно вставляю в этот файл через определенный промежуток символов. Мне самому неочень нравится этот способ. Какие еще варианты хранения пароля существуют? Кто какими пользуется?


 
Sandman29 ©   (2005-12-12 11:56) [1]

Пароль должен быть записан так, чтобы его нельзя было восстановить.


 
Id   (2005-12-12 12:07) [2]


> Пароль должен быть записан так, чтобы его нельзя было восстановить

В смысле восстановить? Все равно программно он считывается и сверяется с введенным пользователем набором символов


 
msguns ©   (2005-12-12 12:07) [3]

Насколько мне известно, защиты требует не ПРОГРАММА, а информация, предоставляемая программой. След-но, речь надо вести не о защите ПРОГРАММЫ, а о защите ДАННЫХ.
Речь, как я понял не о несанкционированном (нелицензированном) запуске программы.


 
Id   (2005-12-12 12:11) [4]


> msguns ©   (12.12.05 12:07) [3]

Не только данные, но и сама программа.

Кто-нибудь поделится своим опытом. Какие еще есть варианты хранения пароля?


 
Игорь Шевченко ©   (2005-12-12 12:12) [5]

А почему не нравится ?


 
Id   (2005-12-12 12:18) [6]


> Игорь Шевченко ©   (12.12.05 12:12) [5]

Потому что создание пароля таким образом мне кажется нерациональным
и еще потому что теоретически его можно прочитать даже неочень опытному программисту.


 
Игорь Шевченко ©   (2005-12-12 12:28) [7]

Id   (12.12.05 12:18) [6]


> Потому что создание пароля таким образом мне кажется нерациональным


Не знаю. Простенько и со вкусом.


> и еще потому что теоретически его можно прочитать даже неочень
> опытному программисту.


Каким, интересно, образом ? Приведи алгоритм поиска пароля не очень опытным программистом в файле с содержимым

"xqYGWRDe5Ui1/wBtKggs3t+KbLjb6yWCUxlpekSRa9kKghgeNW3ApkTcMFSW3mSSNdQLPHqIK8CPQpFl86aeBBZfuLf5sx8PAwjky4w9U8rCCAlbeok+pgQ dXAUoqEkrsOBukEk+Xued9Rl5WkmFAFhiAHBIxe/DxJ51VkkX3JuA3DLfYop/pmlDLmT3F48dLFtP8TngPZVorQhkie4MNtMULzOqgBFijZma3C1yLU2ipYP dWcNwXHbbXhidGZHmNiSDZbgXsDRQQqX9u7ibIlSFI3y2kZi00MbLDGo+XW1tRqHEVJ5TqANrX8DVCT2gFAKAUAoBQCgFAKAUAoBQCgFAKA8N6Aic3dN0hkd cbaZspUJu4kijBsPDWQTU0IMOLuLLZ1gztry9ukk4LKVWeIewtHccamgqVzmTMZ20mNca9swraZDa5CKP9lWpQgoOLj3+qlh0SpG8S5rXdhGAGDqPJ/8AbU1 BiZ2ybbM8i9OQY+bKigQylAqhTI8xHmrc6ioMbJxu4hhE4GSuZjz47gJkBY8mOPl6NPpYH20TQM7a9zj2rbMHDyLoMXHReWrVwCoFI4HzNS4gwtr2HGx58zI lmOPl5Tq2
RjsdUQzH4xzJ7wQDSoM9QuSk5EJdjilJMZF0A5EDkkAjiDflVWCRW+uXo4nTkPTyDIyn1PINL/4goqCTPc6i6EizjSFHO9rmoBj5OMvQKK0iukRQSKNTAHyF uLeVTUkEMgAhYDTH0osc8P1LX5+6iBTIj69U7OYmEcSovEFibkn8eFEQYeTC2Qk4mklGlZQZ8clV06jZPaRUkGdHb0dJunK6xvIGvfQOFveagkxY2KsIwxgl yuqIYCpKizEl294qakFG64Uc0Msl+o5ZESSIeuNkPE38bGpiwz2CDe1Ko0WMr85MpSeJ8xH52qG0SNv2fbYJ5Xhx0kyJbvLnEBg0gNiDxuCKNsGTLjY8j5HU nbpyxqWjQ2ChDxZSONRVgrhiMj9cdMSNYFuLFoRy58jRgsuuR1F+nfVIqMwkVlEbkE2QoOP40qCLXuDd4opJp44MqOKwlgxA/wBQpva2h+DVbahUvx75kzaO jBlSFmANsYotj+Zm4cKURFSejMpPqUAew3NUdCxcqAKAUAoBQCgFAKAUAoBQCgFAKAoexuCLgcTapRBAb3uGQ5TFhyFx1yG0CXXpNuR0nhy86yRSIEEeLgYw ZopgkToJwCXCkD+bzJZW8TUVBbzu5Nsw8tIZnjglcNFC5fVdWGqNtIv6W9tFEVKNu3nAOX9HgxJOpj+qytB1BWYENYHzNuFqlxJSM9o2yhJDkwCHXj2myFbT xBuI1t4L41QFBimV1R7dOVkiyWPwSI0ZCsg+Vrip"


 
Id   (2005-12-12 12:35) [8]


> Игорь Шевченко ©   (12.12.05 12:28) [7]

согласен, из такого не выбрать...:),
Но есть же и другие способы, Это я и хочу выяснить в данной теме


 
Desdechado ©   (2005-12-12 12:39) [9]

достаточно часто пароль хранят в виде, являющимся результатом действия на него некоторой функции, для которой не существует обратного преобразования
после ввода пароля пользователем производится его преобразование, после чего результат сравнивается с сохраненным эталоном, если не равно, то пароль неверный

стоит добавить, что функция преобразования должна быть однозначной, т.е. не допускать при разных входах одинакового выхода

в принципе, твой вариант является одним из видов этой функции


 
wal ©   (2005-12-12 12:46) [10]


> являющимся результатом действия на него некоторой функции,
> для которой не существует обратного преобразования
...
> стоит добавить, что функция преобразования должна быть однозначной,
>
Имхо - противоречащие запросы.

С уважением.


 
Игорь Шевченко ©   (2005-12-12 12:49) [11]


> согласен, из такого не выбрать...:),
> Но есть же и другие способы, Это я и хочу выяснить


Я тебе даже больше скажу: если этот файл хранить в сжатом виде, например, после обработки ZLIB, то вероятность найти пароль уменьшается даже для опытного программиста.
Разумеется, если ты в тексте программы не сравниваешь явно пароль со строкой, тогда взломщику никакие файлы не нужны, достаточно EXEшник посмотреть глазами. А если ты хранишь образец в этом же файле (но с другими позициями), тогда, извини, не взламывая программу дисассемблером, пароль найти невозможно. А от опытного программиста с дизассемблером защититься нельзя, не старайся.


 
Desdechado ©   (2005-12-12 13:16) [12]

wal ©   (12.12.05 12:46) [10]
В чем противоречие?
Сравниваются-то результаты преобразования, а не оригиналы паролей.


 
wal ©   (2005-12-12 13:33) [13]


> В чем противоречие?
В том, что если для каждого x существует один и только один y, причем такой, что y=f(x), то всегда существует функция, обратная f(x), и такое преобразование не является необратимым.


 
msguns ©   (2005-12-12 13:43) [14]

>Игорь Шевченко ©   (12.12.05 12:49) [11]
>А от опытного программиста с дизассемблером защититься нельзя, не старайся.

Невозможно не дать войти в программу, но не узнать пароль.
Это не одно и то же ;)


 
Игорь Шевченко ©   (2005-12-12 13:45) [15]

msguns ©   (12.12.05 13:43) [14]

Я не думаю, что разница между тем, что узнали пароль или обошли защиту паролем вообще является существенной. Тем более, если вопрос в конференции "Начинающим"


 
WondeRu ©   (2005-12-12 14:14) [16]

Id   (12.12.05 11:54)
md5 и подоюные тебе в помощь


 
Id   (2005-12-12 15:19) [17]


> WondeRu ©   (12.12.05 14:14) [16]
> md5 и подоюные тебе в помощь

Поясни, непонял


 
Rater   (2005-12-12 15:20) [18]

wal  ну не сказал бы что обратная всегда существует.... :
есть число, результат функции равен сумме цифр числа.
И какая будет обратная функция?
Хотя если придираться к математическому определению финкции, то такое преобразование функцией не является вроде. :-)


 
wal ©   (2005-12-12 15:44) [19]


> результат функции равен сумме цифр числа.
Это функция, но она не удовлетворяет требованию:

> не допускать при разных входах одинакового выхода

С уважением.


 
Desdechado ©   (2005-12-12 15:45) [20]

wal ©   (12.12.05 13:33) [13]
> то всегда существует функция
может, и существует, вот только вид этой функции не известен и вычислению не поддается
не поддается в первую очередь из-за малого количества вариантов результатов преобразования (без знания пароля бОльшее кол-во результатов и не получишь)


 
wal ©   (2005-12-12 15:59) [21]


> может, и существует, вот только вид этой функции не известен
> и вычислению не поддается
Прошу пример функции, удовлетворяющей Вашим условиям, а я приведу обратную, или докажу, что она Вашим условиям не удовлетворяет. Идет?

С уважением.


 
evvcom ©   (2005-12-12 16:52) [22]


> Прошу пример функции, удовлетворяющей Вашим условиям, а
> я приведу обратную, или докажу, что она Вашим условиям не
> удовлетворяет. Идет?

Может ты и сильный математик, но доказать, что не удовлетворяет условиям, это уже круто. Взять любую хэш-функцию. Она по определению не удовлетворяет не допускать при разных входах одинакового выхода, но доказывать это... Справишься ли?


 
Desdechado ©   (2005-12-12 21:24) [23]

> Прошу пример функции
Передергивать не надо. Есть результат работы функции с некоторой последовательностью символов. С одной, максимум с 2 последовательностями. По результату сможешь восстановить функцию? Сильно сомневаюсь, ибо исходная неизвестна. Только брутфорсом, да и то найдешь множество функций достаточно обширное, из коего выбрать нужную как-то врядли получится без дополнительных исходных данных.


 
wal ©   (2005-12-13 10:20) [24]


> Есть результат работы функции с некоторой последовательностью
> символов. С одной, максимум с 2 последовательностями.
1. Давай перейдем от символов к числам, так проще.
2. Разумеется, по двум точкам определить вид функции невозможно,
3. Но, если не исходник, то ехе-шник то у нас есть,
4. А весь криптоанализ основан на том, что известно все, кроме ключа.
И наконец
5. Я бы на твоем месте с ходу предложил любую функцию шифрования на несимметричных ключах, при этом "потеряв" ключ расшифровки. Такая функция удовлетворяет всем требованиям, но для обратной функции нужен "утерянный" ключ. Вот его поиск - задача весьма непростая, хотя теоретически выполнимая при неограниченных вычислительных ресурсах либо неограниченном времени.

С уважением.


 
Antonio   (2005-12-14 01:22) [25]


> > В чем противоречие?
> В том, что если для каждого x существует один и только один
> y, причем такой, что y=f(x), то всегда существует функция,
>  обратная f(x), и такое преобразование не является необратимым.
>

Вы правы-для любой функции есть обратное преобразование. Правда есть такие функции, при которых это преобразование будет производиться ооооооочень долго. Вы можете даже и не дожить до этого момента



Страницы: 1 вся ветка

Текущий архив: 2006.01.01;
Скачать: CL | DM;

Наверх




Память: 0.54 MB
Время: 0.067 c
2-1134538198
Eric
2005-12-14 08:29
2006.01.01
TabControl


2-1134479787
Dysan
2005-12-13 16:16
2006.01.01
SQL.Append Драйвер не поддерживает данной функции?


4-1130581246
voron_
2005-10-29 14:20
2006.01.01
Как убрать прогу из диспетчера задач?


1-1133554079
FBI Agent
2005-12-02 23:07
2006.01.01
Автозагрузка в Безопасном режиме


5-1119962835
harisma
2005-06-28 16:47
2006.01.01
Как сделать хинты для TTreeNode в TTreeView