Зашифровать часть HTML в PHP и расшифровать в JavaScript - PullRequest
1 голос
/ 03 июня 2009

Я ищу способ зашифровать HTML-форму в PHP таким образом, чтобы затем можно было расшифровать ее в браузере с помощью JavaScript. Это должно работать прозрачно для пользователя, а проверка ввода JavaScript также должна работать в форме (я знаю, как это сделать). Когда пользователь отправляет форму, она должна быть снова зашифрована и отправлена ​​на сервер с помощью запроса «AJAX».

Редактировать: это будет использоваться в качестве альтернативной системы CAPCHA, поэтому сценарии не могут отправлять формы, если только у них не сложный дизайн.

Редактировать 2: Я знаю, что это тормозит, все есть. Автомобильные замки тормозные, но мы до сих пор их используем. Он не предназначен для того, чтобы быть абсолютной капчей, но ударом скорости, который прогонит всех, кроме самых настойчивых людей.

Спасибо

Ответы [ 4 ]

4 голосов
/ 03 июня 2009

Это та же проблема, что и с DRM: у пользователя есть зашифрованный текст. Расшифровка выполняется в системе пользователя, поэтому у пользователя тоже должен быть ключ. Если у пользователя есть и ключ, и зашифрованный текст, все шифрование не имеет смысла.

Если вы просто хотите безопасно передавать данные извне, они не могут просто использовать SSL (HTTPS)?

2 голосов
/ 03 июня 2009

Вы можете использовать base64.

<?php
echo base64_encode('html source');
<?

и затем вы можете использовать плагин jquery: http://plugins.jquery.com/project/base64 или javascript http://www.webtoolkit.info/javascript-base64.html для его декодирования.

1 голос
/ 04 июня 2009

Если вы пытаетесь использовать это, чтобы остановить спам, у меня для вас есть плохие новости:
Цена людей, которые будут спамить в блогах, падает до нуля

Это реальность. На сайте, который я запускаю, у меня была настроена система защиты от спама. Все, кроме 2, были из более бедных регионов мира, поэтому у меня были подозрения, что есть компании, которые платят людям за спам. Чтобы проверить это, я настроил учетные записи, созданные людьми в определенных регионах, только для них, и после того, как они опубликовали некоторый контент, чтобы предупредить их о том, что их учетная запись была автоматически скрыта. Я предоставил им форму, чтобы связаться с нами и жаловаться, если они были законным пользователем. Сделав это, мы начали получать около 10 писем в день от людей, рассерженных тем, что мы спрятали их учетную запись, однако после проверки добавленного ими контента они были спамерами! Это звучит безумно, но, к сожалению, сейчас, похоже, люди делают большую часть спама. Спамеры знают, что мы используем капчу, поэтому они адаптировались. (

CAPTCHA быстро становятся бесполезными (если уже не так). Добавление ссылки, позволяющей пользователям сообщать о спаме и имеющей уровни кармы, когда пользователям предоставляются привилегии администратора, так что их пометка приводит к автоматическому скрытию спама без предварительного подтверждения (как это делает stackoverflow), действительно является единственным эффективным способом остановить спам.

0 голосов
/ 03 июня 2009

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

Всякая расшифровка, выполняемая браузером, может быть легко выполнена автоматическими скриптами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...