Skip to content

Whispr v1.1.14 — Whispr v1.1.14 — Tor bridges (vanilla)

Choose a tag to compare

@pointbreaklab-byte pointbreaklab-byte released this 07 May 16:23
· 75 commits to main since this release

New: Tor bridges

Settings → Network → Bridges. When Tor is blocked or filtered on
your network — common in India, Iran, China, restrictive Wi-Fi — you
can now route through unlisted entry points (bridges) instead of
public Tor relays.

How to use

  1. Get bridge lines from
    bridges.torproject.org or the
    Tor @GetBridgesBot on Telegram.
  2. Settings → Network → toggle Bridges on.
  3. Paste one bridge per line into the text field.
  4. Tap Apply & reconnect.

Tor restarts using the new config and connects through the bridges
instead of trying public relays. Toggling Bridges off restores
default behaviour.

Default is OFF — users who already have working Tor see zero change.

Scope of v1.1.14: vanilla bridges only

This release supports vanilla bridges — unlisted Tor relays that
help against IP-list-based blocking (e.g., ISPs that maintain a
blocklist of known public Tor relay IPs). It works for some Indian
and Iranian carriers.

It does not yet support pluggable transports like obfs4, which
disguise Tor traffic as random TLS to defeat deep packet inspection
(DPI). Networks doing DPI-based Tor fingerprinting (parts of China,
Russia, and increasingly India) need obfs4. That follows in v1.1.15
once IPtProxy integration is tested on a real device — shipping it
without verification would risk breaking Tor for every user, not
just the ones that need bridges.

Implementation notes

  • Bridges config is persisted in SharedPreferences
    (bridges_enabled, bridges_lines).
  • MainActivity.prepareTorConfig reads those keys directly when
    building torrc and emits UseBridges 1 + one Bridge <line>
    per non-empty entry. Comments (# ...) are ignored.
  • Apply triggers a Tor restart via the existing securechat/tor
    MethodChannel.

Verification

  • Architecture: arm64-v8a
  • Signed: release keystore (CN=Whispr)

SHA-256: 8a325268a912c386a54e05324526b287f1533b3fab1a92090bfbb50d16cd661f