![]() |
|
|
![]()
|
|
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Задача:
Аутентификация и работа с пользователями приватно по сети. Проблемы: 1. Хранение паролей пользователей на машине аутентифицирующей пользователей. 2. Соб-венно сам алгоритм крипто-обмена. Подробнее: 1. У меня было желание хранить пароли пользователей в виде однозначно сгенирированных хешей. Но, почитал в инете, оказывается хеш-методы крайне неусточивы к BruteForce-методам взлома. 2. Хочу, чтобы алгоритм работал блочно, т.е. если был блок информации 128 бит то после приминения крипто-алгоритма, он на другом конце имел тот же размер. Я задал эти два вопроса в одной теме, потому что хочу решить их близко к друг другу, если это возможно.Посоветуйте какой алгоритм выбрать. |
|||
|
||||
| Snowy |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
Варианта 3: хранить хэш / хранить шифрованный пароль / хранить в открытом виде
При дешифровке информация восстанавливается один к одному. Или ты имел ввиду, что шифрованные данные должны иметь тот же размер, что и не шифрованные? |
||||
|
|||||
| En_t_end |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Snowy,
3-ий отсекается точно. А вот что лучше хранить хеш или шифрованный пароль, всё же ?
да Добавлено @ 17:44 Из всех зол мне нужно выбрать меньшее. |
||||
|
|||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
Ну тогда, что касается хранения - самый параноидальный вариант - хранить шифрованный хэш
Что касается алгоритма, то в твоём случае это явно не блочный, а как раз поточный алгоритм. ИМХО RC4 - самое оно. |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Snowy,
Спасибо! А в чем хранить ключ к шифрованному хешу ? уже читаю http://ru.wikipedia.org/wiki/RC4. Жду ещё варианты. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
В программе! Зашить насмерть
Вот, буквально с утра тема была: http://forum.vingrad.ru/topic-132588.html |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Snowy,
млин RC4 под лицензией. А тут ещЁ http://bugtraq.ru/cgi-bin/forum.mcgi?type=...=15&m=18553 Получается совсем как-то плохо. Добавлено @ 18:25 Издеваешься ? даже я смогу выдрать из программы ключ. Нет уж, лучше просто хеш. |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
||||
|
||||
| sergejzr |
|
|||
![]() Un salsero Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 4 Всего: 360 |
Неустойчивые? Есть алгоритмы поиска корреляций, но не забываем, что совпадения только у очень длинных строк. Да и то, что даст похожий хэш вряд ли будет состоять из букв и чисел. Я к чему клоню. Если сделаешь ограничение на пароль, чтобы был не длиннее А и не короче Б, и будешь длину пароля всегда проверять, то вероятность найти корреляцию практически равна нулю. А если подумать, что хэш - слово из 32 букв, то любое другое слово < 32 букв даст практически однозначный результат, если прогнать его через хэш функцию. А это означает перебор и несколько десятков лет для атакующего. Т.е проверяй длину пароля, чтобы небыло спецсимволов и используй обыкновенный md5. А насчёт шифрования, так одна проблема - где хранить ключи. А самая большая проблема - если кто нибудь пароли из базы в чистом виде опубликует, доказать, что это не ты опубликовал. Поэтому надо пользовать хэш, да и желательно прибавлять какой нибудь salt, для того чтобы однозначно показать, что настоящие пароли ты при всём желании восстановить не сможешь. Короче говоря можешь со спокойной душой использовать нижеприведённую схему (На псевдоязыке):
|
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
||||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
ну это ещё спорно. Много ньюансов.
Можно в качестве ключа взять любые данные. Например серийник биоса или любую стандартную ветку из реестра. Чем же просто хэш лучше, чем скрытый хэш? Добавлено @ 18:30 А это уже проблема того, кто будет юзать сервер. Если винда не куплена, то это бОльшая проблема, чем юзанье RC4 В любом случае это уже проблема не софта, а юзера. |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
sergejzr,
спасибо. |
|||
|
||||
| sergejzr |
|
|||
![]() Un salsero Профиль Группа: Админ Сообщений: 13285 Регистрация: 10.2.2004 Где: Германия г .Ганновер Репутация: 4 Всего: 360 |
Я немного подправил. Добавил проверку на символы.
|
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Snowy,
я следую философии независимости от платформы(посему разные интересные вещи, типа получения значений веток реестра и серийника харда мне не помогут). Стараюсь следовать. Windows меня интересует, только как friendly-user платформа. Но это тема отдельного треда. Спасибо, я что-то подобное себе и представлял. Однако псевдокод не помешает |
|||
|
||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 2 Всего: 484 |
Кстати. Сходил на сайт RSA Security Inc.
Никакого упоминания о лицензии вообще нет. Возможно в вики устаревшие данные. Сколько его юзаю, ни разу не слышал о лицензионных ограничениях. Только об ограничении на длину ключа. Но это ограничения законодательные, а не алгоритма. |
|||
|
||||
| En_t_end |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2074 Регистрация: 4.12.2004 Репутация: нет Всего: 20 |
Появилась какая-то псевдопроблема с пересылкой информации для установления защищенного соединения. Вообщем, как мне наиболее безболезненно послать пароль по сети серверу. Не в чистом ведь виде ?
|
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 5 Всего: 121 |
Продолжение...
http://forum.vingrad.ru/topic-132852/0.html#entry1004194 Это сообщение отредактировал(а) W4FhLF - 19.1.2007, 16:19 -------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |