0

ユーザーに結果をメールで送信するクイズアプリを作成しました。ユーザーがクリックして結果の内訳を表示できる URL にリンクを含めたい。URL を次のようにしたい。

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

明らかに、リバース エンジニアリングが容易な id cos をハッシュすることはできません。ハッシュ値を比較するために SQL クエリを実行する必要があることを念頭に置いて、これを行うための次善の最も簡単な方法は何ですか?

4

2 に答える 2

1

各インスタンスにGUIDを割り当てることができますが、これはリバース エンジニアリングが不可能であり (レコードに依存していないため)、一意です。そこにあるものは、GUID にも少し似ています (つまり、ランダムに見えて判読できません)。

于 2009-08-03T07:58:29.843 に答える
1

SALT を使用して、より敬虔な sengineering を意識したハッシュを取得できます。

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

後でユーザーが URL にアクセスしようとすると、まず SALT を使用してハッシュを再度生成し、提供された URL のハッシュと比較します。

md5 は既にアルゴリズムが壊れていることに注意してください。SHA ハッシュ アルゴリズムの一部を使用します。

よろしく

于 2009-08-03T07:59:09.997 に答える