Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (5)

Наибольший вклад в теги

Все теги (135)

Лучшие ответы пользователя

Все ответы (364)
  • Как перевести пароли с md5 на bcrypt?

    @alexalexes
    Сморите по регламенту сайта, каков официальный срок действия пароля (если нет такого, то определяетесь с этим).
    1. Создаете в базе новое поле под bcrypt пароль, а также дату смены пароля.
    2. Делаете авторизацию использующую как md5, так и bcrypt если последняя задана.
    3. Разрабатываете систему оповещения для пользователей, у которых истек срок действия пароля.
    4. Ставите дату пароля такой же как и дату регистрации пользователя, если не использовали это раньше.
    5. При смене пароля пишете только bcrypt, md5 не используете, лучше сделать поле-флаг, что пользователь менял пароль уже по новой технологии.
    В течение пару периодов срока действия пароля будет постепенный переход на новый хэш.
    Активных пользователей придется как-то стимулировать, чтобы сменили пароль.
    Неактивные будут восстанавливать пароль, например, по email, если они вернутся на ваш ресурс и вы решите когда-нибудь больше не поддерживать md5 хэш.
    PS: Принудительно заставлять менять пароль пользователю - это не самый оптимальный вариант. Заменяйте хэш пароля по новому алгоритму, как только получили от пользователя исходный пароль, который валиден по старому алгоритму, например, в процессе авторизации.
    Ответ написан
  • ОЗУ из Ноутбука в ПК, возможно ли?

    @alexalexes
    ОЗУ - возможно.
    Недавно заказал себе такой адаптер, так как 2 * 4 Гб планки валяются без дела.
    Продать - только за бесценок можно, а в хозяйстве пригодятся.
    Ответ написан
  • Как пропускать трафик через сайт МТС, чтобы он не тратился?

    @alexalexes
    Если у вас есть человек в компании, кто развернет для вас личный прокси-сервер, то почему бы и нет.
    А так - нет.
    Ответ написан
  • Можно ли избавиться от setInterval?

    @alexalexes
    Геттеры и сеттеры.
    Только если ваша переменная является свойством объекта, тогда вы можете задать свою set-функцию, которая не требует от остальной части скрипта какой-то модификации.
    На глобальной переменной my_var делается это так:
    Object.defineProperty(window /*- объект, где располагается свойство */, "my_var" /* - свойство, которое нужно опекать */,
    {
      get: function() // сторожим чтение значения
      {
        alert('Кто-то прочилал my_var!');
      },
      set: function(newValue) // сторожим запись значения
      {
        alert('Кто-то записал my_var! Новое значение: ' + newValue);
      }
    });
    my_var = 123456;  // пробуем записать что-то
    you_var = my_var; // пробуем извлечь значение
    Ответ написан
  • Как защищится от sql инекции без ооп в php?

    @alexalexes
    А причем тут боязнь ООП?
    В документации описаны, как прикрепить параметры к запросу как в объектно-ориентированном стиле, так и в процедурном. Реализовать общение с СУБД можно и в том, и в другом стиле, если речь идет про MySQl.
    php.net/manual/ru/mysqli-stmt.bind-param.php

    PS: Вы просто боитесь усваивать документацию, пробовать различные примеры реализации. Вот и все.
    Ответ написан

Лучшие вопросы пользователя

Все вопросы (5)