X



トップページ運用情報
1001コメント246KB
bbs.cgi再開発プロジェクト4
レス数が950を超えています。1000を超えると書き込みができなくなります。
0001桃太郎 ★
垢版 |
04/12/02 19:52:43ID:???
peko鯖の稼動によりボトルネックの一つである事がより明らかになった
bbs.cgi作り直しプロジェクトです。

開発環境の工事現場
また挑戦。@2ch掲示板http://dso.2ch.net/myanmar/

関連は>>2-
0855FOX ★
垢版 |
04/12/14 19:34:04ID:???
>>848のbbs.cgi が呼ばれるたびにの部分を変更

$FOX->{$GBX->{FORM}->{'bbs'}}->{MD5NUMBER} = &foxCheckMD5id(
$GBX->{FORM}->{'bbs'},
$GBX->{MD5DATE},
$FOX->{$GBX->{FORM}->{'bbs'}}->{MD5NUMBER},
$FOX->{MD5DATE});
$FOX->{MD5DATE} = $GBX->{MD5DATE};
0856FOX ★
垢版 |
04/12/14 19:34:27ID:???
あつっ

これじゃまずいか。。。
0857FOX ★
垢版 |
04/12/14 19:37:04ID:???
ん?
そうでもないか?

なんか今日は調子悪いなぁ
こんな日は飲んだくれるに限るか、

>>855 になってます
おかしいとこ指摘よろしく〜
0858FOX ★
垢版 |
04/12/14 19:55:01ID:???
ex9 にいれてみるー

今晩、観察しててね
0861動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/14 22:32:17ID:oYltBmUn
sub foxCheckMD5id
{
my ($bbs,$md5date,$num,$dateFox) = @_;
if($dateFox eq $md5date)
{
return $num;
}

my $md5datefile = "../$bbs/md5.cgi";
if(open(MD5FILE, "<$md5datefile"))
{
my $md5line = <MD5FILE>;
close(MD5FILE);
my ($a, $b) = split(/<>/, $md5line, 2);
if ($a eq $md5date) {
return $b;
}
}
return &foxCreateMD5id($bbs,$md5date);
}
0865動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/15 00:38:51ID:gwIGlcO3
ex9の格闘技板ですが、日付変わってもID変わってません。
0866FOX ★
垢版 |
04/12/15 05:37:18ID:???
さて
どこに隙があるんだ?

ex7は旧来のままなんで「気のせい」ということで
よろしく
0867動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/15 10:29:18ID:2HN9RP7L
>>866
どうせまたおまいがやったんだろ。
正直に言っちゃえよ、楽になるぞ。
0869
垢版 |
04/12/15 14:18:29ID:JexvqC49
 1)0時付近で変わっても気にしない
 2)自作自演昨日として宣伝
 3)Bananaはmaido3まで
0870FOX ★
垢版 |
04/12/15 14:22:30ID:???
>>861
ふむふむ

これにして今晩観察@ex9
0873某ソレ47 ◆ap/yuix/tw
垢版 |
04/12/15 17:33:45ID:9MQ67KRG
「IDは日付が変わるぐらいに変わります」でいいと思うけどな。
0874動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/15 17:44:55ID:w6sVvVK6
・FreeBSD 5.xなら/dev/urandomよりも/dev/randomのほうが良いかも

・種ファイルをhogehoge_date "+%Y%M%d"という感じであらかじめ23:55ぐらいに自動生成してもいいのかも
日付が変わる時のロックがいらない。

・ロックファイルを作るときに、openした直後にunlinkするというTipsがある。
プロセスが異常終了したらOSによりunlinkされるし、動作中はunlinkされないので便利。
ttp://ns1.php.gr.jp/pipermail/php-users/2004-November/024120.html
0879FOX ★
垢版 |
04/12/16 05:59:16ID:???
>>887
更新してからのタイムラグがあるという事ではなくて
実際に全然反映されていないですか?

もしタイムラグ(最大10分の設定)だったら
我慢できませんかねぇ?

全く反映されていない場合はなおすですー
でも今みると反映されているような、
0883 ◆MOMOwomoIk
垢版 |
04/12/16 08:29:08ID:BfLokOIn
887のレスに弊社の社運を感じる。
0885未承諾広告※ ◆TWARamEjuA
垢版 |
04/12/16 12:35:25ID:YtBnLjWr
>>884
65536種類に限定しているので、ごく希に違うホストなのに同じIDが出てアタフターな事が起こっているようなのです。
0886
垢版 |
04/12/16 14:01:03ID:jwRKr/sP
>885
もしIDが(1日,1板で)65536種類に限定されているとするならば、
2つの別々のホストから同じIDが出る確率は(1日あたり)次の通りとなる

住人数  確率
   2:  0.0015%
  50:  1.8523%
 100:  7.2784%
 150: 15.6881%
 200: 26.2109%
 250: 37.8447%
 300: 49.6112%
 400: 70.4809%
 500: 85.1681%
1000: 99.9529%

…………到底 'ごくまれ' とはいえないな
単に '気づかないことが多い' だけだったのか
0888FOX ★
垢版 |
04/12/16 14:20:53ID:???
ID 生成部変更するなら今がチャンス !!
この機械を逃がすと・・・ 二度と変更されないかもだ
0890某ソレ47 ◆ap/yuix/tw
垢版 |
04/12/16 14:25:05ID:WAdG0w73
perl分からないよう。
この際IDの桁数を増やすとかどうでしょ。
0891▲ 某ソレ511
垢版 |
04/12/16 14:56:50ID:wMv6nQa3
s/a/あ/g;

ごめんなさい冗談ですすいませんで
0894動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/16 17:46:11ID:LwK82nGE
>>ヤクザ
いや、同じになったら意味ないでしょ。凄いことになっちゃうぞ。

IDは12桁ぐらいがいいかなぁ。長すぎてもあれだし。
あとついでだから日付だけじゃなくて年月も入れようぜ。
0895FOX ★
垢版 |
04/12/16 17:52:30ID:???
ちなみに
毎月同じ日にちの日は同じIDになるという噂があるど、

本当なの?
そして、なぜそうなるの?
0899FOX ★
垢版 |
04/12/16 18:08:36ID:???
自分で書いたコードでさえ・・・なのに
いわんや・・・おや
0901動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/16 19:29:40ID:LwK82nGE
乱数の初期化が怪しいと思われ。
ちゃんとseed渡してるの?
(渡してないと毎回同じ乱数しか出ないかも)

と思ったら/dev/randomか・・・
0904未承諾広告※ ◆TWARamEjuA
垢版 |
04/12/16 22:39:23ID:YtBnLjWr
sub Make_ID($$$){
# 引数は・・・
# 板名
# time 値
# IPアドレス
# 返り血はID文字列
use Digest::MD5;
my ($BBS_name, $time, $IP_Address) = @_;
my $ID_2ch = Digest::MD5->new();
$ID_2ch->add(qx|uname -v|); # 鯖固有の文字列とか。
$ID_2ch->add($BBS_name); # 板のディレクトリ名ね。
$ID_2ch->add(int($time/86400)); # 純粋に日を基準単位に。
$ID_2ch->add($IP_Address); # 丸ごと豆乳。
return substr($ID_2ch->b64digest,-9,8); # ちょんぎるして戻るり。
}

・/dev/random にアクセスしないのでHDDにも優しいかな?
・uname -v の値を知っている人は、★の中の人「だけ」だと思うし。
・IDが被る確率は、遙かに少なくなっていると思うし。
・なんてったってアイドルだし(はぁと)
0906動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/16 22:49:36ID:45hy3iTA
>>904
それだとわからないのはuname -vだけ
(自分のIPやら日付やらpathやらはわかる)
だからIPからuname を総当りで求めて
検証が終わったらば他の人のIPも求まるだろう。
32ビット整数ぐらい割といける。

そのためのrandomですよ。
0908未承諾広告※ ◆TWARamEjuA
垢版 |
04/12/16 22:58:06ID:YtBnLjWr
>>906
> だからIPからuname を総当りで求めて
総当たりって!?うちの林檎機でもこれだけの文字列が出てくるけれども、、、

Macintosh:~ root# uname -v
Darwin Kernel Version 7.6.0: Sun Oct 10 12:05:27 PDT 2004; root:xnu/xnu-517.9.4.obj~1/RELEASE_PPC

あんぽんたんにでもわかりやすい解説キボンヌですm(_ _)m
0910動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/16 23:33:09ID:45hy3iTA
uname -v だと公開してしまうと
ある程度書式がありますよね。

FreeBSDなら
FreeBSD 5.1-RELEASE-p8 #0: Sat Sep 27 11:17:53 GMT 2003
見たいな感じで

頭から言うと
FreeBSDは変わらないし、
バージョンだって10.20とかないし、
RELEASEでないとしてもSTABLEとかあるていどきまってるし、
年月日では
月はAprとかDecとかしか入らないとか
曜日はSunとかMonだとか
などと考えると組み合わせの数は現実的になりますよ。
そうするとOS頻繁に変えるとかいうんでなければ解析は可能でしょう。

んでunameが割れると今度はそっちにあててIP解析もできるんじゃないかなぁと。

っと長い割には判りにくいかもです。すいません。
0914動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/16 23:52:59ID:JGTpjxlP
>911
unam -a は、かなりの頻度で後悔されてます。

http://www6.big.or.jp/~beyond/bbsnews/proxy/operate/1093068260/
の215とか
0915動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 00:31:03ID:hwJlyrsu
uname -aなんてホストごとの有効な違いが40bitぐらいしかないんじゃないの?

1024bitぐらい豪快にランダムのシードを用意しないとダメ。
パソコン数台で解析できる。
0917FOX ★
垢版 |
04/12/17 01:16:42ID:???
そもそも現在のやり方が決まった経緯は知っておいてくださいー
0919マァヴ ★
垢版 |
04/12/17 01:37:16ID:???
おいらかな?(^_^;)もしかして
0920マァヴ ★
垢版 |
04/12/17 01:41:24ID:???
1 旧IDはIPアドレスの特定が結構できてしまった
2 そこで新しくID生成ルーチンを作ろうと思った
3 しかしおいらにはそのスキルはなかった(^_^;)
4 どうせならルーチンを公開しても耐えられるもののほうがいいわけで・・・
5 スキルのある人よろしく・・・と公募した(ちょうどこのスレッドの展開みたいなもんですな(^_^;))
6 で、32bit総当り検索に耐えるために
  @非公開の鍵を使うことで、推定を難しくした(しかし、これだけではちと不安)
  AIPアドレスが違っても、ある程度の数の同じIDが出るようにした(つまりIPアドレスは特定不能)
って感じだったように覚えてます(^_^;)

って、そういう話じゃなくて?(^_^;)
0922マァヴ ★
垢版 |
04/12/17 01:55:47ID:???
>921
そゆことです(^_^;)なのである程度の重複は避けられないんだな。
0924動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 01:58:39ID:dhpgCm/v
ある程度っつっても相当稀なわけだし、構わないでしょ。
要は毎回呼ばれるような無駄な負荷を無くすのが今回の目的?
0925マァヴ ★
垢版 |
04/12/17 02:00:22ID:???
>924
多分・・・
1 ファイルオープンがもったいない(負荷軽減)
2 異月同日に同じIDが出てしまうらしいバグ対策
の2点かと(^_^;)
0928マァヴ ★
垢版 |
04/12/17 03:35:04ID:???
当時のおいらってなんか頭の回転よかったらしい(^_^;)
今や何を話しているのか理解できん
0929動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 04:33:43ID:PSEHRzSe
ひょっとして今起こっている「日付が変わってもIDが変わらない(ことがある)」ってのは
「異月同日に同じIDが出てしまうらしいバグ」の同工異曲かな?
今のIDルーチンには $md5->add(substr($DATE,6,2)); が入ってないから。
0931FOX ★
垢版 |
04/12/17 04:46:24ID:???
f1 , intro @ex9 を見てきたけど
md5.cgi の中は 2004_12_04<>xxxxxxx になっているようです
0933動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 05:27:08ID:hwJlyrsu
>IPアドレスが違っても、ある程度の数の同じIDが出るようにした(つまりIPアドレスは特定不能)

これって要するに
・まず自分のIPで書き込みをしてIDを出す
・出てきたIDと自分のIPでブルートフォース解析する
ってのに対処するため?

ブルートフォース耐性が最速のXeon Dual 1台で3年ぐらいの耐久度があれば多対1にする必要はないんじゃないかなぁ。
256bit AESあたりで落とし戸暗号化してしまえと。
IPアドレスは固定IPを持っている奴が解析するとして確定ずみ。
アルゴリズムも公知にしないと穴が怖い。

だから暗号鍵を256bitぐらいの大きさにしておけば良い、あらかじめ全部の暗号鍵をテーブル計算するのも難しいし。
なんだったら1024bit暗号にしておけば、世界中のHDDをあわせてもテーブル作れないし。
0934FOX ★
垢版 |
04/12/17 05:44:11ID:???
>>932

net@ex9 も

0004_12_16<>xxxxxxx の形になっているようです
0935FOX ★
垢版 |
04/12/17 05:45:13ID:???
>>933

〜〜をするためにってのも書いてもらえると
私にも理解できるかも知れません
0936マァヴ ★
垢版 |
04/12/17 06:13:03ID:???
>933
むずかしいことはよーわからんのだけど(^_^;)現在のIDは
1 秘密鍵はハッキング等によって取得される可能性がある
2 秘密鍵があれば、どのような経路をたどったとしても2^32の試行で結果が一致するIPアドレスをはじき出せる
3 IDの生成ルーチンは公開に耐えるものにする。
という前提で作られています。
結果
1 毎日変わる不定値の種を使う(最悪でも1日分の解析しかできない)
2 多対一に均等劣化した情報でIDを生成する(IPアドレスを特定できなくする)
という2つの防御策を組み込んだわけです。

前提条件の1、3については当時IDからIPアドレスが推定可能であったという
2chとしては致命的な欠陥が露呈した反動で厳しく考えていたということもあるかもしれません。
0937動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 06:31:45ID:hwJlyrsu
>1 毎日変わる不定値の種を使う(最悪でも1日分の解析しかできない)
えーと基本的には1は同意です。

2についてです。多対1をやめて暗号鍵のbit数を増やして1対1にすることで、
「別人なのに同ID」という不具合を回避できるのではないかと思っています。

>1 秘密鍵はハッキング等によって取得される可能性がある
についてですが、/etc/sshd/sshd_*_keyと同じ程度の危険性しかないと思います。
仮にハッキングに成功したとしても、24時間で更新されてしまうのであれば
IDからIPを現実的な速度で解析するチャンスはその日だけとも考えられますし。
(IP→IDへはSHAなりMD5なりのハッシュで一瞬のうちに計算できるが。
逆の方向はは2^32をすべて計算して一致するIDを求めるしかない。
そしてそのハッシュのシードは24時間で更新される)
0939動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 07:23:28ID:8XzIx/Kf
ひょっとしてバイナリデータを<>で読み込んでるせい?>異月同日に同じIDが出てしまうらしいバグ
\nが混じってたらそこでちょん切れちゃうもんね。
0943動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 08:44:55ID:HF3zdBbN
>>940
「別人なのに同ID」を回避するってことは
IDによる発言者特定能力を向上させるってことで
つまりあなたは「匿名性を今より下げろ」と言ってるわけで。
0946FOX ★
垢版 |
04/12/17 12:25:41ID:???
そのへんの話しは、、、
思想の問題ですからねぇ

別スレでじっくり話し合ってもらって
このスレでは実装の話しということで、

>>939
なのか?
0948動け動けウゴウゴ2ちゃんねる
垢版 |
04/12/17 14:37:54ID:f5F+79b8
板ごとに何かわからない鍵の部分が必要って事でしょ?
サーバー毎になると同じサーバー内の板を「神のIDキター」とか言いながら
走り回る奴が出ると。

サーバーが落ちた時にIDが変わってもいいのなら、
メモリの上に置くのが現実的かなぁ。
0949FOX ★
垢版 |
04/12/17 14:40:04ID:???
特に問題ないようなので
これで fix と、

次回は何年後かな?
レス数が950を超えています。1000を超えると書き込みができなくなります。

ニューススポーツなんでも実況