Различия в типе ввода = & ldquo; text & rdquo; и тип ввода = & ldquo; submit & rdquo; в Chrome и FF / IE [дубликат]

Python использует случайное хэш-семя, чтобы предотвратить атакующие из tar-pitting вашего приложения, отправив вам ключи, предназначенные для столкновения. См. Раскрытие оригинальной уязвимости . Смещая хэш с случайным семенем (установленным один раз при запуске), злоумышленники больше не могут предсказать, какие клавиши будут сталкиваться.

Вы можете установить фиксированное семя или отключить эту функцию, установив PYTHONHASHSEED переменная среды ; по умолчанию это random, но вы можете установить его на фиксированное положительное целочисленное значение, при этом 0 полностью отключит эту функцию.

В версиях версии 2.7 и 3.2 Python функция отключена по умолчанию (используйте -R или установите PYTHONHASHSEED=random, чтобы включить его); он включен по умолчанию в Python 3.3 и выше.

Если вы полагались на порядок ключей в словаре Python или устанавливали, то не делайте этого. Python использует хеш-таблицу для реализации этих типов, и их порядок зависит от истории вставки и удаления , а также от случайного хэш-семени.

Также см. object.__hash__() специальная документация метода :

Примечание. По умолчанию значения __hash__() объектов str, bytes и datetime «соленые» с непредсказуемым случайным значением. Хотя они остаются постоянными в рамках отдельного процесса Python, они не предсказуемы между повторными вызовами Python. Это предназначено для обеспечения защиты от отказа в обслуживании, вызванного тщательно подобранными входами, которые используют наихудшую производительность при вложении dict, сложность O (n ^ 2). Подробнее см. В http://www.ocert.org/advisories/ocert-2011-003.html . Изменение значений хеша влияет на порядок итераций dicts, множеств и других сопоставлений. Python никогда не предоставлял гарантии об этом заказе (и обычно он варьируется между 32-битными и 64-битными сборками). См. Также PYTHONHASHSEED.

blockquote>

Если вам нужна стабильная реализация хэша, вы, вероятно, захотите посмотреть на модуль hashlib ; это реализует криптографические хэш-функции. Проект pybloom использует этот подход .

Поскольку смещение состоит из префикса и суффикса (начальное значение и конечное значение XORed, соответственно), вы не можете просто сохранить смещение, к сожалению. С положительной стороны это означает, что злоумышленники не могут легко определить смещение с тактическими атак.

5
задан Christopher Garcia 13 August 2009 в 22:08
поделиться

2 ответа

Попробуйте свойство вертикального выравнивания

input, button {
    vertical-align:middle;
}
7
ответ дан Joel 26 August 2018 в 22:28
поделиться

Хорошая вертикальная компоновка с display: list-item; в Выровнять вертикально входные элементы в div

Не повезло в Chrome / FireFox / Opera / Safari с vertical-align: …;

0
ответ дан devon 26 August 2018 в 22:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: