ジャミのネットワーク
接続性
Jami relies on a distributed network, which brings multiple advantages when compared to federated networks:
失敗は意味がない
検閲に抵抗力がある
ユーザ以外の何かに依存しない
結び目間の信頼は必要ありません
This forms a Distributed Hash Table (DHT) network.
The core problem of distributed communication systems is peer connectivity. Jami achieves it through two elements:
Encrypted announcements on the DHT network,
NAT 穴穴打き用の標準プロトコルを使用する
ジャミは2つのネットワークで構築されています
分散接続の設置とメッセージの配布を目的としたOpenDHT kademliaネットワーク
共有された名前登録を提供するためにJAMINSブロックチェーン
OpenDHTネットワーク
参考
Visit the https://github.com/savoirfairelinux/opendht page for more information about OpenDHT. OpenDHT provides a distributed key-value datastore for connectivity establishment (with ICE) and message distribution in Jami.
OpenDHT ネットワークは,ネットワークに接続されているどのノードについても知ることで接続できます.このノードは,ネットワーク上の他のノードに関する知識を共有します.
ジュミクライアントは,最初のセッション後にネットワークに接続するために,持続的なノードキャッシュを使用します.設定可能,既知の,安定した"起動ストラップ"ノードが最初の接続に使用されます.またはキャッシュされたノードが応答しない場合.
Jami クライアントは現在,bootstrap.jami.net:4222 をデフォルト (設定可能な) bootstrap node とネットワーク ID 0 (デフォルト,公開 OpenDHT ネットワーク) として使用している.
OpenDHTネットワークへの貢献
ネットワークに貢献し,Jamiがスケールできるようにする OpenDHTノードが使われています.
ジャーミユーザーは,独自の安定したOpenDHTノードを実行して,ジャミでブートストラップノードとして設定することで,完全な独立性を獲得し,公共のOpenDHTネットワークのすべてのユーザーにとって安定性,強さ,回復力を向上させることができます.
OpenDHT に付属する [dhtnode ユーティリティ] (https://github.com/savoirfairelinux/opendht/wiki/Running-a-node-with-dhtnode) を使ってスタンドアロンノードを実行できます. dhtnode はデータも保存せず,デフォルト内存制限が 8 MiB です.
Stable community-run DHT nodes will be added to the default bootstrap server list at the request of their owner, as more bootstrap nodes means a more resilient, independent network.
注釈
To add a community-run DHT node to the default bootstrap server list, please email contact@jami.net.
ジャーミンスブロックチェーンは
ジャーミンスブロックチェーンは実験的であり,その建築は進化する見通しです.
ジャーミクライアントはブロックチェーンノードを自分で実行するのではなく,REST APIを使用して,名前登録およびクエリのためにHTTPを使用してJAMINSサーバーと通信する.これは,ブロックチェーンノードを実行するのに必要なリソースがほとんどのエンドユーザーにとってあまりにも高いためである.
The name server is set at the account level. This enables the Jami client to connect simultaneously to multiple user directories.
JamiNSブロックチェーンへの貢献
The default Jami name service is ns.jami.net, provided by Savoir-faire Linux Inc., connected to an Ethereum blockchain node; the goal being to give everyone the possibility (if they which so) to run their own blockchain node and HTTP service, mine some Ether, and use it to pay the transaction fee needed to register their username in Jami.
Code of the Ethereum contract, the blockchain genesis file, and the NodeJS module (HTTP server) can be found here.
ジュミノードを運営する
Prerequisites
ジャミ ネットワーク に 加盟
ジャーミネットワークへの接続プロセスは,通常のイーサリアムネットワークへの接続プロセスに似ているが,データディレクトリを初期化するためにジェネスファイルが使用されているという違いはあります.
Jami github repoからJami genesisファイルをダウンロードする
コンピュータでディレクトリを作成して ジャーミブロックチェーンのデータを保存します
Example for GNU/Linux (/home/username/jamichain)
Example for macOS (/Users/username/jamichain)
Windows の例 (C:\ユーザー\ユーザー名\ジャミチェイン)
/ geth --datadir /home/username/jamichain init genes is.json
を実行することで, geth を使って (2) で作成したディレクトリを初期化します.命令行オプションでJamiのブートノードを指定します
geth --datadir=/home/username/jamichain --syncmode=full --networkid 1551 --bootnodes "enode://11ba6d3bfdc29a8afb24dcfcf9a08c8008005ead62756eadb363523c2ca8b819efbb264053db3d73949f1375bb3f03090f44cacfb88bade38bb6fc2cb3d890a5@173.231.120.228:30301" console
これはジェミのネットワークと同期している 接続されたコンソールでゲーツデモンを起動します