Ответы пользователя по тегу PHP
  • Передача и хранение CVV2, CARDHOLDER для бронирования гостиницы?

    shanker
    @shanker
    Нужен сертификат ssl? Как его получить? Какой проще получить? Как шифровать? Хранить у себя в mysql?

    Однозначно нужен! Чтоб клиенты не боялись указывать на Вашем сайте столь чувствительную информацию. Об этом говорилось в статье Шесть способов завоевать доверие ваших покупателей

    Как выбрать? А вот на хабре пара статей на тему:
    Цифровые SSL сертификаты. Разновидности, как выбрать?
    Как подобрать SSL-сертификат

    Насчёт выбора шифра — помочь не могу, увы. Вопрос требует специалиста в этой области, чтоб выбрать наиболее оптимальный под конкретную задачу. Могу прикинуть, что слишком уж криптостойкие шифры выбирать не стоит — не такая задача, чтоб ресурсы сильно на это тратитьб. Можно какой-то потоковый выбрать. Вы на PHP сайт писать собираетесь или как? Для записи в mysql рекомендую подумать над применением хранимых процедур. Это более безопасно, чем в открытую
    Ответ написан
  • Менеджер паролей php + https?

    shanker
    @shanker
    1. Асимметричное шифрование. Публичным ключом шифруете, закрытым ключом расшифровываете. закрытый можно у себя где-то хранить
    2. По-хорошему, HTTPS нужно использовать с валидным сертификатом. Тогда маловероятно что кто-то сможет провести атаку «человек посередине» незаметно от вас. Но на сертификат нужно потратиться
    3. Подобную идею я уже поднимал в статье. Вкратце: каждому браузеру даёте свои куки и так опознаёте их. Это сработает даже если у них будут одинаковые User-Agent. Кукисы генерите на основании типа браузера. Если вдруг злоумышленник украдёт куки от Хрома и поставит в свой огнелис — вы спалите его.
    Ответ написан
    Комментировать
  • Как реализовать авторизацию клиентского приложения?

    shanker
    @shanker
    Если исходники открыты, то единственный вариант — асимметричное шифрование с публичными ключами.
    Клиент и сервер обмениваются публичными ключами, секретные оставляют у себя.

    Реализаций много. Одна из возможных:

    1. Клиент соединяется с сервером, предоставляет ему свой публичный ключ
    2. сервер посылает клиенту вопрос, подписанный публичным ключом клиента
    3. клиент используя свой закрытый ключ выясняет вопрос сервера, решает вопрос и подписывает его публичным ключом сервера, передаёт серверу
    4. сервер применяет к ответу свой секретный ключ, тем самым снимая шифрование, и проверяет ответ. если всё ок — сервер считает, что клиент подтверждён.

    возможно то же самое, но в другую сторону для того, чтоб клиент проверил Сервер
    Ответ написан
  • Можно ли на уровне apache или php запретить upload любых не картинок?

    shanker
    @shanker
    Не совсем то, что Вы ищите. И не уверен, что сработает. Но если речь идёт о линуксовом сервере — можно попробовать права папке поставить на запись и чтение. И наследовать права файлам внутри папки.

    Помнится, у меня частенько с арендованными у хостера веб-серверами была проблема выполнения скриптов, пока скриптам и папке не выставлял права на выполнение
    Ответ написан
    2 комментария
  • Утечка памяти в PHP?

    shanker
    @shanker
    В добавок насчёт циклических ссылок могу порекомендовать не забывать использовать unset к переменным, которые уже не нужны
    Ответ написан
    Комментировать