2012-01-29 7 views
1

Я изучаю, как реализовать постоянный cookie типа «помни меня» для сайта. Я просто задавался вопросом, использует ли GUID для токена безопасности как безопасный хеш md5 имени пользователя и пароля?GUID vs md5 hash for persistent cookie

ответ

1

GUID более «безопасен», потому что нет возможности раскрытия информации в случайном идентификаторе. В противном случае, если бы имя пользователя было известно, пароль можно было бы извлечь, используя таблицу для пользователя rainbow table или согласованную атаку, так как вы не добавляли соль перед хэшированием. NB: MD5 - довольно слабый хеш в этот момент.

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

+0

Таким образом, было бы целесообразно использовать GUID для токена безопасности в постоянных файлах cookie? – chobo

+0

@chobo Да, это нормально. Пока вы не предоставляете * доступ * к чему-либо, основанному исключительно на файле cookie ... Очевидно, вы не можете установить файл cookie, сохраненный навсегда, и поддерживать безопасность, потому что cookie можно было бы украсть. Вот как работают сеансы: cookie хранит случайный идентификатор, случайный идентификатор связан с серверной базой данных. – Borealid

+0

Я планировал хранить маркер guid в той же таблице, что и имя пользователя и пароль, и выполнять поиск как имени пользователя, так и токена, если они совпадают (пользователь аутентифицирован), и я бы сгенерировал новый токен и обновил поля cookie и токенов в базе данных, так что это будет один токен. – chobo