• ベストアンサー

配布した乱数をWEBから入力してログインする

DM等に10けたの乱数を印字して、その数字をWEBサイトから入力し正しい数値の場合のみログインさせて、アンケートや応募をしてもらうようにしたいのですが、その場合のWEBの構築の仕方を教えてください。 例えば「1234567890」と印字したはがきをもらった人が「1234567890」と入力してサイトから応募。 適当な数値をいれるとエラーとなるようにしたいです。 もちろん、事前に配布した10ケタの乱数は控えておき、その中の数値が入力された場合のみログイン可能としたいのです。

質問者が選んだベストアンサー

  • ベストアンサー
  • bardfish
  • ベストアンサー率28% (5029/17766)
回答No.1

その場合、単純な乱数だとデタラメに入力した場合でも一致してしまう可能性が高くなります。 そういう例外を排除するためにチェックサムなどを付加するのが一般的です。 チェックサム付き乱数を相手に通知することも、チェックサムは通知せずに入力した数値を受け取ったハーザー側で計算して整合性を確認する方法もあると思います。 後者の方法だとチェックサムの計算方法を知られるリスクが無いため秘匿性は高くなる。 いずれにしろ、配布した数値はサーバー側でデータベス化して比較チェックが必要。 RDBMSを使用してデータベース化してもいいし、単純なファイルに保存しておき入力した値からサーチするという方法もあります。 データベース化せず、チェックサムが一致したかどうかだけでアンケートに進む方式でもよいが、利用者を特定したいのならデータベース化は必須。 この辺は、アンケートでどこまで情報を得たいか。によって変わってくる。 いずれにしろ、CGI(プログラムを作成)で構築する必要があります。 乱数の作成はHTTPサーバーではなく、自分が普段使用しているパソコンで作成し、作成したデータのみをサーバーにアップロードして利用することも可能。

mihako261821
質問者

お礼

迅速な回答に感謝します。さらに質問です。 乱数はチェックディジット?により数値化します。 入力欄に入力された時点で、整合の判別(入力者にも「数値に誤りがあります」的な通知を表示)するには、サイトの構築でどのようなCGI?プログラム?がいいのでしょうか? そのようなサイト画面をホームページビルダーで作成はできそうですか?

関連するQ&A