SimpleX-Chat/docs/lang/ja/CLI.md
Miyu Sakatsuki b5e13f3630 add Docs-ja
translated README.md OK

translated ANDROID.md OK

translated CONTRIBUTING.md OK

translated CLI.md OK

translated SIMPLEX.md OK

translated WEBRTC.md OK
2024-03-30 15:43:24 +09:00

13 KiB
Raw Blame History

title revision
Terminal CLI 31.01.2023

| Updated 31.01.2023 | Languages: EN, FR, CZ JA |

Linux/MacOS/Windows用 SimpleX Chat ターミナル(コンソール)アプリ

目次

ターミナルチャット機能

  • 同じターミナルウィンドウで複数の人と1対1のチャット
  • グループメッセージ
  • 連絡先やグループへのファイル送信
  • ユーザー連絡先アドレス - 複数使用可能な連絡先リンクによる接続の確立
  • メッセージはローカルのSQLiteデータベースに保存
  • 自動入力される受信者名 - 接続が確立されたら、メッセージを入力するだけで送信者に返信可能
  • アプリ内で事前に構成されたデモ SMP サーバーが利用可能 - または独自のサーバーをデプロイすることも可能
  • グローバルIDや名前がサーバーに表示されないため、連絡先や会話の完全なプライバシーを確保さ
  • 2層のE2E暗号化デュプレックス接続にはダブルラチェット、X3DH鍵共有とエフェメラルCurve448キーを使用、SMPキューにはNaCl crypto_box、Curve25519キーを使用と受信者キーのアウトオブバンド受け渡し(SimpleXチャットの使い方を参照)
  • メッセージの整合性検証(前のメッセージの内容を含む)
  • 自動生成されたEd448キーによるSMPサーバーによる各コマンド/メッセージの認証
  • TLS 1.3トランスポート暗号化
  • SMPサーバーから受信者へのメッセージの追加暗号化により、トラフィックの相関性を低減

鍵共有に関与する公開鍵はIDとして使用されず、連絡先ごとにランダムに生成されます。

技術的な詳細については、使用される暗号化プリミティブを参照してください。

🚀 インストールガイド

クライアントのダウンロード

LinuxとMacOS

simplex-chatインストールまたは更新するには、インストールスクリプトを実行する必要があります。そのためには、以下のcURLまたはWgetコマンドを使用してください:

curl -o- https://raw.githubusercontent.com/simplex-chat/simplex-chat/stable/install.sh | bash
wget -qO- https://raw.githubusercontent.com/simplex-chat/simplex-chat/stable/install.sh | bash

チャットクライアントがダウンロードできたら、ターミナルでsimplex-chatコマンドを実行します。

または、以下のコマンドで、最新の安定リリースからシステムのチャットバイナリを手動でダウンロードし、実行も可能です。

chmod +x <binary>
mv <binary> ~/.local/bin/simplex-chat

(またはPATH上の任意の場所).

MacOSでは、Gatekeeperの実行を許可する必要があります。

Windows

move <binary> %APPDATA%/local/bin/simplex-chat.exe

ソースからビルドする

注意: アプリをビルドするには、stableブランチのソースコードを使用してください。

Dockerを使用する

Linuxでは、カスタム出力でdocker buildを使ってチャット実行可能ファイルをビルドできます。:

git clone git@github.com:simplex-chat/simplex-chat.git
cd simplex-chat
git checkout stable
DOCKER_BUILDKIT=1 docker build --output ~/.local/bin .

注意: version `GLIBC_2.28' not found というエラーが発生した場合は、haskell:8.10.7-stretchベースイメージで再ビルドしてください(ローカルの Dockerfileで変更してください)。

任意のOSでHaskellを使用する

  1. Haskell GHCup、GHC 9.6.3、cabal 3.10.1.0 をインストールします:
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | sh

ghcup tuiを使用して、GHCおよびcabalのバージョンを確認または追加できます。

  1. ソースコードのクローンを作成します:
git clone git@github.com:simplex-chat/simplex-chat.git
cd simplex-chat
git checkout stable
# 特定のバージョンをビルドする場合:
# git checkout v5.3.0-beta.8

masterは開発ブランチであるため、不安定なコードが含まれている可能性があります。.

  1. システムの準備:

Linux:

apt-get update && apt-get install -y build-essential libgmp3-dev zlib1g-dev
cp scripts/cabal.project.local.linux cabal.project.local

Mac:

brew install openssl@1.1
cp scripts/cabal.project.local.mac cabal.project.local

opensslの場所を指すように、cabal.project.localを修正する必要がある場合があります。

  1. アプリをビルドする:
cabal update
cabal install simplex-chat

使用方法

クライアントの実行

チャットクライアントを起動するには、ターミナルからsimplex-chatを実行します。

デフォルトでは、アプリデータディレクトリはホームディレクトリ(~/.simplexまたは %APPDATA%/simplex on Windows)に作成され、2つの SQLite データベースファイルsimplex_v1_chat.dbsimplex_v1_agent.dbが初期化されます。

データベースファイルに別のファイルパスの接頭辞を指定するには、-dコマンドラインオプションを使用します:

$ simplex-chat -d alice

例えば、上記を実行すると、カレントディレクトリにalice_v1_chat.dbalice_v1_agent.dbデータベースファイルが作成されます。

3つのデフォルトのSMPサーバーはLinodeでホストされており、アプリ内で事前に構成されています。

独自のSMPサーバーをデプロイした場合は、-sオプションを使用してクライアントを構成できます:

$ simplex-chat -s smp://LcJUMfVhwD8yxjAiSaDzzGF3-kLG4Uh0Fl_ZIjrRwjI=@smp.example.com

サーバーアドレスの前にあるBase64urlエンコードされた文字列は、TLSハンドシェイク中にクライアントによって検証されるサーバーのオフライン証明書フィンガープリントです。

デフォルトまたはその他のサーバーを使用して他のユーザーと会話することができます。これは、接続を開始するときのメッセージキューの場所にのみ影響します (また、応答キューは、相手のクライアントの設定に応じて、別のサーバー上に存在する可能性があります)。

simplex-chat -hを実行して、利用可能なオプションをすべて表示できます。

Tor経由でメッセージングサーバーにアクセスする

Torをインストールし、ポート9050でSOCKS5プロキシとして実行します。Macで実行する場合は以下の通りです:

brew install tor
brew services start tor

Tor経由でサーバーにアクセスするには、-xオプションを使用します:

simplex-chat -x

他のホストまたはポートで実行している場合、--socks-proxy=ipv4:portまたは--socks-proxy=:portオプションを使用して、SOCKS5プロキシのホストとポートを構成することもできます。

SimpleXチャットの使い方

チャットを開始すると、ローカルチャットのプロフィールを作成するための「表示名」とオプションの「フルネーム」を指定するプロンプトが表示されます。表示名は、あなたの連絡先があなたを参照するためのエイリアスです - これは一意ではなく、グローバルなIDとして機能するものではありません。あなたの連絡先の方が同じ表示名を選択した場合、チャットクライアントはそのローカル表示名に数字のサフィックスを追加します。

以下の図は、連絡先に接続してメッセージを送信する方法を示しています:

ローカル プロファイルを設定したら、/c (または/connect)と入力して新しい接続を作成し、招待状を生成します。 この招待状を他のチャネル経由で連絡先に送信します。

/connectを複数回入力し、接続したい対応する連絡先にこれらの招待状を送信することで、複数の招待状を作成できます。

この招待状は一度しか使用することができず、仮にこの招待状が傍受されたとしても、あなたのコンタクト先が接続の確立を確認すれば、攻撃者はこの招待状を使用してこのキュー経由であなたにメッセージを送信することはできません。招待フォーマットについては、エージェントプロトコルを参照してください。

招待を受け取った連絡先は、/c <invitation>と入力して接続を承諾する必要があります。これにより接続が確立され、双方に通知が送信されます。

その後、@<name> <message>コマンドを使用してメッセージを送信します。 メッセージの入力を開始して、最後に連絡した連絡先に送信することもできます。

使用可能なコマンドのリストを見るには/helpを使用してください。

グループ

グループを作成するには、/g <group>を使用し、/a <group> <name>で連絡先を追加します。#<group> <message>と入力することで、グループにメッセージを送ることができます。その他のコマンドについては/help groupsを使用して確認してください。

simplex-chat

注意: グループはどのサーバーにも保存されず、メッセージの送信先となるアプリデータベース内のメンバーのリストとして維持されます。

ファイルの送信

/f @<contact> <file_path>を使用してファイルを連絡先に送信できます。受信者は送信前にファイルを受け入れる必要があります。その他のコマンドは/help filesを使用してください。

simplex-chat

/f #<group> <file_path>を使用してファイルをグループに送信できます。

ユーザーの連絡先アドレス

1回限りの招待リンクの代わりに、/ad (/address)で長期的なアドレスを作成することができます。作成されたアドレスはどのチャンネルでも共有でき、他のユーザーが/c <user_contact_address>で連絡先リクエストを行うためのリンクとして使用できます。

/ac <name>/rc <name>コマンドを使用して、受信リクエストを承認または拒否できます。

ユーザーアドレスは、複数回使用可能な接続リンクという意味で "長期的 "に使用することができます。ユーザーが削除するまで使用することができ、その場合、確立された接続はすべてアクティブなままです(電子メールとは異なり、アドレスを変更するとメッセージを送ることができなくなります)。

その他のコマンドについては/help addressを使用してください。

simplex-chat