PHP.SU

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

Страниц (16): В начало « ... 4 5 6 7 [8] 9 10 11 12 ... » В конец

> Найдено сообщений: 239
LShark Отправлено: 03 Февраля, 2013 - 08:12:14 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173
Ну разве что заархивировать картинку перед передачей юзеру?
Зипом. С паролем.
Пароль к этому архиву генерировать рандомно хранить как пару к Логину юзера и хешу картинки.

Приняли - распаковали, сравнили хэш.

И повредить сложнее, и украдут - не страшно. Ключ-Файл, передаваемый юзеру, при этом, можно модифицировать (немного обратимо повредив заголовок, чтобы программы юзера не видели, что это зип-архив).

Тогда у юзера - ключ-пароль, который он не может изменить.
LShark Отправлено: 03 Февраля, 2013 - 06:53:38 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173
EuGen пишет:
Можно. Но все подобные схемы придуманы и реализованы до нас.

Вот и я о том же.

Другое дело создать алгоритм "я передаю тебе рисунок, а ты сравниваешь - то ли я нарисовал"
Т.е. не хеш файла, а именно изображение. Тогда не важно, внедрилось что то в картинку, или нет.
LShark Отправлено: 02 Февраля, 2013 - 21:43:26 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173
Вариант:
1. Берем имя юзера и его пароль. Создаем ключ-файл (на самом деле - php-функция декодирования имени юзера)
2. Закручиваем ее в base64_encode или аналогичное, но используем возможность ключа для декодирования.
3. Ключ модифицируем (например, делаем его MD5 + сумму всех цифр в md5 этого шифра) и разбрасываем по коду (например, вставляем кусками по 2 символа каждые 4 символа кода). И отправляем юзверю.
4. При отправке юзверем кода нам - сначала вырезаем из него md5 и сумму и проверяем - если совпали - значит код не изменен.
5. Если не изменен - используем его для декодирования пункта 1, получая имя юзера и пароль.
6. Сверяем полученное имя юзера + пароль с базой и ура...

Только вопрос - нахрена нам этот гемор? Все равно "натыкать пароль" проще, чем ткнуть Обзор и найти файл-пароль.

К тому же есть уроды-хостеры, у которых коряво передаются бинарники.
LShark Отправлено: 02 Февраля, 2013 - 19:37:24 • Тема: Тектсовой ключ хуже цифрового? • Форум: SQL и Архитектура БД

Ответов: 3
Просмотров: 24
Danir пишет:
Просто вот если использовать цифровой мне придется два условия ставить например

`id1` = '12345' AND `id2` = '123456789' это все равно лучше чем один текстовой ( `id` = 'type12345' )?

Сделай и прогони, используя microtime. Сделай по 10-20 раз запрос и посмотришь разницу разбросов значений скорости выполнения.
LShark Отправлено: 02 Февраля, 2013 - 19:32:56 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173
Ключ - дело святое для тебя. Но не для всяких "чистилок"-"просматривалок".

Одна из версий ACDsee при просмотре вставляла в картинки свой тег-маркер. Так то может и поменяться внезапно, и не факт, что ты заметишь (разве что размер файла подрастет на десяток-другой байт). Но хэш то совсем другой...

Хотя можно перед расчетом хэша чистить этот фрагмент картинки, убирая его (бинарно от и до...)
LShark Отправлено: 02 Февраля, 2013 - 18:29:06 • Тема: Ссылка на скачивание • Форум: Вопросы новичков

Ответов: 8
Просмотров: 218
Как вариант - отдавать запакованным в ZIP - точно не откроется. А винда зип-архивы открывает как папки, так что не придется заботиться о наличии разархиватора в системе юзера.
LShark Отправлено: 02 Февраля, 2013 - 18:13:45 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173

Цитата:
Надо, наверное, убрать подпись. Слишком уж разные взгляды на этот счет

Да нет, просто первые 3-5 лет практически все так думают (кроме тех, кто "под кольцо" загнан под стволом ружья тещи или по причине незапланированного увеличения девушки в талии).
После 5 лет обычно "жена-женой, но вот та... и вот та...". Так как "приедается" и далеко не все девушки понимают, что мужа надо радовать разнообразием. Они обычно думают "окольцевался - и все, ты мой", за что и поплатились многие.
Хотя в каждом правиле есть исключения, согласен.


Цитата:
З.Ы. А куда опрос делся?

Какой опрос?
(Добавление)
А да, и еще действительно вариант - если это gif, jpg или аналогичное - есть там место под "дополнительную инфу" по типу exif
Что, если она будет изменена? Или добавлена? Хэш немедленно меняется и кердык паролю.
LShark Отправлено: 02 Февраля, 2013 - 17:57:49 • Тема: Небольшой парсер, запускаемый по cron. Нужна помощь по оптимизации. • Форум: Вопросы новичков

Ответов: 3
Просмотров: 320
Для начала - между запросами сделать sleep(1);
Да, будет работать 1 операцию в секунду, но зато точно не уронит сервер.
Однако тут надо продумать, чтобы время выполнения скрипта не затянулось.
Лучше, если один собирает в базу/файл ссылки, а второй неторопливо их скачивает (например - скачал штук 5 - остановился, сделал вызов самого себя).

Ну и размерчик - это просто после сохранения запрашивай размер, суммируй и проверяй - как стало "много", так останавливай скрипт-скачивальщик или удаляй самые ранние по времени создания файлы (старые).

В таком алгоритме он может работать вечно, особенно, если тебя не интересуют содержимое страницы, а просто "типа посетил"...
LShark Отправлено: 02 Февраля, 2013 - 17:43:49 • Тема: Отображение непонятного происхождения цифр • Форум: Вопросы новичков

Ответов: 29
Просмотров: 966
Ну и раскидав таймстэмпы, получил следующие даты/время:

У меня вышло 3 цифры - результат - три даты/время:

02.02.2013 03:09:12
02.02.2013 03:09:07
01.02.2013 16:16:57

Что это за магические даты-время?

ЗЫ - если что - в пхп раскодировка таймстампа командой:

echo date("d.m.Y H:i:s","1359774552") . "<br>";
выдаст
02.02.2013 03:09:12

Хм... при повторном входе получил 2 цифры/даты:
01.02.2013 20:48:34
01.02.2013 08:59:39
LShark Отправлено: 02 Февраля, 2013 - 17:32:39 • Тема: Отображение непонятного происхождения цифр • Форум: Вопросы новичков

Ответов: 29
Просмотров: 966
1. Судя по разметке - у вас там джумла.
2. Скачиваешь себе аналогичную версию Джумлы и ставишь на виртуальный хостинг (типа Vertrigo Serv)
3. В файлах ищещь "bd fs3 com_content"
И в районе этого в найденных файлах ищи вывод этих циферок (например, что то типа $time;

Вывод на основании кода страницы:
CODE (html):
скопировать код в буфер обмена
  1. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru-ru" lang="ru-ru">
  2. <head/>
  3. <body id="bd" class="bd fs3 com_content">
  4. 1359774552 1359774547 1359735417
  5. <script type="text/javascript">
  6. var siteurl='/';
  7. var tmplurl='/templates/ja_edenite/';
  8. var isRTL = false;
  9. </script>
  10. <base href="http://www.copyprof.ru/index.php"/>

Строка 4 - это выведенные цифры, а втрока 3 - откуда взялись.
Как найдешь - где такой класс создается - найдешь и откуда там цифры... Скорее всего, конечно, в темплейтах что то намудрили. или внедрили.
LShark Отправлено: 02 Февраля, 2013 - 17:08:10 • Тема: Идея авторизации. Ключевые файлы. • Форум: Прочее

Ответов: 26
Просмотров: 173
Мысль, конечно, любопытная, но все-таки файлик могут увести (тупо скопировав инфу с флехи) и все хитровывернутые "секретности" пойдут лесом.
Тогда нужно как минимум обеспечить невозможность "увода" картинки - а это проблематично.

И не надо писать "я никому не даю копировать с флехи". Сам видел такую фигню - программка мгновенно проходилась по папкам флешки и сдергивала оттуда ВСЕ файлы, размер которых был менее 2 мб (чтобы по быстрому).

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

И как тут быть?


Если ты женишься, а потом бежишь «налево», ты или неудачник, или придурок.
Извини, но могу толкьо предположить, что твой стаж "окольцевания" не превышает 5 лет. поговорим после %)
LShark Отправлено: 01 Февраля, 2013 - 09:07:40 • Тема: Работа с файлами по строчно • Форум: Вопросы новичков

Ответов: 4
Просмотров: 201
Только не File_Get_Contents, а File()

Уже поправил Улыбка
LShark Отправлено: 29 Января, 2013 - 21:09:59 • Тема: Помогите внести сессию в сессию, или ключ сессии • Форум: Вопросы новичков

Ответов: 19
Просмотров: 769
Если уж Вам так хочется присвоить переменной значение "Админ+Модер" или "Модер+Юзер", то передавайте по принципу суммирования:
0 - Гость
1 - Юзер
2 - Админ
4 - Модер

Тогда сумма этих значений и будет показывать права:
"Админ+Модер" = 2+4 = 6
"Модер+Юзер" = 4+1 = 5

Тогда чел с ПОЛНЫМИ правами (Юзер+Админ+Модер) = 1+2+4=7
Ну и Гостя пускать лишь туда, где права = 0.

Таким образом, вы всегда сможете сделать обратную раскладку:
Права - 4 >= 0 ? - Пускать в опции Модера
Остаток - 2 >=0 ? Пускать в опции админа
Остаток -1 =0 ? Пускать в опции Юзера
Остаток =0 - Пускать в опции Гостя (это всегда сработает, так как при вычитании останется 0 всегда, если рпавильное значение. Так что если остаток не 0 - попытка подмены).

Понимаю, что порнография, но вы, судя по коду, любитель порно Улыбка (как и я)
LShark Отправлено: 28 Января, 2013 - 14:03:45 • Тема: Выбор данных, совпадающих из двух массивов. Как ускорить? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 382
В целом - всем подходит. Просто вдруг есть оператор, позволяющий выдернуть из первого массива строки, используя как индекс значения второго массива?

Так как
PHP:
скопировать код в буфер обмена
  1. =(array_intersect($b, $d)); //где d - это второй массив

Как раз такой второй массив и создает.

А иначе, возможно, проще использовать первый вариант:
foreach по массиву с последующим
PHP:
скопировать код в буфер обмена
  1. $c=array_search("что_надо_найти",$b);
  2. echo $a[$c];


Сейчас буду экспериментировать, что жрет меньше ресурсов при максимально возможных вариантах (когда во втором массиве 99 пунктов для поиска из 100).
(Добавление)
Понятно.

Получается, что вариант:
$c=array_intersect($spisok_b, $pokaz);
foreach($c as $key =>$value) {
$adnod[$dn1].= $spisok[$key]."<br>";
}
выполняется при первом запуске 0,00412 (в среднем) и 0,00327 при повторных запусках.

вариант, использующий сразу перебор через
array_search - 0,00616 при первом и 0,00412 при повторных проходах.

И это при 1 блоке в 99 вариантов.

Уже при 3-х блоках:
array_search при первом проходе занимает уже 0.01052 sec и 0,00754 при повторных, а приведенный вариант:
0,00669 при первом и 0,00458 при повторных.

Вопрос решен.
LShark Отправлено: 27 Января, 2013 - 21:32:21 • Тема: Выбор данных, совпадающих из двух массивов. Как ускорить? • Форум: Вопросы новичков

Ответов: 5
Просмотров: 382
Вроде нашел алгоритм:
PHP:
скопировать код в буфер обмена
  1. $a=file("../kaf.info"); //Читаю первый массив из файла
  2. foreach($a as $key =>$value){ //Создаю новый массив, имеющий отдельно только ключи для сравнения
  3. $b[$key]=substr($value,0,2);
  4. }


А далее второй массив форичем перебираю, получая индексы совпадения. Их использую во втором массиве, получая полную строку, например:

(Добавление)
Как вариант:
$с=(array_intersect($b, $d)); //где d - это второй массив

Тогда в $c получаю ключи совпадения. Есть способ по этим ключам получить соответствующие этим ключам значения из Первого массива?

т.е. у меня на выходе:
$c = array(1,4,6,26);
Как теперь получить из первого массива значения с ключами 1, 4, 6, 26? Только форичем?

Страниц (16): В начало « ... 4 5 6 7 [8] 9 10 11 12 ... » В конец
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB