Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Строка из mcrypt_encrypt, запись в бд
Все время ошибки вроде: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '?Z'?' at line 1
Поскольку функция возвращает строку, тип поля VARCHAR(255). Может '".$t."' надо еще как-то преобразовать?
Почему 3DES? Бессмертный ЯД рекомендует.
----- In Console We Trust. Code hard. Or die.
Hawkmoth
Отправлено: 12 Августа, 2012 - 13:46:45
Посетитель
Покинул форум
Сообщений всего: 329
Дата рег-ции: Янв. 2012
Помог: 6 раз(а)
Не работал с этой функцией, но
php.net пишет:
This function is deprecated and should not be used anymore, see mcrypt_generic() and mdecrypt_generic() for replacements.
А судя по ошибке, в сгенеренной строке проскакивает одинарная кавычка, которую бы надо экранировать.
Tox
Отправлено: 12 Августа, 2012 - 14:14:28
Посетитель
Покинул форум
Сообщений всего: 314
Дата рег-ции: Нояб. 2011 Откуда: Россия
Помог: 0 раз(а)
А как ее заэкранировать? Поиск по строке, замена ' на \' ?
1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'xS??E?X?L????????`,???z?%?????G^-e??Hfꥂ].ؘ^????P?y??????[????k7???q?y' at line 1
----- In Console We Trust. Code hard. Or die.
Мелкий
Отправлено: 12 Августа, 2012 - 14:20:20
Активный участник
Покинул форум
Сообщений всего: 11926
Дата рег-ции: Июль 2009 Откуда: Россия, Санкт-Петербург
Помог: 618 раз(а)
Tox пишет:
to use near '?Z'?
Судя по этому, функция возвращает бинарные данные. Экранирование где?
И тип поля в этом случае лучше BINARY или VARBINARY
----- PostgreSQL DBA
Tox
Отправлено: 12 Августа, 2012 - 14:23:23
Посетитель
Покинул форум
Сообщений всего: 314
Дата рег-ции: Нояб. 2011 Откуда: Россия
Помог: 0 раз(а)
Мелкий пишет:
Tox пишет:
to use near '?Z'?
Судя по этому, функция возвращает бинарные данные. Экранирование где?
И тип поля в этом случае лучше BINARY или VARBINARY
Я тоже так думал, но функция-то строку возвращает. BINARY не работал, писал "d2".
Для записи $c_t
Покинул форум
Сообщений всего: 329
Дата рег-ции: Янв. 2012
Помог: 6 раз(а)
Для начала mysql_real_escape_string($c_t) перед вставкой в базу
Tox
Отправлено: 12 Августа, 2012 - 14:39:16
Посетитель
Покинул форум
Сообщений всего: 314
Дата рег-ции: Нояб. 2011 Откуда: Россия
Помог: 0 раз(а)
Спасибо, с VARBINARY и mysql_real_escape_string все работает. (Добавление)
При дешифрировании опять "символы" стали появляться, после выборки из бд снова стал экранировать, но проблема не исчезла. Кстати, перед записью в бд экранирование не всегда работает.
Просто Яд настаивает на том, чтобы шифровать токены юзеров,причем в 3DES, кто-нибудь вообще токены шифровал?) Что самое интересное, ключи и "секреты" в коде шифровать не надо, там же и ключевое слово, а токены шифровать обязательно.
Я уже начал подумывать о написании своего алгоритма. (Добавление)
Забавно, но чтобы шифровать токены, нужна лицензия:
Российской Федерации коммерческая деятельность, связанная с использованием криптографических средств, подлежит обязательному лицензированию. С 22 января 2008 года действует Постановление Правительства РФ от 29 декабря 2007 N 957 «Об утверждении положений о лицензировании отдельных видов деятельности, связанных с шифровальными (криптографическими) средствами», которым приняты Положения о лицензировании деятельности по:
распространению шифровальных (криптографических) средств
техническому обслуживанию шифровальных (криптографических) средств
предоставлению услуг в области шифрования информации
разработке, производству шифровальных (криптографических) средств, защищенных с использованием шифровальных (криптографических) средств информационных и телекоммуникационных систем
Это из вики.
Сюда попадает шифрование данных юзера?
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.