Sudoku

パラメータが多い新しいプロトコルで、内蔵の httpmask による HTTP 偽装層が特徴です。CDN やリバースプロキシ経由での利用も可能で、フィールドが細かいため必要に応じて調整してください。

設定例

config.yaml YAML
proxies:
  - name: sudoku
    type: sudoku
    server: 1.2.3.4
    port: 443
    key: "<client_key>"
    aead-method: chacha20-poly1305
    padding-min: 2
    padding-max: 7
    table-type: prefer_ascii
    httpmask:
      disable: false
      mode: legacy
      tls: true
      multiplex: off
    enable-pure-downlink: false

基本フィールド

key必須

sudoku で生成した ED25519 鍵ペアを使う場合はここに秘密鍵を入力してください。それ以外の場合はサーバー側と一致する uuid を入力します。

aead-methodオプション

chacha20-poly1305/aes-128-gcm/none から選択可能。none にしても sudoku の難読化層により安全性は保たれます。

padding-min / padding-maxオプション

最小/最大パディングバイト数。トラフィック特徴の分析を妨害するために使用します。

table-type / custom-table(s)オプション

table-typeprefer_ascii/prefer_entropy/up_ascii_down_entropy/up_entropy_down_ascii から選択可能。custom-table/custom-tables でバイトレイアウトをカスタマイズできます(x を2個、p を2個、v を4個含む必要あり)。entropy 方向にのみ有効で、通常は変更不要です。

enable-pure-downlinkオプション

下りの難読化を無効化(false)すると、データの安全性を保ちながら下り速度を大幅に向上できます。サーバー側の設定と一致させる必要があり、この場合 aead-methodnone にできません。

httpmask HTTP 偽装

httpmask.modeデフォルト legacy

legacy/stream/poll/auto/ws から選択可能。legacy 以外はすべて CDN・リバースプロキシ経由に対応しています。

httpmask.tls / host / path-rootオプション

modestream/poll/auto/ws の場合のみ有効:tls は https/http を強制、host は Host/SNI を上書き、path-root はトンネルエンドポイントの第一階層パスの接頭辞(両端で一致させる必要あり)。例えば aabbcc に設定すると /aabbcc/session/aabbcc/stream などのパスが生成されます。

httpmask.multiplexデフォルト off

auto は HTTP keep-alive/H2 接続を再利用して接続確立の遅延を減らします。on は単一のトンネル内で複数の宛先接続をマルチプレキシングします(stream/poll/auto のみ対応、ws モードでは強制的に無効)。