web-dev-qa-db-ja.com

隠しサービスの特定の.onionアドレスをどのように取得しますか?

.onionアドレスは通常、サーバーの秘密鍵のSHA1ハッシュの最初の80ビットのbase32文字列で構成する必要があります( 。onionアドレスの指定 を参照)。

今日、私は明らかに任意のアドレスを持たないサービスに遭遇しました: http://sms4tor3vcr2geip.onion/

それはどのように機能し、安全ですか?

53
user9651

Shallotは古いプログラムですが、現在利用できる新しい選択肢があります:

Scallion-GPUハッシュを使用します。NETまたはMonoが必要です: http://github.com/lachesis/scallion

Eschalot-単語リスト検索を使用、UnixまたはLinuxが必要: http://blacksunhq56imku.onion

Eschalotは、seedneedgoldcf6m.onion、hostbathdarkviph.onionなど、人間が読める長い名前を見つけることができます。

上記のパフォーマンスチャートは少し時代遅れです。8〜10文字の.onionは簡単に見つけることができます。

エシャロットが最初に浮上した当時、隠しサービスのカスタム名が悪いかどうかについての議論がありました。

問題番号1:生成されたキーは、TORによって生成される標準キーよりもはるかに大きな公開指数を持ち、TORリレーにいくらか高い負荷をかけます。

回答:リレーが絶えず実行する他の暗号化タスクと比較して、違いは無視できると結論付けられました。 eschalotでは、最大の公開指数は4294967295(4バイト)に制限されています。

問題その2:TOR開発者は、すべてのカスタム名をフィルタリングしてブロックすることを決定できます。

回答:はい、できますが、まだできていません。実際にそうする理由はありません。ランダム名の標準も同様に簡単に変更でき、ネットワークに混乱と大量流出を引き起こします。

問題番号3:生成された名前は簡単に偽装されます。訪問者がどこかでリンクをクリックすると、チェックせずに一見正しい.onionプレフィックスによって騙される可能性があるためです。全部。実例として、どれが本当のSilkRoadですか?

silkroada7bc3kld.onion
silkroadqksl72eb.onion
silkroadcqgi4von.onion
silkroady3c2vzwt.onion
silkroadf3drdfun.onion
silkroadbdcmw7rj.onion

回答:どちらも、問題を実証するためにそれらすべてを生成しました。それらがすべて偽物であると認識した場合は、おそらく私が気にかける以上にSilkRoadに多くの時間を費やしているでしょう:)。

公平に言うと、完全にランダムなアドレスはさらに悪いことです。誰かがオニオンリンクのwikiの1つを編集して、ランダムなアドレスを別のアドレスに置き換えると、そのwikiを使用するカジュアルな訪問者は違いを認識できません。

解決策:実際に訪問しているサイトに注意を払うかどうかは基本的にユーザー次第ですが、サイトの所有者は、完全にランダムな意味不明なものであっても、覚えやすい人が読めるアドレスを作成できます。長く、覚えやすく、識別しやすい限り。いくつかの例:

fledarmyusertvmu.onion
wifefeelkillwovk.onion
ladyfirehikehs66.onion
woodcubabitenem2.onion

私は意図的に良い名前を生成するために時間を費やさず、eschalotをテストした後に残したリストからいくつかを選んだだけです。 (非常に)大きなワードリストを使用すると、一意に見える名前を生成するのは簡単ですが、結果を調べて適切なものを手動で見つけるには時間がかかります。

まあ、それは私の意見であり、それは間違っている可能性があります。

-ヒロ

66
Hiro

ブルートフォースを使用して、必要なハッシュに部分的に一致するキーを見つけることができます。そのためのツールの1つが Shallot です。 Shallotのreadmeはセキュリティについてこれを言っています:

Shallotによって生成された秘密鍵は、Torによって生成されたものよりも安全性が低いと主張されることがあります。これは誤りです。 Shallotは異常に大きな公開指数eで鍵ペアを生成しますが、PKCS#1 v2.1(sane_keyで直接)で指定されたすべての健全性チェックを実行し、RSAを生成するときにTorが行うすべての健全性チェックを実行しますキーペア(OpenSSL関数RSA_check_keyを呼び出すことにより)。

Readmeから、Shallotでの生成にかかる時間を知るには:

1.5Ghzプロセッサで指定された数の初期文字で.onionを生成する時間:

キャラクター|生成する時間(約)
 --------------------------------------------- ---------------------- 
 1 | 1秒未満
 2 | 1秒未満
 3 | 1秒未満
 4 | 2秒
 5 | 1分
 6 | 30分
 7 | 1日
 8 | 25日
 9 | 2.5年
 10 | 40年
 11 | 640年
 12 | 10ミレニア
 13 | 160ミレニア
 14 | 260万年
9
Johan Nilsson

Johan Nilssonの回答に追加(コメントを投稿できないため):13文字の名前の.onion URLも作成されているようです。 このTorブログエントリ へのコメントは、13文字のタマネギについて言及していますURL:deeproadworksbwj.onion(接続しないでください。それが何であるか、またはそれが良いかどうかはわかりません)。

2
user3212853

私はそれらが単に秘密鍵の生成を総当りで強制し、望ましいプロパティを持たないものを破棄すると思います。

彼らが欲しかったと思うのは最初はたったの7文字なので、計算コストがかかりすぎないのではないでしょうか。

1
Tinned_Tuna

Eschalotのこれらのリンクは、この投稿の時点で最新です。

元のリンクは停止しているようです(2番目のエスカロットソースでも確認されています)。自分で検索したい場合:

1
serv-inc