私のプログラムでは、ユーザーのIPアドレスをレコードに格納します。ユーザーにレコードのリストを表示するとき、他のユーザーのIPを譲渡したくないので、SHA1はそれをハッシュします。ユーザーがレコードをクリックすると次に、それは、このようなURLに行く:WHERE内のWHERE
http://www.example.com/allrecordsbyipaddress.php?ipaddress=SHA1HASHOFTHEIPADDRESS
は今、私はSHA1ハッシュに指定されたIPアドレスですべてのレコードを一覧表示する必要があります。私はこれを試しました:
SELECT * FROM records
WHERE SHA1(IPADDRESS)="da39a3ee5e6b4b0d3255bfef95601890afd80709"
しかし、これは動作しません。どうすればいい?
ありがとう、 Isaac Waller
なぜIPアドレス自体の代わりにハッシュを使用するだけですか? – Gumbo
この方法では、クエリを実行するたびにデータベース内のすべてのアドレスのSHA1を計算します。それは驚くほど遅く、膨大な量のCPUを使用します。 – blueshift