2ちゃんねる互換P2P匿名掲示板の実装を考える 1

■ このスレッドは過去ログ倉庫に格納されています
2014/04/23(水) 23:29:44.09ID:k48oXhUz
このスレは「P2P型の完全匿名掲示板はまだ出来ないの?」スレからforkして生まれました
2ちゃんの代替となる2ちゃん型掲示板をP2Pで実装してみようぜ、なスレです
名前が長いので若干スレタイは変えましたファイル共有ソフト等の話題はスレ違いなのです

origin:P2P型の完全匿名掲示板はまだ出来ないの?その4
http://toro.2ch.net/test/read.cgi/tech/1390486453/

wiki
http://www34.atwiki.jp/p2p-anon/

[参考]

Tor(The Onion Router)のHidden Service(onionドメイン)Onionちゃんねる
http://xiwayy2kn32bo3ko.onion/ (Tor経由でのみアクセス可能)
Syndie - distributed forums
http://syndie.i2p2.de/
Freenet - P2Pコミュニケーションフレームワーク
https://freenetproject.org/

[関連するP2P掲示板ソフトウェア等]

新月 - P2P匿名掲示板
http://shingetsu.info/index.ja
P2P2ch
http://p2p2ch.web.fc2.com/
ちらしの裏
http://chiraura0.web.fc2.com/
alias
https://code.google.com/p/alias/
o2on
https://github.com/o2on/o2on
2014/04/24(木) 00:18:13.70ID:MtyH7A52
CO2
2014/04/27(日) 11:31:07.85ID:VMeX2lMv
とりあえずchord実装しようと思う
2014/04/29(火) 00:35:26.82ID:QpcbJXpT
ええな
2014/04/29(火) 00:51:21.14ID:c5fmhn8h
とりあえず服を着ようと思う
2014/04/29(火) 02:37:33.98ID:k0Pd9T1c
こっちでレスしておく。

>>http://toro.2ch.net/test/read.cgi/tech/1398178816/32
ならopenにでもotonaにでもいけばいいんでない?
こんなトコ見る必要ない。
>>http://toro.2ch.net/test/read.cgi/tech/1398178816/34
それはバックエンドにP2Pを使わないほうが良い理由にはならないな。
使わなくても良い理由にはなるかも知れんが、それだけでしかない。
>>http://toro.2ch.net/test/read.cgi/tech/1398178816/37
適当なノードがその場限りの鯖として振る舞えばいいというだけで、中央鯖は不要。
そもそも鯖役ノードってのが厳密に定まるバックエンドかどうかもわからんけど。
>>http://toro.2ch.net/test/read.cgi/tech/1398178816/39
P2Pが匿名なんじゃなくて、検証可能なクライアントプログラムが匿名性を提供するんだよ。
Torなりなんなり、匿名化の為のシステムを蔵側に用意させるなら結局インストールが必要。
HTTPの鯖蔵モデルだと、蔵が使うコードは鯖提供で検証不能なので、鯖がロギングし放題。
2014/04/29(火) 03:18:58.47ID:YSaKMYqx
>>520
C/C++ でまじめに malloc()/free(), new/delete の研鑽を積めばOK
学習教材としては、独習C++中盤の山場にある「文字列クラス」の車輪再発明がおすすめだね
2014/04/30(水) 13:58:25.03ID:lIJFNaX3
>>7
そんな道具の使い方みたいな初歩的な話はどうでもよい
2014/04/30(水) 14:00:03.19ID:lIJFNaX3
とにかくアイデアを出すことが先決だ。
実装はバグだらけでも富豪的でも良い。
後は実装のプロがなんとでもしてくれるだろう。
2014/04/30(水) 22:44:00.71ID:livyiFPX
じゃあ、アイデア

完璧な匿名性を持ったP2P掲示板

ほら、あとは実装しろ。
2014/04/30(水) 23:25:32.05ID:lIJFNaX3
>>10
バイバイ
2014/05/01(木) 01:45:14.52ID:esgHy3x7
P2Pにして匿名性を強固にしなかったら2ちゃんより酷くなるだろ
技術があれば誰でもトラッキングできる掲示板になると思うけどね
2014/05/01(木) 09:27:36.95ID:276dm0Cu
2chみたいに中央集権型掲示板ではひろゆきとかJIMとか
管理人の権利の主張やら、独裁削除人やらなんやら色々鬱陶しい。
荒らしやネットワーク攻撃対策に関しては中央集権独裁的に行うのではなく、
個人主義、自由主義に基づいた設計にすべきだ。
(リストを作るのも自由、自動的に適用するのも自由という具合に)
2014/05/01(木) 09:29:28.18ID:276dm0Cu
リアルの愚民どもや法曹・政治家共がゴチャゴチャ言い出すのも鬱陶しい。
リアルをせせら笑いながら自由にコミュニケーションできるネットワークが欲しいものだね。
2014/05/01(木) 17:20:12.78ID:7EhQIRwr
tor板でいいじゃん。
2014/05/01(木) 17:32:21.00ID:276dm0Cu
>>15
torで通常の方法で掲示板を設置した場合は匿名であっても中央集権的になるだろうが。
2014/05/01(木) 17:33:09.85ID:276dm0Cu
管理人や削除人が好き勝手出来る掲示板はダメだ。
2014/05/01(木) 19:29:31.49ID:s0t/V4/m
新月見るに需要があるとは思えない
2014/05/01(木) 19:59:31.09ID:276dm0Cu
新月は匿名でも純粋なP2Pでも無いし、ツールも使いにくいからな。
2014/05/01(木) 20:51:15.80ID:7EhQIRwr
新月が過疎ってるのは作者が閉鎖的に運用してるからだと思うが。
新月が純粋なP2Pではないと言うならば、純粋なP2Pとはどういうものか?
2014/05/01(木) 21:13:01.17ID:276dm0Cu
>>20
>閉鎖的に運用
作者の意向がネットワークに及ぶなら、それは自由なネットワークとは言えないね
2014/05/01(木) 21:14:36.64ID:rJbuD4Aj
新月の持っておきたくないものを選んで手放せるシステムは良いと思う
2014/05/01(木) 21:24:00.67ID:276dm0Cu
純粋なP2Pとは権威から自由であるということだ。
2014/05/01(木) 21:28:57.05ID:txn6O3jo
でもIDはほしい
2014/05/01(木) 21:34:14.42ID:276dm0Cu
例えば、誰もが(作者も含めて)同じ方法で平等に利用可能なソフトウェアがインストールされたサーバがあり、インターネット経由でしかアクセスできず、誰も近づけない場所に設置されている場合、その形態はp2pと言える。
2014/05/01(木) 21:35:54.01ID:7EhQIRwr
>>21
それはクライアントに依存すること。作者の意向に依存するのはどんなp2pソフトでも同じ。
新月プロトコルのようなものを作れば個人に依存することはなくなる。
2014/05/01(木) 21:45:18.90ID:s0t/V4/m
新月の作者は簡単に利用出来るように公開ゲートウェイまで設置してるし
閉鎖的な運用してるようには見えない
ただP2P掲示板の需要がないだけだろ
2014/05/01(木) 22:05:19.99ID:B1bUdh8+
需要はあるよ現に自分も使ってたしかしいかんせん使いづらい
ログの即時取得、2ch専ブラ対応、荒らし対策、携帯対応ぐらいやらないと
2014/05/01(木) 22:05:31.36ID:7EhQIRwr
>>27
以前は誰でもクライアントなしで閲覧できたが、最近はクライアントをインストールしないと閲覧できなくなっている。
理由は、P2P掲示板は2ちゃん型と比べて非常に重いということ。大勢からクライアント無しでアクセスを受けると簡単に落ちる。

確かにP2P掲示板は需要がない。
クライアントをインストールしないといけないし、常時接続での運用が基本でハードルが高い。
2014/05/01(木) 22:14:44.90ID:r0ZRtrW8
新月自体には需要はないだろう
ただp2pってだけで2ch以上なところが何もないからな
p2p掲示版への期待だけで持ってる感じ
2014/05/02(金) 05:50:38.49ID:CF7dLv5d
DNS分散の実装が必要だってことなんじゃないか?

新月の中の人は実況を知らなかったんだろうな。
皆の表現が一致したりしなかったりするダンスのような所が実況の味なのに、
それが十把一絡のスパム扱いではどうしようもない。
32461 ◆Of8OpFdQADOA
垢版 |
2014/05/02(金) 07:04:44.76ID:meKs6CjB
みなさんP2Pに求めているものがたくさんありますね。(悪いことだ言うつもりは毛頭ありませんよ)
自由であることは大事なことですが、それは哲学領域に取り敢えず留めておいて、実装では負荷分散と即時性の両立を狙うのが賢い落とし所ではないでしょうか。
考え方によっては、サーバクライアントモデルの拡張としてサーバ側を我々がP2Pで実現し、ふつうに何かのドメインに紐をつけて使っても立派なP2P掲示板ということになります。匿名性はやや犠牲になるでしょうが。
でも当分の間はクライアントをローカルで走らせるモデルが続くと思います。
自宅サーバをやってる人たちが使ってくれたら安定性に一役買ってくれそうなものですが、そのためにはこちら側からの良質なドキュメントなどの提供が必要だと思います。
そこも含めて開発できたらいいなと思っています。
2014/05/02(金) 08:16:20.41ID:CF7dLv5d
そういう事実上の切り捨てこそが一番の哲学なんだよ。
意見が一致したものから実装すればいいだけなのに、
最初に切り捨てから入るとゴリ押しに見えるのさ。
2014/05/02(金) 09:19:48.83ID:uOzfD9BM
P2Pはシステムの構造でなく、人の利用形態なのだよ。
2014/05/02(金) 09:29:05.39ID:uOzfD9BM
開発方針

フェーズ1.匿名性が高く汎用的なP2Pデータベース開発(分散ハッシュテーブルみたいな物?)
フェーズ2.掲示板の仕様とデータベースにぶち込むデータモデルを設計
フェーズ3.普及を想定した使いやすい閲覧ブラウザの開発
2014/05/02(金) 12:59:07.20ID:CF7dLv5d
>>35
それって段階の意味が全然ないよ。
確認しないまま実装すると確実に作り直しになって
折角作った意味がない場合にそれは必要なんじゃないか?
最初から2ch互換で匿名なのはわかっている以上、
その部分の完成を待ったり段階化する必要なんてサボる口実でしかない。
いいのがでてきたらいつでも差し替えられるようにすれば済む話だし、
むしろ好みで選択できたほうがいいでしょう。

必要なフェーズと言えば、こんなこともあろうかと的な応用にも対応できる
汎用仕様を作ることだけど、これも別になきゃ作れないものではないし、
適当に作ったものがデフォルト化する方が多いよね。
2014/05/02(金) 13:43:45.00ID:meKs6CjB
>>36
>それって段階の意味が全然ないよ。
>確認しないまま実装すると確実に作り直しになって
>折角作った意味がない場合にそれは必要なんじゃないか?
>最初から2ch互換で匿名なのはわかっている以上、
>その部分の完成を待ったり段階化する必要なんてサボる口実でしかない。

ウォーターフォールモデルとアジャイル開発の対立みたいだw
あまり厳密に設計すると融通が利かなくなりそう。割りにゆるく、それでいて引き締まった設計にしたい。
ただ、2ちゃん互換ってのは大前提になると思う。

>必要なフェーズと言えば、こんなこともあろうかと的な応用にも対応できる
>汎用仕様を作ることだけど、これも別になきゃ作れないものではないし、

YAGNIって云うよね。今必要でない機能は今は実装しなくていい。必要になった時に実装する。

ゆっくり改良していけばいい。
ただ開発者が足りないような感じもするなあ。個人的には一人じゃ寂しいなあと思うw
2014/05/02(金) 15:28:44.56ID:KxhRqmmx
モジュラーを意識しよう
Golangでやろうぜ
2014/05/02(金) 15:32:36.76ID:uOzfD9BM
go言語?一人でやってろ。
みんなで作ろう系はC++かJavaだろJK
2014/05/02(金) 15:52:55.90ID:KxhRqmmx
>>39
お前が勝手にやってろよ化石
2014/05/02(金) 15:53:48.23ID:CI+++snQ
P2Pって言葉がもう時代遅れで実体に合わない感じだな
有志による鯖のクラウド化をしたいと言う方が正しい感じがする
2014/05/02(金) 16:05:02.24ID:uOzfD9BM
>>40
go言語とC++のユーザー数の違いは分かりますか?オタク君
2014/05/02(金) 16:09:08.60ID:KxhRqmmx
>>41
その方向性でいいと思うよ
2014/05/02(金) 16:12:55.30ID:uOzfD9BM
>>41
AmazonEC2借りて従前の2ch鯖立てるだけでもクラウド化なわけだがw
2014/05/02(金) 16:15:12.74ID:uOzfD9BM
もちろん、そんな物作ったって、既にopen2chやひろゆきの新2chなどがあるわけで
何の新規性もない。
2014/05/02(金) 17:04:29.08ID:sbuiiAlk
個人的な想いですが、大きな震災が発生してもアクセスに耐え、ノードの急減に耐えられるようなシステムにしたいです。
TCP/IP自体がある程度の耐障害性をもって設計されていますし、アプリケーションがこれに応えることも悪くないと思うのですがどうでしょう?
2014/05/02(金) 17:18:09.67ID:CI+++snQ
>>44
おーぷんやscはAmazonEC2じゃないだろw

だがある意味それで十分な利用者もいるんだよね。特に2ch.netの方は非常に鯖が脆弱だから。

1. 鯖の堅牢性
2. 匿名性
3. 荒らし対策

2.と3.を両立させるのが難しい。P2Pにしたところで、第三者による追跡が可能になる訳で2.が保証される訳ではない。
ぶっちゃけtor板が大規模クラウドのvpsで提供されていたら匿名性と堅牢性の両方で申し分無いんだよね。
おもしろくないけどw
2014/05/02(金) 17:24:06.72ID:uOzfD9BM
>>47
仮にvpsにしてもtorにしても匿名性に関する危険性は現2chと同じ。
torに関しては鯖の所在を秘匿する手段としては使えるが、
情報漏洩の危険性は依然として残っているから、
現状より匿名性が高いとは言えない。
2014/05/02(金) 17:26:00.51ID:uOzfD9BM
さらに、管理者の裁量が大きすぎることも問題。
管理者が閉鎖したいと思えばいつでもできるし、
気に入らないレスを管理者が如何様にも操作できるという点も問題だ。
特別に大きな裁量を持った人間を置くべきではない。
2014/05/02(金) 18:05:35.80ID:CI+++snQ
結局、有志によるクラウド化に意味が出てくるわけだな。
torの匿名性が2chと同じってのは意味がわからんがw
2014/05/02(金) 19:25:07.26ID:uljkUnkD
>>41
申し訳ないけれども,「クラウド」はサーバーの存在を前提にしている時点で(現時点で最先端だとは思いますが)未来的ではないと考えています.
2014/05/02(金) 20:44:53.00ID:CI+++snQ
p2pと言ってもデータを持っているノードは常時接続でないとそのデータが利用できないので、実質的に鯖が存在するのと同じことだと思うが
鯖の存在を意識せずに利用するためには大規模なノードの参加によるデータの冗長化が前提になる
2014/05/02(金) 20:47:40.12ID:CF7dLv5d
>>41
まだ存在しない実体を適当に語られても困るんだな。
そういうクラウド実装を出してくるなら話は別だけど、
ただ、スレタイと実装が合わないなら結局2ch的には
スレ違いか乗っ取り扱いだろうなあ。
2014/05/02(金) 21:59:48.33ID:lkuUn+Js
>>52
DHTを実装するならノードの起動や終了に伴ってデータは自動的に移管されます。
少なくとも今書いている実装ではそうなっています。異常終了でない限りは。
完全にノードが0になればデータ消失のおそれがありますが、それは他のいかなるP2P掲示板でも生じうる事態ですし、誰かが予備を立てることで対処するとしましょう。
あと、素敵なIDですね。
2014/05/02(金) 22:03:53.47ID:uOzfD9BM
匿名で利用できるDHTができればファイル共有にも使える。
ファイル共有なら常時稼働するインセンティブになるからね。
そのネットワークに掲示板を間借りすれば良いというわけ。
2014/05/02(金) 22:09:25.70ID:KxhRqmmx
https://github.com/nictuku/dht
Go使おうぜ
https://github.com/laher/goxc
Write once, runs everywhere in native executableだぜ
2014/05/02(金) 22:24:05.47ID:uljkUnkD
今の乏しい理解の時点では DHT には否定的だな‥
参加ノードが時々刻々と変化するなかで、ハッシュ値に対してどのノードにキャッシュを置くのか?どのノードからキャッシュを取るのか、疑問は尽きない‥
第一、単純な DHT だったら、ある投稿単位を得るために、その投稿単位を所持しているノードに集中的にアクセスが集中するのでは?

それとも理解が足りないのか?
2014/05/02(金) 22:28:00.79ID:MCI6Hkq+
うわ、、、ここにもqzいんのかよ
邪魔だから消えろ
2014/05/02(金) 23:30:51.23ID:uljkUnkD
>>58
やだ!
2014/05/03(土) 00:00:32.41ID:v1U2AV4z
面白い感じに開発者が集まってきたな
俺もコテ使おうかしら、しかしほんま最近仕事忙しくて何もできてない
2014/05/03(土) 00:01:37.70ID:OPPs3lzA
sourceforgeでやれ
2014/05/03(土) 00:26:11.97ID:Pd384C+v
最近はGitHubでやるのが普通な模様
2014/05/03(土) 00:28:00.87ID:7Cx29wqw
オープンソース?
2014/05/03(土) 00:39:51.83ID:t3CXZaAV
>>57
私の実装の範囲で説明します。

>参加ノードが時々刻々と変化するなかで、ハッシュ値に対してどのノードにキャッシュを置くのか?どのノードからキャッシュを取るのか、疑問は尽きない‥

≪キャッシュ≫の意味がよく分かりかねます。
仮に≪DHTに保存されたデータ≫だとしてお答えします。DHTのアルゴリズムとしてChordを採用した場合、データに対して保存ノードは自動的に決定されます。詳しくはChordについてご参照ください。

>第一、単純な DHT だったら、ある投稿単位を得るために、その投稿単位を所持しているノードに集中的にアクセスが集中するのでは?

現時点の私の実装ではその通りです。
回避策として、多重にハッシュ関数を適用することによるラウンドロビンが考えられます。(Chordを用いているとします)

通常ではDHTに保存されるデータ:Vのアドレス:Kは、ハッシュ関数:Hを用いてK=H(V)として決定します。
ここでK[n]={H(V), H(H(V)), ... }で表せるように複数のアドレスを生成し、それぞれのアドレスに対応する複数のノードにデータを保存します。
データを読み出す際は、Kに上原付でランダムな回数だけHを適用し、得られたアドレスにデータを請求します。
これによりネットワーク負荷は分散されますがストレージの負荷は全体として増加します。
掲示板の機構とDHTの機構とは分離されるので、掲示板側からはこれを意識する必要はありません。

今考えたアルゴリズムなので瑕疵があるかもしれません。ご了承ください。
2014/05/03(土) 03:50:41.53ID:hbaIgB0n
>>57
キャッシュって言葉からしてny系P2Pに毒されすぎだよ。
DNSの浸透(≒DNS設定ミスによる不具合の別名)みたいな状態はムダでしか無い。

DHTの場合(例えばKなんとか)、データを保持するノードに到達するまでの距離が自動的に定まるし、
アクセス数の多いデータは複製数を上げれば集中が緩和されると同時にアクセス時間も減少する、筈。
2014/05/03(土) 05:20:18.12ID:kJWWkRZ3
>>55
使えてどうするのさ?
この板で作るなら開発者の為のソース共有辺りはあっていいけれど。

掲示リスクが増えたら掲示したい奴が余計減るよ。
別に常時じゃなくたっていまどきの雇用と同じでどうにでもなるだろ。
2014/05/03(土) 05:23:12.00ID:OPPs3lzA
思い思いに勝手な理想を語るだけで動く奴は一人もいない。
2014/05/03(土) 05:27:54.46ID:kJWWkRZ3
ライセンスの不備とIDが致命的なんじゃない?

実はレスのまとめを作るのさえ自己責任の同人扱いで要はfreeがないんだ。

人が集まっているのが2chのメリットなのに、IDのせいで住人層の薄さがハッキリでてしまい
ギブアンドテイクの期待ができない。

一般的にID識別というのは信用の為なのに、24時間という中途半端な期限では何の信用も積めないし、
積んだところでそんな釈迦に説法するのは敬遠されてしまって本人のトクにはならないね。
効果としてはレス待ちゲストによる気まぐれ支援を自粛させて瓢箪から駒の望みも奪ってしまうだけで、
互恵関係構築には全く役立たない欠陥品なんかを有難がるストーカー御用達って感じ。

自分にメリットがあると思えなきゃ誰も(書き込み)しない
という誰でもわかる基本を何故か皆忘れちゃってるんだよな。
2014/05/03(土) 13:47:44.68ID:a/u/kbPZ
違法な書き込みのリレーノードになってて警察が家にくる可能性のある掲示版を誰が利用するんだ
2014/05/03(土) 13:52:16.01ID:Y9TWu4Hw
>>69
キャッシュしない仕様であれば家宅捜索する意味が無いので、
裁判所は礼状を出さないよ。
71デフォルトの名無しさん
垢版 |
2014/05/03(土) 14:00:14.81ID:S8B6XMOo
テキスト情報共有ソフトなのだから
サイズが小さく、多くの複製を置くことができるから
あまり読まれないスレも素早く読めそうな気がするが
2014/05/03(土) 14:29:46.50ID:feMw6Ra8
>>68
>ID識別というのは信用の為

違うね、そのためにはすでにトリップがある。
君の説だと全員に強制的にトリップをつけることになるが、そうなると本当に誰もこなくなるだろう。
ID反対意見としては、今ひとつ説得力がない、もう少し脳細胞を使ってくれ
2014/05/03(土) 15:16:22.81ID:kJWWkRZ3
>>72
一般的なID識別の話をしてるのに2ch限定の用語と混同されても困る。
トリップは後付けの機能で昔は無かったよ。
2014/05/03(土) 15:57:40.01ID:eGpApgSQ
>>68
>実はレスのまとめを作るのさえ自己責任の同人扱いで要はfreeがないんだ。

Creative Commonsにしてみたいですね。

>ギブアンドテイクの期待ができない。

>一般的にID識別というのは信用の為なのに、24時間という中途半端な期限では何の信用も積めない

>自分にメリットがあると思えなきゃ誰も(書き込み)しない
>という誰でもわかる基本を何故か皆忘れちゃってる
個人的には登録制にすれば内容の質は上がると考えています。署名付き専用板などを作って棲み分けるようにしてもいいと思います。
2014/05/03(土) 16:09:47.03ID:UCtcrg1u
連投ごめん

匿名な掲示板は次のステージに進むべきではないのかと感じることがある。
匿名でも一定の品質が得られた時代は終焉し、ネット利用者の増加に伴う2ちゃんねるの利用者の質の低下が起こりつつある。

匿名は人間を無責任にする。
一度匿名での書き込みができれば、利用者はそれをさも当たり前だったかのように錯覚してしまう。
限られた人のみが使える匿名掲示板なら高い品質を確保することができたが、あらゆる人間が集まる場所で匿名での書き込みに品質を求めるのには無理がある。

初回起動時に自動で電子署名を作成し、電子署名がついた投稿を最初からするように設計すれば、それが当たり前にできるんじゃないかな。
明示的に署名を作る手間があるからそれを意識してしまうんだ。
2014/05/03(土) 16:27:56.64ID:kJWWkRZ3
品質とかそういうのは広告屋の発想だよ。
そんなものは利用者は求めていない。
千に三つ役に立つものがあれば、それは良スレだ。
2014/05/03(土) 17:50:48.64ID:iRDUo3cR
2chの全盛期を知らない人かな。
2chは昔、もっと人口が多かった時代のほうが高品質なレスが多かったよ。
その後、運営がデタラメな規制を繰り返した影響で大きく人が減って、質が落ちたんだよ。
2014/05/03(土) 18:42:50.27ID:kJWWkRZ3
単に人が減っただけなら消化速度が落ちるだけで質は変わらない。
よくある過疎スレだよ。

見捨てられるから質が落ちるのであって、その判断をさせてしまうのがIDだという事。
そもそも削除判断用だからね。
2014/05/03(土) 19:05:07.84ID:a/u/kbPZ
ネット利用者は増加してるけど2chの雑談系板以外の書き込み数は全盛期の半分以下まで低下してる
2014/05/03(土) 19:35:03.17ID:OPPs3lzA
で、こんな内容がプログラム技術板でやることか?
VIPでやったほうがまだましなんじゃないの。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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