2009-06-03 12 views
1

JavaScriptでHTMLフォームを暗号化する方法を探しています。これはユーザーに透過的に作用するはずであり、JavaScriptの入力検証もフォーム上で動作する必要があります(私はこれを行う方法を知っています)。ユーザーがフォームを送信するときは、再度暗号化して「AJAX」リクエストを使用してサーバーに送信する必要があります。PHPでHTMLの一部を暗号化し、JavaScriptで復号化する

編集:これは代替のCAPCHAシステムとして使用されるため、巧妙なデザインでない限り、スクリプトはフォームを送信できません。

編集2:これはブレーキがかかっていることを知っています。車のロックは制動可能ですが、まだ使用しています。それは究極のCAPTCHAではなく、最も永続的な人以外のすべてを追い払うスピードバンプです。

これはDRMと同じ問題があります

+3

暗号化スクリプトが誰にでも見られるようにするには、どうすればいいでしょうか? – Thinker

+0

私はあなたにもっと情報を与える必要があると思います –

+2

Ifあなたはスヌーパをやめようとしています。ユーザーを止めたいのであれば誰でもファイアバグを使うことができ、フォームを解読した行にブレークポイントを置いて、それがどのように見えるかを見ることはできません –

答えて

1

あなたがスパムを停止するためにこれを使用しようとしている場合、私はあなたのためにいくつかの悪いニュースを持っている:
The price of humans who'll spam blogs is falling to zero

これが現実です。私が走っているサイトでは、迷惑メールが流出していることを示すcaptchaシステムを設定しました。世界の貧しい地域からは約2ヵ所しか出てこなかったので、スパムに払う企業があるという疑いがありました。これをテストするために、特定の地域の人々が作成したアカウントを自分にしか見えないように設定し、アカウントが自動的に隠されているという事実を知らせるためにいくつかのコンテンツを投稿した。私は彼らに正式なユーザーであれば私達に連絡して不平を言うためのフォームを提供しました。これを実行すると、私たちはアカウントを隠していた怒っている人々から約10通の電子メールを受け取るようになりました。しかし、追加した内容をチェックすると、スパマーでした。それは狂ったように聞こえるが、残念ながら現在は人間が大量のスパムを処理しているようだ。スパマーは私たちがcaptchaを使うことを知っているので、彼らは適応しています。 :

CAPTCHAは、スパムを報告したり、ユーザーに管理者権限を与えることができるようにリンクを追加することで、フラグを立てると事前の確認なしに自動的にスパムを隠すようになります

4

ありがとう:ユーザーが暗号文を持っています。復号化はユーザのシステム上で行われるので、ユーザも鍵を持っていなければならない。ユーザーがキーと暗号文の両方を持っている場合、すべての暗号化は無意味です。

外部のスヌーパから安全にデータを送信したいだけなら、なぜSSL(HTTPS)を使用しないのですか?

+1

リバースエンジニアリングをしようとしている人それは彼らがあきらめるのに十分な長さです。 – cgp

2

base64を使用できます。

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

、その後、あなたが使用できるjQueryプラグイン:http://plugins.jquery.com/project/base64またはJavaScript http://www.webtoolkit.info/javascript-base64.htmlはそれをデコードします。

+1

これはエンコードだけではなく、「暗号化」ではありません。 – grawity

+1

はい、キーが表示されるようにするには、なぜエンコードシステムを使用するのですか?私は彼がボットや何かからHTMLコードを隠そうと思うと思う:) – sasa

+0

sasaが正しいです、それはボットがデータを収穫したりフォームを送信する(おそらく迷惑メールを含む)ための作業を難しくしています。 – Matic

0

キャプチャの場合、スクリプトを無効にする唯一の方法は、画像で何かを認識するか、数学を行うなど、人間が行うことができるものです。

ブラウザで行われたすべての復号化は、自動化されたスクリプトと同じように簡単に行うことができます。

関連する問題