NII IZNANKAIZNANKA.TECH · VPN
JA

NII Iznanka · AWG2 ベースのプロトコル

仕組み VPN

プロトコル、パケットの経路、キー、スフィア。宣伝抜きでありのままに。

00概要

裏側へのチャネル

NII Iznanka は、あなたのデバイスから私たちのサーバー(スフィア)までの暗号化チャネルを作ります。そこから先、インターネットへはスフィアから出ていきます。

  • プロバイダーや他人の Wi-Fi に見えるのはスフィアへの暗号化された通信だけで、サイトのアドレスや DNS リクエストは見えません
  • サイトに見えるのはスフィアのアドレスで、あなたのものではありません
  • チャネルのプロトコルは AWG2(AmneziaWG 2.0) がベース:WireGuard の暗号に DPI 対策の偽装を加えたもの
  • アクセスには NFVPN キーを使います。1 つですべてのデバイスに対応

01プロトコル

ベースは AWG2

私たちのプロトコルは AmneziaWG 2.0(AWG2) をベースにしています。WireGuard のオープンソースのフォークで、暗号と速度はそのままに、ディープパケットインスペクション(DPI)が WireGuard を見分ける特徴を隠します。

暗号:WireGuard と同じ

項目方式
鍵交換Curve25519、Noise IK パターン
チャネルの暗号化ChaCha20-Poly1305
ハッシュBLAKE2s
トランスポートUDP、スフィアごとに 1 ポート

偽装:AWG2 が加えるもの

普通の WireGuard は歩き方でばれます。ハンドシェイクは常に同じ長さで、制御パケットは同じバイト列から始まります。こうしたチャネルは復号されなくても遮断されます。AWG2 はこれらの特徴を崩します:

手法パラメーター効果
ハンドシェイク前のダミーJc, Jmin, Jmaxプロトコルに存在しないランダム長のパケットを送る
サイズへのランダムな追加S1 … S4制御パケットの長さが一定でなくなる
独自のヘッダーH1 … H4メッセージ種別が WireGuard と一致しない(AWG2 では範囲で指定)
シグネチャパケットI1 … I5セッションの始まりが他のプロトコルの通信に見える
▸ 個別の難読化
スフィアごとにこれらのパラメーターのセットが異なります。サーバーと同時に生成され、他では二度と使われません。あるスフィアから取った指紋は、隣では役に立ちません。

偽装はトランスポート自体に組み込まれているため、速度と遅延はほとんど変わりません。

02パケットの経路

ボタンからサイトまで

  1. 接続。アプリが選んだスフィアまで AWG2 チャネルを確立します。偽装付きのハンドシェイクの後、暗号化パケットをやり取りします。
  2. チャネルの中。デバイスのすべての通信(スプリットトンネル有効時は選んだアプリの通信)がチャネルに入ります。DNS リクエストも中を通り、スフィアで解決されます。
  3. 出口。スフィアがパケットを復号し、自身のアドレスからインターネットへ送ります。応答も同じ経路で戻ります。
  4. 撤収。切断すればチャネルは閉じます。Windows クライアントの Kill Switch は、チャネル確立中に通信が外へ漏れるのを防ぎます。

03誰に何が見えるか

正直な表

誰見えるもの見えないもの
プロバイダー、他人の Wi-Fiスフィアのアドレスに接続していること、時間と通信量サイト、DNS リクエスト、通信内容
スフィアチャネルが開いている間の接続元アドレス、パケットの送り先(どの VPN でも同じ仕組み)何も記録しない:サイトのアドレスも DNS リクエストも内容も
サイトスフィアのアドレスと、あなたが自ら伝える情報(アカウントへのログイン、Cookie)あなたの本当の IP
私たちキー、デバイス一覧、通信量カウンター、メールまたは Telegram IDどこへアクセスし、そこで何をしているか

データについての詳細:利用ポリシー。

04キーとデバイス

パス NFVPN

  • キーはサイトのマイページ(メール確認後)か Telegram ボットで発行されます。1 つですべてのデバイスに使えます
  • アプリはキーを URL ではなく HTTPS のリクエスト本文で送るため、他人のログに残りません
  • 初回接続時にデバイスが登録され、スフィアでそのデバイス専用の WireGuard 鍵ペアが生成されます
  • 鍵は暗号化(AES-256-GCM)して保管し、アクセスキー自体はさらにハッシュでも保持します
  • マイページかボットの「デバイスをリセット」で、すべてのスフィアの鍵ペアが一度に無効になります。キーはそのままです

05スフィア

私たちのサーバー

  • すべてのスフィアは私たちのもの。NII Iznanka チームが借り、設定し、ファイアウォールで守っています。他社のプールを転売することはありません
  • スフィアのエージェントが知っているのはデバイスの公開鍵とバイトカウンターだけ。DNS リクエストの収集機能は無効化・削除済みです
  • 速度は公平に分配されます。1 台が独占しないよう、デバイスごとに上限があります
  • スフィア同士は互いを知りません。1 つが落ちても他は動き続け、アプリが別のスフィアを提案します
  • スフィアのコード(1-1 AENSLAND、1-2 MANDALA …)はサイト、ボット、アプリで共通です

06アプリ

装備

プラットフォームチャネルの維持方法
Windowsサービスと Wintun ドライバー、Kill Switch、アプリ単位の除外
LinuxAppImage ひとつ、チャネルは pkexec で起動
Androidシステム VPN、アプリ単位のスプリットトンネル、起動時に自動接続
Steam Deckゲームモードで動く Decky プラグイン
iPhone, iPad, Macマイページから取得する AWG 設定ファイル(対応クライアント用)

07限界

VPN にできないこと

  • 自分のアカウントでログインしたサイトに対して匿名にはなりません
  • ブラウザのトラッカーや Cookie は防げません
  • デバイス自体のウイルスは駆除できません
  • 自分から話した情報は隠せません

08セキュリティ

脆弱性を見つけた?

security@iznanka.tech までご連絡ください。確認のうえお礼をいたします。同じチームが企業向けの監査とペンテストも行っています。詳しくはホームへ。