>>736 クッキー優遇措置をとるとすると、まずアクセス時にクッキーの有無や正当性をチェックすることになる。
その場合わけを書いてみたが以外に面倒だ。それに穴もありそう。
・クッキーがある場合
・その日発行予約をしたクッキー(ファイルに記録しておく)
・未発行
・予約時とIPが一致する
・時間が来ている→発行
・まだ→まだと表示
・予約時とIPが一致しない→クッキーがない場合へ(疑惑+1?)
・発行済
・発行時とIPが一致する→発行済のコードを表示
・発行時とIPが一致しない→発行済と表示、コードは表示しない
・その日の発行予約はまだだが、前日に使われたクッキー(ファイルに記録しておく)
・そのクッキーが使われるのがその日初めて
・前日発行時とプロバイダが一致する→即時発行
・前日発行時とプロバイダが一致しない
→そのクッキーを前日使われたクッキーリストから排除してクッキーがない場合へ(疑惑+1?)
・そのクッキーが使われるのが2度目以降
→そのクッキーを前日使われたクッキーリストから排除してクッキーがない場合へ(疑惑+5)
・それより前に使われたと思われるクッキー(コードに埋め込んだチェックサムなどで判別)
・正当な文字列→前日に使われたクッキーと同じ(ただし即時発行じゃなくて優遇発行)
・非正当な文字列→クッキーがない場合へ(疑惑+100)
・クッキーがない場合
・proxyチェック→proxyなら発行しない
・警戒対象プロバイダ→疑惑値+、あるいは発行しない
・既に発行しているIP→発行しない
・そのプロバイダに短期間でどれだけコードを発行しているかチェック
→クッキーがある人に対する発行数、ない人に対する発行数に応じて疑惑値+
・疑惑値0なら5分で予約、そうでなければ疑惑値に応じて長い時間で予約