2009-08-03 19 views
0

私は結果をメールで送信するクイズアプリを作成しました。明らかにメイク/ハッシュされたURLパラメータ

http://www.mysite.com/quiz/view/32k4k2u4vxcv88xcv8cv0x98c9v7c7v8887cv

だけIDをハッシュすることはできません。私は、ユーザーがクリックすると、私はURLは次のようになりたいその結果の内訳を表示することができ、URLにリンクを含めます私はハッシュ値を比較するSQLクエリを実行する必要がありますので、このエンジニアをリバースエンジニアリングするのは簡単ですが、次のベスト、最も簡単な方法は何ですか?

+0

何もハッシュしないでください。 GUIDを生成します。秘密鍵としてGUIDをDbに格納します。 –

答えて

1

各インスタンスにGUIDを割り当てることができます。リバースエンジニアリングが不可能である必要があります(レコードに依存しないため)。あなたが持っているものは、GUIDのように見えます(つまり、ランダムに見え、読み込みができません)。

+0

ああ、明らかに、愚かな私... – brndnmg

1

あなたはSALTを使用してより多くの神聖化工学を認識できるハッシュを得ることができます。ユーザーがURLにアクセスしようとすると

define("SALT", "some random string .fsddf09asf9sd0-f9sd0-f9sd-0f9s0a-9f-");  
$hash = md5(SALT.$user_id); 

その後、第1の塩と、再びハッシュを生成し、指定されたURLのハッシュと比較します。

md5はすでに壊れていることに注意してください。 SHAのハッシュ・アルゴスを使ってください。

よろしくお願いいたします。