Relayium と croc の比較:ターミナルから暗号化転送
最終更新: 2026-07-31
croc はターミナル間でファイルを送る、最も愛されているツールの一つです。短く覚えやすいコードフレーズ、PAKE による鍵交換、それだけでちゃんと動きます。Relayium CLI も同じ仕事を目指し、同じ考え方で作られています。無料、オープンソース、エンドツーエンドで暗号化されており、アカウントが要るのは send がペアリングコードを発行するときだけです。
これは批判の記事ではありません。croc の評判はふさわしいものです。両者の共通点、Relayium CLI がすでに運用しているサーバーとも話せるために持つ追加の力、そして croc の方が正直シンプルな場合を、率直に比較します。
Relayium と croc の共通点
まず重なる部分から。実はかなり多いです。どちらも一度インストールすれば済む小さな単一バイナリで、完全無料で有料プランはなく、寛容なライセンスでオープンソース化されているため、ファイルに触れるコードをすべて読むことができます。
- 両端しか知らない短いコードだけで、互いを見つけ鍵に合意できます。croc のコードはその場で決めるもの、Relayium のコードはサインイン済みの送信者のためにサーバーが発行するもので、受信側は依然としてアカウント不要です。
- 転送中はエンドツーエンドで暗号化:間にあるリレーやランデブーポイントがファイルの中身を見ることは決してありません。
- 中断した転送は最初からではなく続きから再開でき、届いたものが送ったものと一致することも両者とも検証します。
- クロスプラットフォーム:macOS、Linux、Windows。
始める前に
以下はすべて relayium CLI なので、未インストールならまず入れてください。macOS または Linux では、1つのコマンドでビルド済みバイナリが PATH に入ります:
curl -fsSL https://relayium.com/install.sh | sh
- 自分でファイルを選びたい、または Windows の場合は、リリースページからバイナリを取得してください——relayium.com/cli にすべてのインストール方法があります(Go があれば go build -o relayium ./cmd/relayium も可)。
- relayium --version でインストールを確認できます。これをしないと以下のコマンドは「command not found」と出るだけです。
SSH と デーモン直結:すでに運用しているサーバーと話す
ここが実用上いちばん大きな違いです。croc は一つの流れを中心に作られています。コードフレーズを入れて、コードフレーズを伝えるだけです。Relayium CLI は、すでに持っているインフラを活かす2つの方法をさらに追加しています。
relayium push / pull は既存の SSH アクセスを再利用するため、新しく信頼するものも共有するコードもありません。push は relayium がまったくインストールされていないサーバーに対しても動作し、SSH 接続上の単純な tar ストリームにフォールバックします。このフォールバックは push 専用です。pull は常にリモートに relayium が必要です。そこでは pull が送信側として動作するためです。
relayium serve は、所有する任意のマシンを デーモン直結 のターゲットに変え、証明書ピンニング付き TLS 1.3 経由で、SSH もコードフレーズもなしにアクセスできます。信頼は最初の接続時に成立し(対話的に承認するか、無人運用向けに事前承認しておく)、以後は証明書がピンニングされます。SSH のホスト鍵と同じ考え方です。
relayium push ./photos user@your-server:backups/
relayium serve --dir ~/incoming
relayium push ./build relayium://your-server
フォルダ同期と、二重に確認する検証コード
croc はファイルのバッチを送って終了します。相手側を更新するには再度送るしかなく、何を削除すべきかという概念もありません。Relayium CLI は relayium sync を追加し、上記どちらの転送方式の上でも動く増分の一方向ミラーリングを行います。変化した分だけを送り、--delete はソース側から消えたファイルを宛先側からも削除します(daemon は --allow-delete 付きで起動している場合のみこれに従うため、受信側が自らオプトインする必要があります)。--watch はファイルの変化に応じてリアルタイムに再同期し続け、cron ジョブは不要です。
一回限りのネットワークをまたぐ転送では、relayium send / receive が croc のコードフレーズと同じ役割を果たし、短いコードで2台のコンピュータをペアリングします。直接の P2P で行われ、両端に短い検証コード(ショート認証文字列、SAS)を表示します。帯域外で照合すると、固定された TLS 証明書フィンガープリントが差し替えられておらず、ランデブーサービスがどちらのエンドポイントにもなりすましていないことを確認できます。これはエンドポイントを認証するもので、ネットワーク経路上のすべてのホップを証明するものではありません。このモードは直接接続専用なので、両端が直接経路を見つけられない場合はリレーにフォールバックせず、そのまま失敗します。
relayium sync ./photos user@your-server:backups/photos --delete --watch
croc の方がシンプルな場合
croc の方がその仕事に向いている、本当のケースもあります。率直に述べる価値があります。
- 今すぐ1つのファイルを友人に渡したいだけで、手間は最小限にしたい。到達すべきサーバーも不要で、両端で何かを設定する必要もありません。
- 厳格な NAT の内側にいて直接経路を開く方法がない:croc のリレーはどのみち暗号化ストリームを運ぶので、転送はいずれにせよ完了します。Relayium の send / receive は直接接続専用で、その状況では失敗し得ます(push/pull や、到達可能なサーバーへの デーモン直結 は直接 P2P のホップに依存しないため、引き続き使えます)。
- フォルダのミラーリングも SSH との統合も、長時間動き続けるリスナーも必要ない。croc は各端で1つの即席コマンドだけで、他に考えることはありません。
- croc の大きく成熟したコミュニティと長年の実運用実績をすでに信頼している。
機能の一覧比較
最も重要な違いを並べて示します。
- サーバーとの対話:Relayium は SSH アクセス(push/pull)または証明書ピンニング付き TLS の daemon を再利用します。croc には SSH との統合がなく、両端に croc をインストールしてコードフレーズを共有する必要があります。
- フォルダ同期:relayium sync は --delete と --watch を伴う増分ミラーリングを行います。croc はバッチを送って終了し、ミラーや削除の概念はありません。
- 直接経路がない場合:croc のリレーは暗号化ストリームを運ぶので転送は完了します。Relayium の send/receive は直接接続専用です。
- 検証:どちらもエンドツーエンドで暗号化されます。Relayium の send/receive はさらに、転送開始前に双方が照合する短いコードを表示します。
- セルフホスト:どちらもセルフホスト可能です。croc のリレーは小さな単独バイナリで、Relayium のサーバーはウェブアプリも動かしており、CLI の send/receive も --server で自分のインスタンスを指定できます。
- ライセンスと費用:どちらも AGPL-3.0 ライセンスで完全に無料です。croc はアカウントが一切不要で、Relayium はペアリングコードを発行する send にだけ必要です。
よくある質問
Relayium の CLI は無料ですか?
はい、完全に無料です。有料プランはなく、計測するものもありません。どのモードでも両端が直接つながり、CLI は AGPL-3.0 ライセンスでオープンソースです。
アカウントは必要ですか?
send と、クラウドの up で必要です。push/pull は自分の SSH アクセスを使い、デーモン直結 はマシン間のピン留めされた TLS 証明書の信頼を使うので、どちらも Relayium アカウントには触れません。send/receive は例外です。ペアリングコードを発行できるのはサーバーだけで、しかもサインイン済みのアカウントに対してだけなので、送信側は一度 relayium login を実行します。相手から渡されたコードを指定した send は発行を行わないのでログインは不要です。受信側にアカウントは決して必要ありません。
CLI のペアリングコードは Relayium のブラウザ版と使えますか?
現時点ではリアルタイムのペアリング転送はできません。CLI の send/receive は独自の直接ハンドシェイクを使っており、ブラウザの WebRTC ベースのペアリングフローとは別物なので、今は相互運用できません。ブラウザだけを使って相手にファイルを渡したい場合は、Relayium の保存型ダウンロードリンクか、ブラウザ版自体のペアリングコードモードを使ってください。
セルフホストできますか?
はい。Relayium のサーバーは Docker イメージとして配布されており(docker compose up -d --build)、CLI の send/receive も --server https://your-domain で自分のインスタンスを指定できます。自分で croc のリレーを運用するのと同じ発想です。
無料の Relayium CLI をインストールして push、sync、send を試してみましょう。完全無料で、croc と同じくらいすぐに始められます。
CLI を入手