вот что намалевал
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
@$result=mysql_query("SELECT * FROM `users` WHERE `login` = '".$m_login."' AND `active` = '1' LIMIT 1;") or die (mysql_error());
if (!empty($result)){
while($row = @mysql_fetch_array($result, MYSQL_ASSOC)){
$y_login=$row['login'];
$y_pass=$row['passwd'];
}
if ($y_login != "" && $y_pass != ""){
if ($y_login == $m_login && $m_pass == $y_pass){$pidr="no";}else{$pidr="YOU";}
}else{@header("Location: ".$host."error.php?id=20");exit;}
@mysql_free_result($result);
}else{@header("Location: ".$host."error.php?id=20");exit;}
if ($pidr != "no"){@header("Location: ".$host."error.php?id=20");exit;}
но вот тупо у меня получилось

как сделать чтобы авторизация сохранялась?
и чтобы безопасно было

может быть еще какие недочеты у меня там есть, подскажите пожалуйста
Спустя 28 минут, 44 секунды (13.07.2010 - 21:45) SlavaFr написал(а):
если авторизация прошла успешно, то сохрани это в сезоне, например в $_SESSION['user_id'] написать ид юзера
на других страницах
к стате в mysql можно тоже мд5 применять
WHERE `login` = md5('".mysql_real_escape_string($m_login)."')
на других страницах
session_start();
if(!isset($_SESSION['user_id']) ){
на регистрацию
exit;
}
........
к стате в mysql можно тоже мд5 применять
WHERE `login` = md5('".mysql_real_escape_string($m_login)."')
Спустя 7 минут, 42 секунды (13.07.2010 - 21:52) tmt0086 написал(а):
к стате в mysql можно тоже мд5 применять
WHERE `login` = md5('".mysql_real_escape_string($m_login)."')
а так он md5 еще раз зашифрует что ли?!
если так то нужно еще
поидее должно пахать
спасибо, щас пробовать буду
WHERE `login` = md5('".mysql_real_escape_string($m_login)."')
а так он md5 еще раз зашифрует что ли?!

$m_pass=md5(md5($_POST['pass']));
поидее должно пахать
спасибо, щас пробовать буду

Спустя 8 минут, 24 секунды (13.07.2010 - 22:01) SlavaFr написал(а):
да просто не надо $m_pass=md5($_POST['pass']) делатъ. один раз и в mysql достаточно.
С сезоном разобрался? или сомнения?
С сезоном разобрался? или сомнения?
Спустя 42 секунды (13.07.2010 - 22:02) tmt0086 написал(а):
так у меня бд зашифровано уже
Спустя 1 минута, 28 секунд (13.07.2010 - 22:03) SlavaFr написал(а):
Цитата (tmt0086 @ 13.07.2010 - 19:02) |
так у меня бд зашифровано уже |
я знаю что у тебя в дб зашифровано.
Спустя 5 минут, 54 секунды (13.07.2010 - 22:09) inpost написал(а):
А я в базе данных не шифрую, чтоб знать все про всех пользователей =)
Спустя 4 минуты, 36 секунд (13.07.2010 - 22:14) tmt0086 написал(а):
чет у меня не так((
вот глядите, я созал кароче auto.php
его содержание
в форме у меня все нормуль, но вот сессия чет не пашет((
вот я просто загружаю файл(содержание файла)
мне выводит "Вы не авторизованы!" хотя поидее я записал сессию, поглядите что не так
вот глядите, я созал кароче auto.php
его содержание
<? include "./config.php";
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
//if ((strlen($m_login) > 15) || (!$m_login) || (ereg("[^a-zA-Z0-9_-]",$m_login))){@header("Location: ".$host."error.php?id=20");exit;};
//if ((strrpos($m_pass,' ') > 0) || (strlen($m_pass) > 15) || (!$m_pass) || (ereg("[^a-zA-Z0-9_-]",$m_pass))){@header("Location: ".$host."error.php?id=20");exit;};
@$result=mysql_query("SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1' LIMIT 1;") or die (mysql_error());
if (!empty($result)){
while($row = @mysql_fetch_array($result, MYSQL_ASSOC)){
$y_login=$row['username'];
$y_pass=$row['password'];
}
if ($y_login != "" && $y_pass != ""){
if ($y_login == $m_login && $m_pass == $y_pass){$pidr="LOX";
$rows = mysql_fetch_assoc($result);
$_SESSION['user_id'] = $rows['id'];
echo "да";}else
{
$pidr="YOU";
}
}else{@header("Location: ".$host."error.php?id=20");exit;}
@mysql_free_result($result);
}else{@header("Location: ".$host."error.php?id=20");exit;}
if ($pidr != "LOX"){@header("Location: ".$host."error.php?id=20");exit;}
?>
в форме у меня все нормуль, но вот сессия чет не пашет((
вот я просто загружаю файл(содержание файла)
<? include "./config.php";
session_start();
if (isset($_SESSION['user_id'])) {
?>
содержание страницы
<? }
else {
die('Вы не авторизованы!');
} ?>
мне выводит "Вы не авторизованы!" хотя поидее я записал сессию, поглядите что не так
Спустя 34 минуты, 17 секунд (13.07.2010 - 22:48) KaFe написал(а):
<?
include "./config.php";
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
$query="SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1' LIMIT 1";
$result=mysql_query($query) or die (mysql_error());
if (!empty($result))
{
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$y_login=$row[username];
$y_pass=$row[password];
}
if (($y_login==$m_login)&&($m_pass==$y_pass))
{
$rows = mysql_fetch_assoc($result);
$_SESSION[user_id] = $rows[id];
echo "Авторизация ура!!!";
}
else $status=false;
}
else header("Location: ".$host."error.php?id=20");
if ($status!= true) header("Location: ".$host."error.php?id=20");
?>
Для начала так, не знаю будет ли работать, потому что не тестировал.
В файл config.php
добавь session_start(); следственно в другие файлы не надо будет каждый раз включать эту строку
PS: Прочитай ка голубчик эту статью http://www.php.su/lessons/?lesson_13 ОБЯЗАТЕЛЬНО.
Спустя 33 минуты, 10 секунд (13.07.2010 - 23:21) tmt0086 написал(а):
KaFe
извините за корявый код.. я просто через блокнот делаю, а там не так уж и удобно..
вот твой код не пашет, а в моем принцип тот же(точнее твой чуть переделан)
в confing я добавил, вот терь что я в файле сделал
все равно не хочет пазать, может что с сессиями? куда нить может записывать нужно?
извините за корявый код.. я просто через блокнот делаю, а там не так уж и удобно..
вот твой код не пашет, а в моем принцип тот же(точнее твой чуть переделан)
<? include "./config.php";
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
@$result=mysql_query("SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1' LIMIT 1;") or die (mysql_error());
if (!empty($result))
{
while($row = @mysql_fetch_array($result, MYSQL_ASSOC))
{
$y_login=$row['username'];
$y_pass=$row['password'];
}
if ($y_login != "" && $y_pass != "")
{
if ($y_login == $m_login && $m_pass == $y_pass)
{
$pidr="LOX";
$rows = mysql_fetch_assoc($result);
$_SESSION['user_id'] = $rows['id'];
echo "да";
}
else
{
$pidr="YOU";
}
}
else
{
@header("Location: ".$host."error.php?id=20");
exit;
}
@mysql_free_result($result);
}
else
{
@header("Location: ".$host."error.php?id=20");
exit;
}
if ($pidr != "LOX"){
@header("Location: ".$host."error.php?id=20");
exit;
}
?>
в confing я добавил, вот терь что я в файле сделал
<?
include "./config.php";
if(!isset($_SESSION['user_id']) )
{
die('Вы не авторизованы!');
exit;
}
?>
содержание страницы
все равно не хочет пазать, может что с сессиями? куда нить может записывать нужно?

Спустя 15 минут, 6 секунд (13.07.2010 - 23:36) Ice написал(а):
echo "да";
}
else
{
$pidr="YOU";
Что за быдлокод?

а по теме: что-то я нигде session_start не вижу...

Поставь в самом начале файла, прямо после <? session_start();
Спустя 28 минут, 32 секунды (14.07.2010 - 00:05) SlavaFr написал(а):
я на сколько понимаю, ты config.php везде инклудируеш.
тогда session_start() делай в config.php и причем в первой строчке чтоб не одного пробела перед ним небыло.
немного критики:
используй во время разработки error_reporting(E_ALL); и mysql_error() после mysql_query, mysql_connect.
не используй mysql_fetch_(array|assoc|object|row) до тех пор, пока не убедился, что вообще чтото найдено (mysql_num_rows)
про @ забудь вообще, потому что у помогающих создается впечитление, что ты себе сам помоч не хочеш.
к стате переменная $pidr='YOU' заставляет глубоко задуматся
тогда session_start() делай в config.php и причем в первой строчке чтоб не одного пробела перед ним небыло.
немного критики:
используй во время разработки error_reporting(E_ALL); и mysql_error() после mysql_query, mysql_connect.
не используй mysql_fetch_(array|assoc|object|row) до тех пор, пока не убедился, что вообще чтото найдено (mysql_num_rows)
про @ забудь вообще, потому что у помогающих создается впечитление, что ты себе сам помоч не хочеш.
к стате переменная $pidr='YOU' заставляет глубоко задуматся

Спустя 45 минут, 21 секунда (14.07.2010 - 00:50) KaFe написал(а):
Цитата (tmt0086 @ 13.07.2010 - 20:21) |
извините за корявый код.. я просто через блокнот делаю, а там не так уж и удобно.. |
tmt0086 возьми и установи себе SciTe на худой конец
Это рабочий
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
$query="SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1'";
$result=mysql_query($query) or die (mysql_error());
if (mysql_num_rows($result))
{
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$y_login=$row[username];
$y_pass=$row[password];
$y_id=$row[id];
}
if (($y_login==$m_login)&&($m_pass==$y_pass))
{
$_SESSION[user_id] = $y_id;
echo "Авторизация ура!!!"; $status=true;
}
else $status=false;
}
else header("Location: ".$host."error.php?id=20");
if ($status!= true) header("Location: ".$host."error.php?id=20");
Спустя 1 час, 15 минут, 38 секунд (14.07.2010 - 02:06) Revan написал(а):
Посмотрев на твой код, в душе мое выражение лица соответствовало твоей аватарке.
Вроде ниче не забыл (я щас просто сонный
)
<?php
$m_login=mysql_escape_string($_POST['login']);
$m_pass=md5($_POST['pass']);
$res = mysql_query("SELECT `id` FROM `users` WHERE `login` = '{$m_login}' and `pass` = '{$m_pass}' and `active` = 1 LIMIT 1");
if (mysql_num_rows($res) == 1) {
$_SESSION['logged'] = true;
}
?>
Вроде ниче не забыл (я щас просто сонный

Спустя 8 минут, 26 секунд (14.07.2010 - 02:14) KaFe написал(а):
Revan хоть кто то заметил, что у меня замечательная ава
, насчет кода скажу, что это дело вкуса.
Ибо сам программист должен выбирать где ему включать логику, при выборке из БД(в sql запросе), либо в php скрипте.
Мне нравится твой вариант, даже очень.

Ибо сам программист должен выбирать где ему включать логику, при выборке из БД(в sql запросе), либо в php скрипте.
Мне нравится твой вариант, даже очень.
Спустя 2 часа, 8 минут, 52 секунды (14.07.2010 - 04:23) tmt0086 написал(а):
в confing.php у меня первые 2 строчки вот:
<?
session_start();
Спустя 7 минут, 20 секунд (14.07.2010 - 04:30) tmt0086 написал(а):



<? include "./config.php";
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
$result=mysql_query("SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1' LIMIT 1;") or die (mysql_error());
if (!empty($result))
{
while($row = @mysql_fetch_array($result, MYSQL_ASSOC))
{
$y_login=$row['username'];
$y_pass=$row['password'];
$y_id=$row['id'];
}
if ($y_login != "" && $y_pass != "")
{
if ($y_login == $m_login && $m_pass == $y_pass)
{
$pidr="LOX";
$_SESSION['user_id'] = $y_id;
echo "да";
}
else
{
$pidr="YOU";
}
}
else
{
header("Location: ".$host."error.php?id=20");
exit;
}
mysql_free_result($result);
}
else
{
header("Location: ".$host."error.php?id=20");
exit;
}
if ($pidr != "LOX"){
header("Location: ".$host."error.php?id=20");
exit;
}
?>
тока пожалуйста с примером, то что SlavaFr написал, я несовсем догнал, что куда добавить

Спустя 28 минут, 56 секунд (14.07.2010 - 04:59) tmt0086 написал(а):
вот еще куки хочу сделать
по кукам не заходит..
в поля мозила подставляет, при авторизации
<?
include "./config.php";
if (isset($_COOKIE['login']) && isset($_COOKIE['pass'])) {
$login = mysql_real_escape_string($_COOKIE['login']);
$password = mysql_real_escape_string($_COOKIE['pass']);
$query = "SELECT * FROM `xbtit_users` WHERE `username` = '{$login}' AND `password`='{md5($password)}' AND `active` = '1' LIMIT 1;";
$sql = mysql_query($query) or die(mysql_error());
if (mysql_num_rows($sql) == 1) {
$row = mysql_fetch_assoc($sql);
$_SESSION['user_id'] = $row['id'];
}
}
elseif(!isset($_SESSION['user_id']) )
{
die('Вы не авторизованы!');
exit;
}
?>
по кукам не заходит..

Спустя 2 часа, 50 минут, 59 секунд (14.07.2010 - 07:50) Soldier Ghost написал(а):
А ты знаешь как проводить авторизацию по кукам? куки это не сессии.
Если всё с авторизацией ОК то создаёшь куку с какой нибудь бессмысленной информацией желательно с хэшем случайной сгенерированой строки, затем этот хэш записываешь в куку и в базу например в поле hash. потом в файле проверки проверяешь существует ли кука и если существует делаешь запрос в базу что-то типа этого
SELECT `user_id` FROM `users` WHERE `hash` = '".mysql_real_escape_string($_COOKIE['hash'])."'
Если найдено что-нибудь можешь вытащить его айди в сессию или делать такое на каждой странице в общем выбирай сам.
Ни когда не ложи в куку идентификатор, логин, пароль или мэйл пользователя (куки хранятся у юзера на компе) я смогу открыть эту куку и прописать любой айди или логин и авторизоваться не под своим аккаунтом.
Если всё с авторизацией ОК то создаёшь куку с какой нибудь бессмысленной информацией желательно с хэшем случайной сгенерированой строки, затем этот хэш записываешь в куку и в базу например в поле hash. потом в файле проверки проверяешь существует ли кука и если существует делаешь запрос в базу что-то типа этого
SELECT `user_id` FROM `users` WHERE `hash` = '".mysql_real_escape_string($_COOKIE['hash'])."'
Если найдено что-нибудь можешь вытащить его айди в сессию или делать такое на каждой странице в общем выбирай сам.
Ни когда не ложи в куку идентификатор, логин, пароль или мэйл пользователя (куки хранятся у юзера на компе) я смогу открыть эту куку и прописать любой айди или логин и авторизоваться не под своим аккаунтом.
Спустя 38 минут, 46 секунд (14.07.2010 - 08:29) tmt0086 написал(а):
Soldier Ghost
ну вобщем я хочу чтобы он из браузера вытаскивал пароль логин и авторизировал(сессии наверно это, сори за мои знания)
я чуть поже вернусь к этому
ну вобщем я хочу чтобы он из браузера вытаскивал пароль логин и авторизировал(сессии наверно это, сори за мои знания)
я чуть поже вернусь к этому

Спустя 41 минута, 32 секунды (14.07.2010 - 09:10) SlavaFr написал(а):
ясно, с сезоном ты не разобрался.
Принцип работы.
Юзер заходит на любую страницу на которой его идентификация имеет значение.
Смотрим посажено ли у него $_SESSION['user_id']
если нет:
то отсылаем его на страницу где он должен регистрироватся.
или показываем ему содержимое которое можно и без регистрации показать.
в противном случае (т.е. $_SESSION['user_id'] посажена) показываем ему всю страницу и ее часть которая разрешена только для этого юзера.
---------------
На странице где происходит регистрация ты проверяеш введенные данные (можно и в кексы заглянуть) и при успешной регистрации садиш в $_SESSION['user_id'] ид этого юзера и после этого ты можеш отослать юзера на страницу с которой он пришол
Принцип работы.
Юзер заходит на любую страницу на которой его идентификация имеет значение.
Смотрим посажено ли у него $_SESSION['user_id']
если нет:
то отсылаем его на страницу где он должен регистрироватся.
или показываем ему содержимое которое можно и без регистрации показать.
в противном случае (т.е. $_SESSION['user_id'] посажена) показываем ему всю страницу и ее часть которая разрешена только для этого юзера.
---------------
На странице где происходит регистрация ты проверяеш введенные данные (можно и в кексы заглянуть) и при успешной регистрации садиш в $_SESSION['user_id'] ид этого юзера и после этого ты можеш отослать юзера на страницу с которой он пришол
Спустя 36 секунд (14.07.2010 - 09:11) KaFe написал(а):
tmt0086 я тебе кидал нормальный код в котором все более или менее идет зафига же ты свой быдло здесь выложил?
Тебе я больше не помогаю
P.S:не приятно смотреть на твои переменные $pidr и их значения "LOX".
Тебе я больше не помогаю
P.S:не приятно смотреть на твои переменные $pidr и их значения "LOX".
Спустя 21 минута, 56 секунд (14.07.2010 - 09:33) tmt0086 написал(а):
KaFe
я уберу эти переменные.. хорошо, с $_SESSION['user_id'] у меня все пашет, но тока если браузер закрываю, то потом повторно нужно пасс и лог вводить.. Потому что из браузера cookie он не проверяет..

Спустя 3 минуты, 52 секунды (14.07.2010 - 09:37) tmt0086 написал(а):
<? include "./config.php";
$m_login=$_POST['login'];
$m_pass=md5($_POST['pass']);
$result=mysql_query("SELECT * FROM `xbtit_users` WHERE `username` = '".$m_login."' AND `active` = '1' LIMIT 1;") or die (mysql_error());
if (!empty($result))
{
while($row = @mysql_fetch_array($result, MYSQL_ASSOC))
{
$y_login=$row['username'];
$y_pass=$row['password'];
$y_id=$row['id'];
}
if ($y_login != "" && $y_pass != "")
{
if ($y_login == $m_login && $m_pass == $y_pass)
{
$people="YOU";
$_SESSION['user_id'] = $y_id;
echo "<script type=\"text/javascript\" defer>
window.setTimeout(\"document.location.href='/new/user.php'\", 2000);
</script>";
}
else
{
$people="NO";
}
}
else
{
header("Location: ".$host."error.php?id=20");
exit;
}
mysql_free_result($result);
}
else
{
header("Location: ".$host."error.php?id=20");
exit;
}
if ($people != "YOU"){
header("Location: ".$host."error.php?id=20");
exit;
}
?>
вот поправил эти переменные


Спустя 10 минут, 1 секунда (14.07.2010 - 09:47) Soldier Ghost написал(а):
Цитата (tmt0086 @ 14.07.2010 - 05:29) |
Soldier Ghost ну вобщем я хочу чтобы он из браузера вытаскивал пароль логин и авторизировал(сессии наверно это, сори за мои знания) я чуть поже вернусь к этому ![]() |
Незнаю что ты там хочешь, но ни когда в куках не храни конфеденциальную информацию типа пароля (не важно даже если он в md5()), куки хорошо угоняют, а хэши хорошо подбирают.
Спустя 4 минуты, 38 секунд (14.07.2010 - 09:51) tmt0086 написал(а):
Цитата (Soldier Ghost @ 14.07.2010 - 06:47) | ||
Незнаю что ты там хочешь, но ни когда в куках не храни конфеденциальную информацию типа пароля (не важно даже если он в md5()), куки хорошо угоняют, а хэши хорошо подбирают. |
хорошо, оставлю все как есть

// то проверяем его куки
// вдруг там есть логин и пароль к нашему скрипту
if (isset($_COOKIE['login']) && isset($_COOKIE['password'])) {
// если же такие имеются
// то пробуем авторизовать пользователя по этим логину и паролю
$login = mysql_real_escape_string($_COOKIE['login']);
$password = mysql_real_escape_string($_COOKIE['password']);
// и по аналогии с авторизацией через форму:
// делаем запрос к БД
// и ищем юзера с таким логином и паролем
$query = "SELECT `id`
FROM `users`
WHERE `login`='{$login}' AND `password`='{$password}'
LIMIT 1";
$sql = mysql_query($query) or die(mysql_error());
// если такой пользователь нашелся
if (mysql_num_rows($sql) == 1) {
// то мы ставим об этом метку в сессии (допустим мы будем ставить ID пользователя)
$row = mysql_fetch_assoc($sql);
$_SESSION['user_id'] = $row['id'];
как я понял, лучше их не использовать.. а охото бы(но безопасность важнее)
Спустя 5 минут, 7 секунд (14.07.2010 - 09:57) KaFe написал(а):
tmt0086 знаешь почему быдло код и минус?
Зачем тебе это
Это здесь зачем, у тебя в базе будут пустые значения логинов и паролей
Я обосновал???
Зачем тебе это
mysql_free_result($result);
header("Location: ".$host."error.php?id=20");А зачем когда ты перенаправляешь со страницы потом еще и останавливаешь скрипт
exit;
die(header("Location: ".$host."error.php?id=20"));
if ($y_login != "" && $y_pass != "")
{
Это здесь зачем, у тебя в базе будут пустые значения логинов и паролей
Я обосновал???
Спустя 41 секунда (14.07.2010 - 09:57) Soldier Ghost написал(а):
Даже не вздумай этот бред читать тут лучше читай: http://irbis-team.com/15/7
Спустя 3 минуты, 9 секунд (14.07.2010 - 10:00) KaFe написал(а):
Soldier Ghost а чем тебя это не устраивает http://php.su/functions/?cat=session
Спустя 4 минуты (14.07.2010 - 10:04) Basili4 написал(а):
tmt0086
этот скрипт спит и видит чтоб его поломали тебе же ясно сказали не храни в кукак ни пароль не пользователя хеш подобрать трудно но возможно в криптографии существует понятие трудных задач вот восстановление пароля из хеша это и есть трудная задача и кто му же существует недоказуемая и не опровергаемая теория о том что трудных задач не существует т.е. любой алгоритм обротим.
этот скрипт спит и видит чтоб его поломали тебе же ясно сказали не храни в кукак ни пароль не пользователя хеш подобрать трудно но возможно в криптографии существует понятие трудных задач вот восстановление пароля из хеша это и есть трудная задача и кто му же существует недоказуемая и не опровергаемая теория о том что трудных задач не существует т.е. любой алгоритм обротим.
Спустя 4 минуты, 54 секунды (14.07.2010 - 10:09) Soldier Ghost написал(а):
Цитата (KaFe @ 14.07.2010 - 07:00) |
Soldier Ghost а чем тебя это не устраивает http://php.su/functions/?cat=session |
Я про сессии вообще молчу, я говорил ему про куки.
Спустя 5 минут, 25 секунд (14.07.2010 - 10:15) SlavaFr написал(а):
ломка кексов это дело опасное, но все зависет от софта. Этот форум тоже разрешает благодоря кукам сразу без регистрации заходить.
предпологаю, что этот кекс за это отвичает:
pass_hash=ххххххххххххх;
и зная этот хэш можно зарегистрироватся, изменить пассворд и от имени другого юзера всем карму на 100 пунктов понизить
так что если кексы украли, то абсолютно одинаково или ты имя с пассворт в куках хранить или хэш, результат будет абсолютно одинаковым.
предпологаю, что этот кекс за это отвичает:
pass_hash=ххххххххххххх;
и зная этот хэш можно зарегистрироватся, изменить пассворд и от имени другого юзера всем карму на 100 пунктов понизить

так что если кексы украли, то абсолютно одинаково или ты имя с пассворт в куках хранить или хэш, результат будет абсолютно одинаковым.
Спустя 2 минуты, 30 секунд (14.07.2010 - 10:17) Soldier Ghost написал(а):
Нет не соглашусь я с тобой, ломонув его пароль могут так же ламонуть и его мэйл или ещё чегонить вдруг пароль у него везде один и тот же. поэтому пароль нельзя хранить в куках.
Спустя 2 минуты, 24 секунды (14.07.2010 - 10:20) Basili4 написал(а):
SlavaFr
против смены пассворда
против этого есть метода для того чтобы сменить пассворд надо указать текущий если чел в ломился через куки то пароль он соответственно не знает. но вот карму всем минусануть он может.
против смены пассворда
против этого есть метода для того чтобы сменить пассворд надо указать текущий если чел в ломился через куки то пароль он соответственно не знает. но вот карму всем минусануть он может.
Спустя 2 минуты, 46 секунд (14.07.2010 - 10:22) DedMorozzz написал(а):
Цитата |
и зная этот хэш можно зарегистрироватся, изменить пассворд |
Для этого "родной" пасс надобно знать. И куки тут не помогут. Правильно Soldier Ghost сказал, хранить пасс в куках не стоит. А если ты их "украл", то максимум, что можешь сделать - от чужого имени писать на форуме. Невероятно полезно.
А если захочет карму в минус - то что мешает просто левый акк зарегить? )
А если захочет карму в минус - то что мешает просто левый акк зарегить? )
Спустя 6 минут, 44 секунды (14.07.2010 - 10:29) SlavaFr написал(а):
ну это надо вообще быть ненормальным если везде одинаковым паролем пользоватся, в данном случае юзер сам виноват.
А в общем соглашусь, что хэш лучше защитит юзера, но к сожалению не спасет твой софт от возможных последствий украденых кексов.
А в общем соглашусь, что хэш лучше защитит юзера, но к сожалению не спасет твой софт от возможных последствий украденых кексов.
Спустя 2 минуты, 20 секунд (14.07.2010 - 10:31) Basili4 написал(а):
DedMorozzz
для чего минусовать с левого акаунта ??? Смысл а так это показать что ты хакер ломанул ламовский форум вот вам .......
а еще можно личку поглядеть у меня там такого понаписано .............
для чего минусовать с левого акаунта ??? Смысл а так это показать что ты хакер ломанул ламовский форум вот вам .......
а еще можно личку поглядеть у меня там такого понаписано .............
Спустя 30 секунд (14.07.2010 - 10:32) tmt0086 написал(а):
KaFe
считаю необосновано! так как я УЧУСЬ еще, и много чего еще не знаю..
посмотрел бы как ты учился, и как приятно когда те минусы ставят.. когда ты просишь посмотреть что не так в коде, и сказать что исправить и для чего(объяснить что не так) а не просто тупо мне готовый дать, конечно тебе СПАСИБО!!! а то что я бы его скопировал, смысла нету, тк непонятно все равно
хочешь ставь минусы.. как то пофиг, ниче не решает
считаю необосновано! так как я УЧУСЬ еще, и много чего еще не знаю..


Спустя 41 секунда (14.07.2010 - 10:33) Basili4 написал(а):
SlavaFr
хочит и пользуется может не способен чел кроме клички кота никакой пароль запомнить что ему в инет не ходить
хочит и пользуется может не способен чел кроме клички кота никакой пароль запомнить что ему в инет не ходить
Спустя 2 минуты, 20 секунд (14.07.2010 - 10:35) tmt0086 написал(а):
решено в целях безопасности куки не использовать.. А если юзер их сохраняет, то их же тоже стянуть можно.. И расшифровать.. так же зайдет (так хотя сложнее)
Спустя 2 минуты, 3 секунды (14.07.2010 - 10:37) SlavaFr написал(а):
Я согласен, что пассворт не должен появлятся в кексах.
DedMorozzz спасибо что поставил на место.
DedMorozzz спасибо что поставил на место.
Спустя 3 часа, 16 минут, 50 секунд (14.07.2010 - 13:54) KaFe написал(а):
$pass='мать перемать';
$out_pass=md5(md5($pass));
Вроде бы обычный md5, но расшифровать будет не реально сложно. Такой можно использовать в куках.Имхо.
tmt0086 Не вижу смысла тебя учить так как сам еще учусь.
Спустя 3 минуты, 18 секунд (14.07.2010 - 13:57) Basili4 написал(а):
Спустя 6 минут, 3 секунды (14.07.2010 - 14:03) KaFe написал(а):
Basili4 И?
Спустя 3 часа, 5 минут, 3 секунды (14.07.2010 - 17:08) Ice написал(а):
есть еще такой момент. Можно зашифровать куку по известному ключу. Функции mcrypt и подобные
Спустя 13 часов, 51 минута, 31 секунда (15.07.2010 - 07:00) tmt0086 написал(а):
Ice
так куки же браузер шифрует? и смысл его шифровать, если тока у тя одного будет зашифровано..
так куки же браузер шифрует? и смысл его шифровать, если тока у тя одного будет зашифровано..
Спустя 6 часов, 21 минута, 32 секунды (15.07.2010 - 13:21) Ice написал(а):
я об этом:
$iv_size = mcrypt_get_iv_size( MCRYPT_BLOWFISH, MCRYPT_MODE_ECB );
$iv = mcrypt_create_iv( $iv_size, MCRYPT_RAND );
$key = "Никто ничего не узнает";
$text = "Завтра в сквере, возле театра. В 5."; //(с)
// поехали
$crypttext = mcrypt_encrypt( MCRYPT_BLOWFISH, $key, $text, MCRYPT_MODE_ECB, $iv );
setcookie('secret', $crypttext, time()+3600, '', '', false, true); // включен параметр httponly
print $_COOKIE['secret']; // Є‰s]1Jі*фЅ"l*зКKз=’1%H‰К‚ЃЈbEUo!·ђ[хcyfh|NZshъЊ$BS:C4I€ЮОФ
// расшифровываем
$decrypttext = mcrypt_decrypt( MCRYPT_BLOWFISH, $key, $_COOKIE['secret'], MCRYPT_MODE_ECB, $iv );
print $decrypttext;
Спустя 27 минут, 18 секунд (15.07.2010 - 13:49) tmt0086 написал(а):
я если чесно ничего не понимаю щас
рано еще такое.. попоже чуть дойду и до этого


_____________
Продаю людей. Дешего. Писать в ПС