Back to list
Skycoin BBS 開発 アップデート #1

Skycoin BBS 開発 アップデート #1

はじめに

BBSはBulletin Board Systemの略です。 伝統的なBBSシステムは既に広くは使われていませんが、現代のBBSはソーシャルサービスの象徴と言えます。

Skycoin BBSは、Skycoinエコシステムを使用して実装される最初のWebアプリケーションの1つです。 Skycoinはインターネットに革命を起こそうとします。インターネットを分散化し、デフォルトでプロトコルを暗号化します。

Skycoin BBSのプラットフォームは、CXO(Skycoinエコシステムの一部)というP2Pの自己複製型データベースです。 それは、Go言語オブジェクトの不変ツリー構造を特長としています。 すべてのオブジェクトは、定義されたスキーマと共に、それらのハッシュによって参照されます。 各ツリーにはルートオブジェクトがあり、公開鍵/秘密鍵のペアに対して署名されています。 またツリーを更新するために、ルートには「シーケンス」と呼ばれる増分バージョンがあります。 この設計により、高速かつ帯域幅利用効率の高いデータ複製が可能になります。

データ構造

Skycoin BBS(バージョン0.2 - 開発中)のデータ構造には、ボード、スレッド、および投稿が含まれています。 ボードやスレッドに投票することができます。 これがCXOツリー内のすべての外観です。

これは簡略化された図です。

送信されたすべてのオブジェクト(スレッド、投稿、投票)は、ユーザーの公開鍵と署名を使って検証されます。 各ルートには、単一のボードを表示/格納するためのデータが含まれています。 ボードページにはボード自体、スレッド、および投稿といった「コンテンツ」が含まれています。 スレッドは「スレッド」オブジェクトのハッシュによって参照され、同時に投稿は「投稿」自身のハッシュによって参照されます。 したがって、投稿とスレッドは一度送信すると変更できません。

スレッド投票ページ、ポスト投票ページはコンテンツの投票を保存します。 投票ページの”ref”フィールドには、質問のコンテンツのハッシュが含まれます。 ”Votes”フィールドには、指定されたコンテンツの投票が格納されます。 投票ページは、フロントエンドの「投票のビュー」を迅速に得ることができるストレージ構造の中にあるBBSノードによって「コンパイル」されます。

”Votes”は、投票ごとに変更する必要のあるツリーノードの数を減らすために、コンテンツとは別に保存されます。 それはまた、投票コンパイラによる投票データの操作を容易にします。

リリース

現在、Skycoin BBSの安定版は1つだけリリースされています。 機能は基本的なものですが、CXOのデータ構造は上記のものより複雑です。 コンテンツの追加と投票は、アクションごとに複数回、順次加算されます。

バージョン0.2のBBS(現在開発中)は、パフォーマンスとコードの明快さを向上させるだけでなく、次の新しい機能を実装します。

  • コンテンツロードの改善 - クライアントとサーバー間のWebSocket接続を利用して、リアルタイム更新とより効率的なコンテンツロードを可能にします。
  • コンテンツへの投票/閲覧の改善 - ユーザーの視点から実際のパフォーマンスと流動性の両方を改善します。スパムのレポートも予定しています。
  • 許可 - ボードは、誰が何を実行できるか(例えば、コンテンツの提出/投票)についての許可を設定することができます。 ユーザーをブロックする機能も利用できます。

参加する

私たちのTelegramグループに参加して、Skycoin BBSの最新情報を入手してください。 Telegram グループ.

Skycoin BBSはオープンソースです。gitリポジトリはここにあります。 here. バージョン0.2の開発は “v0.2"ブランチにあることに注意してください。