[PHP-users 17762]Re: 数字のみのBASE64エンコード
Osamu Shigematsu
m5issige @ mr.hitachi-medical.co.jp
2003年 9月 9日 (火) 14:21:52 JST
重松です。こんにちは。
> 会員の画像がデータベースに保存されていま
> して、その会員ID=画像をPHPが吐き出す処理をしています。
どういう DB の設計になっているのかよく分かりませんが、画像に ID って振っ
てないのでしょうか? ID があれば、振ればいいし、なければシリアルでも追加
したらいかがでしょう?
で、それを、文字に変換して、それと何らかのフレーズとを連結したもののハッ
シュでもつけて、適当な数字を入力できなくでもすれば、*それなり* に安全だ
と思います。
// sha1 が使えないなら md5 でも使う,
// 長ければ好きな桁で切り詰めればいい
$out_image_id = $image_id . '-'
. sha1("あいう$image_idえお");
// 受け取ったら...
list($image_id, $magic) = explode('-', $in_image_id);
if ($maigc != sha1("あいう$image_idえお")) {
die("変な番号かも\n");
}
会員 ID 自身公開して問題ない (と私はあまり思わない) のなら、そのままさら
してもいいんでしょうが。
--
Osamu Shigematsu <m5issige @ mr.hitachi-medical.co.jp>
PHP-users メーリングリストの案内