Skip to content

Sudoku

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
    # custom-table: xpxvvpvv
    # custom-tables: ["xpxvvpvv", "vxpvxvvp"]
    # multiplex: "off"
    httpmask:
      disable: false
      mode: legacy
      tls: true
      host: ""
      path-root: ""
      multiplex: "off"
    enable-pure-downlink: false

Common fields

key

If you use an ED25519 key pair generated by sudoku, fill in the private key from that key pair. Otherwise, fill in the same UUID as the server.

aead-method

Available values: chacha20-poly1305, aes-128-gcm, and none. Using none is discouraged because it provides no AEAD protection.

padding-min

Minimum padding ratio, from 0 to 100.

padding-max

Maximum padding ratio, from 0 to 100. It must be greater than or equal to padding-min.

table-type

Available values: prefer_ascii, prefer_entropy, up_ascii_down_entropy, up_entropy_down_ascii.

custom-table

Optional custom byte layout. It must contain 2 x, 2 p, and 4 v characters in any order. It only takes effect for the entropy direction.

custom-tables

Optional list of custom byte layouts (x/v/p). If non-empty, it overrides custom-table.

multiplex

Optional: off (default), auto (reuse only the underlying HTTPMask connection), on (enable Sudoku single-session multi-target mux over raw TCP or HTTPMask).

httpmask.disable

Whether to disable all HTTP masking/tunneling.

httpmask.mode

Optional: legacy (default), stream, poll, auto, ws. stream/poll/auto/ws support CDN or reverse proxy usage.

httpmask.tls

Optional. Only takes effect when mode is stream/poll/auto/ws. true forces HTTPS; false forces HTTP and does not infer from the port.

httpmask.host

Optional. Overrides Host/SNI and supports example.com or example.com:443. Only takes effect when mode is stream/poll/auto/ws.

httpmask.path-root

Optional. First-level path prefix for the HTTP tunnel endpoint. Both sides must match. For example, aabbcc maps to /aabbcc/session, /aabbcc/stream, /aabbcc/api/v1/upload, and /aabbcc/ws.

httpmask.multiplex

Legacy-compatible setting. If set, it takes precedence over the top-level multiplex.

Selects the downlink mode: false uses bandwidth-optimized downlink, while true uses pure Sudoku downlink. This setting must match the server.