{{Title|title=Features and Advantages}}
{{#seo:
|description={{project_name}} Feature List
|image=https://www.whonix.org/w/images/9/9c/Drip-1037807-640.jpg
}}

{{Header}}

= {{project name}} Features =

{{project_name}} is an operating system focused on [https://www.whonix.org/#features anonymity and security]. It hides the user's IP address / location and uses the Tor network to anonymize data traffic. This means the contacted server, network eavesdroppers and operators of the Tor network cannot easily determine which sites are visited or the user's physical location. <ref>Without advanced, end-to-end, netflow correlation attacks which rely on statistical analysis of data volume and timing.</ref>

For a comprehensive comparison of {{project name}} with other popular anonymity platforms, see [[Comparison with Others|here]].

== Software Overview ==

A number of applications are pre-installed and pre-configured with safe defaults to make them ready for use. Most popular applications are compatible with the {{project name}} design:

* [[Tor Browser]] is included for Internet browsing.
* Instant messengers like [[Chat#Tox|Tox]] and [[Chat#Gajim|Gajim]].
* PGP-encrypted email with [[Email#Mozilla_Thunderbird_with_TorBirdy|Mozilla Thunderbird, Enigmail and TorBirdy]]. <ref>Later {{project name}} releases might not come with Thunderbird email client pre-installed, See: This [https://forums.whonix.org/t/thunderbird-no-longer-installed-by-default/6505 {{project name}} Forum Thread] for more details.</ref> 
* Secure data transfer to and from a server with [[File_Transfer|scp]].
* Unobserved administration of servers via SSH.
* Web server administration with Apache, ngnix, IRC servers, and more via [[Onion Services|onion services]].
* A host of other [[Software|software programs]].

The {{project name}} design permits the "torification" of applications which are not capable of proxy support by themselves. Further, the user is not jeopardized by installing custom applications or personalizing the desktop.

Detailed [[Documentation|documentation]] has been produced by developers and the {{project name}} community. Various issues are explained in depth, including the {{project name}} design, available software, the host of possible configurations, security and privacy considerations, and numerous advanced topics.

= Feature List =

== Anonymous Browsing ==

* Use [[Browser_Plugins#How_to_use_Flash_-_EASY|plug-ins]] [[DoNot#Confuse_Anonymity_with_Pseudonymity|pseudononymously]].
* Anonymous [[Tor_Browser|Internet Browsing]].

== Anonymous Communications, Hosting and Publishing ==
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
* Anonymous [[HexChat|IRC]].
* Anonymous [[Software#Publishing|publishing]].
* Anonymous [[E-Mail]] with Mozilla Thunderbird, Enigmail and TorBirdy.
* Anonymous [[Chat|chat]].
* Anonymous [[VoIP]].
* Anonymous file sharing with [[Onionshare|OnionShare]].
* [[Hosting Location Hidden Services|Host location / IP hidden servers]].
* [[Mixmaster]] over Tor.
* [[Chat#Ricochet_IM|Ricochet IM]] and other encrypted communications. <ref name=optional />
* Send anonymous emails without registration.
</div>
== Platform Flexibility ==

* Based on [http://www.debian.org Debian] GNU/Linux.
* Based on the [https://www.torproject.org Tor] anonymity network.
* Based on [[KVM]].
* Based on [[VirtualBox]].
* Based on [[{{q_project_name_short}}|Qubes]].
* [[Why_{{project_name_short}}_is_Freedom_Software|Free]], Open Source, Libre, [https://forums.whonix.org/t/lets-call-it-freedom-software-rather-than-free-software-or-open-source/6961 Freedom] Software.
* Virtual machine images with [[Virtualization_Platform_Security#Type_1_vs_Type_2_Hypervisors|Type I or 2 hypervisors]].

== Security and Anonymity Protection ==
<div style="column-count:2;-moz-column-count:2;-webkit-column-count:2">
* Anonymous Java / Javascript.
* A second, extra firewall protects {{workstation_product_name}} by default.
* Full [[Protocol-Leak-Protection_and_Fingerprinting-Protection|IP/DNS protocol leak protection]].
* [[Hide Tor and {{project name short}} from your ISP|Hide Tor and {{project name}} use from network observers]]. <ref name=optional />
* [[Qubes/DisposableVM|Disposable {{workstation_product_name}}s]] in [[{{q project name short}}|{{q project name}}]].
* [[{{project name short}}_Live|{{project_name}} live mode]] in [[{{non q project name short}}|{{non q project name}}]].
* Hide installed software from network observers.
* Optional [https://trac.torproject.org/projects/tor/wiki/doc/TorifyHOWTO/IsolatingProxy isolating proxy].
* Prevents anyone from learning the user's IP address.
* Prevents anyone from learning the user's physical location.
* [[Bridges|Private obfuscated bridges support]].
* Simplification of Tor and (meek-lite) bridge connections via [[Anon_Connection_Wizard|Anon Connection Wizard]].
* Protects user privacy.
* [[Protocol-Leak-Protection and Fingerprinting-Protection|Protocol Leak Protection and Fingerprinting Protection]].
* [[Sdwdate|Secure and distributed time synchronization mechanism]].
* [https://theinvisiblethings.blogspot.com/2008/09/three-approaches-to-computer-security.html Security by isolation].
* [[Stream Isolation]] to prevent identity correlation through circuit sharing.
* [https://trac.torproject.org/projects/tor/wiki/doc/TransparentProxy Transparent Proxy].
* Whitelist Tor traffic with [[Corridor|corridor]].
* [[Kicksecure]] ™ Security Hardened.
* [https://www.whonix.org/#features Numerous security and anonymity features].
* [[Keystroke_Deanonymization|Keystrokes]] can be used to track users. To prevent this, Whonix comes with [[Keystroke_Deanonymization#Kloak|kloak]] installed by default. 
* [[vanguards|Protect against guard discovery and related traffic analysis attacks]]
* Prevent [https://dl.acm.org/citation.cfm?id=1180410 de-anonymization of Tor onion services] through [https://github.com/Whonix/tirdad Tirdad kernel module for random ISN generation]. 
* [[Dev/Entropy|Better encryption thanks to preinstalled random number generators.]]
* [https://github.com/Whonix/security-misc security-misc] (misc security settings)
** Kernel Hardening Settings as recommended by the Kernel Self Protection Project (KSPP). 
** Protect Linux user accounts against brute force attacks
** [[Dev/Strong Linux User Account Isolation|Strong Linux User Account Isolation]]
** [[Dev/Strong_Linux_User_Account_Isolation#Console_Lockdown|Console Lockdown]] disables legacy login methods for improved security hardening.
* [https://github.com/Whonix/anon-apps-config anonymity, privacy and security settings pre-configuration]
</div>

== Tor Network / Torification ==
* Can torify almost any application.
* Can torify [[Other Operating Systems|other operating systems]].
* Can torify Windows.
* [[Bridges|Circumvents censorship]].
* [[Secondary_DNS_Resolver#DNSSEC_over_Tor|DNSSEC over Tor]]. <ref name=optional>Via optional configuration.</ref>
* [[Secondary_DNS_Resolver#Encrypted_DNS_over_Tor|Encrypted DNS]]. <ref name=optional />
* Tor enforcement.
* [[Vanguards]] protect against guard discovery. <ref>As well as related traffic analysis attacks.</ref>

== Tunnel and Chaining Support ==

* Connect to a [[Tunnels/Connecting_to_a_proxy_before_Tor|Proxy]], [[Tunnels/Connecting_to_a_VPN_before_Tor|VPN]] or [[Tunnels/Connecting_to_SSH_before_Tor|SSH]] before Tor.
* Connect to Tor before a [[Tunnels/Connecting_to_Tor_before_a_proxy|Proxy]], [[Tunnels/Connecting_to_Tor_before_a_VPN|VPN]] or [[Tunnels/Connecting_to_Tor_before_SSH|SSH]].
* Tunnel [[Tunnel_UDP_over_Tor|UDP]] over Tor. <ref name=optional />
* [[#VPN_.2F_Tunnel_support|VPN / tunnel support]].

== Tunnel Other Anonymizing Networks ==

* Tunnel [[Freenet]] through Tor.
* Tunnel [[GNUnet]] through Tor.
* Tunnel [[I2P]] through Tor.
* Tunnel [[JonDonym]] through Tor.
* Tunnel [[Chat#RetroShare|Retroshare]] through Tor.

= {{project name}} Advantages =

'''Table:''' ''Primary {{project name}} Advantages''

{| class="wikitable"
|-
! scope="col"| '''{{project_name}} Feature'''
! scope="col"| '''Security and/or Anonymity Advantage'''
|-
! scope="row"| Best Possible [[Protocol-Leak-Protection and Fingerprinting-Protection|Protocol Leak Protection and Fingerprinting Protection]]
| Java, JavaScript, <ref>There is no functional JavaScript difference when it is enabled in {{project name}} Tor Browser versus the standard Tor Browser Bundle (TBB).</ref> <ref>Of course, using JavaScript in the {{project name}} Tor Browser protects against IP address leaks, but browser fingerprinting risks still apply. For more information, see [https://trac.torproject.org/projects/tor/wiki/doc/TorifyHOWTO/WebBrowsers Web-browser]!</ref> Flash, browser plugins <ref>Plugins are still not recommended, as they may decrease anonymity (for example, flash cookies) and they often have security vulnerabilities. Most popular plugins are closed source. Although deprecated, the [[Browser_Plugins#Warning_not_to_use_them|browser plugins warnings]] section is still valid.</ref> and mis-configured applications cannot leak the user's real external IP address. <ref>See [[Security in Real World|Security in the Real World]].</ref>
|-
! scope="row"| Build Simplicity
| Building {{project name}} from source is easy; see [[Dev/Build Documentation|Build Documentation]].
|-
! scope="row"| Combine Anonymizing Networks
| [[Other_Anonymizing_Networks|Other anonymizing networks]] like Freenet, GNUnet, I2P, JonDonym and Retroshare can be used.
|-
! scope="row"| Fully Featured
| A host of [[Features#{{project_name}} Features|Features]] are available.
|-
! scope="row"| Highly Configurable
| Numerous optional configurations, additional features and add-ons are available.
|-
! scope="row"| Open Source
| Only free software is used. <ref>https://en.wikipedia.org/wiki/Free_software</ref>
|-
! scope="row"| Private Obfuscated [[Bridges]]
| Bridges can be added to the Tor configuration file.
|-
! scope="row"| Process Separation
| Tor <ref>https://www.torproject.org</ref> and Tor Browser <ref>https://www.torproject.org/projects/torbrowser.html.en</ref> are not running inside the same virtual machine which means an exploit in the browser cannot affect the integrity of the Tor process. <ref>[[Vidalia]] is now deprecated; [[Tor Controller|arm]] is installed as the alternative.</ref>
|-
! scope="row"| Protection Against IP Address / Location Discovery
| Exploits using malware <ref>https://en.wikipedia.org/wiki/Malware</ref> with root rights inside {{workstation_product_name}} (<code>anon-whonix</code>) are foiled. However, users should avoid testing this protective feature. <ref>If {{workstation_product_name}} (<code>anon-whonix</code>) is rooted, the adversary cannot find out the user's real IP address / location. The reason is {{workstation_product_name}} (<code>anon-whonix</code>) can only connect through the {{gateway_product_name}} (<code>sys-whonix</code>). More skill is required to compromise {{project_name}}, see [[Comparison with Others#Attacks|Attack Comparison Matrix]] and [[Design]].</ref>
|-
! scope="row"| Protection Against De-anonymization Attacks
| No IP address or DNS leaks are possible. <ref>{{project_name}} does not automatically protect against other possible leaks like username, time zone and so on. Users should read the [[Documentation]] to learn how to mitigate these threats. Additionally, {{project name}} [[Protocol-Leak-Protection and Fingerprinting-Protection]] mitigates many possible fingerprinting attacks by using common, non-identifying defaults. For example, the username is set to <i>user</i>, the timezone is set to UTC etc.</ref>
|-
! scope="row"| Safe Hosting of [[Onion Services]]
| Even if someone hacks the user's hidden server software (lighttpd, thttpd, apache, etc.), they cannot steal the onion service key. <ref>The key is stored on the {{gateway_product_name}} (<code>sys-whonix</code>). Once a clean {{workstation_product_name}} (<code>anon-whonix</code>) is used, no one can impersonate the onion service anymore.</ref> <ref>The {{workstation_product_name}} (<code>anon-whonix</code>) is where the browser, IRC client and other user applications are run. The {{gateway_product_name}} (<code>sys-whonix</code>) is where Tor and the firewall are run.</ref>
|-
! scope="row"| Software Flexibility
| Installation of any software package is possible. <ref>The program must be able to run on Debian GNU/Linux or [[Other Operating Systems]] which are used. See also [[Install Software|Software installation on {{workstation_product_name}} (<code>anon-whonix</code>)]] for further details.</ref> <ref>ICMP, ping, VoIP calls over UDP and so on.</ref> <ref>Skype works over TCP, but it is not recommended because it is proprietary, closed source software and there is no control over the encryption keys. Skype authorities can compromise a user at any moment. A secure encryption / authentication design looks different. For example GPG and OTR are secure, because the user has control over the keys, not the server. See [[Voip#Skype|VoIP Skype section]] for further details.</ref> <ref>[[Tunnel UDP over Tor]]</ref>
|-
! scope="row"| Tor Data Persistence
| A major {{project name}} advantage over Live CDs is that Tor's data directory is still available after reboot due to persistent storage. Tor requires persistent storage to save its Entry Guards. <ref>https://www.torproject.org/docs/faq.html.en#EntryGuards</ref>
|-
! scope="row"| Tor Enforcement
| All applications are automatically routed via Tor, including those which do not support proxy settings. <ref>For application warnings, see [[Documentation]].</ref> <ref>UDP is not natively supported by Tor and will therefore also not work in {{project name}} (unless a [[Tunnel_UDP_over_Tor|VPN]] is used).</ref> <ref>Services that need to listen on publicly reachable ports (open / forwarded ports) are also not supported. However, users may run [[Onion Services]] which are reachable via Tor or tor2web ([https://trac.torproject.org/projects/tor/wiki/doc/tor2web care is required]).</ref> <ref>[https://trac.torproject.org/projects/tor/ticket/7830 UDP is not supported by Tor]</ref>
|-
! scope="row"| Torify Windows
| {{gateway_product_name}} (<code>sys-whonix</code>) can also torify Windows. <ref>See [[Other Operating Systems]].</ref>
|-
! scope="row" | Tunnel Chaining
| It is possible to combine {{project name}} with VPNs, SSH and other proxies. <ref>Users should read the [https://trac.torproject.org/projects/tor/wiki/doc/TorPlusVPN Tor plus VPN/proxies Warning] before proceeding. </ref> Every permutation is possible; VPNs / SSH / other proxies can be combined and used pre- and/or post-Tor tunnels.
|}

= {{project name}} Disadvantages =

* More difficult to set up compared to the regular Tor Browser.
* Needs virtual machines or spare hardware for operation.
* Updating the operating system and applications behind the Tor proxy is slow.
* [[{{q project name short}}|{{q project name}}]] has [https://www.qubes-os.org/hcl/ strict hardware requirements]. <ref>Particularly for Qubes R4 and later releases.</ref>
* Higher maintenance is required. <ref>Users need to maintain and update three OSs instead of one. Also, several passwords must be remembered, except for [[{{q project name short}}|{{q project name}}]] which has a [https://www.qubes-os.org/doc/vm-sudo/ password-less root feature].</ref>

{{Anchor|VPN and Tunnel Support}}

{{Anchor|VPN / Tunnel support}}

= Tunnel Support =

Various tunneling permutations are possible and functional in {{project_name}}. Connections can be routed through a VPN, SSH, or proxy before Tor, after Tor, or both.

'''Table:''' ''{{project_name}} Tunnel Options''

{| class="wikitable"
|-
! scope="col"| '''Tunnel Configuration'''
! scope="col"| '''Description'''
|-
! scope="row"| Tunnel Tor through a Proxy, VPN or SSH
| [[Tunnels/Connecting to a VPN before Tor | How to Connect to a VPN Before Tor: <code>User</code> &rarr; <code>VPN</code> &rarr; <code>Tor</code> &rarr; <code>Internet</code>]] <br /> [[Tunnels/Connecting to a proxy before Tor | How to Connect to a Proxy Before Tor: <code>User</code> &rarr; <code>Proxy</code> &rarr; <code>Tor</code> &rarr; <code>Internet</code>]] <br /> [[Tunnels/Connecting to SSH before Tor | How to Connect to SSH Before Tor: <code>User</code> &rarr; <code>SSH</code> &rarr; <code>Tor</code> &rarr; <code>Internet</code>]]
|-
! scope="row"| Tunnel Proxy / Proxychains / SSH / VPN through Tor 
| [[Tunnels/Connecting to Tor before a VPN| How to Connect to Tor Before a VPN: <code>User</code> &rarr; <code>Tor</code> &rarr; <code>VPN</code> &rarr; <code>Internet</code>]] <br /> [[Tunnels/Connecting to Tor before a proxy | How to Connect to Tor Before a Proxy: <code>User</code> &rarr; <code>Tor</code> &rarr; <code>Proxy</code> &rarr; <code>Internet</code>]] <br /> [[Tunnels/Connecting to Tor before SSH | How to Connect to Tor Before SSH: <code>User</code> &rarr; <code>Tor</code> &rarr; <code>SSH</code> &rarr; <code>Internet</code>]]
|-
! scope="row"| Combine Pre- and Post-Tor Tunnels 
| <code>User</code> &rarr; <code> Proxy / SSH / VPN</code> &rarr; <code>Tor</code> &rarr; <code>Proxy / SSH / VPN</code> &rarr; <code>Internet</code>
|-
! scope="row"| Combine Tor with other Protocols
| Tor can also be [[Other Anonymizing Networks|replaced with another anonymizing protocol]]. Note that only some combinations and networks will work in {{project_name}}, such as I2P and JonDonym. <ref>This work is partially complete, but features will remain unfinished for the foreseeable future.</ref>
|}

For further reading on this topic, see:

* [[Comparison Of Tor with CGI Proxies, Proxy Chains, and VPN Services]]
* [[Tunnels/Examples|Functional {{project name}} VPN Examples for Testing Purposes (Free)]]
* Experts only: [[Chaining_Anonymizing_Gateways|Chaining Anonymizing Gateways]]

= Comparison of {{project name}} with other Anonymity Platforms =

See: [[Comparison with Others|Comparison of {{project_name}}, Tails, Tor Browser, TorVM and corridor]].

= License =

{{JonDos}} The "{{project_name}} Features" section of this wiki page contains content sourced from the JonDonym documentation [https://anonymous-proxy-servers.net/en/help/about.html Features] page.

= Footnotes =

{{reflist|close=1}}

{{Footer}}

[[Category:Documentation]]
