PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (91): В начало « ... 9 10 11 12 [13] 14 15 16 17 ... » В конец

> Найдено сообщений: 1361
Саныч Отправлено: 30 Июля, 2013 - 19:42:11 • Тема: Помогите сверстать макет • Форум: HTML, Дизайн & CSS

Ответов: 3
Просмотров: 808
nkl пишет:
а workspace мог бы быть любой ширины и высоты (в зависимости от контента в нем) и скроллится по горизонтали и вертикали
А это как Не понял

CODE (css):
скопировать код в буфер обмена
  1. header {
  2.     position: fixed;
  3.     top: 0;
  4.     width: 100%;
  5. }
?
Саныч Отправлено: 30 Июля, 2013 - 19:38:55 • Тема: Шифрование паролей, сессий, куков... • Форум: Вопросы новичков

Ответов: 20
Просмотров: 897
Hapson, crypt - это шифрование, а hash - хеширование, это разные вещи и сказать что лучше нельзя.
Используйте хеширование sha512 в цикле с засолкой несколько раз, 5 - 10, больше смысла нет. И как говорил уже caballero: "не заморачиватесь с проблемами которых нет".
Саныч Отправлено: 30 Июля, 2013 - 19:23:04 • Тема: Шифрование паролей, сессий, куков... • Форум: Вопросы новичков

Ответов: 20
Просмотров: 897
makar3000 пишет:
md5 не расшифровывается, ну только в тех случаях если пароли: 123456, 123321, qwerty
md5 ни в каких случаях не расшифровывается, а находится перебором значений, то бишь по словарю.

Hapson пишет:
Ладно, но главное-то: hash("sha512", $pass) - будет работать на всех системах?
Да на всех. Алгоритмы md5, sha1, sha512 на текущий момент на столько популярны, что в ближайшее время никто их не вырежет из PHP.

Hapson пишет:
я буду вынужден после смены алгоритма юзать двойную проверку
Совсем не вынужден. Просто меняете алгоритм, новые пользователи совсем ничего не почувствуют, старым прийдется восстановить пароль. Ну можете для корректности повесить на некоторое время на главной сообщение, мол произошли некоторые изменения, возможно вам прийдется пройти процедуру восстановления пароля.

Hapson пишет:
Но вопрос в том, стоит ли повышать время шифрования. Усложнится ли задача взломщика, если у него есть БД, хеши, соли и мой алгоритм. То есть он будет делать банальный перебор. Но перебор будет долгим за счет алгоритма.
Нет не стоит... десятка итераций хеширования с засолкой будет более чем достаточно.
Сами подумайте, если у хацкера все есть, то как занимал у вас алгоритм 5 секунд, так и у него он займет 5 секунд... Да и не будет никто таким заниматься. Тем более что если влезли и в базу, и в код, то стоит ли вобще уже переживать за хеши Улыбка
(Добавление)
teddy пишет:
И прощай сессионная кука.
Сессионная кука никуда не денется, она как была, так и останется, т.к. это единственный способ серверу узнать, где чья сессия.
Просто станет чуть меньше вероятность, что ее сопрут.
Саныч Отправлено: 30 Июля, 2013 - 18:42:42 • Тема: Регистрация • Форум: Вопросы новичков

Ответов: 37
Просмотров: 1652
Master_pascal, вам предупреждение за нарушения правил форума (пункт 1.7).
Учитывая ваше количество предупреждений в следующий раз будет бан!
Всем остальным убедительная просьба, не участвуйте в обсуждении подобных вопросов!

Тема закрыта!
Саныч Отправлено: 23 Июля, 2013 - 17:38:56 • Тема: Ваши предложения по развитию конференции • Форум: Колонка администратора

Ответов: 70
Просмотров: 24439
esterio, сделать можно все, вам ли этого не знать... Вот только заниматься этим не будет никто, т.к. админов, с доступом к фалам движка тут нет и похоже им абсолютно пофиг на этот форум.
Саныч Отправлено: 17 Июля, 2013 - 15:57:50 • Тема: Проверка на наличие в папке файлов • Форум: Вопросы новичков

Ответов: 4
Просмотров: 281
soffrick, а почему ж нельзя? scandir возвращает минимум 2 элемента: текущий каталог и родительский. Далее папки и файлы. Вот и получаем, что если меньше 3 элементов - все ОК, папка пуста, удаляем.

В принципе можно и так сделать: Эффект тот же, но это не есть гуд.
Саныч Отправлено: 17 Июля, 2013 - 15:44:04 • Тема: Проверка на наличие в папке файлов • Форум: Вопросы новичков

Ответов: 4
Просмотров: 281
Ааа... попов детектед
PHP:
скопировать код в буфер обмена
  1. $dir = '../img/noteIMG/'.$myrow["id_user"];
  2. if (is_dir($dir) && count(scandir($dir)) < 3) {
  3.     rmdir($dir);
  4. }
Саныч Отправлено: 14 Июля, 2013 - 16:37:05 • Тема: Кнопка Выход • Форум: Вопросы новичков

Ответов: 5
Просмотров: 335
amf1k, вам последнее китайское предупреждение, в следующий раз будет бан. Смените тон своего общения.
Саныч Отправлено: 08 Июля, 2013 - 17:22:31 • Тема: MD5 и соль • Форум: Вопросы новичков

Ответов: 45
Просмотров: 2835
DelphinPRO пишет:
Если алгоритм хеширования станет известен - мы сведем проблему к предыдущим.
Это да...
Тема вобще такая... скользкая что ли...
Вскрыли приложение, есть алгоритм хеширования, по тем же словарям можно начинать гонять.
Залезли в базу, наворотили че хочешь, опять же на кой хеши нужны...

Мелкий пишет:
Переходите на password_hash (слой совместимости со старыми версиями). Зря, что ли, делали?
Делали то может и не зря, но появилось только в 5.5.0, а хостеры до него обновятся еще ох как не скоро, они только на 5.4 переползать начали...
А этот костыль для ранних версий... Код его еще не смотрел, но думаю что внутри тежи игры со стандартными md5(), sha1() и т.д., тоже чем мы и страдаем тут. Вобщем вечером посмотрю его код, может мнение поменяется.
Саныч Отправлено: 08 Июля, 2013 - 11:10:51 • Тема: Нужна помощь с выводом данных • Форум: Вопросы новичков

Ответов: 9
Просмотров: 286
Ну значит рано вам еще сюда, лучше изучите основы, потом вернетесь к этой теме.
Саныч Отправлено: 08 Июля, 2013 - 11:07:15 • Тема: MD5 и соль • Форум: Вопросы новичков

Ответов: 45
Просмотров: 2835
Раз уж зашла тема про хеширование пароля, спрошу вашего мнения по алгоритму, который использую я.

В таблице юзеров есть 3 поля которые нам нужны:
pass CHAR(128)
salt CHAR(100)
reg_time TIMESTAMP

в pass хранится sha512 хеш.
salt - понятно из названия 100-символьная строка соли из самых разных символов, для каждого пользователя своя.
Пароль засаливается и хешируется несколько раз (3 - 10). При этом используются различные алгоритмы хеширования (md4, md5, sha1, sha512). Последняя итерация выполняется обязательно в sha512. При каждой итерации засолки и хеширования используется только часть строки соли.
Количество циклов засолки, какой алгоритм использовать для каждой итерации, часть строки засолки и с какой стороны ее конкатенировать вычисляются из значения reg_time.
Несколько мудрено конечно, но что есть, то есть Улыбка
Что скажите?
Саныч Отправлено: 08 Июля, 2013 - 10:05:03 • Тема: Нужна помощь с выводом данных • Форум: Вопросы новичков

Ответов: 9
Просмотров: 286
0. error_reporting(-1); в самое начало кода
1. var_dump()-ом отслеживаем, что приходит, и что получается после всех ваших "проверок"
2. mysql в помойку, юзаем mysqli или pdo
3. разберитесь с отступами и скобками в коде, читать не возможно
4.
PHP:
скопировать код в буфер обмена
  1. $letter = substr($_GET['letter'], 0, 1);
  2. if(preg_match('/^[а-яa-z]$/i', $letter))
заменить на:
5. SELECT * FROM - плохо, перечисляем все нужные поля
Саныч Отправлено: 08 Июля, 2013 - 08:53:43 • Тема: Скачиваю РНР 5.3.26 не могу понять что надо выбирать • Форум: Программирование на PHP

Ответов: 12
Просмотров: 715
Тема превратилась в хлам, закрываю.

Кто пришел учиться - добро пожаловать в раздел Вопросы новичков.
Саныч Отправлено: 07 Июля, 2013 - 21:25:19 • Тема: Требуется помощь в проблеме • Форум: Вопросы новичков

Ответов: 7
Просмотров: 295
PHP:
скопировать код в буфер обмена
  1. $input = explode(' ', file_get_contents('t1.txt'));
  2. $output = array();
  3.  
  4. foreach ($input as $inStr) {
  5.     foreach ($output as $outKey => $outArr) {
  6.         $outStr = reset($outArr);
  7.         $inStrLen = strlen($inStr);
  8.         if (strlen($outStr) != $inStrLen)
  9.             continue;
  10.         $outStr = str_split($outStr);
  11.         for ($n = 0; $n < $inStrLen; $n++) {
  12.             $outStrKey = array_search($inStr{$n}, $outStr);
  13.             if ($outStrKey === false)
  14.                 continue 2;
  15.             unset($outStr[$outStrKey]);
  16.         }
  17.         $output[$outKey][] = $inStr;
  18.         continue 2;        
  19.     }
  20.     $output[][] = $inStr;
  21. }
  22.  
  23. foreach ($output as $outArr)
  24.     echo implode(' ', $outArr), PHP_EOL;
Саныч Отправлено: 07 Июля, 2013 - 16:30:43 • Тема: Как называется этот метод загрузки классов... • Форум: Программирование на PHP

Ответов: 6
Просмотров: 456
fenric пишет:
Это удобнее чем бесконечное require_once extends и т.п...
Autoload не, не слышал?..

К тому же тут синглтон используется. В чем разница
PHP:
скопировать код в буфер обмена
  1. loaderClass::get('db')->method();
  2. DB::init()->method();
Нет же, нужно отдельный класс...
В чем глубокий смылс?.. Я что чего-то не понимаю?..

Страниц (91): В начало « ... 9 10 11 12 [13] 14 15 16 17 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB