0

ユーザーがターゲットユーザーのuser_idを含むボタンをクリックすると、このIDがDBにリクエスト行を作成する関数に渡される、単純な友達リクエストシステムがあります。

ユーザーが user_id を友達としてリクエストできるようにしたくありません。私が提案するものだけです。

したがって、user_id をマスクして、悪意のあるユーザーが自動ツールで番号を入力してリクエストを送信しないようにする方法が必要です。

簡単な掛け算のシステムを考えました。だから私は user_id * really_long_number を取り、リクエスト関数内よりも、同じ数で割ります。悪意のあるユーザーは、この really_long_number の値を知らないため、user_id を知りません。

したがって、次の場合:

user_id = 1
really_long_number = 12345678
key = 12345678

しかし、この戦略は最善ではないと思います。システムによって生成された十分な数を見ることで、非常に簡単に推測できます。

何を指示してるんですか?

4

1 に答える 1

0

必要なのは、各ユーザーの推測不可能な一意のキーであり、ユーザー ID の代わりにそれをボタンに渡します。myuniqkeyuserの作成時に次のようなもので埋められるようなフィールドを user テーブルに持つことができます:

hash('sha512', uniqid().'myappsecretpass'); 
于 2013-11-03T13:45:39.397 に答える