% Enable hyperlinks
\setupinteraction
  [state=start,
  title={The Hitchhiker's Guide to Online Anonymity},
  style=,
  color=,
  contrastcolor=]

% make chapter, section bookmarks visible when opening document
\placebookmarks[chapter, section, subsection, subsubsection, subsubsubsection, subsubsubsubsection][chapter, section]
\setupinteractionscreen[option=bookmark]
\setuptagging[state=start]


% use microtypography
\definefontfeature[default][default][script=latn, protrusion=quality, expansion=quality, itlc=yes, textitalics=yes, onum=yes, pnum=yes]
\definefontfeature[smallcaps][script=latn, protrusion=quality, expansion=quality, smcp=yes, onum=yes, pnum=yes]
\setupalign[hz,hanging]
\setupitaliccorrection[global, always]

\setupbodyfontenvironment[default][em=italic] % use italic as em, not slanted

\definefallbackfamily[mainface][rm][CMU Serif][preset=range:greek, force=yes]
\definefontfamily[mainface][rm][Latin Modern Roman]
\definefontfamily[mainface][mm][Latin Modern Math]
\definefontfamily[mainface][ss][Latin Modern Sans]
\definefontfamily[mainface][tt][Latin Modern Typewriter][features=none]
\setupbodyfont[mainface]

\setupwhitespace[medium]

\setuphead[chapter]            [style=\tfd,header=empty]
\setuphead[section]            [style=\tfc]
\setuphead[subsection]         [style=\tfb]
\setuphead[subsubsection]      [style=\bf]
\setuphead[subsubsubsection]   [style=\sc]
\setuphead[subsubsubsubsection][style=\it]

\setuphead[chapter, section, subsection, subsubsection, subsubsubsection, subsubsubsubsection][number=no]

\definedescription
  [description]
  [headstyle=bold, style=normal, location=hanging, width=broad, margin=1cm, alternative=hanging]

\setupitemize[autointro]    % prevent orphan list intro
\setupitemize[indentnext=no]

\setupfloat[figure][default={here,nonumber}]
\setupfloat[table][default={here,nonumber}]

\setupthinrules[width=15em] % width of horizontal rules

\setupxtable[frame=off]
\setupxtable[head][topframe=on,bottomframe=on]
\setupxtable[body][]
\setupxtable[foot][bottomframe=on]


\starttext
\startalignment[middle]
  {\tfd The Hitchhiker's Guide to Online Anonymity}
  \bigskip
\stopalignment

\section[title={The Hitchhiker's Guide to Online
Anonymity},reference={the-hitchhikers-guide-to-online-anonymity}]

(Or \quotation{How I learned to start worrying and love
\overstrikes{privacy} anonymity})

Version 1.1.7, June 2023 by Anonymous Planet

\subsubsubsection[title={{\bf IMPORTANT RECOMMENDATION FOR UKRAINIANS.
ВАЖЛИВА РЕКОМЕНДАЦІЯ ДЛЯ
УКРАЇНЦІВ}},reference={important-recommendation-for-ukrainians.-важлива-рекомендація-для-українців}]

Це послання до народу України. Ми настійно рекомендуємо вам
використовувати Briar для спілкування. Ви можете знайти його тут:
<https://briarproject.org/ . За допомогою цієї програми ви можете
спілкуватися, навіть коли немає Інтернету. Посібник тут:
\useURL[url1][https://briarproject.org/manual/uk/]\from[url1], Швидкий
початок:
\useURL[url2][https://briarproject.org/quick-start/uk/]\from[url2]

\thinrule

This is a message for the people of Ukraine. We strongly recommend that
you use Briar for communicating. You can find it here:
\useURL[url3][https://briarproject.org/]\from[url3] With this
application, you can communicate even when there is no internet. The
manual is here:
\useURL[url4][https://briarproject.org/manual/]\from[url4], quick-start
guide here:
\useURL[url5][https://briarproject.org/quick-start/]\from[url5]

\thinrule

{\bf This guide is a work in progress}. It will probably never be
\quotation{finished}.

{\bf No affiliation with the}
\useURL[url6][https://en.wikipedia.org/wiki/Anonymous_(hacker_group)][][Anonymous]\from[url6]
\useURL[url7][https://wikiless.org/wiki/Anonymous_(hacker_group)][][{[}Wikiless{]}]\from[url7]
\useURL[url8][https://web.archive.org/web/https://en.wikipedia.org/wiki/Anonymous_(hacker_group)][][{[}Archive.org{]}]\from[url8]
{\bf collective/movement.}

{\bf There might be some wrong or outdated information in this guide
because no one is perfect.}

{\bf Your experience may vary. Remember to check regularly for an
updated version of this guide.}

This guide is a non-profit open-source initiative, licensed under
Creative Commons {\bf Attribution-NonCommercial} 4.0 International
(\useURL[url9][https://creativecommons.org/licenses/by-nc/4.0/][][cc-by-nc-4.0]\from[url9]
\useURL[url10][https://web.archive.org/web/https://creativecommons.org/licenses/by-nc/4.0/][][{[}Archive.org{]}]\from[url10]).

\startitemize
\item
  For mirrors see \goto{Appendix A6: Mirrors}[appendix-a6-mirrors]
\item
  For help in comparing versions see \goto{Appendix A7: Comparing
  versions}[appendix-a7-comparing-versions]
\stopitemize

Feel free to submit issues {\bf (please do report anything wrong)} using
GitHub Issues at:
\useURL[url11][https://github.com/Anon-Planet/thgtoa/issues]\from[url11]

Feel free to come to discuss ideas at:

\startitemize
\item
  Rules for our chatrooms:
  \useURL[url12][https://anonymousplanet.org/chatrooms-rules.html]\from[url12]
\item
  Matrix/Element Room: \type{#anonymity:matrix.org}
  \useURL[url13][https://matrix.to/\#/\#anonymity:matrix.org]\from[url13]
\item
  Matrix Space regrouping several rooms with similar interests:
  \type{#privacy-security-anonymity:matrix.org}
  \useURL[url14][https://matrix.to/\#/\#privacy-security-anonymity:matrix.org]\from[url14].
\stopitemize

Follow us on:

\startitemize
\item
  Twitter at \useURL[url15][https://twitter.com/AnonyPla]\from[url15]
\item
  Mastodon at
  \useURL[url16][https://mastodon.social/@anonymousplanet]\from[url16]
\stopitemize

To contact me, see the updated information on the website or send an
e-mail to
\useURL[url17][mailto:contact@anonymousplanet.org][][contact@anonymousplanet.org]\from[url17]

{\bf Please consider \goto{donating}[donations] if you enjoy the project
and want to support the hosting fees or support the funding of
initiatives like the hosting of Tor Exit Nodes.}

There are several ways you could read this guide:

\startitemize
\item
  You want to understand the current state of online privacy and
  anonymity not necessarily get too technical about it: Just read the
  \goto{Introduction}[introduction],
  \goto{Requirements}[pre-requisites-and-limitations],
  \goto{Understanding some basics of how some information can lead back
  to you and how to mitigate
  those}[understanding-some-basics-of-how-some-information-can-lead-back-to-you-and-how-to-mitigate-some]
  and \goto{A final editorial note}[a-small-final-editorial-note]
  sections.
\item
  You want to do the above but also learn how to remove some online
  information about you: Just read the above and add the \goto{Removing
  some traces of your identities on search engines and various
  platforms.}[removing-some-traces-of-your-identities-on-search-engines-and-various-platforms]
\item
  You want to do the above and create online anonymous identities online
  safely and securely: Read the whole guide.
\stopitemize

Precautions while reading this guide and accessing the various links:

\startitemize
\item
  {\bf Documents/Files} have a {\bf {[}Archive.org{]}} link next to them
  for accessing content through Archive.org for increased privacy and in
  case the content goes missing. Some links are not yet archived or
  outdated on archive.org in which case we encourage you to ask for a
  new save if possible.
\item
  {\bf YouTube Videos} have a {\bf {[}Invidious{]}} link next to them
  for accessing content through an Invidious Instance (in this case
  yewtu.be hosted in the Netherlands) for increased privacy. It is
  recommended to use these links when possible. See
  \useURL[url18][https://github.com/iv-org/invidious]\from[url18]
  \useURL[url19][https://web.archive.org/web/https://github.com/iv-org/invidious][][{[}Archive.org{]}]\from[url19]
  for more information.
\item
  {\bf Twitter} links have a {\bf {[}Nitter{]}} link next to them for
  accessing content through a Nitter Instance (in this case nitter.net)
  for increased privacy. It is recommended to use these links when
  possible. See
  \useURL[url20][https://github.com/zedeus/nitter]\from[url20]
  \useURL[url21][https://web.archive.org/web/https://github.com/zedeus/nitter][][{[}Archive.org{]}]\from[url21]
  for more information.
\item
  {\bf Wikipedia} links have a {\bf {[}Wikiless{]}} link next to them
  for accessing content through a Wikiless Instance (in this case
  Wikiless.org) for increased privacy. It is recommended to use these
  links when possible. See
  \useURL[url22][https://codeberg.org/orenom/wikiless]\from[url22]
  \useURL[url23][https://web.archive.org/web/https://codeberg.org/orenom/wikiless][][{[}Archive.org{]}]\from[url23]
  for more information.
\item
  {\bf Medium} links have {\bf {[}Scribe.rip{]}} link next to them for
  accessing content through a Scribe.rip Instance for increased privacy.
  Again, it is recommended to use these links when possible. See
  \useURL[url24][https://scribe.rip/]\from[url24]
  \useURL[url25][https://web.archive.org/web/https://scribe.rip/][][{[}Archive.org{]}]\from[url25]
  for more information.
\item
  If you are reading this in PDF or ODT format, you will notice plenty
  of ``` in place of double quotes (""). These ``` are there to ease
  conversion into Markdown/HTML format for online viewing of code blocks
  on the website.
\stopitemize

If you do not want the hassle and use one of the browsers below, you
could also just install the following extension on your browser:
\useURL[url26][https://libredirect.github.io/]\from[url26]
\useURL[url27][https://web.archive.org/web/20220509220021/https://libredirect.github.io/][][{[}Archive.org{]}]\from[url27]:

\startitemize
\item
  Firefox:
  \useURL[url28][https://addons.mozilla.org/en-US/firefox/addon/libredirect/]\from[url28]
\item
  Chromium-based browsers (Chrome, Brave, Edge):
  \useURL[url29][https://github.com/libredirect/libredirect/blob/master/chromium.md]\from[url29]
\stopitemize

{\bf If you are having trouble accessing any of the many academic
articles referenced in this guide due to paywalls, feel free to use
Sci-Hub
(\useURL[url30][https://en.wikipedia.org/wiki/Sci-Hub]\from[url30]}
\useURL[url31][https://wikiless.org/wiki/Sci-Hub][][{[}Wikiless{]}]\from[url31]
\useURL[url32][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sci-Hub][][{[}Archive.org{]}]\from[url32]{\bf )
or LibGen
(\useURL[url33][https://en.wikipedia.org/wiki/Library_Genesis]\from[url33]}
\useURL[url34][https://wikiless.org/wiki/Library_Genesis][][{[}Wikiless{]}]\from[url34]
\useURL[url35][https://web.archive.org/web/https://en.wikipedia.org/wiki/Library_Genesis][][{[}Archive.org{]}]\from[url35]{\bf )
for finding and reading them. Because Science should be free. All of it.
If you are faced with a paywall accessing some resources, consider using
\useURL[url36][https://12ft.io/]\from[url36].}

Finally note that this guide does mention and even recommends various
commercial services (such as VPNs, CDNs, e-mail providers, hosting
providers\ldots{}) {\bf but is not endorsed or sponsored by any of them
in any way. There are no referral links and no commercial ties with any
of these providers. This project is 100\letterpercent{} non-profit and
only relying on donations.}

\section[title={Contents:},reference={contents}]

\startitemize[packed]
\item
  \goto{Pre-requisites and limitations:}[pre-requisites-and-limitations]
  \startitemize[packed]
  \item
    \goto{Pre-requisites:}[pre-requisites]
  \item
    \goto{Limitations:}[limitations]
  \stopitemize
\item
  \goto{Introduction:}[introduction]
\item
  \goto{Understanding some basics of how some information can lead back
  to you and how to mitigate
  some:}[understanding-some-basics-of-how-some-information-can-lead-back-to-you-and-how-to-mitigate-some]
  \startitemize[packed]
  \item
    \goto{Your Network:}[your-network]
    \startitemize[packed]
    \item
      \goto{Your IP address:}[your-ip-address]
    \item
      \goto{Your DNS and IP requests:}[your-dns-and-ip-requests]
    \item
      \goto{Your RFID enabled devices:}[your-rfid-enabled-devices]
    \item
      \goto{The Wi-Fi and Bluetooth devices around
      you:}[the-wi-fi-and-bluetooth-devices-around-you]
    \item
      \goto{Malicious/Rogue Wi-Fi Access
      Points:}[maliciousrogue-wi-fi-access-points]
    \item
      \goto{Your Anonymized Tor/VPN
      traffic:}[your-anonymized-torvpn-traffic]
    \item
      \goto{Some Devices can be tracked even when
      offline:}[some-devices-can-be-tracked-even-when-offline]
    \stopitemize
  \item
    \goto{Your Hardware Identifiers:}[your-hardware-identifiers]
    \startitemize[packed]
    \item
      \goto{Your IMEI and IMSI (and by extension, your phone
      number):}[your-imei-and-imsi-and-by-extension-your-phone-number]
    \item
      \goto{Your Wi-Fi or Ethernet MAC
      address:}[your-wi-fi-or-ethernet-mac-address]
    \item
      \goto{Your Bluetooth MAC address:}[your-bluetooth-mac-address]
    \stopitemize
  \item
    \goto{Your CPU:}[your-cpu]
  \item
    \goto{Your Operating Systems and Apps telemetry
    services:}[your-operating-systems-and-apps-telemetry-services]
  \item
    \goto{Your Smart devices in general:}[your-smart-devices-in-general]
  \item
    \goto{Yourself:}[yourself]
    \startitemize[packed]
    \item
      \goto{Your Metadata including your
      Geo-Location:}[your-metadata-including-your-geo-location]
    \item
      \goto{Your Digital Fingerprint, Footprint, and Online
      Behavior:}[your-digital-fingerprint-footprint-and-online-behavior]
    \item
      \goto{Your Clues about your Real Life and
      OSINT:}[your-clues-about-your-real-life-and-osint]
    \item
      \goto{Your Face, Voice, Biometrics, and
      Pictures:}[your-face-voice-biometrics-and-pictures]
    \item
      \goto{Gait Recognition and Other Long-Range
      Biometrics}[gait-recognition-and-other-long-range-biometrics]
    \item
      \goto{Phishing and Social
      Engineering:}[phishing-and-social-engineering]
    \stopitemize
  \item
    \goto{Malware, exploits, and viruses:}[malware-exploits-and-viruses]
    \startitemize[packed]
    \item
      \goto{Malware in your
      files/documents/e-mails:}[malware-in-your-filesdocumentse-mails]
    \item
      \goto{Malware and Exploits in your apps and
      services:}[malware-and-exploits-in-your-apps-and-services]
    \item
      \goto{Malicious USB devices:}[malicious-usb-devices]
    \item
      \goto{Malware and backdoors in your Hardware Firmware and
      Operating
      System:}[malware-and-backdoors-in-your-hardware-firmware-and-operating-system]
    \stopitemize
  \item
    \goto{Your files, documents, pictures, and
    videos:}[your-files-documents-pictures-and-videos]
    \startitemize[packed]
    \item
      \goto{Properties and Metadata:}[properties-and-metadata]
    \item
      \goto{Watermarking:}[watermarking]
    \item
      \goto{Pixelized or Blurred
      Information:}[pixelized-or-blurred-information]
    \stopitemize
  \item
    \goto{Your Cryptocurrencies
    transactions:}[your-cryptocurrencies-transactions]
  \item
    \goto{Your Cloud backups/sync
    services:}[your-cloud-backupssync-services]
  \item
    \goto{Your Browser and Device
    Fingerprints:}[your-browser-and-device-fingerprints]
    \startitemize[packed]
    \item
      \goto{Microarchitectural Side-channel Deanonymization
      Attacks:}[microarchitectural-side-channel-deanonymization-attacks]
    \stopitemize
  \item
    \goto{Local Data Leaks and
    Forensics:}[local-data-leaks-and-forensics]
  \item
    \goto{Bad Cryptography:}[bad-cryptography]
  \item
    \goto{No logging but logging anyway
    policies:}[no-logging-but-logging-anyway-policies]
  \item
    \goto{Some Advanced targeted
    techniques:}[some-advanced-targeted-techniques]
  \item
    \goto{Some bonus resources:}[some-bonus-resources]
  \item
    \goto{Notes:}[notes]
  \stopitemize
\item
  \goto{General Preparations:}[general-preparations]
  \startitemize[packed]
  \item
    \goto{Picking your route:}[picking-your-route]
    \startitemize[packed]
    \item
      \goto{Timing limitations:}[timing-limitations]
    \item
      \goto{Budget/Material limitations:}[budgetmaterial-limitations]
    \item
      \goto{Skills:}[skills]
    \item
      \goto{Adversarial considerations:}[adversarial-considerations]
    \stopitemize
  \item
    \goto{Steps for all routes:}[steps-for-all-routes]
    \startitemize[packed]
    \item
      \goto{Getting used to using better
      passwords:}[getting-used-to-using-better-passwords]
    \item
      \goto{Getting an anonymous Phone
      number:}[getting-an-anonymous-phone-number]
    \item
      \goto{Get a USB key:}[get-a-usb-key]
    \item
      \goto{Find some safe places with decent public
      Wi-Fi:}[find-some-safe-places-with-decent-public-wi-fi]
    \stopitemize
  \item
    \goto{The Tor Browser route:}[the-tor-browser-route]
    \startitemize[packed]
    \item
      \goto{Windows, Linux, and macOS:}[windows-linux-and-macos]
    \item
      \goto{Android:}[android]
    \item
      \goto{iOS:}[ios]
    \item
      \goto{Important Warning:}[important-warning]
    \stopitemize
  \item
    \goto{The Tails route:}[the-tails-route]
    \startitemize[packed]
    \item
      \goto{Tor Browser settings on
      Tails:}[tor-browser-settings-on-tails]
    \item
      \goto{Persistent Plausible Deniability using Whonix within
      Tails:}[persistent-plausible-deniability-using-whonix-within-tails]
    \stopitemize
  \item
    \goto{Steps for all other routes:}[steps-for-all-other-routes]
    \startitemize[packed]
    \item
      \goto{Get a dedicated laptop for your sensitive
      activities:}[get-a-dedicated-laptop-for-your-sensitive-activities]
    \item
      \goto{Some laptop recommendations:}[some-laptop-recommendations]
    \item
      \goto{Bios/UEFI/Firmware Settings of your
      laptop:}[biosuefifirmware-settings-of-your-laptop]
    \item
      \goto{Physically Tamper protect your
      laptop:}[physically-tamper-protect-your-laptop]
    \stopitemize
  \item
    \goto{The Whonix route:}[the-whonix-route]
    \startitemize[packed]
    \item
      \goto{Picking your Host OS (the OS installed on your
      laptop):}[picking-your-host-os-the-os-installed-on-your-laptop]
    \item
      \goto{Linux Host OS:}[linux-host-os]
    \item
      \goto{macOS Host OS:}[macos-host-os]
    \item
      \goto{Windows Host OS:}[windows-host-os]
    \item
      \goto{Virtualbox on your Host OS:}[virtualbox-on-your-host-os]
    \item
      \goto{Pick your connectivity
      method:}[pick-your-connectivity-method]
    \item
      \goto{Getting an anonymous
      VPN/Proxy:}[getting-an-anonymous-vpnproxy]
    \item
      \goto{Whonix:}[whonix]
    \item
      \goto{Tor over VPN:}[tor-over-vpn-1]
    \item
      \goto{Whonix Virtual Machines:}[whonix-virtual-machines]
    \item
      \goto{Pick your guest workstation Virtual
      Machine:}[pick-your-guest-workstation-virtual-machine]
    \item
      \goto{Linux Virtual Machine (Whonix or
      Linux):}[linux-virtual-machine-whonix-or-linux]
    \item
      \goto{Windows 10/11 Virtual
      Machine:}[windows-1011-virtual-machine]
    \item
      \goto{Android Virtual Machine:}[android-virtual-machine]
    \item
      \goto{macOS Virtual Machine:}[macos-virtual-machine]
    \item
      \goto{KeepassXC:}[keepassxc]
    \item
      \goto{VPN client installation (cash/Monero
      paid):}[vpn-client-installation-cashmonero-paid]
    \item
      \goto{(Optional) VM kill switch:}[optional-vm-kill-switch]
    \item
      \goto{Final step:}[final-step]
    \stopitemize
  \item
    \goto{The Qubes Route:}[the-qubes-route]
    \startitemize[packed]
    \item
      \goto{Pick your connectivity
      method:}[pick-your-connectivity-method-1]
    \item
      \goto{Getting an anonymous
      VPN/Proxy:}[getting-an-anonymous-vpnproxy-1]
    \item
      \goto{Note about Plausible
      Deniability:}[note-about-plausible-deniability]
    \item
      \goto{Installation:}[installation-3]
    \item
      \goto{Lid Closure Behavior:}[lid-closure-behavior]
    \item
      \goto{Anti Evil Maid (AEM):}[anti-evil-maid-aem]
    \item
      \goto{Connect to a Public Wi-Fi:}[connect-to-a-public-wi-fi]
    \item
      \goto{Updating Qubes OS:}[updating-qubes-os]
    \item
      \goto{Updating Whonix from version 15 to version
      16:}[updating-whonix-from-version-15-to-version-16]
    \item
      \goto{Hardening Qubes OS:}[hardening-qubes-os]
    \item
      \goto{Setup the VPN ProxyVM:}[setup-the-vpn-proxyvm]
    \item
      \goto{Setup a safe Browser within Qubes OS (optional but
      recommended):}[setup-a-safe-browser-within-qubes-os-optional-but-recommended]
    \item
      \goto{Setup an Android VM:}[setup-an-android-vm]
    \item
      \goto{KeePassXC:}[keepassxc-1]
    \stopitemize
  \stopitemize
\item
  \goto{Quick note: Correlation vs
  Attribution:}[quick-note-correlation-vs-attribution]
\item
  \goto{Creating your anonymous online
  identities:}[creating-your-anonymous-online-identities]
  \startitemize[packed]
  \item
    \goto{Understanding the methods used to prevent anonymity and verify
    identity:}[understanding-the-methods-used-to-prevent-anonymity-and-verify-identity]
    \startitemize[packed]
    \item
      \goto{Captchas:}[captchas]
    \item
      \goto{Phone verification:}[phone-verification]
    \item
      \goto{E-Mail verification:}[e-mail-verification]
    \item
      \goto{User details checking:}[user-details-checking]
    \item
      \goto{Proof of ID verification:}[proof-of-id-verification]
    \item
      \goto{IP Filters:}[ip-filters]
    \item
      \goto{Browser and Device
      Fingerprinting:}[browser-and-device-fingerprinting]
    \item
      \goto{Human interaction:}[human-interaction]
    \item
      \goto{User Moderation:}[user-moderation]
    \item
      \goto{Behavioral Analysis:}[behavioral-analysis]
    \item
      \goto{Financial transactions:}[financial-transactions]
    \item
      \goto{Sign-in with some platform:}[sign-in-with-some-platform]
    \item
      \goto{Live Face recognition and biometrics
      (again):}[live-face-recognition-and-biometrics-again]
    \item
      \goto{Manual reviews:}[manual-reviews]
    \stopitemize
  \item
    \goto{Getting Online:}[getting-online]
    \startitemize[packed]
    \item
      \goto{Creating new identities:}[creating-new-identities]
    \item
      \goto{Checking if your Tor Exit Node is
      terrible:}[checking-if-your-tor-exit-node-is-terrible]
    \item
      \goto{The Real-Name System:}[the-real-name-system]
    \item
      \goto{About paid services:}[about-paid-services]
    \item
      \goto{Overview:}[overview]
    \item
      \goto{How to share files privately and/or chat
      anonymously:}[how-to-share-files-privately-andor-chat-anonymously]
    \item
      \goto{How to share files publicly but
      anonymously:}[how-to-share-files-publicly-but-anonymously]
    \item
      \goto{Redacting Documents/Pictures/Videos/Audio
      safely:}[redacting-documentspicturesvideosaudio-safely]
    \item
      \goto{Communicating sensitive information to various known
      organizations:}[communicating-sensitive-information-to-various-known-organizations]
    \item
      \goto{Maintenance tasks:}[maintenance-tasks]
    \stopitemize
  \stopitemize
\item
  \goto{Backing up your work securely:}[backing-up-your-work-securely]
  \startitemize[packed]
  \item
    \goto{Offline Backups:}[offline-backups]
    \startitemize[packed]
    \item
      \goto{Selected Files Backups:}[selected-files-backups]
    \item
      \goto{Full Disk/System Backups:}[full-disksystem-backups]
    \stopitemize
  \item
    \goto{Online Backups:}[online-backups]
    \startitemize[packed]
    \item
      \goto{Files:}[files]
    \item
      \goto{Information:}[information]
    \stopitemize
  \item
    \goto{Synchronizing your files between devices
    Online:}[synchronizing-your-files-between-devices-online]
  \stopitemize
\item
  \goto{Covering your tracks:}[covering-your-tracks]
  \startitemize[packed]
  \item
    \goto{Understanding HDD vs SSD:}[understanding-hdd-vs-ssd]
    \startitemize[packed]
    \item
      \goto{Wear-Leveling.}[wear-leveling.]
    \item
      \goto{Trim Operations:}[trim-operations]
    \item
      \goto{Garbage Collection:}[garbage-collection]
    \item
      \goto{Conclusion:}[conclusion-4]
    \stopitemize
  \item
    \goto{How to securely wipe your whole Laptop/Drives if you want to
    erase
    everything:}[how-to-securely-wipe-your-whole-laptopdrives-if-you-want-to-erase-everything]
    \startitemize[packed]
    \item
      \goto{Linux (all versions including Qubes
      OS):}[linux-all-versions-including-qubes-os]
    \item
      \goto{Windows:}[windows-2]
    \item
      \goto{macOS:}[macos-2]
    \stopitemize
  \item
    \goto{How to securely delete specific files/folders/data on your
    HDD/SSD and Thumb
    drives:}[how-to-securely-delete-specific-filesfoldersdata-on-your-hddssd-and-thumb-drives]
    \startitemize[packed]
    \item
      \goto{Windows:}[windows-3]
    \item
      \goto{Linux (non-Qubes OS):}[linux-non-qubes-os]
    \item
      \goto{Linux (Qubes OS):}[linux-qubes-os]
    \item
      \goto{macOS:}[macos-3]
    \stopitemize
  \item
    \goto{Some additional measures against
    forensics:}[some-additional-measures-against-forensics]
    \startitemize[packed]
    \item
      \goto{Removing Metadata from
      Files/Documents/Pictures:}[removing-metadata-from-filesdocumentspictures]
    \item
      \goto{Tails:}[tails]
    \item
      \goto{Whonix:}[whonix-1]
    \item
      \goto{macOS:}[macos-4]
    \item
      \goto{Linux (Qubes OS):}[linux-qubes-os-1]
    \item
      \goto{Linux (non-Qubes):}[linux-non-qubes]
    \item
      \goto{Windows:}[windows-4]
    \stopitemize
  \item
    \goto{Removing some traces of your identities on search engines and
    various
    platforms:}[removing-some-traces-of-your-identities-on-search-engines-and-various-platforms]
    \startitemize[packed]
    \item
      \goto{Google:}[google-1]
    \item
      \goto{Bing:}[bing]
    \item
      \goto{DuckDuckGo:}[duckduckgo]
    \item
      \goto{Yandex:}[yandex]
    \item
      \goto{Qwant:}[qwant]
    \item
      \goto{Yahoo Search:}[yahoo-search]
    \item
      \goto{Baidu:}[baidu]
    \item
      \goto{Wikipedia:}[wikipedia]
    \item
      \goto{Archive.today:}[archive.today]
    \item
      \goto{Internet Archive:}[internet-archive]
    \item
      \goto{Others:}[others]
    \stopitemize
  \stopitemize
\item
  \goto{Some low-tech old-school
  tricks:}[some-low-tech-old-school-tricks]
  \startitemize[packed]
  \item
    \goto{Hidden communications in plain
    sight:}[hidden-communications-in-plain-sight]
  \item
    \goto{How to spot if someone has been searching your
    stuff:}[how-to-spot-if-someone-has-been-searching-your-stuff]
  \stopitemize
\item
  \goto{Some last OPSEC thoughts:}[some-last-opsec-thoughts]
\item
  \goto{{\bf If you think you got burned:}}[if-you-think-you-got-burned]
  \startitemize[packed]
  \item
    \goto{If you have some time:}[if-you-have-some-time]
  \item
    \goto{If you have no time:}[if-you-have-no-time]
  \stopitemize
\item
  \goto{A small final editorial note:}[a-small-final-editorial-note]
\item
  \goto{Donations:}[donations]
\item
  \goto{Helping others staying
  anonymous:}[helping-others-staying-anonymous]
\item
  \goto{Acknowledgments:}[acknowledgments]
\item
  \goto{Appendix A: Windows
  Installation}[appendix-a-windows-installation]
  \startitemize[packed]
  \item
    \goto{Installation:}[installation-5]
  \item
    \goto{Privacy Settings:}[privacy-settings]
  \stopitemize
\item
  \goto{Appendix B: Windows Additional Privacy
  Settings}[appendix-b-windows-additional-privacy-settings]
\item
  \goto{Appendix C: Windows Installation Media
  Creation}[appendix-c-windows-installation-media-creation]
\item
  \goto{Appendix D: Using System Rescue to securely wipe an SSD
  drive.}[appendix-d-using-system-rescue-to-securely-wipe-an-ssd-drive.]
\item
  \goto{Appendix E: Clonezilla}[appendix-e-clonezilla]
\item
  \goto{Appendix F: Diskpart}[appendix-f-diskpart]
\item
  \goto{Appendix G: Safe Browser on the Host
  OS}[appendix-g-safe-browser-on-the-host-os]
  \startitemize[packed]
  \item
    \goto{If you can use Tor:}[if-you-can-use-tor-2]
  \item
    \goto{If you cannot use Tor:}[if-you-cannot-use-tor-7]
  \stopitemize
\item
  \goto{Appendix H: Windows Cleaning
  Tools}[appendix-h-windows-cleaning-tools]
\item
  \goto{Appendix I: Using ShredOS to securely wipe an HDD
  drive:}[appendix-i-using-shredos-to-securely-wipe-an-hdd-drive]
  \startitemize[packed]
  \item
    \goto{Windows:}[windows-5]
  \item
    \goto{Linux:}[linux-2]
  \stopitemize
\item
  \goto{Appendix J: Manufacturer tools for Wiping HDD and SSD
  drives:}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives]
  \startitemize[packed]
  \item
    \goto{Tools that provide a boot disk for wiping from
    boot:}[tools-that-provide-a-boot-disk-for-wiping-from-boot]
  \item
    \goto{Tools that provide only support from running OS (for external
    drives).}[tools-that-provide-only-support-from-running-os-for-external-drives.]
  \stopitemize
\item
  \goto{Appendix K: Considerations for using external SSD
  drives}[appendix-k-considerations-for-using-external-ssd-drives]
  \startitemize[packed]
  \item
    \goto{Windows:}[windows-6]
    \startitemize[packed]
    \item
      \goto{Trim Support:}[trim-support]
    \item
      \goto{ATA/NVMe Operations (Secure
      Erase/Sanitize):}[atanvme-operations-secure-erasesanitize]
    \stopitemize
  \item
    \goto{Linux:}[linux-3]
    \startitemize[packed]
    \item
      \goto{Trim Support:}[trim-support-1]
    \item
      \goto{ATA/NVMe Operations (Secure
      Erase/Sanitize):}[atanvme-operations-secure-erasesanitize-1]
    \stopitemize
  \item
    \goto{macOS:}[macos-5]
    \startitemize[packed]
    \item
      \goto{Trim Support:}[trim-support-2]
    \item
      \goto{ATA/NVMe Operations (Secure
      Erase/Sanitize):}[atanvme-operations-secure-erasesanitize-2]
    \stopitemize
  \stopitemize
\item
  \goto{Appendix L: Creating a mat2-web guest VM for removing metadata
  from
  files}[appendix-l-creating-a-mat2-web-guest-vm-for-removing-metadata-from-files]
\item
  \goto{Appendix M: BIOS/UEFI options to wipe disks in various
  Brands}[appendix-m-biosuefi-options-to-wipe-disks-in-various-brands]
\item
  \goto{Appendix N: Warning about smartphones and smart
  devices}[appendix-n-warning-about-smartphones-and-smart-devices]
\item
  \goto{Appendix O: Getting an anonymous
  VPN/Proxy}[appendix-o-getting-an-anonymous-vpnproxy]
  \startitemize[packed]
  \item
    \goto{Cash/Monero-Paid VPN:}[cashmonero-paid-vpn]
  \item
    \goto{Self-hosted VPN/Proxy on a Monero/Cash-paid VPS (for users
    more familiar with
    Linux):}[self-hosted-vpnproxy-on-a-monerocash-paid-vps-for-users-more-familiar-with-linux]
    \startitemize[packed]
    \item
      \goto{VPN VPS:}[vpn-vps]
    \item
      \goto{Socks Proxy VPS:}[socks-proxy-vps]
    \stopitemize
  \stopitemize
\item
  \goto{Appendix P: Accessing the internet as safely as possible when
  Tor and VPNs are not an
  option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
\item
  \goto{Appendix Q: Using long-range Antenna to connect to Public Wi-Fis
  from a safe
  distance:}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance]
\item
  \goto{Appendix R: Installing a VPN on your VM or Host
  OS}[appendix-r-installing-a-vpn-on-your-vm-or-host-os]
\item
  \goto{Appendix S: Check your network for surveillance/censorship using
  OONI}[appendix-s-check-your-network-for-surveillancecensorship-using-ooni]
\item
  \goto{Appendix T: Checking files for
  malware}[appendix-t-checking-files-for-malware]
  \startitemize[packed]
  \item
    \goto{Integrity (if available):}[integrity-if-available]
  \item
    \goto{Authenticity (if available):}[authenticity-if-available]
  \item
    \goto{Security (checking for actual
    malware):}[security-checking-for-actual-malware]
    \startitemize[packed]
    \item
      \goto{Anti-Virus Software:}[anti-virus-software]
    \item
      \goto{Manual Reviews:}[manual-reviews-1]
    \stopitemize
  \stopitemize
\item
  \goto{Appendix U: How to bypass (some) local restrictions on
  supervised
  computers}[appendix-u-how-to-bypass-some-local-restrictions-on-supervised-computers]
  \startitemize[packed]
  \item
    \goto{Portable Apps:}[portable-apps]
  \item
    \goto{Bootable Live Systems:}[bootable-live-systems]
  \item
    \goto{Precautions:}[precautions]
  \stopitemize
\item
  \goto{Appendix V: What browser to use in your Guest VM/Disposable
  VM}[appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm]
  \startitemize[packed]
  \item
    \goto{Brave:}[brave]
  \item
    \goto{Ungoogled-Chromium:}[ungoogled-chromium]
  \item
    \goto{Edge:}[edge]
  \item
    \goto{Safari:}[safari]
  \item
    \goto{Firefox:}[firefox]
  \item
    \goto{Tor Browser:}[tor-browser]
  \stopitemize
\item
  \goto{Appendix V1: Hardening your
  Browsers:}[appendix-v1-hardening-your-browsers]
  \startitemize[packed]
  \item
    \goto{Brave:}[brave-1]
  \item
    \goto{Ungoogled-Chromium:}[ungoogled-chromium-1]
  \item
    \goto{Edge:}[edge-1]
  \item
    \goto{Safari:}[safari-1]
  \item
    \goto{Firefox:}[firefox-1]
    \startitemize[packed]
    \item
      \goto{Normal settings:}[normal-settings]
    \item
      \goto{Advanced settings:}[advanced-settings]
    \item
      \goto{Addons to install/consider:}[addons-to-installconsider]
    \item
      \goto{Bonus resources:}[bonus-resources]
    \stopitemize
  \stopitemize
\item
  \goto{Appendix W: Virtualization}[appendix-w-virtualization]
  \startitemize[packed]
  \item
    \goto{Nested virtualization risks}[nested-virtualization-risks]
  \stopitemize
\item
  \goto{Appendix X: Using Tor bridges in hostile
  environments}[appendix-x-using-tor-bridges-in-hostile-environments]
\item
  \goto{Appendix Y: Installing and using desktop Tor
  Browser}[appendix-y-installing-and-using-desktop-tor-browser]
  \startitemize[packed]
  \item
    \goto{Installation:}[installation-6]
  \item
    \goto{Usage and Precautions:}[usage-and-precautions]
  \stopitemize
\item
  \goto{Appendix Z: Online anonymous payments using
  cryptocurrencies}[appendix-z-online-anonymous-payments-using-cryptocurrencies]
  \startitemize[packed]
  \item
    \goto{Using Bitcoin anonymously
    option:}[using-bitcoin-anonymously-option]
  \item
    \goto{Using Monero anonymously
    option:}[using-monero-anonymously-option]
  \item
    \goto{Warning about special tumbling, mixing, coinjoining privacy
    wallets and
    services}[warning-about-special-tumbling-mixing-coinjoining-privacy-wallets-and-services-wikiless-archiveorg]
  \item
    \goto{When converting from BTC to
    Monero:}[when-converting-from-btc-to-monero]
  \stopitemize
\item
  \goto{Appendix A1: Recommended VPS hosting
  providers}[appendix-a1-recommended-vps-hosting-providers]
\item
  \goto{Appendix A2: Guidelines for passwords and
  passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases]
\item
  \goto{Appendix A3: Search Engines}[appendix-a3-search-engines]
\item
  \goto{Appendix A4: Counteracting Forensic
  Linguistics}[appendix-a4-counteracting-forensic-linguistics]
  \startitemize[packed]
  \item
    \goto{Introduction:}[introduction-1]
  \item
    \goto{What does an adversary look for when examining your
    writing?}[what-does-an-adversary-look-for-when-examining-your-writing]
  \item
    \goto{Examples:}[examples]
  \item
    \goto{How to counteract the efforts of your
    adversary:}[how-to-counteract-the-efforts-of-your-adversary]
  \item
    \goto{What different linguistic choices could say about
    you:}[what-different-linguistic-choices-could-say-about-you]
    \startitemize[packed]
    \item
      \goto{Emoticons:}[emoticons]
    \item
      \goto{Structural features:}[structural-features]
    \item
      \goto{Spelling slang and symbols:}[spelling-slang-and-symbols]
    \stopitemize
  \item
    \goto{Techniques to prevent
    writeprinting:}[techniques-to-prevent-writeprinting]
    \startitemize[packed]
    \item
      \goto{Spelling and grammar
      checking:}[spelling-and-grammar-checking]
    \item
      \goto{Translation technique:}[translation-technique]
    \item
      \goto{Search and replace:}[search-and-replace]
    \item
      \goto{Final advice:}[final-advice]
    \stopitemize
  \item
    \goto{Bonus links:}[bonus-links]
  \stopitemize
\item
  \goto{Appendix A5: Additional browser precautions with JavaScript
  enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled]
\item
  \goto{Appendix A6: Mirrors}[appendix-a6-mirrors]
\item
  \goto{Appendix A7: Comparing versions}[appendix-a7-comparing-versions]
\item
  \goto{Appendix A8: Crypto Swapping Services without Registration and
  KYC}[appendix-a8-crypto-swapping-services-without-registration-and-kyc]
  \startitemize[packed]
  \item
    \goto{General Crypto Swapping:}[general-crypto-swapping]
  \item
    \goto{BTC to Monero only:}[btc-to-monero-only]
  \stopitemize
\item
  \goto{Appendix A9: Installing a Zcash
  wallet:}[appendix-a9-installing-a-zcash-wallet]
  \startitemize[packed]
  \item
    \goto{Debian 11 VM:}[debian-11-vm]
  \item
    \goto{Ubuntu 20.04/21.04/21.10 VM:}[ubuntu-20.0421.0421.10-vm]
  \item
    \goto{Windows 10/11 VM:}[windows-1011-vm]
  \item
    \goto{Whonix Workstation 16 VM:}[whonix-workstation-16-vm]
  \stopitemize
\item
  \goto{Appendix B1: Checklist of things to verify before sharing
  information:}[appendix-b1-checklist-of-things-to-verify-before-sharing-information]
\item
  \goto{Appendix B2: Monero Disclaimer}[appendix-b2-monero-disclaimer]
\item
  \goto{Appendix B3: Threat modeling
  resources}[appendix-b3-threat-modeling-resources]
\item
  \goto{Appendix B4: Important notes about evil-maid and
  tampering}[appendix-b4-important-notes-about-evil-maid-and-tampering]
\item
  \goto{Appendix B5: Types of CPU
  attacks:}[appendix-b5-types-of-cpu-attacks]
\item
  \goto{Appendix B6: Warning for using Orbot on
  Android}[appendix-b6-warning-for-using-orbot-on-android]
\item
  \goto{Appendix B7: Caution about Session
  messenger}[appendix-b7-caution-about-session-messenger]
\item
  \goto{References:}[references]
\stopitemize

\section[title={Pre-requisites and
limitations:},reference={pre-requisites-and-limitations}]

\subsection[title={Pre-requisites:},reference={pre-requisites}]

\startitemize
\item
  Understanding of the English language (in this case American English).
\item
  Be a permanent resident in Germany where the courts have upheld the
  legality of not using real names on online platforms (§13 VI of the
  German Telemedia Act of 2007\footnote{English translation of German
    Telemedia Act
    \useURL[url37][https://www.huntonprivacyblog.com/wp-content/uploads/sites/28/2016/02/Telemedia_Act__TMA_.pdf]\from[url37]
    \useURL[url38][https://web.archive.org/web/https://www.huntonprivacyblog.com/wp-content/uploads/sites/28/2016/02/Telemedia_Act__TMA_.pdf][][{[}Archive.org{]}]\from[url38].
    Section 13, Article 6, \quotation{The service provider must enable
    the use of Telemedia and payment for them to occur anonymously or
    via a pseudonym where this is technically possible and reasonable.
    The recipient of the service is to be informed about this
    possibility.}.}'\footnote{Wikipedia, Real-Name System Germany
    \useURL[url39][https://en.wikipedia.org/wiki/Real-name_system\#Germany]\from[url39]
    \useURL[url40][https://wikiless.org/wiki/Real-name_system][][{[}Wikiless{]}]\from[url40]
    \useURL[url41][https://web.archive.org/web/https://en.wikipedia.org/wiki/Real-name_system][][{[}Archive.org{]}]\from[url41]}).
  {\bf Alternatively, be a resident of any other country where you can
  confirm and verify the legality of this guide yourself.}
\item
  This guide will assume you already have access to some
  (Windows/Linux/macOS) laptop computer - ideally not a work/shared
  device - and a basic understanding of how computers work.
\item
  Have patience, as this process could take several weeks to complete if
  you want to go through all the content.
\item
  Have some free time on your hands to dedicate to this process
  (depending on which route you pick).
\item
  Be prepared to read a lot of references (do read them), guides (do not
  skip them), and tutorials thoroughly (do not skip them either).
\item
  Don't be evil (for real this time)\footnote{Wikipedia, Don't be evil
    \useURL[url42][https://en.wikipedia.org/wiki/Don\%27t_be_evil][][https://en.wikipedia.org/wiki/Don\letterpercent{}27t_be_evil]\from[url42]
    \useURL[url43][https://wikiless.org/wiki/Don\%27t_be_evil][][{[}Wikiless{]}]\from[url43]
    \useURL[url44][https://web.archive.org/web/https://en.wikipedia.org/wiki/Don\%27t_be_evil][][{[}Archive.org{]}]\from[url44]}.
\item
  Understand that there is no common path that will be both quick and
  easy.
\stopitemize

\subsection[title={Limitations:},reference={limitations}]

This guide is not intended for:

\startitemize
\item
  Creating bot accounts of any kind.
\item
  Creating impersonation accounts of existing people (such as identity
  theft).
\item
  Helping malicious actors conduct unethical, criminal, or illicit
  activities (such as trolling, stalking, disinformation,
  misinformation, harassment, bullying, or fraud).
\item
  Use by minors.
\stopitemize

\section[title={Introduction:},reference={introduction}]

{\bf TLDR for the whole guide: \quotation{A strange game. The only
winning move is not to play}} \footnote{YouTube, WarGames -
  \quotation{The Only Winning Move}
  \useURL[url45][https://www.youtube.com/watch?v=6DGNZnfKYnU]\from[url45]
  \useURL[url46][https://yewtu.be/watch?v=6DGNZnfKYnU][][{[}Invidious{]}]\from[url46]}{\bf .}

Making a social media account with a pseudonym or artist/brand name is
easy. And it is enough in most use cases to protect your identity as the
next George Orwell. There are plenty of people using pseudonyms all over
Facebook/Instagram/Twitter/LinkedIn/TikTok/Snapchat/Reddit/\ldots{} But
the vast majority of those are anything but anonymous and can easily be
traced to their real identity by your local police officers, random
people within the OSINT\footnote{Wikipedia, OSINT
  \useURL[url47][https://en.wikipedia.org/wiki/Open-source_intelligence]\from[url47]
  \useURL[url48][https://wikiless.org/wiki/Open-source_intelligence][][{[}Wikiless{]}]\from[url48]
  \useURL[url49][https://web.archive.org/web/https://en.wikipedia.org/wiki/Open-source_intelligence][][{[}Archive.org{]}]\from[url49]}
(Open-Source Intelligence) community, and trolls\footnote{YouTube
  Internet Historian Playlist, HWNDU
  \useURL[url50][https://www.youtube.com/playlist?list=PLna1KTNJu3y09Tu70U6yPn28sekaNhOMY]\from[url50]
  \useURL[url51][https://yewtu.be/playlist?list=PLna1KTNJu3y09Tu70U6yPn28sekaNhOMY][][{[}Invidious{]}]\from[url51]}
on 4chan\footnote{Wikipedia, 4chan
  \useURL[url52][https://en.wikipedia.org/wiki/4chan]\from[url52]
  \useURL[url53][https://wikiless.org/wiki/4chan][][{[}Wikiless{]}]\from[url53]
  \useURL[url54][https://web.archive.org/web/https://en.wikipedia.org/wiki/4chan][][{[}Archive.org{]}]\from[url54]}.

This is a good thing as most criminals/trolls are not tech-savvy and
will usually be identified with ease. But this is also a terrible thing
as most political dissidents, human rights activists and whistleblowers
can also be tracked rather easily.

This guide aims to provide an introduction to various de-anonymization
techniques, tracking techniques, ID verification techniques, and
optional guidance to creating and maintaining {\bf reasonably and truly}
online anonymous identities including social media accounts safely. This
includes mainstream platforms and not only the privacy-friendly ones.

It is important to understand that the purpose of this guide is
anonymity and not just privacy but much of the guidance you will find
here will also help you improve your privacy and security even if you
are not interested in anonymity. There is an important overlap in
techniques and tools used for privacy, security, and anonymity but they
differ at some point:

\startitemize
\item
  {\bf Privacy is about people knowing who you are but not knowing what
  you are doing.}
\item
  {\bf Anonymity is about people knowing what you are doing but not
  knowing who you are} \footnote{PIA, See this good article on the
    matter
    \useURL[url55][https://www.privateinternetaccess.com/blog/how-does-privacy-differ-from-anonymity-and-why-are-both-important/]\from[url55]
    \useURL[url56][https://web.archive.org/web/https://www.privateinternetaccess.com/blog/how-does-privacy-differ-from-anonymity-and-why-are-both-important/][][{[}Archive.org{]}]\from[url56]
    (disclaimer: this is not an endorsement or recommendation for this
    commercial service).}{\bf .}
\stopitemize

\placefigure{image01}{\externalfigure[./tex2pdf.-1a34188c73046814/6c1f5a9deb304a3afd443e665a7e61c8ae88ebb1.png]}

(Illustration from\footnote{Medium.com, Privacy, Blockchain and Onion
  Routing
  \useURL[url57][https://medium.com/unitychain/privacy-blockchain-and-onion-routing-d5609c611841]\from[url57]
  \useURL[url58][https://scribe.rip/unitychain/privacy-blockchain-and-onion-routing-d5609c611841][][{[}Scribe.rip{]}]\from[url58]
  \useURL[url59][https://web.archive.org/web/https://medium.com/unitychain/privacy-blockchain-and-onion-routing-d5609c611841][][{[}Archive.org{]}]\from[url59]})

Will this guide help you protect yourself from the NSA, the FSB, Mark
Zuckerberg, or the Mossad if they are out to find you? Probably not
\ldots{} Mossad will be doing \quotation{Mossad things} \footnote{This
  World of Ours, James Mickens
  \useURL[url60][https://scholar.harvard.edu/files/mickens/files/thisworldofours.pdf]\from[url60]
  \useURL[url61][https://web.archive.org/web/https://scholar.harvard.edu/files/mickens/files/thisworldofours.pdf][][{[}Archive.org{]}]\from[url61]}
and will probably find you no matter how hard you try to hide\footnote{XKCD,
  Security \useURL[url62][https://xkcd.com/538/]\from[url62]
  \useURL[url63][https://web.archive.org/web/https://xkcd.com/538/][][{[}Archive.org{]}]\from[url63]}.

You must consider your threat model\footnote{Wikipedia, Threat Model
  \useURL[url64][https://en.wikipedia.org/wiki/Threat_model]\from[url64]
  \useURL[url65][https://wikiless.org/wiki/Threat_model][][{[}Wikiless{]}]\from[url65]
  \useURL[url66][https://web.archive.org/web/https://en.wikipedia.org/wiki/Threat_model][][{[}Archive.org{]}]\from[url66]}
before going further.

\placefigure{image02}{\externalfigure[./tex2pdf.-1a34188c73046814/f96c08d2009e512bde929817a9db4a77225c85d3.png]}

(Illustration by Randall Munroe, xkcd.com, licensed under CC BY-NC 2.5)

Will this guide help you protect your privacy from OSINT researchers
like Bellingcat\footnote{Bellingcat
  \useURL[url67][https://www.bellingcat.com/]\from[url67]
  \useURL[url68][https://web.archive.org/web/https://www.bellingcat.com/][][{[}Archive.org{]}]\from[url68]},
Doxing\footnote{Wikipedia, Doxing
  \useURL[url69][https://en.wikipedia.org/wiki/Doxing]\from[url69]
  \useURL[url70][https://wikiless.org/wiki/Doxing][][{[}Wikiless{]}]\from[url70]
  \useURL[url71][https://web.archive.org/web/https://en.wikipedia.org/wiki/Doxing][][{[}Archive.org{]}]\from[url71]}
trolls on 4chan\footnote{YouTube, Internet Historian, The Bikelock
  Fugitive of Berkeley
  \useURL[url72][https://www.youtube.com/watch?v=muoR8Td44UE]\from[url72]
  \useURL[url73][https://yewtu.be/watch?v=muoR8Td44UE][][{[}Invidious{]}]\from[url73]},
and others that have no access to the NSA toolbox? More likely. Tho we
would not be so sure about 4chan.

Here is a basic simplified threat model for this guide:

\placefigure{image40}{\externalfigure[./tex2pdf.-1a34188c73046814/209a5add37a22e27eb7b941aaaffd5a9933f6d07.png]}

(Note that the \quotation{magical amulets/submarine/fake your own death}
jokes are quoted from the excellent article \quotation{This World of
Ours} by James Mickens, 2014.\footnote{This World of Ours, James Mickens
  \useURL[url74][https://scholar.harvard.edu/files/mickens/files/thisworldofours.pdf]\from[url74]
  \useURL[url75][https://web.archive.org/web/https://scholar.harvard.edu/files/mickens/files/thisworldofours.pdf][][{[}Archive.org{]}]\from[url75]})

Disclaimer: Jokes aside (magical amulet\ldots{}). Of course, there are
also advanced ways to mitigate attacks against such advanced and skilled
adversaries but those are just out of the scope of this guide. It is
crucially important that you understand the limits of the threat model
of this guide. And therefore, this guide will not double in size to help
with those advanced mitigations as this is just too complex and will
require an exceedingly high knowledge and skill level that is not
expected from the targeted audience of this guide.

The EFF provides a few security scenarios of what you should consider
depending on your activity. While some of those tips might not be within
the scope of this guide (more about Privacy than Anonymity), they are
still worth reading as examples. See
\useURL[url76][https://ssd.eff.org/en/module-categories/security-scenarios]\from[url76]
\useURL[url77][https://web.archive.org/web/https://ssd.eff.org/en/module-categories/security-scenarios][][{[}Archive.org{]}]\from[url77].

If you want to go deeper into threat modeling, see \goto{Appendix B3:
Threat modeling resources}[appendix-b3-threat-modeling-resources].

You might think this guide has no legitimate use but there are
many\footnote{BBC News, Tor Mirror
  \useURL[url78][https://www.bbc.com/news/technology-50150981]\from[url78]
  \useURL[url79][https://web.archive.org/web/https://www.bbc.com/news/technology-50150981][][{[}Archive.org{]}]\from[url79]}\quote{\footnote{GitHub,
  Real World Onion websites
  \useURL[url80][https://github.com/alecmuffett/real-world-onion-sites]\from[url80]
  \useURL[url81][https://web.archive.org/web/https://github.com/alecmuffett/real-world-onion-sites][][{[}Archive.org{]}]\from[url81]
  (updated extremely often)}}\footnote{Tor Project, Who Uses Tor
  \useURL[url82][https://2019.www.torproject.org/about/torusers.html.en]\from[url82]
  \useURL[url83][https://web.archive.org/web/https://2019.www.torproject.org/about/torusers.html.en][][{[}Archive.org{]}]\from[url83]}\quote{\footnote{Whonix
  Documentation, The importance of Anonymity
  \useURL[url84][https://www.whonix.org/wiki/Anonymity]\from[url84]
  \useURL[url85][https://web.archive.org/web/https://www.whonix.org/wiki/Anonymity][][{[}Archive.org{]}]\from[url85]}}\footnote{Geek
  Feminism
  \useURL[url86][https://geekfeminism.wikia.org/wiki/Who_is_harmed_by_a_\%22Real_Names\%22_policy\%3F][][https://geekfeminism.wikia.org/wiki/Who_is_harmed_by_a_\letterpercent{}22Real_Names\letterpercent{}22_policy\letterpercent{}3F]\from[url86]
  \useURL[url87][https://web.archive.org/web/https://geekfeminism.wikia.org/wiki/Who_is_harmed_by_a_\%22Real_Names\%22_policy\%3F][][{[}Archive.org{]}]\from[url87]}\quote{\footnote{Tor
  Project, Tor Users
  \useURL[url88][https://2019.www.torproject.org/about/torusers.html.en]\from[url88]
  \useURL[url89][https://web.archive.org/web/https://2019.www.torproject.org/about/torusers.html.en][][{[}Archive.org{]}]\from[url89]}}\footnote{PrivacyHub,
  Internet Privacy in the Age of Surveillance
  \useURL[url90][https://www.cyberghostvpn.com/privacyhub/internet-privacy-surveillance/]\from[url90]
  \useURL[url91][https://web.archive.org/web/https://www.cyberghostvpn.com/privacyhub/internet-privacy-surveillance/][][{[}Archive.org{]}]\from[url91]}
such as:

\startitemize
\item
  Evading Online Censorship\footnote{PIA Blog, 50 Key Stats About
    Freedom of the Internet Around the World
    \useURL[url92][https://www.privateinternetaccess.com/blog/internet-freedom-around-the-world-in-50-stats/]\from[url92]
    \useURL[url93][https://web.archive.org/web/https://www.privateinternetaccess.com/blog/internet-freedom-around-the-world-in-50-stats/][][{[}Archive.org{]}]\from[url93]}
\item
  Evading Online Oppression
\item
  Evading Online Stalking, Doxxing, and Harassment
\item
  Evading Online Unlawful Government Surveillance
\item
  Anonymous Online Whistle Blowing
\item
  Anonymous Online Activism
\item
  Anonymous Online Journalism
\item
  Anonymous Online Legal Practice
\item
  Anonymous Online Academic Activities (For instance accessing
  scientific research where such resources are blocked). See note below.
\item
  \ldots{}
\stopitemize

This guide is written with hope for those {\bf good-intended
individuals} who might not be knowledgeable enough to consider the big
picture of online anonymity and privacy.

{\bf Lastly, use it at your own risk. Anything in here is not legal
advice and you should verify compliance with your local law before use
(IANAL}\footnote{Wikipedia, IANAL
  \useURL[url94][https://en.wikipedia.org/wiki/IANAL]\from[url94]
  \useURL[url95][https://wikiless.org/wiki/IANAL][][{[}Wikiless{]}]\from[url95]
  \useURL[url96][https://web.archive.org/web/https://en.wikipedia.org/wiki/IANAL][][{[}Archive.org{]}]\from[url96]}{\bf ).
\quotation{Trust but verify}}\footnote{Wikipedia, Trust but verify
  \useURL[url97][https://en.wikipedia.org/wiki/Trust,_but_verify]\from[url97]
  \useURL[url98][https://wikiless.org/wiki/Trust,_but_verify][][{[}Wikiless{]}]\from[url98]
  \useURL[url99][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trust,_but_verify][][{[}Archive.org{]}]\from[url99]}
{\bf all the information yourself (or even better, \quotation{Never
Trust, always verify}}\footnote{Wikipedia, Zero-trust Security Model
  \useURL[url100][https://en.wikipedia.org/wiki/Zero_trust_security_model]\from[url100]
  \useURL[url101][https://wikiless.org/wiki/Zero_trust_security_model][][{[}Wikiless{]}]\from[url101]
  \useURL[url102][https://web.archive.org/web/https://en.wikipedia.org/wiki/Zero_trust_security_model][][{[}Archive.org{]}]\from[url102]}{\bf ).
We strongly encourage you to inform yourself and do not hesitate to
check any information in this guide with outside sources in case of
doubt. Please do report any mistake you spot to us as we welcome
criticism. Even harsh but sound criticism is welcome and will result in
having the necessary corrections made as quickly as possible.}

\section[title={Understanding some basics of how some information can
lead back to you and how to mitigate
some:},reference={understanding-some-basics-of-how-some-information-can-lead-back-to-you-and-how-to-mitigate-some}]

There are many ways you can be tracked besides browser cookies and ads,
your e-mail, and your phone number. And if you think only the Mossad or
the NSA/FSB can find you, you would be wrong.

First, you could also consider these more general resources on privacy
and security to learn more basics:

\startitemize
\item
  The New Oil*: \useURL[url103][https://thenewoil.org/]\from[url103]
  \useURL[url104][https://web.archive.org/web/https://thenewoil.org/][][{[}Archive.org{]}]\from[url104]
\item
  Techlore videos*:
  \useURL[url105][https://www.youtube.com/c/Techlore]\from[url105]
  \useURL[url106][https://yewtu.be/c/Techlore][][{[}Invidious{]}]\from[url106]
\item
  Privacy Guides:
  \useURL[url107][https://privacyguides.org/]\from[url107]
  \useURL[url108][https://web.archive.org/web/https://privacyguides.org/][][{[}Archive.org{]}]\from[url108]
\item
  Privacy Tools*: \useURL[url109][https://privacytools.io]\from[url109]
  \useURL[url110][https://web.archive.org/web/https://privacytools.io/][][{[}Archive.org{]}]\from[url110]
\stopitemize

{\em Note that these websites could contain affiliate/sponsored content
and/or merchandising. This guide does not endorse and is not sponsored
by any commercial entity in any way.}

If you skipped those, you should really still consider viewing this
YouTube playlist from the Techlore Go Incognito project
(\useURL[url111][https://github.com/techlore-official/go-incognito]\from[url111]
\useURL[url112][https://web.archive.org/web/https://github.com/techlore-official/go-incognito][][{[}Archive.org{]}]\from[url112])
as an introduction before going further:
\useURL[url113][https://www.youtube.com/playlist?list=PL3KeV6Ui_4CayDGHw64OFXEPHgXLkrtJO]\from[url113]
\useURL[url114][https://yewtu.be/playlist?list=PL3KeV6Ui_4CayDGHw64OFXEPHgXLkrtJO][][{[}Invidious{]}]\from[url114].
This guide will cover many of the topics in the videos of this playlist
with more details and references as well as some added topics not
covered within that series. This will just take you 2 or 3 hours to
watch it all.

{\bf Now, here is a non-exhaustive list of some of the many ways you
could be tracked and de-anonymized:}

\subsection[title={Your Network:},reference={your-network}]

\subsubsection[title={Your IP address:},reference={your-ip-address}]

{\bf Disclaimer: this whole paragraph is about your public-facing
Internet IP and not your local network IP.}

Your IP address\footnote{Wikipedia, IP Address
  \useURL[url115][https://en.wikipedia.org/wiki/IP_address]\from[url115]
  \useURL[url116][https://wikiless.org/wiki/IP_address][][{[}Wikiless{]}]\from[url116]
  \useURL[url117][https://web.archive.org/web/https://en.wikipedia.org/wiki/IP_address][][{[}Archive.org{]}]\from[url117]}
is the most known and obvious way you can be tracked. That IP is the IP
you are using at the source. This is where you connect to the internet.
That IP is usually provided by your ISP (Internet Service Provider)
(xDSL, Mobile, Cable, Fiber, Cafe, Bar, Friend, Neighbor). Most
countries have data retention regulations\footnote{Wikipedia; Data
  Retention
  \useURL[url118][https://en.wikipedia.org/wiki/Data_retention]\from[url118]
  \useURL[url119][https://wikiless.org/wiki/Data_retention][][{[}Wikiless{]}]\from[url119]
  \useURL[url120][https://web.archive.org/web/https://en.wikipedia.org/wiki/Data_retention][][{[}Archive.org{]}]\from[url120]}
that mandate keeping logs of who is using what IP at a certain time/date
for up to several years or indefinitely. Your ISP can tell a third party
that you were using a specific IP at a specific date and time, years
after the fact. If that IP (the original one) leaks at any point for any
reason, it can be used to track down you directly. In many countries,
you will not be able to have internet access without providing some form
of identification to the provider (address, ID, real name, e-mail
\ldots{}).

Needless to say, that most platforms (such as social networks) will also
keep (sometimes indefinitely) the IP addresses you used to sign-up and
sign into their services.

Here are some online resources you can use to find some information
about your current {\bf public IP} right now:

\startitemize
\item
  Find your IP:

  \startitemize
  \item
    \useURL[url121][https://resolve.rs/]\from[url121]
  \item
    \useURL[url122][https://www.dnsleaktest.com/]\from[url122] (Bonus,
    check your IP for DNS leaks)
  \stopitemize
\item
  Find your IP location or the location of any IP:

  \startitemize[packed]
  \item
    \useURL[url123][https://resolve.rs/ip/geolocation.html]\from[url123]
  \stopitemize
\item
  Find if an IP is \quotation{suspicious} (in blacklists) or has
  downloaded \quotation{things} on some public resources:

  \startitemize
  \item
    \useURL[url124][https://mxtoolbox.com/blacklists.aspx]\from[url124]
  \item
    \useURL[url125][https://www.virustotal.com/gui/home/search]\from[url125]
  \item
    \useURL[url126][https://iknowwhatyoudownload.com]\from[url126] (Take
    this with a grain of salt, it might not show anything interesting
    and has limited data sources. This is more for fun than anything
    serious.)
  \stopitemize
\item
  Registration information of an IP (most likely your ISP or the ISP of
  your connection who most likely know who is using that IP at any
  time):

  \startitemize[packed]
  \item
    \useURL[url127][https://whois.domaintools.com/]\from[url127]
  \stopitemize
\item
  Check for open-services or open devices on an IP (especially if there
  are leaky Smart Devices on it):

  \startitemize[packed]
  \item
    \useURL[url128][https://www.shodan.io/host/185.220.101.134]\from[url128]
    (replace the IP by your IP or any other, or change in the search
    box, this example IP is a Tor Exit node)
  \stopitemize
\item
  Various tools to check your IP such as block-lists checkers and more:

  \startitemize
  \item
    \useURL[url129][https://browserleaks.com/ip]\from[url129]
  \item
    \useURL[url130][https://www.whatismyip.com]\from[url130]
  \stopitemize
\item
  Would you like to know if you are connected through Tor?

  \startitemize[packed]
  \item
    \useURL[url131][https://check.torproject.org]\from[url131]
  \stopitemize
\stopitemize

For those reasons, you will need to obfuscate and hide that origin IP
(the one tied to your identification) or hide it through a combination
of various means:

\startitemize
\item
  Using a public Wi-Fi service (free).
\item
  Using the Tor Anonymity Network\footnote{Wikipedia, Tor Anonymity
    Network
    \useURL[url132][https://en.wikipedia.org/wiki/Tor_(anonymity_network)]\from[url132]
    \useURL[url133][https://wikiless.org/wiki/Tor_(anonymity_network)][][{[}Wikiless{]}]\from[url133]
    \useURL[url134][https://web.archive.org/web/https://en.wikipedia.org/wiki/Tor_(anonymity_network)][][{[}Archive.org{]}]\from[url134]}
  (free).
\item
  Using VPN\footnote{Wikipedia, VPN
    \useURL[url135][https://en.wikipedia.org/wiki/Virtual_private_network]\from[url135]
    \useURL[url136][https://wikiless.org/wiki/Virtual_private_network][][{[}Wikiless{]}]\from[url136]
    \useURL[url137][https://web.archive.org/web/https://en.wikipedia.org/wiki/Virtual_private_network][][{[}Archive.org{]}]\from[url137]}
  services anonymously (anonymously paid with cash or Monero).
\stopitemize

Do note that, unfortunately, these solutions are not perfect, and you
will experience performance issues\footnote{Ieee.org, Anonymity
  Trilemma: Strong Anonymity, Low Bandwidth Overhead, Low Latency -
  Choose Two
  \useURL[url138][https://ieeexplore.ieee.org/document/8418599]\from[url138]
  \useURL[url139][https://web.archive.org/web/https://ieeexplore.ieee.org/document/8418599][][{[}Archive.org{]}]\from[url139]}.

All those will be explained later in this guide.

\subsubsection[title={Your DNS and IP
requests:},reference={your-dns-and-ip-requests}]

DNS stands for \quotation{Domain Name System}\footnote{Wikipedia, DNS
  \useURL[url140][https://en.wikipedia.org/wiki/Domain_Name_System]\from[url140]
  \useURL[url141][https://wikiless.org/wiki/Domain_Name_System][][{[}Wikiless{]}]\from[url141]
  \useURL[url142][https://web.archive.org/web/https://en.wikipedia.org/wiki/Domain_Name_System][][{[}Archive.org{]}]\from[url142]}
and is a service used by your browser (and other apps) to find the IP
addresses of a service. It is a huge \quotation{contact list} (phone
book for older people) that works like asking it a name and it returns
the number to call. Except it returns an IP instead.

Every time your browser wants to access a certain service such as Google
through www.google.com. Your Browser (Chrome or Firefox) will query a
DNS service to find the IP addresses of the Google web servers.

Here is a video explaining DNS visually if you are already lost:
\useURL[url143][https://www.youtube.com/watch?v=vrxwXXytEuI]\from[url143]
\useURL[url144][https://yewtu.be/watch?v=vrxwXXytEuI][][{[}Invidious{]}]\from[url144]

Usually, the DNS service is provided by your ISP and automatically
configured by the network you are connecting to. This DNS service could
also be subject to data retention regulations or will just keep logs for
other reasons (data collection for advertising purposes for instance).
Therefore, this ISP will be capable of telling everything you did online
just by looking at those logs which can, in turn, be provided to an
adversary. Conveniently this is also the easiest way for many
adversaries to apply censoring or parental control by using DNS
blocking\footnote{Wikipedia, DNS Blocking
  \useURL[url145][https://en.wikipedia.org/wiki/DNS_blocking]\from[url145]
  \useURL[url146][https://wikiless.org/wiki/DNS_blocking][][{[}Wikiless{]}]\from[url146]
  \useURL[url147][https://web.archive.org/web/https://en.wikipedia.org/wiki/DNS_blocking][][{[}Archive.org{]}]\from[url147]}.
The provided DNS servers will give you a different address (than their
real one) for some websites (like redirecting thepiratebay.org to some
government website). Such blocking is widely applied worldwide for
certain sites\footnote{CensoredPlanet
  \useURL[url148][https://censoredplanet.org/]\from[url148]
  \useURL[url149][https://web.archive.org/web/https://censoredplanet.org/][][{[}Archive.org{]}]\from[url149]}.

Using a private DNS service or your own DNS service would mitigate these
issues, but the other problem is that most of those DNS requests are by
default still sent in clear text (unencrypted) over the network. Even if
you browse PornHub in an incognito Window, using HTTPS and using a
private DNS service, chances are exceedingly high that your browser will
send a clear text unencrypted DNS request to some DNS servers asking
basically \quotation{So what's the IP address of www.pornhub.com?}.

Because it is not encrypted, your ISP and/or any other adversary could
still intercept (using a Man-in-the-middle attack\footnote{Wikipedia,
  MITM
  \useURL[url150][https://en.wikipedia.org/wiki/Man-in-the-middle_attack]\from[url150]
  \useURL[url151][https://wikiless.org/wiki/Man-in-the-middle_attack][][{[}Wikiless{]}]\from[url151]
  \useURL[url152][https://web.archive.org/web/https://en.wikipedia.org/wiki/Man-in-the-middle_attack][][{[}Archive.org{]}]\from[url152]})
your request will know and possibly log what your IP was looking for.
The same ISP can also tamper with the DNS responses even if you are
using a private DNS. Rendering the use of a private DNS service useless.

As a bonus, many devices and apps will use hardcoded DNS servers
bypassing any system setting you could set. This is for example the case
with most (70\letterpercent{}) Smart TVs and a large part
(46\letterpercent{}) of Game Consoles\footnote{ArXiv, Characterizing
  Smart Home IoT Traffic in the Wild
  \useURL[url153][https://arxiv.org/pdf/2001.08288.pdf]\from[url153]
  \useURL[url154][https://web.archive.org/web/https://arxiv.org/pdf/2001.08288.pdf][][{[}Archive.org{]}]\from[url154]}.
For these devices, you will have to force them\footnote{Labzilla.io,
  Your Smart TV is probably ignoring your Pi-Hole
  \useURL[url155][https://labzilla.io/blog/force-dns-pihole]\from[url155]
  \useURL[url156][https://web.archive.org/web/https://labzilla.io/blog/force-dns-pihole][][{[}Archive.org{]}]\from[url156]}
to stop using their hardcoded DNS service which could make them stop
working properly.

A solution to this is to use encrypted DNS using DoH (DNS over
HTTPS\footnote{Wikipedia, DNS over HTTPS:
  \useURL[url157][https://en.wikipedia.org/wiki/DNS_over_HTTPS]\from[url157]
  \useURL[url158][https://wikiless.org/wiki/DNS_over_HTTPS][][{[}Wikiless{]}]\from[url158]
  \useURL[url159][https://web.archive.org/web/https://en.wikipedia.org/wiki/DNS_over_HTTPS][][{[}Archive.org{]}]\from[url159]}),
DoT (DNS over TLS\footnote{Wikipedia, DNS over TLS,
  \useURL[url160][https://en.wikipedia.org/wiki/DNS_over_TLS]\from[url160]
  \useURL[url161][https://wikiless.org/wiki/DNS_over_TLS][][{[}Wikiless{]}]\from[url161]
  \useURL[url162][https://web.archive.org/web/https://en.wikipedia.org/wiki/DNS_over_TLS][][{[}Archive.org{]}]\from[url162]})
with a private DNS server (this can be self-hosted locally with a
solution like pi-hole\footnote{Wikipedia, Pi-Hole
  \useURL[url163][https://en.wikipedia.org/wiki/Pi-hole]\from[url163]
  \useURL[url164][https://wikiless.org/wiki/Pi-hole][][{[}Wikiless{]}]\from[url164]
  \useURL[url165][https://web.archive.org/web/https://en.wikipedia.org/wiki/Pi-hole][][{[}Archive.org{]}]\from[url165]},
remotely hosted with a solution like nextdns.io or using the solutions
provided by your VPN provider or the Tor network). This should prevent
your ISP or some go-between from snooping on your requests \ldots{}
except it might not.

Small in-between Disclaimer: {\bf This guide does not necessarily
endorse or recommend Cloudflare services even if it is mentioned several
times in this section for technical understanding.}

Unfortunately, the TLS protocol used in most HTTPS connections in most
Browsers (Chrome/Brave among them) will leak the Domain Name again
through SNI\footnote{Wikipedia, SNI
  \useURL[url166][https://en.wikipedia.org/wiki/Server_Name_Indication]\from[url166]
  \useURL[url167][https://wikiless.org/wiki/Server_Name_Indication][][{[}Wikiless{]}]\from[url167]
  \useURL[url168][https://web.archive.org/web/https://en.wikipedia.org/wiki/Server_Name_Indication][][{[}Archive.org{]}]\from[url168]}
handshakes (this can be checked here at Cloudflare:
\useURL[url169][https://www.cloudflare.com/ssl/encrypted-sni/]\from[url169]
\useURL[url170][https://web.archive.org/web/https://www.cloudflare.com/ssl/encrypted-sni/][][{[}Archive.org{]}]\from[url170]
). {\bf As of the writing of this guide, only Firefox-based browsers
supports ECH (Encrypted Client Hello}\footnote{Wikipedia, ECH
  \useURL[url171][https://en.wikipedia.org/wiki/Server_Name_Indication\#Encrypted_Client_Hello]\from[url171]
  \useURL[url172][https://wikiless.org/wiki/Server_Name_Indication][][{[}Wikiless{]}]\from[url172]
  \useURL[url173][https://web.archive.org/web/https://en.wikipedia.org/wiki/Server_Name_Indication][][{[}Archive.org{]}]\from[url173]}
{\bf previously known as eSNI}\footnote{Wikipedia, eSNI
  \useURL[url174][https://en.wikipedia.org/wiki/Server_Name_Indication\#Encrypted_Client_Hello]\from[url174]
  \useURL[url175][https://wikiless.org/wiki/Server_Name_Indication][][{[}Wikiless{]}]\from[url175]
  \useURL[url176][https://web.archive.org/web/https://en.wikipedia.org/wiki/Server_Name_Indication][][{[}Archive.org{]}]\from[url176]}{\bf )
on some websites which will encrypt everything end to end (in addition
to using a secure private DNS over TLS/HTTPS) and will allow you to hide
your DNS requests from a third party}\footnote{Usenix.org, On the
  Importance of Encrypted-SNI (ESNI) to Censorship Circumvention
  \useURL[url177][https://www.usenix.org/system/files/foci19-paper_chai_0.pdf]\from[url177]
  \useURL[url178][https://web.archive.org/web/https://www.usenix.org/system/files/foci19-paper_chai_0.pdf][][{[}Archive.org{]}]\from[url178]}{\bf .}
And this option is not enabled by default either so you will have to
enable it yourself.

{[}{]}{[}50{]}

In addition to limited browser support, only web Services and
CDNs\footnote{Wikipedia, CDN
  \useURL[url179][https://en.wikipedia.org/wiki/Content_delivery_network]\from[url179]
  \useURL[url180][https://wikiless.org/wiki/Content_delivery_network][][{[}Wikiless{]}]\from[url180]
  \useURL[url181][https://web.archive.org/web/https://en.wikipedia.org/wiki/Content_delivery_network][][{[}Archive.org{]}]\from[url181]}
behind Cloudflare CDN support ECH/eSNI at this stage\footnote{Cloudflare,
  Good-bye ESNI, hello ECH!
  \useURL[url182][https://blog.cloudflare.com/encrypted-client-hello/]\from[url182]
  \useURL[url183][https://web.archive.org/web/https://blog.cloudflare.com/encrypted-client-hello/][][{[}Archive.org{]}]\from[url183]}.
This means that ECH and eSNI are not supported (as of the writing of
this guide) by most mainstream platforms such as:

\startitemize
\item
  Amazon (including AWS, Twitch\ldots{})
\item
  Microsoft (including Azure, OneDrive, Outlook, Office 365\ldots{})
\item
  Google (including Gmail, Google Cloud\ldots{})
\item
  Apple (including iCloud, iMessage\ldots{})
\item
  Reddit
\item
  YouTube
\item
  Facebook
\item
  Instagram
\item
  Twitter
\item
  GitHub
\item
  \ldots{}
\stopitemize

Some countries like Russia\footnote{ZDNET, Russia wants to ban the use
  of secure protocols such as TLS 1.3, DoH, DoT, ESNI
  \useURL[url184][https://www.zdnet.com/article/russia-wants-to-ban-the-use-of-secure-protocols-such-as-tls-1-3-doh-dot-esni/]\from[url184]
  \useURL[url185][https://web.archive.org/web/https://www.zdnet.com/article/russia-wants-to-ban-the-use-of-secure-protocols-such-as-tls-1-3-doh-dot-esni/][][{[}Archive.org{]}]\from[url185]}
and China\footnote{ZDNET, China is now blocking all encrypted HTTPS
  traffic that uses TLS 1.3 and ESNI
  \useURL[url186][https://www.zdnet.com/article/china-is-now-blocking-all-encrypted-https-traffic-using-tls-1-3-and-esni/]\from[url186]
  \useURL[url187][https://web.archive.org/web/https://www.zdnet.com/article/china-is-now-blocking-all-encrypted-https-traffic-using-tls-1-3-and-esni/][][{[}Archive.org{]}]\from[url187]}
might (unverified despite the articles) block ECH/eSNI handshakes at the
network level to allow snooping and prevent bypassing censorship.
Meaning you will not be able to establish an HTTPS connection with a
service if you do not allow them to see what it was.

The issues do not end here. Part of the HTTPS TLS validation is called
OCSP\footnote{Wikipedia, OCSP
  \useURL[url188][https://en.wikipedia.org/wiki/Online_Certificate_Status_Protocol]\from[url188]
  \useURL[url189][https://wikiless.org/wiki/Online_Certificate_Status_Protocol][][{[}Wikiless{]}]\from[url189]
  \useURL[url190][https://web.archive.org/web/https://en.wikipedia.org/wiki/Online_Certificate_Status_Protocol][][{[}Archive.org{]}]\from[url190]}
and this protocol used by Firefox-based browsers will leak metadata in
the form of the serial number of the certificate of the website you are
visiting. An adversary can then easily find which website you are
visiting by matching the certificate number\footnote{Madaidans
  Insecurities, Why encrypted DNS is ineffective
  \useURL[url191][https://madaidans-insecurities.github.io/encrypted-dns.html]\from[url191]
  \useURL[url192][https://web.archive.org/web/https://madaidans-insecurities.github.io/encrypted-dns.html][][{[}Archive.org{]}]\from[url192]}.
This issue can be mitigated by using OCSP stapling\footnote{Wikipedia,
  OCSP Stapling
  \useURL[url193][https://en.wikipedia.org/wiki/OCSP_stapling]\from[url193]
  \useURL[url194][https://wikiless.org/wiki/OCSP_stapling][][{[}Wikiless{]}]\from[url194]
  \useURL[url195][https://web.archive.org/web/https://en.wikipedia.org/wiki/OCSP_stapling][][{[}Archive.org{]}]\from[url195]}.
Unfortunately, this is enabled but not enforced by default in
Firefox/Tor Browser. But the website you are visiting must also be
supporting it and not all do. Chromium-based browsers on the other hand
use a different system called CRLSets\footnote{Chromium Documentation,
  CRLSets
  \useURL[url196][https://dev.chromium.org/Home/chromium-security/crlsets]\from[url196]
  \useURL[url197][https://web.archive.org/web/https://dev.chromium.org/Home/chromium-security/crlsets][][{[}Archive.org{]}]\from[url197]}'\footnote{ZDNet,
  Chrome does certificate revocation better
  \useURL[url198][https://www.zdnet.com/article/chrome-does-certificate-revocation-better/]\from[url198]
  \useURL[url199][https://web.archive.org/web/https://www.zdnet.com/article/chrome-does-certificate-revocation-better/][][{[}Archive.org{]}]\from[url199]}
which is arguably better.

Here is a list of how various browsers behave with OCSP:
\useURL[url200][https://www.ssl.com/blogs/how-do-browsers-handle-revoked-ssl-tls-certificates/]\from[url200]
\useURL[url201][https://web.archive.org/web/https://www.ssl.com/blogs/how-do-browsers-handle-revoked-ssl-tls-certificates/][][{[}Archive.org{]}]\from[url201]

Here is an illustration of the issue you could encounter on
Firefox-based browsers:

{[}{]}{[}52{]}

Finally, even if you use a custom encrypted DNS server (DoH or DoT) with
ECH/eSNI support and OCSP stapling, it might still not be enough as
traffic analysis studies\footnote{KUL, Encrypted DNS=⇒Privacy? A Traffic
  Analysis Perspective
  \useURL[url202][https://www.esat.kuleuven.be/cosic/publications/article-3153.pdf]\from[url202]
  \useURL[url203][https://web.archive.org/web/https://www.esat.kuleuven.be/cosic/publications/article-3153.pdf][][{[}Archive.org{]}]\from[url203]}
have shown it is still possible to reliably fingerprint and block
unwanted requests. Only DNS over Tor was able to show efficient DNS
Privacy in recent studies but even that can still be defeated by other
means (see \goto{Your Anonymized Tor/VPN
traffic}[your-anonymized-torvpn-traffic]).

One could also decide to use a Tor Hidden DNS Service or ODoH (Oblivious
DNS over HTTPS\footnote{ResearchGate, Oblivious DNS: Practical Privacy
  for DNS Queries
  \useURL[url204][https://www.researchgate.net/publication/332893422_Oblivious_DNS_Practical_Privacy_for_DNS_Queries]\from[url204]
  \useURL[url205][https://web.archive.org/web/https://www.researchgate.net/publication/332893422_Oblivious_DNS_Practical_Privacy_for_DNS_Queries][][{[}Archive.org{]}]\from[url205]})
to further increase privacy/anonymity but {\bf unfortunately}, as far as
we know, these methods are only provided by Cloudflare as of this
writing
(\useURL[url206][https://blog.cloudflare.com/welcome-hidden-resolver/]\from[url206]
\useURL[url207][https://web.archive.org/web/https://blog.cloudflare.com/welcome-hidden-resolver/][][{[}Archive.org{]}]\from[url207],
\useURL[url208][https://blog.cloudflare.com/oblivious-dns/]\from[url208]
\useURL[url209][https://web.archive.org/web/https://blog.cloudflare.com/oblivious-dns/][][{[}Archive.org{]}]\from[url209]).
These are workable and reasonably secure technical options but there is
also a moral choice if you want to use Cloudflare or not (despite the
risk posed by some researchers\footnote{Nymity.ch, The Effect of DNS on
  Tor's Anonymity
  \useURL[url210][https://nymity.ch/tor-dns/]\from[url210]
  \useURL[url211][https://web.archive.org/web/https://nymity.ch/tor-dns/][][{[}Archive.org{]}]\from[url211]}).

{\bf Note that Oblivious DNS addresses an adversary that eavesdrops on
one of the connections listed here but not all. It does not address a
global passive adversary (GPA) who can eavesdrop on many or all of these
connections}: - traffic between the client resolver and the recursive
resolver - the recursive resolver and the ODNS resolver - the ODNS
resolver and an authoritative server.

Lastly, there is also this new possibility called DoHoT which stands for
DNS over HTTPS over Tor which could also further increase your
privacy/anonymity and which you could consider if you are more skilled
with Linux. See
\useURL[url212][https://github.com/alecmuffett/dohot]\from[url212]
\useURL[url213][https://web.archive.org/web/https://github.com/alecmuffett/dohot][][{[}Archive.org{]}]\from[url213].
This guide will not help you with this one at this stage, but it might
be coming soon.

Here is an illustration showing the current state of DNS and HTTPS
privacy based on our current knowledge.

{[}{]}{[}56{]}

As for your normal daily use (non-sensitive), remember that only
Firefox-based browsers support ECH (formerly eSNI) so far and that it is
only useful with websites hosted behind Cloudflare CDN at this stage. If
you prefer a Chrome-based version (which is understandable for some due
to some better-integrated features like on-the-fly Translation), then we
would recommend the use of Brave instead which supports all Chrome
extensions and offers much better privacy than Chrome.

But the story does not stop there right. Now because after all this,
even if you encrypt your DNS and use all possible mitigations. Simple IP
requests to any server will probably allow an adversary to still detect
which site you are visiting. And this is simply because the majority of
websites have unique IPs tied to them as explained here:
\useURL[url214][https://blog.apnic.net/2019/08/23/what-can-you-learn-from-an-ip-address/]\from[url214]
\useURL[url215][https://web.archive.org/web/https://blog.apnic.net/2019/08/23/what-can-you-learn-from-an-ip-address/][][{[}Archive.org{]}]\from[url215].
This means that an adversary can create a dataset of known websites for
instance including their IPs and then match this dataset against the IP
you ask for. In most cases, this will result in a correct guess of the
website you are visiting. This means that despite OCSP stapling, despite
ECH/eSNI, despite using Encrypted DNS \ldots{} An adversary can still
guess the website you are visiting anyway.

Therefore, to mitigate all these issues (as much as possible and as best
as we can), this guide will later recommend two solutions: Using Tor and
a virtualized (See \goto{Appendix W:
Virtualization}[appendix-v1-hardening-your-browsers]) multi-layered
solution of VPN over Tor solution (DNS over VPN over Tor or DNS over
TOR). Other options will also be explained (Tor over VPN, VPN only, No
Tor/VPN) but are less recommended.

\subsubsection[title={Your RFID enabled
devices:},reference={your-rfid-enabled-devices}]

RFID stands for Radio-frequency identification\footnote{Wikipedia, RFID
  \useURL[url216][https://en.wikipedia.org/wiki/Radio-frequency_identification]\from[url216]
  \useURL[url217][https://wikiless.org/wiki/Radio-frequency_identification][][{[}Wikiless{]}]\from[url217]
  \useURL[url218][https://web.archive.org/web/https://web.archive.org/web/20220530073225/https://en.wikipedia.org/wiki/Radio-frequency_identification][][{[}Archive.org{]}]\from[url218]},
it is the technology used for instance for contactless payments and
various identification systems. Of course, your smartphone is among
those devices and has RFID contactless payment capabilities through
NFC\footnote{Wikipedia, NFC
  \useURL[url219][https://en.wikipedia.org/wiki/Near-field_communication]\from[url219]
  \useURL[url220][https://wikiless.org/wiki/Near-field_communication][][{[}Wikiless{]}]\from[url220]
  \useURL[url221][https://web.archive.org/web/https://en.wikipedia.org/wiki/Near-field_communication][][{[}Archive.org{]}]\from[url221]}.
As with everything else, such capabilities can be used for tracking by
various actors.

But unfortunately, this is not limited to your smartphone, and you also
probably carry some amount of RFID enabled device with you all the time
such as:

\startitemize
\item
  Your contactless-enabled credit/debit cards
\item
  Your store loyalty cards
\item
  Your transportation payment cards
\item
  Your work-related access cards
\item
  Your car keys
\item
  Your national ID or driver license
\item
  Your passport
\item
  The price/anti-theft tags on object/clothing
\item
  \ldots{}
\stopitemize

While all these cannot be used to de-anonymize you from a remote online
adversary, they can be used to narrow down a search if your approximate
location at a certain time is known. For instance, you cannot rule out
that some stores will effectively scan (and log) all RFID chips passing
through the door. They might be looking for their loyalty cards but are
also logging others along the way. Such RFID tags could be traced to
your identity and allow for de-anonymization.

More information over at Wikipedia:
\useURL[url222][https://en.wikipedia.org/wiki/Radio-frequency_identification\#Security_concerns]\from[url222]
\useURL[url223][https://wikiless.org/wiki/Radio-frequency_identification][][{[}Wikiless{]}]\from[url223]
\useURL[url224][https://web.archive.org/web/https://web.archive.org/web/20220530073225/https://en.wikipedia.org/wiki/Radio-frequency_identification][][{[}Archive.org{]}]\from[url224]
and
\useURL[url225][https://en.wikipedia.org/wiki/Radio-frequency_identification\#Privacy]\from[url225]
\useURL[url226][https://wikiless.org/wiki/Radio-frequency_identification][][{[}Wikiless{]}]\from[url226]
\useURL[url227][https://web.archive.org/web/https://web.archive.org/web/20220530073225/https://en.wikipedia.org/wiki/Radio-frequency_identification][][{[}Archive.org{]}]\from[url227]

The only way to mitigate this problem is to have no RFID tags on you or
to shield them again using a type of Faraday cage. You could also use
specialized wallets/pouches that specifically block RFID communications.
Many of those are now made by well-known brands such as
Samsonite\footnote{Samsonite Online Shop, RFID accessories
  \useURL[url228][https://shop.samsonite.com/accessories/rfid-accessories/]\from[url228]
  \useURL[url229][https://web.archive.org/web/https://shop.samsonite.com/accessories/rfid-accessories/][][{[}Archive.org{]}]\from[url229]}.
You should just not carry such RFID devices while conducting sensitive
activities.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsubsection[title={The Wi-Fi and Bluetooth devices around
you:},reference={the-wi-fi-and-bluetooth-devices-around-you}]

Geolocation is not only done by using mobile antennas triangulation. It
is also done using the Wi-Fi and Bluetooth devices around you. Operating
systems makers like Google (Android\footnote{Google Android Help,
  Android Location Services
  \useURL[url230][https://support.google.com/accounts/answer/3467281?hl=en]\from[url230]
  \useURL[url231][https://web.archive.org/web/https://support.google.com/accounts/answer/3467281?hl=en][][{[}Archive.org{]}]\from[url231]})
and Apple (IOS\footnote{Apple Support, Location Services and Privacy
  \useURL[url232][https://support.apple.com/en-us/HT207056]\from[url232]
  \useURL[url233][https://web.archive.org/web/https://support.apple.com/en-us/HT207056][][{[}Archive.org{]}]\from[url233]})
maintain a convenient database of most Wi-Fi access points, Bluetooth
devices, and their location. When your Android smartphone or iPhone is
on (and not in Plane mode), it will scan actively (unless you
specifically disable this feature in the settings) Wi-Fi access points,
and Bluetooth devices around you and will be able to geolocate you with
more precision than when using a GPS.

This active and continuous probing can then be sent back to
Google/Apple/Microsoft as part of their Telemetry. The issue is that
this probing is unique and can be used to uniquely identify a user and
track such user. Shops, for example, can use this technique to
fingerprint customers including when they return, where they go in the
shop and how long they stay at a particular place. There are several
papers\footnote{2016 International Conference on Indoor Positioning and
  Indoor Navigation, Wi-Fi probes as digital crumbs for crowd
  localization
  \useURL[url234][http://fly.isti.cnr.it/pub/papers/pdf/Wifi-probes-IPIN16.pdf]\from[url234]
  \useURL[url235][https://web.archive.org/web/http://fly.isti.cnr.it/pub/papers/pdf/Wifi-probes-IPIN16.pdf][][{[}Archive.org{]}]\from[url235]}'\footnote{Southeast
  University of Nanjing, Probe Request Based Device Identification
  Attack and Defense
  \useURL[url236][https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7472341/]\from[url236]
  \useURL[url237][https://web.archive.org/web/https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7472341/][][{[}Archive.org{]}]\from[url237]}
and articles\footnote{Medium.com, The Perils of Probe Requests
  \useURL[url238][https://medium.com/@brannondorsey/wi-fi-is-broken-3f6054210fa5]\from[url238]
  \useURL[url239][https://scribe.rip/@brannondorsey/wi-fi-is-broken-3f6054210fa5][][{[}Scribe.rip{]}]\from[url239]
  \useURL[url240][https://web.archive.org/web/https://medium.com/@brannondorsey/wi-fi-is-broken-3f6054210fa5][][{[}Archive.org{]}]\from[url240]}
describing this issue in depth.

This allows them to provide accurate locations even when GPS is off, but
it also allows them to keep a convenient record of all Wi-Fi Bluetooth
devices all over the world. Which can then be accessed by them or third
parties for tracking.

Note: If you have an Android smartphone, Google probably knows where it
is no matter what you do. You cannot really trust the settings. The
whole operating system is built by a company that wants your data.
Remember that if it is free then you are the product.

But that is not what all those Wi-Fi access points can do. Recently
developed techs could even allow someone to track your movements
accurately just based on radio interferences. What this means is that it
is possible to track your movement inside a room/building based on the
radio signals passing through. This might seem like a tinfoil hat
conspiracy theory claim but here are the references\footnote{State
  University of New York, Towards 3D Human Pose Construction Using Wi-Fi
  \useURL[url241][https://cse.buffalo.edu/~lusu/papers/MobiCom2020.pdf]\from[url241]
  \useURL[url242][https://web.archive.org/web/https://cse.buffalo.edu/~lusu/papers/MobiCom2020.pdf][][{[}Archive.org{]}]\from[url242]}
with demonstrations showing this tech in action:
\useURL[url243][http://rfpose.csail.mit.edu/]\from[url243]
\useURL[url244][https://web.archive.org/web/http://rfpose.csail.mit.edu/][][{[}Archive.org{]}]\from[url244]
and the video here:
\useURL[url245][https://www.youtube.com/watch?v=HgDdaMy8KNE]\from[url245]
\useURL[url246][https://yewtu.be/watch?v=HgDdaMy8KNE][][{[}Invidious{]}]\from[url246]

Other researchers have found a way to count the people in a defined
space using only Wi-Fi, see
\useURL[url247][https://www.news.ucsb.edu/2021/020392/dont-fidget-wifi-will-count-you]\from[url247]
\useURL[url248][https://web.archive.org/web/https://www.news.ucsb.edu/2021/020392/dont-fidget-wifi-will-count-you][][{[}Archive.org{]}]\from[url248]

You could therefore imagine many use cases for such technologies like
recording who enters specific buildings/offices (hotels, hospitals, or
embassies for instance) and then discover who meets who and thereby
tracking them from outside. Even if they have no smartphone on them.

{[}{]}{[}63{]}

Again, such an issue could only be mitigated by being in a room/building
that would act as a Faraday cage.

Here is another video of the same kind of tech in action:
\useURL[url249][https://www.youtube.com/watch?v=FDZ39h-kCS8]\from[url249]
\useURL[url250][https://yewtu.be/watch?v=FDZ39h-kCS8][][{[}Invidious{]}]\from[url250]

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

There is not much you can do about these. Besides being non-identifiable
in the first place.

\subsubsection[title={Malicious/Rogue Wi-Fi Access
Points:},reference={maliciousrogue-wi-fi-access-points}]

These have been used at least since 2008 using an attack called
\quotation{Jasager}\footnote{Digi.Ninja, Jasager
  \useURL[url251][https://digi.ninja/jasager/]\from[url251]
  \useURL[url252][https://web.archive.org/web/https://digi.ninja/jasager/][][{[}Archive.org{]}]\from[url252]}
and can be done by anyone using self-built tools or using commercially
available devices such as Wi-Fi Pineapple\footnote{Hak5 Shop, Wi-Fi
  Pineapple
  \useURL[url253][https://shop.hak5.org/products/wifi-pineapple]\from[url253]
  \useURL[url254][https://web.archive.org/web/https://shop.hak5.org/products/wifi-pineapple][][{[}Archive.org{]}]\from[url254]}.

Here are some videos explaining more about the topic:

\startitemize
\item
  HOPE 2020,
  \useURL[url255][https://archive.org/details/hopeconf2020/20200725_1800_Advanced_Wi-Fi_Hacking_With_\%245_Microcontrollers.mp4][][https://archive.org/details/hopeconf2020/20200725_1800_Advanced_Wi-Fi_Hacking_With_\letterpercent{}245_Microcontrollers.mp4]\from[url255]
\item
  YouTube, Hak5, Wi-Fi Pineapple Mark VII
  \useURL[url256][https://www.youtube.com/watch?v=7v3JR4Wlw4Q]\from[url256]
  \useURL[url257][https://yewtu.be/watch?v=7v3JR4Wlw4Q][][{[}Invidious{]}]\from[url257]
\stopitemize

These devices can fit in a small bag and can take over the Wi-Fi
environment of any place within their range. For instance, a
Bar/Restaurant/Café/Hotel Lobby. These devices can force Wi-Fi clients
to disconnect from their current Wi-Fi (using de-authentication,
disassociation attacks\footnote{Wikipedia, Deautentication Attack
  \useURL[url258][https://en.wikipedia.org/wiki/Wi-Fi_deauthentication_attack]\from[url258]
  \useURL[url259][https://wikiless.org/wiki/Wi-Fi_deauthentication_attack][][{[}Wikiless{]}]\from[url259]
  \useURL[url260][https://web.archive.org/web/https://en.wikipedia.org/wiki/Wi-Fi_deauthentication_attack][][{[}Archive.org{]}]\from[url260]})
while spoofing the normal Wi-Fi networks at the same location. They will
continue to perform this attack until your computer, or you decide to
try to connect to the rogue AP.

These devices can then mimic a captive portal\footnote{Wikipedia,
  Capture Portal
  \useURL[url261][https://en.wikipedia.org/wiki/Captive_portal]\from[url261]
  \useURL[url262][https://wikiless.org/wiki/Captive_portal][][{[}Wikiless{]}]\from[url262]
  \useURL[url263][https://web.archive.org/web/https://en.wikipedia.org/wiki/Captive_portal][][{[}Archive.org{]}]\from[url263]}
with the exact same layout as the Wi-Fi you are trying to access (for
instance an Airport Wi-Fi registration portal). Or they could just give
you unrestricted access internet that they will themselves get from the
same place.

Once you are connected through the Rogue AP, this AP will be able to
execute various man-in-the-middle attacks to perform analysis on your
traffic. These could be malicious redirections or simple traffic
sniffing. These can then easily identify any client that would for
instance try to connect to a VPN server or the Tor Network.

This can be useful when you know someone you want to de-anonymize is in
a crowded place, but you do not know who. This would allow such an
adversary to possibly fingerprint any website you visit despite the use
of HTTPS, DoT, DoH, ODoH, VPN, or Tor using traffic analysis as pointed
above in the DNS section.

These can also be used to carefully craft and serve you advanced
phishing webpages that would harvest your credentials or try to make you
install a malicious certificate allowing them to see your encrypted
traffic.

How to mitigate those? If you do connect to a public wi-fi access point,
use Tor, or use a VPN and then Tor (Tor over VPN) or even (VPN over Tor)
to obfuscate your traffic from the rogue AP while still using it.

\subsubsection[title={Your Anonymized Tor/VPN
traffic:},reference={your-anonymized-torvpn-traffic}]

Tor and VPNs are not silver bullets. Many advanced techniques have been
developed and studied to de-anonymize encrypted Tor traffic over the
years\footnote{HackerFactor Blog, Deanonymizing Tor Circuits
  \useURL[url264][https://www.hackerfactor.com/blog/index.php?/archives/868-Deanonymizing-Tor-Circuits.html]\from[url264]
  \useURL[url265][https://web.archive.org/web/https://www.hackerfactor.com/blog/index.php?/archives/868-Deanonymizing-Tor-Circuits.html][][{[}Archive.org{]}]\from[url265]}.
Most of those techniques are Correlation attacks that will correlate
your network traffic in one way or another to logs or datasets. Here are
some examples:

\startitemize[packed]
\item
  {\bf Correlation Fingerprinting Attack:} As illustrated (simplified)
  below, this attack will fingerprint your encrypted Tor traffic (like
  the websites you visited) based on the analysis of your encrypted
  traffic without decrypting it. Some of those methods can do so with a
  96\letterpercent{} success rate {\bf in a closed-world setting}.
  {\bf The efficacy of those methods in a real open-world setting}
  {\bf has not been demonstrated yet and would probably require
  tremendous resources computing power making it very unlikely that such
  techniques would be used by a local adversary in the near future.}
  Such techniques could however hypothetically be used by an advanced
  and probably global adversary with access to your source network to
  determine some of your activity. Examples of those attacks are
  described in several research papers\footnote{KU Leuven, Website
    Fingerprinting through Deep Learning
    \useURL[url266][https://distrinet.cs.kuleuven.be/software/tor-wf-dl/]\from[url266]
    \useURL[url267][https://web.archive.org/web/https://distrinet.cs.kuleuven.be/software/tor-wf-dl/][][{[}Archive.org{]}]\from[url267]}\quote{\footnote{KU
    Leuven, Deep Fingerprinting: Undermining Website Fingerprinting
    Defenses with Deep Learning
    \useURL[url268][https://homes.esat.kuleuven.be/~mjuarezm/index_files/pdf/ccs18.pdf]\from[url268]
    \useURL[url269][https://web.archive.org/web/https://homes.esat.kuleuven.be/~mjuarezm/index_files/pdf/ccs18.pdf][][{[}Archive.org{]}]\from[url269]}}\footnote{Internet
    Society, Website Fingerprinting at Internet Scale
    \useURL[url270][https://web.archive.org/web/20160617040428/https://www.internetsociety.org/sites/default/files/blogs-media/website-fingerprinting-internet-scale.pdf]\from[url270]
    \useURL[url271][https://web.archive.org/web/20160617040428/https://www.internetsociety.org/sites/default/files/blogs-media/website-fingerprinting-internet-scale.pdf][][{[}Archive.org{]}]\from[url271]}
  as well as their limitations\footnote{KU Leuven, A Critical Evaluation
    of Website Fingerprinting Attacks
    \useURL[url272][https://www.esat.kuleuven.be/cosic/publications/article-2456.pdf]\from[url272]
    \useURL[url273][https://web.archive.org/web/https://www.esat.kuleuven.be/cosic/publications/article-2456.pdf][][{[}Archive.org{]}]\from[url273]}.
  The Tor Project itself published an article about these attacks with
  some mitigations:
  \useURL[url274][https://blog.torproject.org/new-low-cost-traffic-analysis-attacks-mitigations]\from[url274]
  \useURL[url275][https://web.archive.org/web/https://blog.torproject.org/new-low-cost-traffic-analysis-attacks-mitigations][][{[}Archive.org{]}]\from[url275].
\stopitemize

{[}{]}{[}67{]}

\startitemize[packed]
\item
  {\bf Correlation Timing Attacks:} As illustrated (simplified) below,
  an adversary that has access to network connection logs (IP or DNS for
  instance, remember that most VPN servers and most Tor nodes are known
  and publicly listed) at the source and the destination could correlate
  the timings to de-anonymize you without requiring any access to the
  Tor or VPN network in between. A real use case of this technique was
  done by the FBI in 2013 to de-anonymize\footnote{DailyDot, How Tor
    helped catch the Harvard bomb threat suspect
    \useURL[url276][https://www.dailydot.com/unclick/tor-harvard-bomb-suspect/]\from[url276]
    \useURL[url277][https://web.archive.org/web/https://www.dailydot.com/unclick/tor-harvard-bomb-suspect/][][{[}Archive.org{]}]\from[url277]}
  a bomb threat hoax at Harvard University.
\stopitemize

{[}{]}{[}68{]}

\startitemize[packed]
\item
  {\bf Correlation Counting Attacks:} As illustrated (simplified) below,
  an adversary that has no access to detailed connection logs (cannot
  see that you used Tor or Netflix) but has access to data counting logs
  could see that you have downloaded 600MB on a specific time/date that
  matches the 600MB upload at the destination. This correlation can then
  be used to de-anonymize you over time.
\stopitemize

{[}{]}{[}69{]}

There are ways to mitigate these such as:

\startitemize
\item
  Do not use Tor/VPNs to access services that are on the same network
  (ISP) as the destination service. For example, do not connect to Tor
  from your University Network to access a University Service
  anonymously. Instead, use a different source point (such as a public
  Wi-Fi) that cannot be correlated easily by an adversary.
\item
  Do not use Tor/VPN from an obviously heavily monitored network (such
  as a corporate/governmental network) but instead try to find an
  unmonitored network such as a public Wi-Fi or a residential Wi-Fi.
\item
  Consider the use of multiple layers (such as what will be recommended
  in this guide later: VPN over Tor) so that an adversary might be able
  to see that someone connected to the service through Tor but will not
  be able to see that it was you because you were connected to a VPN and
  not the Tor Network.
\stopitemize

Be aware again that this might not be enough against a motivated global
adversary\footnote{ArsTechnica, How the NSA can break trillions of
  encrypted Web and VPN connections
  \useURL[url278][https://arstechnica.com/information-technology/2015/10/how-the-nsa-can-break-trillions-of-encrypted-web-and-vpn-connections/]\from[url278]
  \useURL[url279][https://web.archive.org/web/https://arstechnica.com/information-technology/2015/10/how-the-nsa-can-break-trillions-of-encrypted-web-and-vpn-connections/][][{[}Archive.org{]}]\from[url279]}
with wide access to global mass surveillance. Such an adversary might
have access to logs no matter where you are and could use those to
de-anonymize you. Usually, these attacks are part of what is called a
Sybil Attack\footnote{Wikipedia, Sybil Attack
  \useURL[url280][https://en.wikipedia.org/wiki/Sybil_attack]\from[url280]
  \useURL[url281][https://wikiless.org/wiki/Sybil_attack][][{[}Wikiless{]}]\from[url281]
  \useURL[url282][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sybil_attack][][{[}Archive.org{]}]\from[url282]}.
{\bf These adversaries are out of the scope of this guide.}

Be also aware that all the other methods described in this guide such as
Behavioral analysis can also be used to deanonymize Tor users indirectly
(see further \goto{Your Digital Fingerprint, Footprint, and Online
Behavior}[your-digital-fingerprint-footprint-and-online-behavior]).

I also strongly recommend reading this very good, complete, and thorough
(and more detailed) guide on most known Attack Vectors on Tor:
\useURL[url283][https://github.com/Attacks-on-Tor/Attacks-on-Tor]\from[url283]
\useURL[url284][https://web.archive.org/web/https://github.com/Attacks-on-Tor/Attacks-on-Tor][][{[}Archive.org{]}]\from[url284]
as well as this recent research publication
\useURL[url285][https://www.researchgate.net/publication/323627387_Shedding_Light_on_the_Dark_Corners_of_the_Internet_A_Survey_of_Tor_Research]\from[url285]
\useURL[url286][https://web.archive.org/web/https://www.researchgate.net/publication/323627387_Shedding_Light_on_the_Dark_Corners_of_the_Internet_A_Survey_of_Tor_Research][][{[}Archive.org{]}]\from[url286]

As well as this great series of blog posts:
\useURL[url287][https://www.hackerfactor.com/blog/index.php?/archives/906-Tor-0day-The-Management-Vulnerability.html]\from[url287]
\useURL[url288][https://web.archive.org/web/https://www.hackerfactor.com/blog/index.php?/archives/906-Tor-0day-The-Management-Vulnerability.html][][{[}Archive.org{]}]\from[url288]

Recently, one of these attacks was attempted on the Tor Network with
more information here:
\useURL[url289][https://arstechnica.com/information-technology/2014/07/active-attack-on-tor-network-tried-to-decloak-users-for-five-months/]\from[url289]
\useURL[url290][https://web.archive.org/web/https://arstechnica.com/information-technology/2014/07/active-attack-on-tor-network-tried-to-decloak-users-for-five-months/][][{[}Archive.org{]}]\from[url290]

Lastly, do remember that using Tor can already be considered suspicious
activity\footnote{ArsTechnica, Does Tor provide more benefit or harm?
  New paper says it depends
  \useURL[url291][https://arstechnica.com/gadgets/2020/11/does-tor-provide-more-benefit-or-harm-new-paper-says-it-depends/]\from[url291]
  \useURL[url292][https://web.archive.org/web/https://arstechnica.com/gadgets/2020/11/does-tor-provide-more-benefit-or-harm-new-paper-says-it-depends/][][{[}Archive.org{]}]\from[url292]},
and its use could be considered malicious by some\footnote{ResearchGate,
  The potential harms of the Tor anonymity network cluster
  disproportionately in free countries
  \useURL[url293][https://www.pnas.org/content/early/2020/11/24/2011893117]\from[url293]
  \useURL[url294][https://web.archive.org/web/https://www.pnas.org/content/early/2020/11/24/2011893117][][{[}Archive.org{]}]\from[url294]}.

This guide will later propose some mitigations to such attacks by
changing your origin from the start (using public wi-fi's for instance).
Remember that such attacks are usually carried by highly skilled, highly
resourceful, and motivated adversaries and are out of scope from this
guide. It is also recommended that you learn about practical correlation
attacks, as performed by intelligence agencies:
\useURL[url295][https://officercia.mirror.xyz/WeAilwJ9V4GIVUkYa7WwBwV2II9dYwpdPTp3fNsPFjo]\from[url295]
\useURL[url296][https://web.archive.org/web/20220516000616/https://officercia.mirror.xyz/WeAilwJ9V4GIVUkYa7WwBwV2II9dYwpdPTp3fNsPFjo][][{[}Archive.org{]}]\from[url296]

{\bf Disclaimer: it should also be noted that Tor is not designed to
protect against a global adversary. For more information see
\useURL[url297][https://svn-archive.torproject.org/svn/projects/design-paper/tor-design.pdf]\from[url297]
\useURL[url298][https://web.archive.org/web/https://svn-archive.torproject.org/svn/projects/design-paper/tor-design.pdf][][{[}Archive.org{]}]\from[url298]
and specifically, \quotation{Part 3. Design goals and assumptions.}.}

\subsubsection[title={Some Devices can be tracked even when
offline:},reference={some-devices-can-be-tracked-even-when-offline}]

You have seen this in action/spy/Sci-Fi movies and shows, the
protagonists always remove the battery of their phones to make sure it
cannot be used. Most people would think that's overkill. Well,
unfortunately, no, this is now becoming true at least for some devices:

\startitemize
\item
  iPhones and iPads (IOS 13 and above)\footnote{CryptoEngineering, How
    does Apple (privately) find your offline devices?
    \useURL[url299][https://blog.cryptographyengineering.com/2019/06/05/how-does-apple-privately-find-your-offline-devices/]\from[url299]
    \useURL[url300][https://web.archive.org/web/https://blog.cryptographyengineering.com/2019/06/05/how-does-apple-privately-find-your-offline-devices/][][{[}Archive.org{]}]\from[url300]}'\footnote{Apple
    Support
    \useURL[url301][https://support.apple.com/en-us/HT210515]\from[url301]
    \useURL[url302][https://web.archive.org/web/https://support.apple.com/en-us/HT210515][][{[}Archive.org{]}]\from[url302]}
\item
  Samsung Phones (Android 10 and above)\footnote{XDA, Samsung's Find My
    Mobile app can locate Galaxy devices even when they're offline
    \useURL[url303][https://www.xda-developers.com/samsung-find-my-mobile-app-locate-galaxy-devices-offline/]\from[url303]
    \useURL[url304][https://web.archive.org/web/https://www.xda-developers.com/samsung-find-my-mobile-app-locate-galaxy-devices-offline/][][{[}Archive.org{]}]\from[url304]}
\item
  MacBooks (macOS 10.15 and above)\footnote{Apple Support, If your Mac
    is lost or stolen
    \useURL[url305][https://support.apple.com/en-us/HT204756]\from[url305]
    \useURL[url306][https://web.archive.org/web/https://support.apple.com/en-us/HT204756][][{[}Archive.org{]}]\from[url306]}
\stopitemize

Such devices will continue to broadcast identity information to nearby
devices even when offline using Bluetooth Low-Energy\footnote{Wikipedia,
  BLE
  \useURL[url307][https://en.wikipedia.org/wiki/Bluetooth_Low_Energy]\from[url307]
  \useURL[url308][https://wikiless.org/wiki/Bluetooth_Low_Energy][][{[}Wikiless{]}]\from[url308]
  \useURL[url309][https://web.archive.org/web/https://en.wikipedia.org/wiki/Bluetooth_Low_Energy][][{[}Archive.org{]}]\from[url309]}.
They do not have access to the devices directly (which are not connected
to the internet) but instead use BLE to find them through other nearby
devices\footnote{Cryptography Engineering Blog, How does Apple
  (privately) find your offline devices?
  \useURL[url310][https://blog.cryptographyengineering.com/2019/06/05/how-does-apple-privately-find-your-offline-devices/]\from[url310]
  \useURL[url311][https://web.archive.org/web/https://blog.cryptographyengineering.com/2019/06/05/how-does-apple-privately-find-your-offline-devices/][][{[}Archive.org{]}]\from[url311]}.
They are using peer-to-peer short-range Bluetooth communication to
broadcast their status through nearby online devices.

They could now find such devices and keep the location in some database
that could then be used by third parties or themselves for various
purposes (including analytics, advertising, or evidence/intelligence
gathering).

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

TLDR: Do not take such devices with you when conducting sensitive
activities.

\subsection[title={Your Hardware
Identifiers:},reference={your-hardware-identifiers}]

\subsubsection[title={Your IMEI and IMSI (and by extension, your phone
number):},reference={your-imei-and-imsi-and-by-extension-your-phone-number}]

The IMEI (International Mobile Equipment Identity\footnote{Wikipedia,
  IMEI
  \useURL[url312][https://en.wikipedia.org/wiki/International_Mobile_Equipment_Identity]\from[url312]
  \useURL[url313][https://wikiless.org/wiki/International_Mobile_Equipment_Identity][][{[}Wikiless{]}]\from[url313]
  \useURL[url314][https://web.archive.org/web/https://en.wikipedia.org/wiki/International_Mobile_Equipment_Identity][][{[}Archive.org{]}]\from[url314]})
and the IMSI (International Mobile Subscriber Identity\footnote{Wikipedia,
  IMSI
  \useURL[url315][https://en.wikipedia.org/wiki/International_mobile_subscriber_identity]\from[url315]
  \useURL[url316][https://wikiless.org/wiki/International_mobile_subscriber_identity][][{[}Wikiless{]}]\from[url316]
  \useURL[url317][https://web.archive.org/web/https://en.wikipedia.org/wiki/International_mobile_subscriber_identity][][{[}Archive.org{]}]\from[url317]})
are unique numbers created by cell phone manufacturers and cell phone
operators.

The IMEI is tied directly to the phone you are using. This number is
known and tracked by the cell phone operators and known by the
manufacturers. Every time your phone connects to the mobile network, it
will register the IMEI on the network along with the IMSI (if a SIM card
is inserted but that is not even needed). It is also used by many
applications (Banking apps abusing the phone permission on Android for
instance\footnote{Android Documentation, Device Identifiers
  \useURL[url318][https://source.android.com/devices/tech/config/device-identifiers]\from[url318]
  \useURL[url319][https://web.archive.org/web/https://source.android.com/devices/tech/config/device-identifiers][][{[}Archive.org{]}]\from[url319]})
and smartphone Operating Systems (Android/IOS) for identification of the
device\footnote{Google Privacy Policy, Look for IMEI
  \useURL[url320][https://policies.google.com/privacy/embedded?hl=en-US]\from[url320]
  \useURL[url321][https://web.archive.org/web/https://policies.google.com/privacy/embedded?hl=en-US][][{[}Archive.org{]}]\from[url321]}.
It is possible but difficult (and not illegal in many
jurisdictions\footnote{Wikipedia, IMEI and the Law
  \useURL[url322][https://en.wikipedia.org/wiki/International_Mobile_Equipment_Identity\#IMEI_and_the_law]\from[url322]
  \useURL[url323][https://wikiless.org/wiki/International_Mobile_Equipment_Identity][][{[}Wikiless{]}]\from[url323]
  \useURL[url324][https://web.archive.org/web/https://en.wikipedia.org/wiki/International_Mobile_Equipment_Identity][][{[}Archive.org{]}]\from[url324]})
to change the IMEI on a phone but it is probably easier and cheaper to
just find and buy some old (working) Burner phone for a few Euros (this
guide is for Germany remember) at a flea market or some random small
shop.

The IMSI is tied directly to the mobile subscription or pre-paid plan
you are using and is tied to your phone number by your mobile provider.
The IMSI is hardcoded directly on the SIM card and cannot be changed.
Remember that every time your phone connects to the mobile network, it
will also register the IMSI on the network along with the IMEI. Like the
IMEI, the IMSI is also being used by some applications and smartphone
Operating systems for identification and is being tracked. Some
countries in the EU for instance maintain a database of IMEI/IMSI
associations for easy querying by Law Enforcement.

Today, giving away your (real) phone number is the same or better than
giving away your Social Security number/Passport ID/National ID.

The IMEI and IMSI can be traced back to you in at least six ways:

\startitemize
\item
  The mobile operator subscriber logs will usually store the IMEI along
  with the IMSI and their subscriber information database. If you use a
  prepaid anonymous SIM (anonymous IMSI but with a known IMEI), they
  could see this cell belongs to you if you used that cell phone before
  with a different SIM card (different anonymous IMSI but same known
  IMEI).
\item
  The mobile operator antenna logs will conveniently keep a log of which
  IMEI. IMSI also keep some connection data. They know and log for
  instance that a phone with this IMEI/IMSI combination connected to a
  set of mobile antennas and how powerful the signal to each of those
  antennas were, allowing easy triangulation/geolocation of the signal.
  They also know which other phones (your real one for instance)
  connected at the same time to the same antennas with the same signal.
  This makes it possible to know precisely that this \quotation{burner
  phone} was always connected at the same place/time than this other
  \quotation{known phone} which shows up every time the burner phone is
  being used. This information can/is used by various third parties to
  geolocate/track you quite precisely\footnote{Bellingcat, The GRU
    Globetrotters: Mission London
    \useURL[url325][https://www.bellingcat.com/news/uk-and-europe/2019/06/28/the-gru-globetrotters-mission-london/]\from[url325]
    \useURL[url326][https://web.archive.org/web/https://www.bellingcat.com/news/uk-and-europe/2019/06/28/the-gru-globetrotters-mission-london/][][{[}Archive.org{]}]\from[url326]}'\footnote{Bellingcat,\quotation{V}
    For \quotation{Vympel}: FSB's Secretive Department \quotation{V}
    Behind Assassination Of Georgian Asylum Seeker In Germany
    \useURL[url327][https://www.bellingcat.com/news/uk-and-europe/2020/02/17/v-like-vympel-fsbs-secretive-department-v-behind-assassination-of-zelimkhan-khangoshvili/]\from[url327]
    \useURL[url328][https://web.archive.org/web/https://www.bellingcat.com/news/uk-and-europe/2020/02/17/v-like-vympel-fsbs-secretive-department-v-behind-assassination-of-zelimkhan-khangoshvili/][][{[}Archive.org{]}]\from[url328]}.
\item
  The manufacturer of the Phone can trace back the sale of the phone
  using the IMEI if that phone was bought in a non-anonymous way.
  Indeed, they will have logs of each phone sale (including serial
  number and IMEI), to which shop/person to whom it was sold. And if you
  are using a phone that you bought online (or from someone that knows
  you). It can be traced to you using that information. Even if they do
  not find you on CCTV\footnote{Wikipedia, CCTV
    \useURL[url329][https://en.wikipedia.org/wiki/Closed-circuit_television]\from[url329]
    \useURL[url330][https://wikiless.org/wiki/Closed-circuit_television][][{[}Wikiless{]}]\from[url330]
    \useURL[url331][https://web.archive.org/web/https://en.wikipedia.org/wiki/Closed-circuit_television][][{[}Archive.org{]}]\from[url331]}
  and you bought the phone using cash, they can still find what other
  phone (your real one in your pocket) was there (in that shop) at that
  time/date by using the antenna logs.
\item
  The IMSI alone can be used to find you as well because most countries
  now require customers to provide an ID when buying a SIM card
  (subscription or pre-paid). The IMSI is then tied to the identity of
  the buyer of the card. In the countries where the SIM can still be
  bought with cash (like the UK), they still know where (which shop) it
  was bought and when. This information can then be used to retrieve
  information from the shop itself (such as CCTV footage as for the IMEI
  case). Or again the antenna logs can also be used to figure out which
  other phone was there at the moment of the sale.
\item
  The smartphone OS makers (Google/Apple for Android/IOs) also keep logs
  of IMEI/IMSI identifications tied to Google/Apple accounts and which
  user has been using them. They too can trace back the history of the
  phone and to which accounts it was tied in the past\footnote{Apple,
    Transparency Report, Device Requests
    \useURL[url332][https://www.apple.com/legal/transparency/device-requests.html]\from[url332]
    \useURL[url333][https://web.archive.org/web/https://www.apple.com/legal/transparency/device-requests.html][][{[}Archive.org{]}]\from[url333]}.
\item
  Government agencies around the world interested in your phone number
  can and do use\footnote{The Intercept, How Cops Can Secretly Track
    Your Phone
    \useURL[url334][https://theintercept.com/2020/07/31/protests-surveillance-stingrays-dirtboxes-phone-tracking/]\from[url334]
    \useURL[url335][http://27m3p2uv7igmj6kvd4ql3cct5h3sdwrsajovkkndeufumzyfhlfev4qd.onion/2020/07/31/protests-surveillance-stingrays-dirtboxes-phone-tracking/][][{[}Tor
    Mirror{]}]\from[url335]
    \useURL[url336][https://web.archive.org/web/https://theintercept.com/2020/07/31/protests-surveillance-stingrays-dirtboxes-phone-tracking/][][{[}Archive.org{]}]\from[url336]}
  special devices called \quotation{IMSI catchers}\footnote{Wikipedia,
    IMSI Catcher
    \useURL[url337][https://en.wikipedia.org/wiki/IMSI-catcher]\from[url337]
    \useURL[url338][https://wikiless.org/wiki/IMSI-catcher][][{[}Wikiless{]}]\from[url338]
    \useURL[url339][https://web.archive.org/web/https://en.wikipedia.org/wiki/IMSI-catcher][][{[}Archive.org{]}]\from[url339]}
  like the Stingray\footnote{Wikipedia, Stingray
    \useURL[url340][https://en.wikipedia.org/wiki/Stingray_phone_tracker]\from[url340]
    \useURL[url341][https://wikiless.org/wiki/Stingray_phone_tracker][][{[}Wikiless{]}]\from[url341]
    \useURL[url342][https://web.archive.org/web/https://en.wikipedia.org/wiki/Stingray_phone_tracker][][{[}Archive.org{]}]\from[url342]}
  or more recently the Nyxcell\footnote{Gizmodo, Cops Turn to Canadian
    Phone-Tracking Firm After Infamous \quote{Stingrays} Become
    \quote{Obsolete}
    \useURL[url343][https://gizmodo.com/american-cops-turns-to-canadian-phone-tracking-firm-aft-1845442778]\from[url343]
    \useURL[url344][https://web.archive.org/web/https://gizmodo.com/american-cops-turns-to-canadian-phone-tracking-firm-aft-1845442778][][{[}Archive.org{]}]\from[url344]}.
  These devices can impersonate (to spoof) a cell phone Antenna and
  force a specific IMSI (your phone) to connect to it to access the cell
  network. Once they do, they will be able to use various MITM\footnote{Wikipedia,
    MITM
    \useURL[url345][https://en.wikipedia.org/wiki/Man-in-the-middle_attack]\from[url345]
    \useURL[url346][https://wikiless.org/wiki/Man-in-the-middle_attack][][{[}Wikiless{]}]\from[url346]
    \useURL[url347][https://web.archive.org/web/https://en.wikipedia.org/wiki/Man-in-the-middle_attack][][{[}Archive.org{]}]\from[url347]}
  (Man-In-The-Middle Attacks) that will allow them to:

  \startitemize
  \item
    Tap your phone (voice calls and SMS).
  \item
    Sniff and examine your data traffic.
  \item
    Impersonate your phone number without controlling your phone.
  \item
    \ldots{}
  \stopitemize
\stopitemize

Here is also a good YouTube video on this topic: DEFCON Safe Mode -
Cooper Quintin - Detecting Fake 4G Base Stations in Real-Time
\useURL[url348][https://www.youtube.com/watch?v=siCk4pGGcqA]\from[url348]
\useURL[url349][https://yewtu.be/watch?v=siCk4pGGcqA][][{[}Invidious{]}]\from[url349]

{\bf For these reasons, it is crucial to get a dedicated anonymous phone
number and/or an anonymous burner phone with a cash-bought pre-paid sim
card that is not tied to you in any way (past or present) for conducting
sensitive activities. It is also possible to get an anonymous pre-paid
but preferably dedicated number from free and paid online services
accepting anonymous cryptocurrencies like Monero. Get more practical
guidance here: \goto{Getting an anonymous Phone
number}[getting-an-anonymous-phone-number].}

While there are some smartphones manufacturers like Purism with their
Librem series\footnote{Purism, Librem 5
  \useURL[url350][https://shop.puri.sm/shop/librem-5/]\from[url350]
  \useURL[url351][https://web.archive.org/web/https://shop.puri.sm/shop/librem-5/][][{[}Archive.org{]}]\from[url351]}
who claim to have your privacy in mind, they still do not allow IMEI
randomization which we believe is a key anti-tracking feature that
should be provided by such manufacturers. While this measure will not
prevent IMSI tracking within the SIM card, it would at least allow you
to keep the same \quotation{burner phone} and only switch SIM cards
instead of having to switch both for privacy.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsubsection[title={Your Wi-Fi or Ethernet MAC
address:},reference={your-wi-fi-or-ethernet-mac-address}]

The MAC address\footnote{Wikipedia, MAC Address
  \useURL[url352][https://en.wikipedia.org/wiki/MAC_address]\from[url352]
  \useURL[url353][https://wikiless.org/wiki/MAC_address][][{[}Wikiless{]}]\from[url353]
  \useURL[url354][https://web.archive.org/web/https://en.wikipedia.org/wiki/MAC_address][][{[}Archive.org{]}]\from[url354]}
is a unique identifier tied to your physical Network Interface (Wired
Ethernet or Wi-Fi) and could of course be used to track you if it is not
randomized. As it was the case with the IMEI, manufacturers of computers
and network cards usually keep logs of their sales (usually including
things like serial number, IMEI, Mac Addresses, \ldots{}) and it is
possible again for them to track where and when the computer with the
MAC address in question was sold and to whom. Even if you bought it with
cash in a supermarket, the supermarket might still have CCTV (or a CCTV
just outside that shop) and again the time/date of sale could be used to
find out who was there using the Mobile Provider antenna logs at that
time (IMEI/IMSI).

Operating Systems makers (Google/Microsoft/Apple) will also keep logs of
devices and their MAC addresses in their logs for device identification
(Find my device type services for example). Apple can tell that the
MacBook with this specific MAC address was tied to a specific Apple
Account before. Maybe yours before you decided to use the MacBook for
sensitive activities. Maybe to a different user who sold it to you but
remembers your e-mail/number from when the sale happened.

Your home router/Wi-Fi access point keeps logs of devices that are
registered on the Wi-Fi, and these can be accessed too to find out who
has been using your Wi-Fi. Sometimes this can be done remotely (and
silently) by the ISP depending on if that router/Wi-Fi access point is
being \quotation{managed} remotely by the ISP (which is often the case
when they provide the router to their customers).

Some commercial devices will keep a record of MAC addresses roaming
around for various purposes such as road congestion\footnote{Acyclica
  Road Trend Product Sheet,
  \useURL[url355][https://web.archive.org/web/https://amsignalinc.com/data-sheets/Acyclica/Acyclica-RoadTrend-Product-Sheet.pdf]\from[url355]
  \useURL[url356][https://web.archive.org/web/https://amsignalinc.com/data-sheets/Acyclica/Acyclica-RoadTrend-Product-Sheet.pdf][][{[}Archive.org{]}]\from[url356]}.

{\bf So, it is important again not to bring your phone along when/where
you conduct sensitive activities. If you use your own laptop, then it is
crucial to hide that MAC address (and Bluetooth address) anywhere you
use it and be extra careful not to leak any information. Thankfully many
recent OSes now feature or allow the possibility to randomize MAC
addresses (Android, IOS, Linux, and Windows 10/11)} with the notable
exception of macOS which does not support this feature even in its
latest Big Sur version.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsubsection[title={Your Bluetooth MAC
address:},reference={your-bluetooth-mac-address}]

Your Bluetooth MAC is like the earlier MAC address except it is for
Bluetooth. Again, it can be used to track you as manufacturers and
operating system makers keep logs of such information. It could be tied
to a sale place/time/date or accounts and then could be used to track
you with such information, the shop billing information, the CCTV, or
the mobile antenna logs in correlation.

Operating systems have protections in place to randomize those addresses
but are still subject to vulnerabilities\footnote{ResearchGate, Tracking
  Anonymized Bluetooth Devices
  \useURL[url357][https://www.researchgate.net/publication/334590931_Tracking_Anonymized_Bluetooth_Devices/fulltext/5d3308db92851cd04675a469/Tracking-Anonymized-Bluetooth-Devices.pdf]\from[url357]
  \useURL[url358][https://web.archive.org/web/https://www.researchgate.net/publication/334590931_Tracking_Anonymized_Bluetooth_Devices/fulltext/5d3308db92851cd04675a469/Tracking-Anonymized-Bluetooth-Devices.pdf][][{[}Archive.org{]}]\from[url358]}.

For this reason, and unless you really need those, you should just
disable Bluetooth completely in the BIOS/UEFI settings if possible or in
the Operating System otherwise.

On Windows 10, you will need to disable and enable the Bluetooth device
in the device manager itself to force randomization of the address for
next use and prevent tracking.

In general, this should not be too much of a concern compared to MAC
Addresses. BT Addresses are randomized quite often.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsection[title={Your CPU:},reference={your-cpu}]

All modern CPUs\footnote{Wikipedia, CPU
  \useURL[url359][https://en.wikipedia.org/wiki/Central_processing_unit]\from[url359]
  \useURL[url360][https://wikiless.org/wiki/Central_processing_unit][][{[}Wikiless{]}]\from[url360]
  \useURL[url361][https://web.archive.org/web/https://en.wikipedia.org/wiki/Central_processing_unit][][{[}Archive.org{]}]\from[url361]}
are now integrating hidden management platforms such as the now infamous
Intel Management Engine\footnote{Wikipedia, Intel Management Engine
  \useURL[url362][https://en.wikipedia.org/wiki/Intel_Management_Engine]\from[url362]
  \useURL[url363][https://wikiless.org/wiki/Intel_Management_Engine][][{[}Wikiless{]}]\from[url363]
  \useURL[url364][https://web.archive.org/web/https://en.wikipedia.org/wiki/Intel_Management_Engine][][{[}Archive.org{]}]\from[url364]}
and the AMD Platform Security Processor\footnote{Wikipedia, AMD Platform
  Security Processor
  \useURL[url365][https://en.wikipedia.org/wiki/AMD_Platform_Security_Processor]\from[url365]
  \useURL[url366][https://wikiless.org/wiki/AMD_Platform_Security_Processor][][{[}Wikiless{]}]\from[url366]
  \useURL[url367][https://web.archive.org/web/https://en.wikipedia.org/wiki/AMD_Platform_Security_Processor][][{[}Archive.org{]}]\from[url367]}.

Those management platforms are small operating systems running directly
on your CPU as long as they have power. These systems have full access
to your computer's network and could be accessed by an adversary to
de-anonymize you in various ways (using direct access or using malware
for instance) as shown in this enlightening video: BlackHat, How to Hack
a Turned-Off Computer, or Running Unsigned Code in Intel Management
Engine
\useURL[url368][https://www.youtube.com/watch?v=9fhNokIgBMU]\from[url368]
\useURL[url369][https://yewtu.be/watch?v=mYsTBPqbya8][][{[}Invidious{]}]\from[url369].

These have already been affected by several security vulnerabilities in
the past\footnote{Wikipedia, IME, Security Vulnerabilities
  \useURL[url370][https://en.wikipedia.org/wiki/Intel_Management_Engine\#Security_vulnerabilities]\from[url370]
  \useURL[url371][https://wikiless.org/wiki/Intel_Management_Engine][][{[}Wikiless{]}]\from[url371]
  \useURL[url372][https://web.archive.org/web/https://en.wikipedia.org/wiki/Intel_Management_Engine][][{[}Archive.org{]}]\from[url372]}
that allowed malware to gain control of target systems. These are also
accused by many privacy actors including the EFF and Libreboot of being
a backdoor into any system\footnote{Wikipedia, IME, Assertions that ME
  is a backdoor
  \useURL[url373][https://en.wikipedia.org/wiki/Intel_Management_Engine\#Assertions_that_ME_is_a_backdoor]\from[url373]
  \useURL[url374][https://wikiless.org/wiki/Intel_Management_Engine][][{[}Wikiless{]}]\from[url374]
  \useURL[url375][https://web.archive.org/web/https://en.wikipedia.org/wiki/Intel_Management_Engine][][{[}Archive.org{]}]\from[url375]}.

There are some not so straightforward ways\footnote{Wikipedia, IME,
  Disabling the ME
  \useURL[url376][https://en.wikipedia.org/wiki/Intel_Management_Engine\#Disabling_the_ME]\from[url376]
  \useURL[url377][https://wikiless.org/wiki/Intel_Management_Engine][][{[}Wikiless{]}]\from[url377]
  \useURL[url378][https://web.archive.org/web/https://en.wikipedia.org/wiki/Intel_Management_Engine][][{[}Archive.org{]}]\from[url378]}
to disable the Intel IME on some CPUs and you should do so if you can.
For some AMD laptops, you can disable it within the BIOS settings by
disabling PSP.

Note that, to AMD's defense, there were no security vulnerabilities
found for ASP and no backdoors either. See
\useURL[url379][https://www.youtube.com/watch?v=bKH5nGLgi08&t=2834s]\from[url379]
\useURL[url380][https://yewtu.be/watch?v=bKH5nGLgi08&t=2834s][][{[}Invidious{]}]\from[url380].
In addition, AMD PSP does not provide any remote management capabilities
contrary to Intel IME.

If you are feeling a bit more adventurous, you could install your own
BIOS using Coreboot \footnote{Libreboot,
  \useURL[url381][https://libreboot.org/]\from[url381]
  \useURL[url382][https://web.archive.org/web/https://libreboot.org/][][{[}Archive.org{]}]\from[url382]
  / Coreboot, \useURL[url383][https://www.coreboot.org/]\from[url383]
  \useURL[url384][https://web.archive.org/web/20220501042320/https://www.coreboot.org/][][{[}Archive.org{]}]\from[url384]}
or Libreboot (a distribution of Coreboot) if your laptop supports it.
Coreboot allows users to add their own microcode or other firmware blobs
in order for the machine to function, but this is based upon user
choice, and as of Dec 2022, Libreboot has adopted a similar pragmatic
approach in order to support newer devices in the Coreboot tree.
(Thanks, kind Anon who corrected previous information in this
paragraph.)

Check yourself:

\startitemize
\item
  If you are using Linux you can check the vulnerability status of your
  CPU to Spectre/Meltdown attacks by using
  \useURL[url385][https://github.com/speed47/spectre-meltdown-checker]\from[url385]
  \useURL[url386][https://web.archive.org/web/https://github.com/speed47/spectre-meltdown-checker][][{[}Archive.org{]}]\from[url386]
  which is available as a package for most Linux distros including
  Whonix. Spectre is a transient execution attack. There is also PoC
  code for Spectre v1 and v2 on iPhone devices here:
  \useURL[url387][https://github.com/cispa/BranchDifferent]\from[url387]
  \useURL[url388][https://web.archive.org/web/20220814122148/https://github.com/cispa/BranchDifferent][][{[}Archive.org{]}]\from[url388]
  and here
  \useURL[url389][https://misc0110.net/files/applespectre_dimva22.pdf]\from[url389]
  \useURL[url390][https://web.archive.org/web/20220814122652/https://misc0110.net/files/applespectre_dimva22.pdf][][{[}Archive.org{]}]\from[url390]
\item
  If you are using Windows, you can check the vulnerability status of
  your CPU using inSpectre
  \useURL[url391][https://www.grc.com/inspectre.htm]\from[url391]
  \useURL[url392][https://web.archive.org/web/https://www.grc.com/inspectre.htm][][{[}Archive.org{]}]\from[url392]
\stopitemize

Some CPUs have unfixable flaws (especially Intel CPUs) that could be
exploited by various malware. Here is a good current list of such
vulnerabilities affecting recent widespread CPUs:
\useURL[url393][https://en.wikipedia.org/wiki/Transient_execution_CPU_vulnerability]\from[url393]
\useURL[url394][https://wikiless.org/wiki/Transient_execution_CPU_vulnerability][][{[}Wikiless{]}]\from[url394]
\useURL[url395][https://web.archive.org/web/https://en.wikipedia.org/wiki/Transient_execution_CPU_vulnerability][][{[}Archive.org{]}]\from[url395]

Some of these can be avoided using Virtualization Software settings that
can mitigate such exploits. See this guide for more information
\useURL[url396][https://www.whonix.org/wiki/Spectre_Meltdown]\from[url396]
\useURL[url397][https://web.archive.org/web/https://www.whonix.org/wiki/Spectre_Meltdown][][{[}Archive.org{]}]\from[url397]
(warning: these can severely impact the performance of your VMs).

This guide won't go too deep into side-channel and microarchitecture
attacks but we will highlight some issues with both Intel and AMD CPU
architectures that will be mitigated throughout. It's important to
recognize hardware is just as susceptible to bugs, and therefore
exploitation, regardless of manufacturer.

We will mitigate some of these issues in this guide by recommending the
use of virtual machines on a dedicated anonymous laptop for your
sensitive activities that will only be used from an anonymous public
network.

{\bf In addition, we recommend the use of AMD CPUs instead of Intel
CPUs.}

\subsection[title={Your Operating Systems and Apps telemetry
services:},reference={your-operating-systems-and-apps-telemetry-services}]

Whether it is Android, iOS, Windows, macOS, or even Ubuntu. Most popular
Operating Systems now collect telemetry information by default even if
you never opt-in or opted-out\footnote{Trinity College Dublin, Mobile
  Handset Privacy: Measuring The Data iOS and Android Send to Apple And
  Google
  \useURL[url398][https://www.scss.tcd.ie/doug.leith/apple_google.pdf]\from[url398]
  \useURL[url399][https://web.archive.org/web/https://www.scss.tcd.ie/doug.leith/apple_google.pdf][][{[}Archive.org{]}]\from[url399]}
from the start. Some like Windows will not even allow disabling
telemetry completely without some technical tweaks. This information
collection can be extensive and include a staggering number of details
(metadata and data) on your devices and their usage.

Here are good overviews of what is being collected by those five popular
OSes in their last versions:

\startitemize
\item
  Android/Google:

  \startitemize
  \item
    Just have a read at their privacy policy
    \useURL[url400][https://policies.google.com/privacy]\from[url400]
    \useURL[url401][https://web.archive.org/web/https://policies.google.com/privacy][][{[}Archive.org{]}]\from[url401]
  \item
    School of Computer Science & Statistics, Trinity College Dublin,
    Ireland Mobile Handset Privacy: Measuring The Data iOS and Android
    Send to Apple And Google
    \useURL[url402][https://www.scss.tcd.ie/doug.leith/apple_google.pdf]\from[url402]
    \useURL[url403][https://web.archive.org/web/https://www.scss.tcd.ie/doug.leith/apple_google.pdf][][{[}Archive.org{]}]\from[url403]
  \stopitemize
\item
  IOS/Apple:

  \startitemize
  \item
    More information at
    \useURL[url404][https://www.apple.com/legal/privacy/en-ww/]\from[url404]
    \useURL[url405][https://web.archive.org/web/https://www.apple.com/legal/privacy/en-ww/][][{[}Archive.org{]}]\from[url405]
    and
    \useURL[url406][https://support.apple.com/en-us/HT202100]\from[url406]
    \useURL[url407][https://web.archive.org/web/https://support.apple.com/en-us/HT202100][][{[}Archive.org{]}]\from[url407]
  \item
    School of Computer Science & Statistics, Trinity College Dublin,
    Ireland Mobile Handset Privacy: Measuring The Data iOS and Android
    Send to Apple And Google
    \useURL[url408][https://www.scss.tcd.ie/doug.leith/apple_google.pdf]\from[url408]
    \useURL[url409][https://web.archive.org/web/https://www.scss.tcd.ie/doug.leith/apple_google.pdf][][{[}Archive.org{]}]\from[url409]
  \item
    Apple does claim\footnote{Apple, Differential Privacy White Paper
      \useURL[url410][https://www.apple.com/privacy/docs/Differential_Privacy_Overview.pdf]\from[url410]
      \useURL[url411][https://web.archive.org/web/https://www.apple.com/privacy/docs/Differential_Privacy_Overview.pdf][][{[}Archive.org{]}]\from[url411]}
    that they anonymize this data using differential privacy\footnote{Wikipedia,
      Differential Privacy
      \useURL[url412][https://en.wikipedia.org/wiki/Differential_privacy]\from[url412]
      \useURL[url413][https://wikiless.org/wiki/Differential_privacy][][{[}Wikiless{]}]\from[url413]
      \useURL[url414][https://web.archive.org/web/https://en.wikipedia.org/wiki/Differential_privacy][][{[}Archive.org{]}]\from[url414]}
    but you will have to trust them on that.
  \stopitemize
\item
  Windows/Microsoft:

  \startitemize
  \item
    Full list of required diagnostic data:
    \useURL[url415][https://docs.microsoft.com/en-us/windows/privacy/required-windows-diagnostic-data-events-and-fields-2004]\from[url415]
    \useURL[url416][https://web.archive.org/web/https://docs.microsoft.com/en-us/windows/privacy/required-windows-diagnostic-data-events-and-fields-2004][][{[}Archive.org{]}]\from[url416]
  \item
    Full list of optional diagnostic data:
    \useURL[url417][https://docs.microsoft.com/en-us/windows/privacy/windows-diagnostic-data]\from[url417]
    \useURL[url418][https://web.archive.org/web/https://docs.microsoft.com/en-us/windows/privacy/windows-diagnostic-data][][{[}Archive.org{]}]\from[url418]
  \stopitemize
\item
  macOS:

  \startitemize[packed]
  \item
    More details on
    \useURL[url419][https://support.apple.com/guide/mac-help/share-analytics-information-mac-apple-mh27990/mac]\from[url419]
    \useURL[url420][https://web.archive.org/web/https://support.apple.com/guide/mac-help/share-analytics-information-mac-apple-mh27990/mac][][{[}Archive.org{]}]\from[url420]
  \stopitemize
\item
  Ubuntu:

  \startitemize[packed]
  \item
    Ubuntu despite being a Linux distribution also collects Telemetry
    Data nowadays. This data however is quite limited compared to the
    others. More details on
    \useURL[url421][https://ubuntu.com/desktop/statistics]\from[url421]
    \useURL[url422][https://web.archive.org/web/https://ubuntu.com/desktop/statistics][][{[}Archive.org{]}]\from[url422]
  \stopitemize
\stopitemize

Not only are Operating Systems gathering telemetry services but so are
Apps themselves like Browsers, Mail Clients, and Social Networking Apps
installed on your system.

It is important to understand that this telemetry data can be tied to
your device and help de-anonymizing you and later can be used against
you by an adversary that would get access to this data.

This does not mean for example that Apple devices are terrible choices
for good Privacy (tho this might be changing\footnote{Continuing Ed, The
  All-Seeing \quotation{i}: Apple Just Declared War on Your Privacy
  \useURL[url423][https://edwardsnowden.substack.com/p/all-seeing-i]\from[url423]
  \useURL[url424][https://web.archive.org/web/https://edwardsnowden.substack.com/p/all-seeing-i][][{[}Archive.org{]}]\from[url424]}),
but they are certainly not the best choices for (relative) Anonymity.
They might protect you from third parties knowing what you are doing but
not from themselves. In all likelihood, they certainly know who you are.

Later in this guide, we will use all the means at our disposal to
disable and block as much telemetry as possible to mitigate this attack
vector in the Operating Systems supported in this guide. These will
include Windows, macOS, and even Linux in some regard.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsection[title={Your Smart devices in
general:},reference={your-smart-devices-in-general}]

You got it; your smartphone is an advanced spying/tracking device that:

\startitemize
\item
  Records everything you say at any time (\quotation{Hey Siri},
  \quotation{Hey Google}).
\item
  Records your location everywhere you go.
\item
  Always records other devices around you (Bluetooth devices, Wi-Fi
  Access points).
\item
  Records your habits and health data (steps, screen time, exposure to
  diseases, connected devices data)
\item
  Records all your network locations.
\item
  Records all your pictures and videos (and most likely where they were
  taken).
\item
  Has most likely access to most of your known accounts including social
  media, messaging, and financial accounts.
\stopitemize

Data is being transmitted even if you opt-out\footnote{Trinity College
  Dublin, Mobile Handset Privacy: Measuring The Data iOS and Android
  Send to Apple And Google
  \useURL[url425][https://www.scss.tcd.ie/doug.leith/apple_google.pdf]\from[url425]
  \useURL[url426][https://web.archive.org/web/https://www.scss.tcd.ie/doug.leith/apple_google.pdf][][{[}Archive.org{]}]\from[url426]},
processed, and stored indefinitely (most likely unencrypted\footnote{Reuters,
  Exclusive: Apple dropped plan for encrypting backups after FBI
  complained -- sources
  \useURL[url427][https://www.reuters.com/article/us-apple-fbi-icloud-exclusive-idUSKBN1ZK1CT]\from[url427]
  \useURL[url428][https://web.archive.org/web/https://www.reuters.com/article/us-apple-fbi-icloud-exclusive-idUSKBN1ZK1CT][][{[}Archive.org{]}]\from[url428]})
by various third parties\footnote{ZDnet, I asked Apple for all my data.
  Here's what was sent back
  \useURL[url429][https://www.zdnet.com/article/apple-data-collection-stored-request/]\from[url429]
  \useURL[url430][https://web.archive.org/web/https://www.zdnet.com/article/apple-data-collection-stored-request/][][{[}Archive.org{]}]\from[url430]}.

But that is not all, this section is not called \quotation{Smartphones}
but \quotation{Smart devices} because it is not only your smartphone
spying on you. It is also every other smart device you could have:

\startitemize
\item
  Your Smart Watch? (Apple Watch, Android Smartwatch \ldots{})
\item
  Your Fitness Devices and Apps\footnote{De Correspondent, Here's how we
    found the names and addresses of soldiers and secret agents using a
    simple fitness app
    \useURL[url431][https://decorrespondent.nl/8481/heres-how-we-found-the-names-and-addresses-of-soldiers-and-secret-agents-using-a-simple-fitness-app/412999257-6756ba27]\from[url431]
    \useURL[url432][https://web.archive.org/web/https://decorrespondent.nl/8481/heres-how-we-found-the-names-and-addresses-of-soldiers-and-secret-agents-using-a-simple-fitness-app/412999257-6756ba27][][{[}Archive.org{]}]\from[url432]}\quote{\footnote{Website
    Planet, Report: Fitness Tracker Data Breach Exposed 61 Million
    Records and User Data Online
    \useURL[url433][https://www.websiteplanet.com/blog/gethealth-leak-report/]\from[url433]
    \useURL[url434][https://web.archive.org/web/https://www.websiteplanet.com/blog/gethealth-leak-report/][][{[}Archive.org{]}]\from[url434]}?
  (Strava\footnote{Wired, The Strava Heat Map and the End of Secrets
    \useURL[url435][https://www.wired.com/story/strava-heat-map-military-bases-fitness-trackers-privacy/]\from[url435]
    \useURL[url436][https://web.archive.org/web/https://www.wired.com/story/strava-heat-map-military-bases-fitness-trackers-privacy/][][{[}Archive.org{]}]\from[url436]}}\footnote{Bellingcat,
    How to Use and Interpret Data from Strava's Activity Map
    \useURL[url437][https://www.bellingcat.com/resources/how-tos/2018/01/29/strava-interpretation-guide/]\from[url437]
    \useURL[url438][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2018/01/29/strava-interpretation-guide/][][{[}Archive.org{]}]\from[url438]},
  Fitbit\footnote{The Guardian, Fitness tracking app Strava gives away
    location of secret US army bases
    \useURL[url439][https://www.theguardian.com/world/2018/jan/28/fitness-tracking-app-gives-away-location-of-secret-us-army-bases]\from[url439]
    \useURL[url440][https://web.archive.org/web/https://www.theguardian.com/world/2018/jan/28/fitness-tracking-app-gives-away-location-of-secret-us-army-bases][][{[}Archive.org{]}]\from[url440]},
  Garmin, Polar\footnote{Telegraph, Running app reveals locations of
    secret service agents in MI6 and GCHQ
    \useURL[url441][https://www.telegraph.co.uk/technology/2018/07/08/running-app-exposes-mi6-gchq-workers-whereabouts/]\from[url441]
    \useURL[url442][https://web.archive.org/web/https://www.telegraph.co.uk/technology/2018/07/08/running-app-exposes-mi6-gchq-workers-whereabouts/][][{[}Archive.org{]}]\from[url442]},
  \ldots{})
\item
  Your Smart Speaker? (Amazon Alexa\footnote{Washington Post, Alexa has
    been eavesdropping on you this whole time
    \useURL[url443][https://www.washingtonpost.com/technology/2019/05/06/alexa-has-been-eavesdropping-you-this-whole-time/?itid=lk_interstitial_manual_59]\from[url443]
    \useURL[url444][https://web.archive.org/web/https://www.washingtonpost.com/technology/2019/05/06/alexa-has-been-eavesdropping-you-this-whole-time/?itid=lk_interstitial_manual_59][][{[}Archive.org{]}]\from[url444]},
  Google Echo, Apple Homepod \ldots{})
\item
  Your Smart Transportation? (Car? Scooter?)
\item
  Your Smart Tags? (Apple AirTag, Galaxy SmartTag, Tile\ldots{})
\item
  Your Car? (Yes, most modern cars have advanced logging/tracking
  features these days\footnote{Washington Post, What does your car know
    about you? We hacked a Chevy to find out
    \useURL[url445][https://www.washingtonpost.com/technology/2019/12/17/what-does-your-car-know-about-you-we-hacked-chevy-find-out/]\from[url445]
    \useURL[url446][https://web.archive.org/web/https://www.washingtonpost.com/technology/2019/12/17/what-does-your-car-know-about-you-we-hacked-chevy-find-out/][][{[}Archive.org{]}]\from[url446]})
\item
  Any other Smart device? There are even convenient search engines
  dedicated to finding them online:

  \startitemize
  \item
    \useURL[url447][https://www.shodan.io/]\from[url447]
  \item
    \useURL[url448][https://censys.io/]\from[url448]
  \item
    \useURL[url449][https://www.zoomeye.org/]\from[url449]
  \stopitemize
\stopitemize

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

Conclusion: Do not bring your smart devices with you when conducting
sensitive activities.

\subsection[title={Yourself:},reference={yourself}]

\subsubsection[title={Your Metadata including your
Geo-Location:},reference={your-metadata-including-your-geo-location}]

Your metadata is all the information about your activities without the
actual content of those activities. For instance, it is like knowing you
had a call from an oncologist before then calling your family and
friends successively. You do not know what was said during the
conversation, but you can guess what it was just from the
metadata\footnote{Using Metadata to find Paul Revere
  (\useURL[url450][https://kieranhealy.org/blog/archives/2013/06/09/using-metadata-to-find-paul-revere/]\from[url450]
  \useURL[url451][https://web.archive.org/web/https://kieranhealy.org/blog/archives/2013/06/09/using-metadata-to-find-paul-revere/][][{[}Archive.org{]}]\from[url451])}.

This metadata will also often include your location that is being
harvested by Smartphones, Operating Systems (Android\footnote{Wikipedia,
  Google SensorVault,
  \useURL[url452][https://en.wikipedia.org/wiki/Sensorvault]\from[url452]
  \useURL[url453][https://wikiless.org/wiki/Sensorvault][][{[}Wikiless{]}]\from[url453]
  \useURL[url454][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sensorvault][][{[}Archive.org{]}]\from[url454]}/IOS),
Browsers, Apps, Websites. Odds are several companies are knowing exactly
where you are at any time\footnote{NRKBeta, My Phone Was Spying on Me,
  so I Tracked Down the Surveillants
  \useURL[url455][https://nrkbeta.no/2020/12/03/my-phone-was-spying-on-me-so-i-tracked-down-the-surveillants/]\from[url455]
  \useURL[url456][https://web.archive.org/web/https://nrkbeta.no/2020/12/03/my-phone-was-spying-on-me-so-i-tracked-down-the-surveillants/][][{[}Archive.org{]}]\from[url456]}
because of your smartphone\footnote{New York Times
  \useURL[url457][https://www.nytimes.com/interactive/2019/12/19/opinion/location-tracking-cell-phone.html]\from[url457]
  \useURL[url458][https://web.archive.org/web/https://www.nytimes.com/interactive/2019/12/19/opinion/location-tracking-cell-phone.html][][{[}Archive.org{]}]\from[url458]}.

This location data has been used in many judicial cases\footnote{Sophos,
  Google data puts innocent man at the scene of a crime
  \useURL[url459][https://nakedsecurity.sophos.com/2020/03/10/google-data-puts-innocent-man-at-the-scene-of-a-crime/]\from[url459]
  \useURL[url460][https://web.archive.org/web/https://nakedsecurity.sophos.com/2020/03/10/google-data-puts-innocent-man-at-the-scene-of-a-crime/][][{[}Archive.org{]}]\from[url460]}
already as part of \quotation{geofencing warrants} \footnote{Wikipedia,
  Geofence Warrant
  \useURL[url461][https://en.wikipedia.org/wiki/Geo-fence_warrant]\from[url461]
  \useURL[url462][https://wikiless.org/wiki/Geo-fence_warrant][][{[}Wikiless{]}]\from[url462]
  \useURL[url463][https://web.archive.org/web/https://en.wikipedia.org/wiki/Geo-fence_warrant][][{[}Archive.org{]}]\from[url463]}
that allow law enforcement to ask companies (such as Google/Apple) a
list of all devices present at a certain location at a certain time. In
addition, this location data is even sold by private companies to the
military who can then use it conveniently\footnote{Vice.com, Military
  Unit That Conducts Drone Strikes Bought Location Data From Ordinary
  Apps
  \useURL[url464][https://www.vice.com/en/article/y3g97x/location-data-apps-drone-strikes-iowa-national-guard]\from[url464]
  \useURL[url465][https://web.archive.org/web/https://www.vice.com/en/article/y3g97x/location-data-apps-drone-strikes-iowa-national-guard][][{[}Archive.org{]}]\from[url465]}.
These warrants are becoming widely used by law enforcement\footnote{TechCrunch,
  Google says geofence warrants make up one-quarter of all US demands
  \useURL[url466][https://techcrunch.com/2021/08/19/google-geofence-warrants/]\from[url466]
  \useURL[url467][https://web.archive.org/web/https://techcrunch.com/2021/08/19/google-geofence-warrants/][][{[}Archive.org{]}]\from[url467]}\quote{\footnote{TechDirt,
  Google Report Shows \quote{Reverse Warrants} Are Swiftly Becoming Law
  Enforcement's Go-To Investigative Tool
  \useURL[url468][https://www.techdirt.com/articles/20210821/10494847401/google-report-shows-reverse-warrants-are-swiftly-becoming-law-enforcements-go-to-investigative-tool.shtml]\from[url468]
  \useURL[url469][https://web.archive.org/web/https://www.techdirt.com/articles/20210821/10494847401/google-report-shows-reverse-warrants-are-swiftly-becoming-law-enforcements-go-to-investigative-tool.shtml][][{[}Archive.org{]}]\from[url469]}}\footnote{Vice.com,
  Here's the FBI's Internal Guide for Getting Data from AT&T, T-Mobile,
  Verizon
  \useURL[url470][https://www.vice.com/en/article/m7vqkv/how-fbi-gets-phone-data-att-tmobile-verizon]\from[url470]
  \useURL[url471][https://web.archive.org/web/https://www.vice.com/en/article/m7vqkv/how-fbi-gets-phone-data-att-tmobile-verizon][][{[}Archive.org{]}]\from[url471]}.

If you want to experience yourself what a \quotation{geofencing warrant}
would look like, here is an example:
\useURL[url472][https://wigle.net/]\from[url472].

Now let us say you are using a VPN to hide your IP. The social media
platform knows you were active on that account on November 4th from 8 am
to 1 pm with that VPN IP. The VPN allegedly keeps no logs and cannot
trace back that VPN IP to your IP. Your ISP however knows (or at least
can know) you were connected to that same VPN provider on November 4th
from 7:30 am to 2 pm but does not know what you were doing with it.

The question is: Is there someone somewhere that would have both pieces
of information available\footnote{Wikipedia, Room 641A
  \useURL[url473][https://en.wikipedia.org/wiki/Room_641A]\from[url473]
  \useURL[url474][https://wikiless.org/wiki/Room_641A][][{[}Wikiless{]}]\from[url474]
  \useURL[url475][https://web.archive.org/web/https://en.wikipedia.org/wiki/Room_641A][][{[}Archive.org{]}]\from[url475]}
for correlation in a convenient database?

Have you heard of Edward Snowden\footnote{Wikipedia, Edward Snowden
  \useURL[url476][https://en.wikipedia.org/wiki/Edward_Snowden]\from[url476]
  \useURL[url477][https://wikiless.org/wiki/Edward_Snowden][][{[}Wikiless{]}]\from[url477]
  \useURL[url478][https://web.archive.org/web/https://en.wikipedia.org/wiki/Edward_Snowden][][{[}Archive.org{]}]\from[url478]}?
Now is the time to google him and read his book\footnote{Wikipedia,
  Permanent Record
  \useURL[url479][https://en.wikipedia.org/wiki/Permanent_Record_(autobiography)]\from[url479]
  \useURL[url480][https://wikiless.org/wiki/Permanent_Record_(autobiography)][][{[}Wikiless{]}]\from[url480]
  \useURL[url481][https://web.archive.org/web/https://en.wikipedia.org/wiki/Permanent_Record_(autobiography)][][{[}Archive.org{]}]\from[url481]}.
Also read about XKEYSCORE\footnote{Wikipedia, XKEYSCORE
  \useURL[url482][https://en.wikipedia.org/wiki/XKeyscore]\from[url482]
  \useURL[url483][https://wikiless.org/wiki/XKeyscore][][{[}Wikiless{]}]\from[url483]
  \useURL[url484][https://web.archive.org/web/https://en.wikipedia.org/wiki/XKeyscore][][{[}Archive.org{]}]\from[url484]}'\footnote{ElectroSpaces,
  Danish military intelligence uses XKEYSCORE to tap cables in
  cooperation with the NSA
  \useURL[url485][https://www.electrospaces.net/2020/10/danish-military-intelligence-uses.html]\from[url485]
  \useURL[url486][https://web.archive.org/web/https://www.electrospaces.net/2020/10/danish-military-intelligence-uses.html][][{[}Archive.org{]}]\from[url486]},
MUSCULAR\footnote{Wikipedia, MUSCULAR
  \useURL[url487][https://en.wikipedia.org/wiki/MUSCULAR_(surveillance_program)]\from[url487]
  \useURL[url488][https://web.archive.org/web/https://en.wikipedia.org/wiki/MUSCULAR_(surveillance_program)][][{[}Archive.org{]}]\from[url488]},
SORM\footnote{Wikipedia, SORM
  \useURL[url489][https://en.wikipedia.org/wiki/SORM]\from[url489]
  \useURL[url490][https://wikiless.org/wiki/SORM][][{[}Wikiless{]}]\from[url490]
  \useURL[url491][https://web.archive.org/web/https://en.wikipedia.org/wiki/SORM][][{[}Archive.org{]}]\from[url491]},
Tempora\footnote{Wikipedia, Tempora
  \useURL[url492][https://en.wikipedia.org/wiki/Tempora]\from[url492]
  \useURL[url493][https://wikiless.org/wiki/Tempora][][{[}Wikiless{]}]\from[url493]
  \useURL[url494][https://web.archive.org/web/https://en.wikipedia.org/wiki/Tempora][][{[}Archive.org{]}]\from[url494]}
, and PRISM\footnote{Wikipedia, PRISM
  \useURL[url495][https://en.wikipedia.org/wiki/PRISM_(surveillance_program)]\from[url495]
  \useURL[url496][https://wikiless.org/wiki/PRISM_(surveillance_program)][][{[}Wikiless{]}]\from[url496]
  \useURL[url497][https://web.archive.org/web/https://en.wikipedia.org/wiki/PRISM_(surveillance_program)][][{[}Archive.org{]}]\from[url497]}.

See \quotation{We kill people based on Metadata}\footnote{Justsecurity,
  General Hayden
  \useURL[url498][https://www.justsecurity.org/10318/video-clip-director-nsa-cia-we-kill-people-based-metadata/]\from[url498]
  \useURL[url499][https://web.archive.org/web/https://www.justsecurity.org/10318/video-clip-director-nsa-cia-we-kill-people-based-metadata/][][{[}Archive.org{]}]\from[url499]}
or this famous tweet from the IDF
\useURL[url500][https://twitter.com/idf/status/1125066395010699264]\from[url500]
\useURL[url501][https://web.archive.org/web/https://twitter.com/idf/status/1125066395010699264][][{[}Archive.org{]}]\from[url501]
\useURL[url502][https://nitter.net/idf/status/1125066395010699264][][{[}Nitter{]}]\from[url502].

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

\subsubsection[title={Your Digital Fingerprint, Footprint, and Online
Behavior:},reference={your-digital-fingerprint-footprint-and-online-behavior}]

This is the part where you should watch the documentary \quotation{The
Social Dilemma}\footnote{IDMB, The Social Dilemma
  \useURL[url503][https://www.imdb.com/title/tt11464826/]\from[url503]
  \useURL[url504][https://web.archive.org/web/https://www.imdb.com/title/tt11464826/][][{[}Archive.org{]}]\from[url504]}
on Netflix as they cover this topic much better than anyone else.

This includes is the way you write (stylometry) \footnote{ArsTechnica,
  How the way you type can shatter anonymity---even on Tor
  \useURL[url505][https://arstechnica.com/information-technology/2015/07/how-the-way-you-type-can-shatter-anonymity-even-on-tor/]\from[url505]
  \useURL[url506][https://web.archive.org/web/https://arstechnica.com/information-technology/2015/07/how-the-way-you-type-can-shatter-anonymity-even-on-tor/][][{[}Archive.org{]}]\from[url506]}\quote{\footnote{Wikipedia,
  Stylometry
  \useURL[url507][https://en.wikipedia.org/wiki/Stylometry]\from[url507]
  \useURL[url508][https://wikiless.org/wiki/Stylometry][][{[}Wikiless{]}]\from[url508]
  \useURL[url509][https://web.archive.org/web/https://en.wikipedia.org/wiki/Stylometry][][{[}Archive.org{]}]\from[url509]},
the way you behave\footnote{Paul Moore Blog, Behavioral Profiling: The
  password you can't change.
  \useURL[url510][https://paul.reviews/behavioral-profiling-the-password-you-cant-change/]\from[url510]
  \useURL[url511][https://web.archive.org/web/https://paul.reviews/behavioral-profiling-the-password-you-cant-change/][][{[}Archive.org{]}]\from[url511]}}\footnote{Wikipedia,
  Sentiment Analysis
  \useURL[url512][https://en.wikipedia.org/wiki/Sentiment_analysis]\from[url512]
  \useURL[url513][https://wikiless.org/wiki/Sentiment_analysis][][{[}Wikiless{]}]\from[url513]
  \useURL[url514][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sentiment_analysis][][{[}Archive.org{]}]\from[url514]}.
The way you click. The way you browse. The fonts you use on your
browser\footnote{EFF, CoverYourTracks
  \useURL[url515][https://coveryourtracks.eff.org/]\from[url515]
  \useURL[url516][https://web.archive.org/web/https://coveryourtracks.eff.org/][][{[}Archive.org{]}]\from[url516]}.
Fingerprinting is being used to guess who someone is by the way that
user is behaving. You might be using specific pedantic words or making
specific spelling mistakes that could give you away using a simple
Google search for similar features because you typed comparably on some
Reddit post 5 years ago using a not so anonymous Reddit
account\footnote{Berkeley.edu, On the Feasibility of Internet-Scale
  Author Identification
  \useURL[url517][https://people.eecs.berkeley.edu/~dawnsong/papers/2012\%20On\%20the\%20Feasibility\%20of\%20Internet-Scale\%20Author\%20Identification.pdf][][https://people.eecs.berkeley.edu/\lettertilde{}dawnsong/papers/2012\letterpercent{}20On\letterpercent{}20the\letterpercent{}20Feasibility\letterpercent{}20of\letterpercent{}20Internet-Scale\letterpercent{}20Author\letterpercent{}20Identification.pdf]\from[url517]
  \useURL[url518][https://web.archive.org/web/https://people.eecs.berkeley.edu/~dawnsong/papers/2012\%20On\%20the\%20Feasibility\%20of\%20Internet-Scale\%20Author\%20Identification.pdf][][{[}Archive.org{]}]\from[url518]}.
The words you type in a search engine alone can be used against you as
the authorities now have warrants to find users who used specific
keywords in search engines\footnote{Forbes, Exclusive: Government
  Secretly Orders Google To Identify Anyone Who Searched A Sexual
  Assault Victim's Name, Address And Telephone Number
  \useURL[url519][https://www.forbes.com/sites/thomasbrewster/2021/10/04/google-keyword-warrants-give-us-government-data-on-search-users]\from[url519]
  \useURL[url520][https://web.archive.org/web/https://www.forbes.com/sites/thomasbrewster/2021/10/04/google-keyword-warrants-give-us-government-data-on-search-users][][{[}Archive.org{]}]\from[url520]}.

Social Media platforms such as Facebook/Google can go a step further and
can register your behavior in the browser itself. For instance, they can
register everything you type even if you do not send it / save it. Think
of when you draft an e-mail in Gmail. It is saved automatically as you
type. They can register your clicks and cursor movements as well.

All they need to achieve this in most cases is Javascript enabled in
your browser (which is the case in most Browsers including Tor Browser
by default). Even with Javascript disabled, there are still ways to
fingerprint you\footnote{FingerprintJS, Demo: Disabling JavaScript Won't
  Save You from Fingerprinting
  \useURL[url521][https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/]\from[url521]
  \useURL[url522][https://web.archive.org/web/https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/][][{[}Archive.org{]}]\from[url522]}.

While these methods are usually used for marketing purposes and
advertising, they can also be a useful tool for fingerprinting users.
This is because your behavior is unique or unique enough that over time,
you could be de-anonymized.

Here are some examples:

\startitemize
\item
  Specialized companies are selling to, for example, law enforcement
  agencies products for analyzing social network activities such as
  \useURL[url523][https://mediasonar.com/]\from[url523]
  \useURL[url524][https://web.archive.org/web/https://mediasonar.com/][][{[}Archive.org{]}]\from[url524]
\item
  For example, as a basis of authentication, a user's typing speed,
  keystroke depressions, patterns of error (say accidentally hitting an
  \quotation{l} instead of a \quotation{k} on three out of every seven
  transactions) and mouse movements establish that person's unique
  pattern of behavior\footnote{SecuredTouch Blog, Behavioral Biometrics
    101: Behavioral Biometrics vs.~Behavioral Analytics
    \useURL[url525][https://blog.securedtouch.com/behavioral-biometrics-101-an-in-depth-look-at-behavioral-biometrics-vs-behavioral-analytics]\from[url525]
    \useURL[url526][https://web.archive.org/web/https://blog.securedtouch.com/behavioral-biometrics-101-an-in-depth-look-at-behavioral-biometrics-vs-behavioral-analytics][][{[}Archive.org{]}]\from[url526]}.
  Some commercial services such as TypingDNA
  (\useURL[url527][https://www.typingdna.com/]\from[url527]
  \useURL[url528][https://web.archive.org/web/https://www.typingdna.com/][][{[}Archive.org{]}]\from[url528])
  even offer such analysis as a replacement for two-factor
  authentications.
\item
  This technology is also widely used in CAPTCHAS\footnote{Wikipedia,
    Captcha
    \useURL[url529][https://en.wikipedia.org/wiki/CAPTCHA]\from[url529]
    \useURL[url530][https://wikiless.org/wiki/CAPTCHA][][{[}Wikiless{]}]\from[url530]
    \useURL[url531][https://web.archive.org/web/https://en.wikipedia.org/wiki/CAPTCHA][][{[}Archive.org{]}]\from[url531]}
  services to verify that you are \quotation{human} and can be used to
  fingerprint a user.
\item
  See \goto{Appendix A4: Counteracting Forensic
  Linguistics}[appendix-a4-counteracting-forensic-linguistics].
\stopitemize

Analysis algorithms could then be used to match these patterns with
other users and match you to a different known user. It is unclear
whether such data is already used or not by Governments and Law
Enforcement agencies, but it might be in the future. And while this is
mostly used for advertising/marketing/captchas purposes now. It could
and probably will be used for investigations in the short or mid-term
future to deanonymize users.

Here is a fun example you try yourself to see some of those things in
action: \useURL[url532][https://clickclickclick.click]\from[url532] (no
archive links for this one sorry). You will see it becoming interesting
over time (this requires Javascript enabled).

Here is also a recent example just showing what Google Chrome collects
on you:
\useURL[url533][https://web.archive.org/web/https://pbs.twimg.com/media/EwiUNH0UYAgLY7V?format=jpg&name=4096x4096]\from[url533]

Here are some other resources on the topic if you cannot see this
documentary:

\startitemize
\item
  2017, Behavior Analysis in Social Networks,
  \useURL[url534][https://link.springer.com/10.1007/978-1-4614-7163-9_110198-1]\from[url534]
  \useURL[url535][https://web.archive.org/web/https://link.springer.com/10.1007/978-1-4614-7163-9_110198-1][][{[}Archive.org{]}]\from[url535]
\item
  2017, Social Networks and Positive and Negative Affect
  \useURL[url536][https://www.sciencedirect.com/science/article/pii/S1877042811013747/pdf?md5=253d8f1bb615d5dee195d353dc077d46&pid=1-s2.0-S1877042811013747-main.pdf]\from[url536]
  \useURL[url537][https://archive.ph/iuowI][][{[}Archive.today{]}]\from[url537]
\item
  2015, Using Social Networks Data for Behavior and Sentiment Analysis
  \useURL[url538][https://www.researchgate.net/publication/300562034_Using_Social_Networks_Data_for_Behavior_and_Sentiment_Analysis]\from[url538]
  \useURL[url539][https://web.archive.org/web/https://www.researchgate.net/publication/300562034_Using_Social_Networks_Data_for_Behavior_and_Sentiment_Analysis][][{[}Archive.org{]}]\from[url539]
\item
  2016, A Survey on User Behavior Analysis in Social Networks
  \useURL[url540][https://www.academia.edu/30936118/A_Survey_on_User_Behaviour_Analysis_in_Social_Networks]\from[url540]
  \useURL[url541][https://web.archive.org/web/https://www.academia.edu/30936118/A_Survey_on_User_Behaviour_Analysis_in_Social_Networks][][{[}Archive.org{]}]\from[url541]
\item
  2017, DEF CON 25 presentation:
  \useURL[url542][https://www.youtube.com/watch?v=1nvYGi7-Lxo][][DEF CON
  25 - Svea Eckert, Andreas Dewes - Dark Data]\from[url542]
  \useURL[url543][https://yewtu.be/watch?v=1nvYGi7-Lxo][][{[}Invidious{]}]\from[url543]
\item
  2019, Influence and Behavior Analysis in Social Networks and Social
  Media
  \useURL[url544][https://sci-hub.se/10.1007/978-3-030-02592-2]\from[url544]
  \useURL[url545][https://web.archive.org/web/https://web.archive.org/web/https://sci-hub.se/10.1007/978-3-030-02592-2][][{[}Archive.org{]}]\from[url545]
\stopitemize

So, how can you mitigate these?

\startitemize
\item
  This guide will provide some technical mitigations using
  Fingerprinting resistant tools but those might not be sufficient.
\item
  You should apply common sense and try to find your own patterns in
  your behavior and behave differently when using anonymous identities.
  This includes:

  \startitemize
  \item
    The way you type (speed, accuracy\ldots{}).
  \item
    The words you use (be careful with your usual expressions).
  \item
    The type of response you use (if you are sarcastic by default, try
    to have a different approach with your identities).
  \item
    The way you use your mouse and click (try to solve the Captchas
    differently than your usual way)
  \item
    The habits you have when using some Apps or visiting some Websites
    (do not always use the same menus/buttons/links to reach your
    content).
  \item
    \ldots{}
  \stopitemize
\stopitemize

You need to act and fully adopt a role as an actor would do for a
performance. You need to become a different person, think, and act like
that person. This is not a technical mitigation but a human one. You can
only rely on yourself for that.

Ultimately, it is mostly up to you to fool those algorithms by adopting
new habits and not revealing real information when using your anonymous
identities. See \goto{Appendix A4: Counteracting Forensic
Linguistics}[appendix-a4-counteracting-forensic-linguistics].

\subsubsection[title={Your Clues about your Real Life and
OSINT:},reference={your-clues-about-your-real-life-and-osint}]

These are clues you might give over time that could point to your real
identity. You might be talking to someone or posting on some
board/forum/Reddit. In those posts, you might over time leak some
information about your real life. These might be memories, experiences,
or clues you shared that could then allow a motivated adversary to build
a profile to narrow their search.

A real use and well-documented case of this was the arrest of the hacker
Jeremy Hammond\footnote{ArsTechnica, Stakeout: how the FBI tracked and
  busted a Chicago Anon
  \useURL[url546][https://arstechnica.com/tech-policy/2012/03/stakeout-how-the-fbi-tracked-and-busted-a-chicago-anon/]\from[url546]
  \useURL[url547][https://web.archive.org/web/https://arstechnica.com/tech-policy/2012/03/stakeout-how-the-fbi-tracked-and-busted-a-chicago-anon/][][{[}Archive.org{]}]\from[url547]}
who shared over time several details about his past and was later
discovered.

There are also a few cases involving OSINT at Bellingcat\footnote{Bellingcat
  MH17 - Russian GRU Commander \quote{Orion} Identified as Oleg
  Ivannikov
  \useURL[url548][https://www.bellingcat.com/news/uk-and-europe/2018/05/25/mh17-russian-gru-commander-orion-identified-oleg-ivannikov/]\from[url548]
  \useURL[url549][https://web.archive.org/web/https://www.bellingcat.com/news/uk-and-europe/2018/05/25/mh17-russian-gru-commander-orion-identified-oleg-ivannikov/][][{[}Archive.org{]}]\from[url549]}.
Have a look at their very informative (but slightly outdated) toolkit
here:
\useURL[url550][https://docs.google.com/spreadsheets/d/18rtqh8EG2q1xBo2cLNyhIDuK9jrPGwYr9DI2UncoqJQ/edit\#gid=930747607]\from[url550]
\useURL[url551][https://web.archive.org/web/https://docs.google.com/spreadsheets/d/18rtqh8EG2q1xBo2cLNyhIDuK9jrPGwYr9DI2UncoqJQ/edit][][{[}Archive.org{]}]\from[url551]

{\bf We have an OSINT discussion room in our Matrix community. Feel free
to join at \type{#OSINT:matrix.org}.}

You can also view some convenient lists of some available OSINT tools
here if you want to try them on yourself for example:

\startitemize
\item
  \useURL[url552][https://github.com/jivoi/awesome-osint]\from[url552]
  \useURL[url553][https://web.archive.org/web/https://github.com/jivoi/awesome-osint][][{[}Archive.org{]}]\from[url553]
\item
  \useURL[url554][https://web.archive.org/web/20210426041234/https://jakecreps.com/tag/osint-tools/]\from[url554]
\item
  \useURL[url555][https://osintframework.com/]\from[url555]
\item
  \useURL[url556][https://recontool.org]\from[url556]
\stopitemize

As well as this interesting Playlist on YouTube:
\useURL[url557][https://www.youtube.com/playlist?list=PLrFPX1Vfqk3ehZKSFeb9pVIHqxqrNW8Sy]\from[url557]
\useURL[url558][https://yewtu.be/playlist?list=PLrFPX1Vfqk3ehZKSFeb9pVIHqxqrNW8Sy][][{[}Invidious{]}]\from[url558]

As well as those interesting podcasts:

\useURL[url559][https://www.inteltechniques.com/podcast.html]\from[url559]

You should never share real individual experiences/details using your
anonymous identities that could later lead to finding your real
identity. You will see more details about this in the \goto{Creating new
identities}[creating-new-identities] section.

\subsubsection[title={Your Face, Voice, Biometrics, and
Pictures:},reference={your-face-voice-biometrics-and-pictures}]

\quotation{Hell is other people}, even if you evade every method listed
above, you are not out of the woods yet thanks to the widespread use of
advanced Face recognition by everyone.

Companies like Facebook have used advanced face recognition for
years\footnote{Facebook Research, Deepface
  \useURL[url560][https://research.fb.com/publications/deepface-closing-the-gap-to-human-level-performance-in-face-verification/]\from[url560]
  \useURL[url561][https://web.archive.org/web/https://research.fb.com/publications/deepface-closing-the-gap-to-human-level-performance-in-face-verification/][][{[}Archive.org{]}]\from[url561]}'\footnote{Privacy
  News Online, Putting the \quotation{face} in Facebook: how Mark
  Zuckerberg is building a world without public anonymity
  \useURL[url562][https://www.privateinternetaccess.com/blog/putting-face-facebook-mark-zuckerberg-building-world-without-public-anonymity/]\from[url562]
  \useURL[url563][https://web.archive.org/web/https://www.privateinternetaccess.com/blog/putting-face-facebook-mark-zuckerberg-building-world-without-public-anonymity/][][{[}Archive.org{]}]\from[url563]}
and have been using other means (Satellite imagery) to create maps of
\quotation{people} around the world\footnote{CNBC, \quotation{Facebook
  has mapped populations in 23 countries as it explores satellites to
  expand internet}
  \useURL[url564][https://www.cnbc.com/2017/09/01/facebook-has-mapped-human-population-building-internet-in-space.html]\from[url564]
  \useURL[url565][https://web.archive.org/web/https://www.cnbc.com/2017/09/01/facebook-has-mapped-human-population-building-internet-in-space.html][][{[}Archive.org{]}]\from[url565]}.
This evolution has been going on for years to the point we can now say
\quotation{we lost control of our faces}\footnote{MIT Technology Review,
  This is how we lost control of our faces,
  \useURL[url566][https://www.technologyreview.com/2021/02/05/1017388/ai-deep-learning-facial-recognition-data-history/]\from[url566]
  \useURL[url567][https://web.archive.org/web/https://www.technologyreview.com/2021/02/05/1017388/ai-deep-learning-facial-recognition-data-history/][][{[}Archive.org{]}]\from[url567]}.

If you are walking in a touristy place, you will most likely appear in
someone's selfie within minutes without knowing it. That person could
then go ahead and upload that selfie to various platforms (Twitter,
Google Photos, Instagram, Facebook, Snapchat \ldots{}). Those platforms
will then apply face recognition algorithms to those pictures under the
pretext of allowing better/easier tagging or to better organize your
photo library. In addition to this, the same picture will provide a
precise timestamp and in most cases geolocation of where it was taken.
Even if the person does not provide a timestamp and geolocation, it can
still be guessed with other means\footnote{Bellingcat, Shadow of a
  Doubt: Crowdsourcing Time Verification of the MH17 Missile Launch
  Photo
  \useURL[url568][https://www.bellingcat.com/resources/case-studies/2015/08/07/shadow-of-a-doubt/]\from[url568]
  \useURL[url569][https://web.archive.org/web/https://www.bellingcat.com/resources/case-studies/2015/08/07/shadow-of-a-doubt/][][{[}Archive.org{]}]\from[url569]}'\footnote{Brown
  Institute, Open-Source Investigation,
  \useURL[url570][https://brown.columbia.edu/open-source-investigation/]\from[url570]
  \useURL[url571][https://web.archive.org/web/https://brown.columbia.edu/open-source-investigation/][][{[}Archive.org{]}]\from[url571]}.

Here are a few resources for even trying this yourself:

\startitemize
\item
  Bellingcat, Guide To Using Reverse Image Search For Investigations:
  \useURL[url572][https://www.bellingcat.com/resources/how-tos/2019/12/26/guide-to-using-reverse-image-search-for-investigations/]\from[url572]
  \useURL[url573][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2019/12/26/guide-to-using-reverse-image-search-for-investigations/][][{[}Archive.org{]}]\from[url573]
\item
  Bellingcat, Using the New Russian Facial Recognition Site SearchFace
  \useURL[url574][https://www.bellingcat.com/resources/how-tos/2019/02/19/using-the-new-russian-facial-recognition-site-searchface-ru/]\from[url574]
  \useURL[url575][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2019/02/19/using-the-new-russian-facial-recognition-site-searchface-ru/][][{[}Archive.org{]}]\from[url575]
\item
  Bellingcat, Dali, Warhol, Boshirov: Determining the Time of an Alleged
  Photograph from Skripal Suspect Chepiga
  \useURL[url576][https://www.bellingcat.com/resources/how-tos/2018/10/24/dali-warhol-boshirov-determining-time-alleged-photograph-skripal-suspect-chepiga/]\from[url576]
  \useURL[url577][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2018/10/24/dali-warhol-boshirov-determining-time-alleged-photograph-skripal-suspect-chepiga/][][{[}Archive.org{]}]\from[url577]
\item
  Bellingcat, Advanced Guide on Verifying Video Content
  \useURL[url578][https://www.bellingcat.com/resources/how-tos/2017/06/30/advanced-guide-verifying-video-content/]\from[url578]
  \useURL[url579][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2017/06/30/advanced-guide-verifying-video-content/][][{[}Archive.org{]}]\from[url579]
\item
  Bellingcat, Using the Sun and the Shadows for Geolocation
  \useURL[url580][https://www.bellingcat.com/resources/2020/12/03/using-the-sun-and-the-shadows-for-geolocation/]\from[url580]
  \useURL[url581][https://web.archive.org/web/https://www.bellingcat.com/resources/2020/12/03/using-the-sun-and-the-shadows-for-geolocation/][][{[}Archive.org{]}]\from[url581]
\item
  Bellingcat, Navalny Poison Squad Implicated in Murders of Three
  Russian Activists
  \useURL[url582][https://www.bellingcat.com/news/uk-and-europe/2021/01/27/navalny-poison-squad-implicated-in-murders-of-three-russian-activists/]\from[url582]
  \useURL[url583][https://web.archive.org/web/https://www.bellingcat.com/news/uk-and-europe/2021/01/27/navalny-poison-squad-implicated-in-murders-of-three-russian-activists/][][{[}Archive.org{]}]\from[url583]
\item
  Bellingcat, Berlin Assassination: New Evidence on Suspected FSB Hitman
  Passed to German Investigators
  \useURL[url584][https://www.bellingcat.com/news/2021/03/19/berlin-assassination-new-evidence-on-suspected-fsb-hitman-passed-to-german-investigators/]\from[url584]
  \useURL[url585][https://web.archive.org/web/https://www.bellingcat.com/news/2021/03/19/berlin-assassination-new-evidence-on-suspected-fsb-hitman-passed-to-german-investigators/][][{[}Archive.org{]}]\from[url585]
\item
  Bellingcat, Digital Research Tutorial: Investigating a Saudi-Led
  Coalition Bombing of a Yemen Hospital
  \useURL[url586][https://www.youtube.com/watch?v=cAVZaPiVArA]\from[url586]
  \useURL[url587][https://yewtu.be/watch?v=cAVZaPiVArA][][{[}Invidious{]}]\from[url587]
\item
  Bellingcat, Digital Research Tutorial: Using Facial Recognition in
  Investigations
  \useURL[url588][https://www.youtube.com/watch?v=awY87q2Mr0E]\from[url588]
  \useURL[url589][https://yewtu.be/watch?v=awY87q2Mr0E][][{[}Invidious{]}]\from[url589]
\item
  Bellingcat, Digital Research Tutorial: Geolocating (Allegedly) Corrupt
  Venezuelan Officials in Europe
  \useURL[url590][https://www.youtube.com/watch?v=bS6gYWM4kzY]\from[url590]
  \useURL[url591][https://yewtu.be/watch?v=bS6gYWM4kzY][][{[}Invidious{]}]\from[url591]
\stopitemize

\subsubsection[title={Gait Recognition and Other Long-Range
Biometrics},reference={gait-recognition-and-other-long-range-biometrics}]

Even if you are not looking at the camera, they can still figure out who
you are\footnote{NewScientist, Facebook can recognize you in photos even
  if you're not looking
  \useURL[url592][https://www.newscientist.com/article/dn27761-facebook-can-recognise-you-in-photos-even-if-youre-not-looking/]\from[url592]
  \useURL[url593][https://web.archive.org/web/https://www.newscientist.com/article/dn27761-facebook-can-recognise-you-in-photos-even-if-youre-not-looking/][][{[}Archive.org{]}]\from[url593]},
make out your emotions\footnote{Google Patent, Techniques for emotion
  detection and content delivery
  \useURL[url594][https://patentimages.storage.googleapis.com/2d/e4/fb/6cd2fb81899dcd/US20150242679A1.pdf]\from[url594]
  \useURL[url595][https://web.archive.org/web/https://patents.google.com/patent/US20150242679][][{[}Archive.org{]}]\from[url595]},
analyze your gait\footnote{APNews, Chinese \quote{gait recognition} tech
  IDs people by how they walk
  \useURL[url596][https://apnews.com/article/bf75dd1c26c947b7826d270a16e2658a]\from[url596]
  \useURL[url597][https://web.archive.org/web/https://apnews.com/article/bf75dd1c26c947b7826d270a16e2658a][][{[}Archive.org{]}]\from[url597]}\quote{\footnote{The
  Sun, New CCTV technology could now identify you just by the WAY you
  walk and your body shape
  \useURL[url598][https://www.thesun.co.uk/news/7684204/cctv-technology-identify-body-shape-way-walk/]\from[url598]
  \useURL[url599][https://web.archive.org/web/https://www.thesun.co.uk/news/7684204/cctv-technology-identify-body-shape-way-walk/][][{[}Archive.org{]}]\from[url599]}}\footnote{City
  Security Magazine, Gait recognition: a useful identification tool
  \useURL[url600][https://citysecuritymagazine.com/security-management/gait-recognition-identification-tool/]\from[url600]
  \useURL[url601][https://web.archive.org/web/https://citysecuritymagazine.com/security-management/gait-recognition-identification-tool/][][{[}Archive.org{]}]\from[url601]},
read your lips\footnote{Vice.com, Tech Companies Are Training AI to Read
  Your Lips
  \useURL[url602][https://www.vice.com/en/article/bvzvdw/tech-companies-are-training-ai-to-read-your-lips]\from[url602]
  \useURL[url603][https://web.archive.org/web/https://www.vice.com/en/article/bvzvdw/tech-companies-are-training-ai-to-read-your-lips][][{[}Archive.org{]}]\from[url603]},
analyze the behavior of your eyes\footnote{New Atlas, Eye tracking can
  reveal an unbelievable amount of information about you
  \useURL[url604][https://newatlas.com/science/science/eye-tracking-privacy/]\from[url604]
  \useURL[url605][https://web.archive.org/web/https://newatlas.com/science/science/eye-tracking-privacy/][][{[}Archive.org{]}]\from[url605]},
and probably guess your political affiliation\footnote{TechCrunch,
  Facial recognition reveals political party in troubling new research
  \useURL[url606][https://techcrunch.com/2021/01/13/facial-recognition-reveals-political-party-in-troubling-new-research/]\from[url606]
  \useURL[url607][https://web.archive.org/web/https://techcrunch.com/2021/01/13/facial-recognition-reveals-political-party-in-troubling-new-research/][][{[}Archive.org{]}]\from[url607]}'\footnote{Nature.com,
  Facial recognition technology can expose political orientation from
  naturalistic facial images
  \useURL[url608][https://www.nature.com/articles/s41598-020-79310-1.pdf]\from[url608]
  \useURL[url609][https://web.archive.org/web/https://www.nature.com/articles/s41598-020-79310-1.pdf][][{[}Archive.org{]}]\from[url609]}.

Contrary to popular belief and pop culture, modern gait recognition
systems aren't fooled by simply changing how you walk (ex. with
something uncomfortable in your shoe), as they analyze the way your
body's muscles move across your entire body, as you perform certain
actions. The best way to fool modern gait recognition is to wear loose
clothes that obscure the way your muscles move as you perform actions.

Other things than can be used to identify you include your earlobes,
which are actually more identifiable than fingerprints, or even the
shape of your skull. As such, soft headcoverings such as balaclavas are
not recommendable for obscuring your identity - they make you look
incredibly suspicious, while also conforming to the shape of your skull.

{[}{]}{[}113{]}

(Illustration from
\useURL[url610][https://www.nature.com/articles/s41598-020-79310-1]\from[url610]
\useURL[url611][https://web.archive.org/web/https://www.nature.com/articles/s41598-020-79310-1.pdf][][{[}Archive.org{]}]\from[url611])

{[}{]}{[}115{]}

(illustration from
\useURL[url612][https://rd.springer.com/chapter/10.1007/978-3-030-42504-3_15]\from[url612]
\useURL[url613][https://web.archive.org/web/https://rd.springer.com/chapter/10.1007/978-3-030-42504-3_15][][{[}Archive.org{]}]\from[url613])

Those platforms (Google/Facebook) already know who you are for a few
reasons:

\startitemize
\item
  Because you have or had a profile with them, and you identified
  yourself.
\item
  Even if you never made a profile on those platforms, you still have
  one without even knowing it\footnote{Slate
    \useURL[url614][https://slate.com/technology/2018/04/facebook-collects-data-on-non-facebook-users-if-they-want-to-delete-it-they-have-to-sign-up.html]\from[url614]
    \useURL[url615][https://web.archive.org/web/https://slate.com/technology/2018/04/facebook-collects-data-on-non-facebook-users-if-they-want-to-delete-it-they-have-to-sign-up.html][][{[}Archive.org{]}]\from[url615]}\quote{\footnote{The
    Conversation
    \useURL[url616][https://theconversation.com/shadow-profiles-facebook-knows-about-you-even-if-youre-not-on-facebook-94804]\from[url616]
    \useURL[url617][https://web.archive.org/web/https://theconversation.com/shadow-profiles-facebook-knows-about-you-even-if-youre-not-on-facebook-94804][][{[}Archive.org{]}]\from[url617]}}\footnote{The
    Verge
    \useURL[url618][https://www.theverge.com/2018/4/11/17225482/facebook-shadow-profiles-zuckerberg-congress-data-privacy]\from[url618]
    \useURL[url619][https://web.archive.org/web/https://www.theverge.com/2018/4/11/17225482/facebook-shadow-profiles-zuckerberg-congress-data-privacy][][{[}Archive.org{]}]\from[url619]}\quote{\footnote{ZDNET
    \useURL[url620][https://www.zdnet.com/article/anger-mounts-after-facebooks-shadow-profiles-leak-in-bug/]\from[url620]
    \useURL[url621][https://web.archive.org/web/https://www.zdnet.com/article/anger-mounts-after-facebooks-shadow-profiles-leak-in-bug/][][{[}Archive.org{]}]\from[url621]}}\footnote{CNET
    \useURL[url622][https://www.cnet.com/news/shadow-profiles-facebook-has-information-you-didnt-hand-over/]\from[url622]
    \useURL[url623][https://web.archive.org/web/https://www.cnet.com/news/shadow-profiles-facebook-has-information-you-didnt-hand-over/][][{[}Archive.org{]}]\from[url623]}.
\item
  Because other people have tagged you or identified you in their
  holidays/party pictures.
\item
  Because other people have put a picture of you in their contact list
  which they then shared with them.
\stopitemize

Here is also an insightful demo of Microsoft Azure you can try for
yourself at
\useURL[url624][https://azure.microsoft.com/en-us/services/cognitive-services/face/\#demo]\from[url624]
where you can detect emotions and compare faces from different pictures.

Governments already know who you are because they have your
ID/Passport/Driving License pictures and often added biometrics
(Fingerprints) in their database. Those same governments are integrating
those technologies (often provided by private companies such as the
Israeli Oosto\footnote{Oosto
  \useURL[url625][https://oosto.com/]\from[url625]
  \useURL[url626][https://web.archive.org/web/https://oosto.com/][][{[}Archive.org{]}]\from[url626]},
Clearview AI\footnote{BuzzFeed.news, Surveillance Nation
  \useURL[url627][https://www.buzzfeednews.com/article/ryanmac/clearview-ai-local-police-facial-recognition]\from[url627]
  \useURL[url628][https://web.archive.org/web/https://www.buzzfeednews.com/article/ryanmac/clearview-ai-local-police-facial-recognition][][{[}Archive.org{]}]\from[url628]}\quote{\footnote{Wired,
  Clearview AI Has New Tools to Identify You in Photos
  \useURL[url629][https://www.wired.com/story/clearview-ai-new-tools-identify-you-photos/]\from[url629]
  \useURL[url630][https://web.archive.org/web/https://www.wired.com/story/clearview-ai-new-tools-identify-you-photos/][][{[}Archive.org{]}]\from[url630]},
or NEC\footnote{NEC, Neoface
  \useURL[url631][https://www.nec.com/en/global/solutions/biometrics/face/neofacewatch.html]\from[url631]
  \useURL[url632][https://web.archive.org/web/https://www.nec.com/en/global/solutions/biometrics/face/neofacewatch.html][][{[}Archive.org{]}]\from[url632]})
in their CCTV networks to look for \quotation{persons of
interest}\footnote{The Guardian, Met police deploy live facial
  recognition technology
  \useURL[url633][https://www.theguardian.com/uk-news/2020/feb/11/met-police-deploy-live-facial-recognition-technology]\from[url633]
  \useURL[url634][https://web.archive.org/web/https://www.theguardian.com/uk-news/2020/feb/11/met-police-deploy-live-facial-recognition-technology][][{[}Archive.org{]}]\from[url634]}.
And some heavily surveilled states like China have implemented
widespread use of Facial Recognition for various purposes\footnote{YouTube,
  The Economist, China: facial recognition and state control
  \useURL[url635][https://www.youtube.com/watch?v=lH2gMNrUuEY]\from[url635]
  \useURL[url636][https://yewtu.be/watch?v=lH2gMNrUuEY][][{[}Invidious{]}]\from[url636]}}\footnote{CNN,
  Want your unemployment benefits? You may have to submit to facial
  recognition first
  \useURL[url637][https://edition.cnn.com/2021/07/23/tech/idme-unemployment-facial-recognition/index.html]\from[url637]
  \useURL[url638][https://web.archive.org/web/https://edition.cnn.com/2021/07/23/tech/idme-unemployment-facial-recognition/index.html][][{[}Archive.org{]}]\from[url638]}
including possibly identifying ethnic minorities\footnote{Washington
  Post, Huawei tested AI software that could recognize Uighur minorities
  and alert police, report says
  \useURL[url639][https://www.washingtonpost.com/technology/2020/12/08/huawei-tested-ai-software-that-could-recognize-uighur-minorities-alert-police-report-says/]\from[url639]
  \useURL[url640][https://web.archive.org/web/https://www.washingtonpost.com/technology/2020/12/08/huawei-tested-ai-software-that-could-recognize-uighur-minorities-alert-police-report-says/][][{[}Archive.org{]}]\from[url640]}.
A simple face recognition error by some algorithm can ruin your
life\footnote{The Intercept, How a Facial Recognition Mismatch Can Ruin
  Your Life
  \useURL[url641][https://theintercept.com/2016/10/13/how-a-facial-recognition-mismatch-can-ruin-your-life/]\from[url641]
  \useURL[url642][http://27m3p2uv7igmj6kvd4ql3cct5h3sdwrsajovkkndeufumzyfhlfev4qd.onion/2016/10/13/how-a-facial-recognition-mismatch-can-ruin-your-life/][][{[}Tor
  Mirror{]}]\from[url642]
  \useURL[url643][https://web.archive.org/web/https://theintercept.com/2016/10/13/how-a-facial-recognition-mismatch-can-ruin-your-life/][][{[}Archive.org{]}]\from[url643]}'\footnote{Vice,
  Facial Recognition Failures Are Locking People Out of Unemployment
  Systems
  \useURL[url644][https://www.vice.com/en/article/5dbywn/facial-recognition-failures-are-locking-people-out-of-unemployment-systems]\from[url644]
  \useURL[url645][https://web.archive.org/web/https://www.vice.com/en/article/5dbywn/facial-recognition-failures-are-locking-people-out-of-unemployment-systems][][{[}Archive.org{]}]\from[url645]}.

Here are some resources detailing some techniques used by Law
Enforcement today:

\startitemize
\item
  CCC video explaining current Law Enforcement surveillance
  capabilities:
  \useURL[url646][https://media.ccc.de/v/rc3-11406-spot_the_surveillance\#t=761]\from[url646]
  \useURL[url647][https://web.archive.org/web/https://media.ccc.de/v/rc3-11406-spot_the_surveillance][][{[}Archive.org{]}]\from[url647]
\item
  EFF SLS: \useURL[url648][https://www.eff.org/sls]\from[url648]
  \useURL[url649][https://web.archive.org/web/https://www.eff.org/sls][][{[}Archive.org{]}]\from[url649]
\stopitemize

Apple is making FaceID mainstream and pushing its use to log you into
many services including the Banking systems.

The same goes with fingerprint authentication being mainstreamed by many
smartphone makers to authenticate yourself. A simple picture where your
fingers appear can be used to de-anonymize you\footnote{BBC, WhatsApp
  photo drug dealer caught by \quote{groundbreaking} work
  \useURL[url650][https://www.bbc.com/news/uk-wales-43711477]\from[url650]
  \useURL[url651][https://web.archive.org/web/https://www.bbc.com/news/uk-wales-43711477][][{[}Archive.org{]}]\from[url651]}\quote{\footnote{CNN,
  Drug dealer jailed after sharing a photo of cheese that included his
  fingerprints
  \useURL[url652][https://edition.cnn.com/2021/05/25/uk/drug-dealer-cheese-sentenced-scli-gbr-intl/index.html]\from[url652]
  \useURL[url653][https://web.archive.org/web/https://edition.cnn.com/2021/05/25/uk/drug-dealer-cheese-sentenced-scli-gbr-intl/index.html][][{[}Archive.org{]}]\from[url653]}}\footnote{Vice.com,
  Cops Got a Drug Dealer's Fingerprints From Photos of His Hand on
  WhatsApp
  \useURL[url654][https://www.vice.com/en/article/evqk9e/photo-of-fingerprints-used-to-arrest-drug-dealers]\from[url654]
  \useURL[url655][https://web.archive.org/web/https://www.vice.com/en/article/evqk9e/photo-of-fingerprints-used-to-arrest-drug-dealers][][{[}Archive.org{]}]\from[url655]}'\footnote{Kraken
  Blog,
  \useURL[url656][https://blog.kraken.com/post/11905/your-fingerprint-can-be-hacked-for-5-heres-how/]\from[url656]
  \useURL[url657][https://web.archive.org/web/https://blog.kraken.com/post/11905/your-fingerprint-can-be-hacked-for-5-heres-how/][][{[}Archive.org{]}]\from[url657]}.

The same goes with your voice which can be analyzed for various purposes
as shown in the recent Spotify patent\footnote{JUSTIA Patent,
  Identification of taste attributes from an audio signal
  \useURL[url658][https://patents.justia.com/patent/10891948]\from[url658]
  \useURL[url659][https://web.archive.org/web/https://patents.justia.com/patent/10891948][][{[}Archive.org{]}]\from[url659]}.

Even your iris can be used for identification in some places\footnote{PYMNTS,
  Iris Scan Serves As Traveler ID At Dubai Airport
  \useURL[url660][https://www.pymnts.com/news/biometrics/2021/iris-scan-traveler-identification-dubai-airport/]\from[url660]
  \useURL[url661][https://web.archive.org/web/https://www.pymnts.com/news/biometrics/2021/iris-scan-traveler-identification-dubai-airport/][][{[}Archive.org{]}]\from[url661]}.

We can safely imagine a near future where you will not be able to create
accounts or sign in anywhere without providing unique biometrics (A
suitable time to re-watch Gattaca\footnote{IMDB, Gattaca 1997,
  \useURL[url662][https://www.imdb.com/title/tt0119177/]\from[url662]
  \useURL[url663][https://web.archive.org/web/https://www.imdb.com/title/tt0119177/][][{[}Archive.org{]}]\from[url663]},
Person of Interest\footnote{IMDB, Person of Interest 2011
  \useURL[url664][https://www.imdb.com/title/tt1839578]\from[url664]
  \useURL[url665][https://web.archive.org/web/https://www.imdb.com/title/tt1839578][][{[}Archive.org{]}]\from[url665]}
, and Minority Report\footnote{IMDB, Minority Report 2002,
  \useURL[url666][https://www.imdb.com/title/tt0181689]\from[url666]
  \useURL[url667][https://web.archive.org/web/https://www.imdb.com/title/tt0181689][][{[}Archive.org{]}]\from[url667]}).
And you can safely imagine how useful these large biometrics databases
could be to some interested third parties.

In addition, all this information can also be used against you (if you
are already de-anonymized) using deepfake\footnote{Wikipedia, Deepfake
  \useURL[url668][https://en.wikipedia.org/wiki/Deepfake]\from[url668]
  \useURL[url669][https://wikiless.org/wiki/Deepfake][][{[}Wikiless{]}]\from[url669]
  \useURL[url670][https://web.archive.org/web/https://en.wikipedia.org/wiki/Deepfake][][{[}Archive.org{]}]\from[url670]}
by crafting false information (Pictures, Videos, Voice
Recordings\footnote{Econotimes, Deepfake Voice Technology: The Good. The
  Bad. The Future
  \useURL[url671][https://www.econotimes.com/Deepfake-Voice-Technology-The-Good-The-Bad-The-Future-1601278]\from[url671]
  \useURL[url672][https://web.archive.org/web/https://www.econotimes.com/Deepfake-Voice-Technology-The-Good-The-Bad-The-Future-1601278][][{[}Archive.org{]}]\from[url672]}\ldots{})
and have already been used for such purposes\footnote{Wikipedia,
  Deepfake Events
  \useURL[url673][https://en.wikipedia.org/wiki/Deepfake\#Example_events]\from[url673]
  \useURL[url674][https://wikiless.org/wiki/Deepfake][][{[}Wikiless{]}]\from[url674]
  \useURL[url675][https://web.archive.org/web/https://en.wikipedia.org/wiki/Deepfake][][{[}Archive.org{]}]\from[url675]}'\footnote{Forbes,
  A Voice Deepfake Was Used To Scam A CEO Out Of \$243,000
  \useURL[url676][https://www.forbes.com/sites/jessedamiani/2019/09/03/a-voice-deepfake-was-used-to-scam-a-ceo-out-of-243000/]\from[url676]
  \useURL[url677][https://web.archive.org/web/https://www.forbes.com/sites/jessedamiani/2019/09/03/a-voice-deepfake-was-used-to-scam-a-ceo-out-of-243000/][][{[}Archive.org{]}]\from[url677]}.
There are even commercial services for this readily available such as
\useURL[url678][https://www.respeecher.com/]\from[url678]
\useURL[url679][https://web.archive.org/web/https://www.respeecher.com/][][{[}Archive.org{]}]\from[url679]
and \useURL[url680][https://www.descript.com/overdub]\from[url680]
\useURL[url681][https://web.archive.org/web/https://www.descript.com/overdub][][{[}Archive.org{]}]\from[url681].

See this demo:
\useURL[url682][https://www.youtube.com/watch?v=t5yw5cR79VA]\from[url682]
\useURL[url683][https://yewtu.be/watch?v=t5yw5cR79VA][][{[}Invidious{]}]\from[url683]

At this time, there are a few steps\footnote{Joseph Steinberg, How To
  Prevent Facial Recognition Technology From Identifying You
  \useURL[url684][https://josephsteinberg.com/how-to-prevent-facial-recognition-technology-from-identifying-you/]\from[url684]
  \useURL[url685][https://web.archive.org/web/https://josephsteinberg.com/how-to-prevent-facial-recognition-technology-from-identifying-you/][][{[}Archive.org{]}]\from[url685]}
you can use to mitigate (and only mitigate) face recognition when
conducting sensitive activities where CCTV might be present:

\startitemize
\item
  Wear a facemask as they have been proven to defeat some face
  recognition technologies\footnote{NIST, Face recognition accuracy with
    masks using pre-COVID-19 algorithms
    \useURL[url686][https://nvlpubs.nist.gov/nistpubs/ir/2020/NIST.IR.8311.pdf]\from[url686]
    \useURL[url687][https://web.archive.org/web/https://nvlpubs.nist.gov/nistpubs/ir/2020/NIST.IR.8311.pdf][][{[}Archive.org{]}]\from[url687]}
  but not all\footnote{BBC, Facial recognition identifies people wearing
    masks
    \useURL[url688][https://www.bbc.com/news/technology-55573802]\from[url688]
    \useURL[url689][https://web.archive.org/web/https://www.bbc.com/news/technology-55573802][][{[}Archive.org{]}]\from[url689]}.
\item
  Wear a baseball cap or hat to mitigate identification from high-angle
  CCTVs (filming from above) from recording your face. Remember this
  will not help against front-facing cameras.
\item
  Wear sunglasses in addition to the facemask and baseball cap to
  mitigate identification from your eye's features.
\item
  Consider wearing special sunglasses (expensive, unfortunately) called
  \quotation{Reflectacles}
  \useURL[url690][https://www.reflectacles.com/]\from[url690]
  \useURL[url691][https://web.archive.org/web/https://www.reflectacles.com/][][{[}Archive.org{]}]\from[url691].
  There was a small study showing their efficiency against IBM and
  Amazon facial recognition\footnote{University of Wisconsin, Exploring
    Reflectacles As Anti-Surveillance Glasses and for Adversarial
    Machine Learning in Computer Vision
    \useURL[url692][http://diglib.uwgb.edu/digital/api/collection/p17003coll4/id/71/download]\from[url692]
    \useURL[url693][https://web.archive.org/web/http://diglib.uwgb.edu/digital/api/collection/p17003coll4/id/71/download][][{[}Archive.org{]}]\from[url693]}.
\item
  All that might still be useless because of gait recognition mentioned
  earlier but there might be hope here if you have a 3D Printer:
  \useURL[url694][https://gitlab.com/FG-01/fg-01]\from[url694]
  \useURL[url695][https://web.archive.org/web/https://gitlab.com/FG-01/fg-01][][{[}Archive.org{]}]\from[url695]
\stopitemize

(see \goto{Gait Recognition and Other Long-Range
Biometrics}[gait-recognition-and-other-long-range-biometrics])

(Note that if you intend to use these where advanced facial recognition
systems have been installed, these measures could also flag as you as
suspicious by themselves and trigger a human check)

\subsubsection[title={Phishing and Social
Engineering:},reference={phishing-and-social-engineering}]

Phishing\footnote{Wikipedia, Phishing
  \useURL[url696][https://en.wikipedia.org/wiki/Phishing]\from[url696]
  \useURL[url697][https://wikiless.org/wiki/Phishing][][{[}Wikiless{]}]\from[url697]
  \useURL[url698][https://web.archive.org/web/https://en.wikipedia.org/wiki/Phishing][][{[}Archive.org{]}]\from[url698]}
is a social engineering\footnote{Wikipedia, Social Engineering
  \useURL[url699][https://en.wikipedia.org/wiki/Social_engineering_(security)]\from[url699]
  \useURL[url700][https://wikiless.org/wiki/Social_engineering_(security)][][{[}Wikiless{]}]\from[url700]
  \useURL[url701][https://web.archive.org/web/https://en.wikipedia.org/wiki/Social_engineering_(security)][][{[}Archive.org{]}]\from[url701]}
type of attack where an adversary could try to extract information from
you by pretending or impersonating something/someone else.

A typical case is an adversary using a man-in-the-middle\footnote{Wikipedia,
  MITM
  \useURL[url702][https://en.wikipedia.org/wiki/Man-in-the-middle_attack]\from[url702]
  \useURL[url703][https://wikiless.org/wiki/Man-in-the-middle_attack][][{[}Wikiless{]}]\from[url703]
  \useURL[url704][https://web.archive.org/web/https://en.wikipedia.org/wiki/Man-in-the-middle_attack][][{[}Archive.org{]}]\from[url704]}
attack or a fake e-mail/call to ask for your credential for a service.
This could for example be through e-mail or through impersonating
financial services.

Such attacks can also be used to de-anonymize someone by tricking them
into downloading malware or revealing personal information over time.
The only defense against those is not to fall for them and common sense.

These have been used countless times since the early days of the
internet and the usual one is called the \quotation{419 scam} (see
\useURL[url705][https://en.wikipedia.org/wiki/Advance-fee_scam]\from[url705]
\useURL[url706][https://wikiless.org/wiki/Advance-fee_scam][][{[}Wikiless{]}]\from[url706]
\useURL[url707][https://web.archive.org/web/https://en.wikipedia.org/wiki/Advance-fee_scam][][{[}Archive.org{]}]\from[url707]).

Here is a good video if you want to learn a bit more about phishing
types: Black Hat, Ichthyology: Phishing as a Science
\useURL[url708][https://www.youtube.com/watch?v=Z20XNp-luNA]\from[url708]
\useURL[url709][https://yewtu.be/watch?v=Z20XNp-luNA][][{[}Invidious{]}]\from[url709].

\subsection[title={Malware, exploits, and
viruses:},reference={malware-exploits-and-viruses}]

\subsubsection[title={Malware in your
files/documents/e-mails:},reference={malware-in-your-filesdocumentse-mails}]

Using steganography or other techniques, it is easy to embed malware
into common file formats such as Office Documents, Pictures, Videos, PDF
documents\ldots{}

These can be as simple as HTML tracking links or complex targeted
malware.

These could be simple pixel-sized images\footnote{BBC, Spy pixels in
  emails have become endemic
  \useURL[url710][https://www.bbc.com/news/technology-56071437]\from[url710]
  \useURL[url711][https://web.archive.org/web/https://www.bbc.com/news/technology-56071437][][{[}Archive.org{]}]\from[url711]}
hidden in your e-mails that would call a remote server to try and get
your IP address.

These could be exploiting a vulnerability in an outdated format or an
outdated reader\footnote{Vice, Facebook Helped the FBI Hack a Child
  Predator
  \useURL[url712][https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez]\from[url712]
  \useURL[url713][https://web.archive.org/web/https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez][][{[}Archive.org{]}]\from[url713]}.
Such exploits could then be used to compromise your system.

See these good videos for more explanations on the matter:

\startitemize
\item
  What is a File Format?
  \useURL[url714][https://www.youtube.com/watch?v=VVdmmN0su6E]\from[url714]
  \useURL[url715][https://yewtu.be/watch?v=VVdmmN0su6E][][{[}Invidious{]}]\from[url715]
\item
  Ange Albertini: Funky File Formats:
  \useURL[url716][https://www.youtube.com/watch?v=hdCs6bPM4is]\from[url716]
  \useURL[url717][https://yewtu.be/watch?v=hdCs6bPM4is][][{[}Invidious{]}]\from[url717]
\stopitemize

You should always use extreme caution. To mitigate these attacks, this
guide will later recommend the use of virtualization (See \goto{Appendix
W: Virtualization}[appendix-v1-hardening-your-browsers]) to mitigate
leaking any information even in case of opening such a malicious file.

If you want to learn how to try detecting such malware, see
\goto{Appendix T: Checking files for
malware}[appendix-t-checking-files-for-malware]

\subsubsection[title={Malware and Exploits in your apps and
services:},reference={malware-and-exploits-in-your-apps-and-services}]

So, you are using Tor Browser or Brave Browser over Tor. You could be
using those over a VPN for added security. But you should keep in mind
that there are exploits\footnote{Wikipedia, Exploit
  \useURL[url718][https://en.wikipedia.org/wiki/Exploit_(computer_security)]\from[url718]
  \useURL[url719][https://wikiless.org/wiki/Exploit_(computer_security)][][{[}Wikiless{]}]\from[url719]
  \useURL[url720][https://web.archive.org/web/https://en.wikipedia.org/wiki/Exploit_(computer_security)][][{[}Archive.org{]}]\from[url720]}
(hacks) that could be known by an adversary (but unknown to the
App/Browser provider). Such exploits could be used to compromise your
system and reveal details to de-anonymize you such as your IP address or
other details.

A real use case of this technique was the Freedom Hosting\footnote{Wikipedia,
  Freedom Hosting
  \useURL[url721][https://en.wikipedia.org/wiki/Freedom_Hosting]\from[url721]
  \useURL[url722][https://wikiless.org/wiki/Freedom_Hosting][][{[}Wikiless{]}]\from[url722]
  \useURL[url723][https://web.archive.org/web/https://en.wikipedia.org/wiki/Freedom_Hosting][][{[}Archive.org{]}]\from[url723]}
case in 2013 where the FBI inserted malware\footnote{Wired, 2013 FBI
  Admits It Controlled Tor Servers Behind Mass Malware Attack
  \useURL[url724][https://www.wired.com/2013/09/freedom-hosting-fbi/]\from[url724]
  \useURL[url725][https://web.archive.org/web/https://www.wired.com/2013/09/freedom-hosting-fbi/][][{[}Archive.org{]}]\from[url725]}
using a Firefox browser exploit on a Tor website. This exploit allowed
them to reveal details of some users. More recently, there was the
notable SolarWinds\footnote{Wikipedia, 2020 United States federal
  government data breach
  \useURL[url726][https://en.wikipedia.org/wiki/2020_United_States_federal_government_data_breach]\from[url726]
  \useURL[url727][https://wikiless.org/wiki/2020_United_States_federal_government_data_breach][][{[}Wikiless{]}]\from[url727]
  \useURL[url728][https://web.archive.org/web/https://en.wikipedia.org/wiki/2020_United_States_federal_government_data_breach][][{[}Archive.org{]}]\from[url728]}
hack that breached several US government institutions by inserting
malware into an official software update server.

In some countries, Malware is just mandatory and/or distributed by the
state itself. This is the case for instance in China with
WeChat\footnote{BBC, China social media: WeChat and the Surveillance
  State
  \useURL[url729][https://www.bbc.com/news/blogs-china-blog-48552907]\from[url729]
  \useURL[url730][https://web.archive.org/web/https://www.bbc.com/news/blogs-china-blog-48552907][][{[}Archive.org{]}]\from[url730]}
which can then be used in combination with other data for state
surveillance\footnote{The Intercept, Revealed: Massive Chinese Police
  Database
  \useURL[url731][https://theintercept.com/2021/01/29/china-uyghur-muslim-surveillance-police/]\from[url731]
  \useURL[url732][http://27m3p2uv7igmj6kvd4ql3cct5h3sdwrsajovkkndeufumzyfhlfev4qd.onion/2021/01/29/china-uyghur-muslim-surveillance-police/][][{[}Tor
  Mirror{]}]\from[url732]
  \useURL[url733][https://web.archive.org/web/https://theintercept.com/2021/01/29/china-uyghur-muslim-surveillance-police/][][{[}Archive.org{]}]\from[url733]}.

There are countless examples of malicious browser extensions, smartphone
apps, and various apps that have been infiltrated with malware over the
years.

Here are some steps to mitigate this type of attack:

\startitemize
\item
  You should never have 100\letterpercent{} trust in the apps you are
  using.
\item
  You should always check that you are using the updated version of such
  apps before use and ideally validate each download using their
  signature if available.
\item
  You should not use such apps directly from a hardware system but
  instead, use a Virtual Machine for compartmentalization.
\stopitemize

To reflect these recommendations, this guide will therefore later guide
you in the use of Virtualization (See \goto{Appendix W:
Virtualization}[appendix-v1-hardening-your-browsers]) so that even if
your Browser/Apps get compromised by a skilled adversary, that adversary
will find himself stuck in a sandbox\footnote{Wikipedia, Sandbox
  \useURL[url734][https://en.wikipedia.org/wiki/Sandbox_(computer_security)]\from[url734]
  \useURL[url735][https://wikiless.org/wiki/Sandbox_(computer_security)][][{[}Wikiless{]}]\from[url735]
  \useURL[url736][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sandbox_(computer_security)][][{[}Archive.org{]}]\from[url736]}
without being able to access identifying information or compromise your
system.

\subsubsection[title={Malicious USB
devices:},reference={malicious-usb-devices}]

There are readily available commercial and cheap \quotation{badUSB}
\footnote{Wired, Why the Security of USB Is Fundamentally Broken
  \useURL[url737][https://www.wired.com/2014/07/usb-security/]\from[url737]
  \useURL[url738][https://web.archive.org/web/https://www.wired.com/2014/07/usb-security/][][{[}Archive.org{]}]\from[url738]}devices
that can take deploy malware, log your typing, geolocate you, listen to
you or gain control of your laptop just by plugging them in. Here are
some examples that you can already buy yourself:

\startitemize
\item
  Hak5, USB Rubber Ducky
  \useURL[url739][https://shop.hak5.org/products/usb-rubber-ducky-deluxe]\from[url739]
  \useURL[url740][https://web.archive.org/web/https://shop.hak5.org/products/usb-rubber-ducky-deluxe][][{[}Archive.org{]}]\from[url740]
\item
  Hak5, O.MG Cable
  \useURL[url741][https://www.youtube.com/watch?v=V5mBJHotZv0]\from[url741]
  \useURL[url742][https://yewtu.be/watch?v=V5mBJHotZv0][][{[}Invidious{]}]\from[url742]
\item
  Keelog \useURL[url743][https://www.keelog.com/]\from[url743]
  \useURL[url744][https://web.archive.org/web/https://www.keelog.com/][][{[}Archive.org{]}]\from[url744]
\item
  AliExpress
  \useURL[url745][https://www.aliexpress.com/i/4000710369016.html]\from[url745]
  \useURL[url746][https://web.archive.org/web/https://www.aliexpress.com/i/4000710369016.html][][{[}Archive.org{]}]\from[url746]
\stopitemize

Such devices can be implanted anywhere (charging cable, mouse, keyboard,
USB key \ldots{}) by an adversary and can be used to track you or
compromise your computer or smartphone. The most notable example of such
attacks is probably Stuxnet\footnote{Wikipedia, Stuxnet
  \useURL[url747][https://en.wikipedia.org/wiki/Stuxnet]\from[url747]
  \useURL[url748][https://wikiless.org/wiki/Stuxnet][][{[}Wikiless{]}]\from[url748]
  \useURL[url749][https://web.archive.org/web/https://en.wikipedia.org/wiki/Stuxnet][][{[}Archive.org{]}]\from[url749]}
in 2005.

While you could inspect a USB key physically, scan it with various
utilities, check the various components to see if they are genuine, you
will most likely never be able to discover complex malware embedded in
genuine parts of a genuine USB key by a skilled adversary without
advanced forensics equipment\footnote{Superuser.com, How do I safely
  investigate a USB stick found in the parking lot at work?
  \useURL[url750][https://superuser.com/questions/1206321/how-do-i-safely-investigate-a-usb-stick-found-in-the-parking-lot-at-work]\from[url750]
  \useURL[url751][https://web.archive.org/web/https://superuser.com/questions/1206321/how-do-i-safely-investigate-a-usb-stick-found-in-the-parking-lot-at-work][][{[}Archive.org{]}]\from[url751]}.

To mitigate this, you should never trust such devices and plug them into
sensitive equipment. If you use a charging device, you should consider
the use of a USB data blocking device that will only allow charging but
not any data transfer. Such data blocking devices are now readily
available in many online shops. You should also consider disabling USB
ports completely within the BIOS of your computer unless you need them
(if you can).

\subsubsection[title={Malware and backdoors in your Hardware Firmware
and Operating
System:},reference={malware-and-backdoors-in-your-hardware-firmware-and-operating-system}]

This might sound a bit familiar as this was already partially covered
previously in the \goto{Your CPU}[your-cpu] section.

Malware and backdoors can be embedded directly into your hardware
components. Sometimes those backdoors are implemented by the
manufacturer itself such as the IME in the case of Intel CPUs. And in
other cases, such backdoors can be implemented by a third party that
places itself between orders of new hardware and customer
delivery\footnote{The Guardian, Glenn Greenwald: how the NSA tampers
  with US-made internet routers
  \useURL[url752][https://www.theguardian.com/books/2014/may/12/glenn-greenwald-nsa-tampers-us-internet-routers-snowden]\from[url752]
  \useURL[url753][https://web.archive.org/web/https://www.theguardian.com/books/2014/may/12/glenn-greenwald-nsa-tampers-us-internet-routers-snowden][][{[}Archive.org{]}]\from[url753]}.

Such malware and backdoors can also be deployed by an adversary using
software exploits. Many of those are called rootkits\footnote{Wikipedia,
  Rootkit
  \useURL[url754][https://en.wikipedia.org/wiki/Rootkit]\from[url754]
  \useURL[url755][https://wikiless.org/wiki/Rootkit][][{[}Wikiless{]}]\from[url755]
  \useURL[url756][https://web.archive.org/web/https://en.wikipedia.org/wiki/Rootkit][][{[}Archive.org{]}]\from[url756]}
within the tech world. Usually, these types of malware are harder to
detect and mitigate as they are implemented at a lower level than the
userspace\footnote{Wikipedia, Userspace
  \useURL[url757][https://en.wikipedia.org/wiki/User_space]\from[url757]
  \useURL[url758][https://wikiless.org/wiki/User_space][][{[}Wikiless{]}]\from[url758]
  \useURL[url759][https://web.archive.org/web/https://en.wikipedia.org/wiki/User_space][][{[}Archive.org{]}]\from[url759]}
and often in the firmware\footnote{Wikipedia, Firmware
  \useURL[url760][https://en.wikipedia.org/wiki/Firmware]\from[url760]
  \useURL[url761][https://wikiless.org/wiki/Firmware][][{[}Wikiless{]}]\from[url761]
  \useURL[url762][https://web.archive.org/web/https://en.wikipedia.org/wiki/Firmware][][{[}Archive.org{]}]\from[url762]}
of hardware components itself.

What is firmware? Firmware is a low-level operating system for devices.
Each component in your computer probably has firmware including for
instance your disk drives. The BIOS\footnote{Wikipedia, BIOS
  \useURL[url763][https://en.wikipedia.org/wiki/BIOS]\from[url763]
  \useURL[url764][https://wikiless.org/wiki/BIOS][][{[}Wikiless{]}]\from[url764]
  \useURL[url765][https://web.archive.org/web/https://en.wikipedia.org/wiki/BIOS][][{[}Archive.org{]}]\from[url765]}/UEFI\footnote{Wikipedia,
  UEFI
  \useURL[url766][https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface]\from[url766]
  \useURL[url767][https://wikiless.org/wiki/Unified_Extensible_Firmware_Interface][][{[}Wikiless{]}]\from[url767]
  \useURL[url768][https://web.archive.org/web/https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface][][{[}Archive.org{]}]\from[url768]}
system of your machine for instance is a type of firmware.

These can allow remote management and are capable of enabling full
control of a target system silently and stealthily.

As mentioned previously, these are harder to detect by users but some
limited steps that can be taken to mitigate some of those by protecting
your device from tampering and use some measures (like re-flashing the
bios for example). Unfortunately, if such malware or backdoor is
implemented by the manufacturer itself, it becomes extremely difficult
to detect and disable those.

\subsection[title={Your files, documents, pictures, and
videos:},reference={your-files-documents-pictures-and-videos}]

\subsubsection[title={Properties and
Metadata:},reference={properties-and-metadata}]

This can be obvious to many but not to all. Most files have metadata
attached to them. Good examples are pictures that store EXIF\footnote{Bellingcat,
  Joseph Mifsud: Rush for the EXIF
  \useURL[url769][https://www.bellingcat.com/news/americas/2018/10/26/joseph-mifsud-rush-exif/]\from[url769]
  \useURL[url770][https://web.archive.org/web/https://www.bellingcat.com/news/americas/2018/10/26/joseph-mifsud-rush-exif/][][{[}Archive.org{]}]\from[url770]}
information which can hold a lot of information such as GPS coordinates,
which camera/phone model took it, and when it was taken precisely. While
this information might not directly give out who you are, it could tell
exactly where you were at a certain moment which could allow others to
use various sources to find you (CCTV or other footage taken at the same
place at the same time during a protest for instance). You must verify
any file you would put on those platforms for any properties that might
hold any information that might lead back to you.

Here is an example of EXIF data that could be on a picture:

{\externalfigure[./tex2pdf.-1a34188c73046814/2ea3ec068530d8b4c654a4dd1567ef05949062de.png]}

(Illustration from Wikipedia)

This also works for videos. Yes, videos too have geo-tagging, and many
are very unaware of this. Here Is for instance a very convenient tool to
geo-locate YouTube videos:
\useURL[url771][https://mattw.io/youtube-geofind/location]\from[url771]
\useURL[url772][https://web.archive.org/web/https://mattw.io/youtube-geofind/location][][{[}Archive.org{]}]\from[url772]

For this reason, you will always have to be incredibly careful when
uploading files using your anonymous identities and check the metadata
of those files.

{\bf Even if you publish a plain text file, you should always double or
triple-check it for any information leakage before publishing. You will
find some guidance about this in the \goto{Some additional measures
against forensics}[some-additional-measures-against-forensics] section
at the end of the guide.}

\subsubsection[title={Watermarking:},reference={watermarking}]

\subsubsubsection[title={Pictures/Videos/Audio:},reference={picturesvideosaudio}]

Pictures/Videos often contain visible watermarks indicating who is the
owner/creator but there are also invisible watermarks in various
products aiming at identifying the viewer itself.

So, if you are a whistleblower and thinking about leaking some
picture/audio/video file. Think twice. There are chances that those
might contain invisible watermarking within them that would include
information about you as a viewer. Such watermarks can be enabled with a
simple switch in like Zoom (Video\footnote{Zoom Support, Adding a
  watermark
  \useURL[url773][https://support.zoom.us/hc/en-us/articles/209605273-Adding-a-Watermark]\from[url773]
  \useURL[url774][https://web.archive.org/web/https://support.zoom.us/hc/en-us/articles/209605273-Adding-a-Watermark][][{[}Archive.org{]}]\from[url774]}
or Audio\footnote{Zoom Support, Audio Watermark
  \useURL[url775][https://support.zoom.us/hc/en-us/articles/360021839031-Audio-Watermark]\from[url775]
  \useURL[url776][https://web.archive.org/web/https://support.zoom.us/hc/en-us/articles/360021839031-Audio-Watermark][][{[}Archive.org{]}]\from[url776]})
or with extensions\footnote{CreativeCloud Extension, IMATAG
  \useURL[url777][https://exchange.adobe.com/creativecloud.details.101789.imatag-invisible-watermark-and-image-monitoring.html]\from[url777]
  \useURL[url778][https://web.archive.org/web/https://exchange.adobe.com/creativecloud.details.101789.imatag-invisible-watermark-and-image-monitoring.html][][{[}Archive.org{]}]\from[url778]}
for popular apps such as Adobe Premiere Pro. These can be inserted by
various content management systems.

For a recent example where someone leaking a Zoom meeting recording was
caught because it was watermarked:
\useURL[url779][https://theintercept.com/2021/01/18/leak-zoom-meeting/]\from[url779]
\useURL[url780][http://27m3p2uv7igmj6kvd4ql3cct5h3sdwrsajovkkndeufumzyfhlfev4qd.onion/2021/01/18/leak-zoom-meeting/][][{[}Tor
Mirror{]}]\from[url780]
\useURL[url781][https://web.archive.org/web/https://theintercept.com/2021/01/18/leak-zoom-meeting/][][{[}Archive.org{]}]\from[url781]

Such watermarks can be inserted by various products\footnote{NexGuard,
  \useURL[url782][https://dtv.nagra.com/nexguard-forensic-watermarking]\from[url782]
  \useURL[url783][https://web.archive.org/web/https://dtv.nagra.com/nexguard-forensic-watermarking][][{[}Archive.org{]}]\from[url783]}\quote{\footnote{Vobile
  Solutions, \useURL[url784][https://www.vobilegroup.com/]\from[url784]
  \useURL[url785][https://web.archive.org/web/https://www.vobilegroup.com][][{[}Archive.org{]}]\from[url785]}}\footnote{Cinavia,
  \useURL[url786][https://www.cinavia.com/languages/english/pages/technology.html]\from[url786]
  \useURL[url787][https://web.archive.org/web/https://www.cinavia.com/languages/english/pages/technology.html][][{[}Archive.org{]}]\from[url787]}\quote{\footnote{Imatag,
  \useURL[url788][https://www.imatag.com/]\from[url788]
  \useURL[url789][https://web.archive.org/web/https://www.imatag.com/][][{[}Archive.org{]}]\from[url789]}
using Steganography\footnote{Wikipedia, Steganography
  \useURL[url790][https://en.wikipedia.org/wiki/Steganography]\from[url790]
  \useURL[url791][https://wikiless.org/wiki/Steganography][][{[}Wikiless{]}]\from[url791]
  \useURL[url792][https://web.archive.org/web/https://en.wikipedia.org/wiki/Steganography][][{[}Archive.org{]}]\from[url792]}
and can resist compression\footnote{IEEExplore, A JPEG compression
  resistant steganography scheme for raster graphics images
  \useURL[url793][https://ieeexplore.ieee.org/document/4428921]\from[url793]
  \useURL[url794][https://web.archive.org/web/https://ieeexplore.ieee.org/document/4428921][][{[}Archive.org{]}]\from[url794]}
and re-encoding\footnote{ScienceDirect, Robust audio watermarking using
  perceptual masking
  \useURL[url795][https://www.researchgate.net/publication/256994444_Robust_Audio_Watermarking_Using_Perceptual_Masking]\from[url795]
  \useURL[url796][https://web.archive.org/web/https://www.researchgate.net/publication/256994444_Robust_Audio_Watermarking_Using_Perceptual_Masking][][{[}Archive.org{]}]\from[url796]}}\footnote{IEEExplore,
  Spread-spectrum watermarking of audio signals
  \useURL[url797][https://www.researchgate.net/publication/3318571_Spread-Spectrum_Watermarking_of_Audio]\from[url797]
  \useURL[url798][https://web.archive.org/web/https://www.researchgate.net/publication/3318571_Spread-Spectrum_Watermarking_of_Audio][][{[}Archive.org{]}]\from[url798]}.

These watermarks are not easily detectable and could allow
identification of the source despite all efforts.

In addition to watermarks, the camera used for filming (and therefore
the device used for filming) a video can also be identified using
various techniques such as lens identification\footnote{Google Scholar,
  source camera identification
  \useURL[url799][https://scholar.google.com/scholar?q=source+camera+identification]\from[url799]
  \useURL[url800][https://web.archive.org/web/https://scholar.google.com/scholar?q=source+camera+identification][][{[}Archive.org{]}]\from[url800]}
which could lead to de-anonymization.

Be extremely careful when publishing videos/pictures/audio files from
known commercial platforms as they might contain such invisible
watermarks in addition to details in the images themselves. There is no
guaranteed 100\letterpercent{} protection against those. You will have
to use common sense.

\subsubsubsection[title={Printing
Watermarking:},reference={printing-watermarking}]

Did you know your printer is most likely spying on you too? Even if it
is not connected to any network? This is usually a known fact by many
people in the IT community but few outside people.

Yes \ldots{} Your printers can be used to de-anonymize you as well as
explained by the EFF here
\useURL[url801][https://www.eff.org/issues/printers]\from[url801]
\useURL[url802][https://web.archive.org/web/https://www.eff.org/issues/printers][][{[}Archive.org{]}]\from[url802]

With this (old but still relevant) video explaining how from the EFF as
well:
\useURL[url803][https://www.youtube.com/watch?v=izMGMsIZK4U]\from[url803]
\useURL[url804][https://yewtu.be/watch?v=izMGMsIZK4U][][{[}Invidious{]}]\from[url804]

Many printers will print an invisible watermark allowing for
identification of the printer on every printed page. This is called
Printer Steganography\footnote{Wikipedia, Printing Steganography
  \useURL[url805][https://en.wikipedia.org/wiki/Machine_Identification_Code]\from[url805]
  \useURL[url806][https://wikiless.org/wiki/Machine_Identification_Code][][{[}Wikiless{]}]\from[url806]
  \useURL[url807][https://web.archive.org/web/https://en.wikipedia.org/wiki/Machine_Identification_Code][][{[}Archive.org{]}]\from[url807]}.
There is no tangible way to mitigate this but to inform yourself on your
printer and make sure it does not print any invisible watermark. This is
important if you intend to print anonymously.

Here is an (old but still relevant) list of printers and brands who do
not print such tracking dots provided by the EFF
\useURL[url808][https://www.eff.org/pages/list-printers-which-do-or-do-not-display-tracking-dots]\from[url808]
\useURL[url809][https://web.archive.org/web/https://www.eff.org/pages/list-printers-which-do-or-do-not-display-tracking-dots][][{[}Archive.org{]}]\from[url809]

Here are also some tips from the Whonix documentation
(\useURL[url810][https://www.whonix.org/wiki/Printing_and_Scanning]\from[url810]
\useURL[url811][https://web.archive.org/web/https://www.whonix.org/wiki/Printing_and_Scanning][][{[}Archive.org{]}]\from[url811]):

{\bf Do not ever print in Color, usually, watermarks are not present
without color toners/cartridges}\footnote{MIT, SeeingYellow,
  \useURL[url812][https://web.archive.org/web/20220224174025/http://seeingyellow.com/]\from[url812]
  \useURL[url813][https://web.archive.org/web/https://web.archive.org/web/20220224174025/http://seeingyellow.com/][][{[}Archive.org{]}]\from[url813]}{\bf .}

\subsubsection[title={Pixelized or Blurred
Information:},reference={pixelized-or-blurred-information}]

Did you ever see a document with blurred text? Did you ever make fun of
those movies/series where they \quotation{enhance} an image to recover
seemingly impossible-to-read information?

Well, there are techniques for recovering information from such
documents, videos, and pictures.

Here is for example an open-source project you could use yourself for
recovering text from some blurred images yourself:
\useURL[url814][https://github.com/beurtschipper/Depix]\from[url814]
\useURL[url815][https://web.archive.org/web/https://github.com/beurtschipper/Depix][][{[}Archive.org{]}]\from[url815]

\placefigure{image14}{\externalfigure[./tex2pdf.-1a34188c73046814/8c97c975e37c2792538e508a4a8c0a7ddce0c40e.png]}

This is of course an open-source project available for all to use. But
you can imagine that such techniques have probably been used before by
other adversaries. These could be used to reveal blurred information
from published documents that could then be used to de-anonymize you.

There are also tutorials for using such techniques using Photo Editing
tools such as GIMP such as
\useURL[url816][https://medium.com/@somdevsangwan/unblurring-images-for-osint-and-more-part-1-5ee36db6a70b]\from[url816]
\useURL[url817][https://web.archive.org/web/https://medium.com/@somdevsangwan/unblurring-images-for-osint-and-more-part-1-5ee36db6a70b][][{[}Archive.org{]}]\from[url817]
followed by
\useURL[url818][https://medium.com/@somdevsangwan/deblurring-images-for-osint-part-2-ba564af8eb5d]\from[url818]
\useURL[url819][https://scribe.rip/@somdevsangwan/deblurring-images-for-osint-part-2-ba564af8eb5d][][{[}Scribe.rip{]}]\from[url819]
\useURL[url820][https://web.archive.org/web/https://medium.com/@somdevsangwan/deblurring-images-for-osint-part-2-ba564af8eb5d][][{[}Archive.org{]}]\from[url820]

\placefigure{image15}{\externalfigure[./tex2pdf.-1a34188c73046814/697c4bdfe82ded26f96471e66af08ac5a49c4107.png]}

Finally, you will find plenty of deblurring resources here:
\useURL[url821][https://github.com/subeeshvasu/Awesome-Deblurring]\from[url821]
\useURL[url822][https://web.archive.org/web/https://github.com/subeeshvasu/Awesome-Deblurring][][{[}Archive.org{]}]\from[url822]

Some online services could even help you do this automatically to some
extent like MyHeritage.com enhance tool:

\useURL[url823][https://www.myheritage.com/photo-enhancer]\from[url823]
\useURL[url824][https://web.archive.org/web/https://www.myheritage.com/photo-enhancer][][{[}Archive.org{]}]\from[url824]

Here is the result of the above image:

\placefigure{image16}{\externalfigure[./tex2pdf.-1a34188c73046814/80dd775aa8d16e6e8776e3ff627b45b661d10949.png]}

Of course, this tool is more like \quotation{guessing} than really
deblurring at this point, but it could be enough to find you using
various reverse image searching services.

There are also techniques to deblur/depixelate parts in videos: see
\useURL[url825][https://positive.security/blog/video-depixelation]\from[url825]
\useURL[url826][https://web.archive.org/web/https://positive.security/blog/video-depixelation][][{[}Archive.org{]}]\from[url826]

For this reason, it is always extremely important that you correctly
redact and curate any document you might want to publish. Blurring is
not enough, and you should always completely blacken/remove any
sensitive data to avoid any attempt at recovering data from any
adversary. Do not pixelized, do not blur, just put a hard black
rectangle to redact information.

\subsection[title={Your Cryptocurrencies
transactions:},reference={your-cryptocurrencies-transactions}]

Contrary to widespread belief, Crypto transactions (such as Bitcoin and
Ethereum) are not anonymous\footnote{arXiv, An Analysis of Anonymity in
  the Bitcoin System
  \useURL[url827][https://arxiv.org/pdf/1107.4524.pdf]\from[url827]
  \useURL[url828][https://web.archive.org/web/https://arxiv.org/pdf/1107.4524.pdf][][{[}Archive.org{]}]\from[url828]}.
Most cryptocurrencies can be tracked accurately through various
methods\footnote{Bellingcat, How To Track Illegal Funding Campaigns Via
  Cryptocurrency,
  \useURL[url829][https://www.bellingcat.com/resources/how-tos/2019/03/26/how-to-track-illegal-funding-campaigns-via-cryptocurrency/]\from[url829]
  \useURL[url830][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2019/03/26/how-to-track-illegal-funding-campaigns-via-cryptocurrency/][][{[}Archive.org{]}]\from[url830]}'\footnote{CoinDesk,
  Leaked Slides Show How Chainalysis Flags Crypto Suspects for Cops
  \useURL[url831][https://www.coindesk.com/business/2021/09/21/leaked-slides-show-how-chainalysis-flags-crypto-suspects-for-cops/]\from[url831]
  \useURL[url832][https://web.archive.org/web/https://www.coindesk.com/business/2021/09/21/leaked-slides-show-how-chainalysis-flags-crypto-suspects-for-cops/][][{[}Archive.org{]}]\from[url832]}.

Remember what they say on their page:
\useURL[url833][https://bitcoin.org/en/you-need-to-know]\from[url833]
\useURL[url834][https://web.archive.org/web/https://bitcoin.org/en/you-need-to-know][][{[}Archive.org{]}]\from[url834]
and
\useURL[url835][https://bitcoin.org/en/protect-your-privacy]\from[url835]
\useURL[url836][https://web.archive.org/web/https://bitcoin.org/en/protect-your-privacy][][{[}Archive.org{]}]\from[url836]:
\quotation{Bitcoin is not anonymous}

The main issue is not setting up a random Crypto wallet to receive some
currency behind a VPN/Tor address (at this point, the wallet is
anonymous). The issue is mainly when you want to convert Fiat money
(Euros, Dollars \ldots{}) to Crypto and then when you want to cash in
your Crypto. You will have few realistic options but to transfer those
to an exchange (such as Coinbase/Kraken/Bitstamp/Binance). Those
exchanges have known wallet addresses and will keep detailed logs (due
to KYC\footnote{Wikipedia, KYC
  \useURL[url837][https://en.wikipedia.org/wiki/Know_your_customer]\from[url837]
  \useURL[url838][https://wikiless.org/wiki/Know_your_customer][][{[}Wikiless{]}]\from[url838]
  \useURL[url839][https://web.archive.org/web/https://en.wikipedia.org/wiki/Know_your_customer][][{[}Archive.org{]}]\from[url839]}
financial regulations) and can then trace back those crypto transactions
to you using the financial system\footnote{arXiv.org, Probing the
  Mystery of Cryptocurrency Theft: An Investigation into Methods for
  Taint Analysis
  \useURL[url840][https://arxiv.org/pdf/1906.05754.pdf]\from[url840]
  \useURL[url841][https://web.archive.org/web/https://arxiv.org/pdf/1906.05754.pdf][][{[}Archive.org{]}]\from[url841]}.

There are some cryptocurrencies with privacy/anonymity in mind like
Monero but even those have some and warnings to consider\footnote{YouTube,
  Breaking Monero
  \useURL[url842][https://www.youtube.com/watch?v=WOyC6OB6ezA&list=PLsSYUeVwrHBnAUre2G_LYDsdo-tD0ov-y]\from[url842]
  \useURL[url843][https://yewtu.be/playlist?list=PLsSYUeVwrHBnAUre2G_LYDsdo-tD0ov-y][][{[}Invidious{]}]\from[url843]}'\footnote{Monero,
  Monero vs Princeton Researchers,
  \useURL[url844][https://monero.org/monero-vs-princeton-researchers/]\from[url844]
  \useURL[url845][https://web.archive.org/web/https://monero.org/monero-vs-princeton-researchers/][][{[}Archive.org{]}]\from[url845]}.

Use of \quotation{private} mixers, tumblers\footnote{Wikipedia,
  Cryptocurrency Tumbler
  \useURL[url846][https://en.wikipedia.org/wiki/Cryptocurrency_tumbler]\from[url846]
  \useURL[url847][https://wikiless.org/wiki/Cryptocurrency_tumbler][][{[}Wikiless{]}]\from[url847]
  \useURL[url848][https://web.archive.org/web/https://en.wikipedia.org/wiki/Cryptocurrency_tumbler][][{[}Archive.org{]}]\from[url848]}
(centralized services that specialize in \quotation{anonymizing}
cryptocurrencies by \quotation{mixing them}) and coinjoiners are risky
as you don't know what's happening on them\footnote{Wikipedia, Security
  Through Obscurity
  \useURL[url849][https://en.wikipedia.org/wiki/Security_through_obscurity]\from[url849]
  \useURL[url850][https://wikiless.org/wiki/Security_through_obscurity][][{[}Wikiless{]}]\from[url850]
  \useURL[url851][https://web.archive.org/web/https://en.wikipedia.org/wiki/Security_through_obscurity][][{[}Archive.org{]}]\from[url851]}
and can be trivially de-mixed\footnote{ArXiv, Tracking Mixed Bitcoins
  \useURL[url852][https://arxiv.org/pdf/2009.14007.pdf]\from[url852]
  \useURL[url853][https://web.archive.org/web/https://arxiv.org/pdf/2009.14007.pdf][][{[}Archive.org{]}]\from[url853]}.
Their centrally-controlled nature could also put you in trouble as they
are more susceptible to money-laundering laws\footnote{SSRN, The
  Cryptocurrency Tumblers: Risks, Legality and Oversight
  \useURL[url854][https://www.researchgate.net/publication/321786355_The_Cryptocurrency_Tumblers_Risks_Legality_and_Oversight]\from[url854]
  \useURL[url855][https://web.archive.org/web/https://www.researchgate.net/publication/321786355_The_Cryptocurrency_Tumblers_Risks_Legality_and_Oversight][][{[}Archive.org{]}]\from[url855]}.

This does not mean you cannot use Bitcoin anonymously at all. You can
actually use Bitcoin anonymously as long as you do not convert it to
actual currency, use a Bitcoin wallet from a safe anonymous network, and
do not reuse addresses or consolidate outputs that were used when
spending at different merchants. Meaning you should avoid KYC/AML
regulations by various exchanges, avoid using the Bitcoin network from
any known IP address, and use a wallet that provides privacy-preserving
tools. See \goto{Appendix Z: Online anonymous payments using
cryptocurrencies}[appendix-z-online-anonymous-payments-using-cryptocurrencies].

{\bf Overall, the best option for using Crypto with reasonable anonymity
and privacy is still Monero and you should ideally not use any other for
sensitive transactions unless you are aware of the limitations and risks
involved. Please do read} \goto{Appendix B2: Monero
Disclaimer}[appendix-b2-monero-disclaimer]{\bf .}

{\bf TLDR: Use Monero!}

\subsection[title={Your Cloud backups/sync
services:},reference={your-cloud-backupssync-services}]

All companies are advertising their use of end-to-end encryption (E2EE).
This is true for almost every messaging app and website (HTTPS). Apple
and Google are advertising their use of encryption on their Android
devices and their iPhones.

But what about your backups? Those automated iCloud/Google Drive backups
you have?

Well, you should know that most of those backups are not fully
end-to-end encrypted and will hold some of your information readily
available for a third party. You will see their claims that data is
encrypted at rest and safe from anyone \ldots{} Except they usually do
keep a key to access some of the data themselves. These keys are used
for them indexing your content, recover your account, collecting various
analytics.

There are specialized commercial forensics solutions available (Magnet
Axiom\footnote{Magnet Forensics, Magnet AXIOM
  \useURL[url856][https://www.magnetforensics.com/products/magnet-axiom/cloud/]\from[url856]
  \useURL[url857][https://web.archive.org/web/https://www.magnetforensics.com/products/magnet-axiom/cloud/][][{[}Archive.org{]}]\from[url857]},
Cellebrite Cloud\footnote{Cellebrite, Unlock cloud-based evidence to
  solve the case sooner
  \useURL[url858][https://www.cellebrite.com/en/ufed-cloud/]\from[url858]
  \useURL[url859][https://web.archive.org/web/https://www.cellebrite.com/en/ufed-cloud/][][{[}Archive.org{]}]\from[url859]})
that will help an adversary analyze your cloud data with ease.

Notable Examples:

\startitemize
\item
  Apple iCloud:
  \useURL[url860][https://support.apple.com/en-us/HT202303]\from[url860]
  \useURL[url861][https://web.archive.org/web/https://support.apple.com/en-us/HT202303][][{[}Archive.org{]}]\from[url861]
  : \quotation{Messages in iCloud also uses end-to-end encryption. If
  you have iCloud Backup turned on{\bf , your backup includes a copy of
  the key protecting your Messages}. This ensures you can recover your
  Messages if you lose access to iCloud Keychain and your trusted
  devices.}.
\item
  Google Drive and WhatsApp:
  \useURL[url862][https://faq.whatsapp.com/android/chats/about-google-drive-backups/]\from[url862]
  \useURL[url863][https://web.archive.org/web/https://faq.whatsapp.com/android/chats/about-google-drive-backups/][][{[}Archive.org{]}]\from[url863]:
  \quotation{{\bf Media and messages you back up aren't protected by
  WhatsApp end-to-end encryption while in Google Drive}.}. Do however
  note that Facebook/Whatsapp have announced the rollout of encrypted
  backups on October 14\high{th} 2021
  (\useURL[url864][https://about.fb.com/news/2021/10/end-to-end-encrypted-backups-on-whatsapp/]\from[url864]
  \useURL[url865][https://web.archive.org/web/https://about.fb.com/news/2021/10/end-to-end-encrypted-backups-on-whatsapp/][][{[}Archive.org{]}]\from[url865])
  which should solve this issue.
\item
  Dropbox:
  \useURL[url866][https://www.dropbox.com/privacy\#terms]\from[url866]
  \useURL[url867][https://web.archive.org/web/https://www.dropbox.com/privacy][][{[}Archive.org{]}]\from[url867]
  \quotation{To provide these and other features, {\bf Dropbox accesses,
  stores, and scans Your Stuff}. You give us permission to do those
  things, and this permission extends to our affiliates and trusted
  third parties we work with}.
\item
  Microsoft OneDrive:
  \useURL[url868][https://privacy.microsoft.com/en-us/privacystatement]\from[url868]
  \useURL[url869][https://web.archive.org/web/https://privacy.microsoft.com/en-us/privacystatement][][{[}Archive.org{]}]\from[url869]:
  Productivity and communications products, \quotation{When you use
  OneDrive, we collect data about your usage of the service, as well as
  the content you store, to provide, improve, and protect the services.
  {\bf Examples include indexing the contents of your OneDrive documents
  so that you can search for them later and using location information
  to enable you to search for photos based on where the photo was
  taken}}.
\stopitemize

You should not trust cloud providers with your (not previously and
locally encrypted) sensitive data and you should be wary of their
privacy claims. In most cases, they can access your data and provide it
to a third party if they want to\footnote{Property of the People, Lawful
  Access to Secure Messaging Apps Data,
  \useURL[url870][https://propertyofthepeople.org/document-detail/?doc-id=21114562]\from[url870]
  \useURL[url871][https://web.archive.org/web/https://propertyofthepeople.org/document-detail/?doc-id=21114562][][{[}Archive.org{]}]\from[url871]}.

The only way to mitigate this is to encrypt your data on your side and
then only upload it to such services {\bf or just not use them at all.}

\subsection[title={Your Browser and Device
Fingerprints:},reference={your-browser-and-device-fingerprints}]

Your Browser and Device Fingerprints\footnote{Wikipedia, Device
  Fingerprinting
  \useURL[url872][https://en.wikipedia.org/wiki/Device_fingerprint]\from[url872]
  \useURL[url873][https://wikiless.org/wiki/Device_fingerprint][][{[}Wikiless{]}]\from[url873]
  \useURL[url874][https://web.archive.org/web/https://en.wikipedia.org/wiki/Device_fingerprint][][{[}Archive.org{]}]\from[url874]}
are a set of properties/capabilities of your System/Browser. These are
used on most websites for invisible user tracking but also to adapt the
website user experience depending on their browser. For instance,
websites will be able to provide a \quotation{mobile experience} if you
are using a mobile browser or propose a specific language/geographic
version depending on your fingerprint. Most of those techniques work
with recent Browsers like Chromium-based\footnote{Chromium
  Documentation, Technical analysis of client identification mechanisms
  \useURL[url875][https://sites.google.com/a/chromium.org/dev/Home/chromium-security/client-identification-mechanisms\#TOC-Machine-specific-characteristics]\from[url875]
  \useURL[url876][https://web.archive.org/web/https://sites.google.com/a/chromium.org/dev/Home/chromium-security/client-identification-mechanisms][][{[}Archive.org{]}]\from[url876]}
browsers (such as Chrome/Edge) or Firefox\footnote{Mozilla Wiki,
  Fingerprinting
  \useURL[url877][https://wiki.mozilla.org/Fingerprinting]\from[url877]
  \useURL[url878][https://web.archive.org/web/https://wiki.mozilla.org/Fingerprinting][][{[}Archive.org{]}]\from[url878]}
unless taking specific measures. Browser and Device\footnote{Wikipedia,
  Device Fingerprinting
  \useURL[url879][https://en.wikipedia.org/wiki/Device_fingerprint]\from[url879]
  \useURL[url880][https://wikiless.org/wiki/Device_fingerprint][][{[}Wikiless{]}]\from[url880]
  \useURL[url881][https://web.archive.org/web/https://en.wikipedia.org/wiki/Device_fingerprint][][{[}Archive.org{]}]\from[url881]}
Fingerprinting are usually integrated into the Captcha services but also
in other various services.

We will address \goto{Browser and Device
Fingerprinting}[browser-and-device-fingerprinting] further down but this
is a basic introduction to the methodology behind it and why it is used
in practice.

It should also be noted that while some browsers and extensions will
offer some fingerprint resistance, this resistance in itself can also be
used to fingerprint you as explained here
\useURL[url882][https://palant.info/2020/12/10/how-anti-fingerprinting-extensions-tend-to-make-fingerprinting-easier/]\from[url882]
\useURL[url883][https://web.archive.org/web/https://palant.info/2020/12/10/how-anti-fingerprinting-extensions-tend-to-make-fingerprinting-easier/][][{[}Archive.org{]}]\from[url883]

This guide will mitigate these issues by randomizing or hiding many of
those fingerprinting identifiers by:

\startitemize
\item
  Using Virtualization (See \goto{Appendix W:
  Virtualization}[appendix-w-virtualization]);
\item
  Using specific recommendations (See \goto{Appendix A5: Additional
  browser precautions with JavaScript
  enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled];
\item
  Using hardening \goto{Appendix V1: Hardening your
  Browsers}[appendix-v1-hardening-your-browsers]);
\item
  and by using fingerprint-resistant browsers (like Brave or Tor
  Browser).
\stopitemize

\subsection[title={Microarchitectural Side-channel Deanonymization
Attacks:},reference={microarchitectural-side-channel-deanonymization-attacks}]

There was an attack published that can deanonymize users if they have a
known alias. For example, an attacker trying to track the activities of
a journalist can use that journalist's public Twitter handle to link
their anonymous identities with their public one. This breaks
compartmentalization of identities and can lead to complete
deanonymization, even of users who practice proper OPSEC.

The attack, published at
\useURL[url884][https://leakuidatorplusteam.github.io/]\from[url884]
\useURL[url885][https://web.archive.org/web/20220720023429/https://leakuidatorplusteam.github.io/][][{[}Archive.org{]}]\from[url885],
can be mitigated using the well-known
\useURL[url886][https://noscript.net/][][NoScript]\from[url886]
extension and will be our preferred recommendation.

One loosely documented attack might take the following approach to
fingerprinting: Alice is browsing the web using Firefox. The website she
has just visited is using an invisible \type{iframe} that creates long
strings, e.g., sentences or hashes, to produce some non-user-viewable
string. These strings are setting a certain font type, Arial. Whether
the browser renders this is non-essential, it only matters if the font
changes. The \type{iframe} in this case serves no purpose but to
identify whether a user has installed a certain font on their machine.
If Alice is using a font that this frame has tried to render, then it is
reported back to the website and to the person in control of the
website.

The font renders a box with a specific height and width around itself,
so that means a specific height and width of the text contained within.
The \type{iframe} keeps doing this for each installed font to create a
list of installed fonts for Alice. Because of stylistic differences
between each font family, the same string and the same font size will
add up to a different height and a different width than Arial. It is
used as a fallback font to display text that won't display otherwise, in
the case of a user not having that font on their machine and thus
non-viewable from their browser.

If a font requested by an \type{iframe} is not available, Arial will be
used to show that text to the user. Every time the font measurement
(identified by the dimensions of the box produced) changed, it means the
font is present on Alice's browser and her machine. By doing this for
hundreds of fonts, websites can use this information to track users
using their installed fonts across websites. Imagine a website then
selling this \quotation{anonymized} information as a dataset to
advertisement companies to serve you ads based on the websites you
visit, because they know every font you have installed on your machine
and can now track your identity across the internet. This attack is
demonstrated here:
\useURL[url887][https://www.youtube.com/watch?v=5Y1Y96jC5AA][][Everything
you always wanted to know about web-based device fingerprinting (but
were afraid to ask)]\from[url887] by Dr.~Nick Nikiforakis, PhD in
Computer Science from KU Leuven. He explains how his team of researchers
identified which sites were using such techniques on Alexa's top 10,000
websites. Primarily, they found that of those, 145 were fingerprinting
browsers. They were fingerprinted 100\letterpercent{} of the time ---
whether they were using the Do Not Track header, a popular Privacy &
Security setting in many browsers, did not matter.

Attacks such as invisible iframes and media elements can be avoided by
blocking all scripts globally by using something like uBlock Origin
\useURL[url888][https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm]\from[url888]
or by using NoScript
\useURL[url889][https://chrome.google.com/webstore/detail/noscript/doojmbjmlfjjnbmnoijecmcbfeoakpjm]\from[url889].
This is highly encouraged, not only to those wishing to be anonymous,
but also to general web users.

\subsection[title={Tor Browser:},reference={tor-browser}]

{\bf Note: This attack is now prevented by default by an update of
\useURL[url890][https://noscript.net/][][NoScript]\from[url890] (11.4.8
and above) on all security levels in Tor Browser.}

\subsection[title={All others:},reference={all-others}]

Installing the
\useURL[url891][https://noscript.net/][][NoScript]\from[url891]
extension will prevent the attack {\bf by default only in private
Windows} using their new \quotation{TabGuard feature}. But can be
enabled in the NoScript options to work on all Windows. See:

\startitemize[packed]
\item
  Release tweet:
  \useURL[url892][https://twitter.com/ma1/status/1557751019945299969]\from[url892]
  \useURL[url893][https://web.archive.org/web/https://twitter.com/ma1/status/1557751019945299969][][{[}Archive.org{]}]\from[url893]
\item
  User explanation:
  \useURL[url894][https://noscript.net/usage/\#crosstab-identity-leak-protection]\from[url894]
  \useURL[url895][https://web.archive.org/web/https://noscript.net/usage/\#crosstab-identity-leak-protection][][{[}Archive.org{]}]\from[url895]
\item
  Tor Project Forum Post:
  \useURL[url896][https://forum.torproject.net/t/tor-browser-can-leak-your-identity-through-side-channel-attack/4005/2]\from[url896]
  \useURL[url897][https://web.archive.org/web/https://forum.torproject.net/t/tor-browser-can-leak-your-identity-through-side-channel-attack/4005/2][][{[}Archive.org{]}]\from[url897]
\item
  NoScript extension for Firefox (Firefox, and other Firefox-based
  browsers except Tor Browser):
  \useURL[url898][https://addons.mozilla.org/en-US/firefox/addon/noscript/]\from[url898]
\item
  NoScript extension for Chromium based browsers (Brave, Chrome, Edge,
  and other Chromium-based browsers):
  \useURL[url899][https://chrome.google.com/webstore/detail/noscript/doojmbjmlfjjnbmnoijecmcbfeoakpjm?hl=en]\from[url899]
\stopitemize

\subsubsection[title={Alternative to NoScript for all other
browsers:},reference={alternative-to-noscript-for-all-other-browsers}]

The researches who disclosed the issue also made an extension available
below. Again, {\bf nothing is required in Tor Browser}. This path is not
our preferred path but is still available if you do not want to use
NoScript.

\startitemize[packed]
\item
  Leakuidator+ extension for Chromium based browsers (Brave, Chrome,
  Edge, and other Chromium-based browsers):
  \useURL[url900][https://chrome.google.com/webstore/detail/leakuidator\%2B/hhfpajcjkikoocmmhcimllpinjnbedll][][https://chrome.google.com/webstore/detail/leakuidator\letterpercent{}2B/hhfpajcjkikoocmmhcimllpinjnbedll]\from[url900]
\item
  Leakuidator+ extension for Firefox (Firefox, and other Firefox-based
  browsers except Tor Browser):
  \useURL[url901][https://addons.mozilla.org/en-US/firefox/addon/leakuidatorplus/]\from[url901]
\stopitemize

Separating identities via separate browsers or even with VMs is not
enough to avoid this attack. However, another solution is to make sure
that when you start working with an anonymous identity, you entirely
close all activities linked to other identities. The vulnerability only
works if you're actively logged into a non-anonymous identity. The issue
with this is that it can hinder effective workflow, as multitasking
across multiple identities becomes impossible.

\subsection[title={Local Data Leaks and
Forensics:},reference={local-data-leaks-and-forensics}]

Most of you have probably seen enough Crime dramas on Netflix or TV to
know what forensics are. These are technicians (usually working for law
enforcement) that will perform various analysis of evidence. This of
course could include your smartphone or laptop.

While these might be done by an adversary when you already got
\quotation{burned}, these might also be done randomly during a routine
control or a border check. These unrelated checks might reveal secret
information to adversaries that had no prior knowledge of such
activities.

Forensics techniques are now very advanced and can reveal a staggering
amount of information from your devices even if they are
encrypted\footnote{Grayshift,
  \useURL[url902][https://www.grayshift.com/]\from[url902]
  \useURL[url903][https://web.archive.org/web/https://www.grayshift.com/][][{[}Archive.org{]}]\from[url903]}.
These techniques are widely used by law enforcement all over the world
and should be considered.

Here are some recent resources you should read about your smartphone:

\startitemize
\item
  UpTurn, The Widespread Power of U.S. Law Enforcement to Search Mobile
  Phones
  \useURL[url904][https://www.upturn.org/reports/2020/mass-extraction/]\from[url904]
  \useURL[url905][https://web.archive.org/web/https://www.upturn.org/reports/2020/mass-extraction/][][{[}Archive.org{]}]\from[url905]
\item
  New-York Times, The Police Can Probably Break Into Your Phone
  \useURL[url906][https://www.nytimes.com/2020/10/21/technology/iphone-encryption-police.html]\from[url906]
  \useURL[url907][https://web.archive.org/web/https://www.nytimes.com/2020/10/21/technology/iphone-encryption-police.html][][{[}Archive.org{]}]\from[url907]
\item
  Vice, Cops Around the Country Can Now Unlock iPhones, Records Show
  \useURL[url908][https://www.vice.com/en/article/vbxxxd/unlock-iphone-ios11-graykey-grayshift-police]\from[url908]
  \useURL[url909][https://web.archive.org/web/https://www.vice.com/en/article/vbxxxd/unlock-iphone-ios11-graykey-grayshift-police][][{[}Archive.org{]}]\from[url909]
\stopitemize

I also highly recommend that you read some documents from a forensics
examiner perspective such as:

\startitemize
\item
  EnCase Forensic User Guide,
  \useURL[url910][http://encase-docs.opentext.com/documentation/encase/forensic/8.07/Content/Resources/External\%20Files/EnCase\%20Forensic\%20v8.07\%20User\%20Guide.pdf][][http://encase-docs.opentext.com/documentation/encase/forensic/8.07/Content/Resources/External\letterpercent{}20Files/EnCase\letterpercent{}20Forensic\letterpercent{}20v8.07\letterpercent{}20User\letterpercent{}20Guide.pdf]\from[url910]
  \useURL[url911][https://web.archive.org/web/http://encase-docs.opentext.com/documentation/encase/forensic/8.07/Content/Resources/External\%20Files/EnCase\%20Forensic\%20v8.07\%20User\%20Guide.pdf][][{[}Archive.org{]}]\from[url911]
\item
  FTK Forensic Toolkit,
  \useURL[url912][https://accessdata.com/products-services/forensic-toolkit-ftk]\from[url912]
  \useURL[url913][https://web.archive.org/web/https://accessdata.com/products-services/forensic-toolkit-ftk][][{[}Archive.org{]}]\from[url913]
\item
  SANS Digital Forensics and Incident Response Videos,
  \useURL[url914][https://www.youtube.com/c/SANSDigitalForensics/videos]\from[url914]
\stopitemize

And finally, here is this very instructive detailed paper on the current
state of IOS/Android security from the John Hopkins University:
https://securephones.io/main.html\footnote{Securephones.io, Data
  Security on Mobile Devices: Current State of the Art, Open Problems,
  and Proposed Solutions
  \useURL[url915][https://securephones.io/main.pdf]\from[url915]
  \useURL[url916][https://web.archive.org/web/https://securephones.io/main.pdf][][{[}Archive.org{]}]\from[url916]}.

When it comes to your laptop, the forensics techniques are many and
widespread. Many of those issues can be mitigated by using full disk
encryption, virtualization (See \goto{Appendix W:
Virtualization}[appendix-v1-hardening-your-browsers]), and
compartmentalization. This guide will later detail such threats and
techniques to mitigate them.

\subsection[title={Bad Cryptography:},reference={bad-cryptography}]

There is a frequent adage among the infosec community: \quotation{Don't
roll your own crypto!}.

And there are reasons\footnote{Loup-Vaillant.fr, Rolling Your Own Crypto
  \useURL[url917][https://loup-vaillant.fr/articles/rolling-your-own-crypto]\from[url917]
  \useURL[url918][https://web.archive.org/web/https://loup-vaillant.fr/articles/rolling-your-own-crypto][][{[}Archive.org{]}]\from[url918]}\quote{\footnote{Dhole
  Moments, Crackpot Cryptography and Security Theater
  \useURL[url919][https://soatok.blog/2021/02/09/crackpot-cryptography-and-security-theater/]\from[url919]
  \useURL[url920][https://web.archive.org/web/https://soatok.blog/2021/02/09/crackpot-cryptography-and-security-theater/][][{[}Archive.org{]}]\from[url920]}}\footnote{Vice.com,
  Why You Don't Roll Your Own Crypto
  \useURL[url921][https://www.vice.com/en/article/wnx8nq/why-you-dont-roll-your-own-crypto]\from[url921]
  \useURL[url922][https://web.archive.org/web/https://www.vice.com/en/article/wnx8nq/why-you-dont-roll-your-own-crypto][][{[}Archive.org{]}]\from[url922]}'\footnote{arXiv,
  MIT, You Really Shouldn't Roll Your Own Crypto: An Empirical Study of
  Vulnerabilities in Cryptographic Libraries
  \useURL[url923][https://arxiv.org/pdf/2107.04940.pdf]\from[url923]
  \useURL[url924][https://web.archive.org/web/https://arxiv.org/pdf/2107.04940.pdf][][{[}Archive.org{]}]\from[url924]}
for that:

We would not want people discouraged from studying and innovating in the
crypto field because of that adage. So instead, we would recommend
people to be cautious with \quotation{Roll your own crypto} because it
is not necessarily good crypto:

\startitemize
\item
  Good cryptography is not easy and usually takes years of research to
  develop and fine-tune.
\item
  Good cryptography is transparent and not proprietary/closed source so
  it can be reviewed by peers.
\item
  Good cryptography is developed carefully, slowly, and rarely alone.
\item
  Good cryptography is usually presented and discussed in conferences
  and published in various journals.
\item
  Good cryptography is extensively peer-reviewed before it is released
  for use in the wild.
\item
  Using and implementing existing good cryptography correctly is already
  a challenge.
\stopitemize

Yet, this is not stopping some from doing it anyway and publishing
various production Apps/Services using their self-made cryptography or
proprietary closed-source methods:

\startitemize
\item
  You should apply caution when using Apps/Services using closed-source
  or proprietary encryption methods. All the good crypto standards are
  public and peer-reviewed and there should be no issue disclosing the
  one you use.
\item
  You should be wary of Apps/Services using a \quotation{modified} or
  proprietary cryptographic method\footnote{YouTube, Great Crypto
    Failures
    \useURL[url925][https://www.youtube.com/watch?v=loy84K3AJ5Q]\from[url925]
    \useURL[url926][https://yewtu.be/watch?v=loy84K3AJ5Q][][{[}Invidious{]}]\from[url926]}.
\item
  By default, you should not trust any \quotation{Roll your own crypto}
  until it was audited, peer-reviewed, vetted, and accepted by the
  cryptography community\footnote{Cryptography Dispatches, The Most
    Backdoor-Looking Bug I've Ever Seen
    \useURL[url927][https://buttondown.email/cryptography-dispatches/archive/cryptography-dispatches-the-most-backdoor-looking/]\from[url927]
    \useURL[url928][https://web.archive.org/web/https://buttondown.email/cryptography-dispatches/archive/cryptography-dispatches-the-most-backdoor-looking/][][{[}Archive.org{]}]\from[url928]}'\footnote{Citizenlab.ca,
    Move Fast and Roll Your Own Crypto
    \useURL[url929][https://citizenlab.ca/2020/04/move-fast-roll-your-own-crypto-a-quick-look-at-the-confidentiality-of-zoom-meetings/]\from[url929]
    \useURL[url930][https://web.archive.org/web/https://citizenlab.ca/2020/04/move-fast-roll-your-own-crypto-a-quick-look-at-the-confidentiality-of-zoom-meetings/][][{[}Archive.org{]}]\from[url930]}.
\item
  There is no such thing as \quotation{military-grade crypto}\footnote{Jack
    Poon, The myth of military grade encryption
    \useURL[url931][https://medium.com/@atcipher/the-myth-of-military-grade-encryption-292313ae6369]\from[url931]
    \useURL[url932][https://scribe.rip/@atcipher/the-myth-of-military-grade-encryption-292313ae6369][][{[}Scribe.rip{]}]\from[url932]
    \useURL[url933][https://web.archive.org/web/https://medium.com/@atcipher/the-myth-of-military-grade-encryption-292313ae6369][][{[}Archive.org{]}]\from[url933]}\quote{\footnote{Congruent
    Labs, Stop calling it \quotation{Military-Grade Encryption}
    \useURL[url934][https://blog.congruentlabs.co/military-grade-encryption/]\from[url934]
    \useURL[url935][https://web.archive.org/web/https://blog.congruentlabs.co/military-grade-encryption/][][{[}Archive.org{]}]\from[url935]}}\footnote{IronCoreLabs
    Blog, \quotation{Military Grade Encryption}
    \useURL[url936][https://blog.ironcorelabs.com/military-grade-encryption-69aae0145588]\from[url936]
    \useURL[url937][https://web.archive.org/web/https://blog.ironcorelabs.com/military-grade-encryption-69aae0145588][][{[}Archive.org{]}]\from[url937]}.
\stopitemize

Cryptography is a complex topic and bad cryptography could easily lead
to your de-anonymization.

In the context of this guide,we recommend sticking to Apps/Services
using well-established, published, and peer-reviewed methods.

So, what to prefer and what to avoid as of 2021? You will have to look
up for yourself to get the technical details of each app and see if they
are using \quotation{bad crypto} or \quotation{good crypto}. Once you
get the technical details, you could check this page for seeing what it
is worth:
\useURL[url938][https://latacora.micro.blog/2018/04/03/cryptographic-right-answers.html]\from[url938]
\useURL[url939][https://web.archive.org/web/https://latacora.micro.blog/2018/04/03/cryptographic-right-answers.html][][{[}Archive.org{]}]\from[url939]

Here are some examples:

\startitemize
\item
  Hashes:

  \startitemize
  \item
    Prefer: SHA-3 or BLAKE2\footnote{Wikipedia, BLAKE2,
      \useURL[url940][https://en.wikipedia.org/wiki/BLAKE_(hash_function)\#BLAKE2]\from[url940]
      \useURL[url941][https://wikiless.org/wiki/BLAKE_(hash_function)\#BLAKE2][][{[}Wikiless{]}]\from[url941]
      \useURL[url942][https://web.archive.org/web/https://en.wikipedia.org/wiki/BLAKE_(hash_function)\#BLAKE2][][{[}Archive.org{]}]\from[url942]}
  \item
    Still relatively ok to use: SHA-2 (such as the widely used SHA-256
    or SHA-512)
  \item
    Avoid: SHA-1, MD5 (unfortunately still widely used), CRC, MD6
    (rarely used)
  \stopitemize
\item
  File/Disk Encryption:

  \startitemize
  \item
    Prefer:

    \startitemize
    \item
      Hardware Accelerated\footnote{Wikipedia, AES Instruction Set,
        \useURL[url943][https://en.wikipedia.org/wiki/AES_instruction_set]\from[url943]
        \useURL[url944][https://wikiless.org/wiki/AES_instruction_set][][{[}Wikiless{]}]\from[url944]
        \useURL[url945][https://web.archive.org/web/https://en.wikipedia.org/wiki/AES_instruction_set][][{[}Archive.org{]}]\from[url945]}:
      AES (Rijndael) 256 Bits with HMAC-SHA-2 or HMAC-SHA-3 (This is
      what Veracrypt, Bitlocker, Filevault 2, KeepassXC, and LUKS use by
      default). Prefer SHA-3.
    \item
      Non-Hardware Accelerated: Same as accelerated above or if
      available consider:

      \startitemize
      \item
        ChaCha20\footnote{Wikipedia, ChaCha Variants,
          \useURL[url946][https://en.wikipedia.org/wiki/Salsa20\#ChaCha_variant]\from[url946]
          \useURL[url947][https://wikiless.org/wiki/Salsa20\#ChaCha_variant][][{[}Wikiless{]}]\from[url947]
          \useURL[url948][https://web.archive.org/web/https://en.wikipedia.org/wiki/Salsa20\#ChaCha_variant][][{[}Archive.org{]}]\from[url948]}
        or XChaCha20 (You can use ChaCha20 with Kryptor
        \useURL[url949][https://www.kryptor.co.uk]\from[url949],
        unfortunately, it is not available with Veracrypt).
      \item
        Serpent\footnote{Wikipedia, Serpent,
          \useURL[url950][https://en.wikipedia.org/wiki/Serpent_(cipher)]\from[url950]
          \useURL[url951][https://wikiless.org/wiki/Serpent_(cipher)][][{[}Wikiless{]}]\from[url951]
          \useURL[url952][https://web.archive.org/web/https://en.wikipedia.org/wiki/Serpent_(cipher)][][{[}Archive.org{]}]\from[url952]}
      \item
        TwoFish\footnote{Wikipedia, TwoFish,
          \useURL[url953][https://en.wikipedia.org/wiki/Twofish]\from[url953]
          \useURL[url954][https://wikiless.org/wiki/Twofish][][{[}Wikiless{]}]\from[url954]
          \useURL[url955][https://web.archive.org/web/https://en.wikipedia.org/wiki/Twofish][][{[}Archive.org{]}]\from[url955]}
      \stopitemize
    \stopitemize
  \item
    Avoid: Pretty much anything else
  \stopitemize
\item
  Password Storage:

  \startitemize
  \item
    Prefer: Argon2, scrypt
  \item
    If these aren't options, use bcrypt, or if not possible at least
    PBKDF2 (only as a last resort)
  \item
    Be skeptical of Argon2d, as it's vulnerable to some forms of
    side-channels. Prefer Argon2i or Argon2id
  \item
    Avoid: SHA-3, SHA-2, SHA-1, MD5
  \stopitemize
\item
  Browser Security (HTTPS):

  \startitemize
  \item
    Prefer: TLS 1.3 (ideally TLS 1.3 with ECH/eSNI support) or at least
    TLS 1.2 (widely used)
  \item
    Avoid: Anything Else (TLS =<1.1, SSL =<3)
  \stopitemize
\item
  Signing messages/files with PGP/GPG:

  \startitemize
  \item
    Prefer ECDSA (ed25519)+ECDH (ec25519) or RSA 4096 Bits*

    \startitemize[packed]
    \item
      {\bf Consider a more modern}\footnote{Lacatora, The PGP Problem
        \useURL[url956][https://latacora.singles/2019/07/16/the-pgp-problem.html]\from[url956]
        \useURL[url957][https://web.archive.org/web/https://latacora.singles/2019/07/16/the-pgp-problem.html][][{[}Archive.org{]}]\from[url957]}
      {\bf alternative to PGP/GPG: Minisign
      \useURL[url958][https://jedisct1.github.io/minisign/]\from[url958]}
      \useURL[url959][https://web.archive.org/web/https://jedisct1.github.io/minisign/][][{[}Archive.org{]}]\from[url959]
    \stopitemize
  \item
    Avoid: RSA 2048 bits
  \stopitemize
\item
  SSH keys:

  \startitemize
  \item
    ED25519 (preferred) or RSA 4096 Bits*
  \item
    Avoid: RSA 2048 bits
  \stopitemize
\item
  {\bf Warning: RSA and ED25519 are unfortunately not seen as
  \quotation{Quantum Resistant}}\footnote{Wikipedia, Shor's Algorithm,
    \useURL[url960][https://en.wikipedia.org/wiki/Shor\%27s_algorithm][][https://en.wikipedia.org/wiki/Shor\letterpercent{}27s_algorithm]\from[url960]
    \useURL[url961][https://wikiless.org/wiki/Shor\%27s_algorithm][][{[}Wikiless{]}]\from[url961]
    \useURL[url962][https://web.archive.org/web/https://en.wikipedia.org/wiki/Shor\%27s_algorithm][][{[}Archive.org{]}]\from[url962]}
  {\bf and while they have not been broken yet, they probably will be
  broken someday into the future. It is just a matter of when rather
  than if RSA will ever be broken. So, these are preferred in those
  contexts due to the lack of a better possibility.}
\stopitemize

Here are some real cases of issues bad cryptography:

\startitemize
\item
  Telegram:
  \useURL[url963][https://democratic-europe.eu/2021/07/20/cryptographers-uncover-four-vulnerabilities-in-telegram/]\from[url963]
  \useURL[url964][https://web.archive.org/web/https://democratic-europe.eu/2021/07/20/cryptographers-uncover-four-vulnerabilities-in-telegram/][][{[}Archive.org{]}]\from[url964]
\item
  Telegram:
  \useURL[url965][https://buttondown.email/cryptography-dispatches/archive/cryptography-dispatches-the-most-backdoor-looking/]\from[url965]
  \useURL[url966][https://web.archive.org/web/https://buttondown.email/cryptography-dispatches/archive/cryptography-dispatches-the-most-backdoor-looking/][][{[}Archive.org{]}]\from[url966]
\item
  Cryptocat:
  \useURL[url967][https://web.archive.org/web/20130705051050/https://blog.crypto.cat/2013/07/new-critical-vulnerability-in-cryptocat-details/]\from[url967]
\item
  Some other examples can be found here:
  \useURL[url968][https://www.cryptofails.com/]\from[url968]
  \useURL[url969][https://web.archive.org/web/https://www.cryptofails.com/][][{[}Archive.org{]}]\from[url969]
\stopitemize

Later this guide will not recommend \quotation{bad cryptography} and
that should hopefully be enough to protect you?

\subsection[title={No logging but logging anyway
policies:},reference={no-logging-but-logging-anyway-policies}]

Many people have the idea that privacy-oriented services such as VPN or
E-Mail providers are safe due to their no-logging policies or their
encryption schemes. Unfortunately, many of those same people forget that
all those providers are legal commercial entities subject to the laws of
the countries in which they operate.

Any of those providers can be forced to silently (without your knowing
(using for example a court order with a gag order\footnote{Wikipedia,
  Gag Order,
  \useURL[url970][https://en.wikipedia.org/wiki/Gag_order]\from[url970]
  \useURL[url971][https://wikiless.org/wiki/Gag_order][][{[}Wikiless{]}]\from[url971]
  \useURL[url972][https://web.archive.org/web/https://en.wikipedia.org/wiki/Gag_order][][{[}Archive.org{]}]\from[url972]}
or a national security letter\footnote{Wikipedia, National Security
  Letter
  \useURL[url973][https://en.wikipedia.org/wiki/National_security_letter]\from[url973]
  \useURL[url974][https://wikiless.org/wiki/National_security_letter][][{[}Wikiless{]}]\from[url974]
  \useURL[url975][https://web.archive.org/web/https://en.wikipedia.org/wiki/National_security_letter][][{[}Archive.org{]}]\from[url975]})
log your activity to de-anonymize you. There have been several recent
examples of those:

\startitemize
\item
  2021, Proton, Proton logged IP address of French activist after an
  order by Swiss authorities (source link unavailable).
\item
  2021, WindScribe, Servers were not encrypted as they should have been
  allowing MITM attacks by authorities\footnote{ArsTechnica, VPN servers
    seized by Ukrainian authorities weren't encrypted
    \useURL[url976][https://arstechnica.com/gadgets/2021/07/vpn-servers-seized-by-ukrainian-authorities-werent-encrypted/]\from[url976]
    \useURL[url977][https://web.archive.org/web/https://arstechnica.com/gadgets/2021/07/vpn-servers-seized-by-ukrainian-authorities-werent-encrypted/][][{[}Archive.org{]}]\from[url977]}.
\item
  2021, DoubleVPN servers, logs, and account info seized by law
  enforcement\footnote{BleepingComputer, DoubleVPN servers, logs, and
    account info seized by law enforcement
    \useURL[url978][https://www.bleepingcomputer.com/news/security/doublevpn-servers-logs-and-account-info-seized-by-law-enforcement/]\from[url978]
    \useURL[url979][https://web.archive.org/web/https://www.bleepingcomputer.com/news/security/doublevpn-servers-logs-and-account-info-seized-by-law-enforcement/][][{[}Archive.org{]}]\from[url979]}.
\item
  2021, The Germany-based mail provider Tutanota was forced to monitor
  specific accounts for 3 months\footnote{CyberScoop, Court rules
    encrypted email provider Tutanota must monitor messages in blackmail
    case
    \useURL[url980][https://www.cyberscoop.com/court-rules-encrypted-email-tutanota-monitor-messages/]\from[url980]
    \useURL[url981][https://web.archive.org/web/https://www.cyberscoop.com/court-rules-encrypted-email-tutanota-monitor-messages/][][{[}Archive.org{]}]\from[url981]}.
\item
  2020, The Germany-based mail provider Tutanota was forced to implement
  a backdoor to intercept and save copies of the unencrypted e-mails of
  one user\footnote{Heise Online (German),
    \useURL[url982][https://www.heise.de/news/Gericht-zwingt-Mailprovider-Tutanota-zu-Ueberwachungsfunktion-4972460.html]\from[url982]
    \useURL[url983][https://web.archive.org/web/https://www.heise.de/news/Gericht-zwingt-Mailprovider-Tutanota-zu-Ueberwachungsfunktion-4972460.html][][{[}Archive.org{]}]\from[url983]}
  (they did not decrypt the stored e-mail).
\item
  2017, PureVPN was forced to disclose information of one user to the
  FBI\footnote{PCMag, Did PureVPN Cross a Line When It Disclosed User
    Information?
    \useURL[url984][https://www.pcmag.com/opinions/did-purevpn-cross-a-line-when-it-disclosed-user-information]\from[url984]
    \useURL[url985][https://web.archive.org/web/https://www.pcmag.com/opinions/did-purevpn-cross-a-line-when-it-disclosed-user-information][][{[}Archive.org{]}]\from[url985]}.
\item
  2014, an EarthVPN user was arrested based on logs provider to the
  Dutch Police\footnote{Internet Archive, Wipeyourdata, \quotation{No
    logs} EarthVPN user arrested after police finds logs
    \useURL[url986][https://archive.is/XNuVw\#selection-230.0-230.1]\from[url986]
    \useURL[url987][https://web.archive.org/web/https://archive.is/XNuVw][][{[}Archive.org{]}]\from[url987]}.
\item
  2013, Secure E-Mail provider Lavabit shuts down after fighting a
  secret gag order\footnote{Wikipedia, Lavabit Suspension and Gag order,
    \useURL[url988][https://en.wikipedia.org/wiki/Lavabit\#Suspension_and_gag_order]\from[url988]
    \useURL[url989][https://wikiless.org/wiki/Lavabit][][{[}Wikiless{]}]\from[url989]
    \useURL[url990][https://web.archive.org/web/https://en.wikipedia.org/wiki/Lavabit][][{[}Archive.org{]}]\from[url990]}.
\item
  2011, HideMyAss user was de-anonymized, and logs were provided to the
  FBI\footnote{Internet Archive, Invisibler, What Everybody Ought to
    Know About HideMyAss
    \useURL[url991][https://archive.is/ag9w4\#selection-136.0-136.1]\from[url991]}.
\stopitemize

Some providers have implemented the use of a Warrant Canary\footnote{Wikipedia,
  Warrant Canary
  \useURL[url992][https://en.wikipedia.org/wiki/Warrant_canary]\from[url992]
  \useURL[url993][https://wikiless.org/wiki/Warrant_canary][][{[}Wikiless{]}]\from[url993]
  \useURL[url994][https://web.archive.org/web/https://en.wikipedia.org/wiki/Warrant_canary][][{[}Archive.org{]}]\from[url994]}
that would allow their users to find out if they have been compromised
by such orders, but this has not been tested yet as far as we know.

Finally, it is now well known that some companies might be sponsored
front ends for some state adversaries (see the Crypto AG story\footnote{Washington
  Post, The intelligence coup of the century
  \useURL[url995][https://www.washingtonpost.com/graphics/2020/world/national-security/cia-crypto-encryption-machines-espionage/]\from[url995]
  \useURL[url996][https://web.archive.org/web/https://www.washingtonpost.com/graphics/2020/world/national-security/cia-crypto-encryption-machines-espionage/][][{[}Archive.org{]}]\from[url996]}
and Omnisec story\footnote{Swissinfo.ch, Second Swiss firm allegedly
  sold encrypted spying devices
  \useURL[url997][https://www.swissinfo.ch/eng/second-swiss-firm-allegedly-sold-encrypted-spying-devices/46186432]\from[url997]
  \useURL[url998][https://web.archive.org/web/https://www.swissinfo.ch/eng/second-swiss-firm-allegedly-sold-encrypted-spying-devices/46186432][][{[}Archive.org{]}]\from[url998]}).

For these reasons, you mustn't trust such providers for your privacy
despite all their claims. In most cases, you will be the last person to
know if any of your accounts were targeted by such orders and you might
never know at all.

To mitigate this, in cases where you want to use a VPN, we will
recommend the use of a cash/Monero-paid VPN provider over Tor to prevent
the VPN service from knowing any identifiable information about you.

If the VPN provider knows nothing about you, it should mitigate any
issue due to them not logging but logging anyway.

\subsection[title={Some Advanced targeted
techniques:},reference={some-advanced-targeted-techniques}]

\placefigure{image17}{\externalfigure[./tex2pdf.-1a34188c73046814/a56e4587b1199b03f2e2f69dd1cec9540440c565.png]}

(Illustration: an excellent movie we highly recommend: Das Leben der
Anderen\footnote{Wikipedia, Das Leben der Anderen
  \useURL[url999][https://en.wikipedia.org/wiki/The_Lives_of_Others]\from[url999]
  \useURL[url1000][https://wikiless.org/wiki/The_Lives_of_Others][][{[}Wikiless{]}]\from[url1000]
  \useURL[url1001][https://web.archive.org/web/https://en.wikipedia.org/wiki/The_Lives_of_Others][][{[}Archive.org{]}]\from[url1001]})

Many advanced techniques can be used by skilled adversaries\footnote{Wired,
  Mind the Gap: This Researcher Steals Data With Noise, Light, and
  Magnets
  \useURL[url1002][https://www.wired.com/story/air-gap-researcher-mordechai-guri/]\from[url1002]
  \useURL[url1003][https://web.archive.org/web/https://www.wired.com/story/air-gap-researcher-mordechai-guri/][][{[}Archive.org{]}]\from[url1003]}
to bypass your security measures provided they already know where your
devices are. Many of those techniques are detailed here
\useURL[url1004][https://cyber.bgu.ac.il/advanced-cyber/airgap]\from[url1004]
\useURL[url1005][https://web.archive.org/web/https://cyber.bgu.ac.il/advanced-cyber/airgap][][{[}Archive.org{]}]\from[url1005]
(Air-Gap Research Page, Cyber-Security Research Center, Ben-Gurion
University of the Negev, Israel) but also in this report
\useURL[url1006][https://www.welivesecurity.com/wp-content/uploads/2021/12/eset_jumping_the_air_gap_wp.pdf]\from[url1006]
\useURL[url1007][https://web.archive.org/web/https://www.welivesecurity.com/wp-content/uploads/2021/12/eset_jumping_the_air_gap_wp.pdf][][{[}Archive.org{]}]\from[url1007]
(ESET, JUMPING THE AIR GAP: 15 years of nation-state effort) and
include:

\startitemize
\item
  Attacks requiring malware implants:

  \startitemize
  \item
    Exfiltration of Data through a Malware infected Router:
    \useURL[url1008][https://www.youtube.com/watch?v=mSNt4h7EDKo]\from[url1008]
    \useURL[url1009][https://yewtu.be/watch?v=mSNt4h7EDKo][][{[}Invidious{]}]\from[url1009]
  \item
    Exfiltration of Data through observation of Light variation in a
    Backlit keyboard with a compromised camera:
    \useURL[url1010][https://www.youtube.com/watch?v=1kBGDHVr7x0]\from[url1010]
    \useURL[url1011][https://yewtu.be/watch?v=1kBGDHVr7x0][][{[}Invidious{]}]\from[url1011]

    \startitemize
    \item
      Exfiltration of Data through a compromised Security Camera (that
      could first use the previous attack)
      \useURL[url1012][https://www.youtube.com/watch?v=om5fNqKjj2M]\from[url1012]
      \useURL[url1013][https://yewtu.be/watch?v=om5fNqKjj2M][][{[}Invidious{]}]\from[url1013]
    \item
      Communication from outsider to compromised Security Cameras
      through IR light signals:
      \useURL[url1014][https://www.youtube.com/watch?v=auoYKSzdOj4]\from[url1014]
      \useURL[url1015][https://yewtu.be/watch?v=auoYKSzdOj4][][{[}Invidious{]}]\from[url1015]
    \stopitemize
  \item
    Exfiltration of data from a compromised air-gapped computer through
    acoustic analysis of the FAN noises with a smartphone
    \useURL[url1016][https://www.youtube.com/watch?v=v2_sZIfZkDQ]\from[url1016]
    \useURL[url1017][https://yewtu.be/watch?v=v2_sZIfZkDQ][][{[}Invidious{]}]\from[url1017]
  \item
    Exfiltration of data from a malware-infected air-gapped computer
    through HD LEDs with a Drone
    \useURL[url1018][https://www.youtube.com/watch?v=4vIu8ld68fc]\from[url1018]
    \useURL[url1019][https://yewtu.be/watch?v=4vIu8ld68fc][][{[}Invidious{]}]\from[url1019]
  \item
    Exfiltration of data from a USB malware on an air-gapped computer
    through electromagnetic interferences
    \useURL[url1020][https://www.youtube.com/watch?v=E28V1t-k8Hk]\from[url1020]
    \useURL[url1021][https://yewtu.be/watch?v=E28V1t-k8Hk][][{[}Invidious{]}]\from[url1021]
  \item
    Exfiltration of data from a malware-infected HDD drive through
    covert acoustic noise
    \useURL[url1022][https://www.youtube.com/watch?v=H7lQXmSLiP8]\from[url1022]
    \useURL[url1023][https://yewtu.be/watch?v=H7lQXmSLiP8][][{[}Invidious{]}]\from[url1023]
  \item
    Exfiltration of data through GSM frequencies from a compromised
    (with malware) air-gapped computer
    \useURL[url1024][https://www.youtube.com/watch?v=RChj7Mg3rC4]\from[url1024]
    \useURL[url1025][https://yewtu.be/watch?v=RChj7Mg3rC4][][{[}Invidious{]}]\from[url1025]
  \item
    Exfiltration of data through electromagnetic emissions from a
    compromised Display device
    \useURL[url1026][https://www.youtube.com/watch?v=2OzTWiGl1rM&t=20s]\from[url1026]
    \useURL[url1027][https://yewtu.be/watch?v=2OzTWiGl1rM&t=20s][][{[}Invidious{]}]\from[url1027]
  \item
    Exfiltration of data through magnetic waves from a compromised
    air-gapped computer to a Smartphone stored inside a Faraday bag
    \useURL[url1028][https://www.youtube.com/watch?v=yz8E5n1Tzlo]\from[url1028]
    \useURL[url1029][https://yewtu.be/watch?v=yz8E5n1Tzlo][][{[}Invidious{]}]\from[url1029]
  \item
    Communication between two compromised air-gapped computers using
    ultrasonic soundwaves
    \useURL[url1030][https://www.youtube.com/watch?v=yz8E5n1Tzlo]\from[url1030]
    \useURL[url1031][https://yewtu.be/watch?v=yz8E5n1Tzlo][][{[}Invidious{]}]\from[url1031]
  \item
    Exfiltration of Bitcoin Wallet from a compromised air-gapped
    computer to a smartphone
    \useURL[url1032][https://www.youtube.com/watch?v=2WtiHZNeveY]\from[url1032]
    \useURL[url1033][https://yewtu.be/watch?v=2WtiHZNeveY][][{[}Invidious{]}]\from[url1033]
  \item
    Exfiltration of Data from a compromised air-gapped computer using
    display brightness
    \useURL[url1034][https://www.youtube.com/watch?v=ZrkZUO2g4DE]\from[url1034]
    \useURL[url1035][https://yewtu.be/watch?v=ZrkZUO2g4DE][][{[}Invidious{]}]\from[url1035]
  \item
    Exfiltration of Data from a compromised air-gapped computer through
    vibrations
    \useURL[url1036][https://www.youtube.com/watch?v=XGD343nq1dg]\from[url1036]
    \useURL[url1037][https://yewtu.be/watch?v=XGD343nq1dg][][{[}Invidious{]}]\from[url1037]
  \item
    Exfiltration of Data from a compromised air-gapped computer by
    turning RAM into a Wi-Fi emitter
    \useURL[url1038][https://www.youtube.com/watch?v=vhNnc0ln63c]\from[url1038]
    \useURL[url1039][https://yewtu.be/watch?v=vhNnc0ln63c][][{[}Invidious{]}]\from[url1039]
  \item
    Exfiltration of Data from a compromised air-gapped computer through
    power lines
    \useURL[url1040][https://arxiv.org/pdf/1804.04014.pdf]\from[url1040]
    \useURL[url1041][https://web.archive.org/web/https://arxiv.org/pdf/1804.04014.pdf][][{[}Archive.org{]}]\from[url1041]
  \stopitemize
\item
  {\bf Attacks not requiring malware:}

  \startitemize
  \item
    Observing a blank wall in a room from a distance to figure how many
    people are in a room and what they are doing\footnote{Scientific
      American, A Blank Wall Can Show How Many People Are in a Room and
      What They're Doing
      \useURL[url1042][https://www.scientificamerican.com/article/a-blank-wall-can-show-how-many-people-are-in-a-room-and-what-theyre-doing/]\from[url1042]
      \useURL[url1043][https://web.archive.org/web/https://www.scientificamerican.com/article/a-blank-wall-can-show-how-many-people-are-in-a-room-and-what-theyre-doing/][][{[}Archive.org{]}]\from[url1043]}.
    Publication with demonstration:
    \useURL[url1044][http://wallcamera.csail.mit.edu/]\from[url1044]
    \useURL[url1045][https://web.archive.org/web/http://wallcamera.csail.mit.edu/][][{[}Archive.org{]}]\from[url1045]
  \item
    Observing a reflective bag of snacks in a room from a distance to
    reconstruct the entire room\footnote{Scientific American, A Shiny
      Snack Bag's Reflections Can Reconstruct the Room around It
      \useURL[url1046][https://www.scientificamerican.com/article/a-shiny-snack-bags-reflections-can-reconstruct-the-room-around-it/]\from[url1046]
      \useURL[url1047][https://web.archive.org/web/https://www.scientificamerican.com/article/a-shiny-snack-bags-reflections-can-reconstruct-the-room-around-it/][][{[}Archive.org{]}]\from[url1047]}.
    Publication with photographic examples:
    \useURL[url1048][https://arxiv.org/pdf/2001.04642.pdf]\from[url1048]
    \useURL[url1049][https://web.archive.org/web/https://arxiv.org/pdf/2001.04642.pdf][][{[}Archive.org{]}]\from[url1049]
  \item
    Measuring floor vibrations to identify individuals and determine
    their health condition and mood\footnote{Scientific American,
      Footstep Sensors Identify People by Gait
      \useURL[url1050][https://www.scientificamerican.com/article/footstep-sensors-identify-people-by-gait/]\from[url1050]
      \useURL[url1051][https://web.archive.org/web/https://www.scientificamerican.com/article/footstep-sensors-identify-people-by-gait/][][{[}Archive.org{]}]\from[url1051]}.
    Publication with demonstration:
    \useURL[url1052][https://engineering.cmu.edu/news-events/news/2020/02/17-mauraders-map.html]\from[url1052]
    \useURL[url1053][https://web.archive.org/web/https://engineering.cmu.edu/news-events/news/2020/02/17-mauraders-map.html][][{[}Archive.org{]}]\from[url1053]
  \item
    Observing a light bulb from a distance to listen to the sound in the
    room\footnote{Ben Nassi, Lamphone
      \useURL[url1054][https://www.nassiben.com/lamphone]\from[url1054]
      \useURL[url1055][https://web.archive.org/web/https://www.nassiben.com/lamphone][][{[}Archive.org{]}]\from[url1055]}
    {\bf without any malware}: Demonstration:
    \useURL[url1056][https://www.youtube.com/watch?v=t32QvpfOHqw]\from[url1056]
    \useURL[url1057][https://yewtu.be/watch?v=t32QvpfOHqw][][{[}Invidious{]}]\from[url1057].
    It should be noted that this type of attack is not new at all and
    there have been articles about such techniques as far back as
    2013\footnote{The Guardian, Laser spying: is it really practical?
      \useURL[url1058][https://www.theguardian.com/world/2013/aug/22/gchq-warned-laser-spying-guardian-offices]\from[url1058]
      \useURL[url1059][https://web.archive.org/web/https://www.theguardian.com/world/2013/aug/22/gchq-warned-laser-spying-guardian-offices][][{[}Archive.org{]}]\from[url1059]}
    and that you can even buy devices to perform this yourself such as
    here:
    \useURL[url1060][http://www.gcomtech.com/ccp0-prodshow/laser-surveillance-laser-listening.html]\from[url1060]
    \useURL[url1061][https://web.archive.org/web/http://www.gcomtech.com/ccp0-prodshow/laser-surveillance-laser-listening.html][][{[}Archive.org{]}]\from[url1061]
  \stopitemize
\stopitemize

Here is also a good video from the same authors to explain those topics:
Black Hat, The Air-Gap Jumpers
\useURL[url1062][https://www.youtube.com/watch?v=YKRtFgunyj4]\from[url1062]
\useURL[url1063][https://yewtu.be/watch?v=YKRtFgunyj4][][{[}Invidious{]}]\from[url1063]

{\bf Realistically, this guide will be of little help against such
adversaries as such malware could be implanted on the devices by a
manufacturer, anyone in the middle}\footnote{ArsTechnica, Photos of an
  NSA \quotation{upgrade} factory show Cisco router getting implant
  \useURL[url1064][https://arstechnica.com/tech-policy/2014/05/photos-of-an-nsa-upgrade-factory-show-cisco-router-getting-implant/]\from[url1064]
  \useURL[url1065][https://web.archive.org/web/https://arstechnica.com/tech-policy/2014/05/photos-of-an-nsa-upgrade-factory-show-cisco-router-getting-implant/][][{[}Archive.org{]}]\from[url1065]}{\bf ,
or by anyone with physical access to the air-gapped computer but there
are still some ways to mitigate such techniques:}

\startitemize
\item
  Do not conduct sensitive activity while connected to an
  untrusted/unsecured power line to prevent power line leaks.
\item
  Do not use your devices in front of a camera that could be
  compromised.
\item
  Use your devices in a soundproofed room to prevent sound leaks.
\item
  Use your devices in a Faraday cage to prevent electromagnetic leaks.
\item
  Do not talk about sensitive information where lightbulbs could be seen
  from outside.
\item
  Buy your devices from different/unpredictable/offline places (shops)
  where the probability of them being infected with such malware is
  lower.
\item
  Do not let anyone access your air-gapped computers except trusted
  people.
\stopitemize

\subsection[title={Some bonus
resources:},reference={some-bonus-resources}]

\startitemize
\item
  Have a look at the Whonix Documentation concerning Data Collection
  techniques here:
  \useURL[url1066][https://www.whonix.org/wiki/Data_Collection_Techniques]\from[url1066]
  \useURL[url1067][https://web.archive.org/web/https://www.whonix.org/wiki/Data_Collection_Techniques][][{[}Archive.org{]}]\from[url1067]
\item
  You might also enjoy looking at this service
  \useURL[url1068][https://tosdr.org/]\from[url1068]
  \useURL[url1069][https://web.archive.org/web/https://tosdr.org/][][{[}Archive.org{]}]\from[url1069]
  (Terms of Services, Didn't Read) that will give you a good overview of
  the various ToS of many services.
\item
  Have a look at
  \useURL[url1070][https://www.eff.org/issues/privacy]\from[url1070]
  \useURL[url1071][https://web.archive.org/web/https://www.eff.org/issues/privacy][][{[}Archive.org{]}]\from[url1071]
  for some more resources.
\item
  Have a look at
  \useURL[url1072][https://en.wikipedia.org/wiki/List_of_government_mass_surveillance_projects]\from[url1072]
  \useURL[url1073][https://wikiless.org/wiki/List_of_government_mass_surveillance_projects][][{[}Wikiless{]}]\from[url1073]
  \useURL[url1074][https://web.archive.org/web/https://en.wikipedia.org/wiki/List_of_government_mass_surveillance_projects][][{[}Archive.org{]}]\from[url1074]
  to have an overview of all known mass-surveillance projects, current,
  and past.
\item
  Have a look at
  \useURL[url1075][https://www.gwern.net/Death-Note-Anonymity]\from[url1075]
  \useURL[url1076][https://web.archive.org/web/https://www.gwern.net/Death-Note-Anonymity][][{[}Archive.org{]}]\from[url1076]
  (even if you don't know about Death Note).
\item
  Consider finding and reading Michael Bazzell's book
  \quotation{Open-Source Intelligence Techniques} (eighth edition as of
  this writing to find out more about recent OSINT techniques)
  \useURL[url1077][https://inteltechniques.com/book1.html]\from[url1077]
\item
  Finally, check
  \useURL[url1078][https://www.freehaven.net/anonbib/date.html]\from[url1078]
  \useURL[url1079][https://web.archive.org/web/https://www.freehaven.net/anonbib/date.html][][{[}Archive.org{]}]\from[url1079]
  for the latest academic papers related to Online Anonymity.
\stopitemize

\subsection[title={Notes:},reference={notes}]

If you still do not think such information can be used by various actors
to track you, you can see some statistics for yourself for some
platforms and keep in mind those are only accounting for the lawful data
requests and will not count things like PRISM, MUSCULAR, SORM or
XKEYSCORE explained earlier:

\startitemize
\item
  Google Transparency Report
  \useURL[url1080][https://transparencyreport.google.com/user-data/overview]\from[url1080]
  \useURL[url1081][https://web.archive.org/web/https://transparencyreport.google.com/user-data/overview][][{[}Archive.org{]}]\from[url1081]
\item
  Facebook Transparency Report
  \useURL[url1082][https://transparency.facebook.com/]\from[url1082]
  \useURL[url1083][https://web.archive.org/web/https://transparency.facebook.com/][][{[}Archive.org{]}]\from[url1083]
\item
  Apple Transparency Report
  \useURL[url1084][https://www.apple.com/legal/transparency/]\from[url1084]
  \useURL[url1085][https://web.archive.org/web/https://www.apple.com/legal/transparency/][][{[}Archive.org{]}]\from[url1085]
\item
  Cloudflare Transparency Report
  \useURL[url1086][https://www.cloudflare.com/transparency/]\from[url1086]
  \useURL[url1087][https://web.archive.org/web/https://www.cloudflare.com/transparency/][][{[}Archive.org{]}]\from[url1087]
\item
  Snapchat Transparency Report
  \useURL[url1088][https://www.snap.com/en-US/privacy/transparency]\from[url1088]
  \useURL[url1089][https://web.archive.org/web/https://www.snap.com/en-US/privacy/transparency][][{[}Archive.org{]}]\from[url1089]
\item
  Telegram Transparency Report
  \useURL[url1090][https://t.me/transparency]\from[url1090]
  \useURL[url1091][https://web.archive.org/web/https://t.me/transparency][][{[}Archive.org{]}]\from[url1091]
  (requires telegram installed)
\item
  Microsoft Transparency Report
  \useURL[url1092][https://www.microsoft.com/en-us/corporate-responsibility/law-enforcement-requests-report]\from[url1092]
  \useURL[url1093][https://web.archive.org/web/https://www.microsoft.com/en-us/corporate-responsibility/law-enforcement-requests-report][][{[}Archive.org{]}]\from[url1093]
\item
  Amazon Transparency Report
  \useURL[url1094][https://www.amazon.com/gp/help/customer/display.html?nodeId=GYSDRGWQ2C2CRYEF]\from[url1094]
  \useURL[url1095][https://web.archive.org/web/https://www.amazon.com/gp/help/customer/display.html?nodeId=GYSDRGWQ2C2CRYEF][][{[}Archive.org{]}]\from[url1095]
\item
  Dropbox Transparency Report
  \useURL[url1096][https://www.dropbox.com/transparency]\from[url1096]
  \useURL[url1097][https://web.archive.org/web/https://www.dropbox.com/transparency][][{[}Archive.org{]}]\from[url1097]
\item
  Discord Transparency Report
  \useURL[url1098][https://discord.com/blog/discord-transparency-report-q1-2022]\from[url1098]
  \useURL[url1099][https://web.archive.org/web/20220812051950/https://discord.com/blog/discord-transparency-report-q1-2022][][{[}Archive.org{]}]\from[url1099]
\item
  GitHub Transparency Report
  \useURL[url1100][https://github.blog/2021-02-25-2020-transparency-report/]\from[url1100]
  \useURL[url1101][https://web.archive.org/web/https://github.blog/2021-02-25-2020-transparency-report/][][{[}Archive.org{]}]\from[url1101]
\item
  Snapchat Transparency Report
  \useURL[url1102][https://www.snap.com/en-US/privacy/transparency/]\from[url1102]
  \useURL[url1103][https://web.archive.org/web/20220806141853/https://www.snap.com/en-US/privacy/transparency][][{[}Archive.org{]}]\from[url1103]
\item
  TikTok Transparency Report
  \useURL[url1104][https://www.tiktok.com/transparency/en/information-requests-2021-2/]\from[url1104]
  \useURL[url1105][https://web.archive.org/web/20220812054600/https://www.tiktok.com/transparency/en/information-requests-2021-2/][][{[}Archive.org{]}]\from[url1105]
\item
  Reddit Transparency Report
  \useURL[url1106][https://www.redditinc.com/policies/transparency-report-2021]\from[url1106]
  \useURL[url1107][https://web.archive.org/web/20220812054736/https://www.redditinc.com/policies/transparency-report-2021][][{[}Archive.org{]}]\from[url1107]
\item
  Twitter Transparency Report
  \useURL[url1108][https://transparency.twitter.com/]\from[url1108]
  \useURL[url1109][https://web.archive.org/web/20220812054839/https://transparency.twitter.com/][][{[}Archive.org{]}]\from[url1109]
\stopitemize

\section[title={General Preparations:},reference={general-preparations}]

Personally, in the context of this guide, it is also interesting to have
a look at your security model. And in this context,we only have one to
recommend:

Zero-Trust Security\footnote{Wikipedia, Zero-trust Security Model
  \useURL[url1110][https://en.wikipedia.org/wiki/Zero_trust_security_model]\from[url1110]
  \useURL[url1111][https://wikiless.org/wiki/Zero_trust_security_model][][{[}Wikiless{]}]\from[url1111]
  \useURL[url1112][https://web.archive.org/web/https://en.wikipedia.org/wiki/Zero_trust_security_model][][{[}Archive.org{]}]\from[url1112]}
(\quotation{Never trust, always verify}).

Here are some various resources about what Zero-Trust Security is:

\startitemize
\item
  DEFCON, Zero Trust a Vision for Securing Cloud,
  \useURL[url1113][https://www.youtube.com/watch?v=euSsqXO53GY]\from[url1113]
  \useURL[url1114][https://yewtu.be/watch?v=euSsqXO53GY][][{[}Invidious{]}]\from[url1114]
\item
  From the NSA themselves, Embracing a Zero Trust Security Model,
  \useURL[url1115][https://media.defense.gov/2021/Feb/25/2002588479/-1/-1/0/CSI_EMBRACING_ZT_SECURITY_MODEL_UOO115131-21.PDF]\from[url1115]
  \useURL[url1116][https://web.archive.org/web/https://media.defense.gov/2021/Feb/25/2002588479/-1/-1/0/CSI_EMBRACING_ZT_SECURITY_MODEL_UOO115131-21.PDF][][{[}Archive.org{]}]\from[url1116]
\stopitemize

\subsection[title={Picking your route:},reference={picking-your-route}]

First, here is a small basic UML diagram showing your available options
according to your skills/budget/time/resources.

\placefigure{image18}{\externalfigure[./tex2pdf.-1a34188c73046814/5039d0baf9b2f223fb7e3228a8e4606f8c126171.png]}

\subsubsection[title={Timing
limitations:},reference={timing-limitations}]

\startitemize
\item
  You have no time at all:

  \startitemize[packed]
  \item
    {\bf Go for the Tor Browser route.}
  \stopitemize
\item
  You have extremely limited time to learn and need a fast-working
  solution:

  \startitemize[packed]
  \item
    {\bf Your best option is to go for the Tails route (excluding the
    persistent plausible deniability section).}
  \stopitemize
\item
  You have time and more importantly motivation to learn:

  \startitemize[packed]
  \item
    {\bf Go with any route.}
  \stopitemize
\stopitemize

\subsubsection[title={Budget/Material
limitations:},reference={budgetmaterial-limitations}]

\startitemize
\item
  You have no budget and even accessing a laptop is complicated or you
  only have your smartphone:

  \startitemize[packed]
  \item
    {\bf Go for the Tor Browser route.}
  \stopitemize
\item
  You only have one laptop available and cannot afford anything else.
  You use this laptop for either work, family, or your personal stuff
  (or both):

  \startitemize[packed]
  \item
    {\bf Your best option is to go for the Tails route.}
  \stopitemize
\item
  You can afford a spare dedicated unsupervised/unmonitored laptop for
  your sensitive activities:

  \startitemize
  \item
    But it is old, slow, and has bad specs (less than 6GB of RAM, less
    than 250GB disk space, old/slow CPU):

    \startitemize[packed]
    \item
      {\bf You should go for the Tails route.}
    \stopitemize
  \item
    It is not that old, and it has decent specs (at least 8GB of RAM,
    250GB of disk space or more, decent CPU):

    \startitemize[packed]
    \item
      {\bf You could go for Tails, Whonix routes.}
    \stopitemize
  \item
    It is new and it has great specs (more than 16GB or ideally 32GB of
    RAM, >250GB of disk space, recent fast CPU):

    \startitemize[packed]
    \item
      {\bf You could go for any route, but we would recommend Qubes OS
      if your threat model allows it. Please see the
      requirements.\footnote{Qubes OS, System Requirements
        \useURL[url1117][https://www.qubes-os.org/doc/system-requirements/]\from[url1117]
        \useURL[url1118][https://web.archive.org/web/https://www.qubes-os.org/doc/system-requirements/][][{[}Archive.org{]}]\from[url1118]}}
    \stopitemize
  \item
    If it is an ARM-based M1/M2 Mac:

    \startitemize
    \item
      {\bf Not possible currently for these reasons:}

      \startitemize
      \item
        Virtualization of Intel x86 images on ARM (M1/M2) hosts is still
        limited to commercial software (e.g., Parallels, Fusion) which
        are mostly not supported by Whonix, yet. They are very buggy and
        for advanced people only. Please seek this information yourself.
      \item
        \useURL[url1119][https://osxdaily.com/2022/10/22/you-can-now-run-virtualbox-on-apple-silicon-m1-m2/][][Virtualbox
        is now available natively for ARM64 architecture]\from[url1119]
        in a package as of October 2022. Download the
        \useURL[url1120][https://www.virtualbox.org/wiki/Downloads][][\quotation{Developer
        preview for macOS/Arm64 (M1/M2) hosts}]\from[url1120].
      \item
        Whonix does not support macOS easily. \quotation{You need to
        build Whonix using the build script to get it running on Apple
        Silicon.}
        \useURL[url1121][https://www.whonix.org/wiki/MacOS\#M1][][See
        the forum thread]\from[url1121].
      \item
        Tails is not supported on ARM64 architecture yet.
        \useURL[url1122][https://gitlab.tails.boum.org/tails/blueprints/-/wikis/ARM_platforms/][][See
        this thread]\from[url1122] for more information (keep in mind
        this page hasn't been updated recently).
      \item
        Qubes OS is not supported on ARM64 architecture yet, but there
        is work being done to make it available on aarch64, which may be
        delayed for the unforseeable future..
      \stopitemize
    \stopitemize
  \stopitemize
\stopitemize

{\bf The general advice in this guide regarding virtualization software
is that it's costly. That said, you should probably get a dedicated
laptop, capable of running virtualization software, preferably a 64-bit
architecture, to be used for more sensitive activities and testing.}

\subsubsection[title={Skills:},reference={skills}]

\startitemize
\item
  Do you have no IT skills at all the content of this guide look like an
  alien language to you? Consider:

  \startitemize
  \item
    {\bf The Tor Browser route (simplest of all)}
  \item
    {\bf The Tails route (excluding the persistent plausible deniability
    section).}
  \stopitemize
\item
  You have some IT skills and mostly understand this guide so far,
  consider:

  \startitemize
  \item
    {\bf The Tails route (with the optional persistent plausible
    deniability section).}
  \item
    {\bf The Whonix route.}
  \stopitemize
\item
  You have moderate to high IT skills, and you are already familiar with
  some of the content of this guide, consider:

  \startitemize[packed]
  \item
    {\bf Any route (Qubes OS is preferred if you can afford it).}
  \stopitemize
\item
  You are an l33T hacker, \quotation{there is no spoon}, \quotation{the
  cake is a lie}, you have been using \quotation{doas} for years, and
  \quotation{all your base is belong to us}, and you have strong
  opinions on systemd.

  \startitemize[packed]
  \item
    {\bf This guide is not meant for you and will not help you with your
    HardenedBSD on your hardened Libreboot laptop ;-)}
  \stopitemize
\stopitemize

\subsubsection[title={Adversarial
considerations:},reference={adversarial-considerations}]

Now that you know what is possible, you should also consider threats and
adversaries before picking the right route.

\subsubsubsection[title={Threats:},reference={threats}]

\startitemize
\item
  If your main concern is a forensic examination of your devices, you
  should consider the Tor Browser route or the Tails route.
\item
  If your main concerns are remote adversaries that might uncover your
  online identity on various platforms, you should consider the Tails,
  Whonix, or Qubes OS routes (listed in order of difficulty).
\item
  If you want system-wide plausible deniability\footnote{Wikipedia,
    Plausible Deniability
    \useURL[url1123][https://en.wikipedia.org/wiki/Plausible_deniability]\from[url1123]
    \useURL[url1124][https://wikiless.org/wiki/Plausible_deniability][][{[}Wikiless{]}]\from[url1124]
    \useURL[url1125][https://web.archive.org/web/https://en.wikipedia.org/wiki/Plausible_deniability][][{[}Archive.org{]}]\from[url1125]}\quote{\footnote{Wikipedia,
    Rubber-hose Cryptanalysis
    \useURL[url1126][https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis]\from[url1126]
    \useURL[url1127][https://web.archive.org/web/https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis][][{[}Archive.org{]}]\from[url1127]}
  despite the risks\footnote{Defuse.ca, TrueCrypt's Plausible
    Deniability is Theoretically Useless
    \useURL[url1128][https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm]\from[url1128]
    \useURL[url1129][https://web.archive.org/web/https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm][][{[}Archive.org{]}]\from[url1129]}}\footnote{Wikipedia,
    Deniable Encryption
    \useURL[url1130][https://en.wikipedia.org/wiki/Deniable_encryption]\from[url1130]
    \useURL[url1131][https://wikiless.org/wiki/Deniable_encryption][][{[}Wikiless{]}]\from[url1131]
    \useURL[url1132][https://web.archive.org/web/https://en.wikipedia.org/wiki/Deniable_encryption][][{[}Archive.org{]}]\from[url1132]},
  consider the Tails route, including the persistent plausible
  deniability section (see \goto{Persistent Plausible Deniability using
  Whonix within
  Tails}[persistent-plausible-deniability-using-whonix-within-tails]).**
\item
  If you are in a hostile environment where Tor/VPN usage alone is
  impossible/dangerous/suspicious, consider the Tails route (without
  actually using Tor), or more advanced routes like Whonix or Qubes OS.
\stopitemize

\subsubsubsection[title={Adversaries:},reference={adversaries}]

\startitemize
\item
  Low skills:

  \startitemize
  \item
    Low resources:

    \startitemize[packed]
    \item
      Any motivation: Any Route
    \stopitemize
  \item
    Medium resources:

    \startitemize
    \item
      Low to Medium motivation: Any Route
    \item
      High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \item
    High resources:

    \startitemize
    \item
      Low motivation: Any route
    \item
      Medium to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \stopitemize
\item
  Intermediate skills:

  \startitemize
  \item
    Low resources:

    \startitemize
    \item
      Low motivation: Any Route
    \item
      Medium to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \item
    Medium resources:

    \startitemize
    \item
      Low motivation: Any Route
    \item
      Medium to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \item
    High resources:

    \startitemize[packed]
    \item
      Low to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \stopitemize
\item
  Highly skilled:

  \startitemize
  \item
    Low resources:

    \startitemize
    \item
      Low motivation: Any Route
    \item
      Medium to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \item
    Medium resources:

    \startitemize[packed]
    \item
      Low to High motivation: TAILS, Whonix, Qubes OS Routes
    \stopitemize
  \item
    High resources:

    \startitemize[packed]
    \item
      Low to High motivations: TAILS, Whonix, Qubes OS Routes {\bf (but
      likely out of scope from this guide as this is probably a global
      adversary)}
    \stopitemize
  \stopitemize
\stopitemize

In all cases, you should read these two pages from the Whonix
documentation that will give you in-depth insight into your choices:

\startitemize
\item
  \useURL[url1133][https://www.whonix.org/wiki/Warning]\from[url1133]
  \useURL[url1134][https://web.archive.org/web/https://www.whonix.org/wiki/Warning][][{[}Archive.org{]}]\from[url1134]
\item
  \useURL[url1135][https://www.whonix.org/wiki/Dev/Threat_Model]\from[url1135]
  \useURL[url1136][https://web.archive.org/web/https://www.whonix.org/wiki/Dev/Threat_Model][][{[}Archive.org{]}]\from[url1136]
\item
  \useURL[url1137][https://www.whonix.org/wiki/Comparison_with_Others]\from[url1137]
  \useURL[url1138][https://web.archive.org/web/https://www.whonix.org/wiki/Comparison_with_Others][][{[}Archive.org{]}]\from[url1138]
\stopitemize

You might be asking yourself: \quotation{How do I know if I'm in a
hostile online environment where activities are actively monitored and
blocked?}

\startitemize
\item
  First read more about it at the EFF here:
  \useURL[url1139][https://ssd.eff.org/en/module/understanding-and-circumventing-network-censorship]\from[url1139]
  \useURL[url1140][https://web.archive.org/web/https://ssd.eff.org/en/module/understanding-and-circumventing-network-censorship][][{[}Archive.org{]}]\from[url1140]
\item
  Check some data yourself here on the Tor Project OONI\footnote{Wikipedia,
    OONI,
    \useURL[url1141][https://en.wikipedia.org/wiki/OONI]\from[url1141]
    \useURL[url1142][https://wikiless.org/wiki/OONI][][{[}Wikiless{]}]\from[url1142]
    \useURL[url1143][https://web.archive.org/web/https://en.wikipedia.org/wiki/OONI][][{[}Archive.org{]}]\from[url1143]}
  (Open Observatory of Network Interference) website:
  \useURL[url1144][https://explorer.ooni.org/]\from[url1144]
\item
  Have a look at
  \useURL[url1145][https://censoredplanet.org/]\from[url1145] and see if
  they have data about your country.
\item
  Specific to China, look at
  \useURL[url1146][https://gfwatch.org/]\from[url1146] and
  \useURL[url1147][https://www.usenix.org/system/files/sec21-hoang.pdf]\from[url1147]
  \useURL[url1148][https://web.archive.org/web/https://www.usenix.org/system/files/sec21-hoang.pdf][][{[}Archive.org{]}]\from[url1148]
\item
  Test for yourself using OONI (this can be risky in a hostile
  environment).
\stopitemize

\subsection[title={Steps for all
routes:},reference={steps-for-all-routes}]

\subsubsection[title={Getting used to using better
passwords:},reference={getting-used-to-using-better-passwords}]

See \goto{Appendix A2: Guidelines for passwords and
passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases].

\subsubsection[title={Getting an anonymous Phone
number:},reference={getting-an-anonymous-phone-number}]

{\bf Skip this step if you have no intention of creating anonymous
accounts on most mainstream platforms but just want anonymous browsing
or if the platforms you will use allow registration without a phone
number.}

\subsubsubsection[title={Physical Burner Phone and prepaid SIM
card:},reference={physical-burner-phone-and-prepaid-sim-card}]

\subsubsubsubsection[title={Get a burner
phone:},reference={get-a-burner-phone}]

This is rather easy. Leave your smartphone on and at home. Have some
cash and go to some random flea market or small shop (ideally one
without CCTV inside or outside and while avoiding being
photographed/filmed) and just buy the cheapest phone you can find with
cash and without providing any personal information. It only needs to be
in working order.

{\em A note regarding your current phone:} The point of leaving your
smartphone on is to create avoid leaking the fact that you're not using
the device. If a smartphone is turned off, this creates a metadata trail
that can be used to correlate the time your smartphone was turned off
with the activation of your burner. If possible, leave your phone doing
something (for example, watching YouTube on auto-play) to obscure the
metadata trail further. This will not make it impossible to correlate
your inactivity, but may make it more difficult if your phone's usage
patterns can look convincing while you buy your burner.

We would recommend getting an old \quotation{dumbphone} with a removable
battery (old Nokia if your mobile networks still allow those to connect
as some countries phased out 1G-2G completely). This is to avoid the
automatic sending/gathering of any telemetry/diagnostic data on the
phone itself. You should never connect that phone to any Wi-Fi.

{\bf Site Note: Be careful of some sellers as shown here
\useURL[url1149][https://therecord.media/malware-found-preinstalled-in-classic-push-button-phones-sold-in-russia/]\from[url1149]}
\useURL[url1150][https://web.archive.org/web/https://therecord.media/malware-found-preinstalled-in-classic-push-button-phones-sold-in-russia/][][{[}Archive.org{]}]\from[url1150]

It will also be crucial not to power on that burner phone ever (not even
without the SIM card) in any geographical location that could lead to
you (at your home/work for instance) and never at the same location as
your other known smartphone (because that one has an IMEI/IMSI that will
easily lead to you). This might seem like a big burden, but it is not as
these phones are only being used during the setup/sign-up process and
for verification from time to time.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

You should test that the phone is in working order before going to the
next step. But we will repeat ourselves and state that it is important
to leave your smartphone at home when going (or turn it off before
leaving if you must keep it) and that you test the phone at a random
location that cannot be tracked back to you (and again, do not do that
in front of a CCTV, avoid cameras, be aware of your surroundings). No
need for Wi-Fi at this place either.

When you are certain the phone is in working order, disable Bluetooth
then power it off (remove the battery if you can) and go back home and
resume your normal activities. Go to the next step.

\subsubsubsubsection[title={Getting an anonymous pre-paid SIM
card:},reference={getting-an-anonymous-pre-paid-sim-card}]

This is the hardest part of the whole guide. It is a SPOF (Single Point
of Failure). The places where you can still buy prepaid SIM cards
without ID registration are getting increasingly limited due to various
KYC type regulations\footnote{Privacy International, Timeline of SIM
  Card Registration Laws
  \useURL[url1151][https://privacyinternational.org/long-read/3018/timeline-sim-card-registration-laws]\from[url1151]
  \useURL[url1152][https://web.archive.org/web/https://privacyinternational.org/long-read/3018/timeline-sim-card-registration-laws][][{[}Archive.org{]}]\from[url1152]}.

So here is a list of places where you can still get them now:
\useURL[url1153][https://prepaid-data-sim-card.fandom.com/wiki/Registration_Policies_Per_Country]\from[url1153]
\useURL[url1154][https://web.archive.org/web/https://prepaid-data-sim-card.fandom.com/wiki/Registration_Policies_Per_Country][][{[}Archive.org{]}]\from[url1154]

You should be able to find a place that is \quotation{not too far} and
just go there physically to buy some pre-paid cards and top-up vouchers
with cash. Do verify that no law was passed before going that would make
registration mandatory (in case the above wiki was not updated). Try to
avoid CCTV and cameras and do not forget to buy a Top-Up voucher with
the SIM card (if it is not a package) as most pre-paid cards will
require a top-up before use.

See \goto{Appendix N: Warning about smartphones and smart
devices}[appendix-n-warning-about-smartphones-and-smart-devices]

Double-check that the mobile operators selling the pre-paid SIM cards
will accept the SIM activation and top-up without any ID registration of
any kind before going there. Ideally, they should accept SIM activation
and top-up from the country you live in.

We would recommend GiffGaff in the UK as they are
\quotation{affordable}, do not require identification for activation and
top-up, and will even allow you to change your number up to two times
from their website. One GiffGaff prepaid SIM card will therefore grant
you three numbers to use for your needs.

Power off the phone after activation/top-up and before going home. Do
not ever power it on again unless you are not at a place that can be
used to reveal your identity and ideally leave your real phone on but at
home before going to the safe place with only your burner phone.

\subsubsubsection[title={Online Phone
Number:},reference={online-phone-number}]

{\bf DISCLAIMER: Do not attempt this until you are done setting up a
secure environment according to one of the selected routes. This step
will require online access and should only be done from an anonymous
network. Do not do this from any known/unsecured environment. Skip this
until you have finished one of the routes.}

There are many commercial services offering numbers to receive SMS
messages online but most of those have no anonymity/privacy and can be
of no help as most Social Media platforms place a limit on how many
times a phone number can be used for registration.

There are some forums and subreddits (like r/phoneverification/) where
users will offer the service of receiving such SMS messages for you for
a small fee (using PayPal or some crypto payment). Unfortunately, these
are full of scammers and very risky in terms of anonymity. {\bf You
should not use those under any circumstance.}

To this date, we do not know any reputable service that would offer this
service and accept cash payments (by post for instance) like some VPN
providers. But a few services are providing online phone numbers and do
accept Monero which could be reasonably anonymous (yet less recommended
than that physical way in the earlier chapter) that you could consider:

\startitemize
\item
  {\bf Recommended}: Do not require any identification (even e-mail):

  \startitemize
  \item
    (Iceland based, accepts Monero)
    \useURL[url1155][https://crypton.sh]\from[url1155]
    \useURL[url1156][http://cryptonx6nsmspsnpicuihgmbbz3qvro4na35od3eht4vojdo7glm6yd.onion][][{[}Tor
    Mirror{]}]\from[url1156]
    \useURL[url1157][https://web.archive.org/web/https://crypton.sh/][][{[}Archive.org{]}]\from[url1157]
  \item
    (Ukraine based, accepts Monero)
    \useURL[url1158][https://virtualsim.net/]\from[url1158]
    \useURL[url1159][https://web.archive.org/web/https://virtualsim.net/][][{[}Archive.org{]}]\from[url1159]
  \stopitemize
\item
  Do require identification (valid e-mail):

  \startitemize
  \item
    (US California based, accepts Monero)
    \useURL[url1160][https://mobilesms.io]\from[url1160]
    \useURL[url1161][https://web.archive.org/web/https://mobilesms.io/][][{[}Archive.org{]}]\from[url1161]
  \item
    (Germany based, accepts Monero)
    \useURL[url1162][https://www.sms77.io/]\from[url1162]
    \useURL[url1163][https://web.archive.org/web/https://www.sms77.io/][][{[}Archive.org{]}]\from[url1163]
  \item
    (Russia based, accepts Monero)
    \useURL[url1164][https://onlinesim.ru/]\from[url1164]
    \useURL[url1165][https://web.archive.org/web/https://onlinesim.ru/][][{[}Archive.org{]}]\from[url1165]
  \stopitemize
\stopitemize

There are some other possibilities listed here
\useURL[url1166][https://cryptwerk.com/companies/sms/xmr/]\from[url1166]
\useURL[url1167][https://web.archive.org/web/https://cryptwerk.com/companies/sms/xmr/][][{[}Archive.org{]}]\from[url1167].
{\bf Use at your own risk.}

Now, what if you have no money? Well, in that case, you will have to try
your luck with free services and hope for the best. Here are some
examples, {\bf use at your own risk}:

\startitemize
\item
  \useURL[url1168][https://oksms.org]\from[url1168]
\item
  \useURL[url1169][https://smspva.com]\from[url1169]
\item
  \useURL[url1170][https://sms24.me]\from[url1170]
\stopitemize

{\bf Disclaimer: We cannot vouch for any of these providers. We
recommend doing it yourself physically. In this case, you will have to
rely on the anonymity of Monero and you should not use any service that
requires any kind of identification using your real identity. Please do
read \goto{Appendix B2: Monero
Disclaimer}[appendix-b2-monero-disclaimer].}

It is more convenient, cheaper, and less risky to just get a pre-paid
SIM card from one of the physical places that still sell them for cash
without ID.

\subsubsection[title={Get a USB key:},reference={get-a-usb-key}]

{\bf Skip this step if you have no intention of creating anonymous
accounts on most mainstream platforms, but you will want anonymous
browsing; or if the platforms which you will use allow registration
without a phone number.}

Get at least one or two decent size generic USB keys (at least 16GB but
we would recommend 32GB).

Please do not buy or use gimmicky self-encrypting devices such as these:
\useURL[url1171][https://syscall.eu/blog/2018/03/12/aigo_part1/]\from[url1171]
\useURL[url1172][https://web.archive.org/web/https://syscall.eu/blog/2018/03/12/aigo_part1/][][{[}Archive.org{]}]\from[url1172]

Some might be very efficient\footnote{NYTimes, Lost Passwords Lock
  Millionaires Out of Their Bitcoin Fortunes
  \useURL[url1173][https://www.nytimes.com/2021/01/12/technology/bitcoin-passwords-wallets-fortunes.html]\from[url1173]
  \useURL[url1174][https://web.archive.org/web/https://www.nytimes.com/2021/01/12/technology/bitcoin-passwords-wallets-fortunes.html][][{[}Archive.org{]}]\from[url1174]}
but many are gimmicky gadgets that offer no real protection\footnote{Usenix.org,
  Shedding too much Light on a Microcontroller's Firmware Protection
  \useURL[url1175][https://www.usenix.org/system/files/conference/woot17/woot17-paper-obermaier.pdf]\from[url1175]
  \useURL[url1176][https://web.archive.org/web/https://www.usenix.org/system/files/conference/woot17/woot17-paper-obermaier.pdf][][{[}Archive.org{]}]\from[url1176]}.

\subsubsection[title={Find some safe places with decent public
Wi-Fi:},reference={find-some-safe-places-with-decent-public-wi-fi}]

You need to find safe places where you will be able to do your sensitive
activities using some publicly accessible Wi-Fi (without any account/ID
registration, avoid CCTVs).

This can be anywhere that will not be tied to you directly (your
home/work) and where you can use the Wi-Fi for a while without being
bothered. But also, a place where you can do this without being
\quotation{noticed} by anyone.

If you think Starbucks is a clever idea, you may reconsider:

\startitemize
\item
  They probably have CCTVs in all their shops and keep those recordings
  for an unknown amount of time.
\item
  You will need to buy a coffee to get the Wi-Fi access code in most. If
  you pay for this coffee with an electronic method, they will be able
  to tie your Wi-Fi access with your identity.
\stopitemize

Situational awareness is key, and you should be constantly aware of your
surroundings and avoid touristy places like it was plagued by Ebola. You
want to avoid appearing on any picture/video of anyone while someone is
taking a selfie, making a TikTok video, or posting some travel pictures
on their Instagram. If you do, remember chances are high that those
pictures will end up online (publicly or privately) with full metadata
attached to them (time/date/geolocation) and your face. Remember these
can and will be indexed by Facebook/Google/Yandex/Apple and probably all
three letters' agencies.

While this will not be available yet to your local police officers, it
could be in the near future.

You will ideally need a set of 3-5 separate places such as this to avoid
using the same place twice. Several trips will be needed over the weeks
for the various steps in this guide.

You could also consider connecting to these places from a safe distance
for added security. See \goto{Appendix Q: Using long-range Antenna to
connect to Public Wi-Fis from a safe
distance.}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance]

\subsection[title={The Tor Browser
route:},reference={the-tor-browser-route}]

This part of the guide will help you in setting up the simplest and
easiest way to browse the web anonymously. It is not necessarily the
best method and there are more advanced methods below with (much) better
security and (much) better mitigations against various adversaries. Yet,
this is a straightforward way of accessing resources anonymously and
quickly with no budget, no time, no skills, and limited usage.

So, what is Tor Browser? Tor Browser
(\useURL[url1177][https://www.torproject.org/]\from[url1177]
\useURL[url1178][https://web.archive.org/web/https://www.torproject.org/][][{[}Archive.org{]}]\from[url1178])
is a web browser like Safari/Firefox/Chrome/Edge/Brave designed with
privacy and anonymity in mind.

This browser is different from other browsers as it will connect to the
internet through the Tor Network using Onion Routing. We first recommend
that you watch this very nice introduction video by the Tor Project
themselves:
\useURL[url1179][https://www.youtube.com/watch?v=JWII85UlzKw]\from[url1179]
\useURL[url1180][https://yewtu.be/watch?v=JWII85UlzKw][][{[}Invidious{]}]\from[url1180].
After that, you should probably head over to their page to read their
quick overview here:
\useURL[url1181][https://2019.www.torproject.org/about/overview.html.en]\from[url1181]
\useURL[url1182][https://web.archive.org/web/https://2019.www.torproject.org/about/overview.html.en][][{[}Archive.org{]}]\from[url1182].
Without going into too many technical details, Tor Browser is an easy
and simple \quotation{fire and forget} solution to browse the web
anonymously from pretty much any device. It is probably sufficient for
most people and can be used from any computer or smartphone.

Here are several ways to set it up for all main OSes.

{\bf Warning:} You should avoid installing extensions in Tor Browser, as
they can be used to fingerprint and identify you.

\subsubsection[title={Windows, Linux, and
macOS:},reference={windows-linux-and-macos}]

Please see \goto{Appendix Y: Installing and using desktop Tor
Browser}[appendix-y-installing-and-using-desktop-tor-browser].

\subsubsection[title={Android:},reference={android}]

{\bf Note on Tor Browser for Android: The development of Tor Browser for
Android is behind desktop Tor Browser Bundle (TBB). Some features are
not available yet. E.g., the desktop version of Tor now enables
automatic bridges using Moat:}

\quotation{{\bf Connection Assist} works by looking up and downloading
an up-to-date list of country-specific options to try using your
location (with your consent). It manages to do so without needing to
connect to the Tor Network first by utilizing
\useURL[url1183][https://support.torproject.org/glossary/moat/][][moat]\from[url1183]
-- the same domain-fronting tool that Tor Browser uses to request a
bridge from torproject.org.}

\startitemize
\item
  Head over to:

  \startitemize
  \item
    Play Store:
    \useURL[url1184][https://play.google.com/store/apps/details?id=org.torproject.torbrowser]\from[url1184]
  \item
    F-Droid Store: It's not yet there but you can add it manually
    following the instructions at
    \useURL[url1185][https://support.torproject.org/tormobile/tormobile-7/]\from[url1185]
    \useURL[url1186][https://web.archive.org/web/https://support.torproject.org/tormobile/tormobile-7/][][{[}Archive.org{]}]\from[url1186]
  \stopitemize
\item
  Install
\item
  Launch Tor Browser
\item
  After launching, click the upper right {\bf Settings} icon
\item
  Select {\bf Settings} > {\bf Privacy and security} > {\bf Tor network}
\item
  Select {\bf Config Bridge}.
\item
  Read \goto{Appendix X: Using Tor bridges in hostile
  environments}[appendix-x-using-tor-bridges-in-hostile-environments].
\item
  {\bf If needed (after reading the appendix above)}, activate the
  option and select the type of bridge you want:

  \startitemize
  \item
    Obfs4
  \item
    Meek-Azure
  \item
    Snowflake
  \stopitemize
\item
  {\bf If your internet isn't censored}, consider running one of the
  bridge types to help the network!

  \startitemize
  \item
    Easy: Obsf4 - You can run your own Obsf4 easily with these
    instructions.
    \useURL[url1187][https://community.torproject.org/relay/setup/bridge/]\from[url1187]
  \item
    Medium: Snowflake - More about Snowflakes here.
    \useURL[url1188][https://snowflake.torproject.org/]\from[url1188]
  \item
    Hard: Meek - This is the documentation. It's not as simple.
    \useURL[url1189][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/meek/\#how-to-run-a-meek-server-bridge]\from[url1189]
  \stopitemize
\stopitemize

Personally, if you need to use a Bridge (this is not necessary for a
non-hostile environment), you should pick a Meek-Azure. Those will
probably work even if you are in China and want to bypass the Great
Firewall. It is probably the best option to obfuscate your Tor
activities if needed and Microsoft servers are usually not blocked.

{\em Only available for Desktop Tor users: Recently, the Tor Project has
made it incredibly simple to access Bridges with {\bf Connection
Assist}, and it is now automatically done in hostile or censored
regions. Simply open the Tor Browser and the connection will be
configured based on your needs on any hostile network. Previously, we
had a list of options below this paragraph which were necessary to
enable and configure bridges, but now that this is done automatically
using
\useURL[url1190][https://support.torproject.org/glossary/moat/][][moat]\from[url1190].}
\useURL[url1191][https://web.archive.org/web/20220801151048/https://support.torproject.org/glossary/moat/][][{[}Archive.org{]}]\from[url1191]

\startitemize[packed]
\item
  You are almost done
\stopitemize

As with the desktop version, you need to know there are safety levels in
Tor Browser. On Android, you can access these by following these steps:

\startitemize
\item
  Click the menu (bottom right)
\item
  Click {\bf Settings}.
\item
  Head over to the {\bf Privacy and security} section.
\item
  Click {\bf Security Settings}.
\stopitemize

You will find details about each level here:
\useURL[url1192][https://tb-manual.torproject.org/security-settings/]\from[url1192]
\useURL[url1193][https://web.archive.org/web/https://tb-manual.torproject.org/security-settings/][][{[}Archive.org{]}]\from[url1193]
but here is a summary:

\startitemize
\item
  Standard (the default):

  \startitemize[packed]
  \item
    All features are enabled (including JavaScript)
  \stopitemize
\item
  Safer:

  \startitemize
  \item
    JavaScript is disabled on non-HTTPS websites
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\item
  Safest:

  \startitemize
  \item
    Javascript is disabled everywhere
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\stopitemize

We would recommend the \quotation{Safer} level for most cases. The
Safest level should be enabled if you think you are accessing suspicious
or dangerous websites and/or if you are extra paranoid.

If you are extra paranoid, use the \quotation{Safest} level by default
and consider downgrading to Safer is the website is unusable because of
Javascript blocking.

However, the Safer level should be used with some extra precautions
while using some websites: see \goto{Appendix A5: Additional browser
precautions with JavaScript
enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled].

Now, you are really done, and you can now surf the web anonymously from
your Android device.

{\bf Please see} \goto{Warning for using Orbot on
Android}[appendix-b6-warning-for-using-orbot-on-android].

\subsubsection[title={iOS:},reference={ios}]

{\bf Disclaimer: Onion Browser, following a 2018 release on iOS, has had
IP leaks via WebRTC. It is still the only officially endorsed browser
for the Tor network for iOS. Users should exercise caution when using
the browser and check for any DNS leaks.}

While the official Tor Browser is not yet available for iOS, there is an
alternative called Onion Browser endorsed by the Tor Project\footnote{TorProject.org,
  Can I run Tor Browser on an iOS device?
  \useURL[url1194][https://support.torproject.org/tormobile/tormobile-3/]\from[url1194]
  \useURL[url1195][https://web.archive.org/web/https://support.torproject.org/tormobile/tormobile-3/][][{[}Archive.org{]}]\from[url1195]}.

\startitemize
\item
  Head over to
  \useURL[url1196][https://apps.apple.com/us/app/onion-browser/id519296448]\from[url1196]
\item
  Install
\item
  Disable Wi-Fi and Mobile Data
\item
  Launch Onion Browser
\item
  After Launching, click the upper right Settings icon (Disabling Wi-Fi
  and Mobile Data previously were to prevent Onion Browser from
  connecting automatically and to allow access to these options).
\item
  Select \quotation{Bridge Configuration} and read \goto{Appendix X:
  Using Tor bridges in hostile
  environments}[appendix-x-using-tor-bridges-in-hostile-environments]
\item
  {\bf If needed (after reading the appendix above)}, activate the
  option and select the type of bridge you want:

  \startitemize
  \item
    Obfs4
  \item
    Snowflake
  \item
    (Meek-Azure is unfortunately not available on Onion Browser for iOS
    (See
    \useURL[url1197][https://github.com/OnionBrowser/OnionBrowser/commit/21bc18428368224507b27ee58464ad352f4ec810][][commit
    21bc18428]\from[url1197] for more information.)
  \stopitemize
\item
  {\bf If your internet isn't censored}, consider running one of the
  bridge types to help the network!

  \startitemize
  \item
    Easy: Obsf4 - You can run your own Obsf4 easily with these
    instructions.
    \useURL[url1198][https://community.torproject.org/relay/setup/bridge/]\from[url1198]
  \item
    Medium: Snowflake - More about Snowflakes here.
    \useURL[url1199][https://snowflake.torproject.org/]\from[url1199]
  \item
    Hard: Meek - This is the documentation. It's not as simple.
    \useURL[url1200][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/meek/\#how-to-run-a-meek-server-bridge]\from[url1200]
  \stopitemize
\stopitemize

Personally, if you need to use a Bridge (this is not necessary for a
non-hostile environment), you should pick a Snowflake one (since
Meek-Azure bridges are not available). Those will probably work even if
you are in China and want to bypass the Great Firewall. It is probably
the best option you have on iOS.

\startitemize[packed]
\item
  You are almost done
\stopitemize

As with the desktop version, you need to know there are safety levels in
Onion Browser. On iOS, you can access these by following these steps:

\startitemize
\item
  Click the shield icon (upper left)
\item
  You will have three levels to pick from

  \startitemize
  \item
    \startitemize[n,packed][stopper=.]
    \item
      Gold: Ideal if you are suspicious, paranoid, or accessing what you
      think are dangerous resources.
    \stopitemize

    \startitemize
    \item
      JavaScript is disabled
    \item
      WebSockets, Geolocation, and XHR are disabled
    \item
      No Video or Audio
    \item
      Links cannot open Apps
    \item
      WebRTC is blocked
    \item
      Mixed HTTP/HTTPS is blocked
    \item
      Ads and Pop-Ups are blocked
    \stopitemize
  \item
    \startitemize[n,packed][start=2,stopper=.]
    \item
      Silver:
    \stopitemize

    \startitemize
    \item
      JavaScript partially allowed
    \item
      WebSockets, Geolocation, and XHR are disabled
    \item
      No Video or Audio
    \item
      Links cannot open Apps
    \item
      WebRTC is blocked
    \item
      Mixed HTTP/HTTPS is blocked
    \item
      Ads and Pop-Ups are blocked
    \stopitemize
  \item
    \startitemize[n,packed][start=3,stopper=.]
    \item
      Bronze (not recommended):
    \stopitemize

    \startitemize
    \item
      JavaScript allowed
    \item
      Audio and Video allowed
    \item
      Links cannot open Apps
    \item
      WebRTC is not blocked
    \item
      Mixed HTTP/HTTPS is not blocked
    \item
      Ads and Pop-Ups are blocked
    \stopitemize
  \stopitemize
\stopitemize

We would recommend the \quotation{Silver} level for most cases. The Gold
level should only be enabled if you think you are accessing suspicious
or dangerous websites or if you are extra paranoid. The Gold mode will
also most likely break many websites that rely actively on JavaScript.

As JavaScript is enabled in the Silver mode, please see \goto{Appendix
A5: Additional browser precautions with JavaScript
enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled].

Now, you are really done, and you can now surf the web anonymously from
your iOS device.

\subsubsection[title={Important Warning:},reference={important-warning}]

{\bf This route is the easiest but is not designed to resist highly
skilled adversaries. It is however usable on any device regardless of
the configuration. This route is also vulnerable to correlation attacks
(See \goto{Your Anonymized Tor/VPN
traffic}[your-anonymized-torvpn-traffic]) and is blind to anything that
might be on your device (this could be any malware, exploit, virus,
remote administration software, parental controls\ldots{}). Yet, if your
threat model is quite low, it is probably sufficient for most people.}

If you have time and want to learn, we recommend going for other routes
instead as they offer far better security and mitigate far more risks
while lowering your attack surface considerably.

\subsection[title={The Tails route:},reference={the-tails-route}]

This part of the guide will help you in setting up Tails if one of the
following is true:

\startitemize
\item
  You cannot afford a dedicated laptop
\item
  Your dedicated laptop is just too old and too slow
\item
  You have very low IT skills
\item
  You decide to go with Tails anyway
\stopitemize

Tails\footnote{Wikipedia, Tails
  \useURL[url1201][https://en.wikipedia.org/wiki/Tails_(operating_system)]\from[url1201]
  \useURL[url1202][https://wikiless.org/wiki/Tails_(operating_system)][][{[}Wikiless{]}]\from[url1202]
  \useURL[url1203][https://web.archive.org/web/https://en.wikipedia.org/wiki/Tails_(operating_system)][][{[}Archive.org{]}]\from[url1203]}
stands for {\bf The Amnesic Incognito Live System}. It is a bootable
Live Operating System running from a USB key that is designed for
leaving no traces and forcing all connections through the Tor network.

You insert the Tails USB key into your laptop, boot from it and you have
a full operating system running with privacy and anonymity in mind. As
soon as you shut down the computer, everything will be gone unless you
saved it somewhere.

Tails is an amazingly straightforward way to get going in no time with
what you have and without much learning. It has extensive documentation
and tutorials.

{\bf WARNING: Tails is not always up to date with their bundled
software. And not always up to date with the Tor Browser updates either.
You should always make sure you are using the latest version of Tails
and you should use extreme caution when using bundled apps within Tails
that might be vulnerable to exploits and reveal your location}\footnote{Vice.com,
  Facebook Helped the FBI Hack a Child Predator
  \useURL[url1204][https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez]\from[url1204]
  \useURL[url1205][https://web.archive.org/web/https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez][][{[}Archive.org{]}]\from[url1205]}{\bf .}

It does however have some drawbacks:

\startitemize
\item
  Tails uses Tor and therefore you will be using Tor to access any
  resource on the internet. This alone will make you suspicious to most
  platforms where you want to create anonymous accounts (this will be
  explained in more detail later).
\item
  Your ISP (whether it is yours or some public Wi-Fi) will also see that
  you are using Tor, and this could make you suspicious in itself.
\item
  Tails does not include (natively) some of the software you might want
  to use later which will complicate things quite a bit if you want to
  run some specific things (Android Emulators for instance).
\item
  Tails uses Tor Browser which while it is very secure will be detected
  as well by most platforms and will hinder you in creating anonymous
  identities on many platforms.
\item
  Tails will not protect you more from the 5\$ wrench\footnote{XKCD,
    Security \useURL[url1206][https://xkcd.com/538/]\from[url1206]
    \useURL[url1207][https://web.archive.org/web/https://xkcd.com/538/][][{[}Archive.org{]}]\from[url1207]}.
\item
  Tor in itself might not be enough to protect you from an adversary
  with enough resources as explained earlier.
\stopitemize

{\bf Important Note: If your laptop is monitored/supervised and some
local restrictions are in place, please read} \goto{Appendix U: How to
bypass (some) local restrictions on supervised
computers}[appendix-u-how-to-bypass-some-local-restrictions-on-supervised-computers]{\bf .}

You should also read Tails Documentation, Warnings, and limitations,
before going further
\useURL[url1208][https://tails.boum.org/doc/about/warnings/index.en.html]\from[url1208]
\useURL[url1209][https://web.archive.org/web/https://tails.boum.org/doc/about/warnings/index.en.html][][{[}Archive.org{]}]\from[url1209]

Taking all this into account and the fact that their documentation is
great, we will just redirect you towards their well-made and
well-maintained tutorial:

\useURL[url1210][https://tails.boum.org/install/index.en.html]\from[url1210]
\useURL[url1211][https://web.archive.org/web/https://tails.boum.org/install/index.en.html][][{[}Archive.org{]}]\from[url1211],
pick your flavor and proceed.

If you're having an issue accessing Tor due to censorship or other
issues, you can try using Tor Bridges by following this Tails tutorial:
\useURL[url1212][https://tails.boum.org/doc/anonymous_internet/tor/index.en.html]\from[url1212]
\useURL[url1213][https://web.archive.org/web/https://tails.boum.org/doc/anonymous_internet/tor/index.en.html][][{[}Archive.org{]}]\from[url1213]
and find more information about these on Tor Documentation
\useURL[url1214][https://2019.www.torproject.org/docs/bridges]\from[url1214]
\useURL[url1215][https://web.archive.org/web/https://2019.www.torproject.org/docs/bridges][][{[}Archive.org{]}]\from[url1215]

{\bf If you think using Tor alone is dangerous/suspicious, see
\goto{Appendix P: Accessing the internet as safely as possible when
Tor/VPN is not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]}

\subsubsection[title={Tor Browser settings on
Tails:},reference={tor-browser-settings-on-tails}]

When using Tor Browser, you should click the little shield Icon (upper
right, next to the Address bar) and select your Security level (see
\useURL[url1216][https://tb-manual.torproject.org/security-settings/]\from[url1216]
\useURL[url1217][https://web.archive.org/web/https://tb-manual.torproject.org/security-settings/][][{[}Archive.org{]}]\from[url1217]
for details). Basically, there are three.

\startitemize
\item
  Standard (the default):

  \startitemize[packed]
  \item
    All features are enabled (including JavaScript)
  \stopitemize
\item
  Safer:

  \startitemize
  \item
    JavaScript is disabled on non-HTTPS websites
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\item
  Safest:

  \startitemize
  \item
    Javascript is disabled everywhere
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\stopitemize

We would recommend the \quotation{Safer} level for most cases. The
Safest level should be enabled if you think you are accessing suspicious
or dangerous websites or if you are extra paranoid. The Safest mode will
also most likely break many websites that rely actively on JavaScript.

If you are extra paranoid, use the \quotation{Safest} level by default
and consider downgrading to Safer is the website is unusable because of
Javascript blocking.

Lastly, while using Tor Browser on Tails on the \quotation{Safer} level,
please consider \goto{Appendix A5: Additional browser precautions with
JavaScript
enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled]

When you are done and have a working Tails on your laptop, go to the
\goto{Creating your anonymous online
identities}[creating-your-anonymous-online-identities] step much further
in this guide or if you want persistence and plausible deniability,
continue with the next section.

\subsubsection[title={Persistent Plausible Deniability using Whonix
within
Tails:},reference={persistent-plausible-deniability-using-whonix-within-tails}]

Consider checking the
\useURL[url1218][https://github.com/aforensics/HiddenVM]\from[url1218]
\useURL[url1219][https://web.archive.org/web/https://github.com/aforensics/HiddenVM][][{[}Archive.org{]}]\from[url1219]
project for Tails.

This project is a clever idea of a one-click self-contained VM solution
that you could store on an encrypted disk using plausible
deniability\footnote{Wikipedia, Plausible Deniability
  \useURL[url1220][https://en.wikipedia.org/wiki/Plausible_deniability]\from[url1220]
  \useURL[url1221][https://wikiless.org/wiki/Plausible_deniability][][{[}Wikiless{]}]\from[url1221]
  \useURL[url1222][https://web.archive.org/web/https://en.wikipedia.org/wiki/Plausible_deniability][][{[}Archive.org{]}]\from[url1222]}
(see \goto{The Whonix route:}[the-whonix-route] first chapters and also
for some explanations about Plausible deniability, as well as the
\goto{How to securely delete specific files/folders/data on your HDD/SSD
and Thumb
drives:}[how-to-securely-delete-specific-filesfoldersdata-on-your-hddssd-and-thumb-drives]
section at the end of this guide for more understanding).

This would allow the creation of a hybrid system mixing Tails with the
Virtualization options of the Whonix route in this guide.

\placefigure{image19}{\externalfigure[./tex2pdf.-1a34188c73046814/67f5e6d6a057d0b015934661fba6f7d7bf386403.png]}

{\bf Note: See} \goto{Pick your connectivity
method}[pick-your-connectivity-method] {\bf in the Whonix Route for more
explanations about Stream Isolation}

In short:

\startitemize
\item
  You could run non-persistent Tails from one USB key (following their
  recommendations)
\item
  You could store persistent VMs within a secondary container that could
  be encrypted normally or using the Veracrypt plausible deniability
  feature (these could be Whonix VMs for instance or any other).
\item
  You do benefit from the added Tor Stream Isolation feature (see
  \goto{Tor over VPN}[tor-over-vpn] for more info about stream
  isolation).
\stopitemize

In that case, as the project outlines it, there should be no traces of
any of your activities on your computer and the sensitive work could be
done from VMs stored into a Hidden container that should not be easily
discoverable by a soft adversary.

{\bf This option is particularly interesting for \quotation{traveling
light} and to mitigate forensics attacks while keeping persistence on
your work.} You only need 2 USB keys (one with Tails and one with a
Veracrypt container containing persistent Whonix). The first USB key
will appear to contain just Tails and the second USB will appear to
contain just random garbage but will have a decoy volume which you can
show for plausible deniability.

You might also wonder if this will result in a \quotation{Tor over Tor}
setup, but it will not. The Whonix VMs will be accessing the network
directly through clearnet and not through Tails Onion Routing.

In the future, this could also be supported by the Whonix project
themselves as explained here:
\useURL[url1223][https://www.whonix.org/wiki/Whonix-Host]\from[url1223]
\useURL[url1224][https://web.archive.org/web/https://www.whonix.org/wiki/Whonix-Host][][{[}Archive.org{]}]\from[url1224]
but it is not yet recommended as of now for end-users.

Remember that encryption with or without plausible deniability is not a
silver bullet and will be of little use in case of torture. As a matter
a fact, depending on who your adversary would be (your threat model), it
might be wise not to use Veracrypt (formerly TrueCrypt) at all as shown
in this demonstration:
\useURL[url1225][https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm]\from[url1225]
\useURL[url1226][https://web.archive.org/web/https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm][][{[}Archive.org{]}]\from[url1226]

{\bf Plausible deniability is only effective against soft lawful
adversaries that will not resort to physical means.}

{\bf See
\useURL[url1227][https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis]\from[url1227]}
\useURL[url1228][https://wikiless.org/wiki/Rubber-hose_cryptanalysis][][{[}Wikiless{]}]\from[url1228]
\useURL[url1229][https://web.archive.org/web/https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis][][{[}Archive.org{]}]\from[url1229]

CAUTION: Please see \goto{{\bf Appendix K: Considerations for using
external SSD
drives}}[appendix-k-considerations-for-using-external-ssd-drives] and
\goto{{\bf Understanding HDD vs SSD}}[understanding-hdd-vs-ssd] sections
if you consider storing such hidden VMs on an external SSD drive:

\startitemize
\item
  {\bf Do not use hidden volumes on SSD drives as this is not
  supported/recommended by Veracrypt}\footnote{Veracrypt Documentation,
    Trim Operations
    \useURL[url1230][https://www.veracrypt.fr/en/Trim\%20Operation.html][][https://www.veracrypt.fr/en/Trim\letterpercent{}20Operation.html]\from[url1230]
    \useURL[url1231][https://web.archive.org/web/https://www.veracrypt.fr/en/Trim\%20Operation.html][][{[}Archive.org{]}]\from[url1231]}{\bf .}
\item
  {\bf Use instead file containers instead of encrypted volumes.}
\item
  {\bf Make sure you do know how to clean data from an external SSD
  drive properly.}
\stopitemize

Here is my guide on how to achieve this:

\subsubsubsection[title={First Run:},reference={first-run}]

\startitemize
\item
  Download the latest HiddenVM release from
  \useURL[url1232][https://github.com/aforensics/HiddenVM/releases]\from[url1232]
  \useURL[url1233][https://web.archive.org/web/https://github.com/aforensics/HiddenVM/releases][][{[}Archive.org{]}]\from[url1233]
\item
  Download the latest Whonix XFCE release from
  \useURL[url1234][https://www.whonix.org/wiki/VirtualBox/XFCE]\from[url1234]
  \useURL[url1235][https://web.archive.org/web/https://www.whonix.org/wiki/VirtualBox/XFCE][][{[}Archive.org{]}]\from[url1235]
\item
  Prepare a USB Key/Drive with Veracrypt

  \startitemize
  \item
    Create a Hidden Volume on the USB/Key Drive (We would recommend at
    least 16GB for the hidden volume)
  \item
    In the Outer Volume, place some decoy files
  \item
    In the Hidden Volume, place the HiddenVM appimage file
  \item
    In the Hidden Volume, place the Whonix XFCE ova file
  \stopitemize
\item
  Boot into Tails
\item
  Setup the Keyboard layout as you want.
\item
  Select Additional Settings and set an administrator (root) password
  (needed for installing HiddenVM)
\item
  Start Tails
\item
  Connect to a safe wi-fi (this is a required step for the rest to work)
\item
  Go into Utilities and Unlock your Veracrypt (hidden) Volume (do not
  forget to check the hidden volume checkbox)
\item
  Launch the HiddenVM appimage
\item
  When prompted to select a folder, select the Root of the Hidden volume
  (where the Whonix OVA and HiddenVM app image files are).
\item
  Let it do its thing (This will install Virtualbox within Tails with
  one click)
\item
  When it is done, it should automatically start Virtualbox Manager.
\item
  Import the Whonix OVA files (see \goto{Whonix Virtual
  Machines:}[whonix-virtual-machines])
\stopitemize

Note, if during the import you are having issues such as
\quotation{NS_ERROR_INVALID_ARG (0x80070057)}, this is probably because
there is not enough disk space on your Hidden volume for Whonix. Whonix
themselves recommend 32GB of free space but that's probably not
necessary and 10GB should be enough for a start. You can try working
around this error by renaming the Whonix {\em .OVA file to }.TAR and
decompressing it within Tails. When you are done with decompression,
delete the OVA file and import the other files with the Import wizard.
This time it might work.

\subsubsubsection[title={Subsequent Runs:},reference={subsequent-runs}]

\startitemize
\item
  Boot into Tails
\item
  Connect to Wi-Fi
\item
  Unlock your Hidden Volume
\item
  Launch the HiddenVM App
\item
  This should automatically open VirtualBox manager and show your
  earlier VMs from the first run
\stopitemize

\subsection[title={Steps for all other
routes:},reference={steps-for-all-other-routes}]

\subsubsection[title={Get a dedicated laptop for your sensitive
activities:},reference={get-a-dedicated-laptop-for-your-sensitive-activities}]

Ideally, you should get a dedicated laptop that will not be tied to you
in any effortless way (ideally paid with cash anonymously and using the
same precautions as previously mentioned for the phone and the SIM
card). It is recommended but not mandatory. This guide will help you
harden your laptop as much as possible to prevent data leaks through
various means. There will be several lines of defense standing between
your online identities and yourself which should prevent most
adversaries from de-anonymizing you - besides state/global actors. It
will take considerable resources.

This laptop should ideally be a clean, freshly installed laptop (running
Windows, Linux, or macOS); which is clean of your normal day-to-day
activities; and which is offline (never connected to your home network).
In the case of a Windows laptop, and if you used it before such a clean
install, it should also not be activated. Simply reinstall without a
product key in the case that it came pre-activated. Specifically, in the
case of MacBooks, it should never have been tied to your identity before
in any means. So, buy secondhand with cash from an unknown stranger who
does not know your identity.

This is to mitigate some future issues in case of online leaks
(including telemetry from your OS or Apps) that could compromise any
unique identifiers of the laptop while using it (MAC Address, Bluetooth
Address, and Product key \ldots{}). But also, to avoid being tracked
back if you need to dispose of the laptop.

If you used this laptop before for different purposes (like your
day-to-day activities), all its hardware identifiers are probably known
and registered by Microsoft or Apple. If later any of those identifiers
is compromised (by malware, telemetry, exploits, human errors \ldots{})
they could lead back to you.

The laptop should have at least 250GB of Disk Space {\bf at least 6GB
(ideally 8GB or 16GB)} of RAM and should be able to run a couple of
Virtual Machines at the same time. It should have a working battery that
lasts a few hours. You should aim for something with large storage
(1TB+) if possible because we will need as much as possible.

This laptop could have an HDD (7200rpm) or an SSD/NVMe drive. Both
possibilities have their benefits and issues that will be detailed
later.

All future online steps performed with this laptop should ideally be
done from a safe network such as Public Wi-Fi in a safe place (see
\goto{Find some safe places with decent public
Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi]). But several
steps will have to be taken offline first.

\subsubsection[title={Some laptop
recommendations:},reference={some-laptop-recommendations}]

We would strongly recommend getting a \quotation{business grade} laptop
(meaning not consumer/gaming-grade laptop) if you can. For instance,
some ThinkPad from Lenovo (my personal favorite).

This is because those business laptops usually offer better and more
customizable security features (especially in the BIOS/UEFI settings)
with longer support than most consumer laptops (Asus, MSI, Gigabyte,
Acer\ldots{}). The interesting features to look for are:

\startitemize
\item
  Better custom Secure Boot {\bf settings (where you can selectively
  manage all the keys and not just use the Standard ones)}
\item
  HDD/SSD passwords in addition to just BIOS/UEFI passwords.
\item
  AMD laptops could be more interesting as some provide the ability to
  disable AMD PSP (the AMD equivalent of Intel IME) from the BIOS/UEFI
  settings by default. And, because AFAIK, AMD PSP was audited and
  contrary to IME was not found to have any \quotation{evil}
  functionalities\footnote{YouTube, 36C3 - Uncover, Understand, Own -
    Regaining Control Over Your AMD CPU
    \useURL[url1236][https://www.youtube.com/watch?v=bKH5nGLgi08&t=2834s]\from[url1236]
    \useURL[url1237][https://yewtu.be/watch?v=bKH5nGLgi08&t=2834s][][{[}Invidious{]}]\from[url1237]}.
  However, if you are going for the Qubes OS Route consider Intel CPUs
  as Qubes OS does not support AMD with their anti-evil-maid
  system\footnote{Qubes OS, Anti-Evil Maid,
    \useURL[url1238][https://github.com/QubesOS/qubes-antievilmaid]\from[url1238]
    \useURL[url1239][https://web.archive.org/web/https://github.com/QubesOS/qubes-antievilmaid][][{[}Archive.org{]}]\from[url1239]}.
\item
  Secure Wipe tools from the BIOS (especially useful for SSD/NVMe
  drives, see \goto{Appendix M: BIOS/UEFI options to wipe disks in
  various
  Brands}[appendix-m-biosuefi-options-to-wipe-disks-in-various-brands]).
\item
  Better control over the disabling/enabling of select peripherals (USB
  ports, Wi-Fis, Bluetooth, Camera, Microphone \ldots{}).
\item
  Better security features with Virtualization.
\item
  Native anti-tampering protections.
\item
  Longer support with BIOS/UEFI updates (and subsequent BIOS/UEFI
  security updates).
\item
  Some are supported by Libreboot
\stopitemize

\subsubsection[title={Bios/UEFI/Firmware Settings of your
laptop:},reference={biosuefifirmware-settings-of-your-laptop}]

\subsubsubsection[title={PC:},reference={pc}]

These settings can be accessed through the boot menu of your laptop.
Here is a good tutorial from HP explaining all the ways to access the
BIOS on various computers:
\useURL[url1240][https://store.hp.com/us/en/tech-takes/how-to-enter-bios-setup-windows-pcs]\from[url1240]
\useURL[url1241][https://web.archive.org/web/https://store.hp.com/us/en/tech-takes/how-to-enter-bios-setup-windows-pcs][][{[}Archive.org{]}]\from[url1241]

Usually how to access it is by pressing a specific key (F1, F2, or Del)
at boot (before your OS).

Once you are in there, you will need to apply a few recommended
settings:

\startitemize
\item
  Disable Bluetooth completely if you can.
\item
  Disable Biometrics (fingerprint scanners) if you have any if you can.
  However, you could add a biometric additional check for booting only
  (pre-boot) but not for accessing the BIOS/UEFI settings.
\item
  Disable the Webcam and Microphone if you can.
\item
  Enable BIOS/UEFI password and use a long passphrase instead of a
  password (if you can) and make sure this password is required for:

  \startitemize
  \item
    Accessing the BIOS/UEFI settings themselves
  \item
    Changing the Boot order
  \item
    Startup/Power-on of the device
  \stopitemize
\item
  Enable HDD/SSD password if the feature is available. This feature will
  add another password on the HDD/SSD itself (not in the BIOS/UEFI
  firmware) that will prevent this HDD/SSD from being used in a
  different computer without the password. Note that this feature is
  also specific to some manufacturers and could require specific
  software to unlock this disk from a completely different computer.
\item
  Prevent accessing the boot options (the boot order) without providing
  the BIOS/UEFI password if you can.
\item
  Disable USB/HDMI or any other port (Ethernet, Firewire, SD card
  \ldots{}) if you can.
\item
  Disable Intel ME if you can (odds are very high you can't).
\item
  Disable AMD PSP if you can (AMD's equivalent to IME, see \goto{Your
  CPU}[your-cpu])
\item
  Disable Secure Boot if you intend to use Qubes OS as they do not
  support it out of the box\footnote{QubesOS FAQ,
    \useURL[url1242][https://www.qubes-os.org/faq/\#is-secure-boot-supported]\from[url1242]
    \useURL[url1243][https://web.archive.org/web/https://www.qubes-os.org/faq/][][{[}Archive.org{]}]\from[url1243]}.
  Keep it on if you intend to use Linux/Windows.
\item
  Check if your laptop BIOS has a secure erase option for your HDD/SSD
  that could be convenient in case of need.
\stopitemize

Only enable those on a \quotation{need to use} basis and disable them
again after use. This can help mitigate some attacks in case your laptop
is seized while locked but still on OR if you had to shut it down rather
quickly and someone took possession of it (this topic will be explained
later in this guide).

\subsubsubsubsection[title={About Secure
boot:},reference={about-secure-boot}]

So, what is Secure Boot\footnote{Wikipedia, Secure Boot
  \useURL[url1244][https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface\#Secure_boot]\from[url1244]
  \useURL[url1245][https://wikiless.org/wiki/Unified_Extensible_Firmware_Interface][][{[}Wikiless{]}]\from[url1245]
  \useURL[url1246][https://web.archive.org/web/https://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface][][{[}Archive.org{]}]\from[url1246]}?
In short, it is a UEFI security feature designed to prevent your
computer from booting an operating system from which the bootloader was
not signed by specific keys stored in the UEFI firmware of your laptop.

When the operating system (or the Bootloader\footnote{Wikipedia, Booting
  \useURL[url1247][https://en.wikipedia.org/wiki/Booting]\from[url1247]
  \useURL[url1248][https://wikiless.org/wiki/Booting][][{[}Wikiless{]}]\from[url1248]
  \useURL[url1249][https://web.archive.org/web/https://en.wikipedia.org/wiki/Booting][][{[}Archive.org{]}]\from[url1249]})
supports it, you can store the keys of your bootloader in your UEFI
firmware, and this will prevent booting up any unauthorized Operating
System (such as a live OS USB or anything similar).

Secure Boot settings are protected by the password you set up to access
the BIOS/UEFI settings. If you have that password, you can disable
Secure Boot and allow unsigned OSes to boot on your system. This can
help mitigate some Evil-Maid attacks (explained later in this guide).

In most cases, Secure Boot is disabled by default or is enabled but in
\quotation{setup} mode which will allow any system to boot. For Secure
Boot to work, your Operating System will have to support it and then
sign its bootloader and push those signing keys to your UEFI firmware.
After that, you will have to go to your BIOS/UEFI settings and save
those pushed keys from your OS and change the Secure Boot from setup to
user mode (or custom mode in some cases).

After doing that step, only the Operating Systems from which your UEFI
firmware can verify the integrity of the bootloader will be able to
boot.

Most laptops will have some default keys already stored in the secure
boot settings. Usually, those are from the manufacturer itself or some
companies such as Microsoft. So, this means that by default, it will
always be possible to boot some USB disks even with secure boot. These
include Windows, Fedora, Ubuntu, Mint, Debian, CentOS, OpenSUSE, Tails,
Clonezilla, and many others. Secure Boot is however not supported at all
by Qubes OS at this point.

In some laptops, you can manage those keys and remove the ones you do
not want with a \quotation{custom mode} to only authorize your
bootloader that you could sign yourself if you want to.

So, what is Secure Boot protecting you from? It will protect your laptop
from booting unsigned bootloaders (by the OS provider) with for instance
injected malware.

What is Secure Boot {\bf not} protecting you from?

\startitemize
\item
  Secure Boot is not encrypting your disk and an adversary can still
  just remove the disk from your laptop and extract data from it using a
  different machine. Secure Boot is therefore useless without full disk
  encryption.
\item
  Secure Boot is not protecting you from a signed bootloader that would
  be compromised and signed by the manufacturer itself (Microsoft for
  example in the case of Windows). Most mainstream Linux distributions
  are signed these days and will boot with Secure Boot enabled.
\item
  Secure Boot can have flaws and exploits like any other system. If you
  are running an old laptop that does not benefit from new BIOS/UEFI
  updates, these can be left unfixed.
\stopitemize

Additionally, several attacks could be possible against Secure Boot as
explained (in-depth) in these technical videos:

\startitemize
\item
  Defcon 22,
  \useURL[url1250][https://www.youtube.com/watch?v=QDSlWa9xQuA]\from[url1250]
  \useURL[url1251][https://yewtu.be/watch?v=QDSlWa9xQuA][][{[}Invidious{]}]\from[url1251]
\item
  BlackHat 2016,
  \useURL[url1252][https://www.youtube.com/watch?v=0fZdL3ufVOI]\from[url1252]
  \useURL[url1253][https://yewtu.be/watch?v=0fZdL3ufVOI][][{[}Invidious{]}]\from[url1253]
\stopitemize

{\bf So, it can be useful as an added measure against some adversaries
but not all. Secure Boot in itself is not encrypting your hard drive. It
is an added layer but that is it.}

{\bf I still recommend you keep it on if you can.}

\subsubsubsection[title={Mac:},reference={mac}]

Take a moment to set a firmware password according to the tutorial here:
\useURL[url1254][https://support.apple.com/en-au/HT204455]\from[url1254]
\useURL[url1255][https://web.archive.org/web/https://support.apple.com/en-au/HT204455][][{[}Archive.org{]}]\from[url1255]

You should also enable firmware password reset protection (available
from Catalina) according to the documentation here:
\useURL[url1256][https://support.apple.com/en-gb/guide/security/sec28382c9ca/web]\from[url1256]
\useURL[url1257][https://web.archive.org/web/https://support.apple.com/en-gb/guide/security/sec28382c9ca/web][][{[}Archive.org{]}]\from[url1257]

This feature will mitigate the possibility for some adversaries to use
hardware hacks to disable/bypass your firmware password. Note that this
will also prevent Apple themselves from accessing the firmware in case
of repair.

\subsubsection[title={Physically Tamper protect your
laptop:},reference={physically-tamper-protect-your-laptop}]

At some point, you will inevitably leave this laptop alone somewhere.
You will not sleep with it and take it everywhere every single day. You
should make it as hard as possible for anyone to tamper with it without
you noticing it. This is mostly useful against some limited adversaries
that will not use a 5\$ wrench against you\footnote{XKCD, Security
  \useURL[url1258][https://xkcd.com/538/]\from[url1258]
  \useURL[url1259][https://web.archive.org/web/https://xkcd.com/538/][][{[}Archive.org{]}]\from[url1259]}.

It is important to know that it is trivially easy for some specialists
to install a key logger in your laptop, or to just make a clone copy of
your hard drive that could later allow them to detect the presence of
encrypted data in it using forensic techniques (more on that later).

Here is a good cheap method to make your laptop tamper-proof using Nail
Polish (with glitter)
\useURL[url1260][https://mullvad.net/en/help/how-tamper-protect-laptop/]\from[url1260]
\useURL[url1261][https://web.archive.org/web/https://mullvad.net/en/help/how-tamper-protect-laptop/][][{[}Archive.org{]}]\from[url1261]
\footnote{Wired, Don't Want Your Laptop Tampered With? Just Add Glitter
  Nail Polish
  \useURL[url1262][https://www.wired.com/2013/12/better-data-security-nail-polish/]\from[url1262]
  \useURL[url1263][https://web.archive.org/web/https://www.wired.com/2013/12/better-data-security-nail-polish/][][{[}Archive.org{]}]\from[url1263]}
(with pictures).

While this is a good cheap method, it could also raise suspicions as it
is quite \quotation{noticeable} and might just reveal that you
\quotation{have something to hide}. So, there are more subtle ways of
achieving the same result. You could also for instance make a close-up
macro photography of the back screws of your laptop or just use a small
amount of candle wax within one of the screws that could just look like
usual dirt. You could then check for tampering by comparing the
photographs of the screws with new ones. Their orientation might have
changed a bit if your adversary was not careful enough (Tightening them
exactly the same way they were before). Or the wax within the bottom of
a screw head might have been damaged compared to before.

\placefigure{image20}{\externalfigure[./tex2pdf.-1a34188c73046814/a0a9bd8f5400eecc92075b502854bb202c2de9fc.png]}

\placefigure{image21}{\externalfigure[./tex2pdf.-1a34188c73046814/7285fc77e7eb3c0381a6dd18d8378bf0422a363b.png]}

The same techniques can be used with USB ports where you could just put
a tiny amount of candle wax within the plug that would be damaged by
inserting a USB key in it.

In riskier environments, check your laptop for tampering before using it
regularly.

\subsection[title={The Whonix route:},reference={the-whonix-route}]

\subsubsection[title={Picking your Host OS (the OS installed on your
laptop):},reference={picking-your-host-os-the-os-installed-on-your-laptop}]

This route will make extensive use of Virtual Machines\footnote{Wikipedia,
  Virtual Machine
  \useURL[url1264][https://en.wikipedia.org/wiki/Virtual_machine]\from[url1264]
  \useURL[url1265][https://wikiless.org/wiki/Virtual_machine][][{[}Wikiless{]}]\from[url1265]
  \useURL[url1266][https://web.archive.org/web/https://en.wikipedia.org/wiki/Virtual_machine][][{[}Archive.org{]}]\from[url1266]},
they will require a host OS to run the Virtualization software. You have
three recommended choices in this part of the guide:

\startitemize
\item
  Your Linux distribution of choice (excluding Qubes OS)
\item
  Windows 10/11 (preferably Home edition due to the absence of
  Bitlocker)
\item
  macOS (Catalina or higher up to Monterey)
\stopitemize

In addition, chances are high that your Mac is or has been tied to an
Apple account (at the time of purchase or after signing-in) and
therefore its unique hardware identifiers could lead back to you in case
of hardware identifiers leak.

Linux is also not necessarily the best choice for anonymity depending on
your threat model. This is because using Windows will allow us to
{\bf conveniently} use Plausible Deniability\footnote{Wikipedia,
  Plausible Deniability
  \useURL[url1267][https://en.wikipedia.org/wiki/Plausible_deniability]\from[url1267]
  \useURL[url1268][https://wikiless.org/wiki/Plausible_deniability][][{[}Wikiless{]}]\from[url1268]
  \useURL[url1269][https://web.archive.org/web/https://en.wikipedia.org/wiki/Plausible_deniability][][{[}Archive.org{]}]\from[url1269]}
(aka Deniable Encryption\footnote{Wikipedia, Deniable Encryption
  \useURL[url1270][https://en.wikipedia.org/wiki/Deniable_encryption]\from[url1270]
  \useURL[url1271][https://wikiless.org/wiki/Deniable_encryption][][{[}Wikiless{]}]\from[url1271]
  \useURL[url1272][https://web.archive.org/web/https://en.wikipedia.org/wiki/Deniable_encryption][][{[}Archive.org{]}]\from[url1272]})
easily at the OS level. Windows is also unfortunately at the same time a
privacy nightmare\footnote{PrivacyGuides.org, Don't use Windows 10 -
  It's a privacy nightmare
  \useURL[url1273][https://web.archive.org/web/20220313023015/https://www.privacyguides.org/tools/\#operating-systems\#win10]\from[url1273]
  \useURL[url1274][https://web.archive.org/web/https://www.privacyguides.org/tools/\#operating-systems][][{[}Archive.org{]}]\from[url1274]}
but is the only easy to set up option for using OS-wide plausible
deniability. Windows telemetry and telemetry blocking are also widely
documented which should mitigate many issues.

{\bf So, what is Plausible Deniability?} You can cooperate with an
adversary requesting access to your device/data without revealing your
true secret. All this using Deniable Encryption\footnote{Wikipedia,
  Deniable Encryption
  \useURL[url1275][https://en.wikipedia.org/wiki/Deniable_encryption]\from[url1275]
  \useURL[url1276][https://wikiless.org/wiki/Deniable_encryption][][{[}Wikiless{]}]\from[url1276]
  \useURL[url1277][https://web.archive.org/web/https://en.wikipedia.org/wiki/Deniable_encryption][][{[}Archive.org{]}]\from[url1277]}.

A soft lawful adversary could ask for your encrypted laptop password. At
first, you could refuse to give out any password (using your
\quotation{right to remain silent}, \quotation{right not to incriminate
yourself}) but some countries are implementing laws\footnote{Wikipedia,
  Key Disclosure Laws
  \useURL[url1278][https://en.wikipedia.org/wiki/Key_disclosure_law]\from[url1278]
  \useURL[url1279][https://wikiless.org/wiki/Key_disclosure_law][][{[}Wikiless{]}]\from[url1279]
  \useURL[url1280][https://web.archive.org/web/https://en.wikipedia.org/wiki/Key_disclosure_law][][{[}Archive.org{]}]\from[url1280]}'\footnote{GP
  Digital, World map of encryption laws and policies
  \useURL[url1281][https://www.gp-digital.org/world-map-of-encryption/]\from[url1281]
  \useURL[url1282][https://web.archive.org/web/https://www.gp-digital.org/world-map-of-encryption/][][{[}Archive.org{]}]\from[url1282]}
to exempt this from such rights (because terrorists and \quotation{think
of the children}). In that case, you might have to reveal the password
or face jail time in contempt of court. This is where plausible
deniability will come into play.

You could then reveal a password, but that password will only give
access to \quotation{plausible data} (a decoy OS). The forensics will be
well aware that it is possible for you to have hidden data but should
not be able to prove this {\bf (if you do this right)}. You will have
cooperated, and the investigators will have access to something but not
what you actually want to hide. Since the burden of proof should lie on
their side, they will have no options but to believe you unless they
have proof that you have hidden data.

This feature can be used at the OS level (a plausible OS and a hidden
OS) or at the files level where you will have an encrypted file
container (similar to a zip file) where different files will be shown
depending on the encryption password you use.

This also means you could set up your own advanced \quotation{plausible
deniability} setup using any Host OS by storing for instance Virtual
Machines on a Veracrypt hidden volume container (be careful of traces in
the Host OS tho that would need to be cleaned if the host OS is
persistent, see \goto{Some additional measures against
forensics}[some-additional-measures-against-forensics] section later).
There is a project for achieving this within Tails
(\useURL[url1283][https://github.com/aforensics/HiddenVM]\from[url1283]
\useURL[url1284][https://web.archive.org/web/https://github.com/aforensics/HiddenVM][][{[}Archive.org{]}]\from[url1284])
which would make your Host OS non-persistent and use plausible
deniability within Tails.

In the case of Windows, plausible deniability is also the reason you
should ideally have Windows 10/11 Home (and not Pro). This is because
Windows 10/11 Pro natively offers a full-disk encryption system
(Bitlocker\footnote{Wikipedia, Bitlocker
  \useURL[url1285][https://en.wikipedia.org/wiki/BitLocker]\from[url1285]
  \useURL[url1286][https://wikiless.org/wiki/BitLocker][][{[}Wikiless{]}]\from[url1286]
  \useURL[url1287][https://web.archive.org/web/https://en.wikipedia.org/wiki/BitLocker][][{[}Archive.org{]}]\from[url1287]})
where Windows 10/11 Home offers no full-disk encryption at all. You will
later use third-party open-source software for encryption that will
allow full-disk encryption on Windows 10/11 Home. This will give you a
good (plausible) excuse to use this software. While using this software
on Windows 10/11 Pro would be suspicious.

{\bf Note about Linux:} So, what about Linux and plausible deniability?
Yes, it is possible to achieve plausible deniability with Linux too.
More information within the Linux Host OS section later.

Unfortunately, encryption is not magic and there are some risks
involved:

\subsubsubsection[title={Threats with
encryption:},reference={threats-with-encryption}]

\subsubsubsubsection[title={{\bf The 5\$
Wrench:}},reference={the-5-wrench}]

Remember that encryption with or without plausible deniability is not a
silver bullet and will be of little use in case of torture. As a matter
a fact, depending on who your adversary would be (your threat model), it
might be wise not to use Veracrypt (formerly TrueCrypt) at all as shown
in this demonstration:
\useURL[url1288][https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm]\from[url1288]
\useURL[url1289][https://web.archive.org/web/https://defuse.ca/truecrypt-plausible-deniability-useless-by-game-theory.htm][][{[}Archive.org{]}]\from[url1289]

Plausible deniability is only effective against soft lawful adversaries
that will not resort to physical means. {\bf Avoid, if possible, the use
of plausible deniability-capable software (such as Veracrypt) if your
threat model includes hard adversaries. So, Windows users should in that
case install Windows Pro as a Host OS and use Bitlocker instead.}

See
\useURL[url1290][https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis]\from[url1290]
\useURL[url1291][https://wikiless.org/wiki/Rubber-hose_cryptanalysis][][{[}Wikiless{]}]\from[url1291]
\useURL[url1292][https://web.archive.org/web/https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis][][{[}Archive.org{]}]\from[url1292]

\subsubsubsubsection[title={Evil-Maid
Attack:},reference={evil-maid-attack}]

Evil Maid Attacks\footnote{Wikipedia, Evil Maid Attack
  \useURL[url1293][https://en.wikipedia.org/wiki/Evil_maid_attack]\from[url1293]
  \useURL[url1294][https://wikiless.org/wiki/Evil_maid_attack][][{[}Wikiless{]}]\from[url1294]
  \useURL[url1295][https://web.archive.org/web/https://en.wikipedia.org/wiki/Evil_maid_attack][][{[}Archive.org{]}]\from[url1295]}
are conducted when someone tampers with your laptop while you are away.
To install to clone your hard drive, install malware or a key logger. If
they can clone your hard drive, they can compare one image of your hard
drive at the time they took it while you were away with the hard drive
when they seize it from you. If you used the laptop again in between,
forensics examiners might be able to prove the existence of the hidden
data by looking at the variations between the two images in what should
be an empty/unused space. This could lead to compelling evidence of the
existence of hidden data. If they install a key logger or malware within
your laptop (software or hardware), they will be able to simply get the
password from you for later use when they seize it. Such attacks can be
done at your home, your hotel, a border crossing, or anywhere you leave
your devices unattended.

You can mitigate this attack by doing the following (as recommended
earlier):

\startitemize
\item
  Have basic tamper protection (as explained previously) to prevent
  physical access to the internals of the laptop without your knowing.
  This will prevent them from cloning your disks and installing a
  physical key logger without your knowledge.
\item
  Disable all the USB ports (as explained previously) within a
  password-protected BIOS/UEFI. Again, they will not be able to turn
  them on (without physically accessing the motherboard to reset the
  BIOS) to boot a USB device that could clone your hard drive or install
  a software-based malware that could act as a key logger.
\item
  Set up BIOS/UEFI/Firmware passwords to prevent any unauthorized boot
  of an unauthorized device.
\item
  Some OSes and Encryption software have the \goto{Anti Evil Maid
  (AEM)}[anti-evil-maid-aem] protection that can be enabled. This is the
  case with Windows/Veracrypt and QubeOS (only on Intel CPUs).
\stopitemize

\subsubsubsubsection[title={Cold-Boot
Attack:},reference={cold-boot-attack}]

Cold Boot attacks\footnote{Wikipedia, Cold Boot Attack
  \useURL[url1296][https://en.wikipedia.org/wiki/Cold_boot_attack]\from[url1296]
  \useURL[url1297][https://wikiless.org/wiki/Cold_boot_attack][][{[}Wikiless{]}]\from[url1297]
  \useURL[url1298][https://web.archive.org/web/https://en.wikipedia.org/wiki/Cold_boot_attack][][{[}Archive.org{]}]\from[url1298]}
are trickier than the Evil Maid Attack but can be part of an Evil Maid
attack as it requires an adversary to come into possession of your
laptop while you are actively using your device or shortly afterward.

The idea is rather simple, as shown in this video\footnote{CITP 2008
  (\useURL[url1299][https://www.youtube.com/watch?v=JDaicPIgn9U]\from[url1299])
  \useURL[url1300][https://yewtu.be/watch?v=JDaicPIgn9U][][{[}Invidious{]}]\from[url1300]},
an adversary could theoretically quickly boot your device on a special
USB key that would copy the content of the RAM (the memory) of the
device after you shut it down. If the USB ports are disabled or if they
feel like they need more time, they could open it and \quotation{cool
down} the memory using a spray or other chemicals (liquid nitrogen for
instance) preventing the memory from decaying. They could then be able
to copy its content for analysis. This memory dump could contain the key
to decrypt your device. You will later apply a few principles to
mitigate these.

In the case of Plausible Deniability, there have been some forensics
studies\footnote{ResearchGate, Defeating Plausible Deniability of
  VeraCrypt Hidden Operating Systems
  \useURL[url1301][https://www.researchgate.net/publication/318155607_Defeating_Plausible_Deniability_of_VeraCrypt_Hidden_Operating_Systems]\from[url1301]
  \useURL[url1302][https://web.archive.org/web/https://www.researchgate.net/publication/318155607_Defeating_Plausible_Deniability_of_VeraCrypt_Hidden_Operating_Systems][][{[}Archive.org{]}]\from[url1302]}
about technically proving the presence of the hidden data with a simple
forensic examination (without a Cold Boot/Evil Maid Attack) but these
have been contested by other studies\footnote{SANS.org, Mission
  Implausible: Defeating Plausible Deniability with Digital Forensics
  \useURL[url1303][https://www.sans.org/reading-room/whitepapers/forensics/mission-implausible-defeating-plausible-deniability-digital-forensics-39500]\from[url1303]
  \useURL[url1304][https://web.archive.org/web/https://www.sans.org/reading-room/whitepapers/forensics/mission-implausible-defeating-plausible-deniability-digital-forensics-39500][][{[}Archive.org{]}]\from[url1304]}
and by the maintainer of Veracrypt\footnote{SourceForge, Veracrypt Forum
  \useURL[url1305][https://sourceforge.net/p/veracrypt/discussion/technical/thread/53f33faf/]\from[url1305]
  \useURL[url1306][https://web.archive.org/web/https://sourceforge.net/p/veracrypt/discussion/technical/thread/53f33faf/][][{[}Archive.org{]}]\from[url1306]}
so we would not worry too much about those yet.

The same measures used to mitigate Evil Maid attacks should be in place
for Cold Boot attacks with some added ones:

\startitemize
\item
  If your OS or Encryption software allows it, you should consider
  encrypting the keys within RAM too (this is possible with
  Windows/Veracrypt and will be explained later). Again see
  \useURL[url1307][https://sourceforge.net/p/veracrypt/discussion/technical/thread/3961542951/]\from[url1307]
  \useURL[url1308][https://web.archive.org/web/https://sourceforge.net/p/veracrypt/discussion/technical/thread/3961542951/][][{[}Archive.org{]}]\from[url1308]
\item
  Do enable the option to Wipe keys from memory if a device is inserted
  in Veracrypt.
\item
  You should limit the use of Sleep stand-by and instead use Shutdown or
  Hibernate to prevent the encryption keys from staying in RAM when your
  computer goes to sleep. This is because sleep will maintain power in
  your memory for resuming your activity faster. Only hibernation and
  shutdown will actually clear the key from the memory\footnote{Microsoft,
    BitLocker Countermeasures
    \useURL[url1309][https://docs.microsoft.com/en-us/windows/security/information-protection/bitlocker/bitlocker-countermeasures]\from[url1309]
    \useURL[url1310][https://web.archive.org/web/https://docs.microsoft.com/en-us/windows/security/information-protection/bitlocker/bitlocker-countermeasures][][{[}Archive.org{]}]\from[url1310]}.
\stopitemize

See also
\useURL[url1311][https://www.whonix.org/wiki/Cold_Boot_Attack_Defense]\from[url1311]
\useURL[url1312][https://web.archive.org/web/https://www.whonix.org/wiki/Cold_Boot_Attack_Defense][][{[}Archive.org{]}]\from[url1312]
and
\useURL[url1313][https://www.whonix.org/wiki/Protection_Against_Physical_Attacks]\from[url1313]
\useURL[url1314][https://web.archive.org/web/https://www.whonix.org/wiki/Protection_Against_Physical_Attacks][][{[}Archive.org{]}]\from[url1314]

Here are also some interesting tools to consider for Linux users to
defend against these:

\startitemize
\item
  \useURL[url1315][https://github.com/0xPoly/Centry]\from[url1315]
  \useURL[url1316][https://web.archive.org/web/https://github.com/0xPoly/Centry][][{[}Archive.org{]}]\from[url1316]
  (unfortunately unmaintained it seems)
\item
  \useURL[url1317][https://github.com/hephaest0s/usbkill]\from[url1317]
  \useURL[url1318][https://web.archive.org/web/https://github.com/hephaest0s/usbkill][][{[}Archive.org{]}]\from[url1318]
  (unfortunately unmaintained as well it seems)
\item
  \useURL[url1319][https://github.com/Lvl4Sword/Killer]\from[url1319]
  \useURL[url1320][https://web.archive.org/web/https://github.com/Lvl4Sword/Killer][][{[}Archive.org{]}]\from[url1320]
\item
  \useURL[url1321][https://askubuntu.com/questions/153245/how-to-wipe-ram-on-shutdown-prevent-cold-boot-attacks]\from[url1321]
  \useURL[url1322][https://web.archive.org/web/https://askubuntu.com/questions/153245/how-to-wipe-ram-on-shutdown-prevent-cold-boot-attacks][][{[}Archive.org{]}]\from[url1322]
\item
  (Qubes OS, Intel CPU only)
  \useURL[url1323][https://github.com/QubesOS/qubes-antievilmaid]\from[url1323]
  \useURL[url1324][https://web.archive.org/web/https://github.com/QubesOS/qubes-antievilmaid][][{[}Archive.org{]}]\from[url1324]
\stopitemize

\subsubsubsubsection[title={About Sleep, Hibernation, and
Shutdown:},reference={about-sleep-hibernation-and-shutdown}]

If you want better security, you should shut down your laptop completely
every time you leave it unattended or close the lid. This should clean
and/or release the RAM and provide mitigations against cold boot
attacks. However, this can be a bit inconvenient as you will have to
reboot completely and type in a ton of passwords into various apps.
Restart various VMs and other apps. So instead, you could also use
hibernation (not supported on Qubes OS). Since the whole disk is
encrypted, hibernation in itself should not pose a large security risk
but will still shut down your laptop and clear the memory while allowing
you to conveniently resume your work afterward. {\bf What you should
never do is using the standard sleep feature which will keep your
computer on, and the memory powered. This is an attack vector against
evil-maid and cold-boot attacks discussed earlier. This is because your
powered-on memory holds the encryption keys to your disk (encrypted or
not) and could then be accessed by a skilled adversary.}

This guide will provide guidance later on how to enable hibernation on
various host OSes (except Qubes OS) if you do not want to shut down
every time.

\subsubsubsubsection[title={Local Data Leaks (traces) and forensics
examination:},reference={local-data-leaks-traces-and-forensics-examination}]

As mentioned briefly earlier, these are data leaks and traces from your
operating system and apps when you perform any activity on your
computer. These mostly apply to encrypted file containers (with or
without plausible deniability) than OS-wide encryption. Such leaks are
less \quotation{important} if your whole OS is encrypted (if you are not
compelled to reveal the password).

Let us say for example you have a Veracrypt encrypted USB key with
plausible deniability enabled. Depending on the password you use when
mounting the USB key, it will open a decoy folder or the sensitive
folder. Within those folders, you will have decoy documents/data within
the decoy folder and sensitive documents/data within the sensitive
folder.

In all cases, you will (most likely) open these folders with Windows
Explorer, macOS Finder, or any other utility and do whatever you planned
to do. Maybe you will edit a document within the sensitive folder. Maybe
you will search for a document within the folder. Maybe you will delete
one or watch a sensitive video using VLC.

Well, all those Apps and your Operating System might keep logs and
traces of that usage. This might include the full path of the
folder/files/drives, the time those were accessed, temporary caches of
those files, the \quotation{recent} lists in each app, the file indexing
system that could index the drive, and even thumbnails that could be
generated

Here are some examples of such leaks:

\subsubsubsubsubsection[title={Windows:},reference={windows}]

\startitemize
\item
  Windows ShellBags that are stored within the Windows Registry silently
  storing various histories of accessed volumes/files/folders\footnote{SANS,
    Windows ShellBag Forensics in-depth
    \useURL[url1325][https://www.sans.org/reading-room/whitepapers/forensics/windows-shellbag-forensics-in-depth-34545]\from[url1325]
    \useURL[url1326][https://web.archive.org/web/https://www.sans.org/reading-room/whitepapers/forensics/windows-shellbag-forensics-in-depth-34545][][{[}Archive.org{]}]\from[url1326]}.
\item
  Windows Indexing keeping traces of the files present in your user
  folder by default\footnote{University of York, Forensic data recovery
    from the Windows Search Database
    \useURL[url1327][https://eprints.whiterose.ac.uk/75046/1/Forensic_Data_Recovery_From_The_Windows_Search_Database_preprint_DIIN328.pdf]\from[url1327]
    \useURL[url1328][https://web.archive.org/web/https://eprints.whiterose.ac.uk/75046/1/Forensic_Data_Recovery_From_The_Windows_Search_Database_preprint_DIIN328.pdf][][{[}Archive.org{]}]\from[url1328]}.
\item
  Recent lists (aka Jump Lists) in Windows and various apps keeping
  traces of recently accessed documents\footnote{A forensic insight into
    Windows 10 Jump Lists
    \useURL[url1329][https://web.archive.org/web/https://cyberforensicator.com/wp-content/uploads/2017/01/1-s2.0-S1742287616300202-main.2-14.pdf]\from[url1329]
    \useURL[url1330][https://web.archive.org/web/https://cyberforensicator.com/wp-content/uploads/2017/01/1-s2.0-S1742287616300202-main.2-14.pdf][][{[}Archive.org{]}]\from[url1330]}.
\item
  Many more traces in various logs, please see this convenient
  interesting poster for more insight:
  \useURL[url1331][https://www.sans.org/security-resources/posters/windows-forensic-analysis/170/download]\from[url1331]
  \useURL[url1332][https://web.archive.org/web/https://www.sans.org/security-resources/posters/windows-forensic-analysis/170/download][][{[}Archive.org{]}]\from[url1332]
\stopitemize

\subsubsubsubsubsection[title={macOS:},reference={macos}]

\startitemize
\item
  Gatekeeper\footnote{Wikipedia, Gatekeeper
    \useURL[url1333][https://en.wikipedia.org/wiki/Gatekeeper_(macOS)]\from[url1333]
    \useURL[url1334][https://wikiless.org/wiki/Gatekeeper_(macOS)][][{[}Wikiless{]}]\from[url1334]
    \useURL[url1335][https://web.archive.org/web/https://en.wikipedia.org/wiki/Gatekeeper_(macOS)][][{[}Archive.org{]}]\from[url1335]}
  and XProtect keeping track of your download history in a local
  database and file attributes.
\item
  Spotlight Indexing
\item
  Recent lists in various apps keeping traces of recently accessed
  documents.
\item
  Temporary folders keeping various traces of App usage and Document
  usage.
\item
  macOS Logs
\item
  \ldots{}
\stopitemize

\subsubsubsubsubsection[title={Linux:},reference={linux}]

\startitemize
\item
  Tracker Indexing
\item
  Bash History
\item
  USB logs
\item
  Recent lists in various apps keeping traces of recently accessed
  documents.
\item
  Linux Logs
\item
  \ldots{}
\stopitemize

Forensics could' use all those leaks (see \goto{Local Data Leaks and
Forensics}[local-data-leaks-and-forensics]) to prove the existence of
hidden data and defeat your attempts at using plausible deniability and
to find out about your various sensitive activities.

It will be therefore important to apply various steps to prevent
forensics from doing this by preventing and cleaning these leaks/traces
and more importantly by using whole disk encryption, virtualization, and
compartmentalization.

Forensics cannot extract local data leaks from an OS they cannot access.
And you will be able to clean most of those traces by wiping the drive
or by securely erasing your virtual machines (which is not as easy as
you think on SSD drives).

Some cleaning techniques will nevertheless be covered in the
\quotation{Cover your Tracks} part of this guide at the very end.

\subsubsubsubsection[title={Online Data
Leaks:},reference={online-data-leaks}]

Whether you are using simple encryption or plausible deniability
encryption. Even if you covered your tracks on the computer itself.
There is still a risk of online data leaks that could reveal the
presence of hidden data.

{\bf Telemetry is your enemy}. As explained earlier in this guide, the
telemetry of Operating Systems but also from Apps can send staggering
amounts of private information online.

In the case of Windows, this data could for instance be used to prove
the existence of a hidden OS / Volume on a computer and would be readily
available at Microsoft. Therefore, it is critically important that you
disable and block telemetry with all the means at your disposal. No
matter what OS you are using.

\subsubsubsection[title={Conclusion:},reference={conclusion}]

You should never conduct sensitive activities from a non-encrypted
system. And even if it is encrypted, you should never conduct sensitive
activities from the Host OS itself. Instead, you should use a VM to be
able to efficiently isolate and compartmentalize your activities and
prevent local data leaks.

If you have little to no knowledge of Linux or if you want to use
OS-wide plausible deniability, we recommend going for Windows (or back
to the Tails route) for convenience. This guide will help you hardening
it as much as possible to prevent leaks. This guide will also help you
hardening macOS and Linux as much as possible to prevent similar leaks.

If you have no interest in OS-wide plausible deniability and want to
learn to use Linux, we will strongly recommend going for Linux or the
Qubes OS route if your hardware allows it.

{\bf In all cases, the host OS should never be used to conduct sensitive
activities directly. The host OS will only be used to connect to a
public Wi-Fi Access Point. It will be left unused while you conduct
sensitive activities and should ideally not be used for any of your
day-to-day activities.}

Consider also reading
{\bf \useURL[url1336][https://www.whonix.org/wiki/Full_Disk_Encryption\#Encrypting_Whonix_VMs]\from[url1336]}
\useURL[url1337][https://web.archive.org/web/https://www.whonix.org/wiki/Full_Disk_Encryption][][{[}Archive.org{]}]\from[url1337]

\subsubsection[title={Linux Host OS:},reference={linux-host-os}]

As mentioned earlier, we do not recommend using your daily laptop for
sensitive activities. Or at least we do not recommend using your
in-place OS for these. Doing that might result in unwanted data leaks
that could be used to de-anonymize you. If you have a dedicated laptop
for this, you should reinstall a fresh clean OS. If you do not want to
wipe your laptop and start over, you should consider the Tails route or
proceed at your own risk.

I also recommend that you do the initial installation completely offline
to avoid any data leak.

You should always remember that despite the reputation, Linux mainstream
distributions (Ubuntu for instance) are not necessarily better at
security than other systems such as macOS and Windows. See this
reference to understand why
\useURL[url1338][https://madaidans-insecurities.github.io/linux.html]\from[url1338]
\useURL[url1339][https://web.archive.org/web/https://madaidans-insecurities.github.io/linux.html][][{[}Archive.org{]}]\from[url1339].

\subsubsubsection[title={Full disk
encryption:},reference={full-disk-encryption}]

There are two routes here with Ubuntu or Debian based distros:

\startitemize
\item
  Using LUKS:

  \startitemize
  \item
    Without plausible deniability:

    \startitemize
    \item
      (Recommended and easy) Encrypt as part of the installation
      process:
      \useURL[url1340][https://ubuntu.com/tutorials/install-ubuntu-desktop]\from[url1340]
      \useURL[url1341][https://web.archive.org/web/https://ubuntu.com/tutorials/install-ubuntu-desktop][][{[}Archive.org{]}]\from[url1341]

      \startitemize
      \item
        This process requires the full erasure of your entire drive
        (clean install).
      \item
        Just check the \quotation{Encrypt the new Ubuntu installation
        for security}
      \stopitemize
    \item
      (Tedious but possible) Encrypt after installation:
      \useURL[url1342][https://help.ubuntu.com/community/ManualFullSystemEncryption]\from[url1342]
      \useURL[url1343][https://web.archive.org/web/https://help.ubuntu.com/community/ManualFullSystemEncryption][][{[}Archive.org{]}]\from[url1343]
    \stopitemize
  \item
    With plausible deniability: See the next section \goto{The Detached
    Headers Way}[the-detached-headers-way]
  \stopitemize
\item
  Using Veracrypt:

  \startitemize[packed]
  \item
    With or without plausible deniability: See the next section
    \goto{The Veracrypt Way}[the-veracrypt-way]
  \stopitemize
\stopitemize

For other distros, you will have to document yourself, but it will
likely be similar. Encryption during install is just much easier in the
context of this guide.

\subsubsubsection[title={Note about plausible deniability on
Linux:},reference={note-about-plausible-deniability-on-linux}]

There are several ways to achieve plausible deniability on
Linux\footnote{Alpine Linux Wiki, Setting up a laptop
  \useURL[url1344][https://wiki.alpinelinux.org/wiki/Setting_up_a_laptop]\from[url1344]
  \useURL[url1345][https://web.archive.org/web/https://wiki.alpinelinux.org/wiki/Setting_up_a_laptop][][{[}Archive.org{]}]\from[url1345]}
and it is possible to achieve. Here are some more details about some of
the ways we would recommend. All these options require some higher level
of skills at using Linux.

\subsubsubsubsection[title={The Detached Headers
Way:},reference={the-detached-headers-way}]

While not supported yet by this guide, it is possible to achieve a form
of deniability on Linux using LUKS by using detached LUKS headers. For
now, we will redirect you toward this page for more information:
\useURL[url1346][https://wiki.archlinux.org/title/Dm-crypt/Specialties\#Encrypted_system_using_a_detached_LUKS_header]\from[url1346]
\useURL[url1347][https://web.archive.org/web/https://wiki.archlinux.org/title/Dm-crypt/Specialties\#Encrypted_system_using_a_detached_LUKS_header][][{[}Archive.org{]}]\from[url1347]

\subsubsubsubsection[title={The Veracrypt
Way:},reference={the-veracrypt-way}]

It is technically possible to not only use Veracrypt but also to achieve
plausible deniability on a Linux Host OS by using Veracrypt for system
full-disk encryption (instead of LUKS). This is not supported by
Veracrypt (System encryption is only supported on Windows) and requires
some tinkering with various commands. This is not recommended at all for
unskilled users and should only be used at your own risk.

The steps to achieve this are not yet integrated into this guide but can
be found here:
\useURL[url1348][http://dreadytofatroptsdj6io7l3xptbet6onoyno2yv7jicoxknyazubrad.onion/post/5779e55aae7fc06e4758]\from[url1348]
(this is a .onion address and requires Tor Browser).

\subsubsubsection[title={Reject/Disable any
telemetry:},reference={rejectdisable-any-telemetry}]

\startitemize
\item
  During the install, just make sure you do not allow any data
  collection if prompted.
\item
  If you are not sure, just make sure you did not enable any telemetry
  and follow this tutorial if needed
  \useURL[url1349][https://vitux.com/how-to-force-ubuntu-to-stop-collecting-your-data-from-your-pc/]\from[url1349]
  \useURL[url1350][https://web.archive.org/web/https://vitux.com/how-to-force-ubuntu-to-stop-collecting-your-data-from-your-pc/][][{[}Archive.org{]}]\from[url1350]
\item
  Any other distro: you will need to document yourself and find out how
  to disable telemetry.
\stopitemize

\subsubsubsection[title={Disable anything
unnecessary:},reference={disable-anything-unnecessary}]

\startitemize
\item
  Disable Bluetooth if enabled by following this guide
  \useURL[url1351][https://www.addictivetips.com/ubuntu-linux-tips/disable-bluetooth-in-ubuntu/]\from[url1351]
  \useURL[url1352][https://web.archive.org/web/https://www.addictivetips.com/ubuntu-linux-tips/disable-bluetooth-in-ubuntu/][][{[}Archive.org{]}]\from[url1352]
  or issuing the following command:

  \startitemize[packed]
  \item
    \type{sudo systemctl disable bluetooth.service --force}
  \stopitemize
\item
  Disable Indexing if enabled by default (Ubuntu >19.04) by following
  this guide
  \useURL[url1353][https://www.linuxuprising.com/2019/07/how-to-completely-disable-tracker.html]\from[url1353]
  \useURL[url1354][https://web.archive.org/web/https://www.linuxuprising.com/2019/07/how-to-completely-disable-tracker.html][][{[}Archive.org{]}]\from[url1354]
  or issuing the following commands:

  \startitemize
  \item
    \type{sudo systemctl --user mask tracker-store.service tracker-miner-fs.service tracker-miner-rss.service tracker-extract.service tracker-miner-apps.service tracker-writeback.service}

    \startitemize[packed]
    \item
      You can safely ignore any error if it says some service does not
      exist
    \stopitemize
  \item
    \type{sudo tracker reset -hard}
  \stopitemize
\stopitemize

\subsubsubsubsection[title={Hibernation:},reference={hibernation}]

As explained previously, you should not use the sleep features but shut
down or hibernate your laptop to mitigate some evil-maid and cold-boot
attacks. Unfortunately, this feature is disabled by default on many
Linux distros including Ubuntu. It is possible to enable it, but it
might not work as expected. Follow this information at your own risk. If
you do not want to do this, you should never use the sleep function and
power off instead (and set the lid closing behavior to power off instead
of sleep).

Follow one of these tutorials to enable Hibernate:

\startitemize
\item
  \useURL[url1355][https://www.how2shout.com/linux/how-to-hibernate-ubuntu-20-04-lts-focal-fossa/]\from[url1355]
  \useURL[url1356][https://web.archive.org/web/https://www.how2shout.com/linux/how-to-hibernate-ubuntu-20-04-lts-focal-fossa/][][{[}Archive.org{]}]\from[url1356]
\item
  \useURL[url1357][http://www.lorenzobettini.it/2020/07/enabling-hibernation-on-ubuntu-20-04/]\from[url1357]
  \useURL[url1358][https://web.archive.org/web/http://www.lorenzobettini.it/2020/07/enabling-hibernation-on-ubuntu-20-04/][][{[}Archive.org{]}]\from[url1358]
\item
  \useURL[url1359][https://blog.ivansmirnov.name/how-to-set-up-hibernate-on-ubuntu-20-04/]\from[url1359]
  \useURL[url1360][https://web.archive.org/web/20211011215449/https://blog.ivansmirnov.name/how-to-set-up-hibernate-on-ubuntu-20-04/][][{[}Archive.org{]}]\from[url1360]
\stopitemize

After Hibernate is enabled, change the behavior so that your laptop will
hibernate when you close the lid by following this tutorial for Ubuntu
20.04
\useURL[url1361][http://ubuntuhandbook.org/index.php/2020/05/lid-close-behavior-ubuntu-20-04/]\from[url1361]
\useURL[url1362][https://web.archive.org/web/http://ubuntuhandbook.org/index.php/2020/05/lid-close-behavior-ubuntu-20-04/][][{[}Archive.org{]}]\from[url1362]
and this tutorial for Ubuntu 18.04
\useURL[url1363][https://tipsonubuntu.com/2018/04/28/change-lid-close-action-ubuntu-18-04-lts/]\from[url1363]
\useURL[url1364][https://web.archive.org/web/https://tipsonubuntu.com/2018/04/28/change-lid-close-action-ubuntu-18-04-lts/][][{[}Archive.org{]}]\from[url1364].
There is no tutorial yet for Ubuntu 21.04 or 21.10 but the above for
20.04 should probably work too.

Unfortunately, this will not clean the key from memory directly when
hibernating. To avoid this at the cost of some performance, you might
consider encrypting the swap file by following this tutorial:
\useURL[url1365][https://help.ubuntu.com/community/EnableHibernateWithEncryptedSwap]\from[url1365]
\useURL[url1366][https://web.archive.org/web/https://help.ubuntu.com/community/EnableHibernateWithEncryptedSwap][][{[}Archive.org{]}]\from[url1366]

These settings should mitigate cold boot attacks if you can hibernate
fast enough.

\subsubsubsection[title={Enable MAC address
randomization:},reference={enable-mac-address-randomization}]

\startitemize
\item
  For Ubuntu, follow these steps
  \useURL[url1367][https://help.ubuntu.com/community/AnonymizingNetworkMACAddresses]\from[url1367]
  \useURL[url1368][https://web.archive.org/web/https://help.ubuntu.com/community/AnonymizingNetworkMACAddresses][][{[}Archive.org{]}]\from[url1368].
\item
  Consider this tutorial which should still work:
  \useURL[url1369][https://josh.works/shell-script-basics-change-mac-address]\from[url1369]
  \useURL[url1370][https://web.archive.org/web/https://josh.works/shell-script-basics-change-mac-address][][{[}Archive.org{]}]\from[url1370]
\stopitemize

\subsubsubsection[title={Hardening Linux:},reference={hardening-linux}]

As a light introduction for new Linux users, consider
\useURL[url1371][https://www.youtube.com/watch?v=Sa0KqbpLye4]\from[url1371]
\useURL[url1372][https://yewtu.be/watch?v=Sa0KqbpLye4][][{[}Invidious{]}]\from[url1372]

For more in-depth and advanced options, refer to:

\startitemize
\item
  This excellent guide:
  \useURL[url1373][https://madaidans-insecurities.github.io/guides/linux-hardening.html]\from[url1373]
  \useURL[url1374][https://web.archive.org/web/https://madaidans-insecurities.github.io/guides/linux-hardening.html][][{[}Archive.org{]}]\from[url1374]
\item
  This excellent wiki resource:
  \useURL[url1375][https://wiki.archlinux.org/title/Security]\from[url1375]
  \useURL[url1376][https://web.archive.org/web/https://wiki.archlinux.org/title/Security][][{[}Archive.org{]}]\from[url1376]
\item
  These excellent scripts are based on the guide and wiki above:
  \useURL[url1377][https://codeberg.org/SalamanderSecurity/PARSEC]\from[url1377]
  \useURL[url1378][https://web.archive.org/web/https://codeberg.org/SalamanderSecurity/PARSEC][][{[}Archive.org{]}]\from[url1378]
\item
  These tools that can help you harden your Linux Kernel:

  \startitemize
  \item
    Lynis:
    \useURL[url1379][https://github.com/CISOfy/lynis]\from[url1379]
  \item
    Kconfig-hardened-check:
    \useURL[url1380][https://github.com/a13xp0p0v/kconfig-hardened-check]\from[url1380]
  \stopitemize
\item
  Consider installing Safing Portmaster from
  \useURL[url1381][https://safing.io/portmaster/]\from[url1381]
  \useURL[url1382][https://web.archive.org/web/https://safing.io/portmaster/][][{[}Archive.org{]}]\from[url1382]
  {\bf (Warning: there might be issues with some VPN clients. See:
  \useURL[url1383][https://docs.safing.io/portmaster/install/status/vpn-compatibility]\from[url1383]}
  \useURL[url1384][https://web.archive.org/web/https://docs.safing.io/portmaster/install/status/vpn-compatibility][][{[}Archive.org{]}]\from[url1384]
\item
  Consider the use of KickSecure when using Debian:
  \useURL[url1385][https://www.whonix.org/wiki/Kicksecure]\from[url1385]
  \useURL[url1386][https://web.archive.org/web/https://www.whonix.org/wiki/Kicksecure][][{[}Archive.org{]}]\from[url1386]
\item
  This interesting article:
  \useURL[url1387][http://0pointer.net/blog/authenticated-boot-and-disk-encryption-on-linux.html]\from[url1387]
  \useURL[url1388][https://web.archive.org/web/http://0pointer.net/blog/authenticated-boot-and-disk-encryption-on-linux.html][][{[}Archive.org{]}]\from[url1388]
\stopitemize

\subsubsubsection[title={Setting up a safe
Browser:},reference={setting-up-a-safe-browser}]

See \goto{Appendix G: Safe Browser on the Host
OS}[appendix-g-safe-browser-on-the-host-os]

\subsubsection[title={macOS Host OS:},reference={macos-host-os}]

{\bf Note: Mac M1/M2 chips are now supported natively, or, if you wish
to use commercial tools like VMWare Fusion or Parallels Desktop, but
those are not covered in this guide. Seek this information yourself.}

As mentioned earlier, we do not recommend using your daily laptop for
sensitive activities. Or at least we do not recommend using your
in-place OS for these. Doing that might result in unwanted data leaks
that could be used to de-anonymize you. If you have a dedicated laptop
for this, you should reinstall a fresh clean OS. If you do not want to
wipe your laptop and start over, you should consider the Tails route or
proceed at your own risk.

We also recommend that you do the initial installation completely
offline to avoid any data leak.

{\bf Do not ever sign in with your Apple account using that Mac.}

\subsubsubsection[title={During the
install:},reference={during-the-install}]

\startitemize
\item
  Stay Offline
\item
  Disable all data sharing requests when prompted including location
  services
\item
  Do not sign in with Apple
\item
  Do not enable Siri
\stopitemize

\subsubsubsection[title={Hardening macOS:},reference={hardening-macos}]

As a light introduction for new macOS users, consider
\useURL[url1389][https://www.youtube.com/watch?v=lFx5icuE6Io]\from[url1389]
\useURL[url1390][https://yewtu.be/watch?v=lFx5icuE6Io][][{[}Invidious{]}]\from[url1390]

Now to go more in-depth in securing and hardening your macOS, we
recommend reading this guide which covers many of the issues:
\useURL[url1391][https://www.bejarano.io/hardening-macos/]\from[url1391]
\useURL[url1392][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url1392]

Here are the basic steps you should take after your offline
installation:

\subsubsubsubsection[title={Enable Firmware password with
\quotation{disable-reset-capability}
option:},reference={enable-firmware-password-with-disable-reset-capability-option}]

First, you should set up a firmware password following this guide from
Apple:
\useURL[url1393][https://support.apple.com/en-us/HT204455]\from[url1393]
\useURL[url1394][https://web.archive.org/web/https://support.apple.com/en-us/HT204455][][{[}Archive.org{]}]\from[url1394]

Unfortunately, some attacks are still possible and an adversary could
disable this password so you should also follow this guide to prevent
disabling the firmware password from anyone including Apple:
\useURL[url1395][https://support.apple.com/en-gb/guide/security/sec28382c9ca/web]\from[url1395]
\useURL[url1396][https://web.archive.org/web/https://support.apple.com/en-gb/guide/security/sec28382c9ca/web][][{[}Archive.org{]}]\from[url1396]

\subsubsubsubsection[title={Enable Hibernation instead of
sleep:},reference={enable-hibernation-instead-of-sleep}]

Again, this is to prevent some cold-boot and evil-maid attacks by
powering down your RAM and cleaning the encryption key when you close
the lid. You should always either hibernate or shut down. On macOS, the
hibernate feature even has a special option to specifically clear the
encryption key from memory when hibernating (while you might have to
wait for the memory to decay on other Operating Systems). Once again
there are no easy options to do this within the settings so instead, we
will have to do this by running a few commands to enable hibernation:

\startitemize
\item
  Open a Terminal
\item
  Run: \type{sudo pmset -a destroyfvkeyonstandby 1}

  \startitemize[packed]
  \item
    This command will instruct macOS to destroy the Filevault key on
    Standby (sleep)
  \stopitemize
\item
  Run: \type{sudo pmset -a hibernatemode 25}

  \startitemize[packed]
  \item
    This command will instruct macOS to power off the memory during
    sleep instead of doing a hybrid hibernate that keeps the memory
    powered on. It will result in slower wakes but will increase battery
    life.
  \stopitemize
\stopitemize

Now when you close the lid of your MacBook, it should hibernate instead
of sleep and mitigate attempts at performing cold-boot attacks.

In addition, you should also set up an automatic sleep (Settings >
Energy) so that your MacBook will hibernate automatically if left
unattended.

\subsubsubsubsection[title={Disable unnecessary
services:},reference={disable-unnecessary-services}]

Disable some unnecessary settings within the settings:

\startitemize
\item
  Disable Bluetooth
\item
  Disable the Camera and Microphone
\item
  Disable Location Services
\item
  Disable Airdrop
\item
  Disable Indexing
\stopitemize

\subsubsubsubsection[title={Prevent Apple OCSP
calls:},reference={prevent-apple-ocsp-calls}]

These are the infamous \quotation{unblockable telemetry} calls from
macOS Big Sur disclosed here:
\useURL[url1397][https://sneak.berlin/20201112/your-computer-isnt-yours/]\from[url1397]
\useURL[url1398][https://web.archive.org/web/https://sneak.berlin/20201112/your-computer-isnt-yours/][][{[}Archive.org{]}]\from[url1398]

You could block OCSP reporting by issuing the following command in
Terminal:

\startitemize[packed]
\item
  \type{sudo sh -c 'echo "127.0.0.1 ocsp.apple.com" >> /etc/hosts'}
\stopitemize

But you should document yourself on the actual issue before acting. This
page is a good place to start:
\useURL[url1399][https://blog.jacopo.io/en/post/apple-ocsp/]\from[url1399]
\useURL[url1400][https://web.archive.org/web/https://blog.jacopo.io/en/post/apple-ocsp/][][{[}Archive.org{]}]\from[url1400]

Up to you really. We would block it because we do not want any telemetry
at all from my OS to the mothership without my specific consent. None.

\subsubsubsubsection[title={Enable Full Disk encryption
(Filevault):},reference={enable-full-disk-encryption-filevault}]

You should enable full disk encryption on your Mac using Filevault
according to this part of the guide:
\useURL[url1401][https://github.com/drduh/macOS-Security-and-Privacy-Guide\#full-disk-encryption]\from[url1401]
\useURL[url1402][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url1402]

{\bf Be careful when enabling. Do not store the recovery key at Apple if
prompted (should not be an issue since you should be offline at this
stage). You do not want a third party to have your recovery key.}

\subsubsubsubsection[title={MAC Address
Randomization:},reference={mac-address-randomization}]

Unfortunately, macOS does not offer a native convenient way of
randomizing your MAC Address and so you will have to do this manually.
This will be reset at each reboot, and you will have to re-do it each
time to ensure you do not use your actual MAC Address when connecting to
various Wi-Fis

You can do this by issuing the following commands in terminal (without
the parentheses):

\startitemize
\item
  (Turn the Wi-Fi off) \type{networksetup -setairportpower en0 off}
\item
  (Change the MAC Address)
  \type{sudo ifconfig en0 ether 88:63:11:11:11:11}
\item
  (Turn the Wi-Fi back on) \type{networksetup -setairportpower en0 on}
\stopitemize

\subsubsubsection[title={Setting up a safe
Browser:},reference={setting-up-a-safe-browser-1}]

See \goto{Appendix G: Safe Browser on the Host
OS}[appendix-g-safe-browser-on-the-host-os]

\subsubsection[title={Windows Host OS:},reference={windows-host-os}]

As mentioned earlier, we do not recommend using your daily laptop for
sensitive activities. Or at leastWedo not recommend using your in-place
OS for these. Doing that might result in unwanted data leaks that could
be used to de-anonymize you. If you have a dedicated laptop for this,
you should reinstall a fresh clean OS. If you do not want to wipe your
laptop and start over, you should consider the Tails route or proceed at
your own risk.

I also recommend that you do the initial installation completely offline
to avoid any data leak.

\subsubsubsection[title={Installation:},reference={installation}]

You should follow \goto{Appendix A: Windows
Installation}[appendix-a-windows-installation]

As a light introduction, consider watching
\useURL[url1403][https://www.youtube.com/watch?v=vNRics7tlqw]\from[url1403]
\useURL[url1404][https://yewtu.be/watch?v=vNRics7tlqw][][{[}Invidious{]}]\from[url1404]

\subsubsubsection[title={Enable MAC address
randomization:},reference={enable-mac-address-randomization-1}]

You should randomize your MAC address as explained earlier in this
guide:

Go into Settings > Network & Internet > Wi-Fi > Enable Random hardware
addresses

Alternatively, you could use this free piece of software:
\useURL[url1405][https://technitium.com/tmac/]\from[url1405]
\useURL[url1406][https://web.archive.org/web/https://technitium.com/tmac/][][{[}Archive.org{]}]\from[url1406]

\subsubsubsection[title={Setting up a safe
Browser:},reference={setting-up-a-safe-browser-2}]

See \goto{Appendix G: Safe Browser on the Host
OS}[appendix-g-safe-browser-on-the-host-os]

\subsubsubsection[title={Enable some additional privacy settings on your
Host
OS:},reference={enable-some-additional-privacy-settings-on-your-host-os}]

See \goto{Appendix B: Windows Additional Privacy
Settings}[appendix-b-windows-additional-privacy-settings]

\subsubsubsubsection[title={Windows Host OS
encryption:},reference={windows-host-os-encryption}]

\subsubsubsubsubsection[title={If you intend to use system-wide
plausible
deniability:},reference={if-you-intend-to-use-system-wide-plausible-deniability}]

Veracrypt\footnote{Wikipedia Veracrypt
  \useURL[url1407][https://en.wikipedia.org/wiki/VeraCrypt]\from[url1407]
  \useURL[url1408][https://wikiless.org/wiki/VeraCrypt][][{[}Wikiless{]}]\from[url1408]
  \useURL[url1409][https://web.archive.org/web/https://en.wikipedia.org/wiki/VeraCrypt][][{[}Archive.org{]}]\from[url1409]}
is the software we will recommend for full-disk encryption, file
encryption, and plausible deniability. It is a fork of the well-known
but deprecated and unmaintained TrueCrypt. It can be used for:

\startitemize
\item
  Full Disk simple encryption (your hard drive is encrypted with one
  passphrase).
\item
  Full Disk encryption with plausible deniability (this means that
  depending on the passphrase entered at boot, you will either boot a
  decoy OS or a hidden OS).
\item
  File container simple encryption (it is a large file that you will be
  able to mount within Veracrypt as if it were an external drive to
  store encrypted files within).
\item
  File container with plausible deniability (it is the same large file
  but depending on the passphrase you use when mounting it, you will
  either mount a \quotation{hidden volume} or the \quotation{decoy
  volume}).
\stopitemize

It is to my knowledge the only (convenient and usable by anyone) free,
open-source, and openly audited\footnote{OSTIF Veracrypt Audit, 2016
  \useURL[url1410][https://web.archive.org/web/https://ostif.org/the-veracrypt-audit-results/]\from[url1410]}
encryption software that also provides plausible deniability for
widespread use and it works with Windows Home Edition.

Go ahead and download and install Veracrypt from:
\useURL[url1411][https://www.veracrypt.fr/en/Downloads.html]\from[url1411]
\useURL[url1412][https://web.archive.org/web/https://www.veracrypt.fr/en/Downloads.html][][{[}Archive.org{]}]\from[url1412]

After installation, please take a moment to review the following options
that will help mitigate some attacks:

\startitemize
\item
  Encrypt the memory with a Veracrypt option\footnote{Veracrypt
    Documentation, Unencrypted Data in RAM
    \useURL[url1413][https://www.veracrypt.fr/en/Unencrypted\%20Data\%20in\%20RAM.html][][https://www.veracrypt.fr/en/Unencrypted\letterpercent{}20Data\letterpercent{}20in\letterpercent{}20RAM.html]\from[url1413]
    \useURL[url1414][https://web.archive.org/web/https://www.veracrypt.fr/en/Unencrypted\%20Data\%20in\%20RAM.html][][{[}Archive.org{]}]\from[url1414]}
  (settings > performance/driver options > encrypt RAM) at a cost of
  5-15\letterpercent{} performance. This setting will also disable
  hibernation (which does not actively clear the key when hibernating)
  and instead encrypt the memory altogether to mitigate some cold-boot
  attacks. More details about this feature here:
  \useURL[url1415][https://sourceforge.net/p/veracrypt/discussion/technical/thread/3961542951/]\from[url1415]
  \useURL[url1416][https://web.archive.org/web/https://sourceforge.net/p/veracrypt/discussion/technical/thread/3961542951/][][{[}Archive.org{]}]\from[url1416]
\item
  Enable the Veracrypt option to wipe the keys from memory if a new
  device is inserted (system > settings > security > clear keys from
  memory if a new device is inserted). This could help in case your
  system is seized while still on (but locked).
\item
  Enable the Veracrypt option to mount volumes as removable volumes
  (Settings > Preferences > Mount volume as removable media). This will
  prevent Windows from writing some logs about your mounts in the Event
  logs\footnote{Veracrypt Documentation, Data Leaks
    \useURL[url1417][https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\%20Leaks.html][][https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\letterpercent{}20Leaks.html]\from[url1417]
    \useURL[url1418][https://web.archive.org/web/https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\%20Leaks.html][][{[}Archive.org{]}]\from[url1418]}
  and prevent some local data leaks.
\item
  Be careful and have a good situational awareness if you sense
  something weird. Shut your laptop down as fast as possible.
\stopitemize

If you do not want to use encrypted memory (because performance might be
an issue), you should at least enable hibernation instead of sleep. This
will not clear the keys from memory (you are still vulnerable to cold
boot attacks) but at least should mitigate them if your memory has
enough time to decay.

More details later in \goto{Route A and B: Simple Encryption using
Veracrypt (Windows
tutorial)}[route-a-and-b-simple-encryption-using-veracrypt-windows-tutorial].

\subsubsubsubsubsection[title={If you do not intend to use system-wide
plausible
deniability:},reference={if-you-do-not-intend-to-use-system-wide-plausible-deniability}]

For this case, we will recommend the use of BitLocker instead of
Veracrypt for the full disk encryption. The reasoning is that BitLocker
does not offer a plausible deniability possibility contrary to
Veracrypt. A hard adversary has then no incentive in pursuing his
\quotation{enhanced} interrogation if you reveal the passphrase.

Normally, you should have installed Windows Pro in this case and the
BitLocker setup is quite straightforward.

Basically, you can follow the instructions here:
\useURL[url1419][https://support.microsoft.com/en-us/windows/turn-on-device-encryption-0c453637-bc88-5f74-5105-741561aae838]\from[url1419]
\useURL[url1420][https://web.archive.org/web/https://support.microsoft.com/en-us/windows/turn-on-device-encryption-0c453637-bc88-5f74-5105-741561aae838][][{[}Archive.org{]}]\from[url1420]

But here are the steps:

\startitemize
\item
  Click the Windows Menu
\item
  Type \quotation{Bitlocker}
\item
  Click \quotation{Manage Bitlocker}
\item
  Click \quotation{Turn on Bitlocker} on your System Drive
\item
  Follow the instructions

  \startitemize
  \item
    {\bf Do not save your recovery key to a Microsoft Account if
    prompted.}
  \item
    {\bf Only save the recovery key to an external encrypted drive. To
    bypass this, print the recovery key using the Microsoft Print to PDF
    printer and save the key within the Documents folder. Delete that
    file later.}
  \item
    {\bf Encrypt Entire Drive (do not encrypt the used disk space
    only).}
  \item
    {\bf Use \quotation{New Encryption Mode}}
  \item
    {\bf Run the BitLocker Check}
  \item
    {\bf Reboot}
  \stopitemize
\item
  Encryption should now be started in the background (you can check by
  clicking the Bitlocker icon on the lower right side of the taskbar).
\stopitemize

Unfortunately, this is not enough. With this setup, your Bitlocker key
can just be stored as-is in the TPM chip of your computer. This is
rather problematic as the key can be extracted in some cases with
ease\footnote{Dolos Group, From Stolen Laptop to Inside the Company
  Network
  \useURL[url1421][https://dolosgroup.io/blog/2021/7/9/from-stolen-laptop-to-inside-the-company-network]\from[url1421]
  \useURL[url1422][https://web.archive.org/web/https://dolosgroup.io/blog/2021/7/9/from-stolen-laptop-to-inside-the-company-network][][{[}Archive.org{]}]\from[url1422]}\quote{\footnote{Trammell
  Hudson's Projects, Understanding TPM Sniffing Attacks
  \useURL[url1423][https://trmm.net/tpm-sniffing/]\from[url1423]
  \useURL[url1424][https://web.archive.org/web/https://trmm.net/tpm-sniffing/][][{[}Archive.org{]}]\from[url1424]}}\footnote{Jon
  Aubrey, attacking laptops that are protected by Microsoft Bitlocker
  drive encryption
  \useURL[url1425][https://twitter.com/SecurityJon/status/1445020885472235524]\from[url1425]
  \useURL[url1426][https://nitter.net/SecurityJon/status/1445020885472235524][][{[}Nitter{]}]\from[url1426]}'\footnote{F-Secure
  Labs, Sniff, there leaks my BitLocker key
  \useURL[url1427][https://labs.f-secure.com/blog/sniff-there-leaks-my-bitlocker-key/]\from[url1427]
  \useURL[url1428][https://web.archive.org/web/https://labs.f-secure.com/blog/sniff-there-leaks-my-bitlocker-key/][][{[}Archive.org{]}]\from[url1428]}.

To mitigate this, you will have to enable a few more options as per the
recommendations of Microsoft\footnote{Microsoft, BitLocker
  Countermeasures, Attacker countermeasures
  \useURL[url1429][https://docs.microsoft.com/en-us/windows/security/information-protection/bitlocker/bitlocker-countermeasures]\from[url1429]
  \useURL[url1430][https://web.archive.org/web/https://docs.microsoft.com/en-us/windows/security/information-protection/bitlocker/bitlocker-countermeasures][][{[}Archive.org{]}]\from[url1430]}:

\startitemize
\item
  Click the Windows icon
\item
  Type Run
\item
  Type \quotation{gpedit.msc} (this is the group policy editor)
\item
  Navigate to Computer Configuration > Administrative Templates >
  Windows Components > BitLocker > Operating System Drives

  \startitemize
  \item
    Double Click the \quotation{Require Additional Authentication at
    Startup}

    \startitemize[packed]
    \item
      Click the \quotation{Configure TPM Startup PIN} and set it to
      \quotation{Require Startup PIN with TPM}
    \stopitemize
  \item
    Double Click the \quotation{Allow enhanced PINs for startup}

    \startitemize[packed]
    \item
      Click the \quotation{Enable} (this will allow us to set a password
      rather than a PIN)
    \stopitemize
  \stopitemize
\item
  Close the Group Policy Editor
\item
  Click the Windows icon
\item
  Type Command to display the \quotation{Command Prompt}
\item
  Right Click on it and click \quotation{Run as Administrator}
\item
  Run \type{manage-bde -protectors -delete c:} (this will delete current
  protection: the recovery key you will not need)
\item
  Run \type{manage-bde -protectors -add c: -TPMAndPIN} (this will prompt
  you for a pre-boot password)

  \startitemize[packed]
  \item
    Enter a password or passphrase of your choice (a good one)
  \stopitemize
\item
  Run \type{manage-bde -status}

  \startitemize[packed]
  \item
    You should now see at your C: drive below \quotation{Key Protectors}
    the option \quotation{TPM and PIN}
  \stopitemize
\item
  You are done
\stopitemize

Now when you reboot your computer, you should ideally be prompted for:

\startitemize
\item
  A BIOS/UEFI boot password
\item
  An SSD/HDD unlock password (if the feature is available on your BIOS)
\item
  A Bitlocker Pre-Boot Pin Screen where you need to enter the
  password/passphrase you just set-up
\item
  And finally, the Windows Logon Screen where you can enter the
  credentials you set-up earlier
\stopitemize

\subsubsubsubsection[title={Enable Hibernation
(optional):},reference={enable-hibernation-optional}]

Again, as explained earlier. You should never use the sleep/stand-by
feature to mitigate some cold-boot and evil-maid attacks. Instead, you
should Shut down or hibernate. You should therefore switch your laptop
from sleeping to hibernating when closing the lid or when your laptop
goes to sleep.

({\bf Note that you cannot enable hibernation if you previously enabled
RAM encryption within Veracrypt)}

The reason is that Hibernation will actually shut down your laptop
completely and clean the memory. Sleep on the other hand will leave the
memory powered on (including your decryption key) and could leave your
laptop vulnerable to cold-boot attacks.

By default, Windows 10/11 might not offer you this possibility so you
should enable it by following this Microsoft tutorial:
\useURL[url1431][https://docs.microsoft.com/en-us/troubleshoot/windows-client/deployment/disable-and-re-enable-hibernation]\from[url1431]
\useURL[url1432][https://web.archive.org/web/https://docs.microsoft.com/en-us/troubleshoot/windows-client/deployment/disable-and-re-enable-hibernation][][{[}Archive.org{]}]\from[url1432]

\startitemize
\item
  Open an administrator command prompt (right-click on Command Prompt
  and \quotation{Run as Administrator})
\item
  Run: powercfg.exe /hibernate on
\item
  Now run the additional command: \type{**powercfg /h /type full**}

  \startitemize[packed]
  \item
    {\bf This command will make sure your hibernate mode is full and
    will fully clean the memory (not securely tho).}
  \stopitemize
\stopitemize

After that you should go into your power settings:

\startitemize
\item
  Open the Control Panel
\item
  Open System & Security
\item
  Open Power Options
\item
  Open \quotation{Choose what the power button does}
\item
  Change everything from sleep to hibernate or shutdown
\item
  Go back to the Power Options
\item
  Select Change Plan Settings
\item
  Select Advanced Power Settings
\item
  Change all the Sleep Values for each Power Plan to 0 (Never)
\item
  Make sure Hybrid Sleep is Off for each Power Plan
\item
  Enable Hibernate After the time you would like
\item
  Disable all the Wake timers
\stopitemize

\subsubsubsection[title={Deciding which sub-route you will
take:},reference={deciding-which-sub-route-you-will-take}]

Now you will have to pick your next step between two options:

\startitemize
\item
  Route A: Simple encryption of your current OS

  \startitemize
  \item
    Pros:

    \startitemize
    \item
      Does not require you to wipe your laptop
    \item
      No issue with local data leaks
    \item
      Works fine with an SSD drive
    \item
      Works with any OS
    \item
      Simple
    \stopitemize
  \item
    Cons:

    \startitemize
    \item
      You could be compelled by an adversary to reveal your password and
      all your secrets and will have no plausible deniability.
    \item
      The danger of Online data leaks
    \stopitemize
  \stopitemize
\item
  Route B: Simple encryption of your current OS with later use of
  plausible deniability on files themselves:

  \startitemize
  \item
    Pros:

    \startitemize
    \item
      Does not require you to wipe your laptop
    \item
      Works fine with an SSD drive
    \item
      Works with any OS
    \item
      Plausible deniability is possible with \quotation{soft}
      adversaries
    \stopitemize
  \item
    Cons:

    \startitemize
    \item
      The danger of Online Data leaks
    \item
      The danger of Local Data leaks (that will lead to more work to
      clean up those leaks)
    \stopitemize
  \stopitemize
\item
  Route C: Plausible Deniability Encryption of your Operating system
  (you will have a \quotation{hidden OS} and a \quotation{decoy OS}
  running on the laptop):

  \startitemize
  \item
    Pros:

    \startitemize
    \item
      No issues with local Data leaks
    \item
      Plausible deniability is possible with \quotation{soft}
      adversaries
    \stopitemize
  \item
    Cons:

    \startitemize
    \item
      Requires Windows (this feature is not \quotation{easily} supported
      on Linux).
    \item
      The danger of online Data leaks
    \item
      Requires full wipe of your laptop
    \item
      No use with an SSD drive due to the requirement of disabling
      Trim\footnote{Wikipedia, Trim
        \useURL[url1433][https://en.wikipedia.org/wiki/Trim_(computing)]\from[url1433]
        \useURL[url1434][https://wikiless.org/wiki/Trim_(computing)][][{[}Wikiless{]}]\from[url1434]
        \useURL[url1435][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trim_(computing)][][{[}Archive.org{]}]\from[url1435]}
      Operations\footnote{Veracrypt Documentation, Trim Operations
        \useURL[url1436][https://www.veracrypt.fr/en/Trim\%20Operation.html][][https://www.veracrypt.fr/en/Trim\letterpercent{}20Operation.html]\from[url1436]
        \useURL[url1437][https://web.archive.org/web/https://www.veracrypt.fr/en/Trim\%20Operation.html][][{[}Archive.org{]}]\from[url1437]}.
      This will severely degrade the performance/health of your SSD
      drive over time.
    \stopitemize
  \stopitemize
\stopitemize

{\bf As you can see, Route C only offers two privacy advantages over the
others, and it will only be of use against a soft lawful adversary.
Remember
\useURL[url1438][https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis]\from[url1438]}
\useURL[url1439][https://wikiless.org/wiki/Rubber-hose_cryptanalysis][][{[}Wikiless{]}]\from[url1439]
\useURL[url1440][https://web.archive.org/web/https://en.wikipedia.org/wiki/Rubber-hose_cryptanalysis][][{[}Archive.org{]}]\from[url1440]{\bf .}

Deciding which route you will take is up to you. Route A is a minimum.

{\bf Always be sure to check for new versions of Veracrypt frequently to
ensure you benefit from the latest patches. Especially check this before
applying large Windows updates that might break the Veracrypt bootloader
and send you into a boot loop.}

{\bf NOTE THAT BY DEFAULT VERACRYPT WILL ALWAYS PROPOSE A SYSTEM
PASSWORD IN QWERTY (display the password as a test). This can cause
issues if your boot input is using your laptop's keyboard (AZERTY for
example) as you will have set up your password in QWERTY and will input
it at boot time in AZERTY. So, make sure you check when doing the test
boot what keyboard layout your BIOS is using. You could fail to log in
just because of the QWERTY/AZERTY mix-up. If your BIOS boots using
AZERTY, you will need to type the password in QWERTY within Veracrypt.}

\subsubsubsubsection[title={Route A and B: Simple Encryption using
Veracrypt (Windows
tutorial)},reference={route-a-and-b-simple-encryption-using-veracrypt-windows-tutorial}]

{\bf Skip this step if you used BitLocker instead earlier.}

You do not have to have an HDD for this method, and you do not need to
disable Trim on this route. Trim leaks will only be of use to forensics
in detecting the presence of a Hidden Volume but will not be of much use
otherwise.

This route is rather straightforward and will just encrypt your current
Operating System in place without losing any data. Be sure to read all
the texts Veracrypt is showing you, so you have a full understanding of
what is going on. Here are the steps:

\startitemize
\item
  Launch VeraCrypt
\item
  Go into Settings:

  \startitemize
  \item
    Settings > Performance/driver options > Encrypt RAM
  \item
    System > Settings > Security > Clear keys from memory if a new
    device is inserted
  \item
    System > Settings > Windows > Enable Secure Desktop
  \stopitemize
\item
  Select System
\item
  Select Encrypt System Partition/Drive
\item
  Select Normal (Simple)
\item
  Select Single-Boot
\item
  Select AES as encryption Algorithm (click the test button if you want
  to compare the speeds)
\item
  Select SHA-512 as hash Algorithm (because why not)
\item
  Enter a strong passphrase (longer the better, remember \goto{Appendix
  A2: Guidelines for passwords and
  passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases])
\item
  Collect some entropy by randomly moving your cursor around until the
  bar is full
\item
  Click Next as the Generated Keys screen
\item
  To rescue disk\footnote{Veracrypt Documentation, Rescue Disk
    \useURL[url1441][https://www.veracrypt.fr/en/VeraCrypt\%20Rescue\%20Disk.html][][https://www.veracrypt.fr/en/VeraCrypt\letterpercent{}20Rescue\letterpercent{}20Disk.html]\from[url1441]
    \useURL[url1442][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Rescue\%20Disk.html][][{[}Archive.org{]}]\from[url1442]}
  or not rescue disk, well that is up to you. We recommend making one
  (just in case), just make sure to store it outside your encrypted
  drive (USB key for instance or wait and see the end of this guide for
  guidance on safe backups). This rescue disk will not store your
  passphrase and you will still need it to use it.
\item
  Wipe mode:

  \startitemize
  \item
    If you have no sensitive data yet on this laptop, select None
  \item
    If you have sensitive data on an SSD, Trim alone should take care of
    it\footnote{St Cloud State University, Forensic Research on Solid
      State Drives using Trim Analysis
      \useURL[url1443][https://web.archive.org//web/20220612095503/https://repository.stcloudstate.edu/cgi/viewcontent.cgi?article=1141&context=msia_etds]\from[url1443]
      \useURL[url1444][https://web.archive.org/web/20211009021236/https://repository.stcloudstate.edu/cgi/viewcontent.cgi?article=1141&context=msia_etds][][{[}Archive.org{]}]\from[url1444]}
    but we would recommend one pass (random data) just to be sure.
  \item
    If you have sensitive data on an HDD, there is no Trim, and we
    Swould recommend at least 1-pass.
  \stopitemize
\item
  Test your setup. Veracrypt will now reboot your system to test the
  bootloader before encryption. This test must pass for encryption to go
  forward.
\item
  After your computer rebooted and the test is passed. You will be
  prompted by Veracrypt to start the encryption process.
\item
  Start the encryption and wait for it to complete.
\item
  You are done, skip Route B and go to the next steps.
\stopitemize

There will be another section on creating encrypted file containers with
Plausible Deniability on Windows.

\subsubsubsubsection[title={Route B: Plausible Deniability Encryption
with a Hidden OS (Windows
only)},reference={route-b-plausible-deniability-encryption-with-a-hidden-os-windows-only}]

{\bf This is only supported on Windows.}

{\bf This is only recommended on an HDD drive. This is not recommended
on an SSD drive.}

{\bf Your Hidden OS should not be activated (with an MS product key).
Therefore, this route will recommend and guide you through a full clean
installation that will wipe everything on your laptop.}

Read the Veracrypt Documentation
\useURL[url1445][https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][https://www.veracrypt.fr/en/VeraCrypt\letterpercent{}20Hidden\letterpercent{}20Operating\letterpercent{}20System.html]\from[url1445]
\useURL[url1446][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][{[}Archive.org{]}]\from[url1446]
(Process of Creation of Hidden Operating System part) and
\useURL[url1447][https://www.veracrypt.fr/en/Security\%20Requirements\%20for\%20Hidden\%20Volumes.html][][https://www.veracrypt.fr/en/Security\letterpercent{}20Requirements\letterpercent{}20for\letterpercent{}20Hidden\letterpercent{}20Volumes.html]\from[url1447]
\useURL[url1448][https://web.archive.org/web/https://www.veracrypt.fr/en/Security\%20Requirements\%20for\%20Hidden\%20Volumes.html][][{[}Archive.org{]}]\from[url1448]
(Security Requirements and Precautions Pertaining to Hidden Volumes).

This is how your system will look after this process is done:

\placefigure{image22}{\externalfigure[./tex2pdf.-1a34188c73046814/4f7142de5d77f6ca1331e5447ea064a93b94e87c.png]}

(Illustration from Veracrypt Documentation,
\useURL[url1449][https://veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][https://veracrypt.fr/en/VeraCrypt\letterpercent{}20Hidden\letterpercent{}20Operating\letterpercent{}20System.html]\from[url1449]
\useURL[url1450][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][{[}Archive.org{]}]\from[url1450])

As you can see this process requires you to have two partitions on your
hard drive from the start.

This process will do the following:

\startitemize
\item
  Encrypt your second partition (the outer volume) that will look like
  an empty unformatted disk from the decoy OS.
\item
  Prompt you with the opportunity to copy some decoy content within the
  outer volume.

  \startitemize[packed]
  \item
    This is where you will copy your decoy Anime/Porn collection from
    some external hard drive to the outer volume.
  \stopitemize
\item
  Create a hidden volume within the outer volume of that second
  partition. This is where the hidden OS will reside.
\item
  Clone your currently running Windows 10/11 installation onto the
  hidden volume.
\item
  Wipe your currently running Windows 10/11.
\item
  This means that your current Windows 10/11 will become the hidden
  Windows 10/11 and that you will need to reinstall a fresh decoy
  Windows 10/11 OS.
\stopitemize

{\bf Mandatory if you have an SSD drive and you still want to do this
against the recommendation: Disable SSD Trim in Windows}\footnote{WindowsCentral,
  Trim Tutorial
  \useURL[url1451][https://www.windowscentral.com/how-ensure-trim-enabled-windows-10-speed-ssd-performance]\from[url1451]
  \useURL[url1452][https://web.archive.org/web/https://www.windowscentral.com/how-ensure-trim-enabled-windows-10-speed-ssd-performance][][{[}Archive.org{]}]\from[url1452]}
{\bf (again this is NOT recommended at all as} {\bf disabling Trim in
itself is highly suspicious}). {\bf Also} {\bf as mentioned earlier,
disabling Trim will reduce the lifetime of your SSD drive and will
significantly impact its performance over time (your laptop will become
slower and slower over several months of use until it becomes almost
unusable, you will then have to clean the drive and re-install
everything). But you must do it to prevent data leaks}\footnote{Veracrypt
  Documentation, Trim Operation
  \useURL[url1453][https://veracrypt.eu/en/docs/trim-operation/]\from[url1453]
  \useURL[url1454][https://web.archive.org/web/https://veracrypt.eu/en/docs/trim-operation/][][{[}Archive.org{]}]\from[url1454]}
{\bf that could allow forensics to defeat your plausible
deniability}\footnote{Black Hat 2018, Perfectly Deniable Steganographic
  Disk Encryption
  \useURL[url1455][https://i.blackhat.com/eu-18/Thu-Dec-6/eu-18-Schaub-Perfectly-Deniable-Steganographic-Disk-Encryption.pdf]\from[url1455]
  \useURL[url1456][https://web.archive.org/web/https://i.blackhat.com/eu-18/Thu-Dec-6/eu-18-Schaub-Perfectly-Deniable-Steganographic-Disk-Encryption.pdf][][{[}Archive.org{]}]\from[url1456]}\footnote{Milan
  Broz's Blog, TRIM & dm-crypt \ldots{} problems?
  \useURL[url1457][http://asalor.blogspot.com/2011/08/trim-dm-crypt-problems.html]\from[url1457]
  \useURL[url1458][https://web.archive.org/web/http://asalor.blogspot.com/2011/08/trim-dm-crypt-problems.html][][{[}Archive.org{]}]\from[url1458]}{\bf .
The only way around this at the moment is to have a laptop with a
classic HDD drive instead.}

\subsubsubsubsubsection[title={Step 1: Create a Windows 10/11 install
USB key},reference={step-1-create-a-windows-1011-install-usb-key}]

See {[}Appendix C: Windows Installation Media Creation{]}{[}306{]} and
go with the USB key route.

\subsubsubsubsubsection[title={Step 2: Boot the USB key and start the
Windows 10/11 install process (Hidden
OS)},reference={step-2-boot-the-usb-key-and-start-the-windows-1011-install-process-hidden-os}]

\startitemize
\item
  Insert the USB key into your laptop
\item
  See \goto{Appendix A: Windows
  Installation}[appendix-a-windows-installation] and proceed with
  installing Windows 10/11 Home.
\stopitemize

\subsubsubsubsubsection[title={Step 3: Privacy Settings (Hidden
OS)},reference={step-3-privacy-settings-hidden-os}]

See \goto{Appendix B: Windows Additional Privacy
Settings}[appendix-b-windows-additional-privacy-settings]

\subsubsubsubsubsection[title={Step 4: Veracrypt installation and
encryption process start (Hidden
OS)},reference={step-4-veracrypt-installation-and-encryption-process-start-hidden-os}]

Remember to read
\useURL[url1459][https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][https://www.veracrypt.fr/en/VeraCrypt\letterpercent{}20Hidden\letterpercent{}20Operating\letterpercent{}20System.html]\from[url1459]
\useURL[url1460][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][{[}Archive.org{]}]\from[url1460]

Do not connect this OS to your known Wi-Fi. You should download the
Veracrypt installer from a different computer and copy the installer
here using a USB key. Here are the steps:

\startitemize
\item
  Install Veracrypt
\item
  Start Veracrypt
\item
  Go into Settings:

  \startitemize
  \item
    Settings > Performance/driver options > Encrypt RAM ({\bf note that
    this option is not compatible with Hibernation your laptop and means
    you will have to shut down completely)}
  \item
    System > Settings > Security > Clear keys from memory if a new
    device is inserted
  \item
    System > Settings > Windows > Enable Secure Desktop
  \stopitemize
\item
  Go into System and select Create Hidden Operating System
\item
  Read all the prompts thoroughly
\item
  Select Single-Boot if prompted
\item
  Create the Outer Volume using AES and SHA-512.
\item
  Use all the space available on the second partition for the Outer
  Volume
\item
  Use a strong passphrase (remember \goto{Appendix A2: Guidelines for
  passwords and
  passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases])
\item
  Select yes to Large Files
\item
  Create some Entropy by moving the mouse around until the bar is full
  and select NTFS (do not select exFAT as you want this outer volume to
  look \quotation{normal} and NTFS is normal).
\item
  Format the Outer Volume
\item
  Open Outer Volume:

  \startitemize
  \item
    At this stage, you should copy decoy data onto the outer volume. So,
    you should have some sensitive but not so sensitive files/folders to
    copy there. In case you need to reveal a password to this
    Volume{\bf .} This is a good place for your Anime/Mp3/Movies/Porn
    collection.
  \item
    We recommend you do not fill the outer volume too much or too little
    (about 40\letterpercent{}). Remember you must leave enough space for
    the Hidden OS (which will be the same size as the first partition
    you created during installation).
  \stopitemize
\item
  Use a strong passphrase for the Hidden Volume (obviously a different
  one than the one for the Outer Volume).
\item
  Now you will create the Hidden Volume, select AES and SHA-512
\item
  Fill the entropy bar until the end with random mouse movements
\item
  Format the hidden Volume
\item
  Proceed with the Cloning
\item
  Veracrypt will now restart and Clone the Windows where you started
  this process into the Hidden Volume. This Windows will become your
  Hidden OS.
\item
  When the cloning is complete, Veracrypt will restart within the Hidden
  System
\item
  Veracrypt will inform you that the Hidden System is now installed and
  then prompt you to wipe the Original OS (the one you installed
  previously with the USB key).
\item
  Use 1-Pass Wipe and proceed.
\item
  Now your Hidden OS will be installed, proceed to the next step
\stopitemize

\subsubsubsubsubsection[title={Step 5: Reboot and boot the USB key and
start the Windows 10/11 install process again (Decoy
OS)},reference={step-5-reboot-and-boot-the-usb-key-and-start-the-windows-1011-install-process-again-decoy-os}]

Now that the Hidden OS is fully installed, you will need to install a
Decoy OS:

\startitemize
\item
  Insert the USB key into your laptop
\item
  See \goto{Appendix A: Windows
  Installation}[appendix-a-windows-installation] and proceed with
  installing Windows 10/11 Home again (do not install a different
  version and stick with Home).
\stopitemize

\subsubsubsubsubsection[title={Step 6: Privacy settings (Decoy
OS)},reference={step-6-privacy-settings-decoy-os}]

See \goto{Appendix B: Windows Additional Privacy
Settings}[appendix-b-windows-additional-privacy-settings]

\subsubsubsubsubsection[title={Step 7: Veracrypt installation and
encryption process start (Decoy
OS)},reference={step-7-veracrypt-installation-and-encryption-process-start-decoy-os}]

Now you will encrypt the Decoy OS:

\startitemize
\item
  Install Veracrypt
\item
  Launch VeraCrypt
\item
  Select System
\item
  Select Encrypt System Partition/Drive
\item
  Select Normal (Simple)
\item
  Select Single-Boot
\item
  Select AES as encryption Algorithm (click the test button if you want
  to compare the speeds)
\item
  Select SHA-512 as hash Algorithm (because why not)
\item
  Enter a short weak password (yes this is serious, do it, it will be
  explained later).
\item
  Collect some entropy by randomly moving your cursor around until the
  bar is full
\item
  Click Next as the Generated Keys screen
\item
  To rescue disk\footnote{Veracrypt Documentation, Rescue Disk
    \useURL[url1461][https://www.veracrypt.fr/en/VeraCrypt\%20Rescue\%20Disk.html][][https://www.veracrypt.fr/en/VeraCrypt\letterpercent{}20Rescue\letterpercent{}20Disk.html]\from[url1461]
    \useURL[url1462][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Rescue\%20Disk.html][][{[}Archive.org{]}]\from[url1462]}
  or not rescue disk, well that is up to you. We recommend making one
  (just in case), just make sure to store it outside your encrypted
  drive (USB key for instance or wait and see the end of this guide for
  guidance on safe backups). This rescue disk will not store your
  passphrase and you will still need it to use it.
\item
  Wipe mode: Select 1-Pass just to be safe
\item
  Pre-Test your setup. Veracrypt will now reboot your system to test the
  bootloader before encryption. This test must pass for encryption to go
  forward.
\item
  After your computer rebooted and the test is passed. You will be
  prompted by Veracrypt to start the encryption process.
\item
  Start the encryption and wait for it to complete.
\item
  Your Decoy OS is now ready for use.
\stopitemize

\subsubsubsubsubsection[title={Step 8: Test your setup (Boot in
Both)},reference={step-8-test-your-setup-boot-in-both}]

Time to test your setup:

\startitemize
\item
  Reboot and input your Hidden OS passphrase, you should boot within the
  Hidden OS.
\item
  Reboot and input your Decoy OS passphrase, you should boot within the
  Decoy OS.
\item
  Launch Veracrypt on the Decoy OS and mount the second partition using
  the Outer Volume Passphrase (mount it as read-only, by going into
  Mount Options and Selecting Read-Only) and it should mount the second
  partition as a read-only displaying your decoy data (your Anime/Porn
  collection). You are mounting it as read-only now because if you were
  to write data on it, you could override content from your Hidden OS.
\stopitemize

\subsubsubsubsubsection[title={Step 9: Changing the decoy data on your
Outer Volume
safely},reference={step-9-changing-the-decoy-data-on-your-outer-volume-safely}]

Before going to the next step, you should learn the way to mount your
Outer Volume safely for writing content on it. This is also explained in
this official Veracrypt Documentation
\useURL[url1463][https://www.veracrypt.fr/en/Protection\%20of\%20Hidden\%20Volumes.html][][https://www.veracrypt.fr/en/Protection\letterpercent{}20of\letterpercent{}20Hidden\letterpercent{}20Volumes.html]\from[url1463]
\useURL[url1464][https://web.archive.org/web/https://www.veracrypt.fr/en/Protection\%20of\%20Hidden\%20Volumes.html][][{[}Archive.org{]}]\from[url1464]

{\bf You should do this from a safe, trusted space.}

Basically, you are going to mount your Outer Volume while also providing
the Hidden Volume passphrase within the Mount Options to protect the
Hidden Volume from being overwritten:

\startitemize
\item
  Open Veracrypt
\item
  Select your Second Partition
\item
  Click Mount
\item
  Click Mount Options
\item
  Check the \quotation{Protect the Hidden volume\ldots{}} Option
\item
  Enter the Hidden OS passphrase
\item
  Click OK
\item
  Enter your Outer Volume passphrase
\item
  Click OK
\item
  You should now be able to open and write to your Outer Volume to
  change the content (copy/move/delete/edit\ldots{})
\stopitemize

This operation will not actually mount the Hidden Volume and should
prevent the creation of any forensic evidence that could lead to the
discovery of the Hidden OS. However, while you are performing this
operation, both passwords will be stored in your RAM. You could still be
vulnerable to a Cold-Boot Attack. To mitigate this, be sure to have the
option to encrypt your RAM as instructed before.

\subsubsubsubsubsection[title={Step 10: Leave some forensics evidence of
your Outer Volume (with the decoy Data) within your Decoy
OS},reference={step-10-leave-some-forensics-evidence-of-your-outer-volume-with-the-decoy-data-within-your-decoy-os}]

We must make the Decoy OS as plausible as possible. We also want your
adversary to underestimate your intelligence.

It is important to voluntarily leave some forensic evidence of your
Decoy Content within your Decoy OS. This evidence will let forensic
examiners see that you mounted your Outer Volume frequently to access
its content.

Here are useful tips to leave some forensics evidence:

\startitemize
\item
  Play the content from the Outer Volume from your Decoy OS (using VLC
  for instance). Be sure to keep a history of those.
\item
  Edit documents and work on them.
\item
  Enable file indexing again on the Decoy OS and include the mounted
  Outer Volume.
\item
  Unmount it and mount it frequently to watch some content or move files
  around.
\item
  Copy some content from your Outer Volume to your Decoy OS and then
  delete it unsafely. Just put it in the Recycle Bin, which only someone
  who is naive would do, thinking it were deleted.
\item
  Have a Torrent Client installed on the Decoy OS; use it from time to
  time to download some similar stuff that you will leave on the Decoy
  OS.
\item
  You could have a VPN client installed on the Decoy OS with a known VPN
  of yours (non-cash paid).
\stopitemize

Do not put anything suspicious on the Decoy OS such as:

\startitemize
\item
  This guide
\item
  Any links to this guide
\item
  Any suspicious anonymity software such as Tor Browser
\item
  Any Veracrypt volumes
\item
  Any documents on anonymity or security
\stopitemize

The intention is to make your adversary believe you are not as smart as
they thought, to deter them from searching deeper.

\subsubsubsubsubsection[title={Notes:},reference={notes-1}]

{\bf Remember that you will need valid excuses for this plausible
deniability scenario to work:}

\startitemize
\item
  {\bf You are using Veracrypt because you are using Windows 10/11 Home,
  which do not feature Bitlocker, but you still wanted reasonable
  Privacy.}
\item
  {\bf You have two partitions because you wanted to separate the system
  from the data for easy organization, and because some geeky friend
  told you this was better for performance.}
\item
  {\bf You have used a weak password for easy convenient booting of the
  system and a strong, long passphrase on the Outer Volume. You were too
  lazy to type a strong passphrase at each boot.}
\item
  {\bf You encrypted the second partition with a different password than
  the system because you do not want anyone in your group/domain to see
  your stuff. You did not want that data available to anyone.}
\stopitemize

Take some time to read again the \quotation{Possible Explanations for
Existence of Two Veracrypt Partitions on Single Drive} of the Veracrypt
documentation here
\useURL[url1465][https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][https://www.veracrypt.fr/en/VeraCrypt\letterpercent{}20Hidden\letterpercent{}20Operating\letterpercent{}20System.html]\from[url1465]
\useURL[url1466][https://web.archive.org/web/https://www.veracrypt.fr/en/VeraCrypt\%20Hidden\%20Operating\%20System.html][][{[}Archive.org{]}]\from[url1466]

{\bf Be careful:}

\startitemize
\item
  {\bf You should never mount the Hidden Volume from the Decoy OS (NEVER
  EVER). If you did this, it would create forensic evidence of the
  Hidden Volume within the Decoy OS which could jeopardize your attempt
  at plausible deniability}. If you did this anyway (intentionally or by
  mistake) from the Decoy OS, there are ways to erase forensic evidence
  that will be explained later at the end of this guide, so this mistake
  alone isn't a huge deal if you follow the steps in \goto{Some
  additional measures against
  forensics}[some-additional-measures-against-forensics].
\item
  {\bf Never use the Decoy OS from the same network (public Wi-Fi) as
  the Hidden OS.}
\item
  {\bf When you do mount the Outer Volume from the Decoy OS, do not
  write any data within the Outer Volume. This could override what looks
  like empty space, but is in fact your Hidden OS. You should always
  mount it as read-only.}
\item
  {\bf If you want to change the decoy content of the Outer Volume, you
  should use a Live OS USB Key that will run Veracrypt.}
\item
  {\bf Note that you will not use the Hidden OS to perform sensitive
  activities, this will be done later from a VM within the Hidden OS.
  The Hidden OS is only meant to protect you from soft lawful
  adversaries that could gain access to your laptop and compel you to
  reveal your password.}
\item
  {\bf Be careful of any tampering with your laptop. Evil-Maid Attacks
  can reveal your Hidden OS.}
\stopitemize

\subsubsection[title={Virtualbox on your Host
OS:},reference={virtualbox-on-your-host-os}]

Remember \goto{Appendix W: Virtualization}[appendix-w-virtualization].

This step and the following steps should be done from within the Host
OS. This can either be your Host OS with simple encryption
(Windows/Linux/macOS) or your Hidden OS with plausible deniability
(Windows only).

In this route, you will make extensive use of the free Oracle
Virtualbox\footnote{Wikipedia, Virtualbox
  \useURL[url1467][https://en.wikipedia.org/wiki/VirtualBox]\from[url1467]
  \useURL[url1468][https://wikiless.org/wiki/VirtualBox][][{[}Wikiless{]}]\from[url1468]
  \useURL[url1469][https://web.archive.org/web/https://en.wikipedia.org/wiki/VirtualBox][][{[}Archive.org{]}]\from[url1469]}
software. This is a virtualization software in which you can create
Virtual Machines that emulate a computer running a specific OS (if you
want to use something else like Xen, Qemu, KVM, or VMWARE, feel free to
do so but this part of the guide covers Virtualbox only for
convenience).

So, you should be aware that Virtualbox is not the virtualization
software with the best track record in terms of security. Some of the
reported issues\footnote{VirtualBox Ticket 17987
  \useURL[url1470][https://www.virtualbox.org/ticket/17987]\from[url1470]
  \useURL[url1471][https://web.archive.org/web/https://www.virtualbox.org/ticket/17987][][{[}Archive.org{]}]\from[url1471]}
have not been completely fixed to date\footnote{Whonix Documentation,
  Spectre Meltdown
  \useURL[url1472][https://www.whonix.org/wiki/Spectre_Meltdown\#VirtualBox]\from[url1472]
  \useURL[url1473][https://web.archive.org/web/https://www.whonix.org/wiki/Spectre_Meltdown][][{[}Archive.org{]}]\from[url1473]}.
If you are using Linux, and you possess a bit more technical skill, you
should consider using KVM instead by following the guide available at
Whonix here
\useURL[url1474][https://www.whonix.org/wiki/KVM]\from[url1474]
\useURL[url1475][https://web.archive.org/web/https://www.whonix.org/wiki/KVM][][{[}Archive.org{]}]\from[url1475]
and here
\useURL[url1476][https://www.whonix.org/wiki/KVM\#Why_Use_KVM_Over_VirtualBox.3F]\from[url1476]
\useURL[url1477][https://web.archive.org/web/https://www.whonix.org/wiki/KVM\#Why_Use_KVM_Over_VirtualBox.3F][][{[}Archive.org{]}]\from[url1477]

Some steps should be taken in all cases:

{\bf All your sensitive activities will be done from within a guest
Virtual Machine running Windows 10/11 Pro (not Home this time), Linux,
or macOS.}

This has a few advantages that will help you remain anonymous:

\startitemize
\item
  It should prevent the guest VM OS (Windows/Linux/macOS), apps, and any
  telemetry within the VMs from accessing your hardware directly. Even
  if your VM is compromised by malware, the malware should not be able
  to access the Host OS and compromise your actual machine.
\item
  It will allow us to force all the network traffic from your VM to run
  through another Gateway VM that will direct all the traffic over the
  Tor Network. This is a network \quotation{kill switch}. Your VM will
  lose its network connectivity completely and go offline if the target
  network VM loses its connection to the Tor Network.
\item
  The VM itself, which only has internet connectivity through a Tor
  Network Gateway, will connect to your cash-paid VPN service through
  Tor.
\item
  DNS Leaks will be impossible because the VM is on an isolated network
  that must go through Tor no matter what.
\stopitemize

\subsubsection[title={Pick your connectivity
method:},reference={pick-your-connectivity-method}]

There are seven possibilities within this route:

\startitemize
\item
  {\bf Recommended and preferred:}

  \startitemize
  \item
    {\bf Use Tor alone (User > Tor > Internet)}
  \item
    {\bf Use VPN over Tor (User > Tor > VPN > Internet) in specific
    cases}
  \item
    {\bf Use a VPS with a self-hosted VPN/Proxy over Tor (User > Tor >
    Self-Hosted VPN/Proxy > Internet) in specific cases}
  \stopitemize
\item
  Possible if required by context:

  \startitemize
  \item
    Use VPN over Tor over VPN (User > VPN > Tor > VPN > Internet)
  \item
    Use Tor over VPN (User > VPN > Tor > Internet)
  \stopitemize
\item
  Not recommended and risky:

  \startitemize
  \item
    Use VPN alone (User > VPN > Internet)
  \item
    Use VPN over VPN (User > VPN > VPN > Internet)
  \stopitemize
\item
  {\bf Not recommended and highly risky (but possible)}

  \startitemize[packed]
  \item
    No VPN and no Tor (User > Internet)
  \stopitemize
\stopitemize

\placefigure{image23}{\externalfigure[./tex2pdf.-1a34188c73046814/ad5dac2a0c32b6db732493569d7134218c54534b.png]}

\subsubsubsection[title={Tor only:},reference={tor-only}]

This is the preferred and most recommended solution.

\placefigure{image24}{\externalfigure[./tex2pdf.-1a34188c73046814/4c5dddb8843b891eb249928e3907ff9878265a57.png]}

With this solution, all your network goes through Tor, and it should be
sufficient to guarantee your anonymity in most cases.

There is one main drawback tho: {\bf Some services block/ban Tor Exit
nodes outright and will not allow account creations from those.}

To mitigate this, you might have to consider the next option: VPN over
Tor but consider some risks associated with it explained in the next
section.

\subsubsubsection[title={VPN/Proxy over
Tor:},reference={vpnproxy-over-tor}]

This solution can bring some benefits in some specific cases vs using
Tor only where accessing the destination service would be impossible
from a Tor Exit node. This is because many services will just outright
ban, hinder, or block Tor Exit Nodes (see
\useURL[url1478][https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor]\from[url1478]
\useURL[url1479][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor][][{[}Archive.org{]}]\from[url1479]).

This solution can be achieved in two ways:

\startitemize
\item
  Paid VPN over Tor (easiest)
\item
  Paid Self-Hosted VPS configured as VPN/Proxy (most efficient in
  avoiding online obstacles such as captchas but requiring more skills
  with Linux)
\stopitemize

As you can see in this illustration, if your cash (preferred)/Monero
paid VPN/Proxy is compromised by an adversary (despite their privacy
statement and no-logging policies), they will only find an anonymous
cash/Monero paid VPN/Proxy account connecting to their services from a
Tor Exit node.

\placefigure{image25}{\externalfigure[./tex2pdf.-1a34188c73046814/4ccbbc189aa8cae0ea882310ecaeb4c1b3f6acb0.png]}

If an adversary somehow manages to compromise the Tor network too, they
will only reveal the IP of a random public Wi-Fi that is not tied to
your identity.

If an adversary somehow compromises your VM OS (with malware or an
exploit for instance), they will be trapped within the internal Network
of Whonix and should be unable to reveal the IP of the public Wi-Fi.

{\bf This solution however has one main drawback to consider:
Interference with Tor Stream Isolation}\footnote{Whonix Documentation,
  Stream Isolation
  \useURL[url1480][https://www.whonix.org/wiki/Stream_Isolation]\from[url1480]
  \useURL[url1481][https://web.archive.org/web/https://www.whonix.org/wiki/Stream_Isolation][][{[}Archive.org{]}]\from[url1481]}.

Stream isolation is a mitigation technique used to prevent some
correlation attacks by having different Tor Circuits for each
application. Here is an illustration to show what stream isolation is:

\placefigure{image26}{\externalfigure[./tex2pdf.-1a34188c73046814/a32a269c6ea46148dddc02bb954ddeb6e5805666.png]}

(Illustration from Marcelo Martins,
\useURL[url1482][https://stakey.club/en/decred-via-tor-network/]\from[url1482]
\useURL[url1483][https://web.archive.org/web/https://stakey.club/en/decred-via-tor-network/][][{[}Archive.org{]}]\from[url1483])

VPN/Proxy over Tor falls on the right-side\footnote{Whonix
  Documentation, Tunnels Comparison Table
  \useURL[url1484][https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table]\from[url1484]
  \useURL[url1485][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table][][{[}Archive.org{]}]\from[url1485]}
meaning using a VPN/Proxy over Tor forces Tor to use one circuit for all
activities instead of multiple circuits for each. This means that using
a VPN/Proxy over Tor can reduce the effectiveness of Tor in some cases
and should therefore be used only for some specific cases:

\startitemize
\item
  When your destination service does not allow Tor Exit nodes.
\item
  When you do not mind using a shared Tor circuit for various services.
  For instance, when using various authenticated services.
\stopitemize

{\bf You should however consider not using this method when your aim is
just to browse random various unauthenticated websites as you will not
benefit from Stream Isolation and this could make correlation attacks
easier over time for an adversary between each of your sessions (see
\goto{Your Anonymized Tor/VPN traffic}[your-anonymized-torvpn-traffic]).
If your goal however is to use the same identity at each session on the
same authenticated services, the value of Stream isolation is lessened
as you can be correlated through other means.}

You should also know that Stream Isolation is not necessarily configured
by default on Whonix Workstation. It is only pre-configured for some
applications (including Tor Browser).

Also, note that Stream Isolation does not necessarily change all the
nodes in your Tor circuit. It can sometimes only change one or two. In
many cases, Stream Isolation (for instance within the Tor Browser) will
only change the relay (middle) node and the exit node while keeping the
same guard (entry) node.

More information at:

\startitemize
\item
  \useURL[url1486][https://www.whonix.org/wiki/Stream_Isolation]\from[url1486]
  \useURL[url1487][https://web.archive.org/web/https://www.whonix.org/wiki/Stream_Isolation][][{[}Archive.org{]}]\from[url1487]
\item
  \useURL[url1488][https://tails.boum.org/contribute/design/stream_isolation/]\from[url1488]
  \useURL[url1489][https://web.archive.org/web/https://tails.boum.org/contribute/design/stream_isolation/][][{[}Archive.org{]}]\from[url1489]
\item
  \useURL[url1490][https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table]\from[url1490]
  \useURL[url1491][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table][][{[}Archive.org{]}]\from[url1491]
\stopitemize

\subsubsubsection[title={Tor over VPN:},reference={tor-over-vpn}]

You might be wondering: Well, what about using Tor over VPN instead of
VPN over Tor? Well, we would not necessarily recommend it:

\startitemize
\item
  Disadvantages:

  \startitemize
  \item
    Your VPN provider is just another ISP that will then know your
    origin IP and will be able to de-anonymize you if required. We do
    not trust them. We prefer a situation where your VPN provider does
    not know who you are. It does not add much in terms of anonymity.
  \item
    This would result in you connecting to various services using the IP
    of a Tor Exit Node which is banned/flagged in many places. It does
    not help in terms of convenience.
  \stopitemize
\item
  Advantages:

  \startitemize
  \item
    {\bf The main advantage is that if you are in a hostile environment
    where Tor access is impossible/dangerous/suspicious, but VPN is
    okay.}
  \item
    This method also does not break Tor Stream isolation.
  \item
    This also hides your Tor activities from your main ISP.
  \stopitemize
\stopitemize

Note, if you are having issues accessing the Tor Network due to
blocking/censorship, you could try using Tor Bridges. See \goto{Appendix
X: Using Tor bridges in hostile
environments}[appendix-x-using-tor-bridges-in-hostile-environments].

It is also possible to consider {\bf VPN over Tor over VPN (User > VPN >
Tor > VPN > Internet)} using two cash/Monero paid VPNs instead. This
means that you will connect the Host OS to a first VPN from your Public
Wi-Fi, then Whonix will connect to Tor, and finally, your VM will
connect to a second VPN over Tor over VPN (see
\useURL[url1492][https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor]\from[url1492]
\useURL[url1493][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor][][{[}Archive.org{]}]\from[url1493]).

This will of course have a significant performance impact and might be
quite slow, but Tor is necessary somewhere for achieving reasonable
anonymity.

Achieving this technically is easy within this route, you need two
separate anonymous VPN accounts and must connect to the first VPN from
the Host OS and follow the route.

Conclusion: Only do this if you think using Tor alone is
risky/impossible but VPNs are okay. Or just because you can and so why
not. This method will not lower your security/privacy/anonymity.

\subsubsubsection[title={VPN only:},reference={vpn-only}]

This route will not be explained nor recommended.

{\bf If you can use VPNs then you should be able to add a Tor layer over
it. And if you can use Tor, then you can add an anonymous VPN over Tor
to get the preferred solution.}

Just using a VPN or even a VPN over VPN makes no sense as those can be
traced back to you over time. One of the VPN providers will know your
real origin IP (even if it is in a safe public space) and even if you
add one over it, the second one will still know you were using that
other first VPN service. This will only slightly delay your
de-anonymization. Yes, it is an added layer \ldots{} but it is a
persistent centralized added layer, and you can be de-anonymized over
time. This is just chaining 3 ISPs that are all subject to lawful
requests.

For more info, please see the following references:

\startitemize
\item
  \useURL[url1494][https://www.whonix.org/wiki/Comparison_Of_Tor_with_CGI_Proxies,_Proxy_Chains,_and_VPN_Services\#Tor_and_VPN_Services_Comparison]\from[url1494]
  \useURL[url1495][https://web.archive.org/web/https://www.whonix.org/wiki/Comparison_Of_Tor_with_CGI_Proxies,_Proxy_Chains,_and_VPN_Services][][{[}Archive.org{]}]\from[url1495]
\item
  \useURL[url1496][https://www.whonix.org/wiki/Why_does_Whonix_use_Tor]\from[url1496]
  \useURL[url1497][https://web.archive.org/web/https://www.whonix.org/wiki/Why_does_Whonix_use_Tor][][{[}Archive.org{]}]\from[url1497]
\item
  \useURL[url1498][https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study]\from[url1498]
  \useURL[url1499][https://web.archive.org/web/https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study][][{[}Archive.org{]}]\from[url1499]
\item
  \useURL[url1500][https://gist.github.com/joepie91/5a9909939e6ce7d09e29\#file-vpn-md]\from[url1500]
  \useURL[url1501][https://web.archive.org/web/https://gist.github.com/joepie91/5a9909939e6ce7d09e29][][{[}Archive.org{]}]\from[url1501]
\item
  \useURL[url1502][https://schub.wtf/blog/2019/04/08/very-precarious-narrative.html]\from[url1502]
  \useURL[url1503][https://web.archive.org/web/https://schub.wtf/blog/2019/04/08/very-precarious-narrative.html][][{[}Archive.org{]}]\from[url1503]
\stopitemize

{\bf In the context of this guide, Tor is required somewhere to achieve
reasonable and safe anonymity and you should use it if you can.}

\subsubsubsection[title={No VPN/Tor:},reference={no-vpntor}]

If you cannot use VPN nor Tor where you are, you probably are in a very
hostile environment where surveillance and control are extremely high.

Just do not, it is not worth it and too risky. You can be de-anonymized
almost instantly by any motivated adversary that could get to your
physical location in a matter of minutes.

Do not forget to check back on \goto{Adversaries (threats)}[threats] and
\goto{Appendix S: Check your network for surveillance/censorship using
OONI}[appendix-s-check-your-network-for-surveillancecensorship-using-ooni].

If you have absolutely no other option and still want to do something,
see \goto{Appendix P: Accessing the internet as safely as possible when
Tor/VPN is not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
{\bf (at your own risk) and consider \goto{The Tails
route}[the-tor-browser-route] instead.}

\subsubsubsection[title={Conclusion:},reference={conclusion-1}]

\startplacetable[location=none]
\startxtable
\startxtablehead[head]
\startxrow
\startxcell[width={0.15\textwidth}] Connection Type \stopxcell
\startxcell[width={0.05\textwidth}] Anonymity \stopxcell
\startxcell[width={0.15\textwidth}] Ease of Access to online
resources \stopxcell
\startxcell[width={0.09\textwidth}] Tor Stream isolation \stopxcell
\startxcell[width={0.17\textwidth}] Safer where Tor is
suspicious/dangerous \stopxcell
\startxcell[width={0.05\textwidth}] Speed \stopxcell
\startxcell[width={0.11\textwidth}] Cost \stopxcell
\startxcell[width={0.21\textwidth}] Recommended \stopxcell
\stopxrow
\stopxtablehead
\startxtablebody[body]
\startxrow
\startxcell[width={0.15\textwidth}] Tor Alone \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Free} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Tor over VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good+} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed (Tor
inaccessible)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Tor over VPN over Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Best} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Poor} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN over Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed
(convenience)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Self-Hosted VPS VPN/Proxy over
Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Very Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed
(convenience)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN/Proxy over Tor over
VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Poor} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 100€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed (convenience and Tor
inaccessible)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN/Proxy Alone \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Bad} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf N/A} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf No.} \stopxcell
\stopxrow
\stopxtablebody
\startxtablefoot[foot]
\startxrow
\startxcell[width={0.15\textwidth}] No Tor and VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Bad} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Unknown} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf N/A} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 100€
(Antenna)} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf No.} \stopxcell
\stopxrow
\stopxtablefoot
\stopxtable
\stopplacetable

Unfortunately, using Tor alone will raise the suspicion of many
destinations' platforms. You will face many hurdles (captchas, errors,
difficulties signing up) if you only use Tor. In addition, using Tor
where you are could put you in trouble just for that. But Tor is still
the best solution for anonymity and must be somewhere for anonymity.

\startitemize
\item
  If you intend to create persistent shared and authenticated identities
  on various services where access from Tor is hard, we recommend the
  {\bf VPN over Tor} and {\bf VPS VPN/Proxy over Tor} options (or VPN
  over Tor over VPN if needed). It might be a bit less secure against
  correlation attacks due to breaking Tor Stream isolation but provides
  much better convenience in accessing online resources than just using
  Tor. It is an \quotation{acceptable} trade-off IMHP if you are careful
  enough with your identity.

  \startitemize[packed]
  \item
    {\bf Note: It is becoming more common that mainstream services and
    CDNS are also blocking or hindering VPN users with captchas and
    other various obstacles}. {\bf In that case, a self-hosted VPS with
    a VPN/Proxy over Tor is the best solution for this as having your
    own dedicated VPS guarantees you are the sole user of your IP and
    encounter little to no obstacles.} Consider a \goto{Self-hosted
    VPN/Proxy on a Monero/Cash-paid VPS (for users more familiar with
    Linux)}[self-hosted-vpnproxy-on-a-monerocash-paid-vps-for-users-more-familiar-with-linux]
    if you want the least amount of issues (this will be explained in
    the next section in more details).
  \stopitemize
\item
  If your intent however is just to browse random services anonymously
  without creating specific shared identities, using tor friendly
  services; or if you do not want to accept that trade-off in the
  earlier option. {\bf Then we recommend using the Tor Only route to
  keep the full benefits of Stream Isolation (or Tor over VPN if you
  need to).}
\item
  If cost is an issue, we recommend the Tor Only option if possible.
\item
  If both Tor and VPN access are impossible or dangerous then you have
  no choice but to rely on Public wi-fi safely. See \goto{Appendix P:
  Accessing the internet as safely as possible when Tor and VPNs are not
  an
  option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
\stopitemize

For more information, you can also see the discussions here that could
help decide yourself:

\startitemize
\item
  Tor Project:
  \useURL[url1504][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorPlusVPN]\from[url1504]
  \useURL[url1505][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorPlusVPN][][{[}Archive.org{]}]\from[url1505]
\item
  Tails Documentation:

  \startitemize
  \item
    \useURL[url1506][https://gitlab.tails.boum.org/tails/blueprints/-/wikis/vpn_support/]\from[url1506]
    \useURL[url1507][https://web.archive.org/web/https://gitlab.tails.boum.org/tails/blueprints/-/wikis/vpn_support/][][{[}Archive.org{]}]\from[url1507]
  \item
    \useURL[url1508][https://tails.boum.org/support/faq/index.en.html\#index20h2]\from[url1508]
    \useURL[url1509][https://web.archive.org/web/https://tails.boum.org/support/faq/index.en.html][][{[}Archive.org{]}]\from[url1509]
  \stopitemize
\item
  Whonix Documentation (in this order):

  \startitemize
  \item
    \useURL[url1510][https://www.whonix.org/wiki/Tunnels/Introduction]\from[url1510]
    \useURL[url1511][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction][][{[}Archive.org{]}]\from[url1511]
  \item
    \useURL[url1512][https://www.whonix.org/wiki/Tunnels/Connecting_to_Tor_before_a_VPN]\from[url1512]
    \useURL[url1513][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_Tor_before_a_VPN][][{[}Archive.org{]}]\from[url1513]
  \item
    \useURL[url1514][https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor]\from[url1514]
    \useURL[url1515][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor][][{[}Archive.org{]}]\from[url1515]
  \stopitemize
\item
  Some papers on the matter:

  \startitemize[packed]
  \item
    \useURL[url1516][https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study]\from[url1516]
    \useURL[url1517][https://web.archive.org/web/https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study][][{[}Archive.org{]}]\from[url1517]
  \stopitemize
\stopitemize

\subsubsection[title={Getting an anonymous
VPN/Proxy:},reference={getting-an-anonymous-vpnproxy}]

{\bf Skip this step if you want to use Tor only.}

See \goto{Appendix O: Getting an anonymous
VPN/Proxy}[appendix-o-getting-an-anonymous-vpnproxy]

\subsubsection[title={Whonix:},reference={whonix}]

{\bf Skip this step if you cannot use Tor.}

This route will use Virtualization and Whonix\footnote{Wikipedia, Whonix
  \useURL[url1518][https://en.wikipedia.org/wiki/Whonix]\from[url1518]
  \useURL[url1519][https://wikiless.org/wiki/Whonix][][{[}Wikiless{]}]\from[url1519]
  \useURL[url1520][https://web.archive.org/web/https://en.wikipedia.org/wiki/Whonix][][{[}Archive.org{]}]\from[url1520]}
as part of the anonymization process. Whonix is a Linux distribution
composed of two Virtual Machines:

\startitemize
\item
  The Whonix Workstation (this is a VM where you can conduct sensitive
  activities)
\item
  The Whonix Gateway (this VM will establish a connection to the Tor
  network and route all the network traffic from the Workstation through
  the Tor network).
\stopitemize

This guide will therefore propose two flavors of this route:

\startitemize[packed]
\item
  The Whonix only route where all traffic is routed through the Tor
  Network (Tor Only or Tor over VPN).
\stopitemize

\placefigure{image27}{\externalfigure[./tex2pdf.-1a34188c73046814/b966aa3e3d5aabca8c7865ad45c2585ac031fa87.png]}

\startitemize[packed]
\item
  A Whonix hybrid route where all traffic is routed through a cash
  (preferred)/Monero paid VPN over the Tor Network (VPN over Tor or VPN
  over Tor over VPN).
\stopitemize

\placefigure{image28}{\externalfigure[./tex2pdf.-1a34188c73046814/3519fa6fbdac01618e225d534c5918474bd78346.png]}

You will be able to decide which flavor to use based on my
recommendations. We recommend the second one as explained before.

Whonix is well maintained and has extensive and incredibly detailed
documentation.

\subsubsubsection[title={A note on Virtualbox
Snapshots:},reference={a-note-on-virtualbox-snapshots}]

Later, you will create and run several Virtual Machines within
Virtualbox for your sensitive activities. Virtualbox provides a feature
called \quotation{Snapshots}\footnote{Oracle Virtualbox Manual,
  Snapshots
  \useURL[url1521][https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/snapshots.html]\from[url1521]
  \useURL[url1522][https://web.archive.org/web/https://docs.oracle.com/en/virtualization/virtualbox/6.0/user/snapshots.html][][{[}Archive.org{]}]\from[url1522]}
that allow for saving the state of a VM at any point in time. If for any
reason later you want to go back to that state, you can restore that
snapshot at any moment.

{\bf I strongly recommend that you do make use of this feature by
creating a snapshot after the initial installation/update of each VM.
This snapshot should be done before its use for any sensitive/anonymous
activity.}

This will allow you to turn your VMs into a kind of disposable
\quotation{Live Operating Systems} (like Tails discussed earlier).
Meaning that you will be able to erase all the traces of your activities
within a VM by restoring a Snapshot to an earlier state. Of course, this
will not be \quotation{as good} as Tails (where everything is stored in
memory) as there might be traces of this activity left on your hard
disk. Forensics studies have shown the ability to recover data from a
reverted VM\footnote{Utica College, Forensic Recovery Of Evidence From
  Deleted Oracle Virtualbox Virtual Machines
  \useURL[url1523][https://web.archive.org/web/https://programs.online.utica.edu/sites/default/files/Neal_6_Gonnella_Forensic_Recovery_of_Evidence_from_Deleted_Oracle_VirtualBox_Virtual_Machine.pdf]\from[url1523]}.
Fortunately, there will be ways to remove those traces after the
deletion or reverting to an earlier snapshot. Such techniques will be
discussed in the \goto{Some additional measures against
forensics}[some-additional-measures-against-forensics] section of this
guide.

\subsubsubsection[title={Download Virtualbox and Whonix
utilities:},reference={download-virtualbox-and-whonix-utilities}]

You should download a few things within the host OS:

\startitemize
\item
  The latest version of the Virtualbox installer according to your Host
  OS
  \useURL[url1524][https://www.virtualbox.org/wiki/Downloads]\from[url1524]
  \useURL[url1525][https://web.archive.org/web/https://www.virtualbox.org/wiki/Downloads][][{[}Archive.org{]}]\from[url1525]
\item
  (Skip this if you cannot use Tor natively or through a VPN) The latest
  Whonix OVA file from
  \useURL[url1526][https://www.whonix.org/wiki/Download]\from[url1526]
  \useURL[url1527][https://web.archive.org/web/https://www.whonix.org/wiki/Download][][{[}Archive.org{]}]\from[url1527]
  according to your preference (Linux/Windows, with a Desktop interface
  XFCE for simplicity or only with the text-client for advanced users)
\stopitemize

This will conclude the preparations and you should now be ready to start
setting up the final environment that will protect your anonymity
online.

\subsubsubsection[title={Virtualbox Hardening
recommendations:},reference={virtualbox-hardening-recommendations}]

For ideal security, you should follow the recommendations provided here
for each Virtualbox Virtual Machine
\useURL[url1528][https://www.whonix.org/wiki/Virtualization_Platform_Security\#VirtualBox_Hardening]\from[url1528]
\useURL[url1529][https://web.archive.org/web/https://www.whonix.org/wiki/Virtualization_Platform_Security][][{[}Archive.org{]}]\from[url1529]
:

\startitemize
\item
  Disable Audio.
\item
  Do not enable Shared Folders.
\item
  Do not enable 2D acceleration. This one is done running the following
  command \type{VBoxManage modifyvm "vm-id" --accelerate2dvideo on|off}
\item
  Do not enable 3D acceleration.
\item
  Do not enable the Serial Port.
\item
  Remove the Floppy drive.
\item
  Remove the CD/DVD drive.
\item
  Do not enable the Remote Display server.
\item
  Enable PAE/NX (NX is a security feature).
\item
  Disable Advanced Configuration and Power Interface (ACPI). This one is
  done running the following command
  \type{VBoxManage modifyvm "vm-id" --acpi on|off}
\item
  Do not attach USB devices.
\item
  Disable the USB controller which is enabled by default. Set the
  Pointing Device to \quotation{PS/2 Mouse} or changes will revert.
\stopitemize

Finally, also follow this recommendation to desync the clock you are
your VM compared to your host OS
\useURL[url1530][https://www.whonix.org/wiki/Network_Time_Synchronization\#Spoof_the_Initial_Virtual_Hardware_Clock_Offset]\from[url1530]
\useURL[url1531][https://web.archive.org/web/https://www.whonix.org/wiki/Network_Time_Synchronization][][{[}Archive.org{]}]\from[url1531]

This offset should be within a 60000-millisecond range and should be
different for each VM and here are some examples (which can be later
applied to any VM):

\startitemize
\item
  \type{VBoxManage modifyvm "Whonix-Gateway-XFCE" --biossystemtimeoffset -35017}
\item
  \type{VBoxManage modifyvm "Whonix-Gateway-XFCE" --biossystemtimeoffset +27931}
\item
  \type{VBoxManage modifyvm "Whonix-Workstation-XFCE" --biossystemtimeoffset -35017}
\item
  \type{VBoxManage modifyvm "Whonix-Workstation-XFCE" --biossystemtimeoffset +27931}
\stopitemize

Also, consider applying these mitigations from VirtualBox to mitigate
Spectre\footnote{Wikipedia, Spectre
  \useURL[url1532][https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)]\from[url1532]
  \useURL[url1533][https://wikiless.org/wiki/Spectre_(security_vulnerability)][][{[}Wikiless{]}]\from[url1533]
  \useURL[url1534][https://web.archive.org/web/https://en.wikipedia.org/wiki/Spectre_(security_vulnerability)][][{[}Archive.org{]}]\from[url1534]}/Meltdown\footnote{Wikipedia,
  Meltdown
  \useURL[url1535][https://en.wikipedia.org/wiki/Meltdown_(security_vulnerability)]\from[url1535]
  \useURL[url1536][https://wikiless.org/wiki/Meltdown_(security_vulnerability)][][{[}Wikiless{]}]\from[url1536]
  \useURL[url1537][https://web.archive.org/web/https://en.wikipedia.org/wiki/Meltdown_(security_vulnerability)][][{[}Archive.org{]}]\from[url1537]}
vulnerabilities by running this command from the VirtualBox Program
Directory. All of these are described here:
\useURL[url1538][https://www.whonix.org/wiki/Spectre_Meltdown]\from[url1538]
\useURL[url1539][https://web.archive.org/web/https://www.whonix.org/wiki/Spectre_Meltdown][][{[}Archive.org{]}]\from[url1539]
(be aware these can impact severely the performance of your VMs but
should be done for best security).

Finally, consider the security advice from Virtualbox themselves here
\useURL[url1540][https://www.virtualbox.org/manual/ch13.html]\from[url1540]
\useURL[url1541][https://web.archive.org/web/https://www.virtualbox.org/manual/ch13.html][][{[}Archive.org{]}]\from[url1541]

\subsubsection[title={Tor over VPN:},reference={tor-over-vpn-1}]

{\bf Skip this step if you do not intend to use Tor over VPN and only
intend to use Tor or cannot.}

If you intend to use Tor over VPN for any reason. You first must
configure a VPN service on your host OS.

Remember that in this case, we recommend having two VPN accounts. Both
paid with cash/Monero (see \goto{Appendix O: Getting an anonymous
VPN/Proxy}[appendix-o-getting-an-anonymous-vpnproxy]). One will be used
in the Host OS for the first VPN connection. The other could be used in
the VM to achieve VPN over Tor over VPN (User > VPN > Tor > VPN).

If you intend to only use Tor over VPN, you only need one VPN account.

See \goto{Appendix R: Installing a VPN on your VM or Host
OS}[appendix-r-installing-a-vpn-on-your-vm-or-host-os] for instructions.

\subsubsection[title={Whonix Virtual
Machines:},reference={whonix-virtual-machines}]

{\bf Skip this step if you cannot use Tor.}

\startitemize
\item
  Start Virtualbox on your Host OS.
\item
  Import Whonix file Into Virtualbox following the instructions on
  \useURL[url1542][https://www.whonix.org/wiki/VirtualBox/XFCE]\from[url1542]
  \useURL[url1543][https://web.archive.org/web/https://www.whonix.org/wiki/VirtualBox/XFCE][][{[}Archive.org{]}]\from[url1543]
\item
  Start the Whonix VMs
\stopitemize

Remember at this stage that if you are having issues connecting to Tor
due to censorship or blocking, you should consider connecting using
Bridges as explained in this tutorial
\useURL[url1544][https://www.whonix.org/wiki/Bridges]\from[url1544]
\useURL[url1545][https://web.archive.org/web/https://www.whonix.org/wiki/Bridges][][{[}Archive.org{]}]\from[url1545].

\startitemize
\item
  Update the Whonix VMs by following the instructions on
  \useURL[url1546][https://www.whonix.org/wiki/Operating_System_Software_and_Updates\#Updates]\from[url1546]
  \useURL[url1547][https://web.archive.org/web/https://www.whonix.org/wiki/Operating_System_Software_and_Updates][][{[}Archive.org{]}]\from[url1547]
\item
  Shutdown the Whonix VMs
\item
  Take a snapshot of the updated Whonix VMs within Virtualbox (select a
  VM and click the Take Snapshot button). More on that later.
\item
  Go to the next step
\stopitemize

{\bf Important Note: You should also read these very good
recommendations over there
\useURL[url1548][https://www.whonix.org/wiki/DoNot]\from[url1548]}
\useURL[url1549][https://web.archive.org/web/https://www.whonix.org/wiki/DoNot][][{[}Archive.org{]}]\from[url1549]
{\bf as most of those principles will also apply to this guide. You
should also read their general documentation here
\useURL[url1550][https://www.whonix.org/wiki/Documentation]\from[url1550]}
\useURL[url1551][https://web.archive.org/web/https://www.whonix.org/wiki/Documentation][][{[}Archive.org{]}]\from[url1551]
{\bf which will also provide tons of advice like this guide.}

\subsubsection[title={Pick your guest workstation Virtual
Machine:},reference={pick-your-guest-workstation-virtual-machine}]

Using Whonix/Linux will require more skills on your side as these are
Linux distributions. You will also encounter more difficulties if you
intend to use specific software that might be harder to use on
Whonix/Linux. Setting up a VPN over Tor on Whonix will also be more
complicated than on Windows as well.

\subsubsubsection[title={If you can use
Tor:},reference={if-you-can-use-tor}]

You can decide if you prefer to conduct your sensitive activities from
the Whonix Workstation provided in the earlier section {\bf (highly
recommended)} or from a Custom VM that will use the Whonix Gateway like
the Whonix Workstation (less secure but might be required depending on
what you intend to do).

\subsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor}]

If you cannot use Tor, you can use a Custom VM of your choice that will
ideally use an anonymous VPN, if possible, to then connect to the Tor
network. Or you could go with the risky route: See \goto{Appendix P:
Accessing the internet as safely as possible when Tor and VPNs are not
an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\subsubsection[title={Linux Virtual Machine (Whonix or
Linux):},reference={linux-virtual-machine-whonix-or-linux}]

\subsubsubsection[title={Whonix Workstation {\bf (recommended and
preferred)}:},reference={whonix-workstation-recommended-and-preferred}]

{\bf Skip this step if you cannot use Tor.}

Just use the provided Whonix Workstation VM. {\bf It is the safest and
most secure way to go on this route.}

{\bf It is also the only VM that will provide Stream Isolation
pre-configured for most apps by default}\footnote{Whonix Documentation,
  Stream Isolation, By Settings
  \useURL[url1552][https://www.whonix.org/wiki/Stream_Isolation\#By_Settings]\from[url1552]
  \useURL[url1553][https://web.archive.org/web/https://www.whonix.org/wiki/Stream_Isolation\#By_Settings][][{[}Archive.org{]}]\from[url1553]}{\bf .}

If you want additional software on the Workstation (such as another
Browser), follow their guide here
\useURL[url1554][https://www.whonix.org/wiki/Install_Software]\from[url1554]
\useURL[url1555][https://web.archive.org/web/https://www.whonix.org/wiki/Install_Software][][{[}Archive.org{]}]\from[url1555]

Consider running Whonix in Live Mode if for extra malware protection,
See
\useURL[url1556][https://www.whonix.org/wiki/Anti-Forensics_Precautions]\from[url1556]
\useURL[url1557][https://web.archive.org/web/https://www.whonix.org/wiki/Anti-Forensics_Precautions][][{[}Archive.org{]}]\from[url1557]

Do not forget to apply the VM hardening recommendations here:
\goto{Virtualbox Hardening
recommendations}[virtualbox-hardening-recommendations].

Consider using AppArmor on your Whonix Workstations by following this
guide:
\useURL[url1558][https://www.whonix.org/wiki/AppArmor]\from[url1558]
\useURL[url1559][https://web.archive.org/web/https://www.whonix.org/wiki/AppArmor][][{[}Archive.org{]}]\from[url1559]

\subsubsubsection[title={Linux (any
distro):},reference={linux-any-distro}]

{\bf Be careful, any customization you make to the non-Whonix guest VMs
(keyboard layout, language, time zone, screen resolution, or other)
could be used to fingerprint your VMs later. See
\useURL[url1560][https://www.whonix.org/wiki/VM_Fingerprinting]\from[url1560]}
\useURL[url1561][https://web.archive.org/web/https://www.whonix.org/wiki/VM_Fingerprinting][][{[}Archive.org{]}]\from[url1561]

\subsubsubsubsection[title={If you can use Tor (natively or over a
VPN):},reference={if-you-can-use-tor-natively-or-over-a-vpn}]

Use the Linux Distro of your choice. We would recommend Ubuntu or Fedora
for convenience but any other would work too. Be sure to not enable any
telemetry.

Refer to this tutorial
\useURL[url1562][https://www.whonix.org/wiki/Other_Operating_Systems]\from[url1562]
\useURL[url1563][https://web.archive.org/web/https://www.whonix.org/wiki/Other_Operating_Systems][][{[}Archive.org{]}]\from[url1563]
for detailed instructions.

Consider hardening the VM as recommended in \goto{Hardening
Linux}[hardening-linux].

\subsubsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-1}]

Use the Linux Distro of your choice. We would recommend Ubuntu or Fedora
for convenience but any other would work too. Be sure to not enable any
telemetry. You could go with the risky route: See \goto{Appendix P:
Accessing the internet as safely as possible when Tor and VPNs are not
an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\subsubsubsubsection[title={Choose a browser within the
VM:},reference={choose-a-browser-within-the-vm}]

This time, we will recommend Brave browser.

See why here: \goto{Appendix V: What browser to use in your Guest
VM/Disposable
VM}[appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm]

See \goto{Appendix V1: Hardening your
Browsers}[appendix-v1-hardening-your-browsers] as well.

\subsubsection[title={Windows 10/11 Virtual
Machine:},reference={windows-1011-virtual-machine}]

{\bf Be careful, any customization you make to the non-Whonix guest VMs
(keyboard layout, language, time zone, screen resolution, or other)
could be used to fingerprint your VMs later. See
\useURL[url1564][https://www.whonix.org/wiki/VM_Fingerprinting]\from[url1564]}
\useURL[url1565][https://web.archive.org/web/https://www.whonix.org/wiki/VM_Fingerprinting][][{[}Archive.org{]}]\from[url1565]

\subsubsubsection[title={Windows 10 and 11 ISO
download:},reference={windows-10-and-11-iso-download}]

Go with the Official Windows 10/11 Pro VM and harden it yourself: see
{[}Appendix C: Windows Installation Media Creation{]}{[}306{]} and go
with the ISO route.

\subsubsubsection[title={If you can use Tor (natively or over a
VPN):},reference={if-you-can-use-tor-natively-or-over-a-vpn-1}]

Refer to this tutorial
\useURL[url1566][https://www.whonix.org/wiki/Other_Operating_Systems]\from[url1566]
\useURL[url1567][https://web.archive.org/web/https://www.whonix.org/wiki/Other_Operating_Systems][][{[}Archive.org{]}]\from[url1567]
for detailed instructions.

\subsubsubsubsection[title={Install:},reference={install}]

\startitemize
\item
  Shut down the Whonix Gateway VM (this will prevent Windows from
  sending out telemetry and allow you to create a local account).
\item
  Open Virtualbox
\item
  Select Machine > New > Select Windows 10 or Windows 11 64bit
\item
  Allocate a minimum amount of 2GB for Windows 10 and 4GB for Windows 11
\item
  Create a Virtual Disk using the VDI format and select Dynamically
  Allocated
\item
  Keep the disk size at 50GB for Windows 10 and 80GB for Windows 11
  (this is a maximum; it should not reach that much)
\item
  Make sure PAE/NX is enabled in System > Processor
\item
  Select the VM and click Settings, Go into the Network Tab
\item
  Select \quotation{Internal Network} in the \quotation{Attached to}
  Field and select Whonix.
\item
  Go into the Storage Tab, Select the Empty CD and click the icon next
  to SATA Port 1
\item
  Click on \quotation{Choose a disk file} and select the Windows ISO you
  previously downloaded
\item
  Click ok and start the VM
\item
  Virtualbox will prompt you to either push a button to boot the ISO or
  ask you what to boot, select the ISO or click.
\item
  Follow the steps in \goto{Appendix A: Windows
  Installation}[appendix-a-windows-installation]
\item
  Start the Whonix Gateway VM
\stopitemize

\subsubsubsubsection[title={Network
Settings:},reference={network-settings}]

\startitemize
\item
  Back to your Windows
\item
  Windows 10: Go back into Settings then Network & Internet. Windows 11:
  Go into settings, click the upper left menu and pick
  \quotation{Network and Internet}
\item
  Windows 10: Click Properties (Below Ethernet). Windows 11: Click
  Ethernet
\item
  Windows 10: Edit IP settings. Windows 11: Edit IP assignment.
\item
  Windows 10: Enable IPv4 and set the following, Windows 11: Switch from
  DHCP to Manual and set the following:

  \startitemize
  \item
    IP address \type{10.152.152.50} (increase this IP by one for any
    other VM)
  \item
    Subnet prefix length \type{18} (\type{255.255.192.0})
  \item
    Gateway \type{10.152.152.10} (this is the Whonix Gateway)
  \item
    (Windows 10) DNS \type{10.152.152.10} (this is again the Whonix
    Gateway)
  \item
    (Windows 11) exit the IP assignment and select DNS server assignment
    and set it to \type{10.152.152.10} (this is again the Whonix
    Gateway)
  \item
    Save
  \stopitemize
\item
  Windows might prompt you if you want to be \quotation{discoverable} on
  this network. Click NO. Always stay on a \quotation{public network} if
  prompted.
\stopitemize

{\bf Every time you will power on this VM in the future, you should make
sure to change its Ethernet Mac Address before each boot. You can do
this in Virtualbox > Settings > Network > Advanced > Click the refresh
button next to the MAC address. You can only do this while the VM is
powered off.}

\subsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-2}]

See \goto{Appendix P: Accessing the internet as safely as possible when
Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\subsubsubsubsection[title={Install:},reference={install-1}]

\startitemize
\item
  Open Virtualbox
\item
  Select Machine > New > Select Windows 10 or 11 64bit
\item
  Allocate a minimum amount of 4GB of RAM for 11 , 2GB of RAM for 10.
\item
  Create a Virtual Disk using the VDI format and select Dynamically
  Allocated
\item
  In the System/Processor tab, make sure PAE/NX is enabled.
\item
  Keep the disk size at 80GB for 11, 50GB for 10 (this is a maximum; it
  should not reach that much)
\item
  Go into the Storage Tab, Select the Empty CD and click the icon next
  to SATA Port 1
\item
  Click on \quotation{Choose a disk file} and select the Windows ISO you
  previously downloaded
\item
  Click ok and start the VM
\item
  Virtualbox will prompt you to either push a button to boot the ISO or
  ask you what to boot, select the ISO or click.
\item
  Follow the steps in \goto{Appendix A: Windows
  Installation}[appendix-a-windows-installation]
\stopitemize

\subsubsubsubsection[title={Network
Settings:},reference={network-settings-1}]

\startitemize[packed]
\item
  Windows will prompt you if you want to be discoverable on this
  network. Click NO.
\stopitemize

{\bf Every time you will power on this VM in the future, you should make
sure to change its Ethernet Mac Address before each boot. You can do
this in Virtualbox > Settings > Network > Advanced > Click the refresh
button next to the MAC address. You can only do this while the VM is
powered off.}

\subsubsubsection[title={Choose a browser within the
VM:},reference={choose-a-browser-within-the-vm-1}]

This time, we will recommend Brave browser.

See why here: \goto{Appendix V: What browser to use in your Guest
VM/Disposable
VM}[appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm]

See \goto{Appendix V1: Hardening your
Browsers}[appendix-v1-hardening-your-browsers] as well.

\subsubsubsection[title={Additional Privacy settings in Windows
10/11:},reference={additional-privacy-settings-in-windows-1011}]

See \goto{Appendix B: Windows Additional Privacy
Settings}[appendix-b-windows-additional-privacy-settings]

\subsubsection[title={Android Virtual
Machine:},reference={android-virtual-machine}]

Because sometimes you want to run mobile Apps anonymously too. You can
also set up an Android VM for this purpose. As in other cases, ideally,
this VM will also be sitting behind the Whonix Gateway for Tor network
connectivity. But this can also be set up as VPN over Tor over VPN

\subsubsubsection[title={If you can use Tor (natively or over a
VPN):},reference={if-you-can-use-tor-natively-or-over-a-vpn-2}]

Later in the VM settings during creation, go into Network and select
Internal Network, Whonix.

Then on Android itself:

\startitemize
\item
  Select Wi-Fi
\item
  Select VirtWifi to connect
\item
  Go into the advanced Wi-Fi properties
\item
  Switch from DHCP to Static

  \startitemize
  \item
    IP address \type{10.152.152.50} (increase this IP by one for any
    other VM)
  \item
    Subnet prefix length \type{18} (\type{255.255.192.0})
  \item
    Gateway \type{10.152.152.10} (this is the Whonix Gateway)
  \item
    DNS \type{10.152.152.10} (this is again the Whonix Gateway)
  \stopitemize
\stopitemize

\subsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-3}]

Just use the tutorials as is and see \goto{Appendix P: Accessing the
internet as safely as possible when Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\subsubsubsection[title={Installation:},reference={installation-1}]

Two possibilities: AnBox or Android-x86

Personally, We would recommend AnBox over Android-x86 but it requires
Linux

\subsubsubsubsection[title={AnBox:},reference={anbox}]

Basically follow the tutorial here for installing AnBox on the Whonix
Workstation:
\useURL[url1568][https://www.whonix.org/wiki/Anbox]\from[url1568]
\useURL[url1569][https://web.archive.org/web/https://www.whonix.org/wiki/Anbox][][{[}Archive.org{]}]\from[url1569]
for running Android Applications within an AnBox VM.

Or follow the instructions here
\useURL[url1570][https://anbox.io/]\from[url1570] to install on any
other VM {\bf (Linux Only)}

\subsubsubsubsection[title={Android-x86:},reference={android-x86}]

Basically, follow the tutorial here:
\useURL[url1571][https://www.android-x86.org/documentation/virtualbox.html]\from[url1571]
\useURL[url1572][https://web.archive.org/web/https://www.android-x86.org/documentation/virtualbox.html][][{[}Archive.org{]}]\from[url1572]

\startitemize
\item
  Download the ISO file of your choice
\item
  Create a New VM.
\item
  Select Linux and Linux 2.6 / 3.x / 4.x 64 Bit.
\item
  In System:

  \startitemize
  \item
    Allocate at least 2048MB (2GB) memory
  \item
    Uncheck the Floppy drive
  \item
    In the Processor Tab, select at least 1 or more CPUs
  \item
    Enable PAE/NX
  \stopitemize
\item
  In Display Settings, Change the adapter to VBoxVGA
\item
  In Audio Settings, Change to Intel HD Audio
\item
  Start the VM
\item
  Select Advanced if you want persistence, Live if you want a disposable
  Boot (and skip the next steps).
\item
  Select Auto Install on Selected Hard Disk
\item
  Select Run Android
\item
  Set up as you wish (disable all prompts for data collections). {\bf I
  recommend using the TaskBar Home.}
\item
  Go into Settings, Android-x86 Options, and disable all collections.
\item
  Connect to VirtWifi Wi-Fi Network {\bf (see the above section if you
  are behind Whonix and want to use Tor)}
\stopitemize

You are now done and can now install any Android app.

\subsubsection[title={macOS Virtual
Machine:},reference={macos-virtual-machine}]

Yes, you can actually run macOS within Virtualbox (on
Windows/Linux/macOS host systems) if you want to use macOS. You can run
any version of macOS you want.

\subsubsubsection[title={If you can use Tor (natively or over a
VPN):},reference={if-you-can-use-tor-natively-or-over-a-vpn-3}]

During the following tutorials, before starting the macOS VM, make sure
you do put the macOS VMs on the Whonix Network.

\startitemize
\item
  Select the VM and click Settings, Go into the Network Tab
\item
  Select \quotation{Internal Network} in the \quotation{Attached to}
  Field and select Whonix
\stopitemize

Afterward, and during the install, you will need to input an IP address
manually to connect through the Whonix Gateway.

Use these settings when prompted in the macOS installation process:

\startitemize
\item
  IP address \type{10.152.152.50} (increase this IP by one for any other
  VM)
\item
  Subnet prefix length \type{18} (\type{255.255.192.0})
\item
  Gateway \type{10.152.152.10} (this is the Whonix Gateway)
\item
  DNS \type{10.152.152.10} (this is again the Whonix Gateway)
\stopitemize

\subsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-4}]

Just use the tutorials as is and see \goto{Appendix P: Accessing the
internet as safely as possible when Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\subsubsubsection[title={Installation:},reference={installation-2}]

\startitemize
\item
  Windows Host OS:

  \startitemize
  \item
    Virtualbox Catalina Tutorial:
    \useURL[url1573][https://www.wikigain.com/install-macos-catalina-on-virtualbox-on-windows/]\from[url1573]
    \useURL[url1574][https://web.archive.org/web/https://www.wikigain.com/install-macos-catalina-on-virtualbox-on-windows/][][{[}Archive.org{]}]\from[url1574]
  \item
    Virtualbox Big Sur Tutorial:
    \useURL[url1575][https://www.wikigain.com/how-to-install-macos-big-sur-on-virtualbox-on-windows-pc/]\from[url1575]
    \useURL[url1576][https://web.archive.org/web/https://www.wikigain.com/how-to-install-macos-big-sur-on-virtualbox-on-windows-pc/][][{[}Archive.org{]}]\from[url1576]
  \item
    Virtualbox Monterey Tutorial:
    \useURL[url1577][https://www.wikigain.com/install-macos-monterey-on-virtualbox/]\from[url1577]
    \useURL[url1578][https://web.archive.org/web/https://www.wikigain.com/install-macos-monterey-on-virtualbox/][][{[}Archive.org{]}]\from[url1578]
  \stopitemize
\item
  macOS Host OS:

  \startitemize[packed]
  \item
    Just use the same tutorials as above but execute the various
    commands in the terminal. It should work without issue.
  \stopitemize
\item
  Linux Host OS:

  \startitemize[packed]
  \item
    Just use the same tutorials as above but execute the various
    commands in the terminal. It should work without issue.
  \stopitemize
\stopitemize

There are some drawbacks to running macOS on Virtual Machines. The main
one is that they do not have a serial number (0 by default) and you will
be unable to log in to any Apple-provided service (iCloud,
iMessage\ldots{}) without a genuine ID. You can set such IDs using this
script:
\useURL[url1579][https://github.com/myspaghetti/macos-virtualbox]\from[url1579]
\useURL[url1580][https://web.archive.org/web/https://github.com/myspaghetti/macos-virtualbox][][{[}Archive.org{]}]\from[url1580]
but keep in mind that randomly generated IDs will not work and using the
ID of someone else will break their Terms of Services and could count as
impersonation (and therefore could be illegal).

Note: We also ran in multiple issues with running these on AMD
processors. This can be fixed so here is the configurationWeused which
worked fine with Catalina, Big Sur and Monterey which will tell
Virtualbox to emulate an Intel Processor instead:

\startitemize
\item
  \type{VBoxManage modifyvm "macOSCatalina" ---cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff}
\item
  \type{VBoxManage setextradata "macOSCatalina" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "MacBookPro15,1"}
\item
  \type{VBoxManage setextradata "macOSCatalina" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Mac-551B86E5744E2388"}
\item
  \type{VBoxManage setextradata "macOSCatalina" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"}
\item
  \type{VBoxManage setextradata "macOSCatalina" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1}
\item
  \type{VBoxManage modifyvm "macOSCatalina" --cpu-profile "Intel Core i7-6700K"}
\item
  \type{VBoxManage setextradata "macOSCatalina" VBoxInternal2/EfiGraphicsResolution 1920x1080}
\stopitemize

\subsubsubsection[title={Hardening
macOS:},reference={hardening-macos-1}]

Refer to \goto{Hardening macOS}[hardening-macos].

\subsubsubsection[title={Choose a browser within the
VM:},reference={choose-a-browser-within-the-vm-2}]

This time, we will recommend Brave browser.

See why here: \goto{Appendix V: What browser to use in your Guest
VM/Disposable
VM}[appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm]

See \goto{Appendix V1: Hardening your
Browsers}[appendix-v1-hardening-your-browsers] as well.

\subsubsection[title={KeepassXC:},reference={keepassxc}]

You will need something to store your data (logins/passwords,
identities, and TOTP\footnote{Wikipedia, TOTP
  \useURL[url1581][https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm]\from[url1581]
  \useURL[url1582][https://wikiless.org/wiki/Time-based_One-time_Password_algorithm][][{[}Wikiless{]}]\from[url1582]
  \useURL[url1583][https://web.archive.org/web/https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm][][{[}Archive.org{]}]\from[url1583]}
information).

For this purpose, we strongly recommend KeePassXC because of its
integrated TOTP feature. This is the ability to create entries for
2FA\footnote{Wikipedia, Multi-Factor Authentication
  \useURL[url1584][https://en.wikipedia.org/wiki/Multi-factor_authentication]\from[url1584]
  \useURL[url1585][https://wikiless.org/wiki/Multi-factor_authentication][][{[}Wikiless{]}]\from[url1585]
  \useURL[url1586][https://web.archive.org/web/https://en.wikipedia.org/wiki/Multi-factor_authentication][][{[}Archive.org{]}]\from[url1586]}
authentication with the authenticator feature.

Remember this should ideally be installed on your Guest VM and not on
your Host OS. You should never do any sensitive activities from your
Host OS.

Here are the tutorials:

\startitemize
\item
  Tails: KeePassXC is integrated by default
\item
  Whonix:
  \useURL[url1587][https://www.whonix.org/wiki/Keepassxc]\from[url1587]
  \useURL[url1588][https://web.archive.org/web/https://www.whonix.org/wiki/Keepassxc][][{[}Archive.org{]}]\from[url1588]
\item
  Linux:

  \startitemize
  \item
    Download from
    \useURL[url1589][https://keepassxc.org/download/]\from[url1589]
    \useURL[url1590][https://web.archive.org/web/https://keepassxc.org/download/][][{[}Archive.org{]}]\from[url1590]
  \item
    Follow the tutorial here
    \useURL[url1591][https://keepassxc.org/docs/KeePassXC_GettingStarted.html\#_linux]\from[url1591]
    \useURL[url1592][https://web.archive.org/web/https://keepassxc.org/docs/KeePassXC_GettingStarted.html][][{[}Archive.org{]}]\from[url1592]
  \stopitemize
\item
  Windows:

  \startitemize
  \item
    Download from
    \useURL[url1593][https://keepassxc.org/download/]\from[url1593]
    \useURL[url1594][https://web.archive.org/web/https://keepassxc.org/download/][][{[}Archive.org{]}]\from[url1594]
  \item
    Follow the tutorial here
    \useURL[url1595][https://KeePassXC.org/docs/KeePassXC_GettingStarted.html\#_microsoft_windows/]\from[url1595]
    \useURL[url1596][https://web.archive.org/web/https://keepassxc.org/docs/KeePassXC_GettingStarted.html][][{[}Archive.org{]}]\from[url1596]
  \stopitemize
\item
  macOS:

  \startitemize
  \item
    Download from
    \useURL[url1597][https://keepassxc.org/download/]\from[url1597]
    \useURL[url1598][https://web.archive.org/web/https://keepassxc.org/download/][][{[}Archive.org{]}]\from[url1598]
  \item
    Follow the tutorial here
    \useURL[url1599][https://keepassxc.org/docs/KeePassXC_GettingStarted.html\#_macos]\from[url1599]
    \useURL[url1600][https://web.archive.org/web/https://keepassxc.org/docs/KeePassXC_GettingStarted.html][][{[}Archive.org{]}]\from[url1600]
  \stopitemize
\stopitemize

Test that KeePassXC is working before going to the next step.

\subsubsection[title={VPN client installation (cash/Monero
paid):},reference={vpn-client-installation-cashmonero-paid}]

{\bf If you decided to not use a cash-paid VPN and just want to use Tor,
skip this step.}

{\bf If you cannot use a VPN at all in a hostile environment, skip this
step.}

Otherwise, see \goto{Appendix R: Installing a VPN on your VM or Host
OS}[appendix-r-installing-a-vpn-on-your-vm-or-host-os] to install a VPN
client on your client VM.

This should conclude the Route and you should now be ready.

\subsubsubsection[title={About VPN Client Data
Mining/Leaks:},reference={about-vpn-client-data-miningleaks}]

You might be asking yourself if those VPN clients are trustworthy not to
leak any information about your local environment to the VPN provider
when using them in the \quotation{VPN over Tor} context.

This is a valid concern but should be taken with a grain of salt.

Remember that all VPN activities are happening from a sandboxed VM on an
internal network behind a Network Gateway (the Whonix Gateway). It does
not matter much if the VPN client leaves some identifiers on your guest
VM. The guest VM is still sandboxed and walled-off from the Host OS. The
attack surface is small especially when using the reputable and
recommended VPN providers within the guides (iVPN, Mullvad, Proton VPN,
and maybe Safing.io).

At best, the VPN client would know your local IP (internal IP) and some
randomized identifiers but should not be able to get anything from the
Host OS. And in theory, the VPN client should not send any telemetry
back to the VPN provider. If your VPN client does this or asks this, you
should consider changing the provider.

\subsubsection[title={(Optional) VM kill
switch:},reference={optional-vm-kill-switch}]

This step will allow you to configure your Host OS so that only the
Whonix Gateway VM will have access to the internet. This will therefore
prevent any \quotation{leak} from your Host OS while letting the Whonix
Gateway establish the tor connectivity. The other VMs (Whonix
Workstation or any other VM you installed behind it will not be
affected)

There are three ways to do this:

\startitemize
\item
  The Lazy Way (not really recommended): not supported by Whonix and
  might have some security implications as you will expose the Whonix
  Gateway VM to the Public Wi-Fi network. We would recommend against
  this unless you are in a hurry or very lazy.

  \startitemize[packed]
  \item
    {\bf This method will not work with Wi-Fi captive portals requiring
    any registration to connect.}
  \stopitemize
\item
  The Better Way (see further down): still not supported by Whonix but
  it will not expose the Whonix Gateway VM to the Public Wi-Fi network.
  This should keep things in check in terms of security.
\item
  The Best Way: Using an external USB Wi-Fi dongle and just disabling
  Wi-Fi on the Host OS/Computer.
\stopitemize

\subsubsubsection[title={The Lazy Way ({\bf not supported by Whonix} but
it will work if you are in a hurry, see further for the better
way):},reference={the-lazy-way-not-supported-by-whonix-but-it-will-work-if-you-are-in-a-hurry-see-further-for-the-better-way}]

{\bf This way is not supported by the Whonix project}\footnote{Whonix
  Documentation, Bridged Adapters Warning
  \useURL[url1601][https://www.whonix.org/wiki/Whonix-Gateway_Security\#Warning:_Bridged_Networking]\from[url1601]
  \useURL[url1602][https://web.archive.org/web/https://www.whonix.org/wiki/Whonix-Gateway_Security\#Warning:_Bridged_Networking][][{[}Archive.org{]}]\from[url1602]}
but I will go ahead and give this option anyway. This is helpful to
prevent your Host OS from leaking any information while you are using
the Whonix VMs.

{\bf Note that this option as-is will only work on Wi-Fis without a
captive portal (where you must enter some information to unlock
access).}

The illustration below shows the result of this step:

\placefigure{image29}{\externalfigure[./tex2pdf.-1a34188c73046814/c7837d016afb2456fc0abad51408405b8fd44efd.png]}

\subsubsubsubsection[title={Configuration of the Whonix Gateway
VM:},reference={configuration-of-the-whonix-gateway-vm}]

For this to work, we will need to change some configurations on the
Whonix Gateway VM. we will need to add a DHCP client to the Whonix
Gateway to receive IP addresses from the network. To do those changes
the Host OS will still have to have internet access allowed for now.

So here is how:

\startitemize
\item
  Be sure to have your Host OS connected to a safe Wi-Fi.
\item
  Through VirtualBox, start the Whonix Gateway VM
\item
  Start a Terminal on the VM
\item
  Install a DHCP client on the Whonix Gateway VM using the following
  command:

  \startitemize[packed]
  \item
    \type{sudo apt install dhcpcd5}
  \stopitemize
\item
  Now edit the Whonix Gateway VM network configuration using the
  following command:

  \startitemize[packed]
  \item
    \type{sudo nano /etc/network/interfaces.d/30_non-qubes-whonix}
  \stopitemize
\item
  Within the file change the following lines:

  \startitemize
  \item
    \type{# auto eth0} to \type{auto eth0}
  \item
    \type{# iface eth0 inet dhcp} to \type{iface eth0 inet dhcp}
  \item
    \type{iface eth0 inet static} to \type{# iface eth0 inet static}
  \item
    \type{address 10.0.2.15} to \type{# address 10.0.2.15}
  \item
    \type{netmask 255.255.255.0} to \type{# netmask 255.255.255.0}
  \item
    \type{gateway 10.0.2.2} to \type{# gateway 10.0.2.2}
  \stopitemize
\item
  Save (using Ctrl+X and confirm with Y) and power off the VM from the
  top left menu
\item
  Go into the VirtualBox Application and select the Whonix Gateway VM
\item
  Click Settings
\item
  Click the Network Tab
\item
  For Adapter 1, change the \quotation{Attached To} value from
  \quotation{NAT} to \quotation{Bridged Adapter}
\item
  As \quotation{Name}, select your Wi-Fi network Adapter
\item
  Click OK and you are done with the VM configuration part
\stopitemize

\subsubsubsubsection[title={Configuration of the Host
OS:},reference={configuration-of-the-host-os}]

Now you must block internet access from your Host OS while still
allowing the VM to connect. This will be done by connecting to Wi-Fi
with the Host OS but without assigning itself an IP address. The VM will
then use your Wi-fi association to get an IP address.

\subsubsubsubsubsection[title={Windows Host
OS:},reference={windows-host-os-1}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open an administrative command prompt (right-click on Command Prompt
  and Run as Administrator)
\item
  Run the following command: \type{route delete 0.0.0.0} (this deletes
  the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the Whonix Gateway VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsubsubsection[title={Linux Host
OS:},reference={linux-host-os-1}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open a Terminal
\item
  Run the following command: \type{sudo ip route del default} (this
  deletes the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the Whonix Gateway VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsubsubsection[title={macOS Host
OS:},reference={macos-host-os-1}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open a Terminal
\item
  Run the following command: \type{sudo route delete default} (this
  deletes the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the Whonix Gateway VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsection[title={The Better Way
(recommended):},reference={the-better-way-recommended}]

This way will not go against Whonix recommendations (as it will not
expose the Whonix Gateway to the Host OS) and will have the advantage of
allowing connections not only to open Wi-Fis but also to the ones with a
Captive Portal where you need to enter some information to access the
internet.

Yet this will still not be supported by the Whonix project, but it is
fine as the main concern for the earlier Lazy Way is to have the Whonix
Gateway VM exposed to the Host Network, and it will not be the case
here.

This option will require an additional VM between the Host OS and the
Whonix Gateway to act as a Network Bridge.

For this purpose, I will recommend the use of a lightweight Linux
Distro. Any will do but the easiest will be an Ubuntu-based distro and I
would recommend the lightweight XUbuntu as it will be extremely easy to
configure this setup.

Why XUbuntu and not Ubuntu or KUbuntu? Because XUbuntu uses an XFCE
desktop environment which is lightweight and this VM will only serve as
a proxy and nothing else.

Of course, you can also achieve this with any other Linux distro if you
so decide you do not like XUbuntu.

This is how it will look at the end:

\placefigure{image30}{\externalfigure[./tex2pdf.-1a34188c73046814/29596f395807873100e641cf2387680899958a47.png]}

\subsubsubsubsection[title={Installing XUbuntu
VM:},reference={installing-xubuntu-vm}]

XUbuntu was picked due the performance of XFCE.

Make sure you are connected to a safe Wi-Fi for this operation.

First, you will need to download the latest XUbuntu Stable release ISO
from \useURL[url1603][https://xubuntu.org/download/]\from[url1603]

When you are done with the download, it is time to create a new VM:

\startitemize
\item
  Start VirtualBox Manager
\item
  Create a new VM and name it as you want, for example,
  \quotation{XUbuntu Bridge}
\item
  Select type \quotation{Linux}
\item
  Select Version \quotation{Ubuntu (64-bit)}
\item
  Leave other options to default and click Create
\item
  On the next screen, leave the default options and click Create
\item
  Select the newly create VM and click Settings
\item
  Select Network
\item
  For Adapter 1, Switch to Bridged Mode and pick your Wi-Fi adapter in
  the Name
\item
  Select Adapter 2 and enable it
\item
  Attach it to \quotation{Internal Network} and name it
  \quotation{XUbuntu Bridge}
\item
  Select Storage
\item
  Select the Empty CD drive
\item
  On the right side, click the CD icon and select \quotation{Choose a
  disk file}
\item
  Select the ISO of XUbuntu you previously downloaded and Click Ok
\item
  Start the VM
\item
  Select Start XUbuntu
\item
  Select Install XUbuntu
\item
  Pick your Keyboard Layout and click Continue
\item
  Select Minimal Installation and Download Updates while installing
  XUbuntu
\item
  Select Erase Disk and install XUbuntu and click Install Now
\item
  Select the Time Zone of your choice and click Continue
\item
  Pick some random names unrelated to you (my favorite username is
  \quotation{NoSuchAccount})
\item
  Pick a password and require a password to login
\item
  Click Continue and wait for the install to finish and Restart
\item
  When you are done rebooting, log-in
\item
  Click the upper right connection icon (it looks like two rotating
  spheres)
\item
  Click Edit Connections
\item
  Select Wired Connection 2 (Adapter 2 previously configured in
  VirtualBox settings)
\item
  Select the IPv4 Tab
\item
  Change the Method to \quotation{Shared to other computers} and click
  Save
\item
  You are now done setting up the XUbuntu Bridge VM
\stopitemize

\subsubsubsubsection[title={Configuring the Whonix Gateway
VM:},reference={configuring-the-whonix-gateway-vm}]

By default, the Whonix Gateway has no DHCP client and will require one
to get an IP from a shared network you configured earlier:

\startitemize
\item
  Through VirtualBox, start the Whonix Gateway VM
\item
  Start a Terminal on the VM
\item
  Install a DHCP client on the Whonix Gateway VM using the following
  command:

  \startitemize[packed]
  \item
    \type{sudo apt install dhcpcd5}
  \stopitemize
\item
  Now edit the Whonix Gateway VM network configuration using the
  following command:

  \startitemize[packed]
  \item
    \type{sudo nano /etc/network/interfaces.d/30_non-qubes-whonix}
  \stopitemize
\item
  Within the file change the following lines:

  \startitemize
  \item
    \type{# auto eth0} to \type{auto eth0}
  \item
    \type{# iface eth0 inet dhcp} to \type{iface eth0 inet dhcp}
  \item
    \type{iface eth0 inet static} to \type{# iface eth0 inet static}
  \item
    \type{address 10.0.2.15} to \type{# address 10.0.2.15}
  \item
    \type{netmask 255.255.255.0} to \type{# netmask 255.255.255.0}
  \item
    \type{gateway 10.0.2.2} to \type{# gateway 10.0.2.2}
  \stopitemize
\item
  Save (using Ctrl+X and confirm with Y) and power off the VM from the
  top left menu
\item
  Go into the VirtualBox Application and select the Whonix Gateway VM
\item
  Click Settings
\item
  Click the Network Tab
\item
  For Adapter 1, change the \quotation{Attached To} value from
  \quotation{NAT} to \quotation{Internal Network}
\item
  As \quotation{Name}, select the internal network \quotation{XUbuntu
  Bridge} you created earlier and click OK
\item
  Reboot the Whonix Gateway VM
\item
  From the upper left menu, select System, Tor Control Panel, and check
  that you are connected (you should be)
\item
  You are done configuring the Whonix Gateway VM
\stopitemize

\subsubsubsubsection[title={Configuration of the Host
OS:},reference={configuration-of-the-host-os-1}]

Now you must block internet access from your Host OS while still
allowing the XUbuntu Bridge VM to connect. This will be done by
connecting to Wi-Fi with the Host OS but without assigning itself a
gateway address. The VM will then use your Wi-fi association to get an
IP address.

If necessary, from the XUbuntu Bridge VM, you will be able to launch a
Browser to enter information into any captive/registration portal on the
Wi-Fi network.

Only the XUbuntu Bridge VM should be able to access the internet. The
Host OS will be limited to local traffic only.

\subsubsubsubsubsection[title={Windows Host
OS:},reference={windows-host-os-2}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open an administrative command prompt (right-click on Command Prompt
  and Run as Administrator)
\item
  Run the following command: \type{route delete 0.0.0.0} (this deletes
  the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the XUbuntu Bridge VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  If necessary, you can use the XUbuntu Bridge VM Browser to fill in any
  information on any captive/registration portal to access the Wi-Fi.
\item
  After that, you can start the Whonix Gateway VM which should obtain
  the Internet Connection from the XUbuntu Bridge VM.
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsubsubsection[title={Linux Host
OS:},reference={linux-host-os-2}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open a Terminal
\item
  Run the following command: \type{sudo ip route del default} (this
  deletes the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the XUbuntu Bridge VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  If necessary, you can use the XUbuntu Bridge VM Browser to fill in any
  information on any captive/registration portal to access the Wi-Fi.
\item
  After that, you can start the Whonix Gateway VM which should obtain
  the Internet Connection from the XUbuntu Bridge VM.
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsubsubsection[title={macOS Host
OS:},reference={macos-host-os-2}]

The goal here is to associate with a Wi-Fi network without having an
internet connection. You will achieve this by deleting the Gateway from
the connection after you are connected:

\startitemize
\item
  First, connect to the safe Wi-Fi of your choice
\item
  Open a Terminal
\item
  Run the following command: \type{sudo route delete default} (this
  deletes the Gateway from your IP configuration)
\item
  You are done, your Host OS will now be unable to access the internet
  while still connected to the Wi-Fi

  \startitemize[packed]
  \item
    Note that this will reset at each disconnect/reconnection to a
    network, and you will have to delete the route again. This is not
    permanent.
  \stopitemize
\item
  You can now start the XUbuntu Bridge VM which should now obtain an IP
  automatically from the Wi-Fi network and should provide Network to the
  other VMs behind (Whonix Workstation or other).
\item
  If necessary, you can use the XUbuntu Bridge VM Browser to fill in any
  information on any captive/registration portal to access the Wi-Fi.
\item
  After that, you can start the Whonix Gateway VM which should obtain
  the Internet Connection from the XUbuntu Bridge VM.
\item
  And finally, after that, you can start the Whonix Workstation VM (or
  any other VM you configured to work behind the Whonix Gateway VM) and
  it should be connected to the internet through Tor.
\stopitemize

\subsubsubsection[title={The best way:},reference={the-best-way}]

This way will not go against Whonix recommendations (as it will not
expose the Whonix Gateway to the Host OS) and will have the advantage of
allowing connections not only to open Wi-Fis but also to the ones with a
Captive Portal where you need to enter some information to access the
internet. Yet this will still not be supported by the Whonix project,
but it is fine as the main concern for the earlier Lazy Way is to have
the Whonix Gateway VM exposed to the Host Network, and it will not be
the case here. This option is the best because the network will be
completely disabled on the Host OS from booting up.

This option will require an additional VM between the Host OS and the
Whonix Gateway to act as a Network Bridge and to connect to the Wi-Fi
network. {\bf This option requires a working USB Wi-Fi Dongle that will
be passed through to a bridge VM.}

For this purpose, I will recommend the use of a lightweight Linux
Distro. Any will do but the easiest will be an Ubuntu-based distro and I
would recommend the lightweight XUbuntu as it will be extremely easy to
configure this setup.

Why XUbuntu and not Ubuntu or KUbuntu? Because XUbuntu uses an XFCE
desktop environment which is lightweight and this VM will only serve as
a proxy and nothing else.

Of course, you can also achieve this with any other Linux distro if you
so decide you do not like XUbuntu.

This is how it will look at the end:

\placefigure{image31}{\externalfigure[./tex2pdf.-1a34188c73046814/45f855034bc1c4fc299ce9e1baca4e3bea7609fd.png]}

\subsubsubsubsection[title={Configuration of the Host
OS:},reference={configuration-of-the-host-os-2}]

\startitemize
\item
  Disable Networking on your Host OS completely (Turn off the on-board
  Wi-Fi completely)
\item
  Plug in and install your USB Wi-Fi Dongle. Connect it to a safe Public
  Wi-Fi. This should be easy and automatically installed by any recent
  OS (Windows 10/11, macOS, Linux).
\stopitemize

\subsubsubsubsection[title={Configuring the Whonix Gateway
VM:},reference={configuring-the-whonix-gateway-vm-1}]

By default, the Whonix Gateway has no DHCP client and will require one
to get an IP from a shared network you will configure later, on a Bridge
VM:

\startitemize
\item
  Through VirtualBox, start the Whonix Gateway VM
\item
  Start a Terminal on the VM
\item
  Install a DHCP client on the Whonix Gateway VM using the following
  command:

  \startitemize[packed]
  \item
    \type{sudo apt install dhcpcd5}
  \stopitemize
\item
  Now edit the Whonix Gateway VM network configuration using the
  following command:

  \startitemize[packed]
  \item
    \type{sudo nano /etc/network/interfaces.d/30_non-qubes-whonix}
  \stopitemize
\item
  Within the file change the following lines:

  \startitemize
  \item
    \type{# auto eth0} to \type{auto eth0}
  \item
    \type{# iface eth0 inet dhcp} to \type{iface eth0 inet dhcp}
  \item
    \type{iface eth0 inet static} to \type{# iface eth0 inet static}
  \item
    \type{address 10.0.2.15} to \type{# address 10.0.2.15}
  \item
    \type{netmask 255.255.255.0} to \type{# netmask 255.255.255.0}
  \item
    \type{gateway 10.0.2.2} to \type{# gateway 10.0.2.2}
  \stopitemize
\item
  Save (using Ctrl+X and confirm with Y) and power off the VM from the
  top left menu
\stopitemize

\subsubsubsubsection[title={Installing XUbuntu
VM:},reference={installing-xubuntu-vm-1}]

Make sure you are connected to a safe Wi-Fi for this operation.

First, you will need to download the latest XUbuntu Stable release ISO
from \useURL[url1604][https://xubuntu.org/download/]\from[url1604]

When you are done with the download, it is time to create a new VM:

\startitemize
\item
  Disconnect your host OS from the Wi-Fi you previously connected to
  with the dongle and forget the network.
\item
  Start VirtualBox Manager
\item
  Create a new VM and name it as you want, for example,
  \quotation{XUbuntu Bridge}
\item
  Select type \quotation{Linux}
\item
  Select Version \quotation{Ubuntu (64-bit)}
\item
  Leave other options to default and click Create
\item
  On the next screen, leave the default options and click Create
\item
  Select the newly create VM and click Settings
\item
  Select Network
\item
  For Adapter 1, Attach it to \quotation{Internal Network} and name it
  \quotation{XUbuntu Bridge}
\item
  Select Storage
\item
  Select the Empty CD drive
\item
  On the right side, click the CD icon and select \quotation{Choose a
  disk file}
\item
  Select the ISO of XUbuntu you previously downloaded and Click Ok
\item
  Select the USB Tab
\item
  On the right side, click the USB icon with a + sign (the second from
  the top)
\item
  Select the Wi-Fi Adapter Dongle from the list and make sure it is
  checked (leave the USB options to default)
\item
  Start the VM
\item
  Select Start XUbuntu
\item
  Select Install XUbuntu
\item
  Pick your Keyboard Layout and click Continue
\item
  Select Minimal Installation and do not check the Download Updates
  during the install option
\item
  Select Erase Disk and install XUbuntu and click Install Now
\item
  Select the Time Zone of your choice and click Continue
\item
  Pick some random names unrelated to you (my favorite username is
  \quotation{NoSuchAccount})
\item
  Pick a password and require a password to login
\item
  Click Continue and wait for the install to finish and Restart
\item
  When you are done rebooting, log-in
\item
  Click the upper right connection icon (it looks like two rotating
  spheres)
\item
  Click Edit Connections
\item
  Select Wired Connection 1 (normally there should only be one)
\item
  Select the IPv4 Tab
\item
  Change the Method to \quotation{Shared to other computers} and click
  Save
\item
  Again, click the upper right connection icon
\item
  Connect to the safe Wi-Fi of your choice and if necessary, input the
  necessary information into a Captive Portal.
\item
  You are now done setting up the XUbuntu Bridge VM
\stopitemize

At this stage, your Host OS should have no network at all and your
XUbuntu VM should have a fully working Wi-Fi connection and this Wi-Fi
connection will be shared to the Internal Network \quotation{XUbuntu
Bridge}.

\subsubsubsubsection[title={Additional configuration of the Whonix
Gateway
VM:},reference={additional-configuration-of-the-whonix-gateway-vm}]

Now it is time to configure the Whonix Gateway VM to get access from the
shared network from the bridge VM you just made on the earlier step:

\startitemize
\item
  Go into the VirtualBox Application and select the Whonix Gateway VM
\item
  Click Settings
\item
  Click the Network Tab
\item
  For Adapter 1, change the \quotation{Attached To} value from
  \quotation{NAT} to \quotation{Internal Network}
\item
  As \quotation{Name}, select the internal network \quotation{XUbuntu
  Bridge} you created earlier and click OK
\item
  Reboot the Whonix Gateway VM
\item
  From the upper left menu, select System, Tor Control Panel, and check
  that you are connected (you should be)
\item
  You are done configuring the Whonix Gateway VM
\stopitemize

At this stage, your Whonix Gateway VM should be getting internet access
from the XUbuntu Bridge VM which in turn is getting internet access from
the Wi-Fi Dongle and sharing it. Your Host OS should have no network
connectivity at all.

All the VMs behind the Whonix Gateway should now work fine without
additional configuration.

\subsubsection[title={Final step:},reference={final-step}]

{\bf Take a post-install VirtualBox snapshot of your VMs.}

You are done and can now skip the rest to go to the \goto{Getting
Online}[getting-online] part.

\subsection[title={The Qubes Route:},reference={the-qubes-route}]

{\bf Note that the guide has been updated to Qubes OS 4.1}

As they say on their website, Qubes OS is a reasonably secure, free,
open-source, and security-oriented operating system for single-user
desktop computing. Qubes OS leverages and extensively uses Xen-based
virtualization to allow for the creation and management of isolated
compartments called Qubes.

Qubes OS is not a Linux distribution\footnote{Qubes OS, FAQ,
  \useURL[url1605][https://www.qubes-os.org/faq/\#is-qubes-just-another-linux-distribution]\from[url1605]
  \useURL[url1606][https://web.archive.org/web/https://www.qubes-os.org/faq/\#is-qubes-just-another-linux-distribution][][{[}Archive.org{]}]\from[url1606]}
but a Xen distribution. It is different from Linux distributions because
it will make extensive use of Virtualization and Compartmentalization so
that any app will run in a different VM (Qube). As a bonus, Qubes OS
integrates Whonix by default and allows for increased privacy and
anonymity. It is highly recommended that you document yourself over
Qubes OS principles before going this route. Here are some recommended
resources:

\startitemize
\item
  Qubes OS Introduction,
  \useURL[url1607][https://www.qubes-os.org/intro/]\from[url1607]
  \useURL[url1608][https://web.archive.org/web/https://www.qubes-os.org/intro/][][{[}Archive.org{]}]\from[url1608]
\item
  Qubes OS Video Tours,
  \useURL[url1609][https://www.qubes-os.org/video-tours/]\from[url1609]
  \useURL[url1610][https://web.archive.org/web/https://www.qubes-os.org/video-tours/][][{[}Archive.org{]}]\from[url1610]
\item
  Qubes OS Getting Started,
  \useURL[url1611][https://www.qubes-os.org/doc/getting-started/]\from[url1611]
  \useURL[url1612][https://web.archive.org/web/https://www.qubes-os.org/doc/getting-started/][][{[}Archive.org{]}]\from[url1612]
\item
  YouTube, Life Behind the Tinfoil: A Look at Qubes and Copperhead -
  Konstantin Ryabitsev, The Linux Foundation
  \useURL[url1613][https://www.youtube.com/watch?v=8cU4hQg6GvU]\from[url1613]
  \useURL[url1614][https://yewtu.be/watch?v=8cU4hQg6GvU][][{[}Invidious{]}]\from[url1614]
\item
  YouTube, We used the reasonably-secure Qubes OS for 6 months and
  survived - Matty McFatty {[}@themattymcfatty{]}
  \useURL[url1615][https://www.youtube.com/watch?v=sbN5Bz3v-uA]\from[url1615]
  \useURL[url1616][https://yewtu.be/watch?v=sbN5Bz3v-uA][][{[}Invidious{]}]\from[url1616]
\item
  YouTube, Qubes OS: How it works, and a demo of this VM-centric OS
  \useURL[url1617][https://www.youtube.com/watch?v=YPAvoFsvSbg]\from[url1617]
  \useURL[url1618][https://yewtu.be/watch?v=YPAvoFsvSbg][][{[}Invidious{]}]\from[url1618]
\stopitemize

This OS is recommended by prominent figures such as Edward Snowden,
PrivacyGuides.org.

Qubes is the best option in this guide for people who are more
comfortable with Linux and tech in general. But it has some downsides
such as the lack of OS-wide plausible deniability, its hardware
requirements, and its hardware compatibility. While you can run this on
4GB of RAM as per their requirements
\useURL[url1619][https://yewtu.be/watch?v=sbN5Bz3v-uA][][{[}Archive.org{]}]\from[url1619],
the recommended RAM is 16GB. We would recommend against using Qubes OS
if you have less than 8GB of RAM. If you want a comfortable experience,
you should have 16GB, if you want a particularly enjoyable experience,
you should have 24GB or 32GB.

The reason for this RAM requirement is that each app will run in a
different VM and each of those VM will require and allocate a certain
amount of memory that will not be available for other apps. If you are
running native Windows apps within Qubes OS Qubes, the ram overhead will
be significant.

You should also check their hardware compatibility here
\useURL[url1620][https://www.qubes-os.org/hcl/]\from[url1620]
\useURL[url1621][https://web.archive.org/web/https://www.qubes-os.org/hcl/][][{[}Archive.org{]}]\from[url1621]
before proceeding. Your mileage might vary, and you might experience
several issues about hardware compatibility that you will have to
troubleshoot and solve yourself.

I think that if you can afford it and are comfortable with the idea of
using Linux, you should go with this route as it is probably the best
one in terms of security and privacy. The only disadvantage of this
route is that it does not provide a way to enable OS-wide
\useURL[url1622][https://en.wikipedia.org/wiki/Plausible_deniability][][plausible
deniability]\from[url1622]
\useURL[url1623][https://en.wikipedia.org/wiki/Plausible_deniability]\from[url1623]
\useURL[url1624][https://wikiless.org/wiki/Plausible_deniability][][{[}Wikiless{]}]\from[url1624],
unlike the Whonix route.

\subsubsection[title={Pick your connectivity
method:},reference={pick-your-connectivity-method-1}]

There are seven possibilities within this route:

\startitemize
\item
  {\bf Recommended and preferred:}

  \startitemize
  \item
    {\bf Use Tor alone (User > Tor > Internet)}
  \item
    {\bf Use VPN over Tor (User > Tor > VPN > Internet) in specific
    cases}
  \item
    {\bf Use a VPS with a self-hosted VPN/Proxy over Tor (User > Tor >
    Self-Hosted VPN/Proxy > Internet) in specific cases}
  \stopitemize
\item
  Possible if required by context:

  \startitemize
  \item
    Use VPN over Tor over VPN (User > VPN > Tor > VPN > Internet)
  \item
    Use Tor over VPN (User > VPN > Tor > Internet)
  \stopitemize
\item
  Not recommended and risky:

  \startitemize
  \item
    Use VPN alone (User > VPN > Internet)
  \item
    Use VPN over VPN (User > VPN > VPN > Internet)
  \stopitemize
\item
  {\bf Not recommended and highly risky (but possible)}

  \startitemize[packed]
  \item
    No VPN and no Tor (User > Internet)
  \stopitemize
\stopitemize

\placefigure{image23}{\externalfigure[./tex2pdf.-1a34188c73046814/ad5dac2a0c32b6db732493569d7134218c54534b.png]}

\subsubsubsection[title={Tor only:},reference={tor-only-1}]

This is the preferred and most recommended solution.

\placefigure{image32}{\externalfigure[./tex2pdf.-1a34188c73046814/f60ad50fd1483e104fbb457400a4a4c70a917183.png]}

With this solution, all your network goes through Tor, and it should be
sufficient to guarantee your anonymity in most cases.

There is one main drawback tho: {\bf Some services block/ban Tor Exit
nodes outright and will not allow account creations from those.}

To mitigate this, you might have to consider the next option: VPN over
Tor but consider some risks associated with it explained in the next
section.

\subsubsubsection[title={VPN/Proxy over
Tor:},reference={vpnproxy-over-tor-1}]

This solution can bring some benefits in some specific cases vs using
Tor only where accessing the destination service would be impossible
from a Tor Exit node. This is because many services will just outright
ban, hinder, or block Tor Exit Nodes (see
\useURL[url1625][https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor]\from[url1625]
\useURL[url1626][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor][][{[}Archive.org{]}]\from[url1626]).

This solution can be achieved in two ways:

\startitemize
\item
  Paid VPN over Tor (easiest)
\item
  Paid Self-Hosted VPS configured as VPN/Proxy (most efficient in
  avoiding online obstacles such as captchas but requiring more skills
  with Linux)
\stopitemize

As you can see in this illustration, if your cash (preferred)/Monero
paid VPN/Proxy is compromised by an adversary (despite their privacy
statement and no-logging policies), they will only find an anonymous
cash/Monero paid VPN account connecting to their services from a Tor
Exit node.

\placefigure{image33}{\externalfigure[./tex2pdf.-1a34188c73046814/9d551d82a85f0049229b0fa18bd65c8e1f999512.png]}

If an adversary somehow manages to compromise the Tor network too, they
will only reveal the IP of a random public Wi-Fi that is not tied to
your identity.

If an adversary somehow compromises your VM OS (with malware or an
exploit for instance), they will be trapped within the internal Network
of Whonix and should be unable to reveal the IP of the public Wi-Fi.

{\bf This solution however has one main drawback to consider:
Interference with Tor Stream Isolation}\footnote{Whonix Documentation,
  Stream Isolation
  \useURL[url1627][https://www.whonix.org/wiki/Stream_Isolation]\from[url1627]
  \useURL[url1628][https://web.archive.org/web/https://www.whonix.org/wiki/Stream_Isolation][][{[}Archive.org{]}]\from[url1628]}.

Stream isolation is a mitigation technique used to prevent some
correlation attacks by having different Tor Circuits for each
application. Here is an illustration to show what stream isolation is:

\placefigure{image26}{\externalfigure[./tex2pdf.-1a34188c73046814/a32a269c6ea46148dddc02bb954ddeb6e5805666.png]}

(Illustration from Marcelo Martins,
\useURL[url1629][https://stakey.club/en/decred-via-tor-network/]\from[url1629]
\useURL[url1630][https://web.archive.org/web/https://stakey.club/en/decred-via-tor-network/][][{[}Archive.org{]}]\from[url1630])

VPN/Proxy over Tor falls on the right-side\footnote{Whonix
  Documentation, Tunnels Comparison Table
  \useURL[url1631][https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table]\from[url1631]
  \useURL[url1632][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table][][{[}Archive.org{]}]\from[url1632]}
meaning using a VPN/Proxy over Tor forces Tor to use one circuit for all
activities instead of multiple circuits for each. This means that using
a VPN/Proxy over Tor can reduce the effectiveness of Tor in some cases
and should therefore be used only for some specific cases:

\startitemize
\item
  When your destination service does not allow Tor Exit nodes.
\item
  When you do not mind using a shared Tor circuit for various services.
  For instance for using various authenticated services.
\stopitemize

{\bf You should however consider not using this method when your aim is
just to browse random various unauthenticated websites as you will not
benefit from Stream Isolation and this could make correlation attacks
easier for an adversary between each of your sessions (see \goto{Your
Anonymized Tor/VPN traffic}[your-anonymized-torvpn-traffic]).}

More information at:

\startitemize
\item
  \useURL[url1633][https://www.whonix.org/wiki/Stream_Isolation]\from[url1633]
  \useURL[url1634][https://web.archive.org/web/https://www.whonix.org/wiki/Stream_Isolation][][{[}Archive.org{]}]\from[url1634]
\item
  \useURL[url1635][https://tails.boum.org/contribute/design/stream_isolation/]\from[url1635]
  \useURL[url1636][https://web.archive.org/web/https://tails.boum.org/contribute/design/stream_isolation/][][{[}Archive.org{]}]\from[url1636]
\item
  \useURL[url1637][https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table]\from[url1637]
  \useURL[url1638][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction\#Comparison_Table][][{[}Archive.org{]}]\from[url1638]
\stopitemize

\subsubsubsection[title={Tor over VPN:},reference={tor-over-vpn-2}]

You might be wondering: Well, what about using Tor over VPN instead of
VPN over Tor?

\startitemize
\item
  Disadvantages

  \startitemize
  \item
    Your VPN provider is just another ISP that will then know your
    origin IP and will be able to de-anonymize you if needed. We do not
    trust them. Prefer a situation where your VPN provider does not know
    who you are. It does not add much in terms of anonymity.
  \item
    This would result in you connecting to various services using the IP
    of a Tor Exit Node which is banned/flagged in many places. It does
    not help in terms of convenience.
  \stopitemize
\item
  Advantages:

  \startitemize
  \item
    {\bf The main advantage is that if you are in a hostile environment
    where Tor access is impossible/dangerous/suspicious, but VPN is
    okay.}
  \item
    This method also does not break Tor Stream isolation.
  \stopitemize
\stopitemize

Note, if you're having issues accessing the Tor Network due to
blocking/censorship, you could try using Tor Bridges (see Tor
Documentation
\useURL[url1639][https://2019.www.torproject.org/docs/bridges]\from[url1639]
\useURL[url1640][https://web.archive.org/web/https://2019.www.torproject.org/docs/bridges][][{[}Archive.org{]}]\from[url1640]
and Whonix Documentation
\useURL[url1641][https://www.whonix.org/wiki/Bridges]\from[url1641]
\useURL[url1642][https://web.archive.org/web/https://www.whonix.org/wiki/Bridges][][{[}Archive.org{]}]\from[url1642]).

It is also possible to consider {\bf VPN over Tor over VPN (User > VPN >
Tor > VPN > Internet)} using two cash/Monero paid VPNs instead. This
means that you will connect the Host OS to a first VPN from your Public
Wi-Fi, then Whonix will connect to Tor, and finally, your VM will
connect to a second VPN over Tor over VPN (see
\useURL[url1643][https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor]\from[url1643]
\useURL[url1644][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor][][{[}Archive.org{]}]\from[url1644]).

This will of course have a significant performance impact and might be
quite slow, but Tor is necessary somewhere for achieving reasonable
anonymity.

Achieving this technically is easy within this route, you need two
separate anonymous VPN accounts and must connect to the first VPN from
the Host OS and follow the route.

Conclusion: Only do this if you think using Tor alone is
risky/impossible but VPNs are okay. Or just because you can and so why
not. This method will not lower your security/privacy/anonymity.

\subsubsubsection[title={VPN only:},reference={vpn-only-1}]

This route will not be explained nor recommended.

{\bf If you can use VPNs then you should be able to add a Tor layer over
it. And if you can use Tor, then you can add an anonymous VPN over Tor
to get the preferred solution.}

Just using a VPN or even a VPN over VPN makes no sense as those can be
traced back to you over time. One of the VPN providers will know your
real origin IP (even if it is in a safe public space) and even if you
add one over it, the second one will still know you were using that
other first VPN service. This will only slightly delay your
de-anonymization. Yes, it is an added layer \ldots{} but it is a
persistent centralized added layer, and you can be de-anonymized over
time. This is just chaining 3 ISPs that are all subject to lawful
requests.

For more info, please see the following references:

\startitemize
\item
  \useURL[url1645][https://www.whonix.org/wiki/Comparison_Of_Tor_with_CGI_Proxies,_Proxy_Chains,_and_VPN_Services\#Tor_and_VPN_Services_Comparison]\from[url1645]
  \useURL[url1646][https://web.archive.org/web/https://www.whonix.org/wiki/Comparison_Of_Tor_with_CGI_Proxies,_Proxy_Chains,_and_VPN_Services][][{[}Archive.org{]}]\from[url1646]
\item
  \useURL[url1647][https://www.whonix.org/wiki/Why_does_Whonix_use_Tor]\from[url1647]
  \useURL[url1648][https://web.archive.org/web/https://www.whonix.org/wiki/Why_does_Whonix_use_Tor][][{[}Archive.org{]}]\from[url1648]
\item
  \useURL[url1649][https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study]\from[url1649]
  \useURL[url1650][https://web.archive.org/web/https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study][][{[}Archive.org{]}]\from[url1650]
\item
  \useURL[url1651][https://gist.github.com/joepie91/5a9909939e6ce7d09e29\#file-vpn-md]\from[url1651]
  \useURL[url1652][https://web.archive.org/web/https://gist.github.com/joepie91/5a9909939e6ce7d09e29][][{[}Archive.org{]}]\from[url1652]
\item
  \useURL[url1653][https://schub.wtf/blog/2019/04/08/very-precarious-narrative.html]\from[url1653]
  \useURL[url1654][https://web.archive.org/web/https://schub.wtf/blog/2019/04/08/very-precarious-narrative.html][][{[}Archive.org{]}]\from[url1654]
\stopitemize

{\bf In the context of this guide, Tor is required somewhere to achieve
reasonable and safe anonymity and you should use it if you can.}

\subsubsubsection[title={No VPN/Tor:},reference={no-vpntor-1}]

If you cannot use VPN nor Tor where you are, you probably are in a very
hostile environment where surveillance and control are extremely high.

Just do not, it is not worth it and too risky. You can be de-anonymized
almost instantly by any motivated adversary that could get to your
physical location in a matter of minutes.

Do not forget to check back on \goto{Adversaries (threats)}[threats] and
\goto{Appendix S: Check your network for surveillance/censorship using
OONI}[appendix-s-check-your-network-for-surveillancecensorship-using-ooni].

If you have absolutely no other option and still want to do something,
see \goto{Appendix P: Accessing the internet as safely as possible when
Tor/VPN is not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
{\bf (at your own risk).}

\subsubsubsection[title={Conclusion:},reference={conclusion-2}]

\startplacetable[location=none]
\startxtable
\startxtablehead[head]
\startxrow
\startxcell[width={0.15\textwidth}] Connection Type \stopxcell
\startxcell[width={0.05\textwidth}] Anonymity \stopxcell
\startxcell[width={0.15\textwidth}] Ease of Access to online
resources \stopxcell
\startxcell[width={0.09\textwidth}] Tor Stream isolation \stopxcell
\startxcell[width={0.17\textwidth}] Safer where Tor is
suspicious/dangerous \stopxcell
\startxcell[width={0.05\textwidth}] Speed \stopxcell
\startxcell[width={0.11\textwidth}] Cost \stopxcell
\startxcell[width={0.21\textwidth}] Recommended \stopxcell
\stopxrow
\stopxtablehead
\startxtablebody[body]
\startxrow
\startxcell[width={0.15\textwidth}] Tor Alone \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Free} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Tor over VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good+} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed (Tor
inaccessible)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Tor over VPN over Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Best} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf Possible} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Poor} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN over Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed
(convenience)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] Self-Hosted VPS VPN/Proxy over
Tor \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Very Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Medium} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed
(convenience)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN/Proxy over Tor over
VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good-} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Poor} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 100€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf If needed (convenience and Tor
inaccessible)} \stopxcell
\stopxrow
\startxrow
\startxcell[width={0.15\textwidth}] VPN/Proxy Alone \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Bad} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf N/A} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf Yes} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 50€/y} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf No} \stopxcell
\stopxrow
\stopxtablebody
\startxtablefoot[foot]
\startxrow
\startxcell[width={0.15\textwidth}] No Tor and VPN \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Bad} \stopxcell
\startxcell[width={0.15\textwidth}] {\bf Unknown} \stopxcell
\startxcell[width={0.09\textwidth}] {\bf N/A} \stopxcell
\startxcell[width={0.17\textwidth}] {\bf No} \stopxcell
\startxcell[width={0.05\textwidth}] {\bf Good} \stopxcell
\startxcell[width={0.11\textwidth}] {\bf Around 100€
(Antenna)} \stopxcell
\startxcell[width={0.21\textwidth}] {\bf No.~At your own
risk.} \stopxcell
\stopxrow
\stopxtablefoot
\stopxtable
\stopplacetable

Unfortunately, using Tor alone will raise the suspicion of many
destinations' platforms. You will face many hurdles (captchas, errors,
difficulties signing up) if you only use Tor. In addition, using Tor
where you are could put you in trouble just for that. But Tor remains
the best solution for anonymity and must be somewhere for anonymity.

\startitemize
\item
  If you intend to create persistent shared and authenticated identities
  on various services where access from Tor is hard, we recommend the
  {\bf VPN over Tor} and {\bf VPS VPN/Proxy over Tor} options (or VPN
  over Tor over VPN if needed). It might be a bit less secure against
  correlation attacks due to breaking Tor Stream isolation but provides
  much better convenience in accessing online resources than just using
  Tor. It is an \quotation{acceptable} trade-off IMHP if you are careful
  enough with your identity.

  \startitemize[packed]
  \item
    {\bf Note: It is becoming more common that mainstream services and
    CDNS are also blocking or hindering VPN users with captchas and
    other various obstacles}. {\bf In that case, a self-hosted VPS with
    a VPN/Proxy over Tor is the best solution for this as having your
    own dedicated VPS guarantees you are the sole user of your IP and
    encounter little to no obstacles.} Consider a \goto{Self-hosted
    VPN/Proxy on a Monero/Cash-paid VPS (for users more familiar with
    Linux)}[self-hosted-vpnproxy-on-a-monerocash-paid-vps-for-users-more-familiar-with-linux]
    if you want the least amount of issues (this will be explained in
    the next section in more details).
  \stopitemize
\item
  If your intent however is just to browse random services anonymously
  without creating specific shared identities, using tor friendly
  services; or if you do not want to accept that trade-off in the
  earlier option. {\bf Then we recommend using the Tor Only route to
  keep the full benefits of Stream Isolation (or Tor over VPN if you
  need to).}
\item
  If cost is an issue, we recommend the Tor Only option if possible.
\item
  If both Tor and VPN access are impossible or dangerous then you have
  no choice but to rely on Public wi-fi safely. See \goto{Appendix P:
  Accessing the internet as safely as possible when Tor and VPNs are not
  an
  option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
\stopitemize

For more information, you can also see the discussions here that could
help decide yourself:

\startitemize
\item
  Tor Project:
  \useURL[url1655][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorPlusVPN]\from[url1655]
  \useURL[url1656][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorPlusVPN][][{[}Archive.org{]}]\from[url1656]
\item
  Tails Documentation:

  \startitemize
  \item
    \useURL[url1657][https://gitlab.tails.boum.org/tails/blueprints/-/wikis/vpn_support/]\from[url1657]
    \useURL[url1658][https://web.archive.org/web/https://gitlab.tails.boum.org/tails/blueprints/-/wikis/vpn_support/][][{[}Archive.org{]}]\from[url1658]
  \item
    \useURL[url1659][https://tails.boum.org/support/faq/index.en.html\#index20h2]\from[url1659]
    \useURL[url1660][https://web.archive.org/web/https://tails.boum.org/support/faq/index.en.html][][{[}Archive.org{]}]\from[url1660]
  \stopitemize
\item
  Whonix Documentation (in this order):

  \startitemize
  \item
    \useURL[url1661][https://www.whonix.org/wiki/Tunnels/Introduction]\from[url1661]
    \useURL[url1662][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Introduction][][{[}Archive.org{]}]\from[url1662]
  \item
    \useURL[url1663][https://www.whonix.org/wiki/Tunnels/Connecting_to_Tor_before_a_VPN]\from[url1663]
    \useURL[url1664][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_Tor_before_a_VPN][][{[}Archive.org{]}]\from[url1664]
  \item
    \useURL[url1665][https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor]\from[url1665]
    \useURL[url1666][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor][][{[}Archive.org{]}]\from[url1666]
  \stopitemize
\item
  Some papers on the matter:

  \startitemize[packed]
  \item
    \useURL[url1667][https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study]\from[url1667]
    \useURL[url1668][https://web.archive.org/web/https://www.researchgate.net/publication/324251041_Anonymity_communication_VPN_and_Tor_a_comparative_study][][{[}Archive.org{]}]\from[url1668]
  \stopitemize
\stopitemize

\subsubsection[title={Getting an anonymous
VPN/Proxy:},reference={getting-an-anonymous-vpnproxy-1}]

{\bf Skip this step if you want to use Tor only or VPN is not an
option.}

See \goto{Appendix O: Getting an anonymous
VPN/Proxy}[appendix-o-getting-an-anonymous-vpnproxy]

\subsubsection[title={Note about Plausible
Deniability:},reference={note-about-plausible-deniability}]

Qubes OS uses LUKS for full disk encryption and it is technically
possible to achieve a form of deniability by using detached LUKS
headers. This is not yet integrated into this guide but you will find an
evolving tutorial on how to achieve this here:
\useURL[url1669][https://forum.qubes-os.org/t/qubes-os-installation-detached-encrypted-boot-and-header/6205]\from[url1669]
and some more background information within the Linux Host OS section
(see \goto{Note about plausible deniability on
Linux}[note-about-plausible-deniability-on-linux]).

\subsubsection[title={Installation:},reference={installation-3}]

You will follow the instructions from their own guide
\useURL[url1670][https://www.qubes-os.org/doc/installation-guide/]\from[url1670]
\useURL[url1671][https://web.archive.org/web/https://www.qubes-os.org/doc/installation-guide/][][{[}Archive.org{]}]\from[url1671]:

(Secure Boot is not supported as per their FAQ:
\useURL[url1672][https://www.qubes-os.org/faq/\#is-secure-boot-supported]\from[url1672]
\useURL[url1673][https://web.archive.org/web/https://www.qubes-os.org/faq/][][{[}Archive.org{]}]\from[url1673]
so it should be disabled in the BIOS/UEFI settings.)

\startitemize
\item
  Download the latest Qubes OS 4.1.x installation ISO according to their
  hardware compatibility list.
\item
  Get and verify the Qubes OS Master Signing key:
  \useURL[url1674][https://keys.qubes-os.org/keys/qubes-master-signing-key.asc]\from[url1674]
\item
  Prepare a USB key with the Qubes OS ISO file
\item
  Install Qubes OS according to the installation guide:

  \startitemize
  \item
    {\bf If you want to use Tor or VPN over Tor: Check the}
    "{\bf Enabling system and template updates over the Tor anonymity
    network using Whonix" during the last step. This will force all
    Qubes OS updates to go through Tor. While this will significantly
    reduce your update speed, it will increase your anonymity from the
    start.} (If you are having issues connecting to Tor due to
    censorship or blocking, consider using Tor Bridges as recommended
    earlier. Just follow the tutorial provided here:
    \useURL[url1675][https://www.whonix.org/wiki/Bridges]\from[url1675]
    \useURL[url1676][https://web.archive.org/web/https://www.whonix.org/wiki/Bridges][][{[}Archive.org{]}]\from[url1676])
  \item
    If you want to use Tor over VPN or cannot use any of those, leave it
    unchecked.
  \item
    Be absolutely sure that you are verifying the signature of the ISO,
    which you can find on this page:
    \useURL[url1677][https://www.qubes-os.org/security/verifying-signatures/]\from[url1677]
    \useURL[url1678][https://web.archive.org/web/20220511015546/https://www.qubes-os.org/security/verifying-signatures/][][{[}Archive.org{]}]\from[url1678].
    Check by obtaining the fingerprint from multiple independent sources
    in several different ways as recommended. This is to ensure the
    image has not been tampered with. Do not skip this vital step even
    though you know you are getting the ISO from a trusted source,
    because it's possible for the Qubes website to be compromised.
  \stopitemize
\item
  If you are prevented from using Tor, there is no point in installing
  the Whonix VM templates. You can disable Whonix installation during
  the post-installation, initial setup wizard.
\stopitemize

To be sure your Qubes ISO hasn't been tampered with, you should get the
Qubes master key fingerprint from multiple different sources. This guide
can be used as one source.

The Qubes master signing key fingerprint should match
\type{427F 11FD 0FAA 4B08 0123  F01C DDFA 1A3E 3687 9494}.

{\em Remember to read the guide to verifying signatures on the Qubes
website:
\useURL[url1679][https://www.qubes-os.org/security/verifying-signatures/]\from[url1679]
\useURL[url1680][https://web.archive.org/web/20220511015546/https://www.qubes-os.org/security/verifying-signatures/][][{[}Archive.org{]}]\from[url1680].}

\subsubsection[title={Lid Closure
Behavior:},reference={lid-closure-behavior}]

Unfortunately, Qubes OS does not support hibernation\footnote{Qubes OS
  Issues, Simulate Hibernation / Suspend-To-Disk (Issue \#2414)
  \useURL[url1681][https://github.com/QubesOS/qubes-issues/issues/2414]\from[url1681]
  \useURL[url1682][https://web.archive.org/web/https://github.com/QubesOS/qubes-issues/issues/2414][][{[}Archive.org{]}]\from[url1682]}
which is an issue regarding cold-boot attacks. To mitigate those, I
highly recommend that you configure Qubes OS to shut down on any power
action (power button, lid closure). You can do set this from the XFCE
Power Manager. Do not use the sleep features.

\subsubsection[title={Anti Evil Maid
(AEM):},reference={anti-evil-maid-aem}]

{\bf Warning}, this step only works with Intel CPUs, a legacy BIOS, TPM
1.2. If you do not meet those requirements, skip this step.

Anti Evil Maid is an implementation of a TPM-based static trusted boot
with a primary goal to prevent Evil Maid attacks. Installing and using
AEM requires attaching a USB drive directly to dom0. So the user must
make a choice between protecting dom0 from a potentially malicious USB
drive, and protecting the system from Evil Maid attacks. Note that AEM
is only compatible with Intel CPUs and Legacy boot options.

The preference for mitigating any evil maid attack is to maintain
physical control of your device at all times. If that is not possible,
then this might be relevant to your threat model.

Before deciding to use this system, please read \goto{Appendix B4:
Important notes about evil-maid and
tampering}[appendix-b4-important-notes-about-evil-maid-and-tampering]

See the following links for more details and installation instructions:

\startitemize
\item
  \useURL[url1683][https://www.qubes-os.org/doc/anti-evil-maid/]\from[url1683]
  \useURL[url1684][https://web.archive.org/web/https://www.qubes-os.org/doc/anti-evil-maid/][][{[}Archive.org{]}]\from[url1684]
\item
  \useURL[url1685][https://blog.invisiblethings.org/2011/09/07/anti-evil-maid.html]\from[url1685]
  \useURL[url1686][https://web.archive.org/web/https://blog.invisiblethings.org/2011/09/07/anti-evil-maid.html][][{[}Archive.org{]}]\from[url1686]
\item
  \useURL[url1687][https://github.com/QubesOS/qubes-antievilmaid]\from[url1687]
  \useURL[url1688][https://web.archive.org/web/https://github.com/QubesOS/qubes-antievilmaid][][{[}Archive.org{]}]\from[url1688]
\stopitemize

\subsubsection[title={Connect to a Public
Wi-Fi:},reference={connect-to-a-public-wi-fi}]

Remember this should be done from a safe place (see \goto{Find some safe
places with decent public
Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi] and
\goto{Appendix Q: Using long-range Antenna to connect to Public Wi-Fis
from a safe
distance}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance]):

\startitemize
\item
  In the upper right corner, Left-click the network icon and note the
  Wi-Fi SSID you want to connect to
\item
  Now right-click the network icon and select Edit Connections
\item
  Add one using the + sign
\item
  Select Wi-Fi
\item
  Enter the SSID of the desired network you noted before (if needed)
\item
  Select Cloned Mac Address
\item
  Select Random to randomize your Mac Address

  \startitemize[packed]
  \item
    {\bf Warning: This setting should work in most cases but can be
    unreliable on some network adapters. Please refer to this
    documentation if you want to be sure:
    \useURL[url1689][https://github.com/Qubes-Community/Contents/blob/master/docs/privacy/anonymizing-your-mac-address.md]\from[url1689]}
    \useURL[url1690][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/privacy/anonymizing-your-mac-address.md][][{[}Archive.org{]}]\from[url1690]
  \stopitemize
\item
  Save
\item
  Now again Left-click the connection account and connect to the desired
  Wi-Fi
\item
  If this is an Open Wi-Fi requiring registration: You will have to
  start a browser to register

  \startitemize
  \item
    After you are connected, Start a Disposable Fedora Firefox Browser
  \item
    Go into the upper left Menu
  \item
    Select Disposable, Fedora, Firefox
  \item
    Open Firefox and register (anonymously) into the Wi-Fi
  \stopitemize
\stopitemize

\subsubsection[title={Upgrading Qubes OS from 4.0.x to 4.1.x (you should
do
it)},reference={upgrading-qubes-os-from-4.0.x-to-4.1.x-you-should-do-it}]

Personally, we wouldn't do it in-place and do a fresh install.

But if you really want to, it's technically possible by following this
guide:
\useURL[url1691][https://www.qubes-os.org/doc/upgrade/4.1/]\from[url1691]
\useURL[url1692][https://web.archive.org/web/https://www.qubes-os.org/doc/upgrade/4.1/][][{[}Archive.org{]}]\from[url1692]

\subsubsection[title={Updating Qubes OS:},reference={updating-qubes-os}]

After you are connected to a Wi-Fi you need to update Qubes OS and
Whonix. You must keep Qubes OS always updated before conducting any
sensitive activities. Especially your Browser VMs. Normally, Qubes OS
will warn you about updates in the upper right corner with a gear icon.
As this might take a while in this case due to using Tor, you can force
the process by doing the following:

\startitemize
\item
  Click the upper left Applications icon
\item
  Select Qubes Tools
\item
  Select Qubes Update
\item
  Check the \quotation{Enable updates for Qubes without known available
  updates}
\item
  Select all the Qubes
\item
  Click Next and wait for updates to complete
\item
  If you checked the Tor option during install, be patient as this might
  take a while over Tor
\stopitemize

\subsubsection[title={Upgrading Whonix from version 15 to version
16:},reference={upgrading-whonix-from-version-15-to-version-16}]

Again, you should really do this ASAP. We would use a fresh install but
it's technically possible to do it in-place, see
\useURL[url1693][https://www.whonix.org/wiki/Release_Upgrade_Whonix_15_to_Whonix_16]\from[url1693]
\useURL[url1694][https://web.archive.org/web/https://www.whonix.org/wiki/Release_Upgrade_Whonix_15_to_Whonix_16][][{[}Archive.org{]}]\from[url1694]

Follow the instructions on
\useURL[url1695][https://www.whonix.org/wiki/Qubes/Install]\from[url1695]
\useURL[url1696][https://web.archive.org/web/https://www.whonix.org/wiki/Qubes/Install][][{[}Archive.org{]}]\from[url1696].
{\em If you're running Qubes 4.1.x, this is already done for you.}

\subsubsection[title={Hardening Qubes
OS:},reference={hardening-qubes-os}]

{\bf Disclaimer: This section is under construction and will be worked
on heavily in the next releases. This section is for more advanced
users.}

\subsubsubsection[title={Application
Sandboxing:},reference={application-sandboxing}]

While Qubes OS is already sandboxing everything by design, it is also
useful to consider sandboxing apps themselves using AppArmor or SELinux.

\subsubsubsubsection[title={AppArmor:},reference={apparmor}]

\quotation{AppArmor is a Mandatory Access Control framework. When
enabled, AppArmor confines programs according to a set of rules that
specify what files a given program can access. This initiative-taking
approach helps protect the system against both known and unknown
vulnerabilities} (Debian.org).

Basically, AppArmor\footnote{Wikipedia, AppArmor
  \useURL[url1697][https://en.wikipedia.org/wiki/AppArmor]\from[url1697]
  \useURL[url1698][https://wikiless.org/wiki/AppArmor][][{[}Wikiless{]}]\from[url1698]
  \useURL[url1699][https://web.archive.org/web/https://en.wikipedia.org/wiki/AppArmor][][{[}Archive.org{]}]\from[url1699]}
is an application sandboxing system. By default, it is not enabled but
supported by Qubes OS.

\startitemize
\item
  About the Fedora VMs:

  \startitemize[packed]
  \item
    Fedora does not use AppArmor but rather SELinux so see the next
    section for that.
  \stopitemize
\item
  About the Debian VMs:

  \startitemize[packed]
  \item
    Head out and read
    \useURL[url1700][https://wiki.debian.org/AppArmor]\from[url1700]
    \useURL[url1701][https://web.archive.org/web/https://wiki.debian.org/AppArmor][][{[}Archive.org{]}]\from[url1701]
  \stopitemize
\item
  About any other Linux VM:

  \startitemize
  \item
    Head out and read:

    \startitemize
    \item
      \useURL[url1702][https://wiki.archlinux.org/title/AppArmor]\from[url1702]
      \useURL[url1703][https://web.archive.org/web/https://wiki.archlinux.org/title/AppArmor][][{[}Archive.org{]}]\from[url1703]
    \item
      \useURL[url1704][https://wiki.debian.org/AppArmor]\from[url1704]
      \useURL[url1705][https://web.archive.org/web/https://wiki.debian.org/AppArmor][][{[}Archive.org{]}]\from[url1705]
    \stopitemize
  \stopitemize
\item
  About the Whonix VMs, you should consider enabling and using AppArmor,
  especially on the Whonix VMs of Qubes OS:

  \startitemize
  \item
    First, you should head out and read
    \useURL[url1706][https://www.whonix.org/wiki/AppArmor]\from[url1706]
    \useURL[url1707][https://web.archive.org/web/https://www.whonix.org/wiki/AppArmor][][{[}Archive.org{]}]\from[url1707]
  \item
    Secondly, you should head out again and read
    \useURL[url1708][https://www.whonix.org/wiki/Qubes/AppArmor]\from[url1708]
    \useURL[url1709][https://web.archive.org/web/https://www.whonix.org/wiki/Qubes/AppArmor][][{[}Archive.org{]}]\from[url1709]
  \stopitemize
\stopitemize

\subsubsubsubsection[title={SELinux:},reference={selinux}]

SELinux\footnote{Wikipedia, SELinux
  \useURL[url1710][https://en.wikipedia.org/wiki/Security-Enhanced_Linux]\from[url1710]
  \useURL[url1711][https://wikiless.org/wiki/Security-Enhanced_Linux][][{[}Wikiless{]}]\from[url1711]
  \useURL[url1712][https://web.archive.org/web/https://en.wikipedia.org/wiki/Security-Enhanced_Linux][][{[}Archive.org{]}]\from[url1712]}
is similar to AppArmor. The differences between SELinux and AppArmor are
technical details into which we will not get.

Here is a good explanation of what it is:
\useURL[url1713][https://www.youtube.com/watch?v=_WOKRaM-HI4]\from[url1713]
\useURL[url1714][https://yewtu.be/watch?v=_WOKRaM-HI4][][{[}Invidious{]}]\from[url1714]

In this guide and the context of Qubes OS, it is important to mention it
as it is the recommended method by Fedora which is one of the default
systems on Qubes OS.

So, head out and read
\useURL[url1715][https://docs.fedoraproject.org/en-US/quick-docs/getting-started-with-selinux/]\from[url1715]
\useURL[url1716][https://web.archive.org/web/https://docs.fedoraproject.org/en-US/quick-docs/getting-started-with-selinux/][][{[}Archive.org{]}]\from[url1716]

You could make use of SELinux on your Fedora Templates. But this is up
to you. Again, this is for advanced users.

\subsubsection[title={Setup the VPN
ProxyVM:},reference={setup-the-vpn-proxyvm}]

{\bf Skip this step if you do not want to use a VPN and just use Tor
only or if VPN is not an option either.}

This tutorial should also work with any OpenVPN provider (Mullvad, IVPN,
Safing.io, or Proton VPN for instance).

This is based on the tutorial provided by Qubes OS themselves
(\useURL[url1717][https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/vpn.md]\from[url1717]
\useURL[url1718][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/vpn.md][][{[}Archive.org{]}]\from[url1718]).
If you are familiar with this process, you can follow their tutorial.

Alternatively, Mullvad also have a help article that guides you through
setting up a Proxy VM
\useURL[url1719][https://mullvad.net/en/help/qubes-os-4-and-mullvad-vpn/]\from[url1719]
\useURL[url1720][https://web.archive.org/web/https://mullvad.net/en/help/qubes-os-4-and-mullvad-vpn/][][{[}Archive.org{]}]\from[url1720].

\subsubsubsection[title={Create the
ProxyVM:},reference={create-the-proxyvm}]

\startitemize
\item
  Click the Applications icon (upper left corner)
\item
  Click Create Qubes VM
\item
  Name and label as you wish: I suggest \quotation{VPNGatewayVM}
\item
  Select Type: Standalone Qube copied from a template
\item
  Select Template: Debian-11 (the default)
\item
  Select Networking:

  \startitemize
  \item
    Select sys-whonix if you want to do VPN over Tor / Tor only
    (recommended)
  \item
    Select sys-firewall if you want to do Tor over VPN / No Tor or VPN /
    Just VPN
  \stopitemize
\item
  Advanced: Check provides network
\item
  Check \quotation{Start Qube automatically on boot}
\item
  Create the VM

  \startitemize[packed]
  \item
    If you are going for VPN over Tor, you need to go into the settings
    of the ProxyVM you made and select \quotation{sys-vpn} for
    networking.
    \startitemize[packed]
    \item
      An easier way to setup your ProxyVM is to simply run a VPN client
      on the ProxyVM.
    \item
      Usually when you connect to your VPN provider's website, it'll
      tell you whether your traffic is being properly routed through the
      VPN.
    \stopitemize
  \item
    If you are going for Tor over VPN, the opposite should be done, the
    ProxyVM should have its networking set as \quotation{sys-tor} and
    the \quotation{sys-tor} VM should have \quotation{sys-vpn} for its
    networking.
    \startitemize[packed]
    \item
      Test the VM connectivity to the internet by launching a Browser
      within the ProxyVM. Visit
      \useURL[url1721][https://check.torproject.org]\from[url1721]
      \useURL[url1722][https://web.archive.org/web/https://check.torproject.org/][][{[}Archive.org{]}]\from[url1722]
      (It should say you are connected to Tor)
    \stopitemize
  \stopitemize
\stopitemize

\subsubsubsection[title={Download the VPN configuration from your
cash/Monero paid VPN
provider:},reference={download-the-vpn-configuration-from-your-cashmonero-paid-vpn-provider}]

\subsubsubsubsection[title={If you can use
Tor:},reference={if-you-can-use-tor-1}]

{\bf Using Tor Browser (be careful not to use any Clearnet Browser for
this),} download the necessary OpenVPN configuration files for Linux
from your VPN provider.

This can be done by using the Qubes OS integrated Tor Browser by
accessing the Applications icon (upper left corner) and selecting the
Disposable Tor Browser application.

\subsubsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-5}]

Launch a browser from a DisposableVM and download the necessary OpenVPN
configuration files for Linux from your VPN provider. See \goto{Appendix
P: Accessing the internet as safely as possible when Tor and VPNs are
not an
option.}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

When you are done downloading the configuration files within the
Disposable Browser (usually a zip file), copy them to your ProxyVM VPN
Gateway machine (using right-click on the file and send to another
AppVM).

\subsubsubsection[title={Configure the
ProxyVM:},reference={configure-the-proxyvm}]

{\bf Skip this step if you are not going to use a VPN}

\startitemize
\item
  Click the upper left corner
\item
  Select the VPN VM you just created
\item
  Open the Files of the VPN VM
\item
  Go into \quotation{Qubesincoming} > dispXXXX (This was your Disposable
  Browser VM)
\item
  Double Click your downloaded zip file containing your OpenVPN
  configuration files to unzip it
\item
  Now select the VPN VM again and start a terminal
\item
  Install OpenVPN with the following command
  \type{sudo apt-get install openvpn}
\item
  Copy all the OpenVPN configuration files provided by your VPN provider
  in /etc/openvpn/
\item
  For all the OpenVPN configuration files (for each location):

  \startitemize
  \item
    Edit each file using \type{sudo nano configfile} (do not forget sudo
    to edit the file within /etc)
  \item
    Change the protocol from \quotation{udp} to \quotation{tcp} (Tor
    does not support UDP)
  \item
    Change the port to a supported (by your VPN provider) TCP port (like
    80 or 443)
  \item
    Save and exit each file
  \stopitemize
\item
  Edit the OpenVPN config file (/etc/default/openvpn) by typing
  \type{sudo nano /etc/default/openvpn}

  \startitemize
  \item
    Change \type{#AUTOSTART="all"} to \type{AUTOSTART="all"} (in other
    words, remove the \quotation{\#})
  \item
    Save and Exit
  \stopitemize
\item
  Edit the Qubes firewall rules file
  (/rw/config/qubes-firewall-user-script) by typing \quotation{sudo nano
  /rw/config/qubes-firewall-user-script}

  \startitemize
  \item
    Add the following lines (without the quotes and remarks in
    parentheses)

    \startitemize[packed]
    \item
      \type{virtualif=10.137.0.17}
    \stopitemize
  \stopitemize
\stopitemize

\startblockquote
(This is the IP of the ProxyVM, this is not dynamic, and you might need
to change it at reboot)
\stopblockquote

\startitemize[packed]
\item
  \type{vpndns1=10.8.0.1}
\stopitemize

\startblockquote
(This is the first DNS server of your VPN provider; it should not
change)
\stopblockquote

\startitemize[packed]
\item
  \type{vpndns2=10.14.0.1}
\stopitemize

\startblockquote
(This is the second DNS server of your VPN provider; it should not
change)
\stopblockquote

\startitemize
\item
  \type{iptables -F OUTPUT}
\item
  \type{iptables -I FORWARD -o eth0 -j DROP}
\item
  \type{iptables -I FORWARD -i eth0 -j DROP}
\item
  \type{ip6tables -I FORWARD -o eth0 -j DROP}
\item
  \type{ip6tables -I FORWARD -i eth0 -j DROP}
\stopitemize

\startblockquote
(These will block outbound traffic when the VPN is down, it is a kill
switch, more information here
\useURL[url1723][https://linuxconfig.org/how-to-create-a-vpn-killswitch-using-iptables-on-linux]\from[url1723]
\useURL[url1724][https://web.archive.org/web/https://linuxconfig.org/how-to-create-a-vpn-killswitch-using-iptables-on-linux][][{[}Archive.org{]}]\from[url1724]
)
\stopblockquote

\startitemize
\item
  \type{iptables -A OUTPUT -d 10.8.0.1 -j ACCEPT}
\item
  \type{iptables -A OUTPUT -d 10.14.0.1 -j ACCEPT}
\stopitemize

\startblockquote
(These will allow DNS requests to your VPN provider DNS to resolve the
name of the VPN servers in the OpenVPN configuration files)
\stopblockquote

\startitemize
\item
  \type{iptables -F PR-QBS -t nat}
\item
  \type{iptables -A PR-QBS -t nat -d $virtualif -p udp --dport 53 -j DNAT --to $vpndns1}
\item
  \type{iptables -A PR-QBS -t nat -d $virtualif -p tcp --dport 53 -j DNAT --to $vpndns1}
\item
  \type{iptables -A PR-QBS -t nat -d $virtualif -p udp --dport 53 -j DNAT --to $vpndns2}
\item
  \type{iptables -A PR-QBS -t nat -d $virtualif -p tcp --dport 53 -j DNAT --to $vpndns2}
\stopitemize

\startblockquote
(These will redirect all DNS requests from the ProxyVM to the VPN
provider DNS servers)
\stopblockquote

\startitemize
\item
  Restart the ProxyVM by typing \quotation{sudo reboot}
\item
  Test the ProxyVM VPN connectivity by starting a Browser within it and
  going to your VPN provider test page. It should now say you are
  connected to a VPN:

  \startitemize
  \item
    Mullvad:
    \useURL[url1725][https://mullvad.net/en/check/]\from[url1725]
    \useURL[url1726][https://web.archive.org/web/https://mullvad.net/en/check/][][{[}Archive.org{]}]\from[url1726]
  \item
    IVPN: \useURL[url1727][https://www.ivpn.net/]\from[url1727]
    \useURL[url1728][https://web.archive.org/web/https://www.ivpn.net/][][{[}Archive.org{]}]\from[url1728]
    (check the top banner)
  \item
    Proton VPN: Follow their instructions here
    \useURL[url1729][https://protonvpn.com/support/vpn-ip-change/]\from[url1729]
    \useURL[url1730][https://web.archive.org/web/https://protonvpn.com/support/vpn-ip-change/][][{[}Archive.org{]}]\from[url1730]
  \stopitemize
\stopitemize

\subsubsubsection[title={VPN over Tor:},reference={vpn-over-tor}]

\subsubsubsubsection[title={Set up a disposable Browser Qube for VPN
over Tor
use:},reference={set-up-a-disposable-browser-qube-for-vpn-over-tor-use}]

\startitemize
\item
  Within the Applications Menu (upper left corner), Select the
  Disposable Fedora VM
\item
  Go into Qube Settings
\item
  Click Clone Qube and name it like \quotation{sys-VPNoverTor} for
  example
\item
  Again, within the Application Menu, Select the Clone you just created
\item
  Go into Qube Settings
\item
  Change the Networking to your ProxyVPN created earlier
\item
  Click OK
\item
  Start a Browser within the Whonix Workstation
\item
  Check that you have VPN connectivity, and it should work
\stopitemize

You should now have a Disposable Browser VM that works with your
cash/Monero paid VPN over Tor.

\subsubsubsection[title={Tor Over VPN:},reference={tor-over-vpn-3}]

Reconfigure your Whonix Gateway VM to use your ProxyVM as NetVM instead
of sys-firewall:

\startitemize
\item
  Within the Applications Menu (upper left corner), Select the
  sys-whonix VM.
\item
  Go into Qube Settings
\item
  Change the Networking NetVM to your ProxyVPN created earlier instead
  of sys-firewall
\item
  Click OK
\item
  Create a Whonix Workstation Disposable VM (follow this tutorial
  \useURL[url1731][https://www.whonix.org/wiki/Qubes/DisposableVM]\from[url1731]
  \useURL[url1732][https://web.archive.org/web/https://www.whonix.org/wiki/Qubes/DisposableVM][][{[}Archive.org{]}]\from[url1732])
\item
  Launch a browser from the VM and Check that you have VPN connectivity,
  and it should work.
\stopitemize

Alternatively, you can also create any other type of disposable VM (but
less secure than the Whonix one):

\startitemize
\item
  Within the Applications Menu (upper left corner), Select the
  Disposable Fedora VM
\item
  Go into Qube Settings
\item
  Click Clone Qube and name it like \quotation{sys-TorOverVPN} for
  example
\item
  Again, within the Application Menu, Select the Clone you just created
\item
  Go into Qube Settings
\item
  Change the Networking to your sys-whonix created earlier
\item
  Click OK
\item
  Start a Browser within the VM
\item
  Check that you have VPN connectivity, and it should work
\stopitemize

You should now have a Disposable Browser VM that works with Tor over a
cash/Monero paid VPN.

\subsubsubsection[title={Any other combination? (VPN over Tor over VPN
for
instance)},reference={any-other-combination-vpn-over-tor-over-vpn-for-instance}]

By now you should understand how easy it is to route traffic from one VM
to the other with Qubes.

You can create several ProxyVMs for VPN accesses and keep the Whonix one
for Tor. You just need to change the NetVM settings of the various VMs
to change the layout.

You could have:

\startitemize
\item
  One VPN ProxyVM for the base Qubes OS connection
\item
  Use the sys-whonix VM (Whonix Gateway) getting its network from the
  first ProxyVM
\item
  A second VPN ProxyVM getting network from sys-whonix
\item
  Disposable VMs getting their NetVM from the second ProxyVM
\stopitemize

This would result in User > VPN > Tor > VPN > Internet (VPN over Tor
over VPN). Experiment for yourself. Qubes OS is great for these things.

\subsubsection[title={Setup a safe Browser within Qubes OS (optional but
recommended):},reference={setup-a-safe-browser-within-qubes-os-optional-but-recommended}]

See: \goto{Appendix V: What browser to use in your Guest VM/Disposable
VM}[appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm]

\subsubsubsection[title={Fedora Disposable
VM:},reference={fedora-disposable-vm}]

Within the Applications Menu (upper left), Select the Fedora-36
template:

\startitemize
\item
  Go into Qube Settings
\item
  Clone the VM and name it \quotation{fedora-36-brave} (this VM template
  will have Brave)
\item
  Again, go into the Applications Menu and select the clone you just
  created
\item
  Go into Qube Settings
\item
  Change its network to the ProxyVPN and Apply
\item
  Launch a terminal from the VM
\stopitemize

If you want to use Brave: apply the instructions from
\useURL[url1733][https://brave.com/linux/]\from[url1733]
\useURL[url1734][https://web.archive.org/web/https://brave.com/linux/][][{[}Archive.org{]}]\from[url1734]
and run the following commands:

\startitemize
\item
  \type{sudo dnf install dnf-plugins-core}
\item
  \type{sudo dnf config-manager --add-repo https://brave-browser-rpm-release.s3.brave.com/x86_64/}
\item
  \type{sudo rpm --import https://brave-browser-rpm-release.s3.brave.com/brave-core.asc}
\item
  \type{sudo dnf install brave-browser}
\stopitemize

You should also consider hardening your browser, see \goto{Appendix V1:
Hardening your Browsers}[appendix-v1-hardening-your-browsers]

\subsubsubsection[title={Whonix Disposable
VM:},reference={whonix-disposable-vm}]

Edit the Whonix Disposable VM template and follow instructions here
\useURL[url1735][https://www.whonix.org/wiki/Install_Software]\from[url1735]
\useURL[url1736][https://web.archive.org/web/https://www.whonix.org/wiki/Install_Software][][{[}Archive.org{]}]\from[url1736]

\subsubsubsection[title={Additional browser
precautions:},reference={additional-browser-precautions}]

\startitemize
\item
  See: \goto{Appendix V1: Hardening your
  Browsers}[appendix-v1-hardening-your-browsers]
\item
  See: \goto{Appendix A5: Additional browser precautions with JavaScript
  enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled]
\stopitemize

\subsubsection[title={Setup an Android
VM:},reference={setup-an-android-vm}]

Because sometimes you want to run mobile Apps anonymously too. You can
also set up an Android VM for this purpose. As in other cases, ideally,
this VM will also be sitting behind the Whonix Gateway for Tor network
connectivity. But this can also be set up as VPN over Tor over VPN.

Since the Android-x86 does not work \quotation{well} with Qubes OS (my
own experience). We will instead recommend using AnBox
(\useURL[url1737][https://anbox.io/]\from[url1737]
\useURL[url1738][https://web.archive.org/web/https://anbox.io/][][{[}Archive.org{]}]\from[url1738])
which works \quotation{well enough} with Qubes OS. More information can
also be found at
\useURL[url1739][https://www.whonix.org/wiki/Anbox]\from[url1739]
\useURL[url1740][https://web.archive.org/web/https://www.whonix.org/wiki/Anbox][][{[}Archive.org{]}]\from[url1740]

\subsubsubsection[title={If you can use Tor (natively or over a
VPN):},reference={if-you-can-use-tor-natively-or-over-a-vpn-4}]

Later in the Qubes settings during creation:

\startitemize
\item
  Select Networking
\item
  Change to sys-whonix to put it behind the Whonix Gateway (over Tor).
\stopitemize

\subsubsubsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-6}]

Just use the tutorials as is. See \goto{Appendix P: Accessing the
internet as safely as possible when Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option].

\subsubsubsection[title={Installation:},reference={installation-4}]

Basically, follow the tutorial here:

\startitemize
\item
  Click the Applications icon (upper left corner)
\item
  Click Create Qubes VM
\item
  Name and label as you wish: we suggest \quotation{Android}
\item
  Select Type: Standalone Qube copied from a template
\item
  Select Template: Debian-11
\item
  Select Networking:

  \startitemize
  \item
    Select sys-whonix if you want to do VPN over Tor / Tor only
    (recommended)
  \item
    Select sys-firewall if you want to do Tor over VPN / No Tor or VPN /
    Just VPN
  \stopitemize
\item
  Start the Qube and open a Terminal
\stopitemize

Now you will have to follow the instructions from here:
\useURL[url1741][https://github.com/anbox/anbox-modules]\from[url1741]
\useURL[url1742][https://web.archive.org/web/https://github.com/anbox/anbox-modules][][{[}Archive.org{]}]\from[url1742]:

\startitemize
\item
  Start by closing the AnBox Modules repository by running:

  \startitemize
  \item
    \type{git clone https://github.com/anbox/anbox-modules.git}
  \item
    Go into the cloned directory
  \item
    Run \type{./INSTALL.sh} (or follow the manual instructions on the
    tutorial)
  \stopitemize
\item
  Reboot the machine
\item
  Open a new terminal
\item
  Install Snap by running:

  \startitemize[packed]
  \item
    \type{sudo apt install snapd}
  \stopitemize
\stopitemize

Now you will follow their other tutorial from here:
\useURL[url1743][https://github.com/anbox/anbox/blob/master/docs/install.md]\from[url1743]
\useURL[url1744][https://web.archive.org/web/https://github.com/anbox/anbox/blob/master/docs/install.md][][{[}Archive.org{]}]\from[url1744]:

\startitemize
\item
  Install AnBox by running:

  \startitemize[packed]
  \item
    \type{snap install --devmode --beta anbox}
  \stopitemize
\item
  To update AnBox later, run:

  \startitemize[packed]
  \item
    \type{snap refresh --beta --devmode anbox}
  \stopitemize
\item
  Reboot the machine
\item
  Open a terminal again and start the emulator by running:

  \startitemize[packed]
  \item
    \type{anbox.appmgr}
  \stopitemize
\stopitemize

This should pop up an Android interface. Sometimes it will crash, and
you might have to run it twice to make it work.

If you want to install apps on this emulator:

\startitemize
\item
  Install ADB by running:

  \startitemize[packed]
  \item
    \type{sudo apt install android-tools-adb}
  \stopitemize
\item
  First start Anbox (run \type{anbox.appmgr})
\item
  Grab the APK of any app you want to install
\item
  Now install any APK by running:

  \startitemize[packed]
  \item
    \type{adb install my-app.apk}
  \stopitemize
\stopitemize

That's it, you should now have an Android Qube over Tor (or anything
else) capable of running pretty much any App you can sideload with ADB.
This is, for now, the easiest way to get Android emulation on Qubes OS.

\subsubsection[title={KeePassXC:},reference={keepassxc-1}]

You will need somewhere to store your data (logins/passwords,
identities, and TOTP\footnote{Wikipedia, TOTP
  \useURL[url1745][https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm]\from[url1745]
  \useURL[url1746][https://wikiless.org/wiki/Time-based_One-time_Password_algorithm][][{[}Wikiless{]}]\from[url1746]
  \useURL[url1747][https://web.archive.org/web/https://en.wikipedia.org/wiki/Time-based_One-time_Password_algorithm][][{[}Archive.org{]}]\from[url1747]}
information).

For this purpose, KeePassXC is recommended because of its integrated
TOTP feature. This is the ability to create entries for 2FA\footnote{Wikipedia,
  Multi-Factor Authentication
  \useURL[url1748][https://en.wikipedia.org/wiki/Multi-factor_authentication]\from[url1748]
  \useURL[url1749][https://wikiless.org/wiki/Multi-factor_authentication][][{[}Wikiless{]}]\from[url1749]
  \useURL[url1750][https://web.archive.org/web/https://en.wikipedia.org/wiki/Multi-factor_authentication][][{[}Archive.org{]}]\from[url1750]}
authentication with the authenticator feature.

In the context of Qubes OS you should store your sensitive information
within the vault Qube:

\startitemize
\item
  First, click the Applications icon (upper left) and select the vault
  Qube.
\item
  Click Qubes Settings
\item
  Select the Applications tab
\item
  From the list of available applications, add KeePassXC to the list of
  selected applications.
\stopitemize

You are done and can now skip the rest to go to the
\quotation{\goto{Creating your anonymous online
identities}[creating-new-identities]} part.

\subsubsection[title={Tutorial for installing Windows based VMs on Qubes
OS:},reference={tutorial-for-installing-windows-based-vms-on-qubes-os}]

See their tutorial here:
\useURL[url1751][https://github.com/Qubes-Community/Contents/blob/master/docs/os/windows/windows-tools41.md]\from[url1751]
\useURL[url1752][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/os/windows/windows-tools41.md][][{[}Archive.org{]}]\from[url1752]

\section[title={Quick note: Correlation vs
Attribution},reference={quick-note-correlation-vs-attribution}]

{\bf Correlation} is a relationship between two or more variables or
{\bf \useURL[url1753][https://www.digitalshadows.com/blog-and-research/cyber-attacks-the-challenge-of-attribution-and-response/][][attributes]\from[url1753]}.
How are attributions determined? During digital forensic and incident
response (DFIR), analysts typically look for indicators of compromise
(IoCs) following events that call them to act. These indicators usually
consist of IP addresses, names, databases; all of which can prescribe a
certain behavioral \quotation{tag} to an individual or group. This is
called attribution. A principal in statistics is that
\quotation{correlation does not infer causality}. What this means is
that, while you may leave certain traces on certain areas of a device or
network, that only shows presence of action, i.e., not explicitly your
presence. It doesn't show who you are, it only resolves that something
occurred and {\em someone} has done {\em something}.

Attribution is required to prove fault or guilt, and is the prime reason
why people using the Tor network to access the dark web have been
compromised: they left traces that were shown to be connected to their
real identities. Your IP can be --- but is usually not --- a large
enough indicator to attribute guilt. This is shown in the infamous
NotPetya cyber attacks against the U.S., which were later also released
upon Ukraine. Though the White House never {\em said} it was Russia's
doing, they attributed the attack to Russia's
\useURL[url1754][https://www.reuters.com/article/us-britain-russia-gru-factbox/what-is-russias-gru-military-intelligence-agency-idUSKCN1MF1VK][][(GRU)]\from[url1754]
which is a direct office housing the Russian deniable warfare\footnote{Wikipedia,
  Plausible Deniability
  \useURL[url1755][https://en.wikipedia.org/wiki/Plausible_deniability]\from[url1755]
  \useURL[url1756][https://wikiless.org/wiki/Plausible_deniability][][{[}Wikiless{]}]\from[url1756]
  \useURL[url1757][https://web.archive.org/web/https://en.wikipedia.org/wiki/Plausible_deniability][][{[}Archive.org{]}]\from[url1757]}
cyber divisions, uncommonly referred to as \quotation{spy makers} in the
intelligence community (IC).

{\em What is the point}, you may ask? Well, bluntly speaking, this a
perfect example because NotPetya, which is now undoubtedly the work of
Russian cyber operations against foreign countries and governments, has
still never been formally attributed to Russia, only to a known group
within Russia (colloquially dubbed
\useURL[url1758][https://wikiless.org/wiki/Cozy_Bear][][Cozy
Bear]\from[url1758]) which can not be confirmed nor denied given that it
is highly compartmentalized within the structure of Russia's military.
And it's also in part because of the efforts used to disguise itself as
a common Ransomware, and because it routinely used the servers of hacked
foreign assets not linked to Russia or to its internal networks.

It's all to show you the lengths that state actors will go to. You may
not be aware of it, but foreign governments use concealment techniques
such as the ones discussed in the sections of this guide. They routinely
use Tor, VPNs to conceal traffic; they use hacked devices and access to
stolen equipment to perform cyber espionage every day and it makes
attribution incredibly difficult, if not improbable, from a forensic
examiner's point of view. The problem of correlation is trivial, and you
can solve it by simply using IP hiding tools such as a VPN and the Tor
network, but still be connected to your IRL name and IP through data
leaks or other factors. You can not easily be attributed to your
activities if you carefully follow and adopt the given techniques and
skills discussed below.

\section[title={Creating your anonymous online
identities:},reference={creating-your-anonymous-online-identities}]

\subsection[title={Understanding the methods used to prevent anonymity
and verify
identity:},reference={understanding-the-methods-used-to-prevent-anonymity-and-verify-identity}]

\subsubsection[title={Captchas:},reference={captchas}]

{\externalfigure[./tex2pdf.-1a34188c73046814/d2d7a46a2008590aac1d17ab621aba1862b88100.png]}{\externalfigure[./tex2pdf.-1a34188c73046814/d95b67fc7103589e5e710e081a879f94777c384b.png]}

(Illustrations by Randall Munroe, xkcd.com, licensed under CC BY-NC 2.5)

Captcha\footnote{Wikipedia, Captcha
  \useURL[url1759][https://en.wikipedia.org/wiki/CAPTCHA]\from[url1759]
  \useURL[url1760][https://wikiless.org/wiki/CAPTCHA][][{[}Wikiless{]}]\from[url1760]
  \useURL[url1761][https://web.archive.org/web/https://en.wikipedia.org/wiki/CAPTCHA][][{[}Archive.org{]}]\from[url1761]}
stands for \quotation{Completely Automated Public Turing test to tell
Computers and Humans Apart} are Turing tests\footnote{Wikipedia, Turing
  Test
  \useURL[url1762][https://en.wikipedia.org/wiki/Turing_test]\from[url1762]
  \useURL[url1763][https://wikiless.org/wiki/Turing_test][][{[}Wikiless{]}]\from[url1763]
  \useURL[url1764][https://web.archive.org/web/https://en.wikipedia.org/wiki/Turing_test][][{[}Archive.org{]}]\from[url1764]}
puzzles you need to complete before accessing a form/website. You will
mostly encounter those provided by Google (reCAPTCHA service\footnote{Google
  reCAPTCHA
  \useURL[url1765][https://www.google.com/recaptcha/about/]\from[url1765]
  \useURL[url1766][https://web.archive.org/web/https://www.google.com/recaptcha/about/][][{[}Archive.org{]}]\from[url1766]})
and Cloudflare (hCaptcha\footnote{hCaptcha
  \useURL[url1767][https://www.hcaptcha.com/]\from[url1767]
  \useURL[url1768][https://web.archive.org/web/https://www.hcaptcha.com/][][{[}Archive.org{]}]\from[url1768]}).
hCaptcha is used on 15\letterpercent{} of the internet by their own
metrics\footnote{hCaptcha, hCaptcha Is Now the Largest Independent
  CAPTCHA Service, Runs on 15\letterpercent{} Of The Internet
  \useURL[url1769][https://www.hcaptcha.com/post/hcaptcha-now-the-largest-independent-captcha-service]\from[url1769]
  \useURL[url1770][https://web.archive.org/web/https://www.hcaptcha.com/post/hcaptcha-now-the-largest-independent-captcha-service][][{[}Archive.org{]}]\from[url1770]}.

They are designed to separate bots from humans but are also clearly used
to deter anonymous and private users from accessing services.

If you often use VPNs or Tor, you will quickly encounter many captchas
everywhere\footnote{Nearcyan.com, You (probably) don't need ReCAPTCHA
  \useURL[url1771][https://nearcyan.com/you-probably-dont-need-recaptcha/]\from[url1771]
  \useURL[url1772][https://web.archive.org/web/https://nearcyan.com/you-probably-dont-need-recaptcha/][][{[}Archive.org{]}]\from[url1772]}.
Quite often when using Tor, even if you succeed in solving all the
puzzles (sometimes dozens in a row), you will still be denied after
solving the puzzles.

See
\useURL[url1773][https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor]\from[url1773]
\useURL[url1774][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor][][{[}Archive.org{]}]\from[url1774]

While most people think those puzzles are only about solving a little
puzzle, it is important to understand that it is much more complex, and
that modern Captchas uses advanced machine learning and risk analysis
algorithms to check if you are human\footnote{ArsTechnica,
  \quotation{Google's reCAPTCHA turns}invisible," will separate bots
  from people without challenges"
  \useURL[url1775][https://arstechnica.com/gadgets/2017/03/googles-recaptcha-announces-invisible-background-captchas/]\from[url1775]
  \useURL[url1776][https://web.archive.org/web/https://arstechnica.com/gadgets/2017/03/googles-recaptcha-announces-invisible-background-captchas/][][{[}Archive.org{]}]\from[url1776]}:

\startitemize
\item
  They check your browser, cookies, and browsing history using Browser
  fingerprinting\footnote{BlackHat Asia 2016, \quotation{I'm not a
    human: Breaking the Google reCAPTCHA}
    \useURL[url1777][https://www.blackhat.com/docs/asia-16/materials/asia-16-Sivakorn-Im-Not-a-Human-Breaking-the-Google-reCAPTCHA-wp.pdf]\from[url1777]
    \useURL[url1778][https://web.archive.org/web/https://www.blackhat.com/docs/asia-16/materials/asia-16-Sivakorn-Im-Not-a-Human-Breaking-the-Google-reCAPTCHA-wp.pdf][][{[}Archive.org{]}]\from[url1778]}.
\item
  They track your cursor movements (speed, accuracy) and use algorithms
  to decide if it is \quotation{human/organic}.
\item
  They track your behavior before/during/after the tests to ensure you
  are \quotation{human}\footnote{Google Blog
    \useURL[url1779][https://security.googleblog.com/2014/12/are-you-robot-introducing-no-captcha.html]\from[url1779]
    \useURL[url1780][https://web.archive.org/web/https://security.googleblog.com/2014/12/are-you-robot-introducing-no-captcha.html][][{[}Archive.org{]}]\from[url1780]}.
\stopitemize

It is also highly likely that those platforms could already reliably
identify you based on the unique way you interact with those puzzles.
This could work despite obfuscation of your IP address / Browser and
clearing all cookies.

Watch for example this DEF CON 25 presentation:
\useURL[url1781][https://www.youtube.com/watch?v=1nvYGi7-Lxo][][DEF CON
25 - Svea Eckert, Andreas Dewes - Dark Data]\from[url1781]
\useURL[url1782][https://yewtu.be/watch?v=1nvYGi7-Lxo][][{[}Invidious{]}]\from[url1782]

You will often experience several in a row (sometimes endlessly) and
sometimes exceedingly difficult ones involving reading undecipherable
characters or identifying various objects on endless pictures sets. You
will also have more captchas if you use an ad-blocking system (uBlock
for example) or if your account was flagged for any reason for using
VPNs or Tor previously.

You will also have (in my experience) more Captchas (Google's reCAPTCHA)
if you do not use a Chromium-based browser. But this can be mitigated by
using a Chromium-based browsers such as Brave. There is also a Browser
extension called Buster that could help you those
\useURL[url1783][https://github.com/dessant/buster]\from[url1783]
\useURL[url1784][https://web.archive.org/web/https://github.com/dessant/buster][][{[}Archive.org{]}]\from[url1784].

As for Cloudflare (hCaptcha), you could also use their Accessibility
solution here
(\useURL[url1785][https://www.hcaptcha.com/accessibility]\from[url1785]
\useURL[url1786][https://web.archive.org/web/https://www.hcaptcha.com/accessibility][][{[}Archive.org{]}]\from[url1786])
which would allow you to sign-up (with your anonymous identity created
later) and set a cookie within your Browser that would allow you to
bypass their captchas. Another solution to mitigate hCaptcha would be to
use their own solution called \quotation{Privacy Pass}\footnote{Cloudflare
  Blog, Cloudflare supports Privacy Pass
  \useURL[url1787][https://blog.cloudflare.com/cloudflare-supports-privacy-pass/]\from[url1787]
  \useURL[url1788][https://web.archive.org/web/https://blog.cloudflare.com/cloudflare-supports-privacy-pass/][][{[}Archive.org{]}]\from[url1788]}
\useURL[url1789][https://privacypass.github.io/]\from[url1789]
\useURL[url1790][https://web.archive.org/web/https://privacypass.github.io/][][{[}Archive.org{]}]\from[url1790]
in the form of a Browser extension you could install in your VM Browser.

You should therefore deal with those carefully and force yourself to
alter the way you are solving them (speed/movement/accuracy/\ldots{}) to
prevent \quotation{Captcha Fingerprinting}.

Fortunately, as far as we are aware, these are not yet
officially/publicly used to de-anonymize users for third parties.

To not have those issues, you should consider using a VPN over Tor. And
the best option to avoid those is likely to use a self-hosted VPN/Proxy
over Tor on a cash/Monero paid VPS server.

\subsubsection[title={Phone
verification:},reference={phone-verification}]

Phone verification is advertised by most platforms to verify you are
human. But do not be fooled, the main reason for phone verification is
not only to check if you are human but also to be able to de-anonymize
you if needed.

Most platforms (including the privacy-oriented ones such as
Signal/Telegram/Proton will require a phone number to register, and most
countries now make it mandatory to submit a proof of ID to
register\footnote{Privacy International, Timeline of SIM Card
  Registration Laws
  \useURL[url1791][https://privacyinternational.org/long-read/3018/timeline-sim-card-registration-laws]\from[url1791]
  \useURL[url1792][https://web.archive.org/web/https://privacyinternational.org/long-read/3018/timeline-sim-card-registration-laws][][{[}Archive.org{]}]\from[url1792]}.

Fortunately, this guide explained earlier how to get a number for these
cases: \goto{Getting an anonymous Phone
number}[getting-an-anonymous-phone-number].

\subsubsection[title={E-Mail
verification:},reference={e-mail-verification}]

E-Mail verification is what used to be enough but is not anymore in most
cases. What is important to know is that open e-mail providers
(disposable e-mail providers for instance) are flagged as much as open
proxies (like Tor).

Most platforms will not allow you to register using an
\quotation{anonymous} or disposable e-mail. As they will not allow you
to register using an IP address from the Tor network.

The key thing to this is that it is becoming increasingly difficult to
sign-up for a free e-mail account anywhere without providing (you
guessed it) \ldots{} a cell phone number. That same cell phone number
can be used conveniently to track you down in most places.

It is possible that those services (Proton for instance) might require
you to provide an e-mail address for registration. In that case, we
would recommend you create an e-mail address from these providers:

\startitemize
\item
  MailFence: \useURL[url1793][https://mailfence.com/]\from[url1793]
\item
  Disroot: \useURL[url1794][https://disroot.org]\from[url1794]
\item
  Autistici: \useURL[url1795][https://autistici.org]\from[url1795]
\item
  Envs.net: \useURL[url1796][https://envs.net/]\from[url1796]
\stopitemize

Keep in mind that those do not provide a zero-access design (a
zero-access design is where only you can access your e-mail - not even
the service's admins can read your messages). This means they can access
your e-mail at rest in their database.

\subsubsubsection[title={A note about
Riseup:},reference={a-note-about-riseup}]

RiseUp's warrant canary has been renewed late, with their Twitter
posting a cryptic message seeming to tell users not to trust them. Due
to the suspicious situation, this guide can no longer recommend them.

{\em Also see:
\useURL[url1797][https://forums.whonix.org/t/riseup-net-likely-compromised/3195]\from[url1797]}

For the \useURL[url1798][https://riseup.net]\from[url1798]
\useURL[url1799][http://vww6ybal4bd7szmgncyruucpgfkqahzddi37ktceo3ah7ngmcopnpyyd.onion/][][{[}Tor
Mirror{]}]\from[url1799] (It has come to my attention that the site now,
unfortunately, requires an invitation from a current registered user)

\subsubsubsection[title={Protecting your anonymous online identities
e-mails using Aliasing
services:},reference={protecting-your-anonymous-online-identities-e-mails-using-aliasing-services}]

If you want to avoid communicating your anonymous e-mail addresses to
various parties. We would strongly suggest considering using e-mail
aliasing services such as:

\startitemize
\item
  \useURL[url1800][https://simplelogin.io/]\from[url1800] (preferred
  first choice due to more options available to the free tier)
\item
  \useURL[url1801][https://anonaddy.com/]\from[url1801]
\stopitemize

These services will allow creating random aliases for your anonymous
e-mail (on Proton for example) and could increase your general privacy
if you do not want to disclose that e-mail for any purpose. They are
both recommended by Privacyguides.org and Privacytools.io. I'm
recommending them as well.

\subsubsection[title={User details
checking:},reference={user-details-checking}]

Obviously, Reddit does not do this (yet), but Facebook most likely does
and will look for \quotation{suspicious} things in your details (which
could include face recognition).

Some examples:

\startitemize
\item
  IP address from a country different than your profile country.
\item
  Age in the profile not matching the picture age.
\item
  Ethnicity in the profile not matching the picture ethnicity.
\item
  Language not matching the country language.
\item
  Unknown in anyone else contacts (Meaning nobody else knows you).
\item
  Locking down privacy settings after signing up.
\item
  Name that does not match the correct ethnicity/language/country?
\stopitemize

\subsubsection[title={Proof of ID
verification:},reference={proof-of-id-verification}]

The deal-breaker in most cases. As far as we know, only Facebook and
LinkedIn (outside of financial services) have requested such
verifications which involve sending pictures of some form of
identification (passport, national ID card, driver's license \ldots{}).
The only way to do this would involve creating fake official documents
(forgery) using some decent Photoshop skills and this might be illegal
in most places.

Therefore, this is a line we are not going to help you cross within this
guide. Some services are offering such services online, but we think
they are {\em bad actors} and are overstepping their boundaries.

In many countries, only law enforcement, some specific processes (such
as GDPR requests), and some well-regulated financial services may
request proof of identification. So, the legality of asking for such
documents is debatable and we beieve such platforms should not be
allowed to require those.

In few countries (like Germany), this practice is illegal and online
platforms such as Facebook or LinkedIn are legally bound to allow you to
use a pseudonym and remain anonymous.

\subsubsection[title={IP Filters:},reference={ip-filters}]

As stated previously in this guide, many platforms will apply filters on
the IPs of the users. Tor exit nodes are publicly listed, and VPN exit
servers are \quotation{well known}. There are many commercial and free
services providing the ability to block those IPs with ease (hi
Cloudflare).

Many platforms' operators and administrators do not want traffic from
these IPs as they often drive a lot of unlawful/malicious/unprofitable
traffic to their platforms. These platforms usually argue using one of
the following points:

\startitemize[packed]
\item
  \quotation{Think of the children!};
\item
  \quotation{Terrorism!};
\item
  \quotation{Russian troll propaganda!};
\item
  \quotation{Well, it's noise in the data we sell to advertisers!}
  (e.g., AdSense or Facebook Ads).
\stopitemize

\quotation{Yet we still pay traffic for them so let us just deny them
all instead.}

Fortunately, those systems are not perfect, and you will (still) be able
to get around those restrictions by switching identities (in the case of
Tor) and trying to access the website each time until you find an Exit
Node that is not yet blacklisted.

Some platforms will allow you to log in with a Tor IP but not to sign up
(See
\useURL[url1802][https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor]\from[url1802]
\useURL[url1803][https://web.archive.org/web/https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor][][{[}Archive.org{]}]\from[url1803]).
Those platforms will keep a convenient, permanent log of the IP which
you used during sign-up - And some will keep such logs indefinitely,
e.g., all the IPs which you have used to log in (hi Facebook).

The tolerance is much higher with VPNs as they are not considered
\quotation{open proxies}, but that will not stop many platforms from
making them hard to use by forcing increasingly difficult CAPTCHAs on
most VPN users.

For this reason, this guide does recommend the use of VPN over Tor (and
not Tor over VPN) in certain use cases. {\bf Remember that the best
option to avoid those is to use a self-hosted VPN/Proxy over Tor on a
cash/Monero paid VPS}.

\subsubsection[title={Browser and Device
Fingerprinting:},reference={browser-and-device-fingerprinting}]

Many platforms (like Google\footnote{Developers Google Blog, Guidance to
  developers affected by our effort to block less secure browsers and
  applications
  \useURL[url1804][https://developers.googleblog.com/2020/08/guidance-for-our-effort-to-block-less-secure-browser-and-apps.html]\from[url1804]
  \useURL[url1805][https://web.archive.org/web/https://developers.googleblog.com/2020/08/guidance-for-our-effort-to-block-less-secure-browser-and-apps.html][][{[}Archive.org{]}]\from[url1805]})
will check your browser for various capabilities and settings and block
browsers they do not like. This is one of the reasons we recommend using
Chromium-based browsers such as Brave Browser over Tor Browser within
this VM.

Here are some of the things they check within recent browsers:

\startitemize
\item
  User-Agent: This is your Browser name and Version.
\item
  HTTP_ACCEPT Headers: This is the type of content your Browser can
  handle.
\item
  Time Zone and Time Zone Offset: Your time zone.
\item
  Screen Size and Color Depth: The resolution of your screen.
\item
  System Fonts: The typing fonts installed on your system.
\item
  Cookies support: If your browser supports cookies or not.
\item
  Hash of Canvas fingerprint and Hash of WebGL fingerprint: These are
  generated unique IDs based on your graphic rendering capabilities.
\item
  WebGL Vendor & Renderer: Name of your Video card
\item
  Do-Not-Track enabled or not: Well, yes, they can use your DNT
  information to track you
\item
  Language: The language of your Browser
\item
  Platform: The Operating System you are using
\item
  Touch Support: If your system supports touch (such as a phone/tablet
  or touchscreen-enabled laptop)
\item
  Ad Blocking use: If your browser block ads
\item
  AudioContext fingerprint: Like the Canvas and WebGL fingerprints these
  will fingerprint your audio capabilities.
\item
  CPU: What kind of CPU you are using and how many of them
\item
  Memory: How much memory you have in your System
\item
  Browser Permissions: Is your browser allowing some things like
  geolocation or microphone/webcam access.
\stopitemize

Most of the time, those fingerprints will, unfortunately, be unique or
nearly unique to your browser/system. This means that even If you log
out from a website and then log back in using a different username, your
fingerprint might remain the same if you did not take precautionary
measures. An adversary could then use such fingerprints to track you
across multiple services even if you have no account on any of them and
are using adblocking. These fingerprints could in turn be used to
de-anonymize you if you keep the same fingerprint between services.

Here are services you can use to check your browser fingerprints:

\startitemize
\item
  \useURL[url1806][https://abrahamjuliot.github.io/creepjs/]\from[url1806]
  (Probably the best overall)
\item
  \useURL[url1807][https://coveryourtracks.eff.org/]\from[url1807]
\item
  \useURL[url1808][https://amiunique.org]\from[url1808]
\item
  \useURL[url1809][https://browserleaks.com/]\from[url1809]
\item
  \useURL[url1810][https://www.deviceinfo.me/]\from[url1810]
\item
  (Chromium based browsers only)
  \useURL[url1811][https://z0ccc.github.io/extension-fingerprints/\#]\from[url1811]
\stopitemize

Chances are you will find your browser fingerprint unique no matter what
you do.

\subsubsection[title={Human interaction:},reference={human-interaction}]

Some platforms will add this as a bonus step and require you to have an
actual human interaction with a customer care representative. Usually by
e-mail but sometimes by chat/phone. They will want to verify that you
exist by asking you to reply to an e-mail/chat/phone call.

It is annoying but quite easy to deal with in our case. We are not
making bots. This guide is for humans making human accounts.

\subsubsection[title={User Moderation:},reference={user-moderation}]

Many platforms will delegate and rely on their users to moderate the
others and their content. These are the \quotation{report} features that
you will find on most platforms.

Getting reported thousands of times does not matter when you are Donald
Trump or Kim Kardashian but if you as a sole \quotation{friendless}
anonymous user gets reported even once, you might get
suspended/flagged/banned instantly.

\subsubsection[title={Behavioral
Analysis:},reference={behavioral-analysis}]

See \goto{Your Digital Fingerprint, Footprint, and Online
Behavior}[your-digital-fingerprint-footprint-and-online-behavior].

\subsubsection[title={Financial
transactions:},reference={financial-transactions}]

Simple and efficient, some platforms will require you to perform a
financial transaction to verify your account sometimes under the pretext
of verifying your age. This could be a credit card verification or an
exceedingly small amount bank wire. Some will accept a donation in a
main cryptocurrency like Bitcoin or Ethereum.

While this might seem innocent, this is obviously an ID verification and
de-anonymization method. This is just indirectly relying on third-party
financial KYC\footnote{Wikipedia, KYC
  \useURL[url1812][https://en.wikipedia.org/wiki/Know_your_customer]\from[url1812]
  \useURL[url1813][https://wikiless.org/wiki/Know_your_customer][][{[}Wikiless{]}]\from[url1813]
  \useURL[url1814][https://web.archive.org/web/https://en.wikipedia.org/wiki/Know_your_customer][][{[}Archive.org{]}]\from[url1814]}
regulations.

This is for instance now the case on YouTube for some European
Users\footnote{Google Help, Access age-restricted content & features
  \useURL[url1815][https://support.google.com/accounts/answer/10071085]\from[url1815]
  \useURL[url1816][https://web.archive.org/web/https://support.google.com/accounts/answer/10071085][][{[}Archive.org{]}]\from[url1816]}
but also used by services like Amazon that requires a valid payment
method for creating an account.

\placefigure{image36}{\externalfigure[./tex2pdf.-1a34188c73046814/6abef583a82ae896d7a4d535564864d136a79111.png]}

\subsubsection[title={Sign-in with some
platform:},reference={sign-in-with-some-platform}]

\quotation{Why do this user-verification ourselves when we can just ask
others to deal with it?}

You will notice this, and you probably already encountered this. Some
apps/platforms will ask/require you to sign in with a well-known and
well-used reputable platform instead of their own system (Sign-in with
Google/Facebook/Apple/Twitter).

This option is often presented as the \quotation{default one}, hiding
away the \quotation{Sign-in with e-mail and password} with clever Dark
Patterns\footnote{Wikipedia, Dark Pattern
  \useURL[url1817][https://en.wikipedia.org/wiki/Dark_pattern]\from[url1817]
  \useURL[url1818][https://wikiless.org/wiki/Dark_pattern][][{[}Wikiless{]}]\from[url1818]
  \useURL[url1819][https://web.archive.org/web/https://en.wikipedia.org/wiki/Dark_pattern][][{[}Archive.org{]}]\from[url1819]}
and unfortunately sometimes needed.

This method will delegate the verification process on those platforms
instead of assuming that you will not be able to create an anonymous
Google/Facebook/Apple/Twitter account with ease.

Fortunately, it is still possible to this day to create those.

\subsubsection[title={Live Face recognition and biometrics
(again):},reference={live-face-recognition-and-biometrics-again}]

This is a common method used on some Crypto trading platforms and some
dating Apps.

Some platforms/apps will require you to take a live picture of yourself
either doing something (a wink, holding an arm up \ldots{}) or showing a
custom piece of information (a handwritten text, a passport, or ID)
within the picture. Sometimes the platform/app will require several
pictures to increase their certainty.

\placefigure{image37}{\externalfigure[./tex2pdf.-1a34188c73046814/6f4b39fdeaff3ec0d38d54195d9222a4a7360d38.png]}

This guide will not cover this one (yet) as it is mainly used on
financial platforms (that will be able to identify you with other means
anyway) and some dating apps like Tinder\footnote{The Verge, Tinder will
  give you a verified blue check mark if you pass its catfishing test
  \useURL[url1820][https://www.theverge.com/2020/1/23/21077423/tinder-photo-verification-blue-checkmark-safety-center-launch-noonlight]\from[url1820]
  \useURL[url1821][https://web.archive.org/web/https://www.theverge.com/2020/1/23/21077423/tinder-photo-verification-blue-checkmark-safety-center-launch-noonlight][][{[}Archive.org{]}]\from[url1821]}.
Unfortunately, this method is now also sometimes being used on
Facebook\footnote{DigitalInformationWorld, Facebook will now require you
  to Create a Video Selfie for Identity Verification
  \useURL[url1822][https://www.digitalinformationworld.com/2020/03/facebook-is-now-demanding-some-users-to-create-a-video-selfie-for-identity-verification.html]\from[url1822]
  \useURL[url1823][https://web.archive.org/web/https://www.digitalinformationworld.com/2020/03/facebook-is-now-demanding-some-users-to-create-a-video-selfie-for-identity-verification.html][][{[}Archive.org{]}]\from[url1823]}
and Instagram as part of their verification methods (tho we did not face
it yet so far).

\placefigure{image38}{\externalfigure[./tex2pdf.-1a34188c73046814/6ebbe83efdf8b825bf4e449fe99ff6fb4ad6c612.png]}

In some cases, these verifications must be done from your Smartphone and
with an \quotation{in-app} camera to prevent you from sending a
previously saved (edited) image.

Recently even platforms such as PornHub decided to implement similar
measures in the future\footnote{Vice.com, PornHub Announces
  \quote{Biometric Technology} to Verify Users
  \useURL[url1824][https://www.vice.com/en/article/m7a4eq/pornhub-new-verification-policy-biometric-id]\from[url1824]
  \useURL[url1825][https://web.archive.org/web/https://www.vice.com/en/article/m7a4eq/pornhub-new-verification-policy-biometric-id][][{[}Archive.org{]}]\from[url1825]}.

This verification is extremely hard to defeat but possible. A method to
possibly defeat those would be to use \quotation{deep fake} technology
software such as the open-source FaceSwap
\useURL[url1826][https://github.com/deepfakes/faceswap]\from[url1826]
\useURL[url1827][https://web.archive.org/web/https://github.com/deepfakes/faceswap][][{[}Archive.org{]}]\from[url1827]
to generate the required verification pictures using a randomly
computer-generated face that would be swapped over the picture of a
complicit model (or a stock photo).

Unfortunately, some apps require direct access to a smartphone camera to
process the verification. In that case, you will need to find a way to
do such \quotation{face swaps} on the fly using a filter and another way
to feed this into the camera used by the app. A possible approach would
be similar to this impressive project
\useURL[url1828][https://github.com/iperov/DeepFaceLive]\from[url1828]
\useURL[url1829][https://web.archive.org/web/https://github.com/iperov/DeepFaceLive][][{[}Archive.org{]}]\from[url1829].

\subsubsection[title={Manual reviews:},reference={manual-reviews}]

These can be triggered by any of the above and just means someone
(usually specialized employees) will review your profile manually and
decide whether it is real or not based on their subjective opinion.

Some countries have even developed hotlines where you can report any
subversive content\footnote{Variety, China Launches Hotline to Report
  Online Comments That \quote{Distort} History or \quote{Deny} Its
  Cultural Excellence
  \useURL[url1830][https://variety.com/2021/digital/news/china-censorship-hotline-historical-nihilism-1234950554/]\from[url1830]
  \useURL[url1831][https://web.archive.org/web/https://variety.com/2021/digital/news/china-censorship-hotline-historical-nihilism-1234950554/][][{[}Archive.org{]}]\from[url1831]}.

Pros: Usually that verdict is \quotation{final}, and you will probably
avoid further issues if you are good.

Cons: Usually that verdict is \quotation{final}, and you will probably
be banned without any appeal possibility if you are not good. Sometimes
those reviews end up on the platform just ghosting you and cancel you
without any reason whatsoever. Any appeal will be left unanswered,
ignored, or will generate some random dark pattern bug when trying to
appeal that specific identity (this happens on Instagram for instance
where if your account gets \quotation{suspended} obviously by some
manual review, trying to complete the appeal form will just throw an
error and tell you to try again later (We have been trying this same
appeal for that identity for the past 6 months at least).

\subsection[title={Getting Online:},reference={getting-online}]

Now that you have a basic understanding of all the ways you can be
de-anonymized, tracked, and verified. Let us get started at evading
these while staying anonymous. Remember:

\startitemize
\item
  You cannot trust ISPs
\item
  You cannot trust VPS providers
\item
  You cannot trust public Wi-Fi providers
\item
  You cannot trust Mobile Network providers
\item
  You cannot trust VPN providers
\item
  You cannot trust any Online Platform
\item
  You cannot trust Tor
\item
  You cannot trust your Operating System
\item
  You cannot trust your Laptop
\item
  You cannot trust your Smartphone (especially Android)
\item
  You cannot trust your Smart devices
\item
  Above all, you cannot trust people
\stopitemize

So what? Well instead of not trusting anyone or anything, we would
advise to {\bf \quotation{Trust but verify}}\footnote{Wikipedia, Trust
  but verify
  \useURL[url1832][https://en.wikipedia.org/wiki/Trust,_but_verify]\from[url1832]
  \useURL[url1833][https://wikiless.org/wiki/Trust,_but_verify][][{[}Wikiless{]}]\from[url1833]
  \useURL[url1834][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trust,_but_verify][][{[}Archive.org{]}]\from[url1834]}
(or \quotation{Never trust, always verify} if you are more hardcore
about it and want to apply Zero-Trust Security\footnote{Wikipedia,
  Zero-trust Security Model
  \useURL[url1835][https://en.wikipedia.org/wiki/Zero_trust_security_model]\from[url1835]
  \useURL[url1836][https://wikiless.org/wiki/Zero_trust_security_model][][{[}Wikiless{]}]\from[url1836]
  \useURL[url1837][https://web.archive.org/web/https://en.wikipedia.org/wiki/Zero_trust_security_model][][{[}Archive.org{]}]\from[url1837]})
instead.

{\bf Do not start this process unless:}

\startitemize
\item
  {\bf You consulted your local law for compliance and the legality of
  your actions.}
\item
  {\bf You are aware of your threat model.}
\item
  {\bf You are in a safe place with public Wi-Fi without your smartphone
  or any other smart device on you. And preferably in a place without
  CCTV filming you (remember to \goto{Find some safe places with decent
  public Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi]}
  {\bf and \goto{Appendix Q: Using long-range Antenna to connect to
  Public Wi-Fis from a safe
  distance}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance])}
\item
  {\bf You are fully done and preparing one of the routes.}
\item
  {\bf Again, it is crucially important to understand that you will be
  unable to create most accounts without a valid phone number.
  Therefore, most of your anonymity on mainstream platforms depends on
  the anonymity of your online phone number and/or the burner phone with
  its pre-paid SIM card (if you use one). If your phone number is not
  anonymous or your burner phone can be traced back to you then you can
  be de-anonymized. If you cannot get this anonymous phone number and/or
  a physical SIM with a Burner phone, then you will have to restrict
  yourself to platforms not asking for phone number verification.}
\stopitemize

{\bf Remember to see \goto{Appendix N: Warning about smartphones and
smart devices}[appendix-n-warning-about-smartphones-and-smart-devices]}

\subsubsection[title={Creating new
identities:},reference={creating-new-identities}]

This is the fun part where you will now create your identities from thin
air. These identities do not exist but should be plausible and look
\quotation{organic}. They should ideally have a story, a
\quotation{legend} (yes this is the real term for this\footnote{Wikipedia,
  Espionage, Organization
  \useURL[url1838][https://en.wikipedia.org/wiki/Espionage\#Organization]\from[url1838]
  \useURL[url1839][https://wikiless.org/wiki/Espionage][][{[}Wikiless{]}]\from[url1839]
  \useURL[url1840][https://web.archive.org/web/https://en.wikipedia.org/wiki/Espionage][][{[}Archive.org{]}]\from[url1840]}).

What is a legend? Well, it is a full back-story for your character:

\startitemize
\item
  Age
\item
  Sex
\item
  Gender
\item
  Ethnicity
\item
  Place of Birth and date of Birth
\item
  Place of residence
\item
  Country of origin
\item
  Visited Countries (for travels for instance)
\item
  Interests and hobbies
\item
  Education History
\item
  Work experience
\item
  Health information
\item
  Religion if any
\item
  Goals
\item
  Family history
\item
  Family composition if any (Children? Spouse? Husband?)
\item
  Relationship Status if any (Married? Single?)
\item
  Spoken Languages
\item
  Personality traits (Introvert, Extrovert \ldots{})
\item
  \ldots{}
\stopitemize

All these should be crafted carefully for every single identity, and you
should be incredibly careful to stick to the details of each legend when
using those identities. Nothing can leak that could lead to your real
persona. Nothing could leak that could compromise the consistency of
your legend. Everything should always be consistent.

Tools that can help with this:

\startitemize
\item
  \useURL[url1841][https://www.fakenamegenerator.com/]\from[url1841]
\item
  \useURL[url1842][https://thispersondoesnotexist.com/]\from[url1842]
\item
  \useURL[url1843][https://generated.photos/face-generator]\from[url1843]
  ({\bf Generated pictures using this tool have a watermark that you
  might need to remove using image editing software such as Gimp})
  \startitemize[packed]
  \item
    {\bf Warning:} This tool requires JavaScript to function and does a
    lot of fingerprinting. Most of it is being sent to Microsoft
    Clarity. Even with uBlock installed and on safer level, Tor Browser
    wasn't efficient at blocking the fingerprinting. This obviously does
    not work on Safest level. On our tests, only Brave with agressive
    fingerprinting/ad shields did not send analytics.
  \stopitemize
\stopitemize

Now is also the moment where you could finally consider getting an
online phone number as explained in the \goto{Online Phone Number (less
recommended)}[online-phone-number] section.

We will help you bit by listing a few tips we learned while researching
over the years {\bf (disclaimer: this is based on my individual
experiences alone)}:

\startitemize
\item
  \quotation{Some animals are more equal than others}.

  \startitemize
  \item
    Ethnicity is important and you will have fewer issues and attract
    less attention to verification algorithms if your identity is
    Caucasian/East-Asian than if it is Arabic/Black (yes, we tested this
    extensively and it is definitely an issue).
  \item
    Age is important and you will have fewer issues if you are young
    (18-22) than if you are middle-aged or older. Platforms seem to be
    more lenient in not imposing restrictions on new younger audiences.
  \item
    Sex/Gender is important, and you will have fewer issues if you are a
    female than if you are a male.
  \item
    Country of origin is important, and you will have fewer issues if
    your identity is Norwegian than if it is Ukrainian, Nigerian, or
    Mexican.
  \item
    Country of residence is important, and you will have fewer issues if
    your identity has its residence in Oslo or Paris than if you decide
    to live in Kyiv or Cairo.
  \item
    Language is important and you will have fewer issues if you speak
    English or the language of your Identity than if you use a
    non-related language. Do not make a Norwegian-born Arabic
    20-year-old female that speaks Ukrainian or Arabic.
  \stopitemize
\item
  Identities that are \quotation{EU residents} with an \quotation{EU IP}
  (VPN/Tor Exit IP) will benefit from GDPR protections on many
  platforms. Others will not. GDPR is your friend in most cases, and you
  should take this into account.
\item
  Similarly, origin IP geolocation (your IP/location when you go to
  \quotation{whatsmyipaddress.com}) should match your identity location
  as much as possible (When using a VPN over Tor, you can pick this in
  the VPN client if you use the VPN over Tor approach or just create a
  new identity in Tor Browser or Brave Tor Tab until you get an
  appropriate Exit node, or configure Tor to restrict your Exit Nodes).
  Consider excluding any exit IP that is not located in Western
  Europe/US/Canada/Japan/South Korea/Australia/New Zealand as you will
  have fewer issues. Ideally, you should get a European Union IP to get
  additional GDPR protection and if possible, a German exit IP due to
  their legal stance on using anonymous accounts on online platforms.
\item
  Brave Browser (Chromium-based) with a Private Tor Tab has a better
  acceptance level than Tor Browser (Firefox based). You will experience
  fewer issues with captchas and online platforms\footnote{Developers
    Google Blog, Guidance to developers affected by our effort to block
    less secure browsers and applications
    \useURL[url1844][https://developers.googleblog.com/2020/08/guidance-for-our-effort-to-block-less-secure-browser-and-apps.html]\from[url1844]
    \useURL[url1845][https://web.archive.org/web/https://developers.googleblog.com/2020/08/guidance-for-our-effort-to-block-less-secure-browser-and-apps.html][][{[}Archive.org{]}]\from[url1845]}
  if you use Brave than if you use Tor Browser (feel free to try this
  yourself).
\item
  For every identity, you should have a matching profile picture
  associated with it. For this purpose, we recommend you just go to
  \useURL[url1846][https://thispersondoesnotexist.com/]\from[url1846] or
  \useURL[url1847][https://generated.photos/face-generator]\from[url1847]*
  and generate a computer-generated profile picture (Do note that
  algorithms have been developed\footnote{Medium.com, Kyle McDonald, How
    to recognize fake AI-generated images
    \useURL[url1848][https://kcimc.medium.com/how-to-recognize-fake-ai-generated-images-4d1f6f9a2842]\from[url1848]\useURL[url1849][https://scribe.rip/@kcimc/how-to-recognize-fake-ai-generated-images-4d1f6f9a2842][][{[}Scribe.rip{]}]\from[url1849]
    \useURL[url1850][https://web.archive.org/web/https://kcimc.medium.com/how-to-recognize-fake-ai-generated-images-4d1f6f9a2842][][{[}Archive.org{]}]\from[url1850]}'\footnote{Jayway
    Blog, Using ML to detect fake face images created by AI
    \useURL[url1851][https://blog.jayway.com/2020/03/06/using-ml-to-detect-fake-face-images-created-by-ai/]\from[url1851]
    \useURL[url1852][https://web.archive.org/web/https://blog.jayway.com/2020/03/06/using-ml-to-detect-fake-face-images-created-by-ai/][][{[}Archive.org{]}]\from[url1852]}
  to detect these and it might not work 100\letterpercent{} of the
  time). You can also generate such pictures yourself from your computer
  if you prefer by using the open-source StyleGan project here
  \useURL[url1853][https://github.com/NVlabs/stylegan2]\from[url1853]
  \useURL[url1854][https://web.archive.org/web/https://github.com/NVlabs/stylegan2][][{[}Archive.org{]}]\from[url1854].
  Just refresh the page until you find a picture that matches your
  identity in all aspects (age, sex, and ethnicity) and save that
  picture. It would be even better to have several pictures associated
  with that identity, butWedo not have an \quotation{easy way} of doing
  that yet.
\stopitemize

*{\bf Warning:} https://generated.photos/face-generator requires
JavaScript to function and does a lot of fingerprinting. Most of it is
being sent to Microsoft Clarity. Even with uBlock installed and on safer
level, Tor Browser wasn't efficient at blocking the fingerprinting. This
obviously does not work on Safest level. On our tests, only Brave with
agressive fingerprinting/ad shields did not send analytics.

\startitemize
\item
  {\bf Bonus}, you could also make it more real by using this service
  (with an anonymous identity)
  \useURL[url1855][https://www.myheritage.com/deep-nostalgia]\from[url1855]
  \useURL[url1856][https://web.archive.org/web/https://www.myheritage.com/deep-nostalgia][][{[}Archive.org{]}]\from[url1856]
  to make a picture more lifelike. Here is an example:
\item
  Original:
\stopitemize

\placefigure{image39}{\externalfigure[./tex2pdf.-1a34188c73046814/3f1dd7d8f22bd7d274405fae575f7fe26b9710c8.png]}

\startitemize[packed]
\item
  Result (see Online because PDFs do not work well with embedded media):
\stopitemize

\placefigure{after-gif}{\externalfigure[./tex2pdf.-1a34188c73046814/2df2d0b5bf2e5009139a3a2be98c1222bad392e1.png]}

Slight issue tho: {\bf MyHeritrage.com bans Tor Exit nodes so you might
have again to consider VPN over Tor for this.}

You could also achieve the same result without using MyHeritage and by
doing it yourself using for example
\useURL[url1857][https://github.com/AliaksandrSiarohin/first-order-model]\from[url1857]
\useURL[url1858][https://web.archive.org/web/https://github.com/AliaksandrSiarohin/first-order-model][][{[}Archive.org{]}]\from[url1858]
but this will require more manual operations ({\bf and requires an
NVIDIA GPU}). Other commercial products will soon be available such as:
\useURL[url1859][https://www.d-id.com/talkingheads/]\from[url1859]
\useURL[url1860][https://web.archive.org/web/https://www.d-id.com/talkingheads/][][{[}Archive.org{]}]\from[url1860]
with examples here:
\useURL[url1861][https://www.youtube.com/channel/UCqyzLOHYamYX2tNXBNSHr1w/videos]\from[url1861]
\useURL[url1862][https://yewtu.be/channel/UCqyzLOHYamYX2tNXBNSHr1w/videos][][{[}Invidious{]}]\from[url1862].

Note: If you make several pictures of the same identity using some of
the tools mentioned above, be sure to compare the similarities using the
Microsoft Azure Face Verification tool at
\useURL[url1863][https://azure.microsoft.com/en-us/services/cognitive-services/face/\#demo]\from[url1863].

\startitemize
\item
  Create in advance and store in KeePassXC each identity details that
  should include some crafted details as mentioned earlier.
\item
  Do not pick an occupation at a well-known private corporation/company
  as they have people in their HR departments monitoring activities in
  platforms such as LinkedIn and will report your profile as being fake
  if it does not match their database. Instead, pick an occupation as a
  freelancer or at a large public institution where you will face less
  scrutiny due to their decentralized nature.
\item
  Keep track (write down) of the background stories of your Identities.
  You should always use the same dates and answers everywhere.
  Everything should always match up. Even the stories you tell about
  your imaginary life should always match. If you say you work as an
  intern at the Department of Health one day and later on another
  platform, say you work as an intern at the Department of
  Transportation, people might question your identity. Be consistent.
\item
  Use a different phone number for each identity. Online platforms do
  keep track of phone number usage and if one identity/number gets
  flagged for violating Community Guidelines or Terms of Services, it
  might also get the other identities using the same number
  flagged/banned as well.
\item
  Adapt your language/writing to the identity to not raise suspicions
  and lower your chances of being fingerprinted by online platforms. Be
  especially careful with using pedantic words and figures of
  speech/quotes that could allow some people to guess your writing is
  very similar to that person with this Twitter handle or this Reddit
  user. See \goto{Appendix A4: Counteracting Forensic
  Linguistics}[appendix-a4-counteracting-forensic-linguistics].
\item
  {\bf Always use TOTP 2FA (not SMS to prevent Sim Swapping
  attacks}\footnote{Wikipedia, Sim Swapping
    \useURL[url1864][https://en.wikipedia.org/wiki/SIM_swap_scam]\from[url1864]
    \useURL[url1865][https://wikiless.org/wiki/SIM_swap_scam][][{[}Wikiless{]}]\from[url1865]
    \useURL[url1866][https://web.archive.org/web/https://en.wikipedia.org/wiki/SIM_swap_scam][][{[}Archive.org{]}]\from[url1866]}
  {\bf and to keep your identity working when your pre-paid card
  expires) using KeePassXC when available to secure your logins to
  various platforms.}
\item
  Remember \goto{Appendix A2: Guidelines for passwords and
  passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases].
\stopitemize

Here is also a good guide on this specific topic:
\useURL[url1867][https://gendersec.tacticaltech.org/wiki/index.php/Complete_manual\#.22Real.22_names]\from[url1867]
\useURL[url1868][https://web.archive.org/web/https://gendersec.tacticaltech.org/wiki/index.php/Complete_manual][][{[}Archive.org{]}]\from[url1868]

Note: If you are having trouble finding an exit node in the country of
your choice you can force using specific countries for Exit Nodes (and
therefore exit countries) on Tor by editing the torrc file on the Whonix
Gateway or even the Tor Browser:

\startitemize
\item
  Whonix/Tails: Create/Edit a file
  \type{/usr/local/etc/torrc.d/50_user.conf}\footnote{Whonix
    Documentation, Tor Configuration
    \useURL[url1869][https://www.whonix.org/wiki/Tor\#Edit_Tor_Configuration]\from[url1869]
    \useURL[url1870][https://web.archive.org/web/https://www.whonix.org/wiki/Tor][][{[}Archive.org{]}]\from[url1870]}.
\item
  On Tor Browser: Edit the torrc file located at
  \type{Browser/TorBrowser/Data/Tor}\footnote{Tor Browser Documentation,
    Editing Torrc
    \useURL[url1871][https://support.torproject.org/tbb/tbb-editing-torrc/]\from[url1871]
    \useURL[url1872][https://web.archive.org/web/https://support.torproject.org/tbb/tbb-editing-torrc/][][{[}Archive.org{]}]\from[url1872]}.
\stopitemize

Once you are in the file, you can do the following:

\startitemize
\item
  Specify the Exit Nodes by adding those two lines (which will require
  an Exit Node in China/Russia/Ukraine:

  \startitemize
  \item
    \mono{ExitNodes \{CH\},\{RU\},\{UA\}}
  \item
    \type{StrictNodes 1}
  \stopitemize
\item
  Exclude specific Exit Nodes by adding this line (which will exclude
  all Exit Nodes from France/Germany/USA/UK):

  \startitemize[packed]
  \item
    \mono{ExcludeNodes \{FR\},\{DE\},\{US\},\{UK\}}
  \stopitemize
\stopitemize

Always use uppercase letters for any setting.

{\bf Please note that this is restricting Onion Routing could limit your
Anonymity if you are too restrictive. You can see a visualized list of
available Exit Nodes here:
\useURL[url1873][https://www.bigdatacloud.com/insights/tor-exit-nodes]\from[url1873]}
\useURL[url1874][https://web.archive.org/web/https://www.bigdatacloud.com/insights/tor-exit-nodes][][{[}Archive.org{]}]\from[url1874]

Here is the list of possibilities (this is a general list and many of
those countries might not have Exit nodes at all):
\useURL[url1875][https://web.archive.org/web/https://b3rn3d.herokuapp.com/blog/2014/03/05/tor-country-codes/]\from[url1875]

\subsubsection[title={Checking if your Tor Exit Node is
terrible:},reference={checking-if-your-tor-exit-node-is-terrible}]

{\bf Skip this if you are using a VPN/Proxy over Tor (tho you can also
do the same checks with a VPN exit node if you want).}

Not all Tor Exit nodes are equal. This is mostly due to what type of
\quotation{exit policy} their operator applies to them. Some Tor Exit
nodes are seen are more or less \quotation{clean} and will only show up
in the Tor Exit nodes lists. Some other Tor Exit nodes are seen as
\quotation{dirty} and will show up in dozens of various blacklists. So
how do you know if you are on a clean one or a bad one? It is not that
simple.

\subsubsubsection[title={This process is very
easy:},reference={this-process-is-very-easy}]

This works whether you're using Tor Browser on a Host OS, in a VM, with
Whonix or Qubes OS.

\startitemize
\item
  Go on the target website you want to sign up for in a tab
\item
  Click the Tor Circuit icon to the left of the \quotation{lock} icon in
  the upper left corner to view your route through the Tor network.
\item
  Look at the third IP (Exit IP) you are using in that tab for that
  website. (You can't copy the IP address, but you can type it into the
  browser address bar if needed.)
\item
  Open a new tab and go to MX Toolbox.
  \useURL[url1876][https://mxtoolbox.com/blacklists.aspx]\from[url1876]
\item
  Put the Exit IP from the first tab in the search box. You will likely
  see \quotation{We notice you are on a blacklist.}
\item
  Check the amount of blacklists the Tor Exit node is in. Ideally, it
  should only be in two. If it is in other lists, such as Spamhaus ZEN,
  you might run into issues:

  \startitemize
  \item
    DAN TOR
  \item
    DAN TOREXIT
  \stopitemize
\stopitemize

If the Exit Node is \quotation{clean} (in few lists), proceed to go back
to the first tab and open the site you want to use to sign up.

\subsubsection[title={The Real-Name
System:},reference={the-real-name-system}]

Unfortunately, not using your real identity is against the Terms of
Services (\quotation{TOS}) of many services, especially those owned by
Microsoft and Facebook. But don't despair, as explained in the
\goto{Requirements}[pre-requisites-and-limitations], it's still legal in
Germany where the courts have upheld the legality of not using real
names on online platforms (§13 VI of the German Telemedia Act of
2007\footnote{English translation of German Telemedia Act
  \useURL[url1877][https://www.huntonprivacyblog.com/wp-content/uploads/sites/28/2016/02/Telemedia_Act__TMA_.pdf]\from[url1877]
  \useURL[url1878][https://web.archive.org/web/https://www.huntonprivacyblog.com/wp-content/uploads/sites/28/2016/02/Telemedia_Act__TMA_.pdf][][{[}Archive.org{]}]\from[url1878].
  Section 13, Article 6, \quotation{The service provider must enable the
  use of Telemedia and payment for them to occur anonymously or via a
  pseudonym where this is technically possible and reasonable. The
  recipient of the service is to be informed about this possibility.}.}'\footnote{Wikipedia,
  Real-Name System Germany
  \useURL[url1879][https://en.wikipedia.org/wiki/Real-name_system\#Germany]\from[url1879]
  \useURL[url1880][https://wikiless.org/wiki/Real-name_system][][{[}Wikiless{]}]\from[url1880]
  \useURL[url1881][https://web.archive.org/web/https://en.wikipedia.org/wiki/Real-name_system][][{[}Archive.org{]}]\from[url1881]}).
{\bf Fortunately, ToS cannot override laws} {\bf (yet)}.

This does not mean that it is illegal in other places but that it might
be a breach of their TOS if you do not have the law on your side.
{\bf Remember this guide only endorses this for German users residing in
Germany.}

On my side, we strongly condemn this type of real-name policy. See for
instance this Wikipedia article giving some examples:
\useURL[url1882][https://en.wikipedia.org/wiki/Facebook_real-name_policy_controversy]\from[url1882]
\useURL[url1883][https://wikiless.org/wiki/Facebook_real-name_policy_controversy][][{[}Wikiless{]}]\from[url1883]
\useURL[url1884][https://web.archive.org/web/https://en.wikipedia.org/wiki/Facebook_real-name_policy_controversy][][{[}Archive.org{]}]\from[url1884]

Here are some more references about the German case for reference:

\startitemize
\item
  \useURL[url1885][https://slate.com/technology/2018/02/why-some-americans-are-cheering-germany-for-taking-on-facebooks-real-name-policy.html]\from[url1885]
  \useURL[url1886][https://web.archive.org/web/https://slate.com/technology/2018/02/why-some-americans-are-cheering-germany-for-taking-on-facebooks-real-name-policy.html][][{[}Archive.org{]}]\from[url1886]
\item
  \useURL[url1887][https://www.theverge.com/2018/2/12/17005746/facebook-real-name-policy-illegal-german-court-rules]\from[url1887]
  \useURL[url1888][https://web.archive.org/web/https://www.theverge.com/2018/2/12/17005746/facebook-real-name-policy-illegal-german-court-rules][][{[}Archive.org{]}]\from[url1888]
\item
  \useURL[url1889][https://www.pcmag.com/news/german-court-rules-facebooks-real-name-policy-is-illegal]\from[url1889]
  \useURL[url1890][https://web.archive.org/web/https://www.pcmag.com/news/german-court-rules-facebooks-real-name-policy-is-illegal][][{[}Archive.org{]}]\from[url1890]
\item
  \useURL[url1891][https://www.vzbv.de/sites/default/files/downloads/2018/02/14/18-02-12_vzbv_pm_facebook-urteil_en.pdf]\from[url1891]
  \useURL[url1892][https://web.archive.org/web/https://www.vzbv.de/sites/default/files/downloads/2018/02/14/18-02-12_vzbv_pm_facebook-urteil_en.pdf][][{[}Archive.org{]}]\from[url1892]
\item
  \useURL[url1893][https://www.pcmag.com/news/german-court-rules-facebooks-real-name-policy-is-illegal]\from[url1893]
  \useURL[url1894][https://web.archive.org/web/https://www.pcmag.com/news/german-court-rules-facebooks-real-name-policy-is-illegal][][{[}Archive.org{]}]\from[url1894]
\item
  \useURL[url1895][https://www.reuters.com/article/us-germany-facebook/german-court-rules-facebook-use-of-personal-data-illegal-idUSKBN1FW1FI]\from[url1895]
  \useURL[url1896][https://web.archive.org/web/https://www.reuters.com/article/us-germany-facebook/german-court-rules-facebook-use-of-personal-data-illegal-idUSKBN1FW1FI][][{[}Archive.org{]}]\from[url1896]
\stopitemize

Alternatively, you could be an adult resident of any other country where
you can confirm and verify the legality of this yourself. Again, this is
not legal advice, and we are not lawyers. {\bf Do this at your own
risk.}

Other countries where this was ruled illegal:

\startitemize
\item
  South Korea (see
  \useURL[url1897][https://en.wikipedia.org/wiki/Real-name_system\#South_Korea]\from[url1897]
  \useURL[url1898][https://wikiless.org/wiki/Real-name_system][][{[}Wikiless{]}]\from[url1898]
  \useURL[url1899][https://web.archive.org/web/https://en.wikipedia.org/wiki/Real-name_system][][{[}Archive.org{]}]\from[url1899])
\item
  If you know any other, please let me know with references in the
  GitHub issues.
\stopitemize

Some platforms are bypassing this requirement altogether by requiring a
valid payment method instead (see \goto{Financial
transactions:}[financial-transactions]). While this does not directly
require a real name through their ToS, this has the same results as they
usually only accept mainstream (not Monero/Cash) payment methods (such
as Visa/MasterCard/Maestro or PayPal) which do require a real-name
legally as part of their KYC\footnote{Wikipedia, KYC
  \useURL[url1900][https://en.wikipedia.org/wiki/Know_your_customer]\from[url1900]
  \useURL[url1901][https://wikiless.org/wiki/Know_your_customer][][{[}Wikiless{]}]\from[url1901]
  \useURL[url1902][https://web.archive.org/web/https://en.wikipedia.org/wiki/Know_your_customer][][{[}Archive.org{]}]\from[url1902]}
regulations. The result is the same and even better than a simple
real-name policy you could ignore in some countries such as Germany.

\subsubsection[title={About paid
services:},reference={about-paid-services}]

If you intend to use paid services, privilege those accepting cash
payments or Monero payments which you can do directly and safely while
keeping your anonymity.

If the service you intend to buy does not accept those but accepts
Bitcoin (BTC), consider the following appendix: \goto{Appendix Z: Paying
anonymously online with BTC (or any other
cryptocurrency)}[appendix-z-online-anonymous-payments-using-cryptocurrencies].

\subsubsection[title={Overview:},reference={overview}]

This section will show you an overview of the current various
requirements on some platforms:

\startitemize
\item
  {\bf Consider using the recommended tools on
  \useURL[url1903][https://privacyguides.org]\from[url1903]}
  \useURL[url1904][https://web.archive.org/web/https://privacyguides.org][][{[}Archive.org{]}]\from[url1904]
  {\bf for better privacy instead of the usual mainstream ones.}
\item
  {\bf Consider using the recommended tools on
  \useURL[url1905][https://www.whonix.org/wiki/Documentation]\from[url1905]}
  \useURL[url1906][https://web.archive.org/web/https://www.whonix.org/wiki/Documentation][][{[}Archive.org{]}]\from[url1906]
  {\bf as well instead of the usual mainstream ones such as E-mail
  providers:
  \useURL[url1907][https://www.whonix.org/wiki/E-Mail\#Anonymity_Friendly_Email_Provider_List]\from[url1907]}
  \useURL[url1908][https://web.archive.org/web/https://www.whonix.org/wiki/E-Mail\#Anonymity_Friendly_Email_Provider_List][][{[}Archive.org{]}]\from[url1908]
\stopitemize

{\bf The following overview does not mention the privacy practices of
those platforms but only their requirements for registering an account.
If you want to use privacy-aware tools and platforms, head on to
\useURL[url1909][https://privacyguides.org]\from[url1909]}
\useURL[url1910][https://web.archive.org/web/https://privacyguides.org/][][{[}Archive.org{]}]\from[url1910]{\bf .}

Legend:

\startitemize
\item
  \quotation{Unclear}: Unclear due to lack of information or confusing
  information.
\item
  \quotation{Maybe}: It did happen in a minority of my tests.
\item
  \quotation{Likely}: It did happen in most of my tests.
\item
  \quotation{Yes} or \quotation{No}: This either happened or never
  happened systematically in all my tests.
\item
  \quotation{Easy}: The overall experience was straightforward with
  little to no obstacles.
\item
  \quotation{Medium}: The overall experience has some obstacles, but it
  is still doable without too much hassle.
\item
  \quotation{Hard}: The overall experience is a painful struggle with
  many obstacles.
\item
  \quotation{N/A}: Not Applicable because it was not possible to test
  within the context of this guide
\item
  \quotation{Indirectly}: This means they do require something but
  indirectly through a third-party system (Financial KYC for example).
\stopitemize

Service
Against ToS
Requires Phone
Requires E-Mail
VPN Sign-up
Tor Sign-up
Captchas
ID or
Financial Checks
Facial Checks
Manual Checks
Overall difficulty
Amazon
No
No
Yes
Yes
Yes
No
Yes*
No
Unclear
N/A
Apple
Yes*
Yes
Yes
Yes
Yes
No
No
No
No
Medium
Binance
Yes*
No
Yes
Yes
No
Yes
No
No
No
Medium
Briar
No
No
No
Yes
Yes
No
No
No
No
Easy
Discord
No
No
Yes
Yes
Yes
Yes
No
No
No
Medium
Element
No
No
No
Yes
Yes
Yes
No
No
No
Easy
Facebook
Yes*
Yes
Yes
Maybe
Maybe
Yes
Maybe
Maybe
Maybe
Hard
GitHub
No
No
Yes
Yes
Yes
Yes
No
No
No
Easy
GitLab
No
No
Yes
Yes
Yes
Yes
No
No
No
Easy
Google
No
Likely
Likely
Yes
Yes
Yes
Maybe
No
Maybe
Medium
HackerNews
No
No
No
Yes
Yes
Yes
No
No
No
Easy
Instagram
Unclear
Likely
Yes
Yes
Yes
Yes
No
Maybe
Maybe
Medium
Jami
No
No
No
Yes
No
No
No
No
No
Easy
iVPN
No
No
No
Yes
Yes
No
No
No
No
Easy
Kraken
Yes*
No
Yes
Yes
No
No
No
No
No
Medium
LinkedIn
Yes*
Yes
Yes
Yes
Yes
Yes
Maybe
Maybe
Maybe
Hard
MailFence
No
No
Yes
Yes
Maybe
Yes
No
No
No
Medium
Medium
No
No
Yes
Yes
Yes
No
No
No
No
Easy
Microsoft
Yes*
Maybe
Maybe
Yes
Yes
Yes
No
No
No
Medium
Mullvad
No
No
No
Yes
Yes
No
No
No
No
Easy
Njalla
No
No
No
Yes
Yes
No
No
No
No
Easy
OnionShare
No
No
No
Yes
Yes
No
No
No
No
Easy
OnlyFans
No
No
Yes
Yes
Yes
Yes
Yes (for full functionalities)
No
No
Hard (for full functionalities)
Proton Mail
No
Maybe
Likely
Yes
Yes
Yes
No
No
No
Medium
Proton VPN
No
No
Yes
Yes
Yes
No
No
No
No
Medium
Reddit
No
No
No
Yes
Yes
No
No
No
No
Easy
Slashdot
Yes*
No
No
Yes
Yes
Yes
No
No
No
Medium
Telegram
No
Yes
No
Yes
Yes
No
No
No
No
Easy
Tutanota
No
No
No
Maybe
No
Yes
No
No
No
Hard
Twitch
No
No
Yes
Yes
Yes
Yes
No
No
No
Easy
Twitter
No
Yes
Yes
Yes
Yes
Yes
No
No
Maybe
Medium
WhatsApp
Yes*
Yes
No
Yes
Yes
No
No
No
No
Medium
4chan
No
No
No
No
No
Yes
No
No
No
Hard
\startitemize[packed]
\item
  {\bf See \goto{The Real-Name
  System}[checking-if-your-tor-exit-node-is-terrible] for essential
  information. See below for details.}
\stopitemize

\subsubsubsubsection[title={Below you'll find a list of
\quotation{problematic services}. If they're not below, it means there
are no issues at all with anything (like Briar for
example)},reference={below-youll-find-a-list-of-problematic-services.-if-theyre-not-below-it-means-there-are-no-issues-at-all-with-anything-like-briar-for-example}]

\subsubsubsection[title={Amazon:},reference={amazon}]

\startitemize[packed]
\item
  Is this against their ToS? No, but yes
  \useURL[url1911][https://www.amazon.com/gp/help/customer/display.html?nodeId=202140280]\from[url1911]
  \useURL[url1912][https://web.archive.org/web/https://www.amazon.com/gp/help/customer/display.html?nodeId=202140280][][{[}Archive.org{]}]\from[url1912]
\stopitemize

"1. Amazon Services, Amazon Software

A. Use of Amazon Services on a Product. To use certain Amazon Services
on a Product, you must have your own Amazon.com account, be logged in to
your account on the Product, {\bf and have a valid payment method
associated with your account.} "

While it does not technically require a real name. It does require a
valid payment method. Unfortunately, it will not accept \quotation{cash}
or \quotation{Monero} as a payment method. So instead, they are relying
on financial KYC (where a real-name policy is pretty much enforced
everywhere).

\startitemize
\item
  Will they require a phone number? Yes, but see below
\item
  Can you create accounts through Tor? Yes, but see below
\stopitemize

Because of this valid payment method requirement, we could not test
this. While this is seemingly not against their ToS, it is not possible
within the context of this guide unless you manage to obtain a valid KYC
payment method anonymously which AFAIK is pretty much impossible or
extremely difficult.

So, AFAIK, it is not possible to create an anonymous Amazon account.

\subsubsubsection[title={Apple:},reference={apple}]

\startitemize[packed]
\item
  Is this against their ToS? Yes
  \useURL[url1913][https://www.apple.com/legal/internet-services/icloud/en/terms.html]\from[url1913]
  \useURL[url1914][https://web.archive.org/web/https://www.apple.com/legal/internet-services/icloud/en/terms.html][][{[}Archive.org{]}]\from[url1914]
\stopitemize

"IV. Your Use of the Service

A. Your Account

In order to use the Service, you must enter your Apple ID and password
to authenticate your Account{\bf . You agree to provide accurate and
complete information when you register with, and as you use, the Service
(\quotation{Service Registration Data}), and you agree to update your
Service Registration Data to keep it accurate and complete".}

\startitemize
\item
  Will they require a phone number? Yes
\item
  Can you create accounts through Tor? Yes
\stopitemize

Note that this account will not allow you to set up an Apple mail
account. For that, you will need an Apple device.

\subsubsubsection[title={Binance:},reference={binance}]

\startitemize
\item
  Is this against their ToS? Yes
  \useURL[url1915][https://www.binance.com/en/terms]\from[url1915]
  \useURL[url1916][https://web.archive.org/web/https://www.binance.com/en/terms][][{[}Archive.org{]}]\from[url1916]
\item
  Will they require a phone number? No, they do require an e-mail
\item
  Can you create accounts through Tor? No
\stopitemize

\subsubsubsection[title={Discord:},reference={discord}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1917][https://discord.com/terms]\from[url1917]
  \useURL[url1918][https://web.archive.org/web/https://discord.com/terms][][{[}Archive.org{]}]\from[url1918]
\item
  Will they require a phone number? No, but they do require an e-mail
\item
  Can you create accounts through Tor? We had no issues with that so far
  using the Desktop Client
\stopitemize

You might encounter more issues using the Web Client (Captchas).
Especially with Tor Browser.

I suggest using the Discord Client app on a VM through Tor or ideally
through VPN/Proxy over Tor to mitigate such issues.

\subsubsubsection[title={Element:},reference={element}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1919][https://element.io/terms-of-service]\from[url1919]
  \useURL[url1920][https://web.archive.org/web/https://element.io/terms-of-service][][{[}Archive.org{]}]\from[url1920]
\item
  Will they require a phone number? No, they do not even require an
  e-mail
\item
  Can you create accounts through Tor? Yes
\stopitemize

Expect some Captchas during account creation on some homeservers.

\subsubsubsection[title={Facebook:},reference={facebook}]

\startitemize[packed]
\item
  Is this against their ToS? Yes
  \useURL[url1921][https://www.facebook.com/terms.php]\from[url1921]
  \useURL[url1922][https://web.archive.org/web/https://www.facebook.com/terms.php][][{[}Archive.org{]}]\from[url1922]
\stopitemize

"1. Who can use Facebook

When people stand behind their opinions and actions, our community is
safer and more accountable. For this reason, you must:

\startitemize
\item
  Use the same name that you use in everyday life.
\item
  Provide accurate information about yourself.
\item
  Will they require a phone number? Yes, and probably more later
\item
  Can you create accounts through Tor? Yes, but it is very difficult and
  their onion address\footnote{Facebook Onion Website
    \useURL[url1923][http://facebookwkhpilnemxj7asaniu7vnjjbiltxjqhye3mhbshg7kx5tfyd.onion/]\from[url1923]}
  will not help. In most cases, you'll just have a random error at
  sign-up and your account suspended after sign-in."
\stopitemize

But this clause of their ToS is illegal in Germany (see
\goto{Requirements}[pre-requisites-and-limitations]).

Facebook is one of the most aggressive platforms with identity
verification and is pushing hard their \quotation{real name policy}. It
is why this guide is only advised to German residents.

Over our tests tho we were able to pinpoint a few tips:

\startitemize
\item
  It will be easier if you have an Instagram account first.
\item
  Signing up through Tor is almost impossible (even using their .onion
  address which is a joke) and will only succeed if you are " very
  lucky" (I assume if you are using an exit node that is not yet known
  by Facebook verification systems). In most cases, it will not allow
  registration at all and will just fail with \quotation{An error has
  occurred during registration}.
\item
  Signing up through VPNs is more likely to succeed but might still
  result in the same error. So, you must be ready for a lot of trial and
  error here.
\item
  Signing up through a Self-Hosted VPN/Proxy is your best bet but make
  sure your profile/identity matches the IP geolocation.
\item
  My earlier entry in the guide about the Orwellian quote from Animal
  Farm is in full effect on Facebook. You will experience huge variation
  in acceptance depending on age/sex/ethnicity/nationality/\ldots{} This
  is where you will have far fewer issues if you are making an account
  of a Young European Caucasian Female. You will almost certainly fail
  if you try making a Middle-Aged Male where my other accounts are still
  unsuspended/unbanned to this day.
\item
  Logging-in (after you sign-up) however works fine with VPN and Tor but
  might still trigger an account suspension for violating Community
  Guidelines or Terms of Services (despite you not using the account at
  all for anything else than signing-up/logging-in). Ideally, you should
  log-in back with the same IP from a self-hosted VPN/Proxy.
\stopitemize

I also suspect strongly based on my test that the following points have
an impact on your likelihood of being suspended over time:

\startitemize
\item
  Not having friends
\item
  Not having interests and an \quotation{organic activity}
\item
  Not being in the contacts of any other user
\item
  Not being on other platforms (such as Instagram/WhatsApp)
\item
  Restricting your profile privacy settings too soon after signing-up
\stopitemize

If your account gets suspended, you will need to appeal the decision
through a quite simple form that will require you to submit a
\quotation{proof of ID}. However, that proof of ID verification system
is more lenient than LinkedIn and will allow you to send various
documents which require far less Photoshop skills.

It is also possible that they ask you to take a selfie video or
picture-making certain gestures to prove your identity. If that is the
case, we are afraid it is a dead-end for now unless you use a deepfake
face swapping technique.

If you do file an appeal, you will have to wait for Facebook to review
it (I do not know whether this is automatic or human) and you will have
to wait and hope for them to unsuspend your account.

\subsubsubsection[title={GitHub:},reference={github}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1924][https://docs.github.com/en/free-pro-team@latest/github/site-policy/github-terms-of-service]\from[url1924]
  \useURL[url1925][https://web.archive.org/web/https://docs.github.com/en/free-pro-team@latest/github/site-policy/github-terms-of-service][][{[}Archive.org{]}]\from[url1925]
\item
  Will they require a phone number? Nope, all good
\item
  Can you create accounts through Tor? Yes, but expect some captchas
\stopitemize

GitHub is straightforward and requires no phone number.

Be sure to go into Settings > E-Mail and make your e-mail private as
well as block any push that would reveal your e-mail.

\subsubsubsection[title={GitLab:},reference={gitlab}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1926][https://about.gitlab.com/handbook/legal/subscription-agreement/]\from[url1926]
  \useURL[url1927][https://web.archive.org/web/https://about.gitlab.com/handbook/legal/subscription-agreement/][][{[}Archive.org{]}]\from[url1927]
\item
  Will they require a phone number? Nope, all good
\item
  Can you create accounts through Tor? Yes, but expect captchas
\stopitemize

GitLab is straightforward and requires no phone number.

\subsubsubsection[title={Google:},reference={google}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1928][https://policies.google.com/terms]\from[url1928]
  \useURL[url1929][https://web.archive.org/web/https://policies.google.com/terms][][{[}Archive.org{]}]\from[url1929]
\item
  Will they require a phone number? Yes, they will. There is no escape
  here.
\item
  Can you create accounts through Tor? Yes, but expect some captchas and
  your phone number will be required
\stopitemize

Proton is good \ldots{} but to appear less suspicious, it is simply
better to also have a mainstream Google Mail account.

As Proton, Google will also most likely require a phone number during
sign-up as part of their verification process. However contrary to
Proton, Google will store that phone number during the sign-up process
and will also limit the number of accounts that can be created during
the sign-up\footnote{Google Help
  \useURL[url1930][https://support.google.com/accounts/answer/114129?hl=en]\from[url1930]
  \useURL[url1931][https://web.archive.org/web/https://support.google.com/accounts/answer/114129?hl=en][][{[}Archive.org{]}]\from[url1931]}'\footnote{Google
  Help, Customer Matching Process
  \useURL[url1932][https://support.google.com/google-ads/answer/7474263?hl=en]\from[url1932]
  \useURL[url1933][https://web.archive.org/web/https://support.google.com/google-ads/answer/7474263?hl=en][][{[}Archive.org{]}]\from[url1933]}.

From my experience during my research, this count is limited to three
accounts/phone numbers. If you are unlucky with your number (if it was
previously used by another mobile user), it might be less.

You should therefore use again your online phone number OR your burner
phone and pre-paid SIM card to create the account. Do not forget to use
the identity details you made up earlier (birthdate). When the account
is created, please do take some time to do the following:

\startitemize
\item
  {\bf (Trick)} Log into Google Mail on desktop and go into the Gmail
  Quick Settings > See all Setting > Forwarding and POP/IMAP > Add a
  forwarding address > Verify (using Proton) > Go back to Gmail and set
  the forwarding to forward and delete Google copy > Save. This step
  will allow you to check your Google Mail using Proton instead and will
  allow you to avoid triggering Google Security checks by Logging in
  from various VPN/Tor exit IP addresses in the future while storing
  your sensitive e-mail at Proton instead. This trick will allow you to
  receive all the e-mails from your Gmail addresses on your Proton (or
  other) address without needing to login into your Google accounts
  (reducing risks of it being suspended, especially if you use Tor).
\item
  Enable 2FA within the Google account settings. First, you will have to
  enable 2FA using the phone number. Then you will see the option appear
  to enable 2FA using an Authenticator app. Use that option and set it
  up with a new KeePassXC TOTP entry. When it is done, remove the phone
  2FA from the Google account. This will prevent someone from using that
  phone number in the future (when you do not have it anymore) to
  recover/gain access to that account.
\item
  Add Proton as a recovery e-mail address for the account.
\item
  Remove the phone number from the account details as a recovery option.
\item
  Upload a Google profile picture you made earlier during the identity
  creation step.
\item
  Review the Google Privacy settings to disable as much as you can:

  \startitemize
  \item
    Activity logging
  \item
    YouTube
  \stopitemize
\item
  Log out and do not touch it unless needed (as mentioned, you will use
  Proton to check your Gmail).
\stopitemize

Keep in mind that there are different algorithms in place to check for
weird activity. If you receive any mail (on Proton) prompting about a
Google Security Warning. Click it and click the button to say,
\quotation{Yes it was me}. It helps.

Do not use that account for \quotation{sign-up with Google} anywhere
unless necessary.

Be extremely careful if you decide to use the account for Google
activities (such as Google Maps reviews or YouTube Comments) as those
can easily trigger some checks (Negative reviews, Comments breaking
Community Guidelines on YouTube).

If your account gets suspended \footnote{Google, Your account is
  disabled
  \useURL[url1934][https://support.google.com/accounts/answer/40695]\from[url1934]
  \useURL[url1935][https://web.archive.org/web/https://support.google.com/accounts/answer/40695][][{[}Archive.org{]}]\from[url1935]}
(this can happen on sign-up, after signing-up or after using it in some
Google services), you can still get it unsuspended by
submitting\footnote{Google, Request to restore the account
  \useURL[url1936][https://support.google.com/accounts/contact/disabled2]\from[url1936]
  \useURL[url1937][https://web.archive.org/web/https://support.google.com/accounts/contact/disabled2][][{[}Archive.org{]}]\from[url1937]}
an appeal/verification (which will again require your Phone number and
possibly an e-mail contact with Google support with the reason).
{\bf Suspension of the account does not disable the e-mail forwarding,
but the suspended account will be deleted after a while.}

After suspension, if your Google account is restored, you should be
fine.

If your account gets banned, you will have no appeal and the forwarding
will be disabled. Your phone number will be flagged, and you will not be
able to use it to sign-up on a different account. Be careful when using
those to avoid losing them. They are precious.

It is also possible that Google will require an ID check through
indirect financial KYC or ID picture check if you try to access/publish
mature content on their platform\footnote{Google Help, Update your
  account to meet age requirements
  \useURL[url1938][https://support.google.com/accounts/answer/1333913?hl=en]\from[url1938]
  \useURL[url1939][https://web.archive.org/web/https://support.google.com/accounts/answer/1333913?hl=en][][{[}Archive.org{]}]\from[url1939]}.

\subsubsubsection[title={Instagram:},reference={instagram}]

\startitemize[packed]
\item
  Is this against their ToS? {\bf Maybe?} We are not sure
  \useURL[url1940][https://help.instagram.com/581066165581870?ref=dp]\from[url1940]
  \useURL[url1941][https://web.archive.org/web/https://help.instagram.com/581066165581870?ref=dp][][{[}Archive.org{]}]\from[url1941]
\stopitemize

"{\bf You can't impersonate others or provide inaccurate information.
You do not have to disclose your identity on Instagram, but you must
provide us with accurate and up-to-date information (including
registration information)}. {\bf Also, you may not impersonate someone
you are not, and you can't create an account for someone else unless you
have their express permission".}

This one is a bit of an Oxymoron don't you think? So, we are not sure
whether it is allowed or not.

\startitemize
\item
  Will they require a phone number? Maybe but less likely over VPN and
  very likely over Tor
\item
  Can you create accounts through Tor? Yes, but expect some captchas and
  your phone number will be required
\stopitemize

It is also possible that they ask you to take a selfie video or
picture-making certain gestures to prove your identity (within the app
or through an e-mail request). If that is the case, we are afraid it is
a dead-end for now.

It is no secret that Instagram is part of Facebook however it is more
lenient than Facebook when it comes to user verification. It is quite
unlikely you will get suspended or banned after signing up. But it could
help.

For instance, we noticed that you will face fewer issues creating a
Facebook account if you already have a valid Instagram account. You
should always create an Instagram account before trying Facebook.

Unfortunately, there are some limitations when using the web version of
Instagram. For instance, you will not be able to enable Authenticator
2FA from the web for a reason we do not know.

After sign-up, do the following:

\startitemize
\item
  Upload a picture of your generated identity if you want.
\item
  Go into your Settings
\item
  Make the account private (initially at least)
\item
  Do not show activity status
\item
  Do not allow sharing
\stopitemize

\subsubsubsection[title={Jami:},reference={jami}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1942][https://jami.net/privacy-policy/]\from[url1942]
  \useURL[url1943][https://web.archive.org/web/https://jami.net/privacy-policy/][][{[}Archive.org{]}]\from[url1943]
\item
  Will they require a phone number? No, they do not even require an
  e-mail
\item
  Can you create accounts through Tor? Nope it does not work for some
  technical reason
\stopitemize

\subsubsubsection[title={Kraken:},reference={kraken}]

\startitemize
\item
  Is this against their ToS? Yes
  \useURL[url1944][https://www.kraken.com/legal]\from[url1944]
  \useURL[url1945][https://web.archive.org/web/https://www.kraken.com/legal][][{[}Archive.org{]}]\from[url1945]
\item
  Will they require a phone number? No, they do require an e-mail
\item
  Can you create accounts through Tor? Yes
\stopitemize

\subsubsubsection[title={LinkedIn:},reference={linkedin}]

\startitemize[packed]
\item
  Is this against their ToS? Yes
  \useURL[url1946][https://www.linkedin.com/legal/user-agreement]\from[url1946]
  \useURL[url1947][https://web.archive.org/web/https://www.linkedin.com/legal/user-agreement][][{[}Archive.org{]}]\from[url1947]
\stopitemize

\quotation{To use the Services, you agree that: (1) you must be
the}{\em Minimum Age}" (described below) or older; (2) {\bf you will
only have one LinkedIn account, which must be in your real name}; and
(3) you are not already restricted by LinkedIn from using the Services.
{\bf Creating an account with false information is a violation of our
terms}, including accounts registered on behalf of others or persons
under the age of sixteen. "

But this clause of their ToS is illegal in Germany (see
\goto{Requirements}[pre-requisites-and-limitations]).

\startitemize
\item
  Will they require a phone number? Yes, they will.
\item
  Can you create accounts through Tor? Yes, but expect some captchas and
  your phone number will be required
\stopitemize

LinkedIn is far less aggressive than twitter but will nonetheless
require a valid e-mail (preferably again your Gmail) and a phone number
in most cases (tho not always).

LinkedIn however is relying a lot on reports and user/customer
moderation. You should not create a profile with an occupation inside a
private corporation or a small startup company. The company employees
are monitoring LinkedIn activity and receive notifications when new
people join. They can then report your profile as fake, and your profile
will then be suspended or banned pending appeal.

LinkedIn will then require you to go through a verification process that
will, unfortunately, require you to send an ID proof (identity card,
passport, driver's license). This ID verification is processed by a
company called Jumio\footnote{Jumio, ID verification features
  \useURL[url1948][https://www.jumio.com/features/]\from[url1948]
  \useURL[url1949][https://web.archive.org/web/https://www.jumio.com/features/][][{[}Archive.org{]}]\from[url1949]}
that specializes in ID proofing. This is most likely a dead end as this
would force you to develop some strong Photoshop skills.

Instead, you are far less likely to be reported if you just stay vague
(say you are a student/intern/freelance) or pretend you work for a large
public institution that is too large for anyone to care or check.

As with Twitter and Google, you should do the following after signing
up:

\startitemize
\item
  Disable ads
\item
  Disable notifications
\item
  Disable lookup by phone/e-mail
\item
  Upload a picture of your identity
\stopitemize

\subsubsubsection[title={MailFence:},reference={mailfence}]

\startitemize
\item
  Is this against their ToS? No
\item
  Will they require a phone number? No, but they require an e-mail
\item
  Can you create accounts through Tor? Maybe. From my tests, the
  signing-up verification e-mails are not sent when using Tor to
  sign-up. No issues however when using a VPN over Tor or a Proxy over
  Tor.
\stopitemize

\subsubsubsection[title={Medium:},reference={medium}]

\startitemize
\item
  Is this against their ToS? No, unless it is about crypto
  \useURL[url1950][https://policy.medium.com/medium-terms-of-service-9db0094a1e0f]\from[url1950]
  \useURL[url1951][https://web.archive.org/web/https://policy.medium.com/medium-terms-of-service-9db0094a1e0f][][{[}Archive.org{]}]\from[url1951]
\item
  Will they require a phone number? No, but they require an e-mail
\item
  Can you create accounts through Tor? No issues with that so far
\stopitemize

Signing-in does require an e-mail every time.

\subsubsubsection[title={Microsoft:},reference={microsoft}]

\startitemize[packed]
\item
  Is this against their ToS? Yes
  \useURL[url1952][https://www.microsoft.com/en/servicesagreement/]\from[url1952]
  \useURL[url1953][https://web.archive.org/web/https://www.microsoft.com/en/servicesagreement/][][{[}Archive.org{]}]\from[url1953]
\stopitemize

"i. Creating an Account. You can create a Microsoft account by signing
up online. {\bf You agree not to use any false, inaccurate, or
misleading information when signing up for your Microsoft account".}

But this clause of their ToS is illegal in Germany (see
\goto{Requirements}[pre-requisites-and-limitations]).

\startitemize
\item
  Will they require a phone number? Likely but not always. Depending on
  your luck with your Tor exit node, they may only require e-mail
  verification. If you use a VPN over Tor, they will likely only ask for
  an e-mail.
\item
  Can you create accounts through Tor? Yes, you can but expect captchas,
  at least e-mail verification, {\bf and likely phone verification.}
\stopitemize

So yes, it is still possible to create an MS account without a phone
number and using Tor or VPN, but you might have to cycle through a few
exit nodes to achieve this.

After signing up you should set up 2FA authentication within the
security options and using KeePassXC TOTP.

\subsubsubsection[title={OnlyFans:},reference={onlyfans}]

\startitemize
\item
  Is this against their ToS? No, it looks fine
  \useURL[url1954][https://onlyfans.com/terms]\from[url1954]
  \useURL[url1955][https://web.archive.org/web/https://onlyfans.com/terms][][{[}Archive.org{]}]\from[url1955]
\item
  Will they require a phone number? No, they do require an e-mail
\item
  Can you create accounts through Tor? Yes, you can
\stopitemize

Unfortunately, you will be extremely limited with that account and to do
anything you will need dot complete their verification process which
requires a KYC type financial transaction check. So, not very useful.

\subsubsubsection[title={Proton:},reference={proton}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1956][https://proton.me/legal/terms]\from[url1956]
  \useURL[url1957][https://web.archive.org/web/https://proton.me/legal/terms][][{[}Archive.org{]}]\from[url1957]
\item
  Will they require a phone number? Maybe. This depends on the IP you
  are coming from. If you come from Tor, it is likely. From a VPN, it is
  less likely.
\item
  Can you create accounts through Tor? Yes, but highly likely that a
  phone number will be required when only an e-mail or a captcha will be
  required over a VPN. They even have a \quotation{.onion} address at
  \useURL[url1958][http://protonmailrmez3lotccipshtkleegetolb73fuirgj7r4o4vfu7ozyd.onion/]\from[url1958].
\stopitemize

You obviously need an e-mail for your online identity and disposable
e-mails are pretty much banned everywhere.

Proton is a free e-mail provider based in Switzerland that advocates
security and privacy.

They are recommended by Privacyguides.org\footnote{Privacyguides.org
  recommended E-mail Providers
  \useURL[url1959][https://www.privacyguides.org/email/]\from[url1959]
  \useURL[url1960][https://web.archive.org/web/https://www.privacyguides.org/email/][][{[}Archive.org{]}]\from[url1960]}.
Their only apparent issue is that they do require (in most cases) a
phone number or another e-mail address for registration (when you try to
register from a VPN or Tor at least).

They claim they do not store/link the phone/e-mail associated with the
registration but only store a hash that is not linked to the
account\footnote{Proton Registration Human Verification
  \useURL[url1961][https://proton.me/support/human-verification/]\from[url1961]
  \useURL[url1962][https://web.archive.org/web/https://proton.me/support/human-verification][][{[}Archive.org{]}]\from[url1962]}.
If their claim is true and the hash is not linked to your account, and
that you followed my guide about the phone number, you should be
reasonably safe from tracking.

This e-mail account can be used for creating a Google/Gmail account.

\subsubsubsection[title={Reddit:},reference={reddit}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1963][https://www.redditinc.com/policies]\from[url1963]
  \useURL[url1964][https://web.archive.org/web/https://www.redditinc.com/policies][][{[}Archive.org{]}]\from[url1964]
\item
  Will they require a phone number? No, they will not.
\item
  Can you create accounts through Tor? Yes
\stopitemize

Reddit is simple. All you need to register is a valid username and a
password. Normally they do not even require an e-mail (you can skip the
e-mail when registering, leaving it blank).

No issues whatsoever signing up over Tor or VPN besides the occasional
Captchas.

Consider reading this reddit post:
\useURL[url1965][https://old.reddit.com/r/ShadowBan/comments/8a2gpk/an_unofficial_guide_on_how_to_avoid_being/]\from[url1965]
\useURL[url1966][https://web.archive.org/web/https://old.reddit.com/r/ShadowBan/comments/8a2gpk/an_unofficial_guide_on_how_to_avoid_being/][][{[}Archive.org{]}]\from[url1966]

\subsubsubsection[title={Slashdot:},reference={slashdot}]

\startitemize[packed]
\item
  Is this against their ToS? Yes
  \useURL[url1967][https://slashdotmedia.com/terms-of-use/]\from[url1967]
  \useURL[url1968][https://web.archive.org/web/https://slashdotmedia.com/terms-of-use/][][{[}Archive.org{]}]\from[url1968]
\stopitemize

"8. Registration; Use of Secure Areas and Passwords

Some areas of the Sites may require you to register with us. When and if
you register, you agree to (a) provide accurate, current, and complete
information about yourself as prompted by our registration form
(including your e-mail address) and (b) to maintain and update your
information (including your e-mail address) to keep it accurate,
current, and complete. You acknowledge that should any information
provided by you be found to be untrue, inaccurate, not current, or
incomplete, we reserve the right to terminate this Agreement with you
and your current or future use of the Sites (or any portion thereof)".

\startitemize
\item
  Will they require a phone number? No
\item
  Can you create accounts through Tor? Yes
\stopitemize

\subsubsubsection[title={Telegram:},reference={telegram}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1969][https://telegram.org/tos]\from[url1969]
  \useURL[url1970][https://web.archive.org/web/https://telegram.org/tos][][{[}Archive.org{]}]\from[url1970]
\item
  Will they require a phone number? Yes unfortunately
\item
  Can you create accounts through Tor? Yes, but sometimes you randomly
  get banned without any reason
\stopitemize

Telegram is quite straightforward, and you can download their portable
Windows app to sign-up and log in.

It will require a phone number (that can only be used once) and nothing
else.

In most cases, we had no issues whether it was over Tor or VPN, but we
had a few cases where our telegram account was just banned for violating
terms of services (not sure which one?). This again despite not using
them for anything.

They provide an appeal process through e-mail, but we had no success
with getting any answer.

Their appeal process is just sending an e-mail to
\useURL[url1971][mailto:recover@telegram.org][][recover@telegram.org]\from[url1971]
\useURL[url1972][https://web.archive.org/web/mailto:recover@telegram.org][][{[}Archive.org{]}]\from[url1972]
stating your phone number and issue and hope they answer.

After signing up you should do the following:

\startitemize
\item
  Go into Edit profile
\item
  Set a Username
\item
  Go into Settings (Desktop App)
\item
  Set the Phone Number visibility to Nobody
\item
  Set Last Seen & Online to Nobody
\item
  Set Forwarded Messages to Nobody
\item
  Set Profile photos to Contacts
\item
  Set Calls to Contacts
\item
  Set Group & Channels to Contacts
\stopitemize

\subsubsubsection[title={Tutanota:},reference={tutanota}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1973][https://tutanota.com/terms/]\from[url1973]
  \useURL[url1974][https://web.archive.org/web/https://tutanota.com/terms/][][{[}Archive.org{]}]\from[url1974]
\item
  Will they require a phone number? No, but they do require an e-mail.
\item
  Can you create accounts through Tor? Not really, almost all Tor Exit
  nodes are banned AFAIK
\stopitemize

\subsubsubsection[title={Twitter:},reference={twitter}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1975][https://twitter.com/en/tos]\from[url1975]
\item
  Will they require a phone number? Extremely likely, possibly now a
  requirement in all cases.
\item
  Can you create accounts through Tor? Yes, but expect some captchas and
  your phone number will be required after a while.
\stopitemize

Twitter is extremely aggressive in preventing anonymity on its network.
You should sign-up using e-mail and password (not phone) and not using
\quotation{Sign-in with Google}. Use your Gmail as the e-mail address.

More than likely, your account will be suspended immediately during the
sign-up process and will require you to complete a series of automated
tests to unlock. This will include a series of captchas, confirmation of
your e-mail and Twitter handle, or other information. In some cases, it
will also require your phone number.

In some cases, despite you selecting a text verification, the Twitter
verification system will call the phone no matter what. In that case,
you will have to pick up and hear the verification code. We suspect this
is another method of preventing automated systems and malicious users
from selling text receiving services over the internet.

Twitter will store all this information and link it to your account
including your IP, e-mail, and phone number. You will not be able that
phone number to create a different account.

Once the account is restored, you should take some time to do the
following:

\startitemize
\item
  Upload the identity profile picture.
\item
  Enable 2FA from the security settings using a new KeePassXC TOTP
  entry, save the security codes in KeePassXC as well.
\item
  Disable Photo tagging
\item
  Disable E-mail lookup
\item
  Disable Phone lookup
\item
  Disable all personalized advertising settings
\item
  Disable geolocation of tweets
\item
  {\bf Caution:} Remove the phone number from the account (at your own
  risk, this often leads to suspension of the account)
\item
  Follow some people based
\item
  Log out and leave it be.
\stopitemize

After about a week, you should check Twitter again and the chances are
quite high that it will be suspended again for \quotation{suspicious
activity} or \quotation{violating community guidelines} despite you not
using it at all (not even a single tweet/follow/like/retweet or DM) but
this time by another system. We call this the \quotation{Double-tap}.

This time you will need to submit an appeal using a form\footnote{Twitter
  Appeal Form
  \useURL[url1976][https://help.twitter.com/forms/general]\from[url1976]},
provide a good reason and wait for the appeal to be processed by
Twitter. During that process, you may receive an e-mail (on Proton)
asking you to reply to a customer service ticket to prove that you do
have access to your e-mail and that it is you. This will be directed
toward your Gmail address but will arrive on your Proton.

Do not reply from Proton as this will raise suspicions, you must sign in
to Gmail (unfortunately) and compose a new mail from there copy-pasting
the E-Mail, Subject, and Content from Proton. As well as a reply
confirming you have access to that e-mail.

After a few days, your account should get unsuspended \quotation{for
good}. No issues after that but keep in mind they can still ban your
account for any reason if you violate the community guidelines. The
phone number and e-mail will then be flagged, and you will have no other
option but to get a new identity with a new number to sign-up again. Do
not use this account for trolling.

\subsubsubsection[title={Twitch:},reference={twitch}]

\startitemize
\item
  Is this against their ToS? No
  \useURL[url1977][https://www.twitch.tv/p/en/legal/terms-of-service/]\from[url1977]
  \useURL[url1978][https://web.archive.org/web/https://www.twitch.tv/p/en/legal/terms-of-service/][][{[}Archive.org{]}]\from[url1978]
\item
  Will they require a phone number? No, but they do require an e-mail.
\item
  Can you create accounts through Tor? Yes
\stopitemize

Note that you will not be able to enable 2FA on Twitch using only
e-mail. This feature requires a phone number to enable.

\subsubsubsection[title={WhatsApp:},reference={whatsapp}]

\startitemize[packed]
\item
  Is this against their ToS? {\bf Yes}
  \useURL[url1979][https://www.whatsapp.com/legal/updates/terms-of-service-eea]\from[url1979]
  \useURL[url1980][https://web.archive.org/web/https://www.whatsapp.com/legal/updates/terms-of-service-eea][][{[}Archive.org{]}]\from[url1980]
\stopitemize

\quotation{{\bf Registration}. You must register for our Services
{\bf using accurate information}, provide your current mobile phone
number, and, if you change it, update your mobile phone number using our
in-app change number feature. You agree to receive text messages and
phone calls (from us or our third-party providers) with codes to
register for our Services}.

\startitemize
\item
  Will they require a phone number? Yes, they do.
\item
  Can you create accounts through Tor? No issues with that so far.
\stopitemize

\subsubsubsection[title={4chan:},reference={chan}]

\startitemize
\item
  Is this against their ToS? No
\item
  Will they require a phone number? No, they will not.
\item
  Can you post there with Tor or VPN? Not likely.
\stopitemize

4chan is 4chan \ldots{} This guide will not explain 4chan to you. They
block Tor exit nodes and known VPN IP ranges.

You are going to have to find a separate way to post there using at
least seven proxies\footnote{KnowYourMeme, Good Luck, I'm Behind 7
  Proxies
  \useURL[url1981][https://knowyourmeme.com/memes/good-luck-im-behind-7-proxies]\from[url1981]
  \useURL[url1982][https://web.archive.org/web/https://knowyourmeme.com/memes/good-luck-im-behind-7-proxies][][{[}Archive.org{]}]\from[url1982]}
that are not known by 4chan blocking system (hint: Anonymous VPS using
Monero is probably your best option).

\placefigure{image40}{\externalfigure[./tex2pdf.-1a34188c73046814/209a5add37a22e27eb7b941aaaffd5a9933f6d07.png]}

\subsubsubsection[title={Crypto Wallets:},reference={crypto-wallets}]

Use any crypto wallet app within the Windows Virtual Machine. But be
careful not to transfer anything toward an Exchange or a known Wallet.
Crypto is in most cases NOT anonymous and can be traced back to you when
you buy/sell any (remember the \goto{Your Cryptocurrencies
transactions}[your-cryptocurrencies-transactions] section).

{\bf If you really want to use Crypto, use Monero which is the only one
with reasonable privacy/anonymity.}

Ideally, you should find a way to buy/sell crypto with cash from an
unknown person.

\subsubsubsection[title={What about those mobile-only apps
(WhatsApp/Signal)?},reference={what-about-those-mobile-only-apps-whatsappsignal}]

There are only three ways of securely using those anonymously (that we
would recommend). Using a VPN on your phone is not one of those ways.
All of those are, unfortunately, \quotation{tedious} to say the least.

\startitemize
\item
  Use an Android Emulator within the Windows VM and run the App through
  your multi-layer of Tor/VPN. The drawback is that such emulators are
  usually quite resource-hungry and will slow down your VM and use more
  battery. Here is also an (outdated) guide on this matter:
  \useURL[url1983][https://www.bellingcat.com/resources/how-tos/2018/08/23/creating-android-open-source-research-device-pc/]\from[url1983]
  \useURL[url1984][https://web.archive.org/web/https://www.bellingcat.com/resources/how-tos/2018/08/23/creating-android-open-source-research-device-pc/][][{[}Archive.org{]}]\from[url1984].
  As for myself, we will recommend the use of:

  \startitemize
  \item
    Android-x86 on Virtualbox (see
    \useURL[url1985][https://www.android-x86.org/documentation/virtualbox.html]\from[url1985]
    \useURL[url1986][https://web.archive.org/web/https://www.android-x86.org/documentation/virtualbox.html][][{[}Archive.org{]}]\from[url1986])
    that you can also set up easily.
  \item
    AnBox (\useURL[url1987][https://anbox.io]\from[url1987]
    \useURL[url1988][https://web.archive.org/web/https://anbox.io/][][{[}Archive.org{]}]\from[url1988])
    that you can also set up rather easily including on the Whonix
    Workstation, see
    \useURL[url1989][https://www.whonix.org/wiki/Anbox]\from[url1989]
    \useURL[url1990][https://web.archive.org/web/https://www.whonix.org/wiki/Anbox][][{[}Archive.org{]}]\from[url1990]
  \stopitemize
\item
  {\bf Not recommended:} Using a non-official app (such as Wassapp for
  WhatsApp) to connect from the Windows VM to the app. Use at your own
  risk as you could get banned for violating the terms of services by
  using a non-official App.
\item
  {\bf Not recommended and most complicated:} Have a burner Smartphone
  that you will connect to the VM layered network through
  Tethering/Sharing of the connection through Wi-Fi. We will not detail
  this here, but it is an option.
\stopitemize

There is no way to reliably set a decent multi-layered connectivity
approach easily on an Android phone (it is not even possible on IOS as
far as we know). By reliable, we mean being sure that the smartphone
will not leak anything such as geolocation or anything else from booting
up to shutting down.

\subsubsubsection[title={Anything else:},reference={anything-else}]

You should use the same logic and security for any other platform.

It should work in most cases with most platforms. {\bf The hardest
platform to use with full anonymity is Facebook.}

This will obviously not work with banks and most financial platforms
(such as PayPal or Crypto Exchanges) requiring actual real official and
existing identification. This guide will not help you there as this
would be illegal in most places.

\subsubsection[title={How to share files privately and/or chat
anonymously:},reference={how-to-share-files-privately-andor-chat-anonymously}]

There are plenty of messaging apps everywhere. Some have excellent UI
and UX and terrible Security/Privacy. Some have excellent
Security/Privacy but terrible UI and UX. It is not easy to pick the ones
that you should use for sensitive activities. So, this section will help
you do that.

Before going further, there are also some key basic concepts you should
understand:

\subsubsubsection[title={End-to-end
Encryption:},reference={end-to-end-encryption}]

End-to-end Encryption\footnote{Wikipedia, end-to-end encryption
  \useURL[url1991][https://en.wikipedia.org/wiki/End-to-end_encryption]\from[url1991]
  \useURL[url1992][https://wikiless.org/wiki/End-to-end_encryption][][{[}Wikiless{]}]\from[url1992]
  \useURL[url1993][https://web.archive.org/web/https://en.wikipedia.org/wiki/End-to-end_encryption][][{[}Archive.org{]}]\from[url1993]}
(aka e2ee) is a rather simple concept. It just means only you and your
destination know each-others public encryption keys and no one in
between that would be eavesdropping would be able to decrypt the
communication.

However, the term is often used differently depending on the provider:

\startitemize
\item
  Some providers will claim e2ee but forget to mention what is covered
  by their protocols. For instance, is metadata also protected within
  their e2ee protocol? Or is it just the content of the messages?
\item
  Some providers do provide e2ee but only as an opt-in option (disabled
  by default).
\item
  Some providers do offer e2ee with 1 to 1 messaging but not with group
  messaging.
\item
  Some providers will claim the use of e2ee, but their proprietary apps
  are closed source where no one can verify the claim and the strength
  of the encryption used.
\stopitemize

For these reasons, it is always important to check the claims of various
apps. Open-Source apps should always be preferred to verify what kind of
encryption they are using and if their claims are true. If not open
source, such apps should have an openly available independent (made by a
reputable third party) report confirming their claims.

\subsubsubsection[title={Roll your own
crypto:},reference={roll-your-own-crypto}]

See the \goto{Bad Cryptography}[bad-cryptography] section at the start
of this guide.

{\bf Always be cautious of apps rolling their own crypto until it has
been reviewed by many in the crypto community (or even better published
and peer-reviewed academically)}. Again, this is harder to verify with
closed-source proprietary apps.

It is not that rolling your own crypto is bad in essence, it is that
good cryptography needs real peer-reviewing, auditing, testing\ldots{}
And since you are probably not a cryptanalyst (and we are not either),
chances are high we are not competent to assess the cryptography of some
apps.

\subsubsubsection[title={Forward Secrecy:},reference={forward-secrecy}]

Forward Secrecy\footnote{Wikipedia, Forward Secrecy
  \useURL[url1994][https://en.wikipedia.org/wiki/Forward_secrecy]\from[url1994]
  \useURL[url1995][https://wikiless.org/wiki/Forward_secrecy][][{[}Wikiless{]}]\from[url1995]
  \useURL[url1996][https://web.archive.org/web/https://en.wikipedia.org/wiki/Forward_secrecy][][{[}Archive.org{]}]\from[url1996]}
(FS aka PFS for Perfect Forward Secrecy) is a property of the key
agreement protocol of some of those messaging apps and is a companion
feature of e2ee. This happens before you establish communication with
the destination. The \quotation{Forward} refers to the future in time
and means that every time you establish a new e2ee communication, a new
set of keys will be generated for that specific session. The goal of
forward secrecy is to maintain the secrecy of past communications
(sessions) even if the current one is compromised. If an adversary
manages to get hold of your current e2ee keys, that adversary will then
be limited to the content of the single session and will not be able to
easily decrypt past ones.

This has some user experience drawbacks like for instance, a new device
could not be able to conveniently access the remotely stored chat
history without additional steps.

{\bf So, in short, Forward Secrecy protects past sessions against future
compromises of keys or passwords.}

More on this topic on this YouTube video:
\useURL[url1997][https://www.youtube.com/watch?v=zSQtyW_ywZc]\from[url1997]
\useURL[url1998][https://yewtu.be/watch?v=zSQtyW_ywZc][][{[}Invidious{]}]\from[url1998]

Some providers and apps claiming to offer e2ee do not offer FS/PFS
sometimes for usability reasons (group messaging for instance is more
complex with PFS). It is therefore important to prefer open-source apps
providing forward secrecy to those that do not.

\subsubsubsection[title={Zero-Access Encryption at
rest:},reference={zero-access-encryption-at-rest}]

Zero-Access Encryption\footnote{Proton Blog, What is zero-access
  encryption?
  \useURL[url1999][https://proton.me/blog/zero-access-encryption/]\from[url1999]
  \useURL[url2000][https://web.archive.org/web/https://proton.me/blog/zero-access-encryption/][][{[}Archive.org{]}]\from[url2000]}
at rest is used when you store data at some provider (let us say your
chat history or chat backups) but this history or backup is encrypted on
your side and cannot be read or decrypted by the provider hosting it.

Zero-Access encryption is an added feature/companion to e2ee but is
applied mainly to data at rest and not communications.

Examples of this issue would be iMessage and WhatsApp, see the
\goto{Your Cloud backups/sync services}[your-cloud-backupssync-services]
at the start of this guide.

So again, it is best to prefer Apps/Providers that do offer Zero-Access
Encryption at rest and cannot read/access any of your data/metadata even
at rest and not only limited to communications.

Such a feature would have prevented important hacks such as the
Cambridge Analytica scandal\footnote{Wikipedia, Cambridge Analytica
  Scandal
  \useURL[url2001][https://en.wikipedia.org/wiki/Facebook\%E2\%80\%93Cambridge_Analytica_data_scandal][][https://en.wikipedia.org/wiki/Facebook\letterpercent{}E2\letterpercent{}80\letterpercent{}93Cambridge_Analytica_data_scandal]\from[url2001]
  \useURL[url2002][https://wikiless.org/wiki/Facebook\%E2\%80\%93Cambridge_Analytica_data_scandal][][{[}Wikiless{]}]\from[url2002]
  \useURL[url2003][https://web.archive.org/web/https://en.wikipedia.org/wiki/Facebook\%E2\%80\%93Cambridge_Analytica_data_scandal][][{[}Archive.org{]}]\from[url2003]}
if it were implemented.

\subsubsubsection[title={Metadata
Protection:},reference={metadata-protection}]

Remember the \goto{Your Metadata including your
Geo-Location}[your-metadata-including-your-geo-location] section.
End-to-end Encryption is one thing, but it does not necessarily protect
your metadata.

For Instance, WhatsApp might not know what you are saying but they might
know who you are talking to, how long and when you have been talking to
someone, who else is in groups with you, and if you transferred data
with them (such as large files).

End-to-end Encryption does not in itself protect an eavesdropper from
harvesting your metadata.

This data can also be protected/obfuscated by some protocols to make
metadata harvesting substantially harder for eavesdroppers. This is the
case for instance with the Signal Protocol which does offer some added
protection with features like:

\startitemize
\item
  The Sealed Sender option\footnote{Signal Blog, Technology preview:
    Sealed sender for Signal
    \useURL[url2004][https://signal.org/blog/sealed-sender/]\from[url2004]
    \useURL[url2005][https://web.archive.org/web/https://signal.org/blog/sealed-sender/][][{[}Archive.org{]}]\from[url2005]}.
\item
  The Private Contact Discovery\footnote{Signal Blog, Private Contact
    Discovery
    \useURL[url2006][https://signal.org/blog/private-contact-discovery/]\from[url2006]
    \useURL[url2007][https://web.archive.org/web/https://signal.org/blog/private-contact-discovery/][][{[}Archive.org{]}]\from[url2007]}.
\item
  The Private Group System\footnote{Signal Blog, Private Group System
    \useURL[url2008][https://signal.org/blog/signal-private-group-system/]\from[url2008]
    \useURL[url2009][https://web.archive.org/web/https://signal.org/blog/signal-private-group-system/][][{[}Archive.org{]}]\from[url2009]}.
\stopitemize

Other Apps like Briar or OnionShare will protect metadata by using the
Tor Network as a shield and storing everything locally on-device.
Nothing is stored remotely, and all communications are either direct
using proximity wi-fi/Bluetooth or remotely through the Tor network.

Most apps however and especially closed-source proprietary commercial
apps will collect and retain your metadata for various purposes. And
such metadata alone is enough to figure out a lot of things about your
communications.

Again, it is important to prefer open-source apps with privacy in mind
and various methods in place to protect not only the content of
communications but all the associated metadata.

\subsubsubsection[title={Open-Source:},reference={open-source}]

Finally, Open-Source apps should always be preferred because they allow
third parties to check actual capabilities and weaknesses vs claims of
marketing departments. Open-Source does not mean the app should be free
or non-commercial. It just means transparency.

\subsubsubsection[title={Comparison:},reference={comparison}]

App0
e2ee1
Roll Your Own Crypto
Perfect
Forward Secrecy
Zero-Access Encryption at-rest5
Metadata Protection (obfuscation, encryption\ldots{})
Open-Source
Default Privacy Settings
Native Anonymous Sign-up (no e-mail or phone)
Possible through Tor
Privacy and Security Track Record ***
De-centralized
Additional notes
Berty
(avoid)
Yes
No
Yes
Yes
Yes
Yes 13
Good
Yes
Yes
Good
Yes (peer to peer)
Not sufficiently reviewed by this project, cannot recommend
Briar (preferred)
Yes
No 1
Yes
Yes
Yes (strong)
Yes
Good
Yes
Natively3
Good
Yes (peer to peer)
Cwtch
(preferred)
Yes
No
Yes
Yes
Yes (strong)
Yes
Good
Yes
Natively
Good
Yes (peer to peer)
Discord
(avoid)
No
Closed-source7
No
No
No
No
Bad
E-Mail Required
Virtualization
Bad
No
Element / Matrix.org (preferred)
Yes (opt-in)
No
Yes
Yes
Poor2
Yes
Good
Yes
Via Proxy3 or Virtualization
Good
Partial (federated servers)
Facebook Messenger (avoid)
Partial (Only 1to1 / opt-in)
Closed-source7
Yes
No
No
No
Bad
E-Mail and Phone required
Virtualization
Bad
No
OnionShare (preferred)
Yes
No
TBD8
TBD8
Yes (strong)
Yes
Good
Yes
Natively
Good
Yes (peer to peer)
Apple Messages (aka iMessage)
Yes
Closed-source7
No
Partial
No
No
Good
Apple device Required
Maybe Virtualization using real Apple device ID
Bad
No
IRC
Yes (OTR plugins)
No
No
No
No
Yes
Bad
Yes
Via Proxy3 or Virtualization
Good
No
Jami
(preferred)
Yes
No3
Yes
Yes
Partial
Yes
Good
Yes
Via Proxy3 or Virtualization9
Good
Partial
Tor breaks some features
KakaoTalk (avoid)
Yes
Closed-source7
No4
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
Keybase
Yes
No
Partial (exploding message)
No
No
Yes
Good
E-Mail Required
No
Kik (avoid)
No
Closed-source7
No
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
Line (avoid)
Partial (opt-in)
Closed-source7
No
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
Pidgin with OTR (avoid)
Yes (OTR5)
No
Yes
No
No
Yes
Bad
Yes
Via Proxy3 or Virtualization
Bad6
No
Tox (avoid)
Yes
No
No
No
No
Yes
Good
Yes
Via Proxy3 or Virtualization
Medium7
Yes
Known cryptographic weaknesses14
Session
(Preferred only on iOS)
Yes
No
No
Yes
Yes
Yes
Good
Yes
Via Proxy3 or Virtualization10
Good
Yes
Lacks PFS, deniability
Signal
Yes
No
Yes
Yes
Yes (moderate)
Yes
Good
Phone Required
Virtualization
Good
No
Requires burner or anonymous VOIP number for anonymous usage
Skype (avoid)
Partial (Only 1to1 / opt-in)
Closed-source7
No
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
SnapChat (avoid)
No
Closed-source7
No
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
Deleted/expired messages are easily recoverable15,16
Teams (avoid)
Yes
Closed-source7
No
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
Telegram
Partial (Only 1to1 / opt-in)
Yes (MTProto8)
Partial (secret chats only)
Yes
No
Partial5
Medium (e2ee off by default)
Phone Required
Via Proxy3 or Virtualization
Medium9
No
Viber (avoid)
Partial (Only 1to1)
Closed-source7
Yes
No
No
No
Bad
No (but possible)
Virtualization
Bad
No
WeChat (avoid)
No
Closed-source7
No
No
No
No
Bad
No
Virtualization
Bad
No
WhatsApp (avoid)
Yes
Closed-source7
Yes
No
No
No
Bad
Phone Required
Virtualization
Bad
No
Wickr Me
Partial (Only 1to1)
No
Yes
No
Yes (moderate)
No
Good
Yes
Virtualization
Good
No
Gajim (XMPP) (preferred)
Yes
No
Yes
No
No
Yes
Good
Yes
Via Proxy3 or Virtualization
Good
Partial
Zoom (avoid10)
Disputed11
No
TBD8
No
No
No
Bad
E-Mail Required
Virtualization
Bad12
No
Malware risk17
Molly
Yes
No
Yes
Yes
Yes (moderate)
Yes
Good
Phone Required
Virtualization
Good
No
Requires phone number. Security hardened fork of Signal client. Security
may be delayed for up to a week
Briar Documentation, Bramble Transport Protocol version 4
https://code.briarproject.org/briar/briar-spec/blob/master/protocols/BTP.md
{[}Archive.org{]}↩︎
Serpentsec, Matrix
https://web.archive.org/web/https://serpentsec.1337.cx/matrix↩︎
Wikipedia, GnuTLS, https://en.wikipedia.org/wiki/GnuTLS {[}Wikiless{]}
{[}Archive.org{]}↩︎
KTH ROYAL INSTITUTE OF TECHNOLOGYSCHOOL OF ELECTRICAL ENGINEERING, A
Security and Privacy Audit of KakaoTalk's End-to-End Encryption
www.diva-portal.org/smash/get/diva2:1046438/FULLTEXT01.pdf
{[}Archive.org{]}↩︎
Wikipedia, OTR https://en.wikipedia.org/wiki/Off-the-Record_Messaging
{[}Wikiless{]} {[}Archive.org{]}↩︎
Pidgin Security Advisories,
https://www.pidgin.im/about/security/advisories/ {[}Archive.org{]}↩︎
Whonix Forum, Tox Integration
https://forums.whonix.org/t/tox-qtox-whonix-integration/1219
{[}Archive.org{]}↩︎
Telegram Documentation, MTProto Mobile Protocol
https://core.telegram.org/mtproto {[}Archive.org{]}↩︎
Wikipedia, Telegram Security Breaches,
https://en.wikipedia.org/wiki/Telegram_(software)\#Security_breaches
{[}Wikiless{]} {[}Archive.org{]}↩︎
TechCrunch, Maybe we shouldn't use Zoom after all,
https://techcrunch.com/2020/03/31/zoom-at-your-own-risk/
{[}Archive.org{]}↩︎
The Incercept, Zoom Meetings Aren't End-to-End Encrypted, Despite
Misleading Marketing
https://theintercept.com/2020/03/31/zoom-meeting-encryption/ {[}Tor
Mirror{]} {[}Archive.org{]}↩︎
Serpentsec, Secure Messaging: Choosing a chat app
https://web.archive.org/web/https://serpentsec.1337.cx/secure-messaging-choosing-a-chat-app↩︎
Berty, Development, https://berty.tech↩︎
Tox Handshake Vulnerable to KCI,
https://github.com/TokTok/c-toxcore/issues/426↩︎
The Guardian, Deleted Snapchat photos recovered \quote{within days} by
forensics company,
https://www.theguardian.com/technology/2013/may/09/snapchat-photos-not-deleted↩︎
The Guardian, Snapchat's expired snaps are not deleted, just hidden,
https://web.archive.org/web/20131115224243/https://www.theguardian.com/media-network/partner-zone-infosecurity/snapchat-photos-not-deleted-hidden↩︎
The Guardian, \quote{Zoom is malware}: why experts worry about the video
conferencing platform,
https://www.theguardian.com/technology/2020/apr/02/zoom-technology-security-coronavirus-video-conferencing↩︎
{\bf Legend:}

\startitemize[n][stopper=.,width=2.0em]
\item
  The mention \quotation{preferred} or \quotation{avoid} refers to the
  use of those apps for sensitive communications. This is just my
  opinion, and you can make your own using the resources above and
  others. Remember \quotation{Trust but verify}.
\item
  e2ee refers to \quotation{end-to-end encryption}
\item
  Additional steps might be needed for securing Tor Connectivity
\item
  Their ability and willingness to fight for privacy and not cooperate
  with various adversaries
\item
  Only the client apps are open-source, not the server-side apps
\item
  This means the data is fully encrypted at rest (and not only during
  transit) and unreadable by any third party without a key you only know
  (including backups)
\item
  Unverifiable because it is proprietary closed source.
\item
  To Be Determined, unknown at the time of this writing
\item
  Jami will require you to enable DHTProxy in their options to work and
  it will be limited to text only.
\item
  Session also uses their own Onion Routing solution called LokiNet
\stopitemize

{\bf Some apps like Threema and Wire were excluded from this comparison
due to not being free and not accepting anonymous cash methods such as
Cash/Monero.}

\subsubsubsection[title={Conclusion:},reference={conclusion-3}]

{\bf Remember: \goto{Appendix B1: Checklist of things to verify before
sharing
information}[appendix-b1-checklist-of-things-to-verify-before-sharing-information].}

We will recommend these options in that order (as also recommend by
Privacyguides.org\footnote{Privacyguides.org, File-Sharing
  \useURL[url2010][https://www.privacyguides.org/file-sharing/]\from[url2010]
  \useURL[url2011][https://web.archive.org/web/https://www.privacyguides.org/file-sharing/][][{[}Archive.org{]}]\from[url2011]}'\footnote{Privacyguides.org,
  Real-Time Communication
  \useURL[url2012][https://www.privacyguides.org/real-time-communication/]\from[url2012]
  \useURL[url2013][https://web.archive.org/web/https://www.privacyguides.org/real-time-communication/][][{[}Archive.org{]}]\from[url2013]}
except for Session and Cwtch):

\startitemize
\item
  macOS:

  \startitemize
  \item
    Native Tor Onion Routing Support ({\bf preferred}):

    \startitemize
    \item
      OnionShare version >2.3
      (\useURL[url2014][https://onionshare.org/]\from[url2014]
      \useURL[url2015][http://lldan5gahapx5k7iafb3s4ikijc4ni7gx5iywdflkba5y2ezyg6sjgyd.onion/][][{[}Tor
      Mirror{]}]\from[url2015]
      \useURL[url2016][https://web.archive.org/web/https://onionshare.org/][][{[}Archive.org{]}]\from[url2016])**
    \item
      Cwtch (\useURL[url2017][https://cwtch.im]\from[url2017]
      \useURL[url2018][https://web.archive.org/web/https://cwtch.im/][][{[}Archive.org{]}]\from[url2018]
      {\bf warning, this is at the alpha/beta stage})**
    \stopitemize
  \item
    Non-Native Tor Support (needs additional steps for ideal anonymity
    to proxy it through Tor through Virtualization or Proxying):

    \startitemize
    \item
      Element/Matrix.org
      (\useURL[url2019][https://element.io/]\from[url2019]
      \useURL[url2020][https://web.archive.org/web/https://element.io/][][{[}Archive.org{]}]\from[url2020])
    \item
      Jami (\useURL[url2021][https://jami.net/]\from[url2021]
      \useURL[url2022][https://web.archive.org/web/https://jami.net/][][{[}Archive.org{]}]\from[url2022])*
    \item
      Gajim/XMPP (\useURL[url2023][https://gajim.org/]\from[url2023]
      \useURL[url2024][https://web.archive.org/web/https://gajim.org/][][{[}Archive.org{]}]\from[url2024])
    \stopitemize
  \stopitemize
\item
  Windows:

  \startitemize
  \item
    Native Tor Onion Routing Support ({\bf preferred}):

    \startitemize
    \item
      OnionShare version >2.3
      (\useURL[url2025][https://onionshare.org/]\from[url2025]
      \useURL[url2026][http://lldan5gahapx5k7iafb3s4ikijc4ni7gx5iywdflkba5y2ezyg6sjgyd.onion/][][{[}Tor
      Mirror{]}]\from[url2026]
      \useURL[url2027][https://web.archive.org/web/https://onionshare.org/][][{[}Archive.org{]}]\from[url2027])**
    \item
      Cwtch (\useURL[url2028][https://cwtch.im]\from[url2028]
      \useURL[url2029][https://web.archive.org/web/https://cwtch.im/][][{[}Archive.org{]}]\from[url2029]
      {\bf warning, this is at the alpha/beta stage})**
    \stopitemize
  \item
    Non-Native Tor Support (needs additional steps for ideal anonymity
    to proxy it through Tor through Virtualization or Proxying):

    \startitemize
    \item
      Element/Matrix.org
      (\useURL[url2030][https://element.io/]\from[url2030]
      \useURL[url2031][https://web.archive.org/web/https://element.io/][][{[}Archive.org{]}]\from[url2031])
    \item
      Jami (\useURL[url2032][https://jami.net/]\from[url2032]
      \useURL[url2033][https://web.archive.org/web/https://jami.net/][][{[}Archive.org{]}]\from[url2033])*
    \item
      Gajim/XMPP (\useURL[url2034][https://gajim.org/]\from[url2034]
      \useURL[url2035][https://web.archive.org/web/https://gajim.org/][][{[}Archive.org{]}]\from[url2035])
    \stopitemize
  \stopitemize
\item
  Linux:

  \startitemize
  \item
    Native Tor Onion Routing Support ({\bf preferred}):

    \startitemize
    \item
      Briar (\useURL[url2036][https://briarproject.org/]\from[url2036]
      \useURL[url2037][https://web.archive.org/web/https://briarproject.org/][][{[}Archive.org{]}]\from[url2037])*
    \item
      OnionShare version >2.3
      (\useURL[url2038][https://onionshare.org/]\from[url2038]
      \useURL[url2039][http://lldan5gahapx5k7iafb3s4ikijc4ni7gx5iywdflkba5y2ezyg6sjgyd.onion/][][{[}Tor
      Mirror{]}]\from[url2039]
      \useURL[url2040][https://web.archive.org/web/https://onionshare.org/][][{[}Archive.org{]}]\from[url2040])**
    \item
      Cwtch (\useURL[url2041][https://cwtch.im]\from[url2041]
      \useURL[url2042][https://web.archive.org/web/https://cwtch.im/][][{[}Archive.org{]}]\from[url2042]
      {\bf warning, this is at the alpha/beta stage})**
    \stopitemize
  \item
    Non-Native Tor Support (needs additional steps for ideal anonymity
    to proxy it through Tor through Virtualization or Proxying):

    \startitemize
    \item
      Element/Matrix.org
      (\useURL[url2043][https://element.io/]\from[url2043]
      \useURL[url2044][https://web.archive.org/web/https://element.io/][][{[}Archive.org{]}]\from[url2044])
    \item
      Jami (\useURL[url2045][https://jami.net/]\from[url2045]
      \useURL[url2046][https://web.archive.org/web/https://jami.net/][][{[}Archive.org{]}]\from[url2046])*
    \item
      Gajim/XMPP (\useURL[url2047][https://gajim.org/]\from[url2047]
      \useURL[url2048][https://web.archive.org/web/https://gajim.org/][][{[}Archive.org{]}]\from[url2048])
    \stopitemize
  \stopitemize
\item
  Note that for Jami to work over Tor, you will have to enable the local
  DHTProxy option within Jami Settings. This will only work for text
  messages and not for calls/videos)
\stopitemize

** Note that these options (Briar, Cwtch, and OnionShare) do not support
multi-devices yet. Your information is strictly stored on the device/OS
where you are setting it up. Do not use those on a non-persistent OS
unless you want ephemeral use.

Any safe options for mobile devices? {\bf Yes, but these are not
endorsed/recommended except Briar on Android. Remember also that this
guide discourages the use of smartphones for sensitive activities in
general.}

\startitemize
\item
  Android:

  \startitemize
  \item
    Briar (\useURL[url2049][https://briarproject.org/]\from[url2049]
    \useURL[url2050][https://web.archive.org/web/https://briarproject.org/][][{[}Archive.org{]}]\from[url2050])
  \item
    Cwtch (\useURL[url2051][https://cwtch.im]\from[url2051]
    \useURL[url2052][https://web.archive.org/web/https://cwtch.im/][][{[}Archive.org{]}]\from[url2052]
    {\bf warning, this is at the alpha/beta stage})
  \stopitemize
\item
  iOS:

  \startitemize[packed]
  \item
    Due to the lack of any better option and while it is {\bf normally
    not recommended}: Session Messenger:
    \useURL[url2053][https://getsession.org/]\from[url2053]
    \useURL[url2054][https://web.archive.org/web/https://getsession.org/][][{[}Archive.org{]}]\from[url2054].
    Why is it not recommended these days within the privacy community?
    {\bf See: \goto{Appendix B7: Caution about Session
    messenger}[appendix-b7-caution-about-session-messenger] to find out
    why we are cautious about Session Messenger}.
  \stopitemize
\stopitemize

{\bf Note that all the non-native Tor options must be used over Tor for
safety (from Tails or a guest OS running behind the Whonix Gateway such
as the Whonix Workstation or an Android-x86 VM).}

WhileWedo not recommend most of the messaging platforms for the various
reasons outlined above (phone number and e-mail requirements), this does
not mean it is not possible to use them anonymously if you know what you
are doing. You can use even Facebook Messenger anonymously by taking the
necessary precautions outlined in this guide (virtualization behind a
Tor Gateway on a non-persistent OS).

The ones that are preferred are recommended due to their stance on
privacy, their default settings, their crypto choices but also because
they allow convenient anonymous sign-up without going through the many
hassles of having a phone number/e-mail verification method and are open
source. Those should be privileged in most cases.

You can also consult the following external resources for more
comparisons ({\bf we do not necessarily endorse their opinions}):

\startitemize
\item
  SecuChart,
  \useURL[url2055][https://bkil.gitlab.io/secuchart/]\from[url2055]
  \useURL[url2056][https://web.archive.org/web/https://bkil.gitlab.io/secuchart/][][{[}Archive.org{]}]\from[url2056]
  \useURL[url2057][https://github.com/bkil/secuchart][][{[}Repository{]}]\from[url2057]
  (Maintained open-source project)\crlf
\item
  Wikipedia,
  \useURL[url2058][https://en.wikipedia.org/wiki/Comparison_of_cross-platform_instant_messaging_clients]\from[url2058]
  \useURL[url2059][https://wikiless.org/wiki/Comparison_of_cross-platform_instant_messaging_clients][][{[}Wikiless{]}]\from[url2059]
  \useURL[url2060][https://web.archive.org/web/https://en.wikipedia.org/wiki/Comparison_of_cross-platform_instant_messaging_clients][][{[}Archive.org{]}]\from[url2060]
  \startitemize[packed]
  \item
    Wikipedia,
    \useURL[url2061][https://en.wikipedia.org/wiki/Comparison_of_instant_messaging_protocols]\from[url2061]
    \useURL[url2062][https://wikiless.org/wiki/Comparison_of_instant_messaging_protocols][][{[}Wikiless{]}]\from[url2062]
    \useURL[url2063][https://web.archive.org/web/https://en.wikipedia.org/wiki/Comparison_of_instant_messaging_protocols][][{[}Archive.org{]}]\from[url2063]
  \stopitemize
\item
  Whonix Documentation, Instant Messenger Chat
  \useURL[url2064][https://www.whonix.org/wiki/Chat]\from[url2064]
  \useURL[url2065][https://web.archive.org/web/https://www.whonix.org/wiki/Chat][][{[}Archive.org{]}]\from[url2065]
  (Outdated, Unmaintained but contains insightful information)
\item
  {\bf Outdated, or unmaintained, or abandoned resources scheduled for
  removal from our guide in next release:}

  \startitemize
  \item
    Secure Messaging Apps
    \useURL[url2066][https://www.securemessagingapps.com/]\from[url2066]
    \useURL[url2067][https://web.archive.org/web/https://www.securemessagingapps.com/][][{[}Archive.org{]}]\from[url2067]
  \item
    Proton Blog,
    \useURL[url2068][https://proton.me/blog/whatsapp-alternatives/]\from[url2068]
    \useURL[url2069][https://web.archive.org/web/2022053117143/https://proton.me/blog/whatsapp-alternatives][][{[}Archive.org{]}]\from[url2069]
  \item
    SecureChart.org,
    \useURL[url2070][https://securechatguide.org/featuresmatrix.html]\from[url2070]
    \useURL[url2071][https://web.archive.org/web/https://securechatguide.org/featuresmatrix.html][][{[}Archive.org{]}]\from[url2071]
  \item
    Messenger-Matrix.de at
    \useURL[url2072][https://www.messenger-matrix.de/messenger-matrix-en.html]\from[url2072]
    \useURL[url2073][https://web.archive.org/web/https://www.messenger-matrix.de/messenger-matrix-en.html][][{[}Archive.org{]}]\from[url2073]
  \stopitemize
\stopitemize

{\bf We do not endorse or recommend some mainstream platforms for
anonymity including the much-praised Signal which to this date still
requires a phone number to register and contact others. In the context
of this guide, we strongly recommend against using Signal if possible.
The same recommendation applies to popular forks of Signal such as Molly
(\useURL[url2074][https://molly.im]\from[url2074]\useURL[url2075][https://web.archive.org/web/https://molly.im][][{[}Archive.org{]}]\from[url2075])}

\subsubsection[title={How to share files publicly but
anonymously:},reference={how-to-share-files-publicly-but-anonymously}]

{\bf Warning: before sharing anything publicly, make sure your files are
curated of any information that could compromise your identity. See
\goto{Appendix B1: Checklist of things to verify before sharing
information}[appendix-b1-checklist-of-things-to-verify-before-sharing-information].}

Consider the following platforms:

\startitemize
\item
  Cryptpad.fr (\useURL[url2076][https://cryptpad.fr/]\from[url2076]):
  Free tier limited to 1GB total and recommended by PrivacyGuides.org at
  \useURL[url2077][https://privacyguides.org/cloud/]\from[url2077]
  \useURL[url2078][https://web.archive.org/web/https://privacyguides.org/cloud/][][{[}Archive.org{]}]\from[url2078]
\item
  Proton Drive
  (\useURL[url2079][https://proton.me/drive/]\from[url2079]): Paid.
  Requires users to have \quotation{Proton Unlimited} or \quotation{Mail
  Plus}. Proton Drive is E2EE and recommended by PrivacyGuides.org
  \startitemize[packed]
  \item
    Like Proton and Proton VPN, it's not easy to sign up anonymously.
    When you try to register through Tor, they request verification
    either by phone number, or by providing a donation
  \stopitemize
\item
  Filen (\useURL[url2080][https://filen.io/]\from[url2080]): free tier
  limited to 10GB total
\stopitemize

Consider the use of IPFS\footnote{Wikipedia, IPFS
  \useURL[url2081][https://en.wikipedia.org/wiki/InterPlanetary_File_System]\from[url2081]
  \useURL[url2082][https://wikiless.org/wiki/InterPlanetary_File_System][][{[}Wikiless{]}]\from[url2082]
  \useURL[url2083][https://web.archive.org/web/https://en.wikipedia.org/wiki/InterPlanetary_File_System][][{[}Archive.org{]}]\from[url2083]}:

\startitemize[packed]
\item
  Pinata (\useURL[url2084][https://www.pinata.cloud/]\from[url2084]):
  Free tier limited to 1GB total
\stopitemize

\subsubsection[title={Redacting Documents/Pictures/Videos/Audio
safely:},reference={redacting-documentspicturesvideosaudio-safely}]

You might want to self-publish some information safely and anonymously
in the form of writing, pictures, videos, \ldots{}

For all these purposes here are a few recommendations:

\startitemize
\item
  Ideally, you should not use proprietary software such as Adobe
  Photoshop, Microsoft Office\ldots{}
\item
  Preferably, you should use open-source software instead such as
  LibreOffice, Gimp\ldots{}
\stopitemize

While the commercial alternatives are feature-rich, they are also
proprietary closed-source and often have various issues such as:

\startitemize
\item
  Sending telemetry information back to the company.
\item
  Adding unnecessary metadata and sometimes watermarks to your
  documents.
\item
  These apps are not free, and any leak of any metadata could be traced
  back to you since you had to buy these somewhere.
\stopitemize

It is possible to use commercial software for making sensitive
documents, but you should be extra careful with all the options in the
various Apps (commercial or free) to prevent any data leak from
revealing information about you.

Here is a comparative table of recommended/included software compiled
from various sources (PrivacyGuides.org, Whonix, Tails, Prism-Break.org,
and me). Keep in mind my recommendation considers the context of this
guide with only sporadic online presence on a need basis.

Type
Whonix
Prism-Break.org
PrivacyGuides.org
Tails
This guide
Offline Document Editing
LibreOffice
N/A
LibreOffice*
LibreOffice
LibreOffice,
Notepad++
Online Document Editing (collaboration)
N/A
Cryptpad.fr
Cryptpad.fr,
Etherpad.org,
Privatebin.net
N/A
Cryptpad.fr,
Etherpad.org,
Privatebin.net
Pictures Editing
Flameshot (L)
N/A
N/A
GIMP
GIMP
Audio Editing
Audacity
N/A
N/A
Audacity
Audacity
Video Editing
Flowblade (L)
N/A
N/A
N/A
Flowblade (L)
Olive (?)
OpenShot (?)
ShotCut (?)
Screen Recorder
Vokoscreen
N/A
N/A
N/A
Vokoscreen
Media Player
VLC
N/A
N/A
VLC
VLC
PDF Viewer
Ristretto (L)
N/A
N/A
N/A
Browser
PDF Redaction
PDF-Redact Tools (L)
N/A
N/A
PDF-Redact Tools (L)
LibreOffice,
PDF-Redact Tools (L)
{\bf Legend:} * Not recommended but mentioned. N/A = Not Included or
absence of recommendation for that software type. (L)= Linux Only but
can maybe be used on Windows/macOS through other means (HomeBrew,
Virtualization, Cygwin). (?)= Not tested but open-source and could be
considered.

{\bf In all cases, we strongly recommend only using such applications
from within a VM or Tails to prevent as much leaking as possible. If you
do not, you will have to sanitize those documents carefully before
publishing (See \goto{Removing Metadata from
Files/Documents/Pictures}[removing-metadata-from-filesdocumentspictures]).}

\subsubsection[title={Communicating sensitive information to various
known
organizations:},reference={communicating-sensitive-information-to-various-known-organizations}]

You might be interested in communicating information to some
organization such as the press anonymously.

If you must do so, you should take some steps because you cannot trust
any organization to protect your anonymity\footnote{Praxis Films, Open
  Letter from Laura Poitras
  \useURL[url2085][https://www.praxisfilms.org/open-letter-from-laura-poitras/]\from[url2085]
  \useURL[url2086][https://web.archive.org/web/https://www.praxisfilms.org/open-letter-from-laura-poitras/][][{[}Archive.org{]}]\from[url2086]}.
See \goto{Appendix B1: Checklist of things to verify before sharing
information}[appendix-b1-checklist-of-things-to-verify-before-sharing-information].

For this, we strongly recommend the use of SecureDrop\footnote{Wikipedia,
  SecureDrop
  \useURL[url2087][https://en.wikipedia.org/wiki/SecureDrop]\from[url2087]
  \useURL[url2088][https://wikiless.org/wiki/SecureDrop][][{[}Wikiless{]}]\from[url2088]
  \useURL[url2089][https://web.archive.org/web/https://en.wikipedia.org/wiki/SecureDrop][][{[}Archive.org{]}]\from[url2089]}
(\useURL[url2090][https://securedrop.org/]\from[url2090]
\useURL[url2091][https://web.archive.org/web/https://securedrop.org/][][{[}Archive.org{]}]\from[url2091])
which is an open-source project from the Freedom of the Press
Foundation.

\startitemize
\item
  Do take a moment to their read their \quotation{source guide} here:
  \useURL[url2092][https://docs.securedrop.org/en/stable/source.html]\from[url2092]
  \useURL[url2093][https://web.archive.org/web/https://docs.securedrop.org/en/stable/source.html][][{[}Archive.org{]}]\from[url2093]
\item
  Ideally, you should use SecureDrop over Tor and you will find a
  curated list of those here
  \useURL[url2094][https://github.com/alecmuffett/real-world-onion-sites\#securedrop]\from[url2094]
  \useURL[url2095][https://web.archive.org/web/https://github.com/alecmuffett/real-world-onion-sites\#securedrop][][{[}Archive.org{]}]\from[url2095]
\stopitemize

If not SecureDrop is not available, you could consider any other means
of communication, but you should privilege those that are encrypted end
to end. {\bf Do not ever do this from your real identity but only from a
secure environment using an anonymous identity.}

Without SecureDrop you could consider:

\startitemize
\item
  Using e-mail with GPG encryption provided your recipient has published
  a GPG key somewhere. You can look this up here:

  \startitemize
  \item
    On their verified Social Media accounts (Twitter) if they provided
    it.
  \item
    On \useURL[url2096][https://keybase.io]\from[url2096] (Tor address
    \useURL[url2097][http://keybase5wmilwokqirssclfnsqrjdsi7jdir5wy7y7iu3tanwmtp6oid.onion]\from[url2097])
  \item
    On open PGP directories such as: {\bf (be careful as those are
    public directories and anyone can upload any key for any e-mail
    address, you will have to cross-check the signature with other
    platforms to be sure it is theirs).}

    \startitemize
    \item
      \useURL[url2098][https://pgp.mit.edu/]\from[url2098]
    \item
      \useURL[url2099][https://keyserver.ubuntu.com/]\from[url2099]
    \item
      \useURL[url2100][https://keys.openpgp.org]\from[url2100]
    \stopitemize
  \stopitemize
\item
  Using any other platform (even Twitter DMs) but again using GPG to
  encrypt the message for the recipient.
\stopitemize

What you should avoid:

\startitemize
\item
  Do not send physical materials using the post due to the risk of
  leaving DNA/Fingerprints or other traceable information (see
  \goto{Cash-Paid VPN (preferred)}[cashmonero-paid-vpn]).
\item
  Do not use methods linked to a phone number (even a burner one) such
  as Signal/WhatsApp/Telegram.
\item
  Do not use any kind of voice/video communication.
\item
  Do not leak any clues about your real identity when exchanging
  messages.
\item
  Do not meet people in real life unless you have absolutely no other
  option (this is a last resort option).
\stopitemize

If you intend to break your anonymity to protect your safety:

\startitemize
\item
  Assess the risks very carefully first.
\item
  Inform yourself carefully on the legality/safety of your intent and
  the consequences for you and others. Think about it carefully.
\item
  Possibly reach out to a {\bf trusted} lawyer before doing so.
\stopitemize

\subsubsection[title={Maintenance tasks:},reference={maintenance-tasks}]

\startitemize
\item
  You should sign-up carefully into your accounts from time to time to
  keep them alive.
\item
  Check your e-mail regularly for security checks and any other account
  notification.
\item
  Check regularly the eventual appearance of compromise of any of your
  identities using
  \useURL[url2101][https://haveibeenpwned.com/]\from[url2101]
  \useURL[url2102][https://web.archive.org/web/https://haveibeenpwned.com/][][{[}Archive.org{]}]\from[url2102]
  (obviously from a safe environment).
\stopitemize

\section[title={Backing up your work
securely:},reference={backing-up-your-work-securely}]

{\bf Do not ever upload encrypted file containers with plausible
deniability (hidden containers within them) to most cloud services
(iCloud, Google Drive, OneDrive, Dropbox) without safety precautions.
This is because most cloud services keep backups/versioning of your
files, and such backups/versioning of your encrypted containers can be
used for differential analysis to prove the existence of a hidden
container.}

Instead, this guide will recommend other methods of backing up your
stuff safely.

\subsection[title={Offline Backups:},reference={offline-backups}]

These backups can be done on an external hard drive or a USB key. Here
are the various possibilities.

\subsubsection[title={Selected Files
Backups:},reference={selected-files-backups}]

\subsubsubsection[title={Requirements:},reference={requirements}]

For these back-ups, you will need a USB key or an external hard drive
with enough storage capacity to store the files you want to back up.

\subsubsubsection[title={Veracrypt:},reference={veracrypt}]

For this purpose, we will recommend the use of Veracrypt on all
platforms (Linux/Windows/macOS) for convenience, security, and
portability.

\subsubsubsection[title={Normal File
containers:},reference={normal-file-containers}]

The process is fairly simple and all you will need is to follow
Veracrypt tutorial here:
\useURL[url2103][https://www.veracrypt.fr/en/Beginner\%27s\%20Tutorial.html][][https://www.veracrypt.fr/en/Beginner\letterpercent{}27s\letterpercent{}20Tutorial.html]\from[url2103]
\useURL[url2104][https://web.archive.org/web/https://www.veracrypt.fr/en/Beginner\%27s\%20Tutorial.html][][{[}Archive.org{]}]\from[url2104]

In this container, you can then store sensitive data manually and or use
any backup utility you want to backup files from the OS to that
container.

You can then store this container anywhere safely.

\subsubsubsection[title={Hidden File containers with plausible
deniability:},reference={hidden-file-containers-with-plausible-deniability}]

The process is also fairly simple and similar to the earlier tutorial
except for this time you will use the Veracrypt wizard to create a
Hidden Veracrypt Volume instead of a Standard Veracrypt Volume.

You can create a Hidden volume within an existing Standard Volume or
just use the wizard to create a new one.

Let us say you want a container of 8GB, the Wizard will first create an
\quotation{outer volume} where you will be able to store decoy
information when prompted. Some decoy files (somewhat sensible,
plausible but not what you want to hide) should be stored in the decoy
volume.

Then Veracrypt will ask you to create a smaller hidden container (for
instance 2GB or 4GB) within the outer volume where you can store your
actual hidden files.

When you select the file for mounting in Veracrypt, depending on which
password you provide, it will mount the Outer decoy volume or the Hidden
volume.

You can then mount your hidden volume and use it to store sensitive
files normally.

{\bf Be careful when mounting the Outer decoy volume to update its
content. You should protect the hidden volume from being overwritten
when doing this as working in the decoy volume could overwrite data in
the hidden volume.}

To do this, when mounting the Decoy Volume, select Mount Options and
Check the \quotation{Protect hidden volume} option and provide the
hidden volume password on the same screen. Then mount the decoy volume.
This will protect the hidden volume from being overwritten when changing
the decoy files. This is also explained here in Veracrypt documentation:
\useURL[url2105][https://www.veracrypt.fr/en/Protection\%20of\%20Hidden\%20Volumes.html][][https://www.veracrypt.fr/en/Protection\letterpercent{}20of\letterpercent{}20Hidden\letterpercent{}20Volumes.html]\from[url2105]
\useURL[url2106][https://web.archive.org/web/https://www.veracrypt.fr/en/Protection\%20of\%20Hidden\%20Volumes.html][][{[}Archive.org{]}]\from[url2106]

{\bf Be extremely cautious with these file containers:}

\startitemize
\item
  {\bf Do not store multiple versions of them or store them anywhere
  where some versioning is being done (by the file system or the storage
  system). These file containers should be identical everywhere you
  store them. If you have a backup of such containers somewhere, it
  needs to be absolutely identical to the one you are using. If you do
  not take this precaution, an adversary could compare two different
  versions of this container and prove the existence of hidden data.
  Follow carefully the recommendations here
  \useURL[url2107][https://www.veracrypt.fr/en/Security\%20Requirements\%20for\%20Hidden\%20Volumes.html][][https://www.veracrypt.fr/en/Security\letterpercent{}20Requirements\letterpercent{}20for\letterpercent{}20Hidden\letterpercent{}20Volumes.html]\from[url2107]}
  \useURL[url2108][https://web.archive.org/web/https://www.veracrypt.fr/en/Security\%20Requirements\%20for\%20Hidden\%20Volumes.html][][{[}Archive.org{]}]\from[url2108]{\bf .
  Remember the \goto{Local Data Leaks and
  Forensics:}[local-data-leaks-and-forensics] section.}
\item
  We strongly recommend storing such containers on external USB keys
  that you will only mount from your guest VMs and never from your Host
  OS. {\bf After each modification to the files, you should clean the
  free space on the USB disk and make sure that any backup of such
  containers is absolutely identical on each key and your computer. See
  the \goto{How to securely delete specific files/folders/data on your
  HDD/SSD and Thumb
  drives}[how-to-securely-delete-specific-filesfoldersdata-on-your-hddssd-and-thumb-drives]
  section of this guide for help on doing this.}
\item
  If you have time, {\bf We will even recommend that you delete wipe the
  keys completely before making any modification on such containers on
  your computer (if you do not work from the USB key directly).} This is
  to prevent an adversary that would seize your assets before you could
  update the keys from having multiple versions of the containers that
  could lead to proving the existence of hidden data using forensics
  techniques.
\item
  {\bf Do not ever store such containers on cloud storage platforms that
  have backups and where you have no direct control over permanent
  deletion. They might keep \quotation{old versions} of your files which
  can then also be used by forensics to prove the existence of hidden
  data.}
\item
  If you are mounting the hidden volume from your Host OS ({\bf not
  recommended}), you should erase all traces of this hidden volume
  everywhere after use. There could be traces in various places (system
  logs, file systems journaling, recent documents in your applications,
  indexing, registry entries\ldots{}). Refer to the \goto{Some
  additional measures against
  forensics}[some-additional-measures-against-forensics] section of this
  guide to remove such artifacts. Especially on Windows. Instead, you
  should mount them on your Guest VMs. With Virtualbox for instance, you
  could take a snapshot of the VM before opening/working the hidden
  volume and then restore the snapshot before opening/working on it
  after use. This should erase the traces of its presence and mitigate
  the issue. Your Host OS might keep logs of the USB key being inserted
  but not of the hidden volume usage. Therefore, we do not recommend
  using these from your host OS.
\item
  Do not store these on external SSD drives if you are not sure you can
  use Trim on them (see the \goto{Understanding HDD vs
  SSD}[understanding-hdd-vs-ssd] section).
\stopitemize

\subsubsection[title={Full Disk/System
Backups:},reference={full-disksystem-backups}]

{\bf TLDR version: Just use Clonezilla as it worked reliably and
consistently with all my tests on all operating systems except for Macs
where you should probably use native utilities (Time Machine/Disk
utility instead) to avoid compatibility issues and since you are using
Native macOS encryption. When using Windows, do not back up a partition
containing a hidden OS in case you use Plausible Deniability} (as
explained before, this backup could allow an adversary to prove the
existence of the hidden OS by comparing the last backup to the current
system where data will have changed and defeat plausible deniability,
use file containers instead).

You will have two options here:

\startitemize
\item
  (Not recommended) Doing your backup from the live operating system
  using a backup utility (commercial utilities such as EaseUS Todo Free,
  Macrium Reflect\ldots{}) or native utilities like macOS Time Machine,
  QubesOS Backup, Ubuntu Déjà Dup, or Windows Backup\ldots{}).

  \startitemize
  \item
    This backup can be done while the Operating System is running.
  \item
    This backup will not be encrypted using the disk encryption but
    using the Backup utility encryption algorithm (which you will have
    to trust and cannot really control for most). Alternatively, you
    could encrypt the backup media yourself separately (for instance
    with Veracrypt). We are not aware of any free or non-free utility
    that natively supports Veracrypt.
  \item
    Some utilities will allow for differential/incremental backups
    instead of full backups.
  \item
    These backup utilities will not be able to restore your encrypted
    drive as-is as they do not support those encrypted file systems
    natively. And so, these will require more work to restore your
    system in an encrypted state (re-encryption after restoring).
  \stopitemize
\item
  (Recommended) Doing it offline from a boot drive (such as with the
  free open-source Clonezilla).

  \startitemize
  \item
    This backup can only be done while the Operating System is not
    running.
  \item
    This backup will back up the encrypted disk as-is and therefore will
    be encrypted by default with the same mechanism (it is more like a
    fire and forget solution). The restore will also restore the
    encryption as-is and your system will immediately be ready to use
    after a restore.
  \item
    This method will not allow incremental/differential back-ups
    (meaning you will have to re-do a full backup every time).
  \item
    This method is the easiest to manage.
  \stopitemize
\stopitemize

We made extensive testing using live backups utilities (Macrium Reflect,
EaseUS Todo Reflect, Déjà Dup\ldots{}) and personally we do not think it
is worth it. Instead, we would recommend that you periodically back up
your system with a simple Clonezilla image. It is much easier to
perform, much easier to restore, and usually works reliably without
issues in all cases. And contrary to many beliefs, it is not that slow
with most backups taking about an hour depending on the speed of your
destination media.

For backing up single files while you work, we recommend using file
containers or encrypted media directly and manually as explained in the
earlier section.

\subsubsubsection[title={Requirements:},reference={requirements-1}]

You will need a separate external drive with at least the same or more
free space available than your source disk. If your laptop has a 250GB
disk. You will need at least 250GB of free disk space for the full image
backup. Sometimes this will be reduced significantly with compression by
the backup utility but as a safety rule, you should have at least the
same or more space on your backup drive.

\subsubsubsection[title={Some general warnings and
considerations:},reference={some-general-warnings-and-considerations}]

\startitemize
\item
  If you use Secure Boot, you will need a backup utility that supports
  Secure Boot which includes Clonezilla AMD64 versions.
\item
  Consider the use of exFAT as the file system for your backup drives as
  those will provide better compatibility between various OSes (macOS,
  Linux, and Windows) vs NTFS/HFS/ext4\ldots{}
\stopitemize

\subsubsubsection[title={Linux:},reference={linux-1}]

\subsubsubsubsection[title={Ubuntu (or any other distro of
choice):},reference={ubuntu-or-any-other-distro-of-choice}]

We will recommend the use of the open-source Clonezilla utility for
convenience and reliability but there are many other native Linux
utilities and methods you could use for this purpose.

So, you should follow the steps in \goto{Appendix E:
Clonezilla}[appendix-e-clonezilla]

\subsubsubsubsection[title={QubesOS:},reference={qubesos}]

Qubes OS recommends using their own utility for backups as documented
here
\useURL[url2109][https://www.qubes-os.org/doc/backup-restore/]\from[url2109]
\useURL[url2110][https://web.archive.org/web/https://www.qubes-os.org/doc/backup-restore/][][{[}Archive.org{]}]\from[url2110].
But it is just a hassle and provides limited added value unless you just
want to back up a single Qube. So instead, we are also recommending just
making a full image with Clonezilla which will remove all the hassle and
bring you back a working system in a few simple steps.

So, you should follow the steps in \goto{Appendix E:
Clonezilla}[appendix-e-clonezilla]

\subsubsubsection[title={Windows:},reference={windows-1}]

We will only recommend the use of the open-source and free Clonezilla
utility for this purpose. There are commercial utilities that offer the
same functionality, but we do not see any advantage in using any of them
vs Clonezilla.

Some warnings:

\startitemize
\item
  If you use Bitlocker for encryption with TPM\footnote{Wikipedia, TPM
    \useURL[url2111][https://en.wikipedia.org/wiki/Trusted_Platform_Module]\from[url2111]
    \useURL[url2112][https://wikiless.org/wiki/Trusted_Platform_Module][][{[}Wikiless{]}]\from[url2112]
    \useURL[url2113][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trusted_Platform_Module][][{[}Archive.org{]}]\from[url2113]}
  enabled, you might need to save your Bitlocker Key (safely) somewhere
  as well as this might be needed to restore your drive if your HDD/SSD
  or other hardware parts changed. Another option would be to use
  Bitlocker without the use of TPM which would not require this option.
  But again, we do not recommend using Bitlocker at all.
\item
  You should always have a backup of your Veracrypt rescue disk at hand
  somewhere to be able to resolve some issues that might still appear
  after a restore. Remember this rescue disk does not contain your
  passphrase or any sensitive information. You can store it as is.
\item
  If you changed the HDD/SSD after a failure, Windows 10/11 may refuse
  to boot if your hard drive ID is changed. You should also save this ID
  before backing up as you might need to change the ID of the new drive
  as Windows 10/11 might require a matching ID before booting. See
  \goto{Appendix F: Diskpart}[appendix-f-diskpart]
\item
  {\bf In case you are using Plausible Deniability on Windows. DO NOT
  back up the hidden OS partition as this image could be used by
  Forensics to prove the existence of the hidden volume as explained
  earlier. It is okay to back up the Decoy OS partition without issues,
  but you should never back up the partition containing the Hidden OS.}
\stopitemize

Follow the steps in \goto{Appendix E: Clonezilla}[appendix-e-clonezilla]

\subsubsubsection[title={macOS:},reference={macos-1}]

we would recommend just using the native Time Machine backup with
encryption (and a strong passphrase that could be the same as your OS)
as per the guides provided at Apple:
\useURL[url2114][https://support.apple.com/en-ie/guide/mac-help/mh21241/mac]\from[url2114]
\useURL[url2115][https://web.archive.org/web/https://support.apple.com/en-ie/guide/mac-help/mh21241/mac][][{[}Archive.org{]}]\from[url2115]
and
\useURL[url2116][https://support.apple.com/en-ie/guide/mac-help/mh11421/11.0/mac/11.0]\from[url2116]
\useURL[url2117][https://web.archive.org/web/https://support.apple.com/en-ie/guide/mac-help/mh11421/11.0/mac/11.0][][{[}Archive.org{]}]\from[url2117].

So, plug in an external drive and it should prompt you to use it as a
Time Machine backup.

{\bf You should however consider formatting this drive as exFAT so that
it is also usable by other OSes conveniently (Windows/Linux) without
added software using this guide:
\useURL[url2118][https://support.apple.com/en-ie/guide/disk-utility/dskutl1010/mac]\from[url2118]}
\useURL[url2119][https://web.archive.org/web/https://support.apple.com/en-ie/guide/disk-utility/dskutl1010/mac][][{[}Archive.org{]}]\from[url2119]

It is just simpler and will work online while you work. You will be able
to recover your data on any other Mac from the recovery options and you
will be also able to use this disk for backing up other devices.

It is possible to also use Clonezilla to clone your Mac Hard Drive, but
it could bring hardware compatibility issues and probably will not add
much in terms of security. So, for macOS, We are not specifically
recommending Clonezilla.

\subsection[title={Online Backups:},reference={online-backups}]

\subsubsection[title={Files:},reference={files}]

This is a tricky one. The problem is that it depends on your threat
model.

\startitemize
\item
  {\bf TLDR: Do not store file containers with plausible deniability
  (Veracrypt) online.} If you use containers with plausible deniability,
  you should never store them on any platform where you do not have full
  control over the deletion process as the platform will most likely
  have backups of previous versions for some time. And again, these
  previous versions could allow forensics to prove the existence of
  hidden data and defeat plausible deniability. This includes platforms
  like DropBox, Google Drive, OneDrive, or others. The only acceptable
  online storage of those could be \quotation{cold storage} (meaning you
  will never change those files again and just keep them away untouched
  compared to any local version).
\item
  If you use normally encrypted backups without plausible deniability,
  you could store them pretty much anywhere if they are properly
  encrypted locally before uploading (for example with Veracrypt, using
  strong passphrases and encryption). {\bf Do not ever trust the
  encryption of any online provider. Only trust your own local
  encryption (using Veracrypt for instance).} For these cases, you could
  store your backups pretty much anywhere in the accounts of your online
  identities (iCloud, Google Drive, DropBox\ldots{}) if they are
  strongly encrypted locally before uploading. But you could also prefer
  privacy caring services such as Cryptpad.fr (1GB).
\stopitemize

Obviously do not ever do/access those backups from unsecured/unsafe
devices but only from the secure environments, you picked before.

\subsubsubsection[title={Self-hosting:},reference={self-hosting}]

Self-hosting (using Nextcloud for instance) is also a possibility
provided you do have an anonymous hosting

{\bf Please see \goto{Appendix A1: Recommended VPS hosting
providers}[appendix-a1-recommended-vps-hosting-providers].}

Please also consider \goto{Appendix B2: Monero
Disclaimer}[appendix-b2-monero-disclaimer].

\subsubsubsection[title={Cloud-hosting:},reference={cloud-hosting}]

For smaller files, consider:

\startitemize
\item
  Cryptpad.fr (\useURL[url2120][https://cryptpad.fr/]\from[url2120]):
  Free tier limited to 1GB total and recommended by PrivacyGuides.org at
  \useURL[url2121][https://privacyguides.org/cloud/]\from[url2121]
  \useURL[url2122][https://web.archive.org/web/https://privacyguides.org/cloud/][][{[}Archive.org{]}]\from[url2122]
\item
  Filen (\useURL[url2123][https://filen.io/]\from[url2123]): free tier
  limited to 10GB total
\stopitemize

We are currently not aware of any online storage/hosting platform
accepting cash payments unlike providers mentioned before.

If you do intend to store sensitive data on \quotation{mainstream
platforms} (Dropbox, Google Drive, OneDrive\ldots{}), {\bf remember not
to ever store plausible deniability containers on those and remember to
encrypt and check (for metadata\ldots{}) anything locally before
uploading there}. Either with software like Veracrypt or with a software
like Cryptomator
(\useURL[url2124][https://cryptomator.org/]\from[url2124]). Do not ever
upload non-encrypted files on those platforms and repeating myself, only
access them from a secure shielded VM.

\subsubsection[title={Information:},reference={information}]

If you just want to save information (text), we will recommend the use
of secure and private pastebins\footnote{Wikipedia, Pastebin
  \useURL[url2125][https://en.wikipedia.org/wiki/Pastebin]\from[url2125]
  \useURL[url2126][https://wikiless.org/wiki/Pastebin][][{[}Wikiless{]}]\from[url2126]
  \useURL[url2127][https://web.archive.org/web/https://en.wikipedia.org/wiki/Pastebin][][{[}Archive.org{]}]\from[url2127]}.
Mostly we will stick to the ones recommended by PrivacyGuides.org
(\useURL[url2128][https://www.privacyguides.org/productivity/\#paste-services]\from[url2128]
\useURL[url2129][https://web.archive.org/web/https://www.privacyguides.org/productivity/\#paste-services][][{[}Archive.org{]}]\from[url2129]
) :

\startitemize
\item
  \useURL[url2130][https://privatebin.info/]\from[url2130]
\item
  \useURL[url2131][https://cryptpad.fr/pad/]\from[url2131]
\stopitemize

On these providers, you can just create a password-protected pad with
the information you want to store.

Just create a pad, protect it with a password and write your info in it.
Remember the address of the pad.

\subsection[title={Synchronizing your files between devices
Online:},reference={synchronizing-your-files-between-devices-online}]

To that, the answer is very simple and a clear consensus for everyone:
\useURL[url2132][https://syncthing.net/]\from[url2132]
\useURL[url2133][https://web.archive.org/web/https://syncthing.net/][][{[}Archive.org{]}]\from[url2133]

Just use SyncThing, it is the safest and most secure way to synchronize
between devices, it is free and open-source, and it can easily be used
in a portable way without install from a container that needs syncing.

\section[title={Covering your tracks:},reference={covering-your-tracks}]

\subsection[title={Understanding HDD vs
SSD:},reference={understanding-hdd-vs-ssd}]

\placefigure{image41}{\externalfigure[./tex2pdf.-1a34188c73046814/f714cdfaa68a568871b0d69fadeb3d0807ee782e.png]}

If you intend to wipe your whole HDD laptop, the process is rather
straightforward. The data is written at a precise location on a magnetic
(hard) platter (why it is called a hard drive) and your OS knows
precisely where it is on the platter, where to delete it, and where to
overwrite it for secure deletion using simple processes (like just
overwriting that location over and over until no traces are left).

On the other hand, if you are using an SSD drive, the process is not as
simple as the drive uses several internal mechanisms to extend its
lifespan and performance. Three of those processes are of particular
interest when it comes to us in this guide. SSD drives are divided
themselves into two main categories:

\startitemize
\item
  ATA Drives (usually SATA and usually 2.5" format as the image above).
\item
  NVMe Drives (usually M.2 format as the illustration below).
\stopitemize

Here are examples of the most common formats:

\placefigure{image42}{\externalfigure[./tex2pdf.-1a34188c73046814/eec357c2a4f93c6863432df1ca7e8ddf486f7007.png]}

All of these are sold as internal and external drives within enclosures.

The methods and utilities to manage/wipe them will vary depending on the
type of drive you are using. So, it is important you know which one you
have inside your laptop.

{\bf On most recent laptops, chances are high that it will be one of the
middle options (M.2 SATA or M.2 NVMe).}

\subsubsection[title={Wear-Leveling.},reference={wear-leveling.}]

These drives use a technique called wear leveling\footnote{Wikipedia,
  Wear Leveling
  \useURL[url2134][https://en.wikipedia.org/wiki/Wear_leveling]\from[url2134]
  \useURL[url2135][https://wikiless.org/wiki/Wear_leveling][][{[}Wikiless{]}]\from[url2135]
  \useURL[url2136][https://web.archive.org/web/https://en.wikipedia.org/wiki/Wear_leveling][][{[}Archive.org{]}]\from[url2136]}.
At a high level, wear leveling works as follows. The space on every disk
is divided into blocks that are themselves divided into pages, like the
chapters in a book are made of pages. When a file is written to disk, it
is assigned to a certain set of pages and blocks. If you wanted to
overwrite the file in an HDD, then all you would have to do is tell the
disk to overwrite those blocks. But in SSDs and USB drives, erasing and
re-writing the same block can wear it out. Each block can only be erased
and rewritten a limited number of times before that block just will not
work anymore (the same way if you keep writing and erasing with a pencil
and paper, eventually the paper might rip and be useless). To counteract
this, SSDs and USB drives will try to make sure that the number of times
each block has been erased and rewritten is about the same so that the
drive will last as long as possible (thus the term wear leveling). As a
side effect, sometimes instead of erasing and writing the block, a file
was originally stored on, the drive will instead leave that block alone,
mark it as invalid, and just write the modified file to a different
block. This is like leaving the chapter in the book unchanged, writing
the modified file on a different page, and then just updating the book's
table of contents to point to the new location. All of this occurs at a
very low level in the electronics of the disk, so the operating system
does not even realize it has happened. This means, however, that even if
you try to overwrite a file, there is no guarantee the drive will
actually overwrite it, and that's why secure deletion with SSDs is so
much harder.

Wear-leveling alone can therefore be a disadvantage for security and an
advantage for adversaries such as forensics examiners. This feature
makes classic \quotation{secure deletion} counter-productive and useless
and is why this feature was removed on some Operating Systems like macOS
(as from version 10.11 El Capitan) where you could enable it before on
the Recycle Bin.

Most of those old secure deletion utilities were written with HDD in
mind and have no control over wear-leveling and are completely pointless
when using an SSD. Avoid them on an SSD drive.

\subsubsection[title={Trim Operations:},reference={trim-operations}]

So, what now? Well here comes the Trim\footnote{Wikipedia, Trim
  \useURL[url2137][https://en.wikipedia.org/wiki/Write_amplification\#TRIM]\from[url2137]
  \useURL[url2138][https://wikiless.org/wiki/Write_amplification][][{[}Wikiless{]}]\from[url2138]
  \useURL[url2139][https://web.archive.org/web/https://en.wikipedia.org/wiki/Write_amplification][][{[}Archive.org{]}]\from[url2139]}
operation. When you delete data on your SSD, your OS should support what
is called a Trim operation command and {\bf could (should)} issue this
Trim command to the SSD drive periodically (daily, weekly,
monthly\ldots{}). This Trim command will then let know the SSD drive
controller that there are pages within blocks containing data that are
now free to be really deleted without deleting anything itself.

Trim should be enabled by default on all modern Operating Systems
detecting an SSD drive covered in this guide (macOS, Windows 10/11,
Ubuntu, Qubes OS 4.1.x \ldots{}).

If Trim operations are not done regularly (or at all), then the data is
never deleted pro-actively and at some point, all the blocks and pages
will be occupied by data. Your OS will not see this and will just see
free space as you delete files, but your SSD controller will not (this
is called Write Amplification\footnote{Wikipedia, Write Amplification
  \useURL[url2140][https://en.wikipedia.org/wiki/Write_amplification]\from[url2140]
  \useURL[url2141][https://wikiless.org/wiki/Write_amplification][][{[}Wikiless{]}]\from[url2141]
  \useURL[url2142][https://web.archive.org/web/https://en.wikipedia.org/wiki/Write_amplification][][{[}Archive.org{]}]\from[url2142]}).
This will then force the SSD controller to erase those pages and blocks
on the fly which will reduce the write performance. This is because
while your OS/SSD can write data to any free page in any bock, erasure
is only possible on entire blocks, therefore, forcing your SSD to
perform many operations to write new data. Overwriting is just not
possible. This will defeat the wear-leveling system and cause
performance degradation of your SSD over time. Every time you delete a
file on an SSD, your OS should issue a Trim command along with the
deletion to let the SSD controller know the pages containing the file
data are now free for deletion.

{\bf So, Trim itself does not delete any data but just marks it for
deletion.} Data deleted without using Trim (if Trim has been
disabled/blocked/delayed for instance) will still be deleted at some
point by the SSD garbage collection or if you want to overwrite what the
OS sees at free space. But it might stick around for a bit longer than
if you use Trim.

Here is an illustration from Wikipedia showing how it works on an SSD
drive:

\placefigure{image43}{\externalfigure[./tex2pdf.-1a34188c73046814/83059567ea6b8d9938d0c0df3a7cd07e84a78ba1.png]}

As you can see in the above illustration, data (from a file) will be
written to the four first pages of Block X. Later new data will be
written to the remaining pages and the data from the first files will be
marked as invalid (for instance by a Trim operation when deleting a
file). As explained on
\useURL[url2143][https://en.wikipedia.org/wiki/Trim_(computing)]\from[url2143]
\useURL[url2144][https://wikiless.org/wiki/Trim_(computing)][][{[}Wikiless{]}]\from[url2144]
\useURL[url2145][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trim_(computing)][][{[}Archive.org{]}]\from[url2145];
the erase operation can only be done on entire blocks (and not on single
pages).

In addition to marking files for deletion (on reputable SSD drives),
Trim usually makes those unreadable using a method called
\quotation{Deterministic Read After Trim} or \quotation{Deterministic
Zeroes After Trim}. This means that if an adversary tries to read data
from a trimmed page/block and somehow manages to disable garbage
collection, the controller will not return any meaningful data.

{\bf Trim is your ally and should always be enabled when using an SSD
drive and should offer sufficient reasonable protection}. And this is
also the reason you should not use Veracrypt Plausible deniability on a
Trim enabled SSD as this feature is incompatible with Trim\footnote{Wikipedia,
  Trim Disadvantages
  \useURL[url2146][https://en.wikipedia.org/wiki/Trim_(computing)\#Disadvantages]\from[url2146]
  \useURL[url2147][https://wikiless.org/wiki/Trim_(computing)][][{[}Wikiless{]}]\from[url2147]
  \useURL[url2148][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trim_(computing)][][{[}Archive.org{]}]\from[url2148]}.

\subsubsection[title={Garbage
Collection:},reference={garbage-collection}]

Garbage collection\footnote{Wikipedia, Garbage Collection
  \useURL[url2149][https://en.wikipedia.org/wiki/Write_amplification\#Garbage_collection]\from[url2149]
  \useURL[url2150][https://wikiless.org/wiki/Write_amplification][][{[}Wikiless{]}]\from[url2150]
  \useURL[url2151][https://web.archive.org/web/https://en.wikipedia.org/wiki/Write_amplification][][{[}Archive.org{]}]\from[url2151]}
is an internal process running within your SSD drive that looks for data
marked for erasure. This process is done by the SSD controller, and you
have no control over it. If you go back to the illustration above, you
will see that Garbage collection is the last step and will notice that
some pages are marked for deletion in a specific block, then copy the
valid pages (not marked for deletion) to a different free destination
block and then will be able to erase the source block entirely.

Garbage collection in itself does NOT require Trim to function, but it
will be much faster and more efficient if Trim is performed. Garbage
collection is one of the processes that will actually erase data from
your SSD drive permanently.

\subsubsection[title={Conclusion:},reference={conclusion-4}]

So, the fact is that it is very unlikely\footnote{Techgage, Too TRIM?
  When SSD Data Recovery is Impossible
  \useURL[url2152][https://techgage.com/article/too_trim_when_ssd_data_recovery_is_impossible/]\from[url2152]
  \useURL[url2153][https://web.archive.org/web/https://techgage.com/article/too_trim_when_ssd_data_recovery_is_impossible/][][{[}Archive.org{]}]\from[url2153]}\quote{\footnote{ResearchGate,
  Live forensics method for acquisition on the Solid-State Drive (SSD)
  NVMe TRIM function
  \useURL[url2154][https://www.researchgate.net/publication/341761017_Live_forensics_method_for_acquisition_on_the_Solid_State_Drive_SSD_NVMe_TRIM_function]\from[url2154]
  \useURL[url2155][https://web.archive.org/web/https://www.researchgate.net/publication/341761017_Live_forensics_method_for_acquisition_on_the_Solid_State_Drive_SSD_NVMe_TRIM_function][][{[}Archive.org{]}]\from[url2155]}
and difficult for a forensic examiner to be able to recover data from a
Trimmed SSD but it is not completely impossible either\footnote{ElcomSoft,
  Life after Trim: Using Factory Access Mode for Imaging SSD Drives
  \useURL[url2156][https://blog.elcomsoft.com/2019/01/life-after-trim-using-factory-access-mode-for-imaging-ssd-drives/]\from[url2156]
  \useURL[url2157][https://web.archive.org/web/https://blog.elcomsoft.com/2019/01/life-after-trim-using-factory-access-mode-for-imaging-ssd-drives/][][{[}Archive.org{]}]\from[url2157]}}\footnote{Forensic
  Focus, Forensic Acquisition Of Solid State Drives With Open Source
  Tools
  \useURL[url2158][https://www.forensicfocus.com/articles/forensic-acquisition-of-solid-state-drives-with-open-source-tools/]\from[url2158]
  \useURL[url2159][https://web.archive.org/web/https://www.forensicfocus.com/articles/forensic-acquisition-of-solid-state-drives-with-open-source-tools/][][{[}Archive.org{]}]\from[url2159]}'\footnote{ResearchGate,
  Solid State Drive Forensics: Where Do We Stand?
  \useURL[url2160][https://www.researchgate.net/publication/325976653_Solid_State_Drive_Forensics_Where_Do_We_Stand]\from[url2160]
  \useURL[url2161][https://web.archive.org/web/https://www.researchgate.net/publication/325976653_Solid_State_Drive_Forensics_Where_Do_We_Stand][][{[}Archive.org{]}]\from[url2161]}
if they are fast enough and have access to extensive equipment, skills,
and motivation\footnote{BleepingComputer, Firmware attack can drop
  persistent malware in hidden SSD area
  \useURL[url2162][https://www.bleepingcomputer.com/news/security/firmware-attack-can-drop-persistent-malware-in-hidden-ssd-area/]\from[url2162]
  \useURL[url2163][https://web.archive.org/web/https://www.bleepingcomputer.com/news/security/firmware-attack-can-drop-persistent-malware-in-hidden-ssd-area/][][{[}Archive.org{]}]\from[url2163]}.

Within the context of this guide which also uses full disk encryption.
Deletion and Trim should be reasonably secure enough on any SSD drive
and will be recommended as the standard method of deletion.

\subsection[title={How to securely wipe your whole Laptop/Drives if you
want to erase
everything:},reference={how-to-securely-wipe-your-whole-laptopdrives-if-you-want-to-erase-everything}]

\placefigure{image44}{\externalfigure[./tex2pdf.-1a34188c73046814/e527d2bd40752c865c72d972115864784dfee63f.png]}

So, you want to be sure. To achieve 100\letterpercent{} secure deletion
on an SSD drive, you will need to use specific SSD techniques (If you
are using an HDD drive, skip this part and go to your OS of choice):

\startitemize
\item
  Easy options for less experienced users:

  \startitemize
  \item
    If available, just use the Secure Erase option available from your
    BIOS/UEFI (ATA/NVME Secure Erase or Sanitize).
    \startitemize[packed]
    \item
      It's worth noting that this relies on your drive's firmware. Some
      drive manufacturers have messed up the implementation, causing
      data to still be recoverable.
    \stopitemize
  \item
    Just re-install a fresh operating system (delete/quick format the
    drive) and re-encrypt it. The full disk encryption process should
    erase all previous data from the disk.
  \item
    Buy PartedMagic\footnote{Wikipedia, Parted Magic
      \useURL[url2164][https://en.wikipedia.org/wiki/Parted_Magic]\from[url2164]
      \useURL[url2165][https://wikiless.org/wiki/Parted_Magic][][{[}Wikiless{]}]\from[url2165]
      \useURL[url2166][https://web.archive.org/web/https://en.wikipedia.org/wiki/Parted_Magic][][{[}Archive.org{]}]\from[url2166]}
    for 11\$ and use it to erase any disk.
  \stopitemize
\item
  Technical options for more advanced users:

  \startitemize
  \item
    Overwrite the entire drive's contents
    \startitemize[packed]
    \item
      HDDs:
      \startitemize[packed]
      \item
        Overwrite the drive's contents using a tool like
        \useURL[url2167][https://www.howtogeek.com/425232/how-to-securely-delete-files-on-linux/][][srm]\from[url2167],
        \useURL[url2168][https://linux.die.net/man/1/wipe][][wipe]\from[url2168],
        \useURL[url2169][https://recoverit.wondershare.com/harddrive-tips/format-and-wipe-linux-disk.html][][shred,
        etc.]\from[url2169]. Ideally you want to use the Gutmann method,
        which was created for most effective data erasure on all drives.
        This method also works on SSDs, although it is overkill.
      \item
        Simply overwriting the drive's contents is not always enough.
        Dedicated secure deletion tools are designed to perform multiple
        passes to more effectively wipe data. This is expecially
        important on older drives. we recommend using either \type{wipe}
        or \type{srm}.
        \startitemize[packed]
        \item
          If using \type{wipe}, just use its default options
          (\type{wipe /dev/sdX}), as the defaults are tuned to most
          effectively wipe data on HDDs.
        \item
          If using \type{srm}, make sure to manually specify that it
          should perform a Gutmann wipe (\type{srm -G /dev/sdX}).
        \stopitemize
      \stopitemize
    \item
      SSDs:
      \startitemize[packed]
      \item
        Overwrite the drive's contents. Tools like wipe or shred are
        often overkill, as they perform up to 35 passes. While they
        work, most SSDs require no more than a couple passes.
      \item
        Use \type{wipe} with only a couple passes:
        \type{wipe -qQ2 /dev/sdX}.
        \startitemize[packed]
        \item
          \type{-qQ2} means 2 passes. Replace \type{2} with the desired
          number of passes.
        \stopitemize
      \item
        Use \type{srm} with a 3-pass overwrite: \type{srm -P /dev/sdX}.
      \item
        Use \type{dd}:
        \type{dd if=/dev/urandom of=/dev/sdX bs=8M status=progress conv=fsync}.
        This command will overwrite the drive with random data. To
        perform multiple passes (I recommend at least 2), simply run the
        command again until you're satisfied.
        \startitemize[packed]
        \item
          The reason you run it twice is because SSDs have hidden
          (\quotation{overprovisioned}) storage which can contain
          remnants of deleted data. Wiping twice forces the drive to
          wipe its overprovisioned storage. This is only guaranteed to
          work if each pass writes different data (which is why we wipe
          with random data on each pass).
        \item
          \type{bs=8M} writes 8MiB blocks at a time. This doesn't affect
          the quality of the data deletion, but adjusting it could
          affect how long it takes to wipe the drive.
        \stopitemize
      \stopitemize
    \stopitemize
  \item
    ATA/NVMe Secure Erase: This method will remove the mapping table
    that keeps track of allocated data on the storage Blocks but does
    not destroy the actual data.
  \item
    ATA/NVMe Sanitize Crypto Scramble (aka Instant Secure Erase, Crypto
    Erase), which applies to self-encrypting SSD drives: This method
    will change the encryption key of the self-encrypting SSD drive and
    render all the data stored in it unreadable.
  \item
    ATA/NVMe Sanitize Block Erase: This method performs an actual block
    erase on every storage block and will destroy the data and change
    the encryption key if present.
  \item
    ATA/NVMe Sanitize Overwrite {\bf (terribly slow, could be dangerous
    and not recommended)}: This method performs a block erase and then
    overwrite every storage block (it is the same as Block Erase but
    will overwrite data in addition). This method is overkill and not
    necessary.
  \stopitemize
\item
  Physical Destruction:
  \startitemize
  \item
    HDDs:

    \startitemize[n][stopper=.]
    \item
      Open the drive (with a screwdriver, usually Torx T8)
    \item
      Remove platters (with a screwdriver, usually Torx T6)
    \item
      Rub the platters with a rare earth magnet
    \item
      Break/Deform/Crush the platters
    \item
      Burn the platters or cook them in an oven ({\bf do not} skip this
      step)
    \item
      Separate the debris
    \item
      Throw away in separate places
    \stopitemize
  \item
    SSDs:
    \startitemize[packed]
    \item
      Ideally you should wipe the drive through other means first, as
      this method alone is not known to be secure against all attackers
    \stopitemize

    \startitemize[n][stopper=.]
    \item
      Open the drive
    \item
      Break/Crush the board and memory cells
    \item
      Burn them
    \item
      Separate the debris
    \item
      Throw away in separate places
    \stopitemize
  \item
    Bonus: See
    \useURL[url2170][https://www.youtube.com/watch?v=-bpX8YvNg6Y]\from[url2170]
    \useURL[url2171][https://yewtu.be/watch?v=-bpX8YvNg6Y][][{[}Invidious{]}]\from[url2171]
  \stopitemize
\stopitemize

For maximum overkill paranoia security, Sanitize Block Erase option
should be preferred but Secure Erase is probably more than enough when
considering your drive is already encrypted. Unfortunately, are no
{\bf free} easy (bootable with a graphical menu) all-in-one tools
available and you will be left with either going with drive
manufacturers provided tools, the free manual hdparm\footnote{Wikipedia,
  hdparm
  \useURL[url2172][https://en.wikipedia.org/wiki/Hdparm]\from[url2172]
  \useURL[url2173][https://wikiless.org/wiki/Hdparm][][{[}Wikiless{]}]\from[url2173]
  \useURL[url2174][https://web.archive.org/web/https://en.wikipedia.org/wiki/Hdparm][][{[}Archive.org{]}]\from[url2174]}
, and nvme-cli\footnote{GitHub, nvme-cli
  \useURL[url2175][https://github.com/linux-nvme/nvme-cli]\from[url2175]
  \useURL[url2176][https://web.archive.org/web/https://github.com/linux-nvme/nvme-cli][][{[}Archive.org{]}]\from[url2176]}
utilities or going with a commercial tool such as PartedMagic.

This guide will therefore recommend the use of the free utilities hdparm
and nvme-cli using a Live System Rescue system.

If you can afford it, just buy Parted Magic for 11\$ which provides an
easy-to-use graphical tool for wiping SSD drives using the option of
your choice\footnote{PartedMagic Secure Erase
  \useURL[url2177][https://partedmagic.com/secure-erase/]\from[url2177]
  \useURL[url2178][https://web.archive.org/web/https://partedmagic.com/secure-erase/][][{[}Archive.org{]}]\from[url2178]}'\footnote{Partedmagic
  NVMe Secure Erase
  \useURL[url2179][https://partedmagic.com/nvme-secure-erase/]\from[url2179]
  \useURL[url2180][https://web.archive.org/web/https://partedmagic.com/nvme-secure-erase/][][{[}Archive.org{]}]\from[url2180]}.

{\bf Note:} {\bf Again, before proceeding, you should check your BIOS as
some will offer a built-in tool to securely erase your drive (ATA/NVMe
Secure Erase or ATA/NVMe Sanitize). If this is available, you should use
that, and the following steps will not be necessary. Check this before
going ahead to avoid the hassle, see \goto{Appendix M: BIOS/UEFI options
to wipe disks in various
Brands}[appendix-m-biosuefi-options-to-wipe-disks-in-various-brands]).}

\subsubsection[title={Linux (all versions including Qubes
OS):},reference={linux-all-versions-including-qubes-os}]

\subsubsubsection[title={System/Internal
SSD:},reference={systeminternal-ssd}]

\startitemize
\item
  Option A: Check if your BIOS/UEFI has a built-in option to do so and
  if it does, use the correct option (\quotation{ATA/NVMe Secure Erase}
  or \quotation{ATA/NVMe Sanitize}). Do not use wipe with passes on an
  SSD drive.
\item
  Option B: See \goto{Appendix D: Using System Rescue to securely wipe
  an SSD
  drive.}[appendix-d-using-system-rescue-to-securely-wipe-an-ssd-drive.]
\item
  Option C: Wipe your disk and re-install Linux with new full disk
  encryption to overwrite all sectors with new encrypted data. {\bf This
  method will be terribly slow compared to Option A and B as it will
  slowly overwrite your whole SSD. Also, note that this might not be the
  default behavior when using LUKS. You might have to check the option
  to also encrypt the empty space for this effectively wipe the drive.}
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={External SSD:},reference={external-ssd}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

Trim should be sufficient in most cases and you could just use the
blkdiscard command to force an entire device trim as explained here:
\useURL[url2181][https://wiki.archlinux.org/index.php/Solid_state_drive\#Trim_an_entire_device]\from[url2181]
\useURL[url2182][https://web.archive.org/web/https://wiki.archlinux.org/index.php/Solid_state_drive][][{[}Archive.org{]}]\from[url2182]

If your USB controller and USB SSD disk support Trim and ATA/NVMe secure
erase, you could wipe them cautiously using hdparm using the same method
as the System Disk above except you will not install Linux on it
obviously. Keep in mind tho that this is not recommended (see
Considerations above).

If it does not support Trim and/or ATA secure erase, you could (not
securely) wipe the drive normally (without passes like an HDD) and
re-encrypt it completely using your utility of choice (LUKS or Veracrypt
for instance). The full disk decryption and re-encryption process will
overwrite the entirety of the SSD disk and should ensure a secure wipe.

Alternatively, you could also (not securely) wipe the disk normally and
then fill it completely with pseudorandom data which should also ensure
secure deletion (this can be done with BleachBit
\useURL[url2183][https://www.bleachbit.org/download/linux]\from[url2183]
\useURL[url2184][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2184]
or from the command line using secure-delete using this tutorial
\useURL[url2185][https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux]\from[url2185]
\useURL[url2186][https://web.archive.org/web/https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux][][{[}Archive.org{]}]\from[url2186]).

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={Internal/System
HDD:},reference={internalsystem-hdd}]

\startitemize
\item
  Option A: Check if your BIOS/UEFI has a built-in option and use them
  and if it does, use the correct option (Wipe + Passes in the case of
  an HDD).
\item
  Option B: See \goto{Appendix I: Using ShredOS to securely wipe an HDD
  drive}[appendix-i-using-shredos-to-securely-wipe-an-hdd-drive]
\item
  Option C: Wipe your disk and re-install Linux with new full disk
  encryption to overwrite all sectors with new encrypted data. {\bf This
  method will be terribly slow compared to Option A and B as it will
  slowly overwrite your whole HDD.}
\stopitemize

\subsubsubsection[title={External/Secondary HDD and Thumb
Drives:},reference={externalsecondary-hdd-and-thumb-drives}]

\startitemize
\item
  Option A: Follow one of these tutorials:

  \startitemize
  \item
    \useURL[url2187][https://linuxhint.com/completely_wipe_hard_drive_ubuntu/]\from[url2187]
    \useURL[url2188][https://web.archive.org/web/https://linuxhint.com/completely_wipe_hard_drive_ubuntu/][][{[}Archive.org{]}]\from[url2188]
  \item
    \useURL[url2189][https://linoxide.com/linux-command/commands-wipe-disk-linux/]\from[url2189]
    \useURL[url2190][https://web.archive.org/web/https://linoxide.com/linux-command/commands-wipe-disk-linux/][][{[}Archive.org{]}]\from[url2190]
  \item
    \useURL[url2191][https://wiki.archlinux.org/index.php/Securely_wipe_disk]\from[url2191]
    \useURL[url2192][https://web.archive.org/web/https://wiki.archlinux.org/index.php/Securely_wipe_disk][][{[}Archive.org{]}]\from[url2192]
  \stopitemize
\stopitemize

I recommend using dd or shred for this purpose.

\startitemize
\item
  Option B: Install and use BleachBit
  \useURL[url2193][https://www.bleachbit.org/download/linux]\from[url2193]
  \useURL[url2194][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2194]
  or follow this EFF tutorial
  \useURL[url2195][https://ssd.eff.org/en/module/how-delete-your-data-securely-linux]\from[url2195]
  \useURL[url2196][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-linux][][{[}Archive.org{]}]\from[url2196]
\item
  Option C: See \goto{Appendix I: Using ShredOS to securely wipe an HDD
  drive}[appendix-i-using-shredos-to-securely-wipe-an-hdd-drive]
\stopitemize

\subsubsection[title={Windows:},reference={windows-2}]

Unfortunately, you will not be able to wipe your Host OS using the
Microsoft built-in tools within the settings. This is because your
bootloader was modified with Veracrypt and will make the operation fail.
In addition, this method would not be effective with an SSD drive.

\subsubsubsection[title={System/Internal
SSD:},reference={systeminternal-ssd-1}]

\startitemize
\item
  Option A: Check if your BIOS/UEFI has a built-in option to do so and
  if it does, use the correct option (\quotation{ATA/NVMe Secure Erase}
  or \quotation{ATA/NVMe Sanitize}). Do not use wipe with passes on an
  SSD drive.
\item
  Option B: Check \goto{Appendix J: Manufacturer tools for Wiping HDD
  and SSD
  drives.}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives]
\item
  Option C: See \goto{Appendix D: Using System Rescue to securely wipe
  an SSD
  drive.}[appendix-d-using-system-rescue-to-securely-wipe-an-ssd-drive.]
\item
  Option D: Wipe your disk and re-install Windows before performing new
  full disk encryption (using Veracrypt or Bitlocker) to overwrite all
  sectors with new encrypted data. {\bf This method will be slower
  compared to Option A and B as it will overwrite your whole SSD.}
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={External SSD:},reference={external-ssd-1}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

Use the manufacturer-provided tools if possible. Those tools should
provide support for safe secure erase or sanitize over USB and are
available for most brands: See \goto{Appendix J: Manufacturer tools for
Wiping HDD and SSD
drives.}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives]

If you are not sure about the Trim support on your USB disk, (not
securely) wipe it normally (simple quick format will do) and then
encrypt the disk again using Veracrypt or Bitlocker. The full disk
decryption and re-encryption process will overwrite the entirety of the
SSD disk and should ensure a secure wipe.

Alternatively, you could also (not securely) wipe the disk normally and
then fill it completely with pseudorandom data which should also ensure
secure deletion (this can be done with BleachBit or PrivaZer free space
erase options). See \goto{Extra Tools Cleaning}[extra-tools-cleaning].

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={Internal/System
HDD:},reference={internalsystem-hdd-1}]

\startitemize
\item
  Option A: Check if your BIOS/UEFI has a built-in option to do so and
  if it does, use the correct option (Wipe + Passes).
\item
  Option B: Check \goto{Appendix J: Manufacturer tools for Wiping HDD
  and SSD
  drives}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives]
\item
  Option C: See \goto{Appendix I: Using ShredOS to securely wipe an HDD
  drive}[appendix-i-using-shredos-to-securely-wipe-an-hdd-drive]
\stopitemize

\subsubsubsection[title={External/Secondary HDD and Thumb
Drives:},reference={externalsecondary-hdd-and-thumb-drives-1}]

\startitemize
\item
  Option A: Check \goto{Appendix J: Manufacturer tools for Wiping HDD
  and SSD
  drives}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives]
\item
  Option B: Use external tools such as:

  \startitemize
  \item
    Eraser (open-source):
    \useURL[url2197][https://eraser.heidi.ie/download/]\from[url2197]
    \useURL[url2198][https://web.archive.org/web/https://eraser.heidi.ie/download/][][{[}Archive.org{]}]\from[url2198]
  \item
    KillDisk Free:
    \useURL[url2199][http://killdisk.com/killdisk-freeware.htm]\from[url2199]
    \useURL[url2200][https://web.archive.org/web/http://killdisk.com/killdisk-freeware.htm][][{[}Archive.org{]}]\from[url2200]
  \stopitemize
\item
  Option C: See \goto{Appendix I: Using ShredOS to securely wipe an HDD
  drive}[appendix-i-using-shredos-to-securely-wipe-an-hdd-drive]
\stopitemize

\subsubsection[title={macOS:},reference={macos-2}]

\subsubsubsection[title={System/Internal
SSD:},reference={systeminternal-ssd-2}]

Unfortunately, the macOS Recovery disk utility will not be able to
perform a secure erase of your SSD drive as stated in Apple
documentation
\useURL[url2201][https://support.apple.com/en-gb/guide/disk-utility/dskutl14079/mac]\from[url2201]
\useURL[url2202][https://web.archive.org/web/https://support.apple.com/en-gb/guide/disk-utility/dskutl14079/mac][][{[}Archive.org{]}]\from[url2202].

In most cases, if your disk was encrypted with Filevault and you just
perform a normal erase, it should be \quotation{enough} according to
them. It is not according to me, so you have no option besides
re-installing macOS again and re-encrypt it with Filevault again after
re-installing. This should perform a \quotation{crypto erase} by
overwriting your earlier install and encryption. This method will be
quite slow, unfortunately.

If you want to do a faster secure erase (or have no time to perform a
re-install and re-encryption), you can try using the method described in
\goto{Appendix D: Using System Rescue to securely wipe an SSD
drive}[appendix-d-using-system-rescue-to-securely-wipe-an-ssd-drive.]
{\bf (This will not work on M1 Macs)}. {\bf Be careful tho as this will
also erase your recovery partition which is needed to reinstall macOS.}

\subsubsubsection[title={External SSD:},reference={external-ssd-2}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

If your USB controller and USB SSD disk support Trim and ATA secure
erase, and if Trim is enabled on the disk by macOS, you can just wipe
the whole disk normally and data should not be recoverable on recent
disks.

If you are not sure about Trim support or want more certainty, you can
(not securely) wipe it using macOS disk utility before fully
re-encrypting them again using these two tutorials from Apple:

\startitemize
\item
  \useURL[url2203][https://support.apple.com/guide/disk-utility/erase-and-reformat-a-storage-device-dskutl14079/mac]\from[url2203]
  \useURL[url2204][https://web.archive.org/web/https://support.apple.com/guide/disk-utility/erase-and-reformat-a-storage-device-dskutl14079/mac][][{[}Archive.org{]}]\from[url2204]
\item
  \useURL[url2205][https://support.apple.com/guide/disk-utility/encrypt-protect-a-storage-device-password-dskutl35612/mac]\from[url2205]
  \useURL[url2206][https://web.archive.org/web/https://support.apple.com/guide/disk-utility/encrypt-protect-a-storage-device-password-dskutl35612/mac][][{[}Archive.org{]}]\from[url2206]
  or using Veracrypt full disk encryption.
\stopitemize

The full disk re-encryption process will overwrite the entirety of the
SSD disk and should ensure a secure wipe.

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={External HDD and Thumb
Drives:},reference={external-hdd-and-thumb-drives}]

Follow this tutorial:
\useURL[url2207][https://support.apple.com/guide/disk-utility/erase-and-reformat-a-storage-device-dskutl14079/mac]\from[url2207]
\useURL[url2208][https://web.archive.org/web/https://support.apple.com/guide/disk-utility/erase-and-reformat-a-storage-device-dskutl14079/mac][][{[}Archive.org{]}]\from[url2208]
and use the secure erase option from Disk Utility which should work fine
on HDD and Thumb drives.

\subsection[title={How to securely delete specific files/folders/data on
your HDD/SSD and Thumb
drives:},reference={how-to-securely-delete-specific-filesfoldersdata-on-your-hddssd-and-thumb-drives}]

The same principles from the earlier chapters apply to this one. The
same issues arise too.

With an HDD drive, you can securely delete files by just deleting them
and then apply one or more \quotation{passes} to overwrite the data in
question. This can be done with many utilities on all OSes.

With an SSD drive, however, again everything becomes a bit complicated
because you are never sure anything is really deleted due to wear
leveling, reliance on the Trim operation, and garbage collection of the
drive. An adversary that has the decryption key of your SSD (whether it
is LUKS, Filevault 2, Veracrypt, or Bitlocker) could unlock your drive
and then attempt a recovery using classic recovery utilities\footnote{UFSExplorer,
  Can I recover data from an encrypted storage?
  \useURL[url2209][https://www.ufsexplorer.com/solutions/data-recovery-on-encrypted-storage.php]\from[url2209]
  \useURL[url2210][https://web.archive.org/web/https://www.ufsexplorer.com/solutions/data-recovery-on-encrypted-storage.php][][{[}Archive.org{]}]\from[url2210]}
and could succeed if the data were not trimmed properly. But this is
again highly unlikely.

Since the Trim operation is not continuous on most recent hard drives
but scheduled, simply forcing a Trim operation should be enough. But
again, the only way to be 100\letterpercent{} sure a file is securely
deleted from your unlocked encrypted SSD is to again overwrite all the
free space after deletion of the files in question or to
decrypt/re-encrypt the drive. But this is overkill and not necessary. A
simple disk-wide Trim should be sufficient.

{\bf Remember tho that no matter the deletion method you use for any
file on any medium (HDD drive, SSD, USB Thumb drive). It will probably
leave other traces (logs, indexing, shellbags \ldots{}) within your
system and those traces will also need to be cleaned. Also, remember
that your drives should be fully encrypted and so this is most likely an
extra measure. More on that later in the \goto{Some additional measures
against forensics}[some-additional-measures-against-forensics] section.}

\subsubsection[title={Windows:},reference={windows-3}]

{\bf Remember you cannot use Trim at all if you are using Plausible
Deniability on an SSD drive against all recommendations.}

\subsubsubsection[title={System/Internal SSD
drive:},reference={systeminternal-ssd-drive}]

At this stage, and just delete the file permanently (empty the recycle
bin) and trim/garbage collection will do the rest. This should be
sufficient.

If you do not want to wait for the periodic Trim (set to Weekly by
default in Windows 10/11), you could also force a disk-wide Trim using
the Windows native Optimize tool (see \goto{Appendix H: Windows Cleaning
Tools}[appendix-h-windows-cleaning-tools]).

If data were deleted by some utility (for instance by Virtualbox when
reverting a snapshot), you could also issue a disk-wide Trim to clean
anything remaining using the same Optimize tool.

Just open Windows Explorer, Right Click on your System Drive and click
Properties. Select Tools. Click Optimize and then Optimize again to
force a Trim. You are done. That is probably enough in my opinion.

\placefigure{image45}{\externalfigure[./tex2pdf.-1a34188c73046814/f7d944af668902072796d24866daeb5ea33ef361.png]}

If you want more security and do not trust the Trim operation, then you
will have no option but to either:

\startitemize
\item
  Decrypt and re-encrypt (using Veracrypt or Bitlocker) the whole drive
  to overwrite all free space after data deletion. This will ensure
  overwriting of all the free space.
\item
  Trim and then fill up the entire free space of the disk using a
  utility such as BleachBit or PrivaZer.
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={Internal/External HDD or a USB Thumb
Drive:},reference={internalexternal-hdd-or-a-usb-thumb-drive}]

Please refer to \goto{Appendix H: Windows Cleaning
Tools}[appendix-h-windows-cleaning-tools] and pick a utility before
going ahead.

The process is quite simple depending on the tool you picked from the
Appendix:

\startitemize
\item
  Right-click a file/folder:

  \startitemize
  \item
    PrivaZer: Delete without a trace
  \item
    BleachBit: Shred with BleachBit (or see this tutorial from the EFF
    \useURL[url2211][https://ssd.eff.org/en/module/how-delete-your-data-securely-windows]\from[url2211]
    \useURL[url2212][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-windows][][{[}Archive.org{]}]\from[url2212])
  \stopitemize
\stopitemize

In the case of USB thumb drives, consider wiping free space using one of
the above utilities after file deletion or wiping them completely using
Eraser / KillDisk as instructed previously.

\subsubsubsection[title={External SSD
drive:},reference={external-ssd-drive}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

If Trim is supported and enabled by Windows for your external SSD drive.
There should be no issue in securely deleting data normally just with
normal delete commands. Additionally, you could also force a Trim using
the Windows native Optimize tool (see \goto{Appendix H: Windows Cleaning
Tools}[appendix-h-windows-cleaning-tools]):

Just open Windows Explorer, Right Click on your System Drive and click
Properties. Select Tools. Click Optimize and then Optimize again to
force a Trim. You are done. That is probably enough in my opinion.

If Trim is not supported or you are not sure, you might have to ensure
secure data deletion by:

\startitemize
\item
  Filling up all the free space after any deletion (using BleachBit or
  PrivaZer for instance).
\item
  Decrypt and Re-encrypt the disk with a different key after each
  deletion (using Veracrypt or Bitlocker).
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsection[title={Linux (non-Qubes
OS):},reference={linux-non-qubes-os}]

\subsubsubsection[title={System/Internal SSD
drive:},reference={systeminternal-ssd-drive-1}]

Just permanently delete the file (and empty recycle bin) and it should
be unrecoverable due to Trim operations and garbage collection.

If you do not want to wait for the periodic Trim (set to Weekly by
default in Ubuntu), you could also force a disk-wide Trim by running
\type{fstrim --all} from a terminal. This will issue an immediate trim
and should ensure sufficient security. This utility is part of the
\type{util-linux} package on Debian/Ubuntu and should be installed by
default on Fedora.

If you want more security and do not trust the Trim operation, then you
will have no option but to either:

\startitemize
\item
  Decrypt and re-encrypt (using LUKS for instance following this
  tutorial
  \useURL[url2213][https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption\#Re-encrypting_devices]\from[url2213]
  \useURL[url2214][https://web.archive.org/web/https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption][][{[}Archive.org{]}]\from[url2214])
  the whole drive to overwrite all free space after data deletion. This
  will ensure overwriting of all the free space.
\item
  Trim using \type{fstrim --all} and then fill up the entire free space
  of the disk using a utility such as:

  \startitemize
  \item
    BleachBit
    \useURL[url2215][https://www.bleachbit.org/download/linux]\from[url2215]
    \useURL[url2216][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2216]
  \item
    Install secure-delete package and use sfill on the root of the
    drive:

    \startitemize[packed]
    \item
      \type{sudo sfill -l -l /} for instance should do the trick (this
      will take a substantial amount of time)
    \stopitemize
  \item
    Use the old school dd method (taken from this answer
    \useURL[url2217][https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux]\from[url2217]
    \useURL[url2218][https://web.archive.org/web/https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux][][{[}Archive.org{]}]\from[url2218])
    run these commands on the drive you want to fill:

    \startitemize
    \item
      \type{dd if=/dev/zero of=zero.small.file bs=1024 count=102400}
    \item
      \type{dd if=/dev/zero of=zero.file bs=1024}
    \item
      \type{sync ; sleep 60 ; sync}
    \item
      \type{rm zero.small.file}
    \item
      \type{rm zero.file}
    \stopitemize
  \stopitemize
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={Internal/External HDD drive or a Thumb
Drive:},reference={internalexternal-hdd-drive-or-a-thumb-drive}]

\startitemize
\item
  You can do this the graphical way with BleachBit following this
  tutorial from the EFF:
  \useURL[url2219][https://ssd.eff.org/en/module/how-delete-your-data-securely-linux]\from[url2219]
  \useURL[url2220][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-linux][][{[}Archive.org{]}]\from[url2220]
\item
  Or you can do this from the command line following this tutorial:
  \useURL[url2221][https://linuxhint.com/completely_wipe_hard_drive_ubuntu/]\from[url2221]
  \useURL[url2222][https://web.archive.org/web/https://linuxhint.com/completely_wipe_hard_drive_ubuntu/][][{[}Archive.org{]}]\from[url2222]
  (For this purpose we recommend wipe and shred).
\stopitemize

\subsubsubsection[title={External SSD
drive:},reference={external-ssd-drive-1}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

If Trim is supported and enabled by your Linux Distribution for your
external SSD drive. There should be no issue in securely deleting data
normally and just issue an \type{fstrim --all} from the terminal to trim
the drive. This utility is part of the \quotation{util-linux} package on
Debian/Ubuntu and should be installed by default on Fedora.

If Trim is not supported or you want to be sure, you might have to
ensure secure data deletion by filling up the entire free space of the
disk using a utility such as:

\startitemize
\item
  Decrypt and re-encrypt (using LUKS using this tutorial
  \useURL[url2223][https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption\#Re-encrypting_devices]\from[url2223]
  \useURL[url2224][https://web.archive.org/web/https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption][][{[}Archive.org{]}]\from[url2224]
  or Veracrypt from the graphical interface for instance) the whole
  drive to overwrite all free space after data deletion. This will
  ensure overwriting of all the free space.
\item
  Fill the free space using one of those methods:

  \startitemize
  \item
    BleachBit
    \useURL[url2225][https://www.bleachbit.org/download/linux]\from[url2225]
    \useURL[url2226][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2226]
  \item
    Install secure-delete package and use sfill on the root of the
    drive:

    \startitemize[packed]
    \item
      \type{sudo sfill -l -l /} for instance should do the trick (this
      will take a substantial amount of time)
    \stopitemize
  \item
    Use the old school dd method (taken from this answer
    \useURL[url2227][https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux]\from[url2227]
    \useURL[url2228][https://web.archive.org/web/https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux][][{[}Archive.org{]}]\from[url2228])
    run these commands:

    \startitemize
    \item
      \type{dd if=/dev/zero of=zero.small.file bs=1024 count=102400}
    \item
      \type{dd if=/dev/zero of=zero.file bs=1024}
    \item
      \type{sync ; sleep 60 ; sync}
    \item
      \type{rm zero.small.file}
    \item
      \type{rm zero.file}
    \stopitemize
  \stopitemize
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsection[title={Linux (Qubes OS):},reference={linux-qubes-os}]

\subsubsubsection[title={System/Internal SSD
drive:},reference={systeminternal-ssd-drive-2}]

As with other Linux distros, normal deletion and trim should be
sufficient on most SSD drives. So just permanently delete the file (and
empty any recycle bin) and it should be unrecoverable due to periodic
Trim operations and garbage collection.

Please follow this documentation to Trim within Qubes OS:
\useURL[url2229][https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md]\from[url2229]
\useURL[url2230][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md][][{[}Archive.org{]}]\from[url2230]

As with other Linux Systems, if you want more security and do not trust
the Trim operation then you will have no option but to either:

\startitemize
\item
  Decrypt and re-encrypt the whole drive to overwrite all free space
  after data deletion. This will ensure overwriting of all the free
  space. We didn't find a reliable tutorial on how to do this safely on
  Qubes OS but it is possible this tutorial could work:
  \useURL[url2231][https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption\#Re-encrypting_devices]\from[url2231]
  \useURL[url2232][https://web.archive.org/web/https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption][][{[}Archive.org{]}]\from[url2232]
  (at your own risk, this has not been tested yet).
\item
  Refer to this Documentation
  (\useURL[url2233][https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md]\from[url2233]
  \useURL[url2234][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md][][{[}Archive.org{]}]\from[url2234])
  and then trim using \quotation{fstrim --all} and then fill up the
  entire free space of the disk using a utility such as:

  \startitemize
  \item
    BleachBit
    \useURL[url2235][https://www.bleachbit.org/download/linux]\from[url2235]
    \useURL[url2236][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2236]
  \item
    Install secure-delete package and use sfill on the root of the
    drive:

    \startitemize[packed]
    \item
      \type{sudo sfill -l -l /} for instance should do the trick (this
      will take a substantial amount of time)
    \stopitemize
  \item
    Use the old school dd method (taken from this answer
    \useURL[url2237][https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux]\from[url2237]
    \useURL[url2238][https://web.archive.org/web/https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux][][{[}Archive.org{]}]\from[url2238])
    run these commands on the drive you want to fill:

    \startitemize
    \item
      \type{dd if=/dev/zero of=zero.small.file bs=1024 count=102400}
    \item
      \type{dd if=/dev/zero of=zero.file bs=1024}
    \item
      \type{sync ; sleep 60 ; sync}
    \item
      \type{rm zero.small.file}
    \item
      \type{rm zero.file}
    \stopitemize
  \stopitemize
\stopitemize

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsubsection[title={Internal/External HDD drive or a Thumb
Drive:},reference={internalexternal-hdd-drive-or-a-thumb-drive-1}]

Use the same method as Linux from a Qube connected to that specific USB
device

\startitemize
\item
  You can do this the graphical way with BleachBit following this
  tutorial from the EFF:
  \useURL[url2239][https://ssd.eff.org/en/module/how-delete-your-data-securely-linux]\from[url2239]
  \useURL[url2240][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-linux][][{[}Archive.org{]}]\from[url2240]
\item
  Or you can do this from the command line following this tutorial:
  \useURL[url2241][https://linuxhint.com/completely_wipe_hard_drive_ubuntu/]\from[url2241]
  \useURL[url2242][https://web.archive.org/web/https://linuxhint.com/completely_wipe_hard_drive_ubuntu/][][{[}Archive.org{]}]\from[url2242]
  (For this purpose we recommend wipe and shred).
\stopitemize

\subsubsubsection[title={External SSD
drive:},reference={external-ssd-drive-2}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

If Trim is supported and enabled by your Linux Distribution for your
external SSD drive. There should be no issue in securely deleting data
normally and just issue a \quotation{fstrim --all} from the terminal to
trim the drive. Refer to this Documentation
(\useURL[url2243][https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md]\from[url2243]
\useURL[url2244][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/configuration/disk-trim.md][][{[}Archive.org{]}]\from[url2244])
to enable trim on a drive.

If Trim is not supported or you want to be sure, you might have to
ensure secure data deletion by filling up the entire free space of the
disk using a utility from a Qube connected to the USB device in
question:

\startitemize
\item
  Decrypt and re-encrypt (using LUKS using this tutorial
  \useURL[url2245][https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption\#Re-encrypting_devices]\from[url2245]
  \useURL[url2246][https://web.archive.org/web/https://wiki.archlinux.org/index.php/dm-crypt/Device_encryption][][{[}Archive.org{]}]\from[url2246]
  or Veracrypt from the graphical interface for instance) the whole
  drive to overwrite all free space after data deletion. This will
  ensure overwriting of all the free space.
\item
  Fill the free space using one of those methods:

  \startitemize
  \item
    BleachBit
    \useURL[url2247][https://www.bleachbit.org/download/linux]\from[url2247]
    \useURL[url2248][https://web.archive.org/web/https://www.bleachbit.org/download/linux][][{[}Archive.org{]}]\from[url2248]
  \item
    Install secure-delete package and use sfill on the root of the
    drive:

    \startitemize[packed]
    \item
      \type{sudo sfill -l -l /} for instance should do the trick (this
      will take a substantial amount of time)
    \stopitemize
  \item
    Use the old school dd method (taken from this answer
    \useURL[url2249][https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux]\from[url2249]
    \useURL[url2250][https://web.archive.org/web/https://superuser.com/questions/19326/how-to-wipe-free-disk-space-in-linux][][{[}Archive.org{]}]\from[url2250])
    run these commands:

    \startitemize
    \item
      \type{dd if=/dev/zero of=zero.small.file bs=1024 count=102400}
    \item
      \type{dd if=/dev/zero of=zero.file bs=1024}
    \stopitemize
  \stopitemize
\stopitemize

Repeat these steps on any other partition if there are separate
partitions on the same SSD drive before deleting the files.

\startitemize
\item
  \type{sync ; sleep 60 ; sync}
\item
  \type{rm zero.small.file}
\item
  \type{rm zero.file}
\stopitemize

Repeat these steps on any other partition if there are separate
partitions on the same SSD drive.

{\bf Keep in mind all these options need to be applied on the entire
physical drive and not on a specific partition/volume. If you do not,
wear-leveling mechanisms might prevent this from working properly.}

\subsubsection[title={macOS:},reference={macos-3}]

\subsubsubsection[title={System/Internal SSD
drive:},reference={systeminternal-ssd-drive-3}]

Just permanently delete the file (and empty recycle bin) and it should
be unrecoverable due to trim operations and garbage collection.

\startitemize[packed]
\item
  If your file system is APFS, you do not need to worry about Trim, it
  happens asynchronously as the OS writes data\footnote{Apple Developer
    Documentation
    \useURL[url2251][https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/FAQ/FAQ.html]\from[url2251]
    \useURL[url2252][https://web.archive.org/web/https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/APFS_Guide/FAQ/FAQ.html][][{[}Archive.org{]}]\from[url2252]}
  according to their documentation.
\stopitemize

"Does Apple File System support TRIM operations?

Yes. TRIM operations are issued asynchronously from when files are
deleted or free space is reclaimed, which ensures that these operations
are performed only after metadata changes are persisted to stable
storage".

\startitemize[packed]
\item
  If your file system is HFS+, you could run First Aid on your System
  Drive from the Disk Utility which should perform a Trim operation in
  the details
  (\useURL[url2253][https://support.apple.com/en-us/HT210898]\from[url2253]
  \useURL[url2254][https://web.archive.org/web/https://support.apple.com/en-us/HT210898][][{[}Archive.org{]}]\from[url2254])
\stopitemize

\placefigure{image46}{\externalfigure[./tex2pdf.-1a34188c73046814/f9e0d691359d2b48fa315e60f32965192acbe83f.png]}

\subsubsubsection[title={System/Internal, External HDD drive or a Thumb
Drive:},reference={systeminternal-external-hdd-drive-or-a-thumb-drive}]

Unfortunately, Apple has removed the secure erase options from the trash
bin even for HDD drives\footnote{EFF, How to: Delete Your Data Securely
  on macOS
  \useURL[url2255][https://ssd.eff.org/en/module/how-delete-your-data-securely-macos]\from[url2255]
  \useURL[url2256][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-macos][][{[}Archive.org{]}]\from[url2256]}.
So, you are left with using other tools:

\startitemize
\item
  Permanent Eraser
  \useURL[url2257][http://www.edenwaith.com/products/permanent\%20eraser/][][http://www.edenwaith.com/products/permanent\letterpercent{}20eraser/]\from[url2257]
  \useURL[url2258][https://web.archive.org/web/http://www.edenwaith.com/products/permanent\%20eraser/][][{[}Archive.org{]}]\from[url2258]
\item
  From the terminal, you can use the \quotation{rm --P filename} command
  which should erase the file and overwrite it as explained in this EFF
  tutorial
  \useURL[url2259][https://ssd.eff.org/en/module/how-delete-your-data-securely-macos]\from[url2259]
  \useURL[url2260][https://web.archive.org/web/https://ssd.eff.org/en/module/how-delete-your-data-securely-macos][][{[}Archive.org{]}]\from[url2260].
\stopitemize

In the case of USB thumb drives, consider wiping them completely using
Disk Utility as instructed previously.

\subsubsubsection[title={External SSD
drive:},reference={external-ssd-drive-3}]

First please see \goto{Appendix K: Considerations for using external SSD
drives}[appendix-k-considerations-for-using-external-ssd-drives]

If Trim is supported and enabled by macOS for your external SSD drive.
There should be no issue in securely deleting data.

If Trim is not supported, you might have to ensure secure data deletion
by:

\startitemize
\item
  Filling up all the free space after any deletion using the Linux
  Method above (dd).
\item
  Decrypt and Re-encrypt the disk with a different key after each
  deletion (using Disk Utility or Veracrypt).
\stopitemize

\subsection[title={Some additional measures against
forensics:},reference={some-additional-measures-against-forensics}]

Note that the same SSD issue discussed in the earlier section will arise
here. You can never really be 100\letterpercent{} sure your SSD data is
deleted when you ask it to do so unless you wipe the whole drive using
specific methods above.

We are not aware of any 100\letterpercent{} reliable method to delete
single files selectively and securely on SSD drives unless overwriting
ALL the free space (which might reduce the lifespan of your SSD) after
Deletion + Trim of these files. Without doing that, you will have to
trust the SSD Trim operation {\bf which in my opinion is enough}.
{\bf It is reasonable and again very unlikely that forensics will be
able to restore your files after a Deletion with Trim.}

In addition, most of these measures here should not be needed since your
whole drive should be encrypted and therefore your data should not be
accessible for forensic analysis through SSD/HDD examination anyway. So,
these are just \quotation{bonus measures} for weak/unskilled
adversaries.

Consider also reading this documentation if you're going with Whonix
\useURL[url2261][https://www.whonix.org/wiki/Anti-Forensics_Precautions]\from[url2261]
\useURL[url2262][https://web.archive.org/web/https://www.whonix.org/wiki/Anti-Forensics_Precautions][][{[}Archive.org{]}]\from[url2262]
as well as their general hardening tutorial for all platforms here
\useURL[url2263][https://www.whonix.org/wiki/System_Hardening_Checklist]\from[url2263]
\useURL[url2264][https://web.archive.org/web/https://www.whonix.org/wiki/System_Hardening_Checklist][][{[}Archive.org{]}]\from[url2264]

\subsubsection[title={Removing Metadata from
Files/Documents/Pictures:},reference={removing-metadata-from-filesdocumentspictures}]

\subsubsubsection[title={Pictures and
videos:},reference={pictures-and-videos}]

On Windows, macOS, and Linux we would recommend ExifTool
(\useURL[url2265][https://exiftool.org/]\from[url2265]
\useURL[url2266][https://web.archive.org/web/https://exiftool.org/][][{[}Archive.org{]}]\from[url2266])
and/or ExifCleaner
(\useURL[url2267][https://exifcleaner.com/]\from[url2267]
\useURL[url2268][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2268])
that allows viewing and/or removing those properties.

{\bf ExifTool is natively available on Tails and Whonix Workstation.}

\subsubsubsubsection[title={ExifCleaner:},reference={exifcleaner}]

Just install it from
\useURL[url2269][https://exifcleaner.com/]\from[url2269]
\useURL[url2270][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2270],
run and drag and drop the files into the GUI.

\subsubsubsubsection[title={ExifTool:},reference={exiftool}]

It is actually simple, just install exiftool and run:

\startitemize
\item
  To display metadata: \type{exiftool filename.jpg}
\item
  To remove all metadata: \type{exiftool -All= filename.jpg}
\stopitemize

{\bf Remember that ExifTool is natively available on Tails and Whonix
Workstation.}

\subsubsubsubsection[title={Windows Native
tool:},reference={windows-native-tool}]

Here is a tutorial to remove metadata from a Picture using OS provided
tools:
\useURL[url2271][https://www.purevpn.com/internet-privacy/how-to-remove-metadata-from-photos]\from[url2271]
\useURL[url2272][https://web.archive.org/web/https://www.purevpn.com/internet-privacy/how-to-remove-metadata-from-photos][][{[}Archive.org{]}]\from[url2272]

\subsubsubsubsection[title={Cloaking/Obfuscating to prevent picture
recognition:},reference={cloakingobfuscating-to-prevent-picture-recognition}]

Consider the use of Fawkes
\useURL[url2273][https://sandlab.cs.uchicago.edu/fawkes/]\from[url2273]
\useURL[url2274][https://web.archive.org/web/https://sandlab.cs.uchicago.edu/fawkes/][][{[}Archive.org{]}]\from[url2274]
(\useURL[url2275][https://github.com/Shawn-Shan/fawkes]\from[url2275]
\useURL[url2276][https://web.archive.org/web/https://github.com/Shawn-Shan/fawkes][][{[}Archive.org{]}]\from[url2276])
to cloak the images from picture recognition tech on various platforms.

Or if you want online versions, consider:

\startitemize
\item
  \useURL[url2277][https://lowkey.umiacs.umd.edu/]\from[url2277]
  \useURL[url2278][https://web.archive.org/web/https://lowkey.umiacs.umd.edu/][][{[}Archive.org{]}]\from[url2278]
\item
  \useURL[url2279][https://adversarial.io/]\from[url2279]
  \useURL[url2280][https://web.archive.org/web/https://adversarial.io/][][{[}Archive.org{]}]\from[url2280]
\stopitemize

\subsubsubsection[title={PDF Documents:},reference={pdf-documents}]

\subsubsubsubsection[title={PDFParanoia
(Linux/Windows/macOS/QubesOS):},reference={pdfparanoia-linuxwindowsmacosqubesos}]

Consider using
\useURL[url2281][https://github.com/kanzure/pdfparanoia]\from[url2281]
\useURL[url2282][https://web.archive.org/web/https://github.com/kanzure/pdfparanoia][][{[}Archive.org{]}]\from[url2282]
which will remove metadata and watermarks on any PDF.

\subsubsubsubsection[title={ExifCleaner
(Linux/Windows/macOS/QubesOS):},reference={exifcleaner-linuxwindowsmacosqubesos}]

Just install it from
\useURL[url2283][https://exifcleaner.com/]\from[url2283]
\useURL[url2284][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2284],
run and drag and drop the files into the GUI.

\subsubsubsubsection[title={ExifTool
(Linux/Windows/macOS/QubesOS):},reference={exiftool-linuxwindowsmacosqubesos}]

It is actually simple, just install exiftool and run:

\startitemize
\item
  To display metadata: \type{exiftool filename.pdf}
\item
  To remove all metadata: \type{exiftool -All= filename.pdf}
\stopitemize

\subsubsubsection[title={MS Office
Documents:},reference={ms-office-documents}]

First, here is a tutorial to remove metadata from Office documents:
\useURL[url2285][https://support.microsoft.com/en-us/office/remove-hidden-data-and-personal-information-by-inspecting-documents-presentations-or-workbooks-356b7b5d-77af-44fe-a07f-9aa4d085966f]\from[url2285]
\useURL[url2286][https://web.archive.org/web/https://support.microsoft.com/en-us/office/remove-hidden-data-and-personal-information-by-inspecting-documents-presentations-or-workbooks-356b7b5d-77af-44fe-a07f-9aa4d085966f][][{[}Archive.org{]}]\from[url2286].
Make sure however that you do use the latest version of Office with the
latest security updates.

Alternatively, on Windows, macOS, Qubes OS, and Linux we would recommend
ExifTool (\useURL[url2287][https://exiftool.org/]\from[url2287]
\useURL[url2288][https://web.archive.org/web/https://exiftool.org/][][{[}Archive.org{]}]\from[url2288])
and/or ExifCleaner
(\useURL[url2289][https://exifcleaner.com/]\from[url2289]
\useURL[url2290][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2290])
that allows viewing and/or removing those properties

\subsubsubsubsection[title={ExifCleaner:},reference={exifcleaner-1}]

Just install it from
\useURL[url2291][https://exifcleaner.com/]\from[url2291]
\useURL[url2292][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2292],
run and drag and drop the files into the GUI.

\subsubsubsubsection[title={ExifTool:},reference={exiftool-1}]

It is actually simple, just install exiftool and run:

\startitemize
\item
  To display metadata: \type{exiftool filename.docx}
\item
  To remove all metadata: \type{exiftool -All= filename.docx}
\stopitemize

\subsubsubsection[title={LibreOffice
Documents:},reference={libreoffice-documents}]

\startitemize
\item
  select Files in the upper menu

  \startitemize
  \item
    Select Properties
  \item
    Uncheck \quotation{Apply User Data}
  \item
    Uncheck \quotation{Save Preview image with the Document}
  \item
    Click \quotation{Reset Properties}
  \item
    Make sure there is nothing on the Description and Custom Properties
    tabs
  \stopitemize
\item
  Select Tools in the upper menu

  \startitemize
  \item
    Select Options
  \item
    Select Security
  \item
    Click \quotation{Security Options and Warning}
  \item
    Check:

    \startitemize
    \item
      \quotation{When printing}
    \item
      \quotation{When saving or sending}
    \item
      \quotation{When creating PDF files}
    \item
      \quotation{Remove personal information on saving}
    \stopitemize
  \stopitemize
\stopitemize

In addition, on Windows, macOS, Qubes OS, and Linux we would recommend
ExifTool (\useURL[url2293][https://exiftool.org/]\from[url2293]
\useURL[url2294][https://web.archive.org/web/https://exiftool.org/][][{[}Archive.org{]}]\from[url2294])
and/or ExifCleaner
(\useURL[url2295][https://exifcleaner.com/]\from[url2295]
\useURL[url2296][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2296])
that allows viewing and/or removing additional properties

\subsubsubsubsection[title={ExifCleaner:},reference={exifcleaner-2}]

Just install it from
\useURL[url2297][https://exifcleaner.com/]\from[url2297]
\useURL[url2298][https://web.archive.org/web/https://exifcleaner.com/][][{[}Archive.org{]}]\from[url2298],
run and drag and drop the files into the GUI.

\subsubsubsubsection[title={ExifTool:},reference={exiftool-2}]

It is actually simple, jut install exiftool and run:

\startitemize
\item
  To display metadata: \type{exiftool filename.odt}
\item
  To remove all metadata: \type{exiftool -All= filename.odt}
\stopitemize

\subsubsubsection[title={All-in-one Tool:},reference={all-in-one-tool}]

Another option good tool to remove metadata from various documents is
the open-source mat2 recommended by privacyguides.org\footnote{Privacyguides.org,
  Productivity tools
  \useURL[url2299][https://privacyguides.org/productivity/]\from[url2299]
  \useURL[url2300][https://web.archive.org/web/https://privacyguides.org/productivity/][][{[}Archive.org{]}]\from[url2300]}
(\useURL[url2301][https://0xacab.org/jvoisin/mat2]\from[url2301]
\useURL[url2302][https://web.archive.org/web/https://0xacab.org/jvoisin/mat2][][{[}Archive.org{]}]\from[url2302])
which you can use on Linux quite easily. I never managed to make it work
properly within Windows due to various dependencies issues despite the
provided instructions. It is however very straightforward to install and
use on Linux.

So, we would suggest creating a small Debian VM within Virtualbox
(behind your Whonix Gateway) which you can then use from your other VMs
to analyze various files from a convenient web interface. For this see
\goto{Appendix L: Creating a mat2-web guest VM for removing metadata
from
files}[appendix-l-creating-a-mat2-web-guest-vm-for-removing-metadata-from-files]

\placefigure{image47}{\externalfigure[./tex2pdf.-1a34188c73046814/b2f67a77185443adc8917dde05f91affaa9ed0ba.png]}

Mat2 is also pre-installed on the Whonix Workstation VM\footnote{Whonix
  Documentation, Scrubbing Metadata
  \useURL[url2303][https://www.whonix.org/wiki/Metadata]\from[url2303]
  \useURL[url2304][https://web.archive.org/web/https://www.whonix.org/wiki/Metadata][][{[}Archive.org{]}]\from[url2304]}
and available on Tails by default\footnote{Tails documentation, MAT
  \useURL[url2305][https://gitlab.tails.boum.org/tails/blueprints/-/wikis/doc/mat/]\from[url2305]
  \useURL[url2306][https://web.archive.org/web/https://gitlab.tails.boum.org/tails/blueprints/-/wikis/doc/mat/][][{[}Archive.org{]}]\from[url2306]}.

\subsubsection[title={Tails:},reference={tails}]

Tails is great for this; you have nothing to worry about even if you use
an SSD drive. Shut it down and it is all gone as soon as the memory
decays.

\subsubsection[title={Whonix:},reference={whonix-1}]

Note that it's possible to run Whonix in Live mode leaving no traces
when you shut down the VMs, consider reading their documentation here
\useURL[url2307][https://www.whonix.org/wiki/VM_Live_Mode]\from[url2307]
\useURL[url2308][https://web.archive.org/web/https://www.whonix.org/wiki/VM_Live_Mode][][{[}Archive.org{]}]\from[url2308]
and here
\useURL[url2309][https://www.whonix.org/wiki/Warning\#Whonix_.E2.84.A2_Persistence_vs_Live_vs_Amnesic]\from[url2309]
\useURL[url2310][https://web.archive.org/web/https://www.whonix.org/wiki/Warning][][{[}Archive.org{]}]\from[url2310].

\subsubsection[title={macOS:},reference={macos-4}]

\subsubsubsection[title={Guest OS:},reference={guest-os}]

Revert to an earlier snapshot on Virtualbox (or any other VM software
you are using) and perform a Trim command on your Mac using Disk Utility
by executing a first-aid on the Host OS again as explained at the end of
the next section.

\subsubsubsection[title={Host OS:},reference={host-os}]

Most of the info from this section can also be found at this nice guide
\useURL[url2311][https://github.com/drduh/macOS-Security-and-Privacy-Guide]\from[url2311]
\useURL[url2312][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url2312]

\subsubsubsubsection[title={Quarantine Database (used by Gatekeeper and
XProtect):},reference={quarantine-database-used-by-gatekeeper-and-xprotect}]

macOS (up to and including Big Sur) keeps a Quarantine SQL Database of
all the files you ever downloaded from a Browser. This database is
located at
\type{~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2}.

You can query it yourself by running the following command from
terminal:
\type{sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2 "select * from LSQuarantineEvent"}

This is a goldmine for forensics, and you should disable this:

\startitemize
\item
  Run the following command to clear the database completely:
  \type{:>~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2}
\item
  Run the following command to lock the file and prevent further
  download history from being written there:
  \type{sudo chflags schg ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2}
\stopitemize

Lastly, you can also disable Gatekeeper altogether by issuing the
following command in the terminal\footnote{GitHub, Disable Gatekeeper on
  macOS Big Sur (11.x)
  \useURL[url2313][https://disable-gatekeeper.github.io/]\from[url2313]
  \useURL[url2314][https://web.archive.org/web/https://disable-gatekeeper.github.io/][][{[}Archive.org{]}]\from[url2314]}:

\startitemize[packed]
\item
  \type{sudo spctl --master-disable}
\stopitemize

Refer to this section of this guide for further information
\useURL[url2315][https://github.com/drduh/macOS-Security-and-Privacy-Guide\#gatekeeper-and-xprotect]\from[url2315]
\useURL[url2316][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url2316]

In addition to this convenient database, each saved file will also carry
detailed file system HFS+/APFS attributes showing for instance when it
was downloaded, with what, and from where.

You can view these just by opening a terminal and typing
\type{mdls filename} and \type{xattr -l filename} on any downloaded file
from any browser.

To remove such attributes, you will have to do it manually from the
terminal:

\startitemize
\item
  Run \type{xattr -d com.apple.metadata:kMDItemWhereFroms filename} to
  remove the origin

  \startitemize[packed]
  \item
    You can also just use -dr to do it recursively on a whole
    folder/disk
  \stopitemize
\item
  Run \type{xattr -d com.apple.quarantine filename} to remove the
  quarantine reference

  \startitemize[packed]
  \item
    You can also just use -dr to do it recursively on a whole
    folder/disk
  \stopitemize
\item
  Verify by running \type{xattr --l filename} and there should be no
  output
\stopitemize

(Note that Apple has removed the convenient xattr --c option that would
just remove all attributes at once so you will have to do this for each
attribute on each file)

{\bf These attributes and entries will stick even if you clear your
browser history, and this is obviously bad for privacy (right?), and we
are not aware of any convenient tool that will deal with those at the
moment.}

Fortunately, there are some mitigations for avoiding this issue in the
first place as these attributes and entries are set by the browsers. So,
we tested various browsers (On macOS Catalina, Big Sur, and Monterey),
and here are the results as of the date of this guide:

\startplacetable[location=none]
\startxtable
\startxtablehead[head]
\startxrow
\startxcell {\bf Browser} \stopxcell
\startxcell {\bf Quarantine DB Entry} \stopxcell
\startxcell {\bf Quarantine File Attribute} \stopxcell
\startxcell {\bf Origin File Attribute} \stopxcell
\stopxrow
\stopxtablehead
\startxtablebody[body]
\startxrow
\startxcell {\bf Safari (Normal)} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Safari (Private Window)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Firefox (Normal)} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Firefox (Private Window)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Chrome (Normal)} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\startxcell {\bf Yes} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Chrome (Private Window)} \stopxcell
\startxcell {\bf Partial (timestamp only)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Brave (Normal)} \stopxcell
\startxcell {\bf Partial (timestamp only)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Brave (Private Window)} \stopxcell
\startxcell {\bf Partial (timestamp only)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\startxrow
\startxcell {\bf Brave (Tor Window)} \stopxcell
\startxcell {\bf Partial (timestamp only)} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\stopxtablebody
\startxtablefoot[foot]
\startxrow
\startxcell {\bf Tor Browser} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\startxcell {\bf No} \stopxcell
\stopxrow
\stopxtablefoot
\stopxtable
\stopplacetable

As you can see for yourself the easiest mitigation is to just use
Private Windows. These do not write those origin/quarantine attributes
and do not store the entries in the QuarantineEventsV2 database.

Clearing the QuarantineEventsV2 is easy as explained above. Removing the
attributes takes some work. {\bf Brave is the only tested browser that
will not store those attributes by default in normal operations.}

\subsubsubsubsection[title={Various
Artifacts:},reference={various-artifacts}]

In addition, macOS keeps various logs of mounted devices, connected
devices, known networks, analytics, documents revisions\ldots{}

See this section of this guide for guidance on where to find and how to
delete such artifacts:
\useURL[url2317][https://github.com/drduh/macOS-Security-and-Privacy-Guide\#metadata-and-artifacts]\from[url2317]
\useURL[url2318][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url2318]

Many of those can be deleted using various commercial third-party tools
but we would personally recommend using the free and well-known Onyx
which you can find here:
\useURL[url2319][https://www.titanium-software.fr/en/onyx.html]\from[url2319]
\useURL[url2320][https://web.archive.org/web/https://www.titanium-software.fr/en/onyx.html][][{[}Archive.org{]}]\from[url2320].
Unfortunately, it is closed-source, but it is notarized, signed, and has
been trusted for many years.

\subsubsubsubsection[title={Force a Trim operation after
cleaning:},reference={force-a-trim-operation-after-cleaning}]

\startitemize
\item
  If your file system is APFS, you do not need to worry about Trim, it
  happens asynchronously as the OS writes data.
\item
  If your file system is HFS+ (or any other than APFS), you could run
  First Aid on your System Drive from the Disk Utility which should
  perform a Trim operation in the details
  (\useURL[url2321][https://support.apple.com/en-us/HT210898]\from[url2321]
  \useURL[url2322][https://web.archive.org/web/https://support.apple.com/en-us/HT210898][][{[}Archive.org{]}]\from[url2322]).
\stopitemize

\placefigure{image46}{\externalfigure[./tex2pdf.-1a34188c73046814/f9e0d691359d2b48fa315e60f32965192acbe83f.png]}

\subsubsection[title={Linux (Qubes OS):},reference={linux-qubes-os-1}]

Please consider their guidelines
\useURL[url2323][https://github.com/Qubes-Community/Contents/blob/master/docs/security/security-guidelines.md]\from[url2323]
\useURL[url2324][https://web.archive.org/web/https://github.com/Qubes-Community/Contents/blob/master/docs/security/security-guidelines.md][][{[}Archive.org{]}]\from[url2324]

If you are using Whonix on Qubes OS, please consider following some of
their guides:

\startitemize
\item
  Whonix System Hardening guide
  \useURL[url2325][https://www.whonix.org/wiki/System_Hardening_Checklist]\from[url2325]
  \useURL[url2326][https://web.archive.org/web/https://www.whonix.org/wiki/System_Hardening_Checklist][][{[}Archive.org{]}]\from[url2326]
\item
  Enabling App Armor on Qubes
  \useURL[url2327][https://www.whonix.org/wiki/Qubes/AppArmor]\from[url2327]
  \useURL[url2328][https://web.archive.org/web/https://www.whonix.org/wiki/Qubes/AppArmor][][{[}Archive.org{]}]\from[url2328]
\item
  Also, consider the use of Linux Kernel Guard
  \useURL[url2329][https://www.whonix.org/wiki/Linux_Kernel_Runtime_Guard_LKRG]\from[url2329]
  \useURL[url2330][https://web.archive.org/web/https://www.whonix.org/wiki/Linux_Kernel_Runtime_Guard_LKRG][][{[}Archive.org{]}]\from[url2330]
\stopitemize

\subsubsection[title={Linux (non-Qubes):},reference={linux-non-qubes}]

\subsubsubsection[title={Guest OS:},reference={guest-os-1}]

Revert to an earlier snapshot of the Guest VM on Virtualbox (or any
other VM software you are using) and perform a trim command on your
laptop using \type{fstrim --all}. This utility is part of the
\type{util-linux} package on Debian/Ubuntu and should be installed by
default on Fedora. Then switch to the next section.

\subsubsubsection[title={Host OS:},reference={host-os-1}]

Normally you should not have traces to clean within the Host OS since
you are doing everything from a VM if you follow this guide.

Nevertheless, you might want to clean some logs. Consider having a look
this convenient (but unfortunately unmaintained) tool:
\useURL[url2331][https://github.com/sundowndev/covermyass]\from[url2331]
\useURL[url2332][https://web.archive.org/web/https://github.com/sundowndev/covermyass][][{[}Archive.org{]}]\from[url2332]

After cleaning up, make sure you have the fstrim utility installed
(should be by default on Fedora) and part of the \type{util-linux}
package on Debian/Ubuntu. Then just run \type{fstrim --all} on the Host
OS. This should be sufficient on SSD drives as explained earlier.

Consider the use of Linux Kernel Guard as an added measure
\useURL[url2333][https://www.whonix.org/wiki/Linux_Kernel_Runtime_Guard_LKRG]\from[url2333]
\useURL[url2334][https://web.archive.org/web/https://www.whonix.org/wiki/Linux_Kernel_Runtime_Guard_LKRG][][{[}Archive.org{]}]\from[url2334]

\subsubsection[title={Windows:},reference={windows-4}]

\subsubsubsection[title={Guest OS:},reference={guest-os-2}]

Revert to an earlier snapshot on Virtualbox (or any other VM software
you are using) and perform a trim command on your Windows using the
Optimize as explained at the end of the next section

\subsubsubsection[title={Host OS:},reference={host-os-2}]

Now that you had a bunch of activities with your VMs or Host OS, you
should take a moment to cover your tracks. {\bf Most of these steps
should not be undertaken on the Decoy OS in case of the use of plausible
deniability. This is because you want to keep decoy/plausible traces of
sensible but not secret activities available for your adversary. If
everything is clean, then you might raise suspicion.}

\subsubsubsubsection[title={Diagnostic Data and
Telemetry:},reference={diagnostic-data-and-telemetry}]

First, let us get rid of any diagnostic data that could still be there:

\startitemize[packed]
\item
  After each use of your Windows devices, go into Settings, Privacy,
  Diagnostic & Feedback, and Click Delete.
\stopitemize

Then let us re-randomize the MAC addresses of your Virtual Machines and
the Bluetooth Address of your Host OS.

\startitemize
\item
  After each shutdown of your Windows VM, change its MAC address for
  next time by going into Virtualbox > Select the VM > Settings >
  Network > Advanced > Refresh the MAC address.
\item
  After each use of your Host OS Windows (your VM should not have
  Bluetooth at all), Go into the Device Manager, Select Bluetooth,
  Disable the Device and Re-Enable the device (this will force a
  randomization of the Bluetooth Address).
\stopitemize

\subsubsubsubsection[title={Event logs:},reference={event-logs}]

Windows Event logs will keep many various pieces of information that
could contain traces of your activities such as the devices that were
mounted (including Veracrypt NTFS volumes for instance\footnote{Veracrypt
  Documentation, Data Leaks
  \useURL[url2335][https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\%20Leaks.html][][https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\letterpercent{}20Leaks.html]\from[url2335]
  \useURL[url2336][https://web.archive.org/web/https://www.veracrypt.fr/code/VeraCrypt/plain/doc/html/Data\%20Leaks.html][][{[}Archive.org{]}]\from[url2336]}),
your network connections, app crash information, and various errors. It
is always best to clean those up regularly. Do not do this on the Decoy
OS.

\startitemize
\item
  Start, search for Event Viewer, and launch Event Viewer:

  \startitemize
  \item
    Go into Windows logs.
  \item
    Select and clear all five logs using a right-click.
  \stopitemize
\stopitemize

\subsubsubsubsection[title={Veracrypt
History:},reference={veracrypt-history}]

By default, Veracrypt saves a history of recently mounted volumes and
files. You should make sure Veracrypt never saves History. Again, do not
do this on the Decoy OS if you are using plausible deniability for the
OS. We need to keep the history of mounting the decoy Volume as part of
the plausible deniability:

\startitemize
\item
  Launch Veracrypt
\item
  Make sure the \quotation{Never saves history} checkbox is checked
  (this should not be checked on the Decoy OS)
\stopitemize

Now you should clean the history within any app that you used including
Browser history, Cookies, Saved Passwords, Sessions, and Form History.

\subsubsubsubsection[title={Browser
History:},reference={browser-history}]

\startitemize
\item
  Brave (in case you did not enable cleaning on exit)

  \startitemize
  \item
    Go into Settings
  \item
    Go into Shields
  \item
    Go into Clear Browsing Data
  \item
    Select Advanced
  \item
    Select \quotation{All Time}
  \item
    Check all the options
  \item
    Clear Data
  \stopitemize
\item
  Tor Browser

  \startitemize[packed]
  \item
    Just close the Browser and everything is cleaned
  \stopitemize
\stopitemize

\subsubsubsubsection[title={Wi-Fi History:},reference={wi-fi-history}]

Now it is time to clear the history of the Wi-Fi you connect to.
Unfortunately, Windows keeps storing a list of past Networks in the
registry even if you \quotation{forgot} those in the Wi-Fi settings. As
far as we know, no utilities clean those yet (BleachBit or PrivaZer for
instance) so you will have to do it the manual way:

\startitemize
\item
  Launch Regedit using this tutorial:
  \useURL[url2337][https://support.microsoft.com/en-us/windows/how-to-open-registry-editor-in-windows-10-deab38e6-91d6-e0aa-4b7c-8878d9e07b11]\from[url2337]
  \useURL[url2338][https://web.archive.org/web/https://support.microsoft.com/en-us/windows/how-to-open-registry-editor-in-windows-10-deab38e6-91d6-e0aa-4b7c-8878d9e07b11][][{[}Archive.org{]}]\from[url2338]
\item
  Within Regedit, enter this to the address bar:
  \type{Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkList\Profiles}
\item
  There you will see a bunch of folders to the right. Each of those
  folders is a \quotation{Key}. Each of those keys will contain
  information about your current known Wi-Fi or past networks you used.
  You can explore them one by one and see the description on the right
  side.
\item
  Delete all those keys.
\stopitemize

\subsubsubsubsection[title={Shellbags:},reference={shellbags}]

As explained earlier, Shellbags are basically histories of accessed
volumes/files on your computer. Remember that shellbags are
exceptionally useful sources of information for forensics\footnote{SANS,
  Windows ShellBag Forensics in-depth
  \useURL[url2339][https://www.sans.org/reading-room/whitepapers/forensics/windows-shellbag-forensics-in-depth-34545]\from[url2339]
  \useURL[url2340][https://web.archive.org/web/https://www.sans.org/reading-room/whitepapers/forensics/windows-shellbag-forensics-in-depth-34545][][{[}Archive.org{]}]\from[url2340]}
and you need to clean those. Especially if you mounted any
\quotation{hidden volume} anywhere. Again, you should not do this on the
Decoy OS:

\startitemize
\item
  Download Shellbag Analyzer & Cleaner from
  \useURL[url2341][https://privazer.com/en/download-shellbag-analyzer-shellbag-cleaner.php]\from[url2341]
  \useURL[url2342][https://web.archive.org/web/https://privazer.com/en/download-shellbag-analyzer-shellbag-cleaner.php][][{[}Archive.org{]}]\from[url2342]

  \startitemize
  \item
    Launch it
  \item
    Analyze
  \item
    Click Clean and select:

    \startitemize
    \item
      Deleted Folders
    \item
      Folders on Network / External devices
    \item
      Search Results
    \stopitemize
  \item
    Select advanced

    \startitemize
    \item
      Check all except the two backup options (do not backup)
    \item
      Select SSD cleanup (if you have an SSD)
    \item
      Select one pass (All zero)
    \item
      Clean
    \stopitemize
  \stopitemize
\stopitemize

\subsubsubsubsection[title={Extra Tools
Cleaning:},reference={extra-tools-cleaning}]

After cleaning those earlier traces, you should also use third-party
utilities that can be used to clean various traces. These include the
traces of the files/folders you deleted.

Please refer to \goto{Appendix H: Windows Cleaning
Tools}[appendix-h-windows-cleaning-tools] before continuing.

\subsubsubsubsubsection[title={PrivaZer:},reference={privazer}]

Here are the steps for PrivaZer:

\startitemize
\item
  Download and install PrivaZer from
  \useURL[url2343][https://privazer.com/en/download.php]\from[url2343]
  \useURL[url2344][https://web.archive.org/web/https://privazer.com/en/download.php][][{[}Archive.org{]}]\from[url2344]

  \startitemize
  \item
    Run PrivaZer after install
  \item
    Do not use their Wizard
  \item
    Select Advanced User
  \item
    Select Scan in Depth and pick your Target
  \item
    Select Everything you want to Scan and push Scan
  \item
    Select What you want to be cleaned (skip the shell bag part since
    you used the other utility for that)

    \startitemize[packed]
    \item
      {\bf You should just skip the free space cleaning part if using an
      SSD and instead just use the native Windows Optimize function (see
      below) which should be more than enough. We would only use this on
      an HDD drive.}
    \stopitemize
  \item
    (If you did select Free Space cleaning) Select Clean Options and
    make sure your type of Storage is well detected (HDD vs SSD).
  \item
    (If you did select Free Space cleaning) Within Clean Options
    {\bf (Be careful with this option as it will erase all the free
    space on the selected partition, especially if you are running the
    decoy OS. Do not erase the free space or anything else on the second
    partition as you risk destroying your Hidden OS)}

    \startitemize
    \item
      If you have an SSD drive:

      \startitemize
      \item
        Secure Overwriting Tab: We would just pick Normal Deletion +
        Trim (Trim itself should be enough\footnote{St Cloud State
          University, Forensic Research on Solid State Drives using Trim
          Analysis
          \useURL[url2345][https://web.archive.org//web/20220612095503/https://repository.stcloudstate.edu/cgi/viewcontent.cgi?article=1141&context=msia_etds]\from[url2345]
          \useURL[url2346][https://web.archive.org/web/20211009021236/https://repository.stcloudstate.edu/cgi/viewcontent.cgi?article=1141&context=msia_etds][][{[}Archive.org{]}]\from[url2346]}).
        Secure Deletion with Trim\footnote{Wikipedia, Trim
          \useURL[url2347][https://en.wikipedia.org/wiki/Trim_(computing)]\from[url2347]
          \useURL[url2348][https://wikiless.org/wiki/Trim_(computing)][][{[}Wikiless{]}]\from[url2348]
          \useURL[url2349][https://web.archive.org/web/https://en.wikipedia.org/wiki/Trim_(computing)][][{[}Archive.org{]}]\from[url2349]}
        (1 pass) might be redundant and overkill here if you intend to
        overwrite the free space anyway.
      \item
        Free Space Tab: Personally, and again \quotation{just to be
        sure}, we would select Normal Cleanup which will fill the entire
        free space with Data. We do not really trust Smart Cleanup as it
        does not actually fill all the free space of the SSD with Data.
        But again, this is probably not needed and overkill in most
        cases.
      \stopitemize
    \item
      If you have an HDD drive:

      \startitemize
      \item
        Secure Overwriting Tab: We would just pick Secure Deletion (1
        pass).
      \item
        Free Space: We would just pick Smart Cleanup as there is no
        reason to overwrite sectors without data on an HDD drive.
      \stopitemize
    \stopitemize
  \item
    Select Clean and Pick your flavor:

    \startitemize
    \item
      Turbo Cleanup will only do normal deletion (on HDD/SSD) and will
      not clean free space. It is not secure on an HDD nor an SSD.
    \item
      Quick Cleanup will do secure deletion (on HDD) and normal deletion
      + trim (on SSD) but will not clean free space. This is secure
      enough for SSD but not for HDD.
    \item
      Normal Cleanup will do secure deletion (on HDD) and normal
      deletion + trim (on SSD) and will then clean the whole free space
      (Smart Cleanup on HDD and Full Cleanup on SSD) and should be
      secure. This option is the best for HDD but completely overkill
      for SSD.
    \stopitemize
  \item
    Click Clean and wait for cleaning to finish. Could take a while and
    will fill your whole free space with data.
  \stopitemize
\stopitemize

\subsubsubsubsubsection[title={BleachBit:},reference={bleachbit}]

Here are the steps for BleachBit:

\startitemize
\item
  Get and install the latest version from BleachBit here
  \useURL[url2350][https://www.bleachbit.org/download]\from[url2350]
  \useURL[url2351][https://web.archive.org/web/https://www.bleachbit.org/download][][{[}Archive.org{]}]\from[url2351]
\item
  Run BleachBit
\item
  Clean at least everything within those sections:

  \startitemize
  \item
    Deep Scan
  \item
    Windows Defender
  \item
    Windows Explorer (including Shellbags)
  \item
    System
  \item
    Select any other traces you want to remove from their list

    \startitemize[packed]
    \item
      Again, as with the earlier utility, we would not clean the free
      space on an SSD drive because we think the Windows native
      \quotation{optimize} utility is enough (see below) and that
      filling up the free space on a trim enabled SSD is just completely
      overkill and unnecessary.
    \stopitemize
  \item
    Click Clean and wait. This will take a while and will fill your
    whole free space with data on both HDD and SSD drives.
  \stopitemize
\stopitemize

\subsubsubsubsection[title={Force a Trim with Windows Optimize (for SSD
drives):},reference={force-a-trim-with-windows-optimize-for-ssd-drives}]

With this Native Windows 10/11 utility, you can just trigger a Trim on
your SSD which should be more than enough to securely clean all deleted
files that somehow would have escaped Trim when deleting them.

Just open Windows Explorer, Right Click on your System Drive and click
Properties. Select Tools. Click Optimize and Defragment. You are done as
this will not defragment but only optimize. Meaning it will initiate a
Trim operation
(\useURL[url2352][https://en.wikipedia.org/wiki/Trim_(computing)]\from[url2352]
\useURL[url2353][https://wikiless.org/wiki/Trim_(computing)][][{[}Wikiless{]}]\from[url2353]
\useURL[url2354][https://web.archive.org/web/20220804150134/https://en.wikipedia.org/wiki/Trim_(computing)][][{[}Archive.org{]}]\from[url2354]).

\placefigure{image45}{\externalfigure[./tex2pdf.-1a34188c73046814/f7d944af668902072796d24866daeb5ea33ef361.png]}

\subsection[title={Removing some traces of your identities on search
engines and various
platforms:},reference={removing-some-traces-of-your-identities-on-search-engines-and-various-platforms}]

Chances are your actions (such as posts on various platforms, your
profiles) will be indexed (and cached) by many search engines.

Contrary to widespread belief, it is possible to have some but not all
this information removed by following some steps. While this might not
remove the information on the websites themselves, it will make it
harder for people to find it using search engines:

\startitemize
\item
  First, you will have to delete your identities from the platform
  themselves if you can. Most will allow this but not all. For some, you
  might have to contact their support/moderators and for others, there
  will be readily available forms to do so.
\item
  If they do not allow the removal/deletion of profiles, there might be
  a possibility for you to rename your identity. Change the username if
  you can and all account information with bogus information including
  the e-mail.
\item
  If allowed, you can also sometimes edit past posts to remove the
  information within those.
\stopitemize

You can check some useful information about how to and get delete
various accounts on these websites:

\startitemize
\item
  \useURL[url2355][https://justdeleteme.xyz/]\from[url2355]
  \useURL[url2356][https://web.archive.org/web/https://justdeleteme.xyz/][][{[}Archive.org{]}]\from[url2356]
\item
  \useURL[url2357][https://justgetmydata.com/]\from[url2357]
  \useURL[url2358][https://web.archive.org/web/https://justgetmydata.com/][][{[}Archive.org{]}]\from[url2358]
\stopitemize

When you are done with this part, you should now handle search engines
and while you may not be able to have the information deleted, you can
ask them to update/remove outdated information which could then remove
some cached information.

\subsubsection[title={Google:},reference={google-1}]

{\bf Unfortunately, this will require you to have a Google account to
request the update/removal (however this can be done with any Google
account from anyone). There is no way around this except waiting.}

Go to their \quotation{Remove outdated content from Google Search} page
here:
\useURL[url2359][https://search.google.com/search-console/remove-outdated-content]\from[url2359]
\useURL[url2360][https://web.archive.org/web/https://search.google.com/search-console/remove-outdated-content][][{[}Archive.org{]}]\from[url2360]
and submit a request accordingly.

If your profile/username was deleted/changed, they should re-index the
content and update accordingly, and remove these traces.

These requests might take several days to process. Be patient.

\subsubsection[title={Bing:},reference={bing}]

{\bf Unfortunately, this will require you to have a Microsoft account to
request the update/removal (however this can be done with any Microsoft
account from any identity). There is no way around this except waiting.}

Go to their \quotation{Content Removal} page here:
\useURL[url2361][https://www.bing.com/webmasters/tools/contentremoval]\from[url2361]
\useURL[url2362][https://web.archive.org/web/https://www.bing.com/webmasters/tools/contentremoval][][{[}Archive.org{]}]\from[url2362]
and submit a request accordingly.

If your profile/username was deleted/changed, they should re-index the
content and update accordingly, and remove these traces.

This might take several days to process. Be patient.

\subsubsection[title={DuckDuckGo:},reference={duckduckgo}]

DuckDuckGo does not store a cached version of pages\footnote{DuckDuckGo
  help, Cache
  \useURL[url2363][https://help.duckduckgo.com/duckduckgo-help-pages/features/cache/]\from[url2363]
  \useURL[url2364][https://web.archive.org/web/https://help.duckduckgo.com/duckduckgo-help-pages/features/cache/][][{[}Archive.org{]}]\from[url2364]}
and will instead forward you to a Google/Bing cached version if
available.

In addition, DuckDuckGo source most of their searches from Bing (and not
Google)\footnote{DuckDuckGo help, Sources
  \useURL[url2365][https://help.duckduckgo.com/duckduckgo-help-pages/results/sources/]\from[url2365]
  \useURL[url2366][https://web.archive.org/web/https://help.duckduckgo.com/duckduckgo-help-pages/results/sources/][][{[}Archive.org{]}]\from[url2366]}
and therefore removing the content from Bing should in time have it
removed it from DuckDuckGo too.

\subsubsection[title={Yandex:},reference={yandex}]

{\bf Unfortunately, this will require you to have a Yandex account to
request removals (however this can be done with any Yandex account from
any identity). There is no way around this except waiting.}

Once have your Yandex account, head to the Yandex Webmaster tools
\useURL[url2367][https://webmaster.yandex.com]\from[url2367]
\useURL[url2368][https://web.archive.org/web/https://webmaster.yandex.com/][][{[}Archive.org{]}]\from[url2368]
and then select Tools and Delete URL
\useURL[url2369][https://webmaster.yandex.com/tools/del-url/]\from[url2369]
\useURL[url2370][https://web.archive.org/web/https://webmaster.yandex.com/tools/del-url/][][{[}Archive.org{]}]\from[url2370]

There you could input the URL that does not exist anymore if you had
them deleted.

This will only work with pages that have been deleted and therefore will
not work with removing the cache of existing records. For that
unfortunately there is no tool available to force a cache update, but
you can still try their feedback tool:

Search for the page that was changed (where your profile was
deleted/changed) and click the arrow next to the result. Select
Complain. And submit a complaint about the page not matching the search
result. Hopefully, this will force Yandex to re-crawl the page and
re-index it after some time. This could take days or weeks.

\subsubsection[title={Qwant:},reference={qwant}]

As far as we know, there is no readily available tool to force this, and
you will have to wait for the results to get updated if there is any. If
you know a way, please report this to us through the GitHub issues.

\subsubsection[title={Yahoo Search:},reference={yahoo-search}]

Yes, Yahoo Search still exists but as per their help page
\useURL[url2371][https://help.yahoo.com/kb/SLN4530.html]\from[url2371]
\useURL[url2372][https://web.archive.org/web/https://help.yahoo.com/kb/SLN4530.html][][{[}Archive.org{]}]\from[url2372],
there is no way to remove information or refresh information besides
waiting. This could take 6 to 8 weeks.

\subsubsection[title={Baidu:},reference={baidu}]

As far asWeknow, there is no readily available tool to force this unless
you control the website (and do it through their webmaster tools).
Therefore, you will have to wait for the results to get updated if there
is any. If you know a way, please report this to me through the GitHub
issues.

\subsubsection[title={Wikipedia:},reference={wikipedia}]

As far asWeknow, there is no way to remove information from Wikipedia
articles themselves but if you just want to remove traces of your
username from it (as a user that contributed), you can do so by
following these steps:
\useURL[url2373][https://en.wikipedia.org/wiki/Wikipedia:Courtesy_vanishing]\from[url2373]
\useURL[url2374][https://wikiless.org/wiki/Wikipedia:Courtesy_vanishing][][{[}Wikiless{]}]\from[url2374]
\useURL[url2375][https://web.archive.org/web/https://en.wikipedia.org/wiki/Wikipedia:Courtesy_vanishing][][{[}Archive.org{]}]\from[url2375]

This will not remove any information about your online identities that
could appear in other articles but only your own identity on Wikipedia
as a user.

\subsubsection[title={Archive.today:},reference={archive.today}]

Some information can sometimes be removed on demand (sensitive
information for example) as you can see many examples here:
\useURL[url2376][https://blog.archive.today/archive]\from[url2376]

This is done through their \quotation{ask} page here:
\useURL[url2377][https://blog.archive.today/ask]\from[url2377]

\subsubsection[title={Internet Archive:},reference={internet-archive}]

You can remove pages from internet archives but {\bf only if you own the
website in question} and contact them about it. Most likely you will not
be able to remove archives from say \quotation{Reddit posts} or anything
alike. But you could still ask and see what they answer.

As per their help page
\useURL[url2378][https://help.archive.org/hc/en-us/articles/360004651732-Using-The-Wayback-Machine]\from[url2378]

"How can we exclude or remove my site's pages from the Wayback Machine?

You can send an e-mail request for us to review to info@archive.org with
the URL (web address) in the text of your message".

\subsubsection[title={Others:},reference={others}]

Have a look at those websites:

\startitemize
\item
  \useURL[url2379][https://justdeleteme.xyz/]\from[url2379]
\item
  \useURL[url2380][https://inteltechniques.com/workbook.html]\from[url2380]
  \useURL[url2381][https://web.archive.org/web/https://inteltechniques.com/workbook.html][][{[}Archive.org{]}]\from[url2381]
\stopitemize

\section[title={Some low-tech old-school
tricks:},reference={some-low-tech-old-school-tricks}]

\subsection[title={Hidden communications in plain
sight:},reference={hidden-communications-in-plain-sight}]

You must keep in mind that using all those security measures
(encryption, plausible deniability, VPN, tor, secure operating systems
\ldots{}) can make you suspicious just by using them. Using could be the
equivalent of stating openly \quotation{I something to hide} to an
observer which could then motivate some adversaries to
investigate/survey you further.

So, there are other ways you could exchange or send messages online to
others in case of need without disclosing your identity or establishing
direct communication with them. These have been in use by various
organizations for decades and can be of help if you do not want to
attract attention by using secure tech while still communicating some
sensitive information without attracting attention.

A commonly used technique that combines the idea of a Dead
Drop\footnote{Wikipedia, Dead Drop
  \useURL[url2382][https://en.wikipedia.org/wiki/Dead_drop]\from[url2382]
  \useURL[url2383][https://wikiless.org/wiki/Dead_drop][][{[}Wikiless{]}]\from[url2383]
  \useURL[url2384][https://web.archive.org/web/https://en.wikipedia.org/wiki/Dead_drop][][{[}Archive.org{]}]\from[url2384]}
and Secure Communication Obfuscation\footnote{Wikipedia, Secure
  Communication Obfuscation
  \useURL[url2385][https://en.wikipedia.org/wiki/Obfuscation\#Secure_communication]\from[url2385]
  \useURL[url2386][https://wikiless.org/wiki/Obfuscation][][{[}Wikiless{]}]\from[url2386]
  \useURL[url2387][https://web.archive.org/web/https://en.wikipedia.org/wiki/Obfuscation][][{[}Archive.org{]}]\from[url2387]}
through Steganography\footnote{Wikipedia, Steganography
  \useURL[url2388][https://en.wikipedia.org/wiki/Steganography]\from[url2388]
  \useURL[url2389][https://wikiless.org/wiki/Steganography][][{[}Wikiless{]}]\from[url2389]
  \useURL[url2390][https://web.archive.org/web/https://en.wikipedia.org/wiki/Steganography][][{[}Archive.org{]}]\from[url2390]}
and/or Kleptography\footnote{Wikipedia, Kleptography
  \useURL[url2391][https://en.wikipedia.org/wiki/Kleptography]\from[url2391]
  \useURL[url2392][https://wikiless.org/wiki/Kleptography][][{[}Wikiless{]}]\from[url2392]
  \useURL[url2393][https://web.archive.org/web/https://en.wikipedia.org/wiki/Kleptography][][{[}Archive.org{]}]\from[url2393]}
and has many names such as Koalang\footnote{Wikipedia, Koalang
  \useURL[url2394][https://en.wikipedia.org/wiki/Koalang]\from[url2394]
  \useURL[url2395][https://wikiless.org/wiki/Koalang][][{[}Wikiless{]}]\from[url2395]
  \useURL[url2396][https://web.archive.org/web/https://en.wikipedia.org/wiki/Koalang][][{[}Archive.org{]}]\from[url2396]}
or \quotation{Talking Around} or even \quotation{Social Steganography}.
This technique is very old and still widely used nowadays by teenagers
to bypass parental control. It is hiding in plain sight.

Here is one example if you want to let someone know something is wrong
and they should go dark? That they should immediately wipe all their
data, get rid of their burner phones and sensitive information?

What if you want to let someone you trust (friends, family, lawyers,
journalists \ldots{}) know that you are in trouble, and they should look
out for you?

All this without revealing the identity of the person you are sending
the message to nor disclosing the content of that message to any third
party and without raising suspicions and without using any of the secure
methods mentioned above.

Well, you could just use any online public platform for this (Instagram,
Twitter, Reddit, any forum, YouTube \ldots{}) by using in-context (of
the chosen platform/media) agreed upon (between you and your contact)
coded messages that only your contact would understand.

This could be a set of specific emojis or a specifically worded mundane
comment. Or even just a like on a specific post from a known influencer
you usually watch and like. While this would look completely normal to
anyone, this could mean a lot to a knowledgeable reader who could then
take appropriate agreed-upon actions. You could also hide the message
using Steganography using for instance
\useURL[url2397][https://stegcloak.surge.sh/]\from[url2397].

You do not even have to go that far. A simple \quotation{Last seen} time
on a specific account could be enough to trigger a message agreed upon.
If your interlocutor sees that this account was online. It could mean
there is an issue.

\subsection[title={How to spot if someone has been searching your
stuff:},reference={how-to-spot-if-someone-has-been-searching-your-stuff}]

There are some old tricks that you can use to spot if people have been
messing with your stuff while you were away.

One trick for instance is quite simple and just requires a wire/cable.
Simply lay objects on your desk/night table or in your drawers following
a straight line. You can use a simple USB cable as a tool to align them.

Make a line with your cable and place objects along the line. When you
are back, just check those places and check if the objects are still
placed along the line. This allows you not to remember precisely where
your things were without taking pictures.

Fortunately, modern technology has made this even simpler. If you
suspect someone might be looking through your stuff while you are away,
you can just take a picture of the area with your phone before leaving.
When you are back, just compare the areas with your pictures and
everything should be exactly where you left it. If anything moved, then
someone was there.

It will be extremely hard and time-consuming for an adversary to search
through your stuff and then replace it exactly as you left it with
complete precision.

What if it is a printed document or book and you want to know if someone
read it? Even simpler. Just carefully make a note within the document
with a pencil. And then erase it with any pencil eraser as if you wanted
to correct it. The trick is to carefully leave the eraser
traces/residues on the area you erased/pencil written areas and close
the document. You could also take a picture of the residues before
closing the document.

Most likely if someone went through your document to read it and
re-placed it carefully, this residue will fall off or be moved
significantly. It is a simple old-school trick that could tell you
someone searched a document you had.

\section[title={Some last OPSEC
thoughts:},reference={some-last-opsec-thoughts}]

Wait, what is OPSEC? Well, OPSEC means Operations Security\footnote{Wikipedia,
  OPSEC
  \useURL[url2398][https://en.wikipedia.org/wiki/Operations_security]\from[url2398]
  \useURL[url2399][https://wikiless.org/wiki/Operations_security][][{[}Wikiless{]}]\from[url2399]
  \useURL[url2400][https://web.archive.org/web/https://en.wikipedia.org/wiki/Operations_security][][{[}Archive.org{]}]\from[url2400]}.
The basic definition is: \quotation{OPSEC is the process of protecting
individual pieces of data that could be grouped together to give the
bigger picture.}

The important step here, and probably the easiest one, is a lesson you
can take from the movie Fight Club: the first rule is that you {\bf do
not} talk about Fight Club. This applies to many aspects of your online
operational security or OPSEC. Taking your time to go through this guide
will reward you with the tools and knowledge to embrace a fuller, more
secure experience on the internet. Rest assured that this guide will
reveal things to you that will frustrate your enemy. You will learn how
to protect your operating systems and lockdown your critical information
and ensure mission success. But the one thing you must adhere to is this
rule of thumb - do not talk about operation details. The biggest
adversarial threat to you is OSINT (discussed below and throughout the
document). The enemy will gather information on you based on what they
observe about you and your activities online and in real life.

Adversaries take many forms. To some, they are actors of a foreign
government, while to others they may be simply a rival company's
employee looking to find disgruntled workers to target for further
pressuring. To most, the general task of OPSEC is that this is your ship
- you must not do anything or say anything to sink your own ship. Simply
expressing your frustration with your boss or your work conditions or
your equipment, might be enough to generate not only a behavior profile
but also a vector of attack. A disgruntled employee, in this example, is
what generally provides enough information to warrant pressuring of that
employee for further information and possibly even extortion, blackmail,
or worse. Failure to implement basic OPSEC can lead to failure at
various points. It can lead to serious injury or even death if your
threat model is a determined attacker, foreign actor, and so on.

You must live by the simple rule that \quotation{loose lips sink ships}
- but also that they are usually your lips which will do the sinking.
OPSEC is often just applying common sense and being cautious about your
activities including in the physical world:

\subsection[title={Digital and Online
OPSEC},reference={digital-and-online-opsec}]

\startitemize
\item
  {\bf Remember to use passphrases or suits of words instead of short
  passwords and use a different one for each service. See \goto{Appendix
  A2: Guidelines for passwords and
  passphrases}[appendix-a2-guidelines-for-passwords-and-passphrases].}
\item
  Make sure you are not keeping a copy of this guide anywhere unsafe
  after. The sole presence of this guide will most likely defeat all
  your plausible deniability possibilities.
\item
  OSINT \quotation{yourself} and your identities from time to time by
  looking for them yourself online using various search engines to
  monitor your online identities. You can even automate the process
  somewhat using various tools such as Google Alerts
  \useURL[url2401][https://www.google.com/alerts]\from[url2401]
  \useURL[url2402][https://web.archive.org/web/https://www.google.com/alerts][][{[}Archive.org{]}]\from[url2402].
\item
  Do not ever use biometrics alone to safeguard your secrets. Biometrics
  can be used without your consent.
\item
  Do check the signatures and hashes of software and documents you
  download before installing/viewing them.
\item
  Do not have the same behavior such as visiting the same links on the
  clearnet then visit the same with the your anoynous online identity.
  Watch this DEF CON 25 presentation if you didn't before:
  \useURL[url2403][https://www.youtube.com/watch?v=1nvYGi7-Lxo][][DEF
  CON 25 - Svea Eckert, Andreas Dewes - Dark Data]\from[url2403]
  \useURL[url2404][https://yewtu.be/watch?v=1nvYGi7-Lxo][][{[}Invidious{]}]\from[url2404].
\item
  Encrypt everything but do not take it for granted. Remember the 5\$
  wrench.
\stopitemize

\subsection[title={Physical and IRL
OPSEC},reference={physical-and-irl-opsec}]

\startitemize
\item
  Remember the \goto{\quotation{Physically Tamper protect your
  laptop}}[physically-tamper-protect-your-laptop] section.
\item
  See \goto{\quotation{Appendix B4: Important notes about evil-maid and
  tampering}}[appendix-b4-important-notes-about-evil-maid-and-tampering]
\item
  Remember the \goto{How to spot if someone has been searching your
  stuff}[how-to-spot-if-someone-has-been-searching-your-stuff] section.
\item
  Consider the use of Haven
  \useURL[url2405][https://guardianproject.github.io/haven/]\from[url2405]
  \useURL[url2406][https://web.archive.org/web/https://guardianproject.github.io/haven/][][{[}Archive.org{]}]\from[url2406]
  on some old android phone to keep watch on your home/room while you
  are away.
\item
  Remember \goto{Appendix N: Warning about smartphones and smart
  devices}[appendix-n-warning-about-smartphones-and-smart-devices]. Do
  not forget your smart devices can compromise your anonymity.
\item
  Do not ever travel with those devices if you must pass strong border
  checks and where they could be illegal or raise suspicion.
\item
  Do not plug any equipment in that laptop unless you trust it. Use a
  USB data blocker for charging.
\item
  Remember the first rule of fight club and do not talk to anyone about
  your sensitive activities using your real identity.
\item
  Keep a normal life and do not be weird. If you spend all your online
  time using Tor to access the internet and have no social network
  accounts at all \ldots{} You are already suspicious and attracting
  unnecessary attention.
\item
  Keep plausible deniability as an option but remember it will not help
  against the 5\$ wrench either.
\item
  Never ever leave your laptop unattended/on/unlocked anywhere when
  conducting sensitive activities. Remember the story of Ross Ulbricht
  and his arrest
  \useURL[url2407][https://en.wikipedia.org/wiki/Ross_Ulbricht\#Silk_Road,_arrest_and_trial]\from[url2407]
  \useURL[url2408][https://wikiless.org/wiki/Ross_Ulbricht][][{[}Wikiless{]}]\from[url2408]
  \useURL[url2409][https://web.archive.org/web/https://en.wikipedia.org/wiki/Ross_Ulbricht][][{[}Archive.org{]}]\from[url2409].
\item
  Check for tampering regularly (not only your devices but also your
  home/room).
\item
  If you can, do not talk to the police/authorities (at least if you are
  in the US)
  \useURL[url2410][https://www.youtube.com/watch?v=d-7o9xYp7eE]\from[url2410]
  \useURL[url2411][https://yewtu.be/watch?v=d-7o9xYp7eE][][{[}Invidious{]}]\from[url2411]
  without a lawyer. Remain silent.
\item
  Know and always have at your disposal the details of a lawyer that
  could help you as a last resort in case things go wrong.
\item
  Keep your situation awareness high but not too high as to appear
  suspicious.
\item
  Consider using a physical security key (e.g., YubiCo YubiKey) for
  various protections against account compromise. {\bf (Not covered in
  this version of the guide but is a work in progress for later
  versions.)}
\item
  Read the tips here
  \useURL[url2412][https://www.whonix.org/wiki/DoNot]\from[url2412]
  \useURL[url2413][https://web.archive.org/web/https://www.whonix.org/wiki/DoNot][][{[}Archive.org{]}]\from[url2413]
\item
  {\bf Have common sense, do not be dumb, look and learn from others'
  mistakes, watch/read these:}

  \startitemize
  \item
    Medium.com, Darkweb Vendors and the Basic Opsec Mistakes They Keep
    Making
    \useURL[url2414][https://medium.com/@c5/darkweb-vendors-and-the-basic-opsec-mistakes-they-keep-making-e54c285a488c]\from[url2414]
    \useURL[url2415][https://scribe.rip/@c5/darkweb-vendors-and-the-basic-opsec-mistakes-they-keep-making-e54c285a488c][][{[}Scribe.rip{]}]\from[url2415]
    \useURL[url2416][https://web.archive.org/web/https://medium.com/@c5/darkweb-vendors-and-the-basic-opsec-mistakes-they-keep-making-e54c285a488c][][{[}Archive.org{]}]\from[url2416]
  \item
    2020, Sinwindie, OSINT, and Dark Web Markets, Why OPSEC Still
    Matters
    \useURL[url2417][https://www.youtube.com/watch?v=IqZZU9lFlF4]\from[url2417]
    \useURL[url2418][https://yewtu.be/watch?v=IqZZU9lFlF4][][{[}Invidious{]}]\from[url2418]
  \item
    2020, RSA Conference 2020, When Cybercriminals with Good OpSec
    Attack
    \useURL[url2419][https://www.youtube.com/watch?v=zXmZnU2GdVk]\from[url2419]
    \useURL[url2420][https://yewtu.be/watch?v=zXmZnU2GdVk][][{[}Invidious{]}]\from[url2420]
  \item
    2015, DEF CON 22, Adrian Crenshaw, Dropping Docs on Darknets: How
    People Got Caught
    \useURL[url2421][https://www.youtube.com/watch?v=eQ2OZKitRwc]\from[url2421]
    \useURL[url2422][https://yewtu.be/watch?v=eQ2OZKitRwc][][{[}Invidious{]}]\from[url2422]
    (\useURL[url2423][https://www.defcon.org/images/defcon-22/dc-22-presentations/Crenshaw/DEFCON-22-Adrian-Crenshaw-Dropping-Docs-on-Darknets-How-People-Got-Caught-UPDATED.pdf][][Slides]\from[url2423]
    \useURL[url2424][https://web.archive.org/web/https://www.defcon.org/images/defcon-22/dc-22-presentations/Crenshaw/DEFCON-22-Adrian-Crenshaw-Dropping-Docs-on-Darknets-How-People-Got-Caught-UPDATED.pdf][][{[}Archive.org{]}]\from[url2424])
  \item
    2017, Ochko123 - How the Feds Caught Russian Mega-Carder Roman
    Seleznev
    \useURL[url2425][https://www.youtube.com/watch?v=6Chp12sEnWk]\from[url2425]
    \useURL[url2426][https://yewtu.be/watch?v=6Chp12sEnWk][][{[}Invidious{]}]\from[url2426]
  \item
    2017,
    \useURL[url2427][https://www.youtube.com/watch?v=1nvYGi7-Lxo][][DEF
    CON 25 - Svea Eckert, Andreas Dewes - Dark Data]\from[url2427]
    \useURL[url2428][https://yewtu.be/watch?v=1nvYGi7-Lxo][][{[}Invidious{]}]\from[url2428]
  \item
    2015, DEF CON 22, Zoz, Don't Fuck It Up!
    \useURL[url2429][https://www.youtube.com/watch?v=J1q4Ir2J8P8]\from[url2429]
    \useURL[url2430][https://yewtu.be/watch?v=J1q4Ir2J8P8][][{[}Invidious{]}]\from[url2430]
  \item
    2020, Bad Opsec, How Tor Users Got Caught,
    \useURL[url2431][https://www.youtube.com/watch?v=GR_U0G-QGA0]\from[url2431]
    \useURL[url2432][https://yewtu.be/watch?v=GR_U0G-QGA0][][{[}Invidious{]}]\from[url2432]
  \item
    2022, Master of OpSec Masters: A View Through the Prism of Time,
    \useURL[url2433][https://officercia.mirror.xyz/4x2-M4R2cSnID1wpsTO4CQNrMQ5JUFouR-rZ_N4xO-Q]\from[url2433]
    \useURL[url2434][https://web.archive.org/web/20220714213939/https://officercia.mirror.xyz/4x2-M4R2cSnID1wpsTO4CQNrMQ5JUFouR-rZ_N4xO-Q][][{[}Archive.org{]}]\from[url2434]
  \item
    2022, How can you become a one-man-army OSINT specialist?
    \useURL[url2435][https://officercia.mirror.xyz/5KSkJOTgMtvgC36v1GqZ987N-_Oj_zwvGatOk0A47Ws]\from[url2435]
    \useURL[url2436][https://web.archive.org/web/20220718231735/https://officercia.mirror.xyz/5KSkJOTgMtvgC36v1GqZ987N-_Oj_zwvGatOk0A47Ws][][{[}Archive.org{]}]\from[url2436]
  \stopitemize
\stopitemize

It is recommended that you learn about the common ways people mess up
OPSEC
\useURL[url2437][https://dan-kir.github.io/2022/05/26/OPSEC-notes.html]\from[url2437]
\useURL[url2438][https://web.archive.org/web/20220717064253/https://dan-kir.github.io/2022/05/26/OPSEC-notes.html][][{[}Archive.org{]}]\from[url2438].
Whatever you do, take OPSEC seriously, and
\useURL[url2439][https://www.youtube.com/watch?v=J1q4Ir2J8P8][][Don't
Fuck It Up!]\from[url2439]

{\bf FINAL OPSEC DISCLAIMER: KEEP YOUR ANONYMOUS IDENTITIES COMPLETELY
SANDBOXED FROM YOUR NORMAL ENVIRONMENT AND REAL IDENTITY. DO NOT SHARE
ANYTHING BETWEEN THE ANONYMOUS ENVIRONMENTS AND THE REAL IDENTITY
ENVIRONMENT. KEEP THEM COMPLETELY COMPARTMENTALIZED ON EVERY LEVEL. MOST
OPSEC FAILURES ARE DUE TO USERS ACCIDENTALLY LEAKING INFORMATION RATHER
THAN TECHNICAL FAILURES.}

\section[title={What to do if you detected tampering or searching
?},reference={what-to-do-if-you-detected-tampering-or-searching}]

\startitemize
\item
  In the case of a laptop, they likely placed a key-logger, and possible
  network and gps capabilities. We recommend to open your laptop take
  the drive (which should be fully encrypted) and leave for a safe place
  and abandonning the laptop. Do not try to remove the \quotation{bug}
  as this could put you in physical danger.
\item
  If you detected searching of your room, home\ldots{} Again we
  recommend leaving for a safe place while abandoning everything in the
  room that could also be \quotation{bugged}.
\item
  Do your best to not let your adversary suspect or know you detected
  the search and/or the tampering. Be creative. Call a friend for
  example just to tell you're gonna go to the supermarket to buy food.
\stopitemize

\section[title={{\bf If you think you got
burned:}},reference={if-you-think-you-got-burned}]

\subsection[title={If you have some
time:},reference={if-you-have-some-time}]

\startitemize
\item
  Don't Panic.
\item
  Delete everything you can from the internet related to that specific
  identity (accounts, comments \ldots{}).
\item
  Delete everything offline you have related to that identity including
  the backups.
\item
  (If using a physical SIM) Destroy the SIM card and trash it in a
  random trash can somewhere.
\item
  (If using a physical Burner Phone) Erase then destroy the Burner phone
  and trash it in a random trashcan somewhere.
\item
  Securely erase the laptop hard drive and then ideally proceed to
  physically destroy the HDD/SSD/Laptop and trash it somewhere.
\item
  Do the same with your backups.
\item
  Keep the details of your lawyer nearby or if needed, call them in
  advance to prepare your case if needed.
\item
  Return to your normal activities and hope for the best.
\stopitemize

\subsection[title={If you have no
time:},reference={if-you-have-no-time}]

\startitemize
\item
  Don't Panic.
\item
  Try to shut down/hibernate the laptop as soon as possible and hope for
  the best. If you are fast enough, your memory should decay or be
  cleaned, and your data should be mostly safe for the time being.
\item
  Contact a lawyer if possible and hope for the best and if you cannot
  contact one (yet), {\bf try to remain silent (if your country allows
  it) until you have a lawyer to help you and if your law allows you to
  remain silent.}
\stopitemize

Keep in mind that many countries have specific laws to compel you to
reveal your passwords that could override your \quotation{right to
remain silent}. See this Wikipedia article:
\useURL[url2440][https://en.wikipedia.org/wiki/Key_disclosure_law]\from[url2440]
\useURL[url2441][https://wikiless.org/wiki/Key_disclosure_law][][{[}Wikiless{]}]\from[url2441]
\useURL[url2442][https://web.archive.org/web/https://en.wikipedia.org/wiki/Key_disclosure_law][][{[}Archive.org{]}]\from[url2442]
and this other visual resource with law references
\useURL[url2443][https://www.gp-digital.org/world-map-of-encryption/]\from[url2443]
\useURL[url2444][https://web.archive.org/web/https://www.gp-digital.org/world-map-of-encryption/][][{[}Archive.org{]}]\from[url2444].

\section[title={A small final editorial
note:},reference={a-small-final-editorial-note}]

After reading this whole guide, we hope you will have gained some
additional beneficial insight about privacy and anonymity. It is clear
now, in my humble opinion, that the world we live in has only a few safe
harbors remaining where one could have a reasonable expectation of
privacy and even less so anonymity. Many will often say that 1984 by
George Orwell was not meant to be an instruction book. Yet today this
guide and its many references should, we hope, reveal to you how far
down we are in the rabbit hole.

You should also know that most of the digital information described in
length in this guide can be forged or tampered with by a motivated
adversary for any purpose. Even if you do manage to keep secrets from
prying eyes, anyone can fabricate anything to fit their narrative:

\startitemize
\item
  IP logs, DNS logs, Geolocation logs, and Connection logs can be forged
  or tampered with by anyone using a simple text editor without leaving
  traces.
\item
  Files and their properties can be created, altered, and timestamped by
  anyone using simple utilities without leaving traces.
\item
  EXIF information of pictures and videos can be altered by anyone using
  simple utilities without leaving traces.
\item
  Digital Evidence (Pictures, Videos, Voice Recordings, E-Mails,
  Documents\ldots{}) be crafted, placed, removed, or destroyed with ease
  without leaving traces.
\stopitemize

You should not hesitate to question this type of information from any
source in this age of disinformation.

{\bf \quotation{A lie can travel halfway around the world while the
truth is putting on its shoes}}\footnote{Quote Investigator, A Lie Can
  Travel Halfway Around the World While the Truth Is Putting On Its
  Shoes
  \useURL[url2445][https://quoteinvestigator.com/2014/07/13/truth/]\from[url2445]
  \useURL[url2446][https://web.archive.org/web/https://quoteinvestigator.com/2014/07/13/truth/][][{[}Archive.org{]}]\from[url2446]}

Please keep thinking for yourself, use critical thinking, and keep an
open mind. \quotation{Sapere Aude} (Dare to know!).

{\bf \quotation{In the end the Party would announce that two and two
made five, and you would have to believe it} -- George Orwell, 1984,
Book One, Chapter Seven.}

Consider helping others (see \goto{Helping others staying
anonymous}[helping-others-staying-anonymous])

\section[title={Donations:},reference={donations}]

{\bf This project has no funding or sponsoring, and donations are more
than welcome.}

See:
\useURL[url2447][https://anonymousplanet.org/donations.html]\from[url2447]

{\bf (Please do verify the checksum and GPG signature of this file for
authenticity, this is explained in the README of the repository if you
do not know how to do that)}.

\section[title={Helping others staying
anonymous:},reference={helping-others-staying-anonymous}]

If you want to give a hand to users facing censorship and oppression,
please consider helping them by helping the Tor Network. You can do so
in several ways:

\startitemize
\item
  The Easiest:

  \startitemize[packed]
  \item
    Using the Snowflake addon on your browser
    (\useURL[url2448][https://snowflake.torproject.org/]\from[url2448]
    \useURL[url2449][https://web.archive.org/web/https://snowflake.torproject.org/][][{[}Archive.org{]}]\from[url2449])
  \stopitemize
\item
  Slightly more work:

  \startitemize
  \item
    Running a Tor relay node
    (\useURL[url2450][https://community.torproject.org/relay/]\from[url2450]
    \useURL[url2451][https://web.archive.org/web/https://community.torproject.org/relay/][][{[}Archive.org{]}]\from[url2451])

    \startitemize
    \item
      See {[}Recommended VPS hosting providers{]}
    \item
      Additional Tutorial:
      \useURL[url2452][https://torrelay.ca/]\from[url2452]
      \useURL[url2453][https://web.archive.org/web/https://torrelay.ca/][][{[}Archive.org{]}]\from[url2453]
    \stopitemize
  \stopitemize
\stopitemize

If you want a bit more challenge, you can also run a Tor Exit node
anonymously using the recommended VPS providers above.

For this, see
\useURL[url2454][https://blog.torproject.org/tips-running-exit-node]\from[url2454]
\useURL[url2455][https://web.archive.org/web/https://blog.torproject.org/tips-running-exit-node][][{[}Archive.org{]}]\from[url2455]

This project for instance is running several Tor Exit nodes using
donations to fund. You can see them here:
\useURL[url2456][https://metrics.torproject.org/rs.html\#search/family:970814F267BF3DE9DFF2A0F8D4019F80C68AEE26]\from[url2456]

\section[title={Acknowledgments:},reference={acknowledgments}]

\startitemize
\item
  {\bf Very Special Thanks to Edward Snowden and who inspired me to
  write this guide (buy and read his book please
  \useURL[url2457][https://en.wikipedia.org/wiki/Permanent_Record_(autobiography)]\from[url2457]}
  \useURL[url2458][https://wikiless.org/wiki/Permanent_Record_(autobiography)][][{[}Wikiless{]}]\from[url2458]
  \useURL[url2459][https://web.archive.org/web/https://en.wikipedia.org/wiki/Permanent_Record_(autobiography)][][{[}Archive.org{]}]\from[url2459]{\bf )}
\item
  {\bf Huge thanks to the people who donated to this project
  anonymously}
\item
  {\bf Special Thanks to LiJu09 for helping with the Light theme of the
  website
  (}\useURL[url2460][https://github.com/LiJu09]\from[url2460]{\bf )}
\item
  {\bf Special Thanks to Simplelogin.io people for providing a free
  lifetime premium access to their service}
\item
  Thanks to GitHub for hosting this project and the many people who
  starred it
\item
  Thanks to Njal.la for providing a domain name and VPS hosting
  anonymously
\item
  Thanks to 1984.is for providing VPS hosting anonymously
\item
  Thanks to all the people who contributed and shared this guide with
  others
\item
  Thanks to the people at the Internet Archive and Archive.today
  projects
\item
  Thanks to the people at the Monero project
\item
  Thanks to the people at the Zcash project
\item
  Thanks to the people at the Wikipedia project
\item
  Thanks to the people at the Tails project
\item
  Thanks to the people at the HiddenVM project
\item
  Thanks to the people at the Whonix project
\item
  Thanks to the people at the Qubes OS project
\item
  Thanks to the people at the Veracrypt project
\item
  Thanks to the people at the Tor and OONI Projects
\item
  Thanks to the people at the Briar project
\item
  Thanks to the people at the OnionShare project
\item
  Thanks to the people at the Element/Matrix project
\item
  Thanks to the people at the Jami project
\item
  Thanks to the people at the KeePass and KeePassXC projects
\item
  Thanks to the people at the Fawkes project
\item
  Thanks to the people at the VirtualBox project
\item
  Thanks to the people at the ExifCleaner, Mat2, and ExifTool projects
\item
  Thanks to the people at the Go Incognito Project from Techlore
\item
  Thanks to Didier Stevens for his pdf-tools
\item
  Thanks to the people at the EFF
\item
  Thanks to the people at the SANS
\item
  Thanks to the people at the OWASP Project
\item
  Thanks to the people at the Privacyguides.org project
\item
  Thanks to the people at BlackHat, DEF CON, and CCC
\item
  Thanks to the people at Bellingcat and other OSINT/Forensics
  researchers {\bf (and sorry for making their life more difficult with
  this guide)}
\item
  Thanks to the makers of the Social Dilemma documentary {\bf (go watch
  it if you did not yet)}
\item
  Thanks to Michael Bazzell and his great OSINT books which we recommend
  you {\bf buy} at
  \useURL[url2461][https://inteltechniques.com]\from[url2461]
\item
  Thanks to Randall Munroe at XKCD for his great and insightful
  webcomics.
\item
  Thanks to the people at the various few commercial entities who do
  take privacy seriously
\item
  Thanks to the whole open-source community and especially the Linux
  community
\item
  Thanks to the many researchers, journalists, lawyers, and individuals
  referenced in this guide for their various research and projects
\item
  Thanks to the following individuals for their input and help:

  \startitemize
  \item
    NobodySpecial,
    \useURL[url2462][https://git.envs.net/NobodySpecial/whoami]\from[url2462]
  \item
    Mahanihaka
  \stopitemize
\stopitemize

\section[title={Appendix A: Windows
Installation},reference={appendix-a-windows-installation}]

This is the Windows 10/11 installation process that should be valid for
any Windows 10/11 install within this guide.

\subsubsection[title={Windows 10 (See below for Windows
11)},reference={windows-10-see-below-for-windows-11}]

\subsection[title={Installation:},reference={installation-5}]

DO NOT CONNECT WINDOWS TO ANY NETWORK DURING THE INSTALLATION PROCESS
(This will allow us to create a Local Account and not use a Microsoft
account and it will also prevent any telemetry from being sent out
during the install process).

\startitemize
\item
  (Only for VirtualBox VM Install) Go into the VirtualBox Machine
  Settings menu. Select network. Unplug the cable.
\item
  Click \quotation{Install Now}
\item
  Select \quotation{I don't have a product key}
\item
  Select the flavor you want:

  \startitemize
  \item
    Host OS: Use

    \startitemize
    \item
      You intend to use Plausible Deniability: Windows Home
    \item
      You do not intend to use Plausible Deniability: Windows Pro
    \stopitemize
  \item
    VM OS: Use Windows Pro or Windows Pro N
  \stopitemize
\item
  Select Custom
\item
  Storage:

  \startitemize
  \item
    If this is a simple OS installation (Host OS with Simple Encryption)
    or VM without encryption, {\bf select the whole disk} and proceed
    with the installation (skip the next step).
  \item
    If this is part of a plausible deniability encryption set up on the
    Host OS:

    \startitemize
    \item
      If you are installing Windows for the first time (Hidden OS):

      \startitemize
      \item
        Delete the current partitions
      \item
        Create the First partition with at least 50GB of disk space
        (about a third of the total disk space).
      \item
        Create a second partition with the remaining two-thirds of the
        total disk space.
      \stopitemize
    \item
      If you are installing Windows for the second time (Decoy OS):

      \startitemize
      \item
        Do not Delete the current partitions
      \item
        Install Windows on the first partition you created during the
        first install.
      \stopitemize
    \item
      Proceed with the install in the first partition
    \stopitemize
  \stopitemize
\item
  Start the install process
\item
  Select the Region \quotation{United States}
\item
  Skip the additional Keyboard Layout
\item
  Select \quotation{I don't have internet}
\item
  Select \quotation{Continue with limited setup}
\item
  Create a username of your choice.
\item
  Use a password of your choice.
\item
  Select all three security questions and answer whatever you want (not
  real data).
\item
  Do not use Online Speech Recognition
\item
  Do not let the app use your location
\item
  Do not enable \quotation{find my device}
\item
  Only send \quotation{required diagnostic data}
\item
  Do not improve Inking and Typing
\item
  Do not get any improved tailored experience.
\item
  Do not let apps use Advertising ID
\item
  Select \quotation{Now} at the Cortana prompt
\stopitemize

\subsection[title={Privacy Settings:},reference={privacy-settings}]

\startitemize
\item
  When the install is finished, get into Settings > Go on the top left
  menu icon and sekect Privacy and Security

  \startitemize
  \item
    When the install is finished, get into Settings > Privacy and do the
    following:
  \item
    General: All Off
  \item
    Speech: Off
  \item
    Inking and Typing: Off
  \item
    Diagnostic: Required level at off, options on OFF, {\bf Delete your
    data}, frequency set to Never
  \item
    Activity History: all Off and Clear the history
  \item
    Location, all Off (change button) and clear it
  \item
    Camera: Disable it (change button)
  \item
    Microphone: Disable it (change button)
  \item
    Voice Activation: All Off
  \item
    Notification: Disable it (change button)
  \item
    Account info: Disable it (change button)
  \item
    Contact info: Disable it (change button)
  \item
    Calendar access: Disable it (change button)
  \item
    Phone calls: Disable it (change button)
  \item
    Call History: Disable it (change button)
  \item
    E-mail: Disable it (change button)
  \item
    Tasks: Disable it (change button)
  \item
    Messaging: Disable it (change button)
  \item
    Radios: Disable it (change button)
  \item
    Other devices: Set to Off
  \item
    Background Apps: Disable it (change button)
  \item
    App Diagnostics: Disable it (change button)
  \item
    Automatic file download disabled
  \item
    Documents: Disable it (change button)
  \item
    Pictures: Disable it (change button)
  \item
    Videos: Disable it (change button) and set to off
  \item
    File system: Disable it (change button)
  \item
    Disable File Indexing by going into the \quotation{Indexing Options}
    (Go into Windows 11 Control Panel, Switch the view to
    \quotation{Large Icons} and select Indexing Options.
  \item
    Modify the list and remove all locations.
  \item
    Go into Advanced and click Rebuild.
  \item
    (Host OS only) Disable Bluetooth in the settings:
  \item
    Go into Settings
  \item
    Go into Devices
  \item
    Select Bluetooth and turn it off
  \stopitemize
\item
  (Host OS Only) Tape the Webcam and Microphone anyway for extra
  paranoia.
\item
  (Host OS Only) Go into Settings > Network & Internet > Wi-Fi and
  Enable Random Hardware Address.
\stopitemize

\subsubsection[title={Windows 11},reference={windows-11}]

\subsection[title={Installation:},reference={installation-6}]

DO NOT CONNECT WINDOWS TO ANY NETWORK DURING THE INSTALLATION PROCESS
(This will allow us to create a Local Account and not use a Microsoft
account and it will also prevent any telemetry from being sent out
during the install process).

\startitemize
\item
  (Only for VirtualBox VM Install) Go into the VirtualBox Machine
  Settings menu. Select network. Unplug the cable. For this task, you
  can also follow this excellent tutorial by Oracle
  \useURL[url2463][https://blogs.oracle.com/virtualization/post/install-microsoft-windows-11-on-virtualbox]\from[url2463]
  \useURL[url2464][https://web.archive.org/web/https://blogs.oracle.com/virtualization/post/install-microsoft-windows-11-on-virtualbox][][{[}Archive.org{]}]\from[url2464]
\item
  Select your language, currency and keyboard layout
\item
  Click \quotation{Install Now}
\item
  (Only for VirtualBox VM Install) Push Shift and F10 at the same time
\item
  (Only for VirtualBox VM Install) Launch \quotation{regedit} in the
  command prompt
\item
  (Only for VirtualBox VM Install) When the Registry Editor opens,
  navigate to \type{HKEY_LOCAL_MACHINE\SYSTEM\Setup}, right-click on the
  \quotation{Setup} key and select \quotation{New => Key}. When prompted
  to name the key, enter \quotation{LabConfig} and press enter.
\item
  (Only for VirtualBox VM Install) Now right-click on the
  \quotation{LabConfig} key and select \quotation{New => DWORD (32-bit)}
  value and create a value named \quotation{BypassTPMCheck}, and set its
  data to \quotation{1}. With the same steps create the
  \quotation{BypassRAMCheck} and \quotation{BypassSecureBootCheck}
\item
  Select \quotation{I don't have a product key}
\item
  Accept the agreement
\item
  Select the flavor you want:

  \startitemize
  \item
    Host OS: Use

    \startitemize
    \item
      You intend to use Plausible Deniability: Windows Home
    \item
      You do not intend to use Plausible Deniability: Windows Pro
    \stopitemize
  \item
    VM OS: Use Windows Pro or Windows Pro N
  \stopitemize
\item
  Select Custom Install
\item
  Storage:

  \startitemize
  \item
    If this is a simple OS installation (Host OS with Simple Encryption)
    or VM without encryption, {\bf select the whole disk} and proceed
    with the installation (skip the next step).
  \item
    If this is part of a plausible deniability encryption set up on the
    Host OS:

    \startitemize
    \item
      If you are installing Windows for the first time (Hidden OS):

      \startitemize
      \item
        Delete the current partitions
      \item
        Create the First partition with at least 50GB of disk space
        (about a third of the total disk space).
      \item
        Create a second partition with the remaining two-thirds of the
        total disk space.
      \stopitemize
    \item
      If you are installing Windows for the second time (Decoy OS):

      \startitemize
      \item
        Do not Delete the current partitions
      \item
        Install Windows on the first partition you created during the
        first install.
      \stopitemize
    \item
      Proceed with the install in the first partition
    \stopitemize
  \stopitemize
\item
  Start the install process
\item
  Select the Region \quotation{United States}
\item
  Select the Keyboard Layout and skip a second layout
\item
  Select \quotation{I don't have internet}
\item
  Select \quotation{Continue with limited setup}
\item
  Create a username of your choice.
\item
  Use a password of your choice.
\item
  Select all three security questions and answer whatever you want (not
  real data).
\item
  Ddisable Location
\item
  Disable find my device
\item
  Disable optional diagnostic data
\item
  Only send \quotation{required diagnostic data}
\item
  Do not improve Inking and Typing
\item
  Disable the tailored experience.
\item
  Disable the Advertising ID
\item
  Click Accept
\stopitemize

\subsection[title={Privacy Settings:},reference={privacy-settings-1}]

\startitemize
\item
  When the install is finished, get into Settings > Privacy and do the
  following:

  \startitemize
  \item
    General: All Off
  \item
    Speech: Off
  \item
    Inking and Typing: Off
  \item
    Diagnostic: Required level at off, options on OFF, {\bf Delete your
    data}, frequency set to Never
  \item
    Activity History: all Off and Clear the history
  \item
    Location, all Off (change button) and clear it
  \item
    Camera: Disable it (change button)
  \item
    Microphone: Disable it (change button)
  \item
    Voice Activation: All Off
  \item
    Notification: Disable it (change button)
  \item
    Account info: Disable it (change button)
  \item
    Contact info: Disable it (change button)
  \item
    Calendar access: Disable it (change button)
  \item
    Phone calls: Disable it (change button)
  \item
    Call History: Disable it (change button)
  \item
    E-mail: Disable it (change button)
  \item
    Tasks: Disable it (change button)
  \item
    Messaging: Disable it (change button)
  \item
    Radios: Disable it (change button)
  \item
    Other devices: Set to Off
  \item
    Background Apps: Disable it (change button)
  \item
    App Diagnostics: Disable it (change button)
  \item
    Automatic file download disabled
  \item
    Documents: Disable it (change button)
  \item
    Music Library: Disable it (change button)
  \item
    Pictures: Disable it (change button)
  \item
    Videos: Disable it (change button) and set to off
  \item
    File system: Disable it (change button)
  \item
    Disable File Indexing by going into the \quotation{Indexing Options}
    (Go into Windows 11 Control Panel, Switch the view to
    \quotation{Large Icons} and select Indexing Options.
  \item
    Modify the list and remove all locations.
  \item
    Go into Advanced and click Rebuild.
  \item
    (Host OS only) Disable Bluetooth in the settings:
  \item
    Go into Settings
  \item
    Go into Devices
  \item
    Select Bluetooth and turn it off
  \stopitemize
\item
  (Host OS Only) Tape the Webcam and Microphone anyway for extra
  paranoia.
\item
  (Host OS Only) Go into Settings > Network & Internet > Wi-Fi and
  Enable Random Hardware Address.
\stopitemize

\section[title={Appendix B: Windows Additional Privacy
Settings},reference={appendix-b-windows-additional-privacy-settings}]

As written earlier in this guide and as noted by
PrivacyGuides.org\footnote{Privacyguides.org, Operating Systems
  \useURL[url2465][https://www.privacyguides.org/tools/\#operating-systems]\from[url2465]
  \useURL[url2466][https://web.archive.org/web/https://www.privacyguides.org/tools/\#operating-systems][][{[}Archive.org{]}]\from[url2466]},
Windows 10/11 is a privacy nightmare. And disabling everything during
and after the installation using the settings available to you is not
enough. The amount of telemetry data collected by Microsoft is
staggering and could defeat your attempts at keeping secrets. You will
need to download and use a couple of utilities to (hopefully) force
Windows 10/11 into not sending data back to Microsoft.

Here are the steps in detail:

\startitemize
\item
  {\bf DO NOT EVER USE A MICROSOFT ACCOUNT TO LOG IN: If you are, you
  should be re-installing this Windows Machine without connecting to a
  network and use a local account instead.}
\item
  Do these steps from a different computer. Do not connect Windows 10/11
  to the internet before those settings are applied. You can download
  and copy those to the USB key (for transfer onto a Windows 10/11 fresh
  installation) or if it is a VM, you can transfer them to the VM within
  Virtualbox (VM Settings > General > Advanced > Drag n Drop > Enable
  Host to Guest).
\item
  (For more advanced users) Download and install W10Privacy from
  \useURL[url2467][https://www.w10privacy.de/english-home/]\from[url2467]
  \useURL[url2468][https://web.archive.org/web/https://www.w10privacy.de/english-home/][][{[}Archive.org{]}]\from[url2468]

  \startitemize[packed]
  \item
    Open the app as Administrator (right-click > more > run as
    administrator)
  \item
    Check all the recommended (Green) settings and save.
  \item
    Optional but recommended (but could break things, use at your own
    risk), also check the orange/red settings, and save.
  \item
    Reboot
  \stopitemize
\item
  Download and run WindowsSpyBlocker from
  \useURL[url2469][https://crazymax.dev/WindowsSpyBlocker/download/]\from[url2469]
  \useURL[url2470][https://web.archive.org/web/https://crazymax.dev/WindowsSpyBlocker/download/][][{[}Archive.org{]}]\from[url2470]

  \startitemize[packed]
  \item
    Type 1 and go into Telemetry
  \item
    Type 1 and go into Firewall
  \item
    Type 2 and add Spy Rules
  \item
    Reboot
  \stopitemize
\item
  Also, consider using ShutUp10++ from
  \useURL[url2471][https://www.oo-software.com/en/shutup10]\from[url2471]
  \useURL[url2472][https://web.archive.org/web/https://www.oo-software.com/en/shutup10][][{[}Archive.org{]}]\from[url2472]

  \startitemize[packed]
  \item
    Enable at least all the recommended settings
  \stopitemize
\item
  Finally, again for users with moderate skills, consider installing
  Safing Portmaster from
  \useURL[url2473][https://safing.io/portmaster/]\from[url2473]
  \useURL[url2474][https://web.archive.org/web/https://safing.io/portmaster][][{[}Archive.org{]}]\from[url2474]
  {\bf (Warning: there might be issues with some VPN clients. See:
  \useURL[url2475][https://docs.safing.io/portmaster/install/status/vpn-compatibility]\from[url2475]}
  \useURL[url2476][https://web.archive.org/web/https://safing.io/portmaster/][][{[}Archive.org{]}]\from[url2476]
\item
  Go back one last time to the settings to delete Diagnostic and Delete
  all Data.
\stopitemize

These measures added to the settings during installation should be
hopefully sufficient to prevent Microsoft from snooping on your OS.

{\bf You will need to update and re-run those utilities frequently and
after any Windows major update as they tend to silently re-enable
telemetry using those updates.}

{\bf As a bonus, it could be interesting to also consider Hardening your
Windows Host OS somewhat. See
\useURL[url2477][https://github.com/beerisgood/windows10_hardening]\from[url2477]}
\useURL[url2478][https://web.archive.org/web/https://github.com/beerisgood/windows10_hardening][][{[}Archive.org{]}]\from[url2478]
(This is a security guide, not a privacy guide. If you use this guide,
do not enable Hyper-V as it does not play well with Virtualbox, and do
not enable features that were specifically disabled for privacy reasons
earlier. Such as SmartScreen, cloud protection\ldots{})

\section[title={Appendix C: Windows Installation Media Creation (Windows
10) or Download (Windows
11)},reference={appendix-c-windows-installation-media-creation-windows-10-or-download-windows-11}]

\subsection[title={Windows 10},reference={windows-10}]

These are the steps to create a Windows 10 (21H1) Installation Media
using this tool and instructions:

\useURL[url2479][https://www.microsoft.com/en-us/software-download/windows10]\from[url2479]
\useURL[url2480][https://web.archive.org/web/https://www.microsoft.com/en-us/software-download/windows10][][{[}Archive.org{]}]\from[url2480]

\startitemize
\item
  Download the tool and execute it from your Download folder.
\item
  Agree to the terms
\item
  Select the process to Create an installation Media.
\item
  Select Windows 10 64 Bits edition with the language of your choice.
\item
  Pick which process you want:

  \startitemize
  \item
    If installing on a physical computer: Select USB Flash Drive.
  \item
    If installing on a Virtual Machine: Select ISO file and save it.
  \stopitemize
\item
  Proceed
\stopitemize

\subsection[title={Windows 11},reference={windows-11-1}]

\startitemize[packed]
\item
  Go to https://www.microsoft.com/software-download/windows11 and
  download the ISO.
\stopitemize

\section[title={Appendix D: Using System Rescue to securely wipe an SSD
drive.},reference={appendix-d-using-system-rescue-to-securely-wipe-an-ssd-drive.}]

These instructions are valid for all Operating Systems:

\startitemize
\item
  System Rescue:

  \startitemize
  \item
    Create a System Rescue USB disk following these instructions
    \useURL[url2481][https://www.system-rescue.org/Installing-SystemRescue-on-a-USB-memory-stick/]\from[url2481]
    \useURL[url2482][https://web.archive.org/web/https://www.system-rescue.org/Installing-SystemRescue-on-a-USB-memory-stick/][][{[}Archive.org{]}]\from[url2482]
    (download the ISO and write to a USB stick with Rufus).
  \item
    Disable Secure Boot in your BIOS/UEFI settings and change the boot
    order to the USB disk (System Rescue bootloader is not signed and
    will not boot with secure boot enabled).
  \item
    Follow the instructions to change the keyboard layout by typing
    \quotation{stkmap}.
  \item
    (optional) Run startx afterward to start a graphical environment.
  \stopitemize
\item
  SATA SSD:

  \startitemize
  \item
    (If you ran startx) Open a terminal
  \item
    ATA Secure Erase:

    \startitemize
    \item
      Follow one of these tutorials

      \startitemize
      \item
        \useURL[url2483][https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing]\from[url2483]
        \useURL[url2484][https://web.archive.org/web/https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing][][{[}Archive.org{]}]\from[url2484]
      \item
        \useURL[url2485][https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase]\from[url2485]
        \useURL[url2486][https://web.archive.org/web/https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase][][{[}Archive.org{]}]\from[url2486]
      \item
        \useURL[url2487][https://tinyapps.org/docs/wipe_drives_hdparm.html]\from[url2487]
        \useURL[url2488][https://web.archive.org/web/https://tinyapps.org/docs/wipe_drives_hdparm.html][][{[}Archive.org{]}]\from[url2488]
      \stopitemize
    \stopitemize
  \item
    ATA Sanitize:

    \startitemize[packed]
    \item
      Follow this tutorial
      \useURL[url2489][https://tinyapps.org/docs/ata_sanitize_hdparm.html]\from[url2489]
      \useURL[url2490][https://web.archive.org/web/https://tinyapps.org/docs/ata_sanitize_hdparm.html][][{[}Archive.org{]}]\from[url2490]
    \stopitemize
  \stopitemize
\item
  NVMe SSD:

  \startitemize
  \item
    (If you ran startx) Open a terminal
  \item
    Follow one of these tutorials:

    \startitemize
    \item
      \useURL[url2491][https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing]\from[url2491]
      \useURL[url2492][https://web.archive.org/web/https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing][][{[}Archive.org{]}]\from[url2492]
    \item
      \useURL[url2493][https://tinyapps.org/docs/nvme-secure-erase.html]\from[url2493]
      \useURL[url2494][https://web.archive.org/web/https://tinyapps.org/docs/nvme-secure-erase.html][][{[}Archive.org{]}]\from[url2494]
    \item
      \useURL[url2495][https://tinyapps.org/docs/nvme-sanitize.html]\from[url2495]
      \useURL[url2496][https://web.archive.org/web/https://tinyapps.org/docs/nvme-sanitize.html][][{[}Archive.org{]}]\from[url2496]
    \stopitemize
  \stopitemize
\stopitemize

\section[title={Appendix E:
Clonezilla},reference={appendix-e-clonezilla}]

\startitemize
\item
  Get Clonezilla by just following these instructions:
  \useURL[url2497][https://clonezilla.org/liveusb.php]\from[url2497]
  \useURL[url2498][https://web.archive.org/web/https://clonezilla.org/liveusb.php][][{[}Archive.org{]}]\from[url2498]
  (I recommend the Alternative version AMD64 that should work with most
  recent laptops)
\item
  Boot from Clonezilla
\item
  Follow these steps to make a backup:
  \useURL[url2499][https://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/01_Save_disk_image]\from[url2499]
  \useURL[url2500][https://web.archive.org/web/https://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/01_Save_disk_image][][{[}Archive.org{]}]\from[url2500]

  \startitemize
  \item
    {\bf If you are backing up a disk with simple Encryption, encryption
    of the backup is not required since you are backing up an already
    encrypted disk, but you can still encrypt the backup anyway if you
    want additional security (and slower backup).}
  \item
    {\bf If you intend to back up a device with plausible deniability
    encryption, we strongly recommend against it as this backup image
    could be used to prove the existence of the hidden volume using
    forensics techniques as explained earlier. Do not make an image
    backup of the partition containing your hidden OS.}
  \stopitemize
\item
  You are done, if you need to restore, follow these instructions:
  \useURL[url2501][https://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/02_Restore_disk_image]\from[url2501]
  \useURL[url2502][https://web.archive.org/web/https://clonezilla.org/show-live-doc-content.php?topic=clonezilla-live/doc/02_Restore_disk_image][][{[}Archive.org{]}]\from[url2502]
\stopitemize

Each backup could take a while depending on the speed of your laptop and
the speed of your external drive. In my experience, expect about 1 hour
per backup depending on the drive size and the write speed of your
backup media (my tests were done backing up 256GB SSDs on a USB 3.0
7200rpm HDD).

\section[title={Appendix F: Diskpart},reference={appendix-f-diskpart}]

Diskpart is a Windows utility that can be used to perform various
operations on your hard drive. In this case, You will use Diskpart to
show the Disk ID but also change it if necessary.

This could be needed if you restore a backup on a new HDD/SSD that has
an ID that differs from the one backed up and Windows could refuse to
boot.

Diskpart can be run from any Windows environment using a command prompt.
This includes recovery disks created by utilities such as Macrium
Reflect, any Windows Installation media, EaseUS Todo Free rescue disks.

\startitemize
\item
  {\bf Displaying the disk ID}

  \startitemize
  \item
    Run Diskpart to enter the Diskpart utility
  \item
    Issue the \type{list disk} command to list the disks
  \item
    Issue the \type{sel disk x} (replace x with your system disk) to
    select your system disk
  \item
    Issue the \type{detail disk} to show the details of this disk
  \item
    Take note of the disk ID (this should be done BEFORE backing up your
    disks).
  \stopitemize
\item
  {\bf Changing the disk ID}

  \startitemize
  \item
    This step should only be done if, after restoring a full disk backup
    to a new hard drive, Windows refuses to boot
  \item
    Issue the same commands as above on the target new disk
  \item
    Issue, in addition, the command \type{uniqueid disk id=02345678}
    (where you replace the id by the one you noted before)
  \stopitemize
\stopitemize

\section[title={Appendix G: Safe Browser on the Host
OS},reference={appendix-g-safe-browser-on-the-host-os}]

\subsection[title={If you can use
Tor:},reference={if-you-can-use-tor-2}]

This guide will {\bf only recommend} using Tor Browser within the host
OS because it has the best protection by default. The only other
acceptable option in my opinion would be to use Brave Browser with a Tor
tab {\bf but keep in mind that Brave themselves recommend the use of Tor
Browser if you feel your safety depends on being anonymous}
\useURL[url2503][https://web.archive.org/web/https://www.whonix.org/wiki/Chat][][{[}Archive.org{]}]\from[url2503]{\bf :
\quotation{If your personal safety depends on remaining anonymous, we
highly recommend using Tor Browser instead of Brave Tor windows.}.}

This Browser on the host OS will only be used to download various
utilities and will never be used for actual sensitive activities.

Refer to \goto{Appendix Y: Installing and using desktop Tor
Browser}[appendix-y-installing-and-using-desktop-tor-browser].

If you are experiencing issues connecting to Tor due to Censorship or
Blocking, you might consider using Tor bridges as explained here:
\useURL[url2504][https://bridges.torproject.org/]\from[url2504]
\useURL[url2505][https://web.archive.org/web/https://bridges.torproject.org/][][{[}Archive.org{]}]\from[url2505]

{\bf Use this browser for all the next steps within the host OS unless
instructed otherwise.}

\subsection[title={If you cannot use
Tor:},reference={if-you-cannot-use-tor-7}]

Because it is too dangerous/risky/suspicious. We would recommend as a
last resort using Firefox, or Brave only using Private Windows for now.

See \goto{Appendix P: Accessing the internet as safely as possible when
Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
before continuing.

Only do this from a different safe public Wi-Fi every time (See
\goto{Find some safe places with decent public
Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi]) and using a
long-range connection (See \goto{Appendix Q: Using long-range Antenna to
connect to Public Wi-Fis from a safe
distance:}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance]).

Clean all the data from the browser after each use.

{\bf Use this method for all the next steps within the host OS unless
instructed otherwise.}

\section[title={Appendix H: Windows Cleaning
Tools},reference={appendix-h-windows-cleaning-tools}]

In this guide we will recommend two-third native tools and two
third-party tools:

\startitemize
\item
  Native Tools:

  \startitemize[packed]
  \item
    Windows 10/11 Disk Cleanup Utility:
    \useURL[url2506][https://support.microsoft.com/en-us/windows/disk-cleanup-in-windows-10-8a96ff42-5751-39ad-23d6-434b4d5b9a68]\from[url2506]
    \useURL[url2507][https://web.archive.org/web/https://support.microsoft.com/en-us/windows/disk-cleanup-in-windows-10-8a96ff42-5751-39ad-23d6-434b4d5b9a68][][{[}Archive.org{]}]\from[url2507]
  \stopitemize
\stopitemize

\startblockquote
This tool will clean up a bunch of things natively. It is not enough,
and we instead recommend using the third-party tools below to clean more
stuff. PrivaZer for instance will use the disk cleanup utility directly
itself and BleachBit will use its own mechanisms.
\stopblockquote

\startitemize[packed]
\item
  Windows 10/11 Optimize Utility (Defrag on HDD Drives):
  \useURL[url2508][https://support.microsoft.com/en-us/windows/defragment-your-windows-10-pc-048aefac-7f1f-4632-d48a-9700c4ec702a]\from[url2508]
  \useURL[url2509][https://web.archive.org/web/https://support.microsoft.com/en-us/windows/defragment-your-windows-10-pc-048aefac-7f1f-4632-d48a-9700c4ec702a][][{[}Archive.org{]}]\from[url2509]
  (yes the tutorial is for Windows 10 but should work on 11 too)
\stopitemize

\startblockquote
For security, this tool is particularly useful on SSD drives at this
\quotation{Optimize} function will in fact force a Disk wide Trim
operation to occur. This will most likely be more than enough to make
sure any deleted data that was not trimmed before for any reason will be
this time. Deleted data with Trim is very unlikely to be recovered as
explained before in this guide.
\stopblockquote

\startitemize
\item
  Third-Party Tools:

  \startitemize
  \item
    The open-source utility BleachBit
    \useURL[url2510][https://www.bleachbit.org/]\from[url2510]
    \useURL[url2511][https://web.archive.org/web/https://www.bleachbit.org/][][{[}Archive.org{]}]\from[url2511]
  \item
    The closed-source utility PrivaZer
    \useURL[url2512][https://privazer.com/]\from[url2512]
    \useURL[url2513][https://web.archive.org/web/https://privazer.com/][][{[}Archive.org{]}]\from[url2513]
  \stopitemize
\stopitemize

I prefer PrivaZer because it has more customization and smarter
features, but we would understand if you do not trust them and prefer
open-source software in which case we would recommend BleachBit which
offers a bit less customization but similar functionalities.

Both these tools can be used for cleaning many things such as:

\startitemize
\item
  The Windows USN journal which stores plenty of information.
\item
  The Windows System Resource Usage Monitor (SRUM)\footnote{Medium.com,
    Digging into the System Resource Usage Monitor (SRUM)
    \useURL[url2514][https://medium.com/velociraptor-ir/digging-into-the-system-resource-usage-monitor-srum-afbadb1a375]\from[url2514]
    \useURL[url2515][https://scribe.rip/velociraptor-ir/digging-into-the-system-resource-usage-monitor-srum-afbadb1a375][][{[}Scribe.rip{]}]\from[url2515]
    \useURL[url2516][https://web.archive.org/web/https://medium.com/velociraptor-ir/digging-into-the-system-resource-usage-monitor-srum-afbadb1a375][][{[}Archive.org{]}]\from[url2516]}.
\item
  Various histories of various programs (such as the recent lists).
\item
  Various logs
\item
  The free (unallocated) space of your hard drive{]}\footnote{SANS,
    Timestamped Registry & NTFS Artifacts from Unallocated Space
    \useURL[url2517][https://www.sans.org/blog/timestamped-registry-ntfs-artifacts-from-unallocated-space/]\from[url2517]
    \useURL[url2518][https://web.archive.org/web/https://www.sans.org/blog/timestamped-registry-ntfs-artifacts-from-unallocated-space/][][{[}Archive.org{]}]\from[url2518]}.
\item
  Secure deletion of files
\item
  Secure wiping of USB drives
\stopitemize

Both these utilities can delete files and can overwrite the free space
after deletion to improve secure deletion even on SSD drives. Remember
this can reduce the lifespan of your SSD drives a bit.

\section[title={Appendix I: Using ShredOS to securely wipe an HDD
drive:},reference={appendix-i-using-shredos-to-securely-wipe-an-hdd-drive}]

Several utilities are recommended (like the old unmaintained
DBAN\footnote{DBAN, \useURL[url2519][https://dban.org/]\from[url2519]
  \useURL[url2520][https://web.archive.org/web/https://dban.org/][][{[}Archive.org{]}]\from[url2520]}
or System Rescue CD
(\useURL[url2521][https://www.system-rescue.org/]\from[url2521]
\useURL[url2522][https://web.archive.org/web/https://www.system-rescue.org/][][{[}Archive.org{]}]\from[url2522]))
for this but we will recommend the use of ShredOS.

Feel free to go with DBAN instead if you want (using this tutorial:
\useURL[url2523][https://www.lifewire.com/how-to-erase-a-hard-drive-using-dban-2619148]\from[url2523]
\useURL[url2524][https://web.archive.org/web/https://www.lifewire.com/how-to-erase-a-hard-drive-using-dban-2619148][][{[}Archive.org{]}]\from[url2524]),
the process is basically the same but will not work out of the box with
UEFI laptops.

If you want to go with System-Rescue, just head to their website and
follow the instructions.

\subsection[title={Windows:},reference={windows-5}]

\startitemize
\item
  Download ShredOS from
  \useURL[url2525][https://github.com/PartialVolume/shredos.x86_64]\from[url2525]
  \useURL[url2526][https://web.archive.org/web/https://github.com/PartialVolume/shredos.x86_64][][{[}Archive.org{]}]\from[url2526]
\item
  Unzip the ISO file
\item
  Download Rufus from \useURL[url2527][https://rufus.ie/]\from[url2527]
  \useURL[url2528][https://web.archive.org/web/https://rufus.ie/][][{[}Archive.org{]}]\from[url2528]
\item
  Launch Rufus
\item
  Select the ShredOS IMG file
\item
  Write it to a USB key
\item
  When done, reboot and boot the USB key (you might have to go into your
  BIOS settings to change the boot order for this).
\item
  Follow the instructions on the screen
\stopitemize

\subsection[title={Linux:},reference={linux-2}]

\startitemize
\item
  Follow instructions on
  \useURL[url2529][https://github.com/PartialVolume/shredos.2020.02]\from[url2529]
  \useURL[url2530][https://web.archive.org/web/https://github.com/PartialVolume/shredos.x86_64][][{[}Archive.org{]}]\from[url2530]
\item
  Reboot and boot the USB key
\item
  Follow the instructions on the screen
\stopitemize

\section[title={Appendix J: Manufacturer tools for Wiping HDD and SSD
drives:},reference={appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives}]

{\bf Always check your laptop BIOS/UEFI for native utilities first.}

{\bf Be sure to use the right wipe mode for the right disk. Wipe and
Passes are for HDD drives. There are specific options for SSD drives
(such as ATA Secure Erase or Sanitize).}

Unfortunately, most of these tools are Windows only.

\subsection[title={Tools that provide a boot disk for wiping from
boot:},reference={tools-that-provide-a-boot-disk-for-wiping-from-boot}]

\startitemize
\item
  SanDisk DashBoard:
  \useURL[url2531][https://kb.sandisk.com/app/answers/detail/a_id/15108/~/dashboard-support-information]\from[url2531]
  \useURL[url2532][https://web.archive.org/web/https://kb.sandisk.com/app/answers/detail/a_id/15108/~/dashboard-support-information][][{[}Archive.org{]}]\from[url2532]
\item
  Seagate SeaTools:
  \useURL[url2533][https://www.seagate.com/support/downloads/seatools/]\from[url2533]
  \useURL[url2534][https://web.archive.org/web/https://www.seagate.com/support/downloads/seatools/][][{[}Archive.org{]}]\from[url2534]
\item
  Samsung Magican:
  \useURL[url2535][https://www.samsung.com/semiconductor/minisite/ssd/download/tools/]\from[url2535]
  \useURL[url2536][https://web.archive.org/web/https://www.samsung.com/semiconductor/minisite/ssd/download/tools/][][{[}Archive.org{]}]\from[url2536]
\item
  Kingston SSD Manager:
  \useURL[url2537][https://www.kingston.com/unitedstates/en/support/technical/ssdmanager]\from[url2537]
  \useURL[url2538][https://web.archive.org/web/https://www.kingston.com/unitedstates/en/support/technical/ssdmanager][][{[}Archive.org{]}]\from[url2538]
\item
  Lenovo:

  \startitemize
  \item
    Most likely native utility available within the BIOS/UEFI, please
    check
  \item
    Drive Erase Utility:
    \useURL[url2539][https://support.lenovo.com/us/en/downloads/ds019026-thinkpad-drive-erase-utility-for-resetting-the-cryptographic-key-and-erasing-the-solid-state-drive-thinkpad]\from[url2539]
    \useURL[url2540][https://web.archive.org/web/https://support.lenovo.com/us/en/downloads/ds019026-thinkpad-drive-erase-utility-for-resetting-the-cryptographic-key-and-erasing-the-solid-state-drive-thinkpad][][{[}Archive.org{]}]\from[url2540]
  \stopitemize
\item
  Crucial Storage Executive:
  \useURL[url2541][https://www.crucial.com/support/storage-executive]\from[url2541]
  \useURL[url2542][https://web.archive.org/web/https://www.crucial.com/support/storage-executive][][{[}Archive.org{]}]\from[url2542]
\item
  Western Digital Dashboard:
  \useURL[url2543][https://support.wdc.com/downloads.aspx?p=279]\from[url2543]
  \useURL[url2544][https://web.archive.org/web/https://support.wdc.com/downloads.aspx?p=279][][{[}Archive.org{]}]\from[url2544]
\item
  HP: Follow instructions on
  \useURL[url2545][https://store.hp.com/us/en/tech-takes/how-to-secure-erase-ssd]\from[url2545]
  \useURL[url2546][https://web.archive.org/web/https://store.hp.com/us/en/tech-takes/how-to-secure-erase-ssd][][{[}Archive.org{]}]\from[url2546]
\item
  Transcend SSD Scope:
  \useURL[url2547][https://www.transcend-info.com/Support/Software-10/]\from[url2547]
  \useURL[url2548][https://web.archive.org/web/https://www.transcend-info.com/Support/Software-10/][][{[}Archive.org{]}]\from[url2548]
\item
  Dell:

  \startitemize[packed]
  \item
    Most likely native utility available within the BIOS/UEFI, please
    check
    \useURL[url2549][https://www.dell.com/support/kbdoc/en-us/000134997/using-the-dell-bios-data-wipe-function-for-optiplex-precision-and-latitude-systems-built-after-november-2015?lwp=rt]\from[url2549]
    \useURL[url2550][https://web.archive.org/web/https://www.dell.com/support/kbdoc/en-us/000134997/using-the-dell-bios-data-wipe-function-for-optiplex-precision-and-latitude-systems-built-after-november-2015?lwp=rt][][{[}Archive.org{]}]\from[url2550]
  \stopitemize
\stopitemize

\subsection[title={Tools that provide only support from running OS (for
external
drives).},reference={tools-that-provide-only-support-from-running-os-for-external-drives.}]

\startitemize[packed]
\item
  Toshiba Storage Tools:
  \useURL[url2551][https://www.toshiba-storage.com/downloads/]\from[url2551]
  \useURL[url2552][https://web.archive.org/web/https://www.toshiba-storage.com/downloads/][][{[}Archive.org{]}]\from[url2552]
\stopitemize

\section[title={Appendix K: Considerations for using external SSD
drives},reference={appendix-k-considerations-for-using-external-ssd-drives}]

{\bf I do not recommend using external SSDs due to the uncertainty about
their support for Trim, ATA Secure Erase, and Sanitize options through
USB controllers. Instead, we recommend using external HDD disks which
can be cleaned/wiped safely and securely without hassle (albeit much
slower than SSD drives).}

Please do not buy or use gimmicky self-encrypting devices such as these:
\useURL[url2553][https://syscall.eu/blog/2018/03/12/aigo_part1/]\from[url2553]
\useURL[url2554][https://web.archive.org/web/https://syscall.eu/blog/2018/03/12/aigo_part1/][][{[}Archive.org{]}]\from[url2554]

Some might be very efficient\footnote{NYTimes, Lost Passwords Lock
  Millionaires Out of Their Bitcoin Fortunes
  \useURL[url2555][https://www.nytimes.com/2021/01/12/technology/bitcoin-passwords-wallets-fortunes.html]\from[url2555]
  \useURL[url2556][https://web.archive.org/web/https://www.nytimes.com/2021/01/12/technology/bitcoin-passwords-wallets-fortunes.html][][{[}Archive.org{]}]\from[url2556]}
but many are gimmicky gadgets.

If you want to use an external SSD drive for sensitive storage:

\startitemize
\item
  Please consider the support for:

  \startitemize
  \item
    Trim operations and ATA/NVMe secure erase operations from your
    Laptop USB controller.
  \item
    Trim operations and ATA/NVMe secure erase operations from your USB
    SSD disk itself.
  \stopitemize
\item
  Always use full disk encryption on those disks
\item
  {\bf Use the manufacturer-provided tools to securely erase them if
  possible (see \goto{Appendix K: Considerations for using external SSD
  drives}[appendix-k-considerations-for-using-external-ssd-drives]).}
\item
  Consider manually wiping data on them after use by doing a full
  decryption/encryption or filling them completely with random data.
\stopitemize

So how to check if your external USB SSD supports Trim and other
ATA/NVMe operations from your Host OS?

\subsection[title={Windows:},reference={windows-6}]

\subsubsection[title={Trim Support:},reference={trim-support}]

It is possible Windows will detect your external SSD properly and enable
Trim by default. Check if Optimize Works using the Windows Native disk
utility as explained in the internal SSD section of Windows.

\subsubsection[title={ATA/NVMe Operations (Secure
Erase/Sanitize):},reference={atanvme-operations-secure-erasesanitize}]

{\bf Use the manufacturer-provided tools to check and perform these
operations} \ldots{} It is pretty much the only way to be sure it is not
only supported but actually works. Some utilities can tell you whether
it is supported or not like CrystalDiskInfo
\useURL[url2557][https://web.archive.org/web/https://element.io/][][{[}Archive.org{]}]\from[url2557]
but will not actually check if it is working. See \goto{Appendix J:
Manufacturer tools for Wiping HDD and SSD
drives}[appendix-j-manufacturer-tools-for-wiping-hdd-and-ssd-drives].

If it does not work. Just decrypt and re-encrypt the whole drive or fill
up the free space as instructed in the guide. There is no other way
AFAIK. Besides booting up a System Rescue Linux CD and see the next
section.

\subsection[title={Linux:},reference={linux-3}]

\subsubsection[title={Trim Support:},reference={trim-support-1}]

Follow this good tutorial:
\useURL[url2558][https://www.glump.net/howto/desktop/enable-trim-on-an-external-ssd-on-linux]\from[url2558]
\useURL[url2559][https://web.archive.org/web/https://www.glump.net/howto/desktop/enable-trim-on-an-external-ssd-on-linux][][{[}Archive.org{]}]\from[url2559]

\subsubsection[title={ATA/NVMe Operations (Secure
Erase/Sanitize):},reference={atanvme-operations-secure-erasesanitize-1}]

{\bf It is not \quotation{recommended}. Please read the disclaimers here
\useURL[url2560][https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase]\from[url2560]}
\useURL[url2561][https://web.archive.org/web/https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase][][{[}Archive.org{]}]\from[url2561]
{\bf and here
\useURL[url2562][https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing]\from[url2562]}
\useURL[url2563][https://web.archive.org/web/https://wiki.archlinux.org/index.php/Solid_state_drive/Memory_cell_clearing][][{[}Archive.org{]}]\from[url2563]

But this seems to be based on anecdotal experiences. So, if you are sure
your external SSD supports Trim (see vendor documentation). You could
just {\bf try at your own risk} to use nvme-cli or hdparm to issue
secure erases.

See also this tutorial
\useURL[url2564][https://code.mendhak.com/securely-wipe-ssd/]\from[url2564]
\useURL[url2565][https://web.archive.org/web/https://code.mendhak.com/securely-wipe-ssd/][][{[}Archive.org{]}]\from[url2565]

{\bf Your mileage may vary. Use at your own risk.}

\subsection[title={macOS:},reference={macos-5}]

\subsubsection[title={Trim Support:},reference={trim-support-2}]

According to Apple Documentation\footnote{Wikipedia, Koalang
  \useURL[url2566][https://en.wikipedia.org/wiki/Koalang]\from[url2566]
  \useURL[url2567][https://wikiless.org/wiki/Koalang][][{[}Wikiless{]}]\from[url2567]
  \useURL[url2568][https://web.archive.org/web/https://en.wikipedia.org/wiki/Koalang][][{[}Archive.org{]}]\from[url2568]},
Trim is supported on APFS (asynchronously) and HFS+ (through period trim
or first-aid).

So, if it is supported (and enabled on your external SSD), you should be
able to issue a Trim on a non-APFS drive using Disk Utility and First
Aid which should issue a Trim.

If your disk supports it but it is not enabled in macOS. You could try
issuing a \quotation{sudo trimforce enable} command from the Terminal
and see if it enables Trim on your external SSD. And then again check
the first aid command if it is not APFS (see this Tutorial for info
\useURL[url2569][https://www.lifewire.com/enable-trim-for-ssd-in-os-x-yosemite-2260789]\from[url2569]
\useURL[url2570][https://web.archive.org/web/https://www.lifewire.com/enable-trim-for-ssd-in-os-x-yosemite-2260789][][{[}Archive.org{]}]\from[url2570])

If it does not work, we are not aware of any reliable method to enable
TRIM besides the commercial utility Trim Enabler here
\useURL[url2571][https://cindori.org/trimenabler/]\from[url2571]
\useURL[url2572][https://web.archive.org/web/https://cindori.org/trimenabler/][][{[}Archive.org{]}]\from[url2572]
which claims support for external drives.

\subsubsection[title={ATA/NVMe Operations (Secure
Erase/Sanitize):},reference={atanvme-operations-secure-erasesanitize-2}]

We are not aware of any method of doing so reliably and safely on macOS.
So, you will have to try one of these options:

\startitemize
\item
  Use a bootable System Rescue USB Linux to do it
\item
  Just decrypt and re-encrypt the drive using Disk Utility or Veracrypt
\item
  Fill up the free space of the disk using the Linux method (dd)
\stopitemize

\section[title={Appendix L: Creating a mat2-web guest VM for removing
metadata from
files},reference={appendix-l-creating-a-mat2-web-guest-vm-for-removing-metadata-from-files}]

Download the latest Debian testing amd64 netinst ISO from
\useURL[url2573][https://www.debian.org/CD/netinst/]\from[url2573]
\useURL[url2574][https://web.archive.org/web/https://www.debian.org/CD/netinst/][][{[}Archive.org{]}]\from[url2574]

{\bf (Get testing to get the latest mat2 release, stable is a few
versions back)}

This is very lightweight, and we recommend doing it from a VM (VM inside
a VM) to benefit from Whonix Tor Gateway. While it is possible to put
this VM directly behind a Whonix Gateway, Whonix will not easily allow
communications between VMs on its network by default. You could also
just leave it on Clearnet during the install process and then leave it
on the Host-Only network later, or install it from a VM within a VM then
move it to host OS for Host-Only usage like we show below:

\startitemize[n,packed][stopper=.,width=2.0em]
\item
  Create a new machine with any name like {\bf Mat2}.
\item
  Select {\bf Linux} for the Type.
\item
  Select {\bf Debian (64-bit)} as the Version.
\item
  Leave the default options and click {\bf Create}.
\item
  Select the VM and click {\bf Settings}.
\item
  Select {\bf System} and disable the {\bf Floppy disk} on the
  Motherboard tab.
\item
  Select the Processor tab and {\bf enable PAE/NX}.
\item
  Select {\bf Audio} and {\bf disable Audio}.
\item
  Select {\bf USB} and {\bf disable the USB controller}.
\item
  Select {\bf Storage} and select the CD drive to mount the Debian
  Netinst ISO.
\item
  Select {\bf Network} and {\bf Attach to NAT}.
\item
  Launch the VM.
\item
  Select {\bf Install} (not Graphical install).
\item
  Select {\bf Language}, {\bf Location}, and {\bf Keyboard layout} as
  you wish.
\item
  Wait for the network to configure (automatic DHCP). This takes a few
  seconds.
\item
  Pick a name like {\bf Mat2}.
\item
  Leave the {\bf domain} empty.
\item
  Set a {\bf root} password as you wish (preferably a good one).
\item
  Create a new {\bf user} and {\bf password} as you wish (preferably a
  good one).
\item
  Select the {\bf Time Zone} of your choice.
\item
  Select {\bf Guided - Use the entire disk}.
\item
  Select the only disk available ({\bf /dev/sda} in our case).
\item
  Select {\bf All files in one partition}.
\item
  Confirm and write changes to the disk.
\item
  Select {\bf No} to scan any other CD or DVD.
\item
  Select any region and any mirror of your choice and leave {\bf proxy}
  blank.
\item
  Select {\bf No} to take part in any survey.
\item
  Select {\bf only System Standard Utilities}. Uncheck everything else
  using {\bf space}.
\item
  Select {\bf Yes} to install GRUB bootloader.
\item
  Select {\bf /dev/sda} and continue.
\item
  Complete the install and reboot.
\item
  Log in with your {\bf user} or {\bf root}. You should never use root
  directly as a best security practice but in this case, it is okay.
\item
  Update your install by running \type{apt upgrade}. It should be
  upgraded since it is a net install, but we're double checking.
\item
  Install the necessary packages for mat2 by running
  \type{apt install ffmpeg uwsgi python3-pip uwsgi-plugin-python3 lib35rsvg2-dev git mat2 apache2 libapache2-mod-proxy-uwsgi}.
\item
  Go to the {\bf /var/www} directory by running \type{cd /var/www/}.
\item
  {\bf Clone mat2-web} from the mat2-web repository by issuing
  \type{git clone https://0xacab.org/jvoisin/mat2-web.git}.
\item
  {\bf Create a directory for uploads} by running
  \type{mkdir ./mat2-web/uploads/}.
\item
  {\bf Give permissions to Apache2} to read the files by running
  \type{chown -R www-data:www-data ./mat2-web}.
\item
  {\bf Enable apache2 uwsgi proxy} by running
  \type{/usr/sbin/a2enmod proxy_uwsgi}.
\item
  {\bf Upgrade pip} by running
  \type{python3 -m pip install pip --upgrade}.
\item
  {\bf Install these Python modules} by running
  \type{python3 -m pip install flasgger pyyaml flask-restful flask cerberus flask-cors jinja2}.
\item
  {\bf Move to the config directory} of mat2 by running
  \type{cd /var/www/mat2-web/config/}.
\item
  {\bf Copy the apache2 config file} to {\bf /etc} by running
  \type{cp apache2.config /etc/apache2/sites-enabled/apache2.conf}.
\item
  {\bf Remove the default config file} by running
  \type{rm /etc/apache2/sites-enabled/000-default.conf}.
\item
  {\bf Edit the apache2 config file} provided by mat2-web by running
  \type{nano /etc/apache2/sites-enabled/apache2.conf}.
\item
  {\bf Remove the first line} \type{Listen 80} by typing {\bf Ctrl+K} to
  cut the line.
\item
  {\bf Change the uwsgi path} from
  \type{/var/www/mat2-web/mat2-web.sock} to \type{/run/uwsgi/uwsgi.sock}
  and type {\bf Ctrl+X} to exit, followed by {\bf Y} then {\bf Enter}.
\item
  {\bf Copy the uwsgi config file} to {\bf /etc} by running
  \type{cp uwsgi.config /etc/uwsgi/apps-enabled/uwsgi.ini}.
\item
  {\bf Edit the uwsgi config file} by typing
  \type{nano /etc/uwsgi/apps-enabled/uwsgi.ini} and change {\bf uid} and
  {\bf guid} to \type{nobody} and \type{nogroup} respectively. Save and
  exit with {\bf Ctrl+X}, followed by {\bf Y}, then {\bf Enter}.
\item
  Run \type{chown -R 777 /var/www/mat2-web} to change ownership to
  {\bf mat2-web}.
\item
  {\bf Restart uwsgi} by running \type{systemctl restart uwsgi}. There
  should be no errors.
\item
  {\bf Restart apache2} by running \type{systemctl restart apache2}.
  There should be no errors.
\item
  Now navigate to {\bf Settings} > {\bf Network} > {\bf Attached to} and
  {\bf select Host-only Adapter}. Click {\bf OK} to save.
\item
  Reboot the VM via {\bf Machine} > {\bf Reset}. Confirm the reset.
\item
  Log into the VM as the {\bf user} from {\bf Step 19} and type
  \type{ip a}. Note the IP address it was assigned under link/ether, the
  one that has {\bf 192.168.*.*}.
\item
  From the VM Host OS, {\bf open a Browser} and navigate to the IP of
  your Debian VM. It will be something like: {\bf http://192.168.1.55}.
\item
  You should now see a Mat2-Web website running smoothly.
\item
  {\bf Shutdown the Mat2 guest VM} by running \type{shutdown -h now} to
  halt the machine.
\item
  {\bf Take a snapshot of the VM} within Virtualbox while the guest VM
  is shutdown.
\stopitemize

{\bf Restart the Mat2 VM* and you are ready to use Mat2-web to remove
metadata from most files!}

After use, shut down the VM and revert to the snapshot to remove traces
of the uploaded files. This VM does not require any internet access
unless you want to update it, in which case, you need to place it back
on the {\bf NAT network} and do the next steps.

For updates of Debian, {\bf start the VM} and run \type{apt update}
followed by \type{apt upgrade}.

For updates of mat2-web, type \type{cd /var/www/mat2-web} and run
\type{git pull}.

After updates, shutdown, change to the {\bf Host-only Adapter}, take a
new snapshot, remove the earlier one.

You are done.

Now you can just start this small Mat2 VM when needed. Browse to it from
your Guest VM and use the interface to remove any metadata from most
files. After each use of this VM, you should revert to the Snapshot to
erase all traces.

{\bf Do not ever expose this VM to any network unless temporarily for
updates. This web interface is not suitable for any direct external
access.}

\section[title={Appendix M: BIOS/UEFI options to wipe disks in various
Brands},reference={appendix-m-biosuefi-options-to-wipe-disks-in-various-brands}]

Here are some links on how to securely wipe your drive (HDD/SSD) from
the BIOS for various brands:

\startitemize
\item
  Lenovo ThinkPads:
  \useURL[url2575][https://support.lenovo.com/be/en/solutions/migr-68369]\from[url2575]
  \useURL[url2576][https://web.archive.org/web/https://support.lenovo.com/be/en/solutions/migr-68369][][{[}Archive.org{]}]\from[url2576]
\item
  HP (all):
  \useURL[url2577][https://support.hp.com/gb-en/document/c06204100]\from[url2577]
  \useURL[url2578][https://web.archive.org/web/https://support.hp.com/gb-en/document/c06204100][][{[}Archive.org{]}]\from[url2578]
\item
  Dell (all):
  \useURL[url2579][https://www.dell.com/support/kbdoc/en-us/000146892/dell-data-wipe]\from[url2579]
  \useURL[url2580][https://web.archive.org/web/https://www.dell.com/support/kbdoc/en-us/000146892/dell-data-wipe][][{[}Archive.org{]}]\from[url2580]
\item
  Acer (Travelmate only):
  \useURL[url2581][https://us.answers.acer.com/app/answers/detail/a_id/41567/~/how-to-use-disk-sanitizer-on-acer-travelmate-notebooks]\from[url2581]
  \useURL[url2582][https://web.archive.org/web/https://us.answers.acer.com/app/answers/detail/a_id/41567/~/how-to-use-disk-sanitizer-on-acer-travelmate-notebooks][][{[}Archive.org{]}]\from[url2582]
\item
  Asus: no option AFAIK except maybe for some ROG models.
\item
  Gigabyte: no option AFAIK
\item
  Honor: no option AFAIK
\item
  Huawei: no option AFAIK
\stopitemize

\section[title={Appendix N: Warning about smartphones and smart
devices},reference={appendix-n-warning-about-smartphones-and-smart-devices}]

When conducting sensitive activities, remember that:

\startitemize
\item
  {\bf You should not bring your real smartphone or smart devices with
  you (even turned off).} Correlation attacks are possible on the Cell
  Networks to find which phone \quotation{turned off} before your burner
  phone \quotation{turned on}. While this might not work the first time,
  after a few times, the net will tighten, and you will get compromised.
  It is better to leave your main smartphone at home online (see this
  article (Russian, use Google Translate link):
  \useURL[url2583][https://biboroda.livejournal.com/4894724.html]\from[url2583]
  \useURL[url2584][https://translate.google.com/translate?hl=&sl=ru&tl=en&u=https\%3A\%2F\%2Fbiboroda.livejournal.com\%2F4894724.html&anno=2][][{[}Google
  Translate{]}]\from[url2584]
  \useURL[url2585][https://web.archive.org/web/https://biboroda.livejournal.com/4894724.html][][{[}Archive.org{]}]\from[url2585]{\bf )}
\item
  {\bf Again, do not take them with you unless it is absolutely
  necessary.} {\bf If you really must,} you could consider powering it
  off and removing the battery or, if not possible, the use of a faraday
  cage\footnote{Wikipedia, Faraday Cage,
    \useURL[url2586][https://en.wikipedia.org/wiki/Faraday_cage]\from[url2586]
    \useURL[url2587][https://wikiless.org/wiki/Faraday_cage][][{[}Wikiless{]}]\from[url2587]
    \useURL[url2588][https://web.archive.org/web/https://en.wikipedia.org/wiki/Faraday_cage][][{[}Archive.org{]}]\from[url2588]}
  bag to store your devices. There are many such faraday
  \quotation{signal blocking} bags available for sale and some of these
  have been studied\footnote{Edith Cowan University, A forensic
    examination of several mobile device Faraday bags & materials to
    test their effectiveness materials to test their effectiveness
    \useURL[url2589][https://web.archive.org/web/https://ro.ecu.edu.au/cgi/viewcontent.cgi?article=1165&context=adf]\from[url2589]
    \useURL[url2590][https://web.archive.org/web/20211011220410/https://ro.ecu.edu.au/cgi/viewcontent.cgi?article=1165&context=adf][][{[}Archive.org{]}]\from[url2590]}
  for their effectiveness. If you cannot afford such bags, you can
  probably achieve a \quotation{decent result} with one or several
  sheets of aluminum foil (as shown in the previously linked study).

  \startitemize
  \item
    Warning: consider that sensor data itself can also be reliably used
    to track you\footnote{arXiv, Deep-Spying: Spying using Smartwatch
      and Deep Learning
      \useURL[url2591][https://arxiv.org/pdf/1512.05616.pdf]\from[url2591]
      \useURL[url2592][https://web.archive.org/web/https://arxiv.org/pdf/1512.05616.pdf][][{[}Archive.org{]}]\from[url2592]}'\footnote{Acm.org,
      Privacy Implications of Accelerometer Data: A Review of Possible
      Inferences
      \useURL[url2593][https://dl.acm.org/doi/pdf/10.1145/3309074.3309076]\from[url2593]
      \useURL[url2594][https://web.archive.org/web/https://dl.acm.org/doi/pdf/10.1145/3309074.3309076][][{[}Archive.org{]}]\from[url2594]}.
  \item
    Consider leaving your smart devices at home online and doing
    something (watching YouTube/Netflix or something similar) instead of
    taking them with you powered off. This will mitigate tracking
    efforts but also create digital traces that could indicate you were
    at home.
  \item
    {\bf This could also include your car which could for example have a
    cell network device (including at least an IMEI) and a functionality
    to call emergency services}
  \stopitemize
\stopitemize

Additionally, if using a smartphone as a burner, know that they send a
lot of diagnostics by default. Enough to potentially identify you based
on your device usage patterns (a technique known as biometric
profiling). You should avoid using your burner unless absolutely
necessary, to minimize the information that can be collected and used to
identify you.

{\bf Lastly, you should also consider this useful sheet from the NSA
about Smartphone security:
\useURL[url2595][https://web.archive.org/web/20210728204533/https://s3.documentcloud.org/documents/21018353/nsa-mobile-device-best-practices.pdf]\from[url2595].}

{\bf Note: Please do not consider commercial gimmicky all-in devices for
anonymity. The only way to achieve proper OPSEC is by doing it yourself.
See those examples to see why it is not a clever idea:}

\startitemize
\item
  {\bf AN0M:
  \useURL[url2596][https://www.theguardian.com/australia-news/2021/sep/11/inside-story-most-daring-surveillance-sting-in-history]\from[url2596]}
  \useURL[url2597][https://web.archive.org/web/https://www.theguardian.com/australia-news/2021/sep/11/inside-story-most-daring-surveillance-sting-in-history][][{[}Archive.org{]}]\from[url2597]
\item
  {\bf Encrochat:
  \useURL[url2598][https://en.wikipedia.org/wiki/EncroChat]\from[url2598]}
  \useURL[url2599][https://wikiless.org/wiki/EncroChat][][{[}Wikiless{]}]\from[url2599]
  \useURL[url2600][https://web.archive.org/web/https://en.wikipedia.org/wiki/EncroChat][][{[}Archive.org{]}]\from[url2600]
\item
  {\bf Sky ECC:
  \useURL[url2601][https://en.wikipedia.org/wiki/Sky_ECC]\from[url2601]}
  \useURL[url2602][https://wikiless.org/wiki/Sky_ECC][][{[}Wikiless{]}]\from[url2602]
  \useURL[url2603][https://web.archive.org/web/https://en.wikipedia.org/wiki/Sky_ECC][][{[}Archive.org{]}]\from[url2603]
\stopitemize

{\bf You should never rely on an external commercial service to ensure
your first line of anonymity. But you will see that paid services can
still be used later from an already anonymous identity if bought
anonymously while observing good operational security.}

\section[title={Appendix O: Getting an anonymous
VPN/Proxy},reference={appendix-o-getting-an-anonymous-vpnproxy}]

If you follow our advice, you will also need a VPN subscription but this
time you will need an anonymous one that cannot be tied to you by the
financial system. Meaning you will need to buy a VPN subscription with
cash or a reasonably private cryptocurrency (for example Monero). You
will later be able to use this VPN to connect to various services
anonymously but {\bf never directly from your IP}. This VPN can never be
used in any other non-anonymous context without jeopardzing your
anonymity.

There are, two viable options:

\subsection[title={Cash/Monero-Paid
VPN:},reference={cashmonero-paid-vpn}]

There are three VPN companies recommended by PrivacyGuides.org
(\useURL[url2604][https://www.privacyguides.org/vpn/]\from[url2604]
\useURL[url2605][https://web.archive.org/web/https://www.privacyguides.org/vpn/][][{[}Archive.org{]}]\from[url2605])
that accept cash payments: Mullvad, iVPN, and Proton VPN.

Here are their logging policies:

\startitemize[packed]
\item
  Mullvad:
  \useURL[url2606][https://mullvad.net/en/help/no-logging-data-policy/]\from[url2606]
  \useURL[url2607][https://web.archive.org/web/https://mullvad.net/en/help/no-logging-data-policy/][][{[}Archive.org{]}]\from[url2607]
\item
  iVPN: \useURL[url2608][https://www.ivpn.net/privacy/]\from[url2608]
  \useURL[url2609][https://web.archive.org/web/https://www.ivpn.net/privacy/][][{[}Archive.org{]}]\from[url2609]
\item
  ProtonVPN:
  \useURL[url2610][https://protonvpn.com/support/no-logs-vpn/]\from[url2610]
  \useURL[url2611][https://web.archive.org/web/https://protonvpn.com/support/no-logs-vpn/][][{[}Archive.org{]}]\from[url2611]
\stopitemize

In addition, we will also mention a newcomer to watch: Safing SPN
\useURL[url2612][https://safing.io/]\from[url2612]
\useURL[url2613][https://web.archive.org/web/https://safing.io/][][{[}Archive.org{]}]\from[url2613])
which (while still in the alpha stage at the time of this writing) which
also accepts cash and has a very distinct new concept for a VPN which
provides benefits similar to Tor Stream isolation with their
\quotation{SPN}). Note that Safing SPN is not available on macOS at the
moment. This possibility is \quotation{provisional} and at your own
risk, but we think was worth mentioning.

Personally, for now, we would recommend Mullvad due to personal
experience.

{\bf We would not recommend Proton VPN as much because they do require
an e-mail for registration unlike Mullvad, iVPN, and Safing. Proton also
has a tendency to require phone number verification for users who
register over Tor.}

How does this work?

\startitemize
\item
  Access the VPN website with a Safe Browser (see \goto{Appendix G: Safe
  Browser}[appendix-g-safe-browser-on-the-host-os])
\item
  Go to iVPN, Mullvad, or Safing website and create a new Account ID (on
  the login page).
\item
  This page will give you an account ID, a token ID (for payment
  reference), and the details of where to send the money by post.
\item
  Send the required cash amount for the subscription you want in a
  sealed postal envelope to their offices, including a paper with the
  Token ID without a return address, or pay with Monero if available. If
  they do not accept Monero but do accept BTC, consider \goto{Appendix
  Z: Paying anonymously online with
  BTC}[appendix-y-installing-and-using-desktop-tor-browser]
\item
  Wait for them to receive the payment and enable your account (this can
  take a while).
\item
  Open Tor Browser.
\item
  Check your account status and proceed when your account is active.
\stopitemize

For extra-security consider:

\startitemize
\item
  Wearing gloves while manipulating anything to avoid leaving
  fingerprints\footnote{YouTube, Fingerprinting Paper - Forensic
    Education
    \useURL[url2614][https://www.youtube.com/watch?v=sO98kDLkh-M]\from[url2614]
    \useURL[url2615][https://yewtu.be/watch?v=sO98kDLkh-M][][{[}Invidious{]}]\from[url2615]}
  and touch DNA\footnote{Wikipedia, Touch DNA,
    \useURL[url2616][https://en.wikipedia.org/wiki/Touch_DNA]\from[url2616]
    \useURL[url2617][https://wikiless.org/wiki/Touch_DNA][][{[}Wikiless{]}]\from[url2617]
    \useURL[url2618][https://web.archive.org/web/https://en.wikipedia.org/wiki/Touch_DNA][][{[}Archive.org{]}]\from[url2618]}.
\item
  A less-obvious alternative could be to put super glue on your
  fingertips, to avoid making it obvious you're wearing gloves. However,
  this can prevent effective use of touchscreens, as well as failing to
  as effectively prevent you from touch DNA. Also, if spotted, it can be
  quite suspicious to be caught with super glue on your fingers.
\item
  Do not use any material/currency that was manipulated by someone that
  can be related to you in any way.
\item
  Do not use the currency you just got from an ATM that could record
  dispensed bills serial numbers.
\item
  Be careful if you print anything that it is not watermarked by your
  printer (See \goto{Printing Watermarking}[printing-watermarking]).
\item
  Do not lick the envelope or the stamps\footnote{TheDNAGuide, DNA from
    Postage Stamps or Hair Samples? Yeeesssss\ldots{}..
    \useURL[url2619][https://www.yourdnaguide.com/ydgblog/dna-hair-samples-postage-stamps]\from[url2619]
    \useURL[url2620][https://web.archive.org/web/https://www.yourdnaguide.com/ydgblog/dna-hair-samples-postage-stamps][][{[}Archive.org{]}]\from[url2620]}
  if you use them to avoid leaving DNA traces.
\item
  Make sure there are no obvious DNA traces in or on the materials (like
  hairs).
\item
  Consider doing the whole operation outdoor to reduce the risks of
  residual DNA traces from your environment or you contaminating the
  materials.
\item
  The more people frequent a space, the lower the risk, as your DNA will
  be obscured by the DNA of other people as they pass through
\item
  Security cameras can be a risk. Try to cover your face. Also, gait
  recognition may be a concern. See \goto{Gait Recognition and Other
  Long-Range
  Biometrics}[gait-recognition-and-other-long-range-biometrics]
\stopitemize

{\bf Do not in any circumstance use this new VPN account unless
instructed or connect to that new VPN account using your known
connections. This VPN will only be used later in a secure way as we do
not trust VPN providers' \quotation{no-logging policies}. This VPN
provider should ideally never know your real origin IP (your home/work
one for instance).}

\subsection[title={Self-hosted VPN/Proxy on a Monero/Cash-paid VPS (for
users more familiar with
Linux):},reference={self-hosted-vpnproxy-on-a-monerocash-paid-vps-for-users-more-familiar-with-linux}]

The other alternative is setting up your own VPN/Proxy using a VPS
(Virtual Private Server) on a hosting platform that accepts Monero
(recommended).

{\bf This will offer some advantages as the chances of your IP being
block-listed somewhere are lower than known VPN providers.}

This does also offer some disadvantages as Monero is not perfect as
explained earlier in this guide and some global adversaries could maybe
still track you. You will need to get Monero from an Exchange using the
normal financial system and then pick a hosting (list here
\useURL[url2621][https://www.getmonero.org/community/merchants/\#exchanges]\from[url2621]
\useURL[url2622][https://web.archive.org/web/https://www.getmonero.org/community/merchants/][][{[}Archive.org{]}]\from[url2622])
or from a local reseller using cash from
\useURL[url2623][https://localmonero.co]\from[url2623].

{\bf Do not in any circumstance use this new VPS/VPN/Proxy using your
known connections. Only access it through Tor using Whonix Workstation
for instance (this is explained later). This VPN will only be used later
within a Virtual Machin over the Tor Network in a secure way as we do
not trust VPN providers' \quotation{no-logging policies}. This VPN
provider should never know your real origin IP.}

Please see \goto{Appendix A1: Recommended VPS hosting
providers}[appendix-a1-recommended-vps-hosting-providers]

\subsubsection[title={VPN VPS:},reference={vpn-vps}]

There are plenty of tutorials on how to do this like this one
\useURL[url2624][https://proprivacy.com/vpn/guides/create-your-own-vpn-server]\from[url2624]
\useURL[url2625][https://web.archive.org/web/https://proprivacy.com/vpn/guides/create-your-own-vpn-server][][{[}Archive.org{]}]\from[url2625]

\subsubsection[title={Socks Proxy VPS:},reference={socks-proxy-vps}]

This is also an option obviously if you prefer to skip the VPN part.

It is probably the easiest thing to set up since you will just use the
SSH connection you have to your VPS and no further configuration should
be required besides setting the browser of your guest VM to use the
proxy in question.

Here are a few tutorials on how to do this very quickly:

\startitemize
\item
  (Windows/Linux/macOS)
  \useURL[url2626][https://linuxize.com/post/how-to-setup-ssh-socks-tunnel-for-private-browsing/]\from[url2626]
  \useURL[url2627][https://web.archive.org/web/https://linuxize.com/post/how-to-setup-ssh-socks-tunnel-for-private-browsing/][][{[}Archive.org{]}]\from[url2627]
\item
  (Windows/Linux/macOS)
  \useURL[url2628][https://www.digitalocean.com/community/tutorials/how-to-route-web-traffic-securely-without-a-vpn-using-a-socks-tunnel]\from[url2628]
  \useURL[url2629][https://web.archive.org/web/https://www.digitalocean.com/community/tutorials/how-to-route-web-traffic-securely-without-a-vpn-using-a-socks-tunnel][][{[}Archive.org{]}]\from[url2629]
\item
  (Windows)
  \useURL[url2630][https://www.forwardproxy.com/2018/12/using-putty-to-setup-a-quick-socks-proxy/]\from[url2630]
  \useURL[url2631][https://web.archive.org/web/https://www.forwardproxy.com/2018/12/using-putty-to-setup-a-quick-socks-proxy/][][{[}Archive.org{]}]\from[url2631]
\item
  (Linux/macOS)
  \useURL[url2632][https://ma.ttias.be/socks-proxy-linux-ssh-bypass-content-filters/]\from[url2632]
  \useURL[url2633][https://web.archive.org/web/https://ma.ttias.be/socks-proxy-linux-ssh-bypass-content-filters/][][{[}Archive.org{]}]\from[url2633]
\stopitemize

Here is my basic tutorial:

\subsubsubsection[title={Linux/macOS:},reference={linuxmacos}]

Here are the steps:

\startitemize
\item
  Get your anonymous VPS set-up
\item
  From a terminal, SSH to your server by running:
  \type{ssh -i ~/.ssh/id_rsa -D 8080 -f -C -q -N username@ip_of_your_server}
\item
  Configure your browser to use localhost:8080 as a Socks Proxy for
  Browsing
\item
  Done!
\stopitemize

Explanation of arguments:

\startitemize
\item
  -i: The path to the SSH key to be used to connect to the host
\item
  -D: Tells SSH that we want a SOCKS tunnel on the specified port number
  (you can choose a number between 1025 and 65536)
\item
  -f: Forks the process to the background
\item
  -C: Compresses the data before sending it
\item
  -q: Uses quiet mode
\item
  -N: Tells SSH that no command will be sent once the tunnel is up
\stopitemize

\subsubsubsection[title={Windows:},reference={windows-7}]

Here are the steps:

\startitemize
\item
  Get your anonymous VPS set-up
\item
  Download and install Putty from
  \useURL[url2634][https://www.putty.org/]\from[url2634]
  \useURL[url2635][https://web.archive.org/web/https://www.putty.org/][][{[}Archive.org{]}]\from[url2635]
\item
  Set the following options in Putty and connect to your server
\stopitemize

\placefigure{image51}{\externalfigure[./tex2pdf.-1a34188c73046814/af22c16af5b6ac7d08658c7c9acd7f4f76dfa4d7.png]}

\startitemize
\item
  Connect to your VPS using those settings
\item
  Configure your Browser to use localhost:8080 as a Socks Proxy
\item
  Done!
\stopitemize

\section[title={Appendix P: Accessing the internet as safely as possible
when Tor and VPNs are not an
option},reference={appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option}]

{\bf USE EXTREME CAUTION: THIS IS HIGHLY RISKY.}

There might be worst-case situations where using Tor and VPNs are not
possible due to extensive active censorship or blocking. Even when using
Tor Bridges (see \goto{Appendix X: Using Tor bridges in hostile
environments}[appendix-x-using-tor-bridges-in-hostile-environments])

Now, there might also be situations where simply using Tor or a VPN
alone could be suspicious and could be dangerous for your safety. If
this is the case, you could be in a very hostile environment where
surveillance and control are high.

But you still want to do something anonymously without
disclosing/leaking any information.

In that case, my last resort recommendation is to connect safely
{\bf from a distance} to a Public Wi-Fi (See \goto{Find some safe places
with decent public
Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi]) using your
laptop and Tails \quotation{unsafe browser}. See
\useURL[url2636][https://tails.boum.org/contribute/design/Unsafe_Browser/]\from[url2636]
\useURL[url2637][https://web.archive.org/web/https://tails.boum.org/contribute/design/Unsafe_Browser/][][{[}Archive.org{]}]\from[url2637].

{\bf If Tor usage alone is suspicious or risky, you should NOT allow
Tails to try establishing a Tor connection at start-up by doing the
following:}

\startitemize
\item
  At startup open the Additional Settings.
\item
  Enable Unsafe Browser.
\item
  Change the Connection from Direct to \quotation{Configure a Tor Bridge
  or Local Proxy}
\item
  After Start-up, Connect to a safe Network
\item
  When prompted, just quit the Tor Connection Wizard (to not establish a
  Tor connection)
\item
  Start and use the Unsafe Browser
\stopitemize

{\bf We would strongly recommend the use of a long-range
\quotation{Yagi} type directional Antenna with a suitable USB Wi-Fi
Adapter. At least this will allow you to connect to public Wi-Fis from a
\quotation{safe distance} but keep in mind that triangulation by a
motivated adversary is still possible with the right equipment. So, this
option should not be used during an extended period (minutes at best).
See \goto{Appendix Q: Using long-range Antenna to connect to Public
Wi-Fis from a safe
distance}[appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance].}

Using Tails should prevent local data leaks (such as MAC addresses or
telemetry) and allow you to use a Browser to get what you want
(utilities, VPN account) before leaving that place as fast as possible.

You could also use the other routes (Whonix and Qubes OS without using
Tor/VPN) instead of Tails in such hostile environments if you want data
persistence but this might be riskier. We would not risk it personally
unless there was absolutely no other option. If you go for this option,
you will only do sensitive activities from a reversible/disposable VM in
all cases. Never from the Host OS.

{\bf If you resort to this, please keep your online time as short as
possible (minutes and not hours).}

{\bf Be safe and extremely cautious. This is entirely at your own risk.}

Consider reading this older but still relevant guide
\useURL[url2638][https://archive.flossmanuals.net/bypassing-censorship/index.html]\from[url2638]
\useURL[url2639][https://web.archive.org/web/https://archive.flossmanuals.net/bypassing-censorship/index.html][][{[}Archive.org{]}]\from[url2639]

\section[title={Appendix Q: Using long-range Antenna to connect to
Public Wi-Fis from a safe
distance:},reference={appendix-q-using-long-range-antenna-to-connect-to-public-wi-fis-from-a-safe-distance}]

It is possible to access/connect to remote distant Public Wi-Fis from a
distance using a cheap directional Antenna that looks like this:

\placefigure{image52}{\externalfigure[./tex2pdf.-1a34188c73046814/ebc51d7d99cf460893a3a2944936d7eae6503921.png]}

These antennas are widely available on various online shops for a cheap
price (Amazon, AliExpress, Banggood \ldots{}). The only issue is that
they are not discrete, and you might have to find a way to hide it (for
instance in a Poster cardboard container in a Backpack). Or in a large
enough Bag. Optionally (but riskier) you could even consider using it
from your home if you have a nice Window view to various places where
some Public Wi-Fi is available.

Such antennas need to be combined with specific USB adapters that have
an external Antenna plug and sufficiently high power to use them.

{\bf We would recommend the AWUS036 series in the Alfa brand of adapters
(see \useURL[url2640][https://www.alfa.com.tw/]\from[url2640]}
\useURL[url2641][https://web.archive.org/web/https://www.alfa.com.tw/][][{[}Archive.org{]}]\from[url2641]{\bf ).}
But you could also go with some other brands if you want such as the
TP-Link TL-WN722 (see
\useURL[url2642][https://www.tp-link.com/us/home-networking/usb-adapter/tl-wn722n/]\from[url2642]
\useURL[url2643][https://web.archive.org/web/https://www.tp-link.com/us/home-networking/usb-adapter/tl-wn722n/][][{[}Archive.org{]}]\from[url2643]).

See this post for a comparison of various adapters:
\useURL[url2644][https://www.wirelesshack.org/best-kali-linux-compatible-usb-adapter-dongles.html]\from[url2644]
\useURL[url2645][https://web.archive.org/web/https://www.wirelesshack.org/best-kali-linux-compatible-usb-adapter-dongles.html][][{[}Archive.org{]}]\from[url2645]
(Usually those antennas are used by Penetration Testers to probe Wi-Fis
from a distance and are often discussed within the scope of the Kali
Linux distribution).

The process is simple:

\startitemize
\item
  Plugin and install your USB adapter on your Host OS.
\item
  {\bf Do not forget to randomize your MAC Address in case you bought
  this adapter online to prevent traceability (this is enabled by
  default in Tails).}
\item
  Connect the Long-Range Antenna to the USB adapter (in place of the
  supplied one).
\item
  Get to a convenient spot where you have a distant view of a place with
  Public Wi-Fi available (this can be a rooftop for instance), but you
  could also imagine hiding the Antenna in some bag and just sit on a
  bench somewhere.
\item
  Point the Directional Antenna in the direction of the Public Wi-Fi.
\item
  Connect to the Wi-Fi of your choice.
\stopitemize

{\bf Do not forget tho that this will only delay a motivated adversary.
Your signal can be triangulated easily by a motivated adversary in a
matter of minutes once they reach the physical location of the Wi-Fi
you're connecting to (for instance using a device such as AirCheck
\useURL[url2646][https://www.youtube.com/watch?v=8FV2QZ1BPnw]\from[url2646]}
\useURL[url2647][https://yewtu.be/watch?v=8FV2QZ1BPnw][][{[}Invidious{]}]\from[url2647]{\bf ,
also see their other products here
\useURL[url2648][https://www.netally.com/products/]\from[url2648]}
\useURL[url2649][https://web.archive.org/web/https://www.netally.com/products/][][{[}Archive.org{]}]\from[url2649]{\bf ).
These products can easily be deployed on mobile units (in a Car for
instance) and pinpoint your location in a matter of minutes.}

Ideally, this should \quotation{not be an issue} since this guide
provides multiple ways of hiding your origin IP using VPNs and Tor. But
if you are in a situation where VPN and Tor are not an option, then this
could be your only security.

\section[title={Appendix R: Installing a VPN on your VM or Host
OS},reference={appendix-r-installing-a-vpn-on-your-vm-or-host-os}]

Download the VPN client installer of your cash paid VPN service and
install it on Host OS (Tor over VPN, VPN over Tor over VPN) or the VM of
your choice (VPN over Tor):

\startitemize
\item
  Whonix Tutorial (should work with any VPN provider):
  \useURL[url2650][https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor]\from[url2650]
  \useURL[url2651][https://web.archive.org/web/https://www.whonix.org/wiki/Tunnels/Connecting_to_a_VPN_before_Tor][][{[}Archive.org{]}]\from[url2651]
  (use the Linux configurations below to get the necessary configuration
  files)
\item
  Windows Tutorials:

  \startitemize
  \item
    Mullvad:
    \useURL[url2652][https://mullvad.net/en/help/install-mullvad-app-windows/]\from[url2652]
    \useURL[url2653][https://web.archive.org/web/https://mullvad.net/en/help/install-mullvad-app-windows/][][{[}Archive.org{]}]\from[url2653]
  \item
    iVPN:
    \useURL[url2654][https://www.ivpn.net/apps-windows]\from[url2654]
    \useURL[url2655][https://web.archive.org/web/https://www.ivpn.net/apps-windows][][{[}Archive.org{]}]\from[url2655]
  \item
    Safing:
    \useURL[url2656][https://docs.safing.io/portmaster/install/windows]\from[url2656]
    \useURL[url2657][https://web.archive.org/web/https://docs.safing.io/portmaster/install/windows][][{[}Archive.org{]}]\from[url2657]
  \item
    Proton VPN:
    \useURL[url2658][https://protonvpn.com/support/protonvpn-windows-vpn-application/]\from[url2658]
    \useURL[url2659][https://web.archive.org/web/https://protonvpn.com/support/protonvpn-windows-vpn-application/][][{[}Archive.org{]}]\from[url2659]
  \stopitemize
\item
  macOS:

  \startitemize
  \item
    Mullvad:
    \useURL[url2660][https://mullvad.net/en/help/install-and-use-mullvad-app-macos/]\from[url2660]
    \useURL[url2661][https://web.archive.org/web/https://mullvad.net/en/help/install-and-use-mullvad-app-macos/][][{[}Archive.org{]}]\from[url2661]
  \item
    IVPN:
    \useURL[url2662][https://www.ivpn.net/apps-macos/]\from[url2662]
    \useURL[url2663][https://web.archive.org/web/https://www.ivpn.net/apps-macos/][][{[}Archive.org{]}]\from[url2663]
  \item
    Safing: Not available on macOS
  \item
    Proton VPN:
    \useURL[url2664][https://protonvpn.com/support/protonvpn-mac-vpn-application/]\from[url2664]
    \useURL[url2665][https://web.archive.org/web/https://protonvpn.com/support/protonvpn-mac-vpn-application/][][{[}Archive.org{]}]\from[url2665]
  \stopitemize
\item
  Linux:

  \startitemize
  \item
    Mullvad:
    \useURL[url2666][https://mullvad.net/en/help/install-mullvad-app-linux/]\from[url2666]
    \useURL[url2667][https://web.archive.org/web/https://mullvad.net/en/help/install-mullvad-app-linux/][][{[}Archive.org{]}]\from[url2667]
  \item
    iVPN:
    \useURL[url2668][https://www.ivpn.net/apps-linux/]\from[url2668]
    \useURL[url2669][https://web.archive.org/web/https://www.ivpn.net/apps-linux/][][{[}Archive.org{]}]\from[url2669]
  \item
    Safing:
    \useURL[url2670][https://docs.safing.io/portmaster/install/linux]\from[url2670]
    \useURL[url2671][https://web.archive.org/web/https://docs.safing.io/portmaster/install/linux][][{[}Archive.org{]}]\from[url2671]
  \item
    Proton VPN:
    \useURL[url2672][https://protonvpn.com/support/linux-vpn-setup/]\from[url2672]
    \useURL[url2673][https://web.archive.org/web/https://protonvpn.com/support/linux-vpn-setup/][][{[}Archive.org{]}]\from[url2673]
  \stopitemize
\stopitemize

{\bf Important note: Tor does not support UDP, and you should use TCP
instead with the VPN client in the Tor over VPN cases (on the VMs).}

In all cases, you should set the VPN to start from boot and enable the
\quotation{kill switch} if you can. This is an extra step since this
guide proposes solutions that all fall back on the Tor network in case
of VPN failure.

Here are some guides provided by the recommended VPN providers in this
guide:

\startitemize
\item
  Windows:

  \startitemize
  \item
    iVPN:
    \useURL[url2674][https://www.ivpn.net/knowledgebase/general/do-you-offer-a-kill-switch-or-vpn-firewall/]\from[url2674]
    \useURL[url2675][https://web.archive.org/web/https://www.ivpn.net/knowledgebase/general/do-you-offer-a-kill-switch-or-vpn-firewall/][][{[}Archive.org{]}]\from[url2675]
  \item
    Proton VPN:
    \useURL[url2676][https://protonvpn.com/support/what-is-kill-switch/]\from[url2676]
    \useURL[url2677][https://web.archive.org/web/https://protonvpn.com/support/what-is-kill-switch/][][{[}Archive.org{]}]\from[url2677]
  \item
    Mullvad:
    \useURL[url2678][https://mullvad.net/en/help/using-mullvad-vpn-app/\#killswitch]\from[url2678]
    \useURL[url2679][https://web.archive.org/web/https://mullvad.net/en/help/using-mullvad-vpn-app/][][{[}Archive.org{]}]\from[url2679]
  \stopitemize
\item
  Whonix Workstation: Coming Soon, it is certainly possible, but we did
  not find a suitable and easy tutorial yet. It is also worth
  remembering that if your VPN stops on Whonix, you will still be behind
  the Tor Network.
\item
  macOS:

  \startitemize
  \item
    Mullvad same as Windows, the option should be in the provided VPN
    client
  \item
    iVPN same as Windows, the option should be in the provided VPN
    client
  \item
    Proton VPN same as Windows with the client, the option should be in
    the provided VPN client
    \useURL[url2680][https://protonvpn.com/blog/macos-vpn-kill-switch/]\from[url2680]
    \useURL[url2681][https://web.archive.org/web/https://protonvpn.com/blog/macos-vpn-kill-switch/][][{[}Archive.org{]}]\from[url2681]
  \stopitemize
\item
  Linux:

  \startitemize
  \item
    Mullvad:

    \startitemize
    \item
      \useURL[url2682][https://mullvad.net/en/help/wireguard-and-mullvad-vpn/]\from[url2682]
      \useURL[url2683][https://web.archive.org/web/https://mullvad.net/en/help/wireguard-and-mullvad-vpn/][][{[}Archive.org{]}]\from[url2683]
    \item
      \useURL[url2684][https://mullvad.net/en/help/linux-openvpn-installation/]\from[url2684]
      \useURL[url2685][https://web.archive.org/web/https://mullvad.net/en/help/linux-openvpn-installation/][][{[}Archive.org{]}]\from[url2685]
    \stopitemize
  \item
    Proton VPN:
    \useURL[url2686][https://github.com/ProtonVPN/linux-cli/blob/master/USAGE.md\#kill-switch]\from[url2686]
    \useURL[url2687][https://web.archive.org/web/https://github.com/ProtonVPN/linux-cli/blob/master/USAGE.md][][{[}Archive.org{]}]\from[url2687]
  \item
    iVPN:

    \startitemize
    \item
      \useURL[url2688][https://www.ivpn.net/knowledgebase/linux/linux-wireguard-kill-switch/]\from[url2688]
      \useURL[url2689][https://web.archive.org/web/https://www.ivpn.net/knowledgebase/linux/linux-wireguard-kill-switch/][][{[}Archive.org{]}]\from[url2689]
    \item
      \useURL[url2690][https://www.ivpn.net/knowledgebase/linux/linux-kill-switch-using-the-uncomplicated-firewall-ufw/]\from[url2690]
      \useURL[url2691][https://web.archive.org/web/https://www.ivpn.net/knowledgebase/linux/linux-kill-switch-using-the-uncomplicated-firewall-ufw/][][{[}Archive.org{]}]\from[url2691]
    \stopitemize
  \stopitemize
\stopitemize

\section[title={Appendix S: Check your network for
surveillance/censorship using
OONI},reference={appendix-s-check-your-network-for-surveillancecensorship-using-ooni}]

So, what is OONI? OONI stands for Open Observatory of Network
Interference and is a sub-project of the Tor Project\footnote{Wikipedia,
  OONI,
  \useURL[url2692][https://en.wikipedia.org/wiki/OONI]\from[url2692]
  \useURL[url2693][https://wikiless.org/wiki/OONI][][{[}Wikiless{]}]\from[url2693]
  \useURL[url2694][https://web.archive.org/web/https://en.wikipedia.org/wiki/OONI][][{[}Archive.org{]}]\from[url2694]}.

First OONI will allow you to check online for surveillance/censorship in
your country just by looking at their Explorer that features test
results from other people. This can be done here:
\useURL[url2695][https://explorer.ooni.org/]\from[url2695]

But these tests are limited and could not apply to your personal
situation. If that is the case, you could consider running the OONI
Probe yourself and running the tests yourself.

The problem is that your network providers will be able to see those
tests and your attempts at connecting to various services if the network
is monitored. The other issue is that there are solutions to prevent
OONI from working properly\footnote{GitHub, Mhinkie, OONI-Detection
  \useURL[url2696][https://github.com/mhinkie/ooni-detection]\from[url2696]
  \useURL[url2697][https://web.archive.org/web/https://github.com/mhinkie/ooni-detection][][{[}Archive.org{]}]\from[url2697]}.

While this might not be important in a normal environment, this could
put you at risk in a hostile environment. {\bf So, running these tests
can be risky.}

{\bf If you are in such a hostile environment where you suspect network
activity is actively monitored and the simple fact of trying to access
some resources can put you at risk, you should take some precautions
before even attempting this:}

\startitemize
\item
  {\bf Do not run the tests from your home/work network.}
\item
  {\bf Do not run these tests from a known device or a smartphone but
  only for a secured OS on an ideally dedicated laptop.}

  \startitemize
  \item
    {\bf You will not be able to do this from Tails as Tails will try to
    connect to Tor by default}
  \item
    {\bf You should only do this with the Qubes OS route or the Whonix
    Route of this guide after completing one of the routes.}
  \stopitemize
\item
  {\bf Only consider running these tests quickly from a Public Wi-Fi
  from a safe distance (see \goto{Appendix P: Accessing the internet as
  safely as possible when Tor and VPNs are not an
  option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]).}
\stopitemize

The probe can be found here:
\useURL[url2698][https://ooni.org/install/]\from[url2698]
\useURL[url2699][https://web.archive.org/web/https://ooni.org/install/][][{[}Archive.org{]}]\from[url2699]
for various platforms (iOS, Android, Windows, macOS, and Linux).

\section[title={Appendix T: Checking files for
malware},reference={appendix-t-checking-files-for-malware}]

\subsection[title={Integrity (if
available):},reference={integrity-if-available}]

Usually, integrity checks\footnote{Wikipedia, File Verification
  \useURL[url2700][https://en.wikipedia.org/wiki/File_verification]\from[url2700]
  \useURL[url2701][https://wikiless.org/wiki/File_verification][][{[}Wikiless{]}]\from[url2701]
  \useURL[url2702][https://web.archive.org/web/https://en.wikipedia.org/wiki/File_verification][][{[}Archive.org{]}]\from[url2702]}
are done using hashes of files (usually stored within checksum files).
Older files could use CRC\footnote{Wikipedia, CRC
  \useURL[url2703][https://en.wikipedia.org/wiki/Cyclic_redundancy_check]\from[url2703]
  \useURL[url2704][https://wikiless.org/wiki/Cyclic_redundancy_check][][{[}Wikiless{]}]\from[url2704]
  \useURL[url2705][https://web.archive.org/web/https://en.wikipedia.org/wiki/Cyclic_redundancy_check][][{[}Archive.org{]}]\from[url2705]},
more recently MD5\footnote{Wikipedia, MD5
  \useURL[url2706][https://en.wikipedia.org/wiki/MD5]\from[url2706]
  \useURL[url2707][https://wikiless.org/wiki/MD5][][{[}Wikiless{]}]\from[url2707]
  \useURL[url2708][https://web.archive.org/web/https://en.wikipedia.org/wiki/MD5][][{[}Archive.org{]}]\from[url2708]}
but those present several weaknesses (CRC, MD5 \footnote{Wikipedia, MD5
  Security
  \useURL[url2709][https://en.wikipedia.org/wiki/MD5\#Security]\from[url2709]
  \useURL[url2710][https://wikiless.org/wiki/MD5][][{[}Wikiless{]}]\from[url2710]
  \useURL[url2711][https://web.archive.org/web/https://en.wikipedia.org/wiki/MD5][][{[}Archive.org{]}]\from[url2711]}
that make them unreliable for file integrity checks (which does not mean
they are not still widely used in other contexts).

This is because they do not prevent Collision\footnote{Wikipedia,
  Collisions
  \useURL[url2712][https://en.wikipedia.org/wiki/Collision_(computer_science)]\from[url2712]
  \useURL[url2713][https://wikiless.org/wiki/Collision_(computer_science)][][{[}Wikiless{]}]\from[url2713]
  \useURL[url2714][https://web.archive.org/web/https://en.wikipedia.org/wiki/Collision_(computer_science)][][{[}Archive.org{]}]\from[url2714]}
well enough and could allow an adversary to create a similar but
malicious file that would still produce in the same CRC or MD5 hash
despite having different content.

For this reason, it is usually recommended to use SHA-based \footnote{Wikipedia,
  SHA
  \useURL[url2715][https://en.wikipedia.org/wiki/Secure_Hash_Algorithms]\from[url2715]
  \useURL[url2716][https://wikiless.org/wiki/Secure_Hash_Algorithms][][{[}Wikiless{]}]\from[url2716]
  \useURL[url2717][https://web.archive.org/web/https://en.wikipedia.org/wiki/Secure_Hash_Algorithms][][{[}Archive.org{]}]\from[url2717]}
hashes and the most used is probably the SHA-2\footnote{Wikipedia, SHA-2
  \useURL[url2718][https://en.wikipedia.org/wiki/SHA-2]\from[url2718]
  \useURL[url2719][https://wikiless.org/wiki/SHA-2][][{[}Wikiless{]}]\from[url2719]
  \useURL[url2720][https://web.archive.org/web/https://en.wikipedia.org/wiki/SHA-2][][{[}Archive.org{]}]\from[url2720]}
based SHA-256 for verifying file integrity. SHA is much more resistant
to collisions\footnote{Wikipedia, Collision Resistance
  \useURL[url2721][https://en.wikipedia.org/wiki/Collision_resistance]\from[url2721]
  \useURL[url2722][https://wikiless.org/wiki/Collision_resistance][][{[}Wikiless{]}]\from[url2722]
  \useURL[url2723][https://web.archive.org/web/https://en.wikipedia.org/wiki/Collision_resistance][][{[}Archive.org{]}]\from[url2723]}
than CRC and MD5. And collisions with SHA-256 or SHA-512 are rare and
hard to compute for an adversary.

If a SHA-256 checksum is available from the source of the file, you
should not hesitate to use it to confirm the integrity of the file. Note
that SHA-1 is not recommended, but is better than not having a hash to
compare.

This checksum should itself be authenticated/trusted and should be
available from an authenticated/trusted source (obviously you should not
trust a file just because it has a checksum attached to it alone).

In the case of this guide, the SHA-256 checksums are available for each
file including the PDFs but are also authenticated using a GPG signature
allowing you to verify the authenticity of the checksum. This will bring
us to the next section about authenticity.

So how to check checksums? (In this case SHA-256 but you could change to
SHA-512

\startitemize
\item
  Windows\footnote{GnuPG Gpg4win Wiki, Check integrity of Gpg4win
    packages
    \useURL[url2724][https://wiki.gnupg.org/Gpg4win/CheckIntegrity]\from[url2724]
    \useURL[url2725][https://web.archive.org/web/https://wiki.gnupg.org/Gpg4win/CheckIntegrity][][{[}Archive.org{]}]\from[url2725]}:

  \startitemize
  \item
    Open a Command Prompt
  \item
    Run \type{certutil -hashfile filename.txt sha256} (replace sha256 by
    sha1 or sha512 or md5)
  \item
    Compare your result to one from a source you trust for that file
  \stopitemize
\item
  macOS :

  \startitemize
  \item
    Open a Terminal
  \item
    SHA: Run \type{shasum -a 256 /full/path/to/your/file} (replace 256
    by 512 or 1 for SHA-1)
  \item
    MD5: Run \type{md5 /full/path/to/your/file}
  \item
    Compare your result to one from a source you trust for that file
  \stopitemize
\item
  Linux:

  \startitemize
  \item
    Open a Terminal
  \item
    Run \type{shasum /full/path/to/your/file} (replace shasum by
    sha256sum, sha512sum or md5sum)
  \item
    Compare your result to one from a source you trust for that file
  \stopitemize
\stopitemize

{\bf Remember that checksums are just checksums. Having a matching
checksum does not mean the file is safe.}

\subsection[title={Authenticity (if
available):},reference={authenticity-if-available}]

Integrity is one thing. Authenticity is another thing. This is a process
where you can verify some information is authentic and from the expected
source. This is usually done by signing information (using GPG\footnote{Wikipedia,
  GPG
  \useURL[url2726][https://en.wikipedia.org/wiki/GNU_Privacy_Guard]\from[url2726]
  \useURL[url2727][https://wikiless.org/wiki/GNU_Privacy_Guard][][{[}Wikiless{]}]\from[url2727]
  \useURL[url2728][https://web.archive.org/web/https://en.wikipedia.org/wiki/GNU_Privacy_Guard][][{[}Archive.org{]}]\from[url2728]}
for instance) using public-key cryptography\footnote{Wikipedia,
  Public-Key Cryptography
  \useURL[url2729][https://en.wikipedia.org/wiki/Public-key_cryptography]\from[url2729]
  \useURL[url2730][https://wikiless.org/wiki/Public-key_cryptography][][{[}Wikiless{]}]\from[url2730]
  \useURL[url2731][https://web.archive.org/web/https://en.wikipedia.org/wiki/Public-key_cryptography][][{[}Archive.org{]}]\from[url2731]}.

Signing can serve both purposes and allow you to check for both
integrity and authenticity.

If available, you should always verify the signatures of files to
confirm their authenticity.

In essence:

\startitemize
\item
  Install GPG for your OS:

  \startitemize
  \item
    Windows: gpg4win
    (\useURL[url2732][https://www.gpg4win.org/]\from[url2732]
    \useURL[url2733][https://web.archive.org/web/https://www.gpg4win.org/][][{[}Archive.org{]}]\from[url2733])
  \item
    macOS: GPGTools
    (\useURL[url2734][https://gpgtools.org/]\from[url2734]
    \useURL[url2735][https://web.archive.org/web/https://gpgtools.org/][][{[}Archive.org{]}]\from[url2735])
  \item
    Linux: It should be pre-installed in most distributions
  \stopitemize
\item
  Download the Signature key from a trusted source. If someone is not
  giving you a key directly, you should check for multiple versions on
  other websites to confirm you are using the right key (GitHub, GitLab,
  Twitter, Keybase, Public Keys Servers\ldots{}).
\item
  Import the trusted key (replace keyfile.asc by the filename of the
  trusted key):

  \startitemize
  \item
    Windows:

    \startitemize[packed]
    \item
      From a Command Prompt, Run \type{gpg --import keyfile.asc}
    \stopitemize
  \item
    macOS:

    \startitemize[packed]
    \item
      From a Terminal, Run \type{gpg --import keyfile.asc}
    \stopitemize
  \item
    Linux:

    \startitemize[packed]
    \item
      From a Terminal, Run \type{gpg --import keyfile.asc}
    \stopitemize
  \stopitemize
\item
  Verify the file signature against the imported (trusted) signature
  (replace filetoverify.asc by the signature file that was associated
  with the file, replace filetoverify.txt by the actual file to verify):

  \startitemize
  \item
    Windows:

    \startitemize
    \item
      Run
      \type{gpg --verify-options show-notations --verify filetoverify.asc filetoverify.txt}
    \item
      The result should show the signature is good and match the trusted
      signature you imported earlier.
    \stopitemize
  \item
    macOS:

    \startitemize
    \item
      Run
      \type{gpg --verify-options show-notations --verify filetoverify.asc filetoverify.txt}
    \item
      The result should show the signature is good and match the trusted
      signature you imported earlier.
    \stopitemize
  \item
    Linux:

    \startitemize
    \item
      Run
      \type{gpg --verify-options show-notations --verify filetoverify.asc filetoverify.txt}
    \item
      The result should show the signature is good and match the trusted
      signature you imported earlier.
    \stopitemize
  \stopitemize
\stopitemize

For some other tutorials, please see:

\startitemize
\item
  \useURL[url2736][https://support.torproject.org/tbb/how-to-verify-signature/]\from[url2736]
  \useURL[url2737][https://web.archive.org/web/https://support.torproject.org/tbb/how-to-verify-signature/][][{[}Archive.org{]}]\from[url2737]
\item
  \useURL[url2738][https://tails.boum.org/install/vm/index.en.html]\from[url2738]
  \useURL[url2739][https://web.archive.org/web/https://tails.boum.org/install/vm/index.en.html][][{[}Archive.org{]}]\from[url2739]
  (See Basic OpenPGP verification).
\item
  \useURL[url2740][https://www.whonix.org/wiki/Verify_the_Whonix_images]\from[url2740]
  \useURL[url2741][https://web.archive.org/web/https://www.whonix.org/wiki/Verify_the_Whonix_images][][{[}Archive.org{]}]\from[url2741]
\stopitemize

All these guides should also apply to any other file with any other key.

\subsection[title={Security (checking for actual
malware):},reference={security-checking-for-actual-malware}]

{\bf Every check should ideally happen in sandboxed/hardened Virtual
Machines. This is to mitigate the possibilities for malware to access
your Host computer.}

\subsubsection[title={Anti-Virus
Software:},reference={anti-virus-software}]

You might be asking yourself, what about Anti-Virus solutions? Well, no
\ldots{} these are not perfect solutions against many modern malware and
viruses using polymorphic code\footnote{Wikipedia, Polymorphic Code
  \useURL[url2742][https://en.wikipedia.org/wiki/Polymorphic_code]\from[url2742]
  \useURL[url2743][https://wikiless.org/wiki/Polymorphic_code][][{[}Wikiless{]}]\from[url2743]
  \useURL[url2744][https://web.archive.org/web/https://en.wikipedia.org/wiki/Polymorphic_code][][{[}Archive.org{]}]\from[url2744]}.
But it does not mean they cannot help against less sophisticated and
known attacks. It depends on how to use them as AV software can become
an attack vector in itself.

Again, this is all a matter of threat modeling. Can AV software help you
against the NSA? Probably not. Can it help you against less resourceful
adversaries using known malware? Probably.

Some will just argue against them broadly like Whonix\footnote{Whonix
  Documentation, Use of AV,
  \useURL[url2745][https://www.whonix.org/wiki/Malware_and_Firmware_Trojans\#The_Utility_of_Antivirus_Tools]\from[url2745]
  \useURL[url2746][https://web.archive.org/web/https://www.whonix.org/wiki/Malware_and_Firmware_Trojans][][{[}Archive.org{]}]\from[url2746]}
but this topic is being discussed and disputed even at Whonix\footnote{Whonix
  Forums,
  \useURL[url2747][https://forums.whonix.org/t/installation-of-antivirus-scanners-by-default/9755/8]\from[url2747]
  \useURL[url2748][https://web.archive.org/web/https://forums.whonix.org/t/installation-of-antivirus-scanners-by-default/9755/8][][{[}Archive.org{]}]\from[url2748]}
by other members of their community.

Contrary to popular myths perpetuating the idea that only Windows is
subject to malware and that detection tools are useless on Linux and
macOS:

\startitemize
\item
  Yes, there are viruses and malware for Linux\footnote{AV-Test Security
    Report 2018-2019,
    \useURL[url2749][https://www.av-test.org/fileadmin/pdf/security_report/AV-TEST_Security_Report_2018-2019.pdf]\from[url2749]
    \useURL[url2750][https://web.archive.org/web/https://www.av-test.org/fileadmin/pdf/security_report/AV-TEST_Security_Report_2018-2019.pdf][][{[}Archive.org{]}]\from[url2750]}\quote{\footnote{ZDNet,
    ESET discovers 21 new Linux malware families
    \useURL[url2751][https://www.zdnet.com/article/eset-discovers-21-new-linux-malware-families/]\from[url2751]
    \useURL[url2752][https://web.archive.org/web/https://www.zdnet.com/article/eset-discovers-21-new-linux-malware-families/][][{[}Archive.org{]}]\from[url2752]}}\footnote{NakeSecurity,
    EvilGnome -- Linux malware aimed at your desktop, not your servers
    \useURL[url2753][https://nakedsecurity.sophos.com/2019/07/25/evilgnome-linux-malware-aimed-at-your-laptop-not-your-servers/]\from[url2753]
    \useURL[url2754][https://web.archive.org/web/https://nakedsecurity.sophos.com/2019/07/25/evilgnome-linux-malware-aimed-at-your-laptop-not-your-servers/][][{[}Archive.org{]}]\from[url2754]}\quote{\footnote{Immunify,
    HiddenWasp: How to detect malware hidden on Linux & IoT
    \useURL[url2755][https://blog.imunify360.com/hiddenwasp-how-to-detect-malware-hidden-on-linux-iot]\from[url2755]
    \useURL[url2756][https://web.archive.org/web/https://blog.imunify360.com/hiddenwasp-how-to-detect-malware-hidden-on-linux-iot][][{[}Archive.org{]}]\from[url2756]}}\footnote{Wikipedia,
    Linux Malware
    \useURL[url2757][https://en.wikipedia.org/wiki/Linux_malware]\from[url2757]
    \useURL[url2758][https://wikiless.org/wiki/Linux_malware][][{[}Wikiless{]}]\from[url2758]
    \useURL[url2759][https://web.archive.org/web/https://en.wikipedia.org/wiki/Linux_malware][][{[}Archive.org{]}]\from[url2759]}
\item
  Yes, there are viruses and malware for macOS\footnote{Lenny Zeltser,
    Analyzing Malicious Documents Cheat Sheet
    \useURL[url2760][https://zeltser.com/analyzing-malicious-documents/]\from[url2760]
    \useURL[url2761][https://web.archive.org/web/https://zeltser.com/analyzing-malicious-documents/][][{[}Archive.org{]}]\from[url2761]}\quote{\footnote{Wikipedia,
    macOS Malware
    \useURL[url2762][https://en.wikipedia.org/wiki/macOS_malware]\from[url2762]
    \useURL[url2763][https://wikiless.org/wiki/MacOS_malware][][{[}Wikiless{]}]\from[url2763]
    \useURL[url2764][https://web.archive.org/web/https://en.wikipedia.org/wiki/MacOS_malware][][{[}Archive.org{]}]\from[url2764]}\footnote{MacWorld,
    List of Mac viruses, malware and security flaws
    \useURL[url2765][https://www.macworld.co.uk/feature/mac-viruses-list-3668354/]\from[url2765]
    \useURL[url2766][https://web.archive.org/web/https://www.macworld.co.uk/feature/mac-viruses-list-3668354/][][{[}Archive.org{]}]\from[url2766]}}\footnote{JAMF,
    The Mac Malware of 2020
    \useURL[url2767][https://resources.jamf.com/documents/macmalware-2020.pdf]\from[url2767]
    \useURL[url2768][https://web.archive.org/web/https://resources.jamf.com/documents/macmalware-2020.pdf][][{[}Archive.org{]}]\from[url2768]}\footnote{macOS
    Security and Privacy Guide,
    \useURL[url2769][https://github.com/drduh/macOS-Security-and-Privacy-Guide\#viruses-and-malware]\from[url2769]
    \useURL[url2770][https://web.archive.org/web/https://www.bejarano.io/hardening-macos/][][{[}Archive.org{]}]\from[url2770]}
\stopitemize

My take on the matter is on the pragmatic side. There is still room for
some AV software for some selective and limited use. But it depends on
which one and how you use them:

\startitemize
\item
  Do not use AV software with real-time protection as they often run
  with administrator privileges and can become an attack vector.
\item
  Do not use Commercial AV software that uses any \quotation{cloud
  protection} or sends extensive telemetry and samples to their company.
\item
  Do use Open-Source non-real-time offline Anti-Virus/Anti-Malware tools
  as an added measure to scan some files such as:

  \startitemize
  \item
    Windows/Linux/macOS/Qubes OS: ClamAV
    (\useURL[url2771][https://www.clamav.net/]\from[url2771]
    \useURL[url2772][https://web.archive.org/web/https://www.clamav.net/][][{[}Archive.org{]}]\from[url2772])
  \item
    Linux/Qubes OS: RFXN Linux Malware Detect
    (\useURL[url2773][https://github.com/rfxn/linux-malware-detect]\from[url2773]
    \useURL[url2774][https://web.archive.org/web/https://github.com/rfxn/linux-malware-detect][][{[}Archive.org{]}]\from[url2774])
  \item
    Linux/Qubes OS: Chkrootkit
    (\useURL[url2775][http://www.chkrootkit.org/]\from[url2775]
    \useURL[url2776][https://web.archive.org/web/http://www.chkrootkit.org/][][{[}Archive.org{]}]\from[url2776])
  \stopitemize
\item
  You could also use online services for {\bf non-sensitive files}* such
  as VirusTotal
  (\useURL[url2777][https://www.virustotal.com/gui/]\from[url2777]) or
  Hybrid-analysis
  (\useURL[url2778][https://hybrid-analysis.com/]\from[url2778]).

  \startitemize
  \item
    You could also just check the VirusTotal database for the hash of
    your file if you don't want to send it over (see
    \useURL[url2779][https://developers.virustotal.com/v3.0/docs/search-by-hash]\from[url2779]
    \useURL[url2780][https://web.archive.org/web/https://developers.virustotal.com/v3.0/docs/search-by-hash][][{[}Archive.org{]}]\from[url2780]
    (See the \goto{Integrity (if available):}[integrity-if-available]
    section again for guidance on how to generate hashes).
  \item
    Other tools are also available for non-sensitive files and a
    convenient list is right here:
    \useURL[url2781][https://github.com/rshipp/awesome-malware-analysis\#online-scanners-and-sandboxes]\from[url2781]
    \useURL[url2782][https://web.archive.org/web/https://github.com/rshipp/awesome-malware-analysis][][{[}Archive.org{]}]\from[url2782]
  \stopitemize
\item
  {\bf Please be aware that while VirusTotal might seem very practical
  for scanning various files, their \quotation{privacy policy} is
  problematic (see
  \useURL[url2783][https://support.virustotal.com/hc/en-us/articles/115002168385-Privacy-Policy]\from[url2783]}
  \useURL[url2784][https://web.archive.org/web/https://support.virustotal.com/hc/en-us/articles/115002168385-Privacy-Policy][][{[}Archive.org{]}]\from[url2784]{\bf )
  and states:}
\stopitemize

\quotation{When you submit Samples to the Services, if you submit
Samples to the Services, You will collect all of the information in the
Sample itself and information about the act of submitting it}.

{\bf So, remember that any document you submit to them will be kept,
shared, and used commercially including the content. So, you should not
do that with sensitive information and rely on various local AV scanners
(that do not send samples online).}

So, if you are in doubt:

\startitemize
\item
  For non-sensitive files, we do encourage you to check any
  documents/images/videos/archives/programs you intend to open with
  VirusTotal (or other similar tools) because \ldots{} Why not? (Either
  by uploading or checking hashes).
\item
  For sensitive files, we would recommend at least an offline
  unprivileged ClamAV scan of the files.
\stopitemize

For instance, this guide's PDF files were submitted to VirusTotal
because it is meant to be public knowledge and we see no valid argument
against it. It does not guarantee the absence of malware, but it does
not hurt to add this check.

\subsubsection[title={Manual Reviews:},reference={manual-reviews-1}]

You can also try to check various files for malware using various tools.
This can be done as an extra measure and is especially useful with
documents rather than apps and various executables.

These methods require more tinkering but can be useful if you want to go
the extra length.

\subsubsubsection[title={PDF files:},reference={pdf-files}]

Again, regarding the PDFs of this guide and as explained in the README
of my repository, you could check for anomalies using PDFID which you
can download at
\useURL[url2785][https://blog.didierstevens.com/programs/pdf-tools/]\from[url2785]
\useURL[url2786][https://web.archive.org/web/https://blog.didierstevens.com/programs/pdf-tools/][][{[}Archive.org{]}]\from[url2786]:

\startitemize
\item
  Install Python 3 (on Windows/Linux/macOS/Qubes OS)
\item
  Download PDFID and Extract the files
\item
  Run \quotation{python pdfid.py file-to-check.pdf} and you should see
  these at 0 in the case of the PDF files in this repository:
\stopitemize

\starttyping

/JS 0 #This indicates the presence of Javascript

/JavaScript 0 #This indicates the presence of Javascript

/AA 0 #This indicates the presence of automatic action on opening

/OpenAction 0 #This indicates the presence of automatic action on opening

/AcroForm 0 #This indicates the presence of AcroForm which could contain JavaScript

/JBIG2Decode 0 #This indicates the use of JBIG2 compression which could be used for obfuscating content

/RichMedia 0 #This indicates the presence of rich media within the PDF such as Flash

/Launch 0 #This counts the launch actions

/EmbeddedFile 0 #This indicates there are embedded files within the PDF

/XFA 0 #This indicates the presence of XML Forms within the PDF
\stoptyping

Now, what if you think the PDF is still suspicious? Fear not \ldots{}
there are more things you can do to ensure it is not malicious:

\startitemize
\item
  {\bf Qubes OS:} Consider using
  \useURL[url2787][https://github.com/QubesOS/qubes-app-linux-pdf-converter]\from[url2787]
  \useURL[url2788][https://web.archive.org/web/https://github.com/QubesOS/qubes-app-linux-pdf-converter][][{[}Archive.org{]}]\from[url2788]
  which will convert your PDF into a flattened image file. This should
  theoretically remove any malicious code in it. Note that this will
  also render the PDF formatting useless (such as links, headings,
  bookmarks, and references).
\item
  {\bf (Deprecated) Linux/Qubes OS} (or possibly macOS through Homebrew
  or Windows through Cygwin): Consider not using
  \useURL[url2789][https://github.com/firstlookmedia/pdf-redact-tools]\from[url2789]
  \useURL[url2790][https://web.archive.org/web/https://github.com/firstlookmedia/pdf-redact-tools][][{[}Archive.org{]}]\from[url2790]
  which will also turn your PDF into a flattened image file. Again, this
  should theoretically remove any malicious code in it. Again, this will
  also render the PDF formatting useless (such as links, headings,
  bookmarks, and references). {\bf Note that this tool is deprecated and
  relies on a library called \quotation{ImageMagick} which is known for
  several security issues}\footnote{ImageTragick.com,
    \useURL[url2791][https://imagetragick.com/]\from[url2791]
    \useURL[url2792][https://web.archive.org/web/https://imagetragick.com/][][{[}Archive.org{]}]\from[url2792]}{\bf .
  You should not use this tool even if it is recommended in some other
  guides.}
\item
  {\bf Windows/Linux/Qubes/OS/macOS:} Consider using
  \useURL[url2793][https://github.com/firstlookmedia/dangerzone]\from[url2793]
  \useURL[url2794][https://web.archive.org/web/https://github.com/firstlookmedia/dangerzone][][{[}Archive.org{]}]\from[url2794]
  which was inspired by Qubes PDF Converted above and does the same but
  is well maintained and works on all OSes. This tool also works with
  Images, ODF files, and Office files (Warning: On Windows, this tool
  requires Docker-Desktop installed and this might (will) interfere with
  Virtualbox and other Virtualization software because it requires
  enabling Hyper-V. VirtualBox and Hyper-V do not play nice
  together\footnote{Oracle Virtualbox Documentation,
    \useURL[url2795][https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/hyperv-support.html]\from[url2795]
    \useURL[url2796][https://web.archive.org/web/https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/hyperv-support.html][][{[}Archive.org{]}]\from[url2796]}.
  Consider installing this within a Linux VM for convenience instead of
  a Windows OS).
\stopitemize

\subsubsubsection[title={Other types of
files:},reference={other-types-of-files}]

Here are some various resources for this purpose where you will find
what tool to use for what type:

\startitemize
\item
  {\bf For Documents/Pictures:} Consider using
  \useURL[url2797][https://github.com/firstlookmedia/dangerzone]\from[url2797]
  \useURL[url2798][https://web.archive.org/web/https://github.com/firstlookmedia/dangerzone][][{[}Archive.org{]}]\from[url2798]
  which was inspired by Qubes PDF Converted above and does the same but
  is well maintained and works on all OSes. This tool also works with
  Images, ODF files, and Office files (Warning: On Windows, this tool
  requires Docker-Desktop installed and this might (will) interfere with
  Virtualbox and other Virtualization software because it requires
  enabling Hyper-V. VirtualBox and Hyper-V do not play nice
  together\footnote{Oracle Virtualbox Documentation,
    \useURL[url2799][https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/hyperv-support.html]\from[url2799]
    \useURL[url2800][https://web.archive.org/web/https://docs.oracle.com/en/virtualization/virtualbox/6.0/admin/hyperv-support.html][][{[}Archive.org{]}]\from[url2800]}.
  Consider installing this within a Linux VM for convenience instead of
  a Windows OS).
\item
  {\bf For Videos:} Be extremely careful, use an up-to-date player in a
  sandboxed environment. Remember
  \useURL[url2801][https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez]\from[url2801]
  \useURL[url2802][https://web.archive.org/web/https://www.vice.com/en/article/v7gd9b/facebook-helped-fbi-hack-child-predator-buster-hernandez][][{[}Archive.org{]}]\from[url2802]
\item
  This practical cheat sheet from SANS:
  \useURL[url2803][https://digital-forensics.sans.org/media/analyzing-malicious-document-files.pdf]\from[url2803]
  \useURL[url2804][https://web.archive.org/web/https://digital-forensics.sans.org/media/analyzing-malicious-document-files.pdf][][{[}Archive.org{]}]\from[url2804]
  (warning, many of those tools might be harder to use on Windows and
  you might consider using them from a Linux OS such as Tails, Whonix
  Workstation, or a Linux distribution of your choice as explained later
  in this guide. There are also other guides out there\footnote{Lenny
    Zeltser, Analyzing Malicious Documents Cheat Sheet
    \useURL[url2805][https://zeltser.com/analyzing-malicious-documents/]\from[url2805]
    \useURL[url2806][https://web.archive.org/web/https://zeltser.com/analyzing-malicious-documents/][][{[}Archive.org{]}]\from[url2806]}
  that might be of use).
\item
  This GitHub repository with various resources on malware analysis:
  \useURL[url2807][https://github.com/rshipp/awesome-malware-analysis]\from[url2807]
  \useURL[url2808][https://web.archive.org/web/https://github.com/rshipp/awesome-malware-analysis][][{[}Archive.org{]}]\from[url2808]
\item
  This interesting PDF detailing which tool to use for which file type
  \useURL[url2809][https://www.winitor.com/pdf/Malware-Analysis-Fundamentals-Files-Tools.pdf]\from[url2809]
  \useURL[url2810][https://web.archive.org/web/https://www.winitor.com/pdf/Malware-Analysis-Fundamentals-Files-Tools.pdf][][{[}Archive.org{]}]\from[url2810]
\stopitemize

{\bf Even with all those resources, keep in mind you might still get
advanced malware if those are not detected by those various tools. Be
careful and remember to handle these files within isolated Virtual
Machines, if possible, to limit the attack surface and vectors.}

\section[title={Appendix U: How to bypass (some) local restrictions on
supervised
computers},reference={appendix-u-how-to-bypass-some-local-restrictions-on-supervised-computers}]

There might be situations where the only device you have at your
disposal is not really yours such as:

\startitemize
\item
  Using a Work computer with restrictions in place on what you can
  do/run.
\item
  Misuse of Parental control features to monitor your computer usage
  (despite you being a non-consenting Adult).
\item
  Misuse of various monitoring apps to monitor your computer usage
  against your will.
\stopitemize

The situation might look desperate, but it is not necessarily the case
as there are some safe ways to bypass these depending on how well your
adversaries did their job securing your computer.

\subsection[title={Portable Apps:},reference={portable-apps}]

There are plenty of methods you could use to bypass those restrictions
locally. One of them would be to use portable apps\footnote{Wikipedia,
  Portable Applications
  \useURL[url2811][https://en.wikipedia.org/wiki/Portable_application]\from[url2811]
  \useURL[url2812][https://wikiless.org/wiki/Portable_application][][{[}Wikiless{]}]\from[url2812]
  \useURL[url2813][https://web.archive.org/web/https://en.wikipedia.org/wiki/Portable_application][][{[}Archive.org{]}]\from[url2813]}.
Those apps do not require installation on your system and can be run
from a USB key or anywhere else.

{\bf But this is not a method we would recommend.}

This is because those portable apps will not necessarily hide themselves
(or be able to hide themselves) from the usage reports and forensic
examination. This method is just too risky and will probably arise
issues if noticed if you are in such a hostile environment.

Even the most basic controls (supervision or parental) will send out
detailed app usage to your adversary.

\subsection[title={Bootable Live
Systems:},reference={bootable-live-systems}]

This method is the one we would recommend in those cases.

It is relatively easy for your adversary to prevent this by setting up
firmware BIOS/UEFI (see \goto{Bios/UEFI/Firmware Settings of your
laptop}[biosuefifirmware-settings-of-your-laptop]) controls but usually
most adversaries will overlook this possibility which requires more
technical knowledge than just relying on Software.

This method could even decrease suspicion and increase your plausible
deniability as your adversaries think they have things under control and
that everything appears normal in their reports.

This method only depends on one security feature (that they probably did
not turn on in most cases): Boot Security.

Boot Security is divided into several types:

\startitemize
\item
  Simple BIOS/UEFI password preventing the change of the boot order.
  This means you cannot start such a live system in place of your
  supervised OS without providing the BIOS/UEFI password.
\item
  Secure Boot. This is a \quotation{standard} feature preventing you
  from starting unsigned systems from your computer. While this feature
  could be configured to only allow your supervised system, usually by
  default it will allow running an entire range of signed systems
  (signed by Microsoft or the Manufacturer for instance).
\stopitemize

Secure Boot is relatively easy to bypass as there are plenty of Live
Systems that are now Secure Boot compliant (meaning they are signed) and
will be allowed by your laptop.

The BIOS/UEFI password on the other hand is much harder to bypass
without risks. In that case, you are left with two options:

\startitemize
\item
  Guess/Know the password so that you can change the boot order of your
  laptop without raising suspicions
\item
  Reset the password using various methods to remove the password.
  {\bf we would not recommend doing this because if your adversaries
  went the extra length of enabling this security feature, they probably
  will be suspicious if it were disabled, and this might increase
  suspicion and decrease your plausible deniability considerably.}
\stopitemize

Again, this feature is usually overlooked by most unskilled/lazy
adversaries and in my experience left disabled.

{\bf This is your best chance into bypassing local controls without
traces.}

The reason is that most of the controls are within your main Operating
System software and only monitor what happens within the Operating
System. Those measures will not be able to monitor what happened at the
Hardware/Firmware level before the Operating System loads.

\subsection[title={Precautions:},reference={precautions}]

While you might be able to bypass local restrictions easily using a Live
System such as Tails, remember that your network might also be monitored
for unusual activities.

Unusual network activities showing up from a computer at the same time
your computer is seemingly powered off might raise suspicions.

If you are to resort to this, you should never do so from a
monitored/known network but only from a safe different network. Ideally
a safe public wi-fi (See \goto{Find some safe places with decent public
Wi-Fi}[find-some-safe-places-with-decent-public-wi-fi]).

{\bf Do not use a live system on a Software supervised/monitored device
on a known network.}

{\bf Refer to the Tails route to achieve this. See \goto{The Tails
route}[the-tor-browser-route] and \goto{Appendix P: Accessing the
internet as safely as possible when Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]
sections.}

\section[title={Appendix V: What browser to use in your Guest
VM/Disposable
VM},reference={appendix-v-what-browser-to-use-in-your-guest-vmdisposable-vm}]

{\bf Temporary Important Warning: Please see \goto{Microarchitectural
Side-channel Deanonymization
Attacks:}[microarchitectural-side-channel-deanonymization-attacks] for
all browsers except Tor Browser.}

There are 6 possibilities of browser to use on your guest/disposable VM:

\startitemize
\item
  Brave (Chromium-based)
\item
  Edge (Chromium-based, Windows Only)
\item
  Firefox
\item
  Safari (macOS VM only)
\item
  Tor Browser
\stopitemize

Here is a comparison table of one fingerprinting test of various
browsers with their native settings ({\bf but Javascript enabled for
usability, except for Tor Safest mode}).

{\bf Disclaimer: these tests while nice are not conclusive of the real
fingerprinting resistance. But they can help compare browsers between
each other.}

Browser
https://coveryourtracks.eff.org/
Fingerprinting Test with real Ad
Safari (Normal)*
Fail (Unique)
Safari (Private Window) *
Fail (Unique)
Edge (Normal)**
Fail (Unique)
Edge (Private Window) **
Fail (Unique)
Firefox (Normal)
Fail (Unique)
Firefox (Private Window)
Fail (Unique)
Chrome (Normal)
Fail (Unique)
Chrome (Private Window)
Fail (Unique)
Brave (Normal)
Passed (Randomized)
Brave (Private Window)
Passed (Randomized)
Brave (Tor Window)
Passed (Randomized)
Tor Browser (Normal mode)
Partial
Tor Browser (Safer mode)
Partial
Tor Browser (Safest mode)
Unknown (Result did not load)
\startitemize[packed]
\item
  *: macOS only. **: Windows only.
\stopitemize

Another useful resource to be considered for comparing browsers is:
\useURL[url2814][https://privacytests.org/]\from[url2814]
\useURL[url2815][https://web.archive.org/web/https://privacytests.org/][][{[}Archive.org{]}]\from[url2815]

\subsection[title={Brave:},reference={brave}]

{\bf This is my recommended/preferred choice for a Browser within your
guest VMs. This is not my recommended choice for a Browser within your
Host OS where we strictly recommend Tor Browser as they recommend it
themselves}\footnote{Brave Help, What is a Private Window with Tor
  Connectivity?
  \useURL[url2816][https://support.brave.com/hc/en-us/articles/360018121491-What-is-a-Private-Window-with-Tor]\from[url2816]
  \useURL[url2817][https://web.archive.org/web/https://support.brave.com/hc/en-us/articles/360018121491-What-is-a-Private-Window-with-Tor][][{[}Archive.org{]}]\from[url2817]}{\bf .}

Why Brave despite the controversies\footnote{BlackGNU, Brave, the false
  sensation of privacy
  \useURL[url2818][https://blackgnu.net/brave-is-shit.html]\from[url2818]
  \useURL[url2819][https://web.archive.org/web/https://blackgnu.net/brave-is-shit.html][][{[}Archive.org{]}]\from[url2819]}?

\startitemize
\item
  You will encounter fewer issues later with account creations (captchas
  \ldots{}). This is based on my experiences trying to create plenty of
  online identities using various browsers. You will have to trust me on
  that.
\item
  You will enjoy native ad-blocking where none is available in others by
  default without adding extensions\footnote{Brave Help Center, What is
    \quotation{Shields}?
    \useURL[url2820][https://support.brave.com/hc/en-us/articles/360022973471-What-is-Shields]\from[url2820]
    \useURL[url2821][https://web.archive.org/web/https://support.brave.com/hc/en-us/articles/360022973471-What-is-Shields][][{[}Archive.org{]}]\from[url2821]}.
\item
  Performance is arguably better than Firefox\footnote{VentureBeat,
    Browser benchmark battle January 2020: Chrome vs.~Firefox vs.~Edge
    vs.~Brave
    \useURL[url2822][https://venturebeat.com/2020/01/15/browser-benchmark-battle-january-2020-chrome-firefox-edge-brave/view-all/]\from[url2822]
    \useURL[url2823][https://web.archive.org/web/https://venturebeat.com/2020/01/15/browser-benchmark-battle-january-2020-chrome-firefox-edge-brave/view-all/][][{[}Archive.org{]}]\from[url2823]}.
\item
  Brave is arguably better at fingerprinting resistance than
  others\footnote{Brave.com, Brave, Fingerprinting, and Privacy Budgets
    \useURL[url2824][https://brave.com/brave-fingerprinting-and-privacy-budgets/]\from[url2824]
    \useURL[url2825][https://web.archive.org/web/https://brave.com/brave-fingerprinting-and-privacy-budgets/][][{[}Archive.org{]}]\from[url2825]}.
\item
  Security of Chromium-based Browser is arguably better and more secure
  than Firefox\footnote{Madaidan's Insecurities, Firefox and Chromium
    \useURL[url2826][https://madaidans-insecurities.github.io/firefox-chromium.html]\from[url2826]
    \useURL[url2827][https://web.archive.org/web/https://madaidans-insecurities.github.io/firefox-chromium.html][][{[}Archive.org{]}]\from[url2827]}'\footnote{GrapheneOS,
    Web Browsing
    \useURL[url2828][https://grapheneos.org/usage\#web-browsing]\from[url2828]
    \useURL[url2829][https://web.archive.org/web/https://grapheneos.org/usage\#web-browsing][][{[}Archive.org{]}]\from[url2829]}.
  Within the context of this guide, security should be privileged to
  prevent any vulnerability or exploit from gaining access to the VM.
\item
  Comparison of both by Mozilla:
  \useURL[url2830][https://www.mozilla.org/en-US/firefox/browsers/compare/brave/]\from[url2830]
  \useURL[url2831][https://web.archive.org/web/https://www.mozilla.org/en-US/firefox/browsers/compare/brave/][][{[}Archive.org{]}]\from[url2831]
\item
  Comparison of both by Techlore:
  \useURL[url2832][https://www.youtube.com/watch?v=qkJGF3syQy4]\from[url2832]
  \useURL[url2833][https://yewtu.be/watch?v=qkJGF3syQy4][][{[}Invidious{]}]\from[url2833]
\item
  The whole traffic will be routed over a VPN over Tor anyway. So even
  if you mistakenly opt-in for some telemetry, it is not so important.
  Remember that in this anonymity threat model, we are mostly after
  anonymity and security. The privacy of our online identities does not
  matter that much unless the privacy issue is also a security issue
  that could help deanonymize you.
\item
  Brave was found to be sending no identifiable telemetry compared to
  other browsers\footnote{ResearchGate, Web Browser Privacy: What Do
    Browsers Say When They Phone Home?
    \useURL[url2834][https://www.researchgate.net/publication/349979628_Web_Browser_Privacy_What_Do_Browsers_Say_When_They_Phone_Home]\from[url2834]
    \useURL[url2835][https://web.archive.org/web/https://www.researchgate.net/publication/349979628_Web_Browser_Privacy_What_Do_Browsers_Say_When_They_Phone_Home][][{[}Archive.org{]}]\from[url2835]}.
\stopitemize

\subsection[title={Ungoogled-Chromium:},reference={ungoogled-chromium}]

{\bf This browser is considered a security liability due to their
systemic lagging on security patches}\footnote{Duck's pond,
  Ungoogled-Chromium
  \useURL[url2836][https://qua3k.github.io/ungoogled/]\from[url2836]
  \useURL[url2837][https://web.archive.org/web/https://qua3k.github.io/ungoogled/][][{[}Archive.org{]}]\from[url2837]}{\bf .}

{\bf It is strongly advised not to use Ungoogled-Chromium.}

\subsection[title={Edge:},reference={edge}]

This is for Windows users only. Edge is a solid choice too.

\startitemize
\item
  You will encounter fewer issues later with account creations (captchas
  \ldots{}). This is based on my experiences trying to create plenty of
  online identities using various browsers. You will have to trust me on
  that.
\item
  Better Security than Firefox as it is Chromium-based\footnote{Madaidan's
    Insecurities, Firefox and Chromium
    \useURL[url2838][https://madaidans-insecurities.github.io/firefox-chromium.html]\from[url2838]
    \useURL[url2839][https://web.archive.org/web/https://madaidans-insecurities.github.io/firefox-chromium.html][][{[}Archive.org{]}]\from[url2839]}'\footnote{GrapheneOS,
    Web Browsing
    \useURL[url2840][https://grapheneos.org/usage\#web-browsing]\from[url2840]
    \useURL[url2841][https://web.archive.org/web/https://grapheneos.org/usage\#web-browsing][][{[}Archive.org{]}]\from[url2841]}.
\item
  Better Performance than Firefox.
\item
  The whole traffic will be router through Tor anyway.
\item
  Can benefit from additional security using Microsoft Defender
  Application Guard (MDAG)\footnote{Microsoft.com, Microsoft Edge
    support for Microsoft Defender Application Guard
    \useURL[url2842][https://docs.microsoft.com/en-us/deployedge/microsoft-edge-security-windows-defender-application-guard]\from[url2842]
    \useURL[url2843][https://web.archive.org/web/https://docs.microsoft.com/en-us/deployedge/microsoft-edge-security-windows-defender-application-guard][][{[}Archive.org{]}]\from[url2843]}.
  Note that this feature cannot be enabled in a Virtualbox VM
  unfortunately.
\item
  Native tracker blocking (Similar to Brave Shields).
\stopitemize

Cons:

\startitemize[packed]
\item
  You will have to disable some telemetry within the Browser
\stopitemize

\subsection[title={Safari:},reference={safari}]

The macOS default browser.

Pros:

\startitemize[packed]
\item
  It is a Browser with decent security and sandboxing capabilities.
\stopitemize

Cons:

\startitemize
\item
  It is macOS only (obviously)
\item
  It requires signing-in into the App Store to install extensions
  (impossible within the scope of this guide since it is a VM)
\item
  Even if you could, it lacks the best Extensions available for Firefox
  and Chrome.
\stopitemize

Overall, we would not recommend using Safari on a macOS VM but instead,
go for another Browser such as Brave or Firefox.

\subsection[title={Firefox:},reference={firefox}]

And of course, lastly, you could go with Firefox,

Pros:

\startitemize
\item
  Well, it is out of the \quotation{Chromium} world and not taking part
  in expanding Chromium market share
\item
  In addition to being out of the Chromium world, it is also completely
  out of the Google world (despite the Mozilla Foundation being almost
  entirely funded by Google\footnote{PcMag, Mozilla Signs Lucrative
    3-Year Google Search Deal for Firefox
    \useURL[url2844][https://www.pcmag.com/news/mozilla-signs-lucrative-3-year-google-search-deal-for-firefox]\from[url2844]
    \useURL[url2845][https://web.archive.org/web/https://www.pcmag.com/news/mozilla-signs-lucrative-3-year-google-search-deal-for-firefox][][{[}Archive.org{]}]\from[url2845]}).
\item
  An impressive amount of customization through extensions for every
  possible need.
\item
  Firefox can be severely hardened to almost match the security of
  Chromium-based browsers.
\stopitemize

Cons:

\startitemize[packed]
\item
  Poorer performance compared to Chromium.
\stopitemize

Security (especially sandboxing) of Firefox is arguably weaker than
Chromium-based browsers\footnote{Madaidan's Insecurities, Firefox and
  Chromium
  \useURL[url2846][https://madaidans-insecurities.github.io/firefox-chromium.html]\from[url2846]
  \useURL[url2847][https://web.archive.org/web/https://madaidans-insecurities.github.io/firefox-chromium.html][][{[}Archive.org{]}]\from[url2847]}.

\startitemize[packed]
\item
  You will experience more captchas (this is based on my tests).
\stopitemize

\subsection[title={Tor Browser:},reference={tor-browser-1}]

If you are extra paranoid and want to use Tor Browser and have
\quotation{Tor over VPN over Tor}, you could go with Tor Browser within
the VM as well. This is completely pointless/useless.

We would not recommend this option. It is just silly.

\section[title={Appendix V1: Hardening your
Browsers:},reference={appendix-v1-hardening-your-browsers}]

In this section, we'll discuss hardening your browsers. This has a heavy
focus on the difference between Tracking Reduction and Tracking Evasion,
and the pros and cons of either. First, let's define what they are
\useURL[url2848][https://seirdy.one/posts/2022/06/25/two-types-of-privacy/][][as
described by Rohan Kumar]\from[url2848]:

\startitemize[packed]
\item
  Tracking reduction (TR)
  \startitemize[packed]
  \item
    TR aims to reduce the amount of data collected about an exposed
    user. It reduces a footprint's spread primarily by blocking
    trackers. Sometimes this can increase the size of a footprint.
  \stopitemize
\item
  Tracking evasion (TE)
  \startitemize[packed]
  \item
    TE reduces the amount of data exposed by a user. Rather than
    eliminating data collection itself, TE prevents useful data from
    being made available in the first place. In other words, it reduces
    a footprint's size.
  \stopitemize
\stopitemize

Browsers that provide Tracking Reduction are to be used for a more
casual \goto{Threat Model}[appendix-b3-threat-modeling-resources]
whereas Tracking Evasion is more complex. But both need to be explored.
Tracking Reduction focuses on browsing with less tracking. It involves
things like content-blocking, firewalls, opt-outs, flipping telemetry
buttons, etc. If you're this far into the guide, you likely have a very
good understanding of this already. Tracking Evasion, however, involves
techniques like using the portable Tor Browser Bundle to anonymize your
footprint and online identity, avoiding identifiable extensions, and
using randomized keystroke delays. It's more about minimizing your
online footprint, to give you a less fingerprintable browsing
environment and internet usage.

A brief mention of this is necessary in determining operation needs for
both. You need a certain level of understanding in both to achieve good
standards and develop better browsing habits. This can and will overall
provide you with a more viable solution to public trackers, government
organizations looking to trace/track your browsing habits back to you,
even just trolls attempting to doxx you.

The following are the recommended safest routes for each browser
according to the current versions of their respective software and the
ability each one has to become more secure. In the guide we will provide
both Tracking Reduction & Evasion and it will not require you to write
even a single line of code.

\subsection[title={Brave:},reference={brave-1}]

\startitemize
\item
  Download and install Brave browser from
  \useURL[url2849][https://brave.com/download/]\from[url2849]
  \useURL[url2850][https://web.archive.org/web/https://brave.com/download/][][{[}Archive.org{]}]\from[url2850]
\item
  {\bf Open} Brave Browser
\item
  Go into {\bf Settings} > {\bf Appearances}
  (\type{brave://settings/appearance})

  \startitemize
  \item
    {\bf Disable} \quotation{Show Top Sites}
  \item
    {\bf Disable} \quotation{Show Brave Suggested Sites}
  \item
    {\bf Disable} \quotation{Show Brave Rewards icon in address bar}
  \item
    {\bf Enable} \quotation{Always show full URLs}
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Shields}
  (\type{brave://settings/shields})

  \startitemize
  \item
    Set Shields to {\bf Advanced}
  \item
    Set \quotation{Trackers and Ads blocking} to {\bf Aggressive}
  \item
    Set Upgrade connections to HTTPS to {\bf Enabled}
  \item
    Set Cookie blocking to {\bf Only cross-site}
  \item
    Set Fingerprinting blocking to {\bf Standard} or {\bf Strict}
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Social media blocking}
  (\type{brave://settings/socialBlocking})

  \startitemize[packed]
  \item
    {\bf Uncheck} everything unless needed
  \stopitemize
\item
  Go to {\bf Settings} > {\bf Search engine}
  (\type{brave://settings/search})

  \startitemize[packed]
  \item
    See \goto{Appendix A3: Search Engines}[appendix-a3-search-engines]
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Extensions}
  (\type{brave://settings/extensions})

  \startitemize
  \item
    {\bf Disable} everything except \quotation{Private Window with Tor}
  \item
    Set both {\bf Resolve} methods to \quotation{Ask}
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Wallet} (\type{brave://settings/wallet})

  \startitemize
  \item
    {\bf Disable} \quotation{Show Brave Wallet icon on toolbar}
  \item
    Set {\bf Default Ethereum wallet} to \quotation{None}
  \item
    Set {\bf Default Solana wallet} to \quotation{None}
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Privacy and Security}
  (\type{brave://settings/privacy})

  \startitemize
  \item
    Leave {\bf WebRTC} to \quotation{Default}
  \item
    {\bf Disable} \quotation{Allow privacy-preserving product analytics
    (P3A)}
  \item
    {\bf Disable} \quotation{Automatically send daily usage ping to
    Brave}
  \item
    Go into \quotation{Clear Browsing Data}

    \startitemize
    \item
      Select {\bf On Exit}
    \item
      Check all options
    \item
      {\bf Click} \quotation{Save}
    \stopitemize
  \stopitemize
\item
  Open a new Tab
\item
  {\bf Click} \quotation{Customize} in the lower right corner

  \startitemize[packed]
  \item
    {\bf Disable} everything in Customize Dashboard except maybe the
    clock
  \stopitemize
\item
  Go into {\bf Settings} > {\bf Shields} > {\bf Content filters}
  (\type{brave://settings/shields/filters})

  \startitemize
  \item
    Select any additional adblocking filter you want

    \startitemize[packed]
    \item
      Recommended: {\bf CJX's Annoyance List}, {\bf Easylist-Cookie
      List}, {\bf Fanboy Annoyances List}, {\bf Fanboy Social List},
      {\bf Fanboy's Mobile Notifications List}, and {\bf uBlock
      Annoyances List}
    \stopitemize
  \item
    Add custom filter lists

    \startitemize
    \item
      Add the
      \useURL[url2851][https://raw.githubusercontent.com/DandelionSprout/adfilt/master/ClearURLs\%20for\%20uBo/clear_urls_uboified.txt][][Actually
      Legitimate URL Shortener Tool]\from[url2851] which uses the rules
      found in ClearURLs below
    \item
      Add the
      \useURL[url2852][https://raw.githubusercontent.com/AdguardTeam/FiltersRegistry/master/filters/filter_17_TrackParam/filter.txt][][AdGuard
      URL Tracking Protection]\from[url2852] which enables generic
      \type{$removeparam} rules
    \stopitemize
  \item
    To keep all applied filters, {\bf click} \quotation{Save}
  \stopitemize
\item
  Do not ever enable Brave Rewards (button should be hidden on all
  sites)
\stopitemize

Addons to consider on Brave if you want additional protections:

\startitemize
\item
  LocalCDN
  (\useURL[url2853][https://chrome.google.com/webstore/detail/localcdn/njdfdhgcmkocbgbhcioffdbicglldapd]\from[url2853])

  \startitemize[packed]
  \item
    Alternatively, DecentralEyes
    (\useURL[url2854][https://chrome.google.com/webstore/detail/decentraleyes/ldpochfccmkkmhdbclfhpagapcfdljkj]\from[url2854])
  \stopitemize
\item
  PrivacyBadger
  (\useURL[url2855][https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp]\from[url2855])
\item
  NoScript
  (\useURL[url2856][https://chrome.google.com/webstore/detail/noscript/doojmbjmlfjjnbmnoijecmcbfeoakpjm]\from[url2856])
\item
  Either ClearURLs
  (\useURL[url2857][https://chrome.google.com/webstore/detail/clearurls/lckanjgmijmafbedllaakclkaicjfmnk]\from[url2857])
  {\bf OR} the custom list above
\item
  LibRedirect
  (\useURL[url2858][https://libredirect.github.io/]\from[url2858])
\stopitemize

That's it and you should be pretty much covered. For full paranoia, you
can also just \quotation{Block Scripts} to disable Javascript. Note that
even disabling Javascript might not protect you fully\footnote{FingerprintJS,
  Demo: Disabling JavaScript Won't Save You from Fingerprinting
  \useURL[url2859][https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/]\from[url2859]
  \useURL[url2860][https://web.archive.org/web/https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/][][{[}Archive.org{]}]\from[url2860]}.

\subsection[title={Ungoogled-Chromium:},reference={ungoogled-chromium-1}]

{\bf This browser is considered a security liability due to their
systemic lagging on security patches}\footnote{Duck's pond,
  Ungoogled-Chromium
  \useURL[url2861][https://qua3k.github.io/ungoogled/]\from[url2861]
  \useURL[url2862][https://web.archive.org/web/https://qua3k.github.io/ungoogled/][][{[}Archive.org{]}]\from[url2862]}{\bf .}

{\bf It is strongly advised not to use Ungoogled-Chromium.}

\subsection[title={Edge:},reference={edge-1}]

Windows only:

\startitemize
\item
  Open Edge
\item
  Go into Settings
\item
  Go to Profiles and make sure everything is unchecked in every section
  (Personal Info, Passwords, Payment info, Profile preferences)
\item
  Go to Privacy, search, and services:

  \startitemize
  \item
    Go to Tracking Prevention:

    \startitemize
    \item
      Set to Strict or at least Balanced
    \item
      Set to always use Strict with InPrivate Windows
    \stopitemize
  \item
    Go to Privacy:

    \startitemize
    \item
      Enable send Do Not Track
    \item
      Disable the options for the website to check your payment methods
    \stopitemize
  \item
    Go to Optional Diagnostic Data:

    \startitemize[packed]
    \item
      Disable it
    \stopitemize
  \item
    Go to Personalize your Web Experience:

    \startitemize[packed]
    \item
      Disable it
    \stopitemize
  \item
    Go to Security

    \startitemize[packed]
    \item
      Disable everything
    \stopitemize
  \item
    Go to Services

    \startitemize
    \item
      Disable everything
    \item
      In Address Bar and Search:

      \startitemize[packed]
      \item
        Disable everything and change the search engine (see
        \goto{Appendix A3: Search Engines}[appendix-a3-search-engines])
      \stopitemize
    \stopitemize
  \item
    Go to Cookies and Sites Permissions:

    \startitemize
    \item
      Within All Permissions:

      \startitemize
      \item
        Within Cookies, make sure \quotation{Block Third-Party Cookies}
        is checked
      \item
        Block everything except:

        \startitemize
        \item
          Javascript
        \item
          Images
        \stopitemize
      \stopitemize
    \stopitemize
  \stopitemize
\stopitemize

Enable Application Guard for Edge (only on Host OS, not possible within
a VirtualBox VM):

{\bf Skip if this is a VM}

\startitemize
\item
  Open Control Panel.
\item
  Click on Programs
\item
  Click on Turn Windows features on or off link
\item
  Check the Windows Defender Application Guard option
\item
  Click OK.
\item
  Click Restart.
\item
  Now you can open Edge and open a new \quotation{Application Guard}
  Window.
\stopitemize

That's about it for Edge but you are also free to add extensions from
the Chrome Store such as:

\startitemize
\item
  uBlock Origin
  (\useURL[url2863][https://chrome.google.com/webstore/detail/ublock-origin/cjpalhdlnbpafiamejdnhcphjbkeiagm]\from[url2863])
\item
  LocalCDN
  (\useURL[url2864][https://chrome.google.com/webstore/detail/localcdn/njdfdhgcmkocbgbhcioffdbicglldapd]\from[url2864])

  \startitemize[packed]
  \item
    Alternatively, DecentralEyes
    (\useURL[url2865][https://chrome.google.com/webstore/detail/decentraleyes/ldpochfccmkkmhdbclfhpagapcfdljkj]\from[url2865])
  \stopitemize
\item
  PrivacyBadger
  (\useURL[url2866][https://chrome.google.com/webstore/detail/privacy-badger/pkehgijcmpdhfbdbbnkijodmdjhbjlgp]\from[url2866])
\item
  HTTPS Everywhere
  (\useURL[url2867][https://chrome.google.com/webstore/detail/https-everywhere/gcbommkclmclpchllfjekcdonpmejbdp]\from[url2867])
\item
  NoScript
  (\useURL[url2868][https://chrome.google.com/webstore/detail/noscript/doojmbjmlfjjnbmnoijecmcbfeoakpjm]\from[url2868])
\item
  ClearURLs
  (\useURL[url2869][https://chrome.google.com/webstore/detail/clearurls/lckanjgmijmafbedllaakclkaicjfmnk]\from[url2869])
\item
  LibRedirect
  (\useURL[url2870][https://libredirect.github.io/]\from[url2870])
\stopitemize

\subsection[title={Safari:},reference={safari-1}]

macOS Only:

\startitemize
\item
  Open Safari
\item
  Click the Safari top left Menu
\item
  Click Preferences

  \startitemize
  \item
    On the General Tab:

    \startitemize
    \item
      Change New Windows to \quotation{Empty Page}
    \item
      Change New Tabs to \quotation{Empty page}
    \item
      Change the Remove History after to \quotation{1 day}
    \item
      Change the Remove Download list items to \quotation{When Safari
      Quits} or \quotation{When Successful Download}
    \item
      Uncheck \quotation{Open Safe Files After Downloading}
    \stopitemize
  \item
    On the Security Tab:

    \startitemize[packed]
    \item
      Disable \quotation{Warn when visiting a Fraudulent Website} (this
      sends the URLs your visit to Google for screening)
    \stopitemize
  \item
    On the Privacy Tab:

    \startitemize[packed]
    \item
      Uncheck \quotation{Web Advertising}
    \stopitemize
  \item
    On the Advanced Tab:

    \startitemize[packed]
    \item
      Check the \quotation{Show full website address}
    \stopitemize
  \stopitemize
\stopitemize

Consider \goto{Appendix A5: Additional browser precautions with
JavaScript
enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled]

That's about it. Unfortunately, you will not be able to add extensions
as those will require you to sign in into the App Store which you cannot
do from a macOS VM. Again, we would not recommend sticking to Safari in
a macOS VM but instead switching to Brave or Firefox.

\subsection[title={Firefox:},reference={firefox-1}]

\subsubsection[title={Normal settings:},reference={normal-settings}]

\startitemize
\item
  Open Firefox
\item
  On the Firefox Home Page:

  \startitemize
  \item
    Click Personalize
  \item
    Uncheck/Disable Everything
  \stopitemize
\item
  Open Settings:

  \startitemize
  \item
    Go into Search

    \startitemize[packed]
    \item
      Change the search engine (See \goto{Appendix A3: Search
      Engines}[appendix-a3-search-engines])
    \stopitemize
  \item
    Go into Privacy & Security

    \startitemize
    \item
      Set to Custom

      \startitemize
      \item
        Cookies: Select All Third-Party Cookies
      \item
        Tracking Content: In all Windows
      \item
        Check Cryptominers
      \item
        Check Fingerprinters
      \stopitemize
    \item
      Set always send \quotation{Do Not Track}
    \stopitemize
  \item
    Go to Logins and Passwords

    \startitemize[packed]
    \item
      Uncheck \quotation{Ask to save logins and passwords for websites}
    \stopitemize
  \item
    Go to Permissions

    \startitemize
    \item
      Location: check block new requests
    \item
      Camera: check block new requests
    \item
      Microphone: check block new requests
    \item
      Notifications: check block new requests
    \item
      Autoplay: select Disable Audio and Video
    \item
      Virtual Reality: check block new requests
    \item
      Check Block Pop-ups
    \item
      Check Warn when websites try to install add-ons
    \stopitemize
  \item
    Go to Firefox Data Collection and Use

    \startitemize[packed]
    \item
      Disable everything
    \stopitemize
  \item
    Go to HTTPS-Only Mode

    \startitemize[packed]
    \item
      Enable it on all Windows
    \stopitemize
  \stopitemize
\stopitemize

\subsubsection[title={Advanced settings:},reference={advanced-settings}]

Consider
\useURL[url2871][https://github.com/arkenfox/user.js/][][Arkenfox/user.js]\from[url2871],
a heavily maintained and very easy to use browser config which uses a
\quotation{user.js} to set all the privacy settings and disk avoidance
values. Below we recommend that if you are not setting the Arkenfox
config, at least setting the {\bf about:config} values below. Arkenfox
applies many others but these are the bare minimum for your protection
while browsing. Remember: doing nothing and using a browser with its
defaults will already be leaking many identifiable and trackable
characteristics which are unique to you. See \goto{Browser and Device
Fingerprinting}[browser-and-device-fingerprinting] for more details on
why default settings in browsers are unsafe.

Those settings are explained on the following resources in order of
recommendation if you want more details about what each setting does:

\startitemize[n][stopper=.]
\item
  \useURL[url2872][https://wiki.archlinux.org/title/Firefox/Privacy]\from[url2872]
  \useURL[url2873][https://web.archive.org/web/https://wiki.archlinux.org/title/Firefox/Privacy][][{[}Archive.org{]}]\from[url2873]
  {\bf (most recommended)}
\item
  \useURL[url2874][https://proprivacy.com/privacy-service/guides/firefox-privacy-security-guide]\from[url2874]
  \useURL[url2875][https://web.archive.org/web/https://proprivacy.com/privacy-service/guides/firefox-privacy-security-guide][][{[}Archive.org{]}]\from[url2875]
\stopitemize

Here are most of the steps combined from the sources above (some have
been omitted due to the extensions recommended later below):

\startitemize
\item
  Navigate to \quotation{about:config} in the URL bar
\item
  Click Accept the Risk and Continue

  \startitemize
  \item
    Safe Settings (should not break anything)

    \startitemize
    \item
      Disable Firefox Pocket

      \startitemize[packed]
      \item
        Set \quotation{extensions.pocket.enabled} to false
      \stopitemize
    \item
      Disable All Telemetry

      \startitemize
      \item
        Set
        \quotation{browser.newtabpage.activity-stream.feeds.telemetry}
        to false
      \item
        Set \quotation{browser.ping-centre.telemetry} to false
      \item
        Set \quotation{browser.tabs.crashReporting.sendReport} to false
      \item
        Set \quotation{devtools.onboarding.telemetry.logged} to false
      \item
        Set \quotation{toolkit.telemetry.enabled} to false
      \item
        Search for \quotation{toolkit.telemetry.server} and clear it
      \item
        Set \quotation{toolkit.telemetry.unified} to false
      \item
        Set \quotation{beacon.enabled} to false
      \stopitemize
    \item
      Disable Pre-Fetching

      \startitemize
      \item
        Set \quotation{network.dns.disablePrefetch} to true
      \item
        Set \quotation{network.dns.disablePrefetchFromHTTPS} to true
      \item
        Set \quotation{network.predictor.enabled} to false
      \item
        Set \quotation{network.predictor.enable-prefetch} to false
      \item
        Set \quotation{network.prefetch-next} to false
      \item
        Set \quotation{browser.urlbar.speculativeConnect.enabled} to
        false
      \stopitemize
    \item
      Disable Javascript in PDFs

      \startitemize[packed]
      \item
        Set \quotation{pdfjs.enableScripting} to false
      \stopitemize
    \item
      Disable obsolete SSL encryption

      \startitemize
      \item
        Set \quotation{security.ssl3.rsa_des_ede3_sha} to false
      \item
        Set \quotation{security.ssl.require_safe_negotiation} to true
      \stopitemize
    \item
      Disable Firefox Accounts

      \startitemize[packed]
      \item
        Set \quotation{identity.fxaccounts.enabled} to false
      \stopitemize
    \item
      Disable Geolocation

      \startitemize[packed]
      \item
        Set \quotation{geo.enabled} to false
      \stopitemize
    \item
      Disable Web Notifications

      \startitemize[packed]
      \item
        Set \quotation{dom.webnotifications.enabled} to false
      \stopitemize
    \item
      Disable Copy/Paste Notifications

      \startitemize[packed]
      \item
        Set \quotation{dom.event.clipboardevents.enabled} to false
      \stopitemize
    \item
      Disable Microphone/Camera status fetching

      \startitemize[packed]
      \item
        Set \quotation{media.navigator.enabled} to false
      \stopitemize
    \item
      Enable \quotation{Do Not Track}

      \startitemize[packed]
      \item
        Set \quotation{privacy.donottrackheader.enabled} to true
      \stopitemize
    \item
      Disable SafeBrowsing

      \startitemize
      \item
        Set \quotation{browser.safebrowsing.malware.enabled} to false
      \item
        Set \quotation{browser.safebrowsing.phishing.enabled} to false
      \item
        Set \quotation{browser.safebrowsing.downloads.remote.enabled} to
        false
      \stopitemize
    \stopitemize
  \item
    Moderate Settings (could break some websites)

    \startitemize
    \item
      Disable WebRTC (this will break all websites with video/audio
      communications)

      \startitemize
      \item
        Set \quotation{media.peerconnection.enabled} to false
      \item
        Set \quotation{media.navigator.enabled} to false
      \stopitemize
    \item
      Disable WebGL (this will break some media intensive websites)

      \startitemize[packed]
      \item
        Set \quotation{webgl.disabled} to true
      \stopitemize
    \item
      Disable DRM

      \startitemize
      \item
        Set \quotation{media.eme.enabled} to false
      \item
        Set \quotation{media.gmp-widevinecdm.enabled} to false
      \stopitemize
    \item
      Set Cookiies Behavior

      \startitemize
      \item
        Set \quotation{network.cookie.cookieBehavior} to 1
      \item
        Set \quotation{network.http.referer.XOriginPolicy} to 2
      \stopitemize
    \item
      Change referer policy

      \startitemize[packed]
      \item
        Set \quotation{network.http.referer.XOriginTrimmingPolicy} to 2
      \stopitemize
    \item
      Change Session Storage behavior

      \startitemize[packed]
      \item
        Set \quotation{browser.sessionstore.privacy_level} to 2
      \stopitemize
    \item
      Disable Connection Tests for Captive Portals

      \startitemize[packed]
      \item
        Set \quotation{network.captive-portal-service.enabled} to false
      \stopitemize
    \item
      Disable \quotation{Trusted Recursive Resolver}

      \startitemize[packed]
      \item
        Set/Create \quotation{network.trr.mode} and set it to 5
      \stopitemize
    \stopitemize
  \item
    Advanced (this will break some websites)

    \startitemize
    \item
      Set \quotation{privacy.resistFingerprinting} to true
    \item
      Set \quotation{privacy.trackingprotection.fingerprinting.enabled}
      to true
    \item
      Set \quotation{privacy.trackingprotection.cryptomining.enabled} to
      true
    \item
      Set \quotation{privacy.trackingprotection.enabled} to true
    \item
      Set \quotation{browser.send_pings} to false
    \item
      Set \quotation{change privacy.firstparty.isolate} to true
    \item
      Set \quotation{network.http.referer.XOriginPolicy} to
      \quotation{2} or use {\bf Smart Referer} below
    \item
      Set \quotation{change network.cookie.lifetimePolicy} to 2 (this
      deletes all cookies after each session)
    \stopitemize
  \stopitemize
\stopitemize

\subsubsection[title={Addons to
install/consider:},reference={addons-to-installconsider}]

\startitemize
\item
  uBlock Origin
  (\useURL[url2872][https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/]\from[url2872])
\item
  Smart Referer
  (\useURL[url2873][https://addons.mozilla.org/firefox/addon/smart-referer/]\from[url2873])

  \startitemize[packed]
  \item
    Set \quotation{network.http.referer.XOriginPolicy} value of
    \quotation{2} to \quotation{0} (so the extension works).
    {\bf Disable} the whitelist (uncheck the {\bf Use default whitelist}
    box) and set {\bf Domain name matching} to {\bf Strict}.
  \stopitemize
\item
  NoScript
  (\useURL[url2874][https://addons.mozilla.org/en-US/firefox/addon/noscript/]\from[url2874])

  \startitemize
  \item
    Blocks {\bf all} scripts by default, no exceptions. Necessary in
    regular browser if you want to block all script executions. Not
    necessary in Tor Browser.
  \item
    Within the options, change {\bf Default} options to check everything
    except \quotation{ping}, \quotation{unrestricted CSS}, and
    \quotation{LAN}. This will re-enable JavaScript and other web
    features, to prevent many websites from breaking
  \stopitemize
\item
  LibRedirect
  (\useURL[url2875][https://libredirect.github.io/]\from[url2875])

  \startitemize[packed]
  \item
    Redirect less privacy friendly websites like YouTube and Wikipedia
    to more privacy friendly open-source alternatives
  \stopitemize
\item
  Skip Redirect
  (\useURL[url2876][https://github.com/sblask/webextension-skip-redirect]\from[url2876])
\stopitemize

\subsubsection[title={Bonus resources:},reference={bonus-resources}]

Here are also two recent guides to harden Firefox:

\startitemize
\item
  \useURL[url2877][https://chrisx.xyz/blog/yet-another-firefox-hardening-guide/]\from[url2877]
  \useURL[url2878][https://web.archive.org/web/https://chrisx.xyz/blog/yet-another-firefox-hardening-guide/][][{[}Archive.org{]}]\from[url2878]
\item
  \useURL[url2879][https://ebin.city/~werwolf/posts/firefox-hardening-guide/]\from[url2879]
  \useURL[url2880][https://web.archive.org/web/https://ebin.city/~werwolf/posts/firefox-hardening-guide/][][{[}Archive.org{]}]\from[url2880]
\stopitemize

\section[title={Appendix W:
Virtualization},reference={appendix-w-virtualization}]

So, you might ask yourself, what is Virtualization\footnote{Wikipedia,
  Virtualization
  \useURL[url2881][https://en.wikipedia.org/wiki/Virtualization]\from[url2881]
  \useURL[url2882][https://wikiless.org/wiki/Virtualization][][{[}Wikiless{]}]\from[url2882]
  \useURL[url2883][https://web.archive.org/web/https://en.wikipedia.org/wiki/Virtualization][][{[}Archive.org{]}]\from[url2883]}?

Basically, it is like the Inception movie with computers. You have
emulated software computers called Virtual Machines running on a
physical computer. And you can even have Virtual Machines running within
Virtual machines if you want to (but this will require a more powerful
laptop in some cases).

Here is a little basic illustration of what Virtualization is:

\placefigure{image53}{\externalfigure[./tex2pdf.-1a34188c73046814/58f77ec3710646c76044e70f04d744ba188a891f.png]}

Each Virtual Machine is a sandbox. Remember the reasons for using them
are to prevent the following risks:

\startitemize
\item
  Mitigate local data leaks and easier clean-up in case something gets
  messed up or it is suspected to be compromised.
\item
  Reduce malware/exploit attack surfaces (if your VM is compromised, the
  adversary still must figure out he is in a VM and then gain access to
  the Host OS which is not so trivial).
\item
  Mitigate online data leaks by being able to enforce strict network
  rules on Virtual Machines for accessing the network (such as passing
  through the Tor Network).
\stopitemize

\subsection[title={Nested virtualization
risks},reference={nested-virtualization-risks}]

{\bf There is an inherently larger attack surface when nesting
virtualization.}

Here's some host information that can be leaked through the Virtual
Machine:

\startitemize
\item
  Organizationally unique identifier or OUI - the unique identifier
  assigned to VMWare Guest VMs;
\item
  Virtual Windows registry keys like \type{ProductID} might show the
  Host Machine's environment:\crlf
  \type{HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\ProductId XXXXX-123-1234567-12345}
\item
  HDD, GPU, and mouse drivers can be exposed through:
  \type{HKEY_LOCAL_MACHINE\System\CurrentControlSet\}
\item
  Registry entries will show that this is a virtual mouse:
  \type{%WINDIR%\system32\drivers\vmmouse.sys}
\item
  Descriptor Table Registers:
  \useURL[url2884][https://stackoverflow.com/questions/52505313/what-are-descriptor-registers/52505743\#52505743]\from[url2884]

  \startitemize[packed]
  \item
    Since it's a Virtual Machine using the same CPU cores, the
    descriptor values are relocated due to there only being space for
    one of each identifier per CPU. This is a dead giveaway and is used
    in detection by advanced malware. It's employed by malware
    architects to tell when the program is being ran in a forensics
    environment (e.g., Remnux or Flare VM) - popular tools/OS that are
    used by experts to analyze malware.
  \stopitemize
\item
  Guest VMs also indirectly access the same hardware as the Host OS.
\stopitemize

See
\useURL[url2885][https://www.malwarebytes.com/blog/news/2014/02/a-look-at-malware-with-virtual-machine-detection]\from[url2885]
for more techniques used by malware to detect virtualization. These
techniques are mostly prevented by appending some settings to your VM
config file (.vmx).
\useURL[url2886][https://blog.talosintelligence.com/2009/10/how-does-malware-know-difference.html]\from[url2886]

\section[title={Appendix X: Using Tor bridges in hostile
environments},reference={appendix-x-using-tor-bridges-in-hostile-environments}]

In some environments, your ISPs might be trying to prevent you from
accessing Tor. Or accessing Tor openly might be a safety risk.

In those cases, it might be necessary to use Tor bridges to connect to
the Tor network (see Tor Documentation
\useURL[url2887][https://2019.www.torproject.org/docs/bridges]\from[url2887]
\useURL[url2888][https://web.archive.org/web/https://2019.www.torproject.org/docs/bridges][][{[}Archive.org{]}]\from[url2888]
and Whonix Documentation
\useURL[url2889][https://www.whonix.org/wiki/Bridges]\from[url2889]
\useURL[url2890][https://web.archive.org/web/https://www.whonix.org/wiki/Bridges][][{[}Archive.org{]}]\from[url2890]).
Optionally, if you are able, you should (seriously!) consider running a
bridge
\useURL[url2891][https://blog.torproject.org/run-tor-bridges-defend-open-internet/]\from[url2891]
\useURL[url2892][https://web.archive.org/web/20220708014922/https://blog.torproject.org/run-tor-bridges-defend-open-internet/][][{[}Archive.org{]}]\from[url2892]
yourself, as this would greatly help reduce the amount of censorship in
the world.

Bridges are special Tor entry nodes that are not listed on the Tor
public directory. Some of those are running on people running the
Snowflake Browser extension\footnote{Tor Project, Project Snowflake
  \useURL[url2893][https://snowflake.torproject.org/]\from[url2893]
  \useURL[url2894][https://web.archive.org/web/https://snowflake.torproject.org/][][{[}Archive.org{]}]\from[url2894]}
while others are running on various servers around the world. Most of
those bridges are running some type of obfuscation method called
obfs4\footnote{GitHub, Obfs4 Repository
  \useURL[url2895][https://github.com/Yawning/obfs4/]\from[url2895]
  \useURL[url2896][https://web.archive.org/web/https://github.com/Yawning/obfs4/][][{[}Archive.org{]}]\from[url2896]}.

{\em Only available for Desktop Tor users: Recently, the Tor Project has
made it incredibly simple to access Bridges with {\bf Connection
Assist}, and it is now automatically done in hostile or censored
regions. Simply open the Tor Browser and the connection will be
configured based on your needs on any hostile network. Previously, we
had a list of options below this paragraph which were necessary to
enable and configure bridges, but now that this is done automatically
using
\useURL[url2897][https://support.torproject.org/glossary/moat/][][moat]\from[url2897].}
\useURL[url2898][https://web.archive.org/web/20220801151048/https://support.torproject.org/glossary/moat/][][{[}Archive.org{]}]\from[url2898]

Here is the definition from the Tor Browser Manual\footnote{Tor Browser
  Manual, Pluggable Transport
  \useURL[url2899][https://tb-manual.torproject.org/circumvention/]\from[url2899]
  \useURL[url2900][https://web.archive.org/web/https://tb-manual.torproject.org/circumvention/][][{[}Archive.org{]}]\from[url2900]}:
\quotation{obfs4 makes Tor traffic look random and prevents censors from
finding bridges by Internet scanning. obfs4 bridges are less likely to
be blocked than its predecessor, obfs3 bridges}.

Some of those are called \quotation{Meek} bridges and are using a
technique called \quotation{Domain Fronting} where your Tor client
(Tails, Tor Browser, Whonix Gateway) will connect to a common CDN used
by other services. To a censor, it would appear you are connecting to a
normal website such as Microsoft.com. See
\useURL[url2901][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/meek]\from[url2901]
for more information.

As per their definition from their manual: \quotation{meek transports
make it look like you are browsing a major web site instead of using
Tor. meek-azure makes it look like you are using a Microsoft web site}.
Snowflake bridges make it appear like your connections are phone calls
to random internet users. This is a type of \quotation{domain fronting}
\footnote{Wikipedia, Domain Fronting
  \useURL[url2902][https://en.wikipedia.org/wiki/Domain_fronting]\from[url2902]
  \useURL[url2903][https://wikiless.org/wiki/Domain_fronting][][{[}Wikiless{]}]\from[url2903]
  \useURL[url2904][https://web.archive.org/web/https://en.wikipedia.org/wiki/Domain_fronting][][{[}Archive.org{]}]\from[url2904]}.
See
\useURL[url2905][https://www.bamsoftware.com/papers/fronting/\#sec:introduction][][\quotation{domain
fronting}]\from[url2905] from the link in the previous paragraph for a
detailed explanation of these types of secret \quotation{bridges}.

Lastly, there are also bridges called Snowflake bridges that rely on
users running the snowflake extension in their browser to become
themselves entry nodes. See
\useURL[url2906][https://snowflake.torproject.org/]\from[url2906]
\useURL[url2907][https://web.archive.org/web/https://snowflake.torproject.org/][][{[}Archive.org{]}]\from[url2907].

First, you should proceed with the following checklist to make sure you
cannot circumvent Tor Blocking (double-check) and try to use Tor Bridges
(\useURL[url2908][https://bridges.torproject.org/]\from[url2908]
\useURL[url2909][https://web.archive.org/web/https://bridges.torproject.org/][][{[}Archive.org{]}]\from[url2909]):

\startitemize
\item
  (Recommended if blocked but {\bf safe}) Try to get an obfs4 bridge in
  the Tor connection options.
\item
  (Recommended if blocked but {\bf safe}) Try to get a snowflake bridge
  in the Tor connection options.
\item
  {\bf (Recommended if hostile/risky environment)} Try to get a meek
  bridge in the Tor connection options (might be your only option if you
  are for instance in China).
\stopitemize

\placefigure{image54}{\externalfigure[./tex2pdf.-1a34188c73046814/e2563c82e94be8ff9b5768e97f3fec315cd38aa3.png]}

(Illustration from Tor Browser Bridge Configuration)

If none of those build-in methods are working, you could try getting a
manual bridge either from:

\startitemize
\item
  \useURL[url2910][https://bridges.torproject.org/bridges?transport=meek]\from[url2910]
  (for a meek bridge)
\item
  \useURL[url2911][https://bridges.torproject.org/bridges?transport=obfs4]\from[url2911]
  (for an obfs4 bridge)
\stopitemize

This website obviously could be blocked/monitored too so you could
instead (if you have the ability) ask someone to do this for you if you
have a trusted contact and some e2e encrypted messaging app.

Finally, you could also request a bridge request by e-mail to
\useURL[url2912][mailto:bridges@torproject.org][][bridges@torproject.org]\from[url2912]
with the subject empty and the body being: \quotation{get transport
obfs4} or \quotation{get transport meek}. There is some limitation with
this method tho as it is only available from a Gmail e-mail address or
Riseup.

\startitemize[packed]
\item
  See: \goto{A note about Riseup:}[a-note-about-riseup] Riseup has
  potentially been compromised. Use it at your own risk.
\stopitemize

Hopefully, these bridges should be enough to get you connected even in a
hostile environment.

If not, consider \goto{Appendix P: Accessing the internet as safely as
possible when Tor and VPNs are not an
option}[appendix-p-accessing-the-internet-as-safely-as-possible-when-tor-and-vpns-are-not-an-option]

\section[title={Appendix Y: Installing and using desktop Tor
Browser},reference={appendix-y-installing-and-using-desktop-tor-browser}]

\subsection[title={Installation:},reference={installation-7}]

This is valid for Windows, Linux, and macOS.

\startitemize
\item
  Download and install Tor Browser according to the instructions from
  \useURL[url2913][https://www.torproject.org/download/]\from[url2913]
  \useURL[url2914][https://web.archive.org/web/https://www.torproject.org/download/][][{[}Archive.org{]}]\from[url2914]
\item
  Open Tor Browser
\stopitemize

\subsection[title={Usage and
Precautions:},reference={usage-and-precautions}]

\startitemize[packed]
\item
  After opening Tor Browser, you will see an option to {\bf Connect}, a
  checkbox to {\bf Always connect automatically} and a button to
  {\bf Configure connection}. The Tor Network settings are there for you
  to possibly configure Bridges to connect to Tor if you are
  experiencing issues connecting to Tor due to Censorship or Blocking.
  As explained here: \goto{Appendix X: Using Tor bridges in hostile
  environments}[appendix-x-using-tor-bridges-in-hostile-environments],
  this is now done automatically by the Tor Browser on Desktop.
\stopitemize

\placefigure{image55}{\externalfigure[./tex2pdf.-1a34188c73046814/901f25aab05bcd463af156777e4c2082069303a4.png]}

\startitemize[packed]
\item
  Personally, in the case of censorship or blocking, we would recommend
  using Meek-Azure bridges if needed. And Snowflake bridges as a second
  option.
\stopitemize

\placefigure{image56}{\externalfigure[./tex2pdf.-1a34188c73046814/e2b3ac87b481d2d3fb02c83602f4f7b714460246.png]}

\startitemize[packed]
\item
  At this point, still before connecting, you should click the little
  shield Icon (upper right, next to the Address bar) and select your
  Security level (see
  \useURL[url2915][https://tb-manual.torproject.org/security-settings/]\from[url2915]
  \useURL[url2916][https://web.archive.org/web/https://tb-manual.torproject.org/security-settings/][][{[}Archive.org{]}]\from[url2916]
  for details). Basically, there are three.
\stopitemize

\placefigure{image57}{\externalfigure[./tex2pdf.-1a34188c73046814/eb7fa739d64e0cd1e1e44df456e1231f370a4a94.png]}

\startitemize
\item
  Standard (the default):

  \startitemize[packed]
  \item
    All features are enabled (including JavaScript)
  \stopitemize
\item
  Safer:

  \startitemize
  \item
    JavaScript is disabled on non-HTTPS websites
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\item
  Safest:

  \startitemize
  \item
    Javascript is disabled everywhere
  \item
    Some fonts and symbols are disabled
  \item
    Any media playback is \quotation{click to play} (disabled by
    default)
  \stopitemize
\stopitemize

We would recommend the \quotation{Safest} level by default. The
\quotation{Safer} level should be enabled if you think you need access
to a website not working without JavaScript. The Safest mode will most
likely break many websites that rely actively on JavaScript.

If you are extra paranoid, use the \quotation{Safest} level by default
and consider downgrading to Safer is the website is unusable because of
Javascript blocking.

{\bf Optional and not recommended by the Tor Project}: If you are not
using the \quotation{Safest} level, we will diverge from some but agree
with others (for instance the Tails project and others\footnote{GitLab,
  Tor Browser Issues, Add uBlock Origin to the Tor Browser
  \useURL[url2917][https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/17569]\from[url2917]
  \useURL[url2918][https://web.archive.org/web/https://gitlab.torproject.org/tpo/applications/tor-browser/-/issues/17569][][{[}Archive.org{]}]\from[url2918]})
and will actually recommend some modifications of the default Tor
Browser in the addition of two extensions:

\startitemize
\item
  uBlock Origin (as it is the case on Tails) while leaving the extension
  on the default settings:

  \startitemize[packed]
  \item
    Head over to
    \useURL[url2919][https://addons.mozilla.org/en-US/firefox/addon/ublock-origin/]\from[url2919]
    within Tor Browser and install the extension.
  \stopitemize
\item
  LibRedirect: This is very practical if you use the \quotation{Safest}
  mode as Invidious instances require no JavaScript.

  \startitemize[packed]
  \item
    Head over to
    \useURL[url2920][https://libredirect.github.io/]\from[url2920]
    within Tor Browser and install the extension.
  \stopitemize
\stopitemize

Let's keep in mind that even 3 letters agencies recommend blocking ads
for their internal users in order to improve security\footnote{Vice, The
  NSA and CIA Use Ad Blockers Because Online Advertising Is So Dangerous
  \useURL[url2921][https://www.vice.com/en/article/93ypke/the-nsa-and-cia-use-ad-blockers-because-online-advertising-is-so-dangerous]\from[url2921]
  \useURL[url2922][https://web.archive.org/web/https://www.vice.com/en/article/93ypke/the-nsa-and-cia-use-ad-blockers-because-online-advertising-is-so-dangerous][][{[}Archive.org{]}]\from[url2922]}.

If you did not go for the above {\bf personal and not officially
recommended options}, the Safer level should still be used with some
extra precautions while using some websites: see \goto{Appendix A5:
Additional browser precautions with JavaScript
enabled}[appendix-a5-additional-browser-precautions-with-javascript-enabled].

Now, you are really done, and you can now surf the web anonymously from
your desktop device.

\section[title={Appendix Z: Online anonymous payments using
cryptocurrencies},reference={appendix-z-online-anonymous-payments-using-cryptocurrencies}]

There are many services that you might want to use (VPS hosting, mail
hosting, domain names\ldots{}) but require payment of some kind.

As mentioned before in this guide multiple times, we strongly recommend
the use of services accepting cash (that you could send anonymously
through the postal services) or Monero which you can buy and use
directly and safely.

\startitemize[packed]
\item
  But what if the service you want does not accept Monero but does
  accept a more mainstream cryptocurrency such as Bitcoin (BTC) or
  Ethereum (ETH)?
\stopitemize

{\bf Bitcoin and other \quotation{mainstream cryptocurrencies} are not
anonymous at all (Remember \goto{Your Cryptocurrencies
transactions}[your-cryptocurrencies-transactions]) and you should never
ever purchase, for example, Bitcoin from an exchange and then use these
directly for purchasing services anonymously. This will not work, and
the transaction can be traced easily.}

\startitemize
\item
  {\bf Stay away from so-called \quotation{private} mixers, tumblers and
  coinjoiners.} You might think this is a good idea, but not only are
  they useless with cryptocurrencies such as BTC/ETH/LTC, they are also
  dangerous. They take custody of your coins. Use Monero to anonymize
  your crypto. Do not use a normal KYC-enabled exchange to buy/sell your
  Monero (such as Kraken), since this information on your purchases and
  withdrawals (for intended use) are retained in the exchange. Instead,
  use a P2P exchange that doesn't require KYC such as what can be found
  on \useURL[url2923][https://kycnot.me/]\from[url2923].
\item
  {\bf See \goto{Warning about special tumbling, mixing, coinjoining
  privacy wallets and
  services}[warning-about-special-tumbling-mixing-coinjoining-privacy-wallets-and-services-wikiless-archiveorg].}
\stopitemize

\subsection[title={Using Bitcoin anonymously
option:},reference={using-bitcoin-anonymously-option}]

Despite this, it is possible to safely anonymize Bitcoin through the use
of non-custodial collaborative transactions and privacy-preserving
spending tools. This is possible with a protocol called
\useURL[url2924][https://code.samourai.io/whirlpool/Whirlpool/-/blob/whirlpool/THEORY.md][][ZeroLink]\from[url2924]
and an implementation called Whirlpool which as two clients that utilize
it and provide the necessary spending tools, detailed below. So, you
might be wondering how? Well, it is actually pretty simple:

\startitemize[n][stopper=.]
\item
  Purchase Bitcoin at a non-KYC exchange (such as one found on
  \useURL[url2925][https://kycnot.me/]\from[url2925])
\item
  Create a wallet with
  \useURL[url2926][https://www.samouraiwallet.com/][][Samourai
  Wallet]\from[url2926] (Android) or
  \useURL[url2927][https://www.sparrowwallet.com/][][Sparrow
  Wallet]\from[url2927] (Desktop). Both of these use the Whirlpool
  protocol to gain the user forward-facing on-chain privacy on Bitcoin.
\item
  Deposit coins into the wallet and follow the relevant instructions
  (\useURL[url2928][https://docs.samourai.io/wallet/usage][][Samourai]\from[url2928],
  \useURL[url2929][https://www.sparrowwallet.com/docs/mixing-whirlpool.html][][Sparrow]\from[url2929])
  to remove their historic links.
\item
  Funds should only be spent from the Postmix account, as that is the
  account with the coins that have gained anonymity through Whirlpool.
\stopitemize

\startitemize[packed]
\item
  {\bf You should run your own node when using Bitcoin and always use
  that for connecting from your wallet. You do not need to purchase
  separate hardware to do so, and it's simple to
  \useURL[url2925][https://bitcoincoredocs.com/tor.html][][do so by
  using the Tor Network]\from[url2925] as well.}
\stopitemize

\subsection[title={Using Monero anonymously
option:},reference={using-monero-anonymously-option}]

\startitemize[n][stopper=.]
\item
  Purchase Monero at a non-KYC exchange (such as one found on
  \useURL[url2926][https://kycnot.me/]\from[url2926])
\item
  Create a Monero wallet on one of your anonymized VMs (for example, on
  the Whonix Workstation which includes a Monero GUI wallet natively or
  using the Monero GUI wallet from
  \useURL[url2927][https://www.getmonero.org/downloads/]\from[url2927]
  on other OSes)
\item
  Transfer your Monero from the wallet from which you bought it to the
  wallet on your VM. We cannot stress enough how import it is to have
  two separate wallets for this process, even for handling Monero.
\item
  On the same VM (for instance again the Whonix Workstation), create a
  Bitcoin Wallet (again this is provided natively within the Whonix
  Workstation)
\item
  From an anonymized browser (such as Tor Browser), use a non-KYC (Know
  Your Customer) service swapping service (see \goto{Appendix A8: Crypto
  Swapping Services without Registration and
  KYC}[appendix-a8-crypto-swapping-services-without-registration-and-kyc])
  and convert your Monero to BTC and transfer those to the BTC Wallet
  you have on your anonymized VM
\item
  You should now have an anonymized Bitcoin wallet that can be used for
  purchasing services that do not accept Monero.
\stopitemize

{\bf You should never access this wallet from a non-anonymized
environment. Always use well-thought OPSEC with your BTC transactions.
Remember those can be traced back to you.}

The origin of those BTC cannot be traced back to your real identity due
to the use of Monero {\bf unless Monero is broken} or if you consolidate
outputs from spending at separate merchants. It is recommended to use
privacy preserving wallets in the
\useURL[url2926][Using\%20Bitcoin\%20anonymously\%20option:][][Bitcoin
section]\from[url2926]. Please do read \goto{Appendix B2: Monero
Disclaimer}[appendix-b2-monero-disclaimer].

{\bf Regarding Zcash: this section previously included use of Zcash but
it has been removed in light of newer, more accurate information.}

\subsection[title={Warning about special tumbling, mixing, coinjoining
privacy wallets and services:
\useURL[url2927][https://wikiless.org/wiki/Cryptocurrency_tumbler][][Wikiless]\from[url2927]
\useURL[url2928][https://web.archive.org/web/https://wikiless.org/wiki/Cryptocurrency_tumbler][][Archive.org]\from[url2928]},reference={warning-about-special-tumbling-mixing-coinjoining-privacy-wallets-and-services-wikiless-archive.org}]

Centralized \quotation{private} tumblers, mixers and coinjoiners are not
recommended since they do not provide anonymity in a way that truly
unlinks an output from its history. Here are some references about this
issue:

\startitemize[packed]
\item
  \useURL[url2929][https://arxiv.org/pdf/2204.02019.pdf][][Mixing
  detection on Bitcoin transactions using statistical
  patterns.]\from[url2929]
  \useURL[url2930][https://web.archive.org/web/https://arxiv.org/pdf/2204.02019.pdf][][Archive.org]\from[url2930]
\item
  \useURL[url2931][https://www.researchgate.net/profile/Julio-Hernandez-Castro/publication/319944399_An_Analysis_of_Bitcoin_Laundry_Services/links/5a045d410f7e9beb177883af/An-Analysis-of-Bitcoin-Laundry-Services.pdf?origin=publication_detail][][An
  Analysis Of Bitcoin Laundry Services]\from[url2931]
  \useURL[url2932][https://web.archive.org/web/https://www.researchgate.net/profile/Julio-Hernandez-Castro/publication/319944399_An_Analysis_of_Bitcoin_Laundry_Services/links/5a045d410f7e9beb177883af/An-Analysis-of-Bitcoin-Laundry-Services.pdf?origin=publication_detail][][Archive.org]\from[url2932]
\item
  \useURL[url2933][https://www.researchgate.net/publication/344485520_Mixing_Strategies_in_Cryptocurrencies_and_An_Alternative_Implementation][][Mixing
  Strategies in Cryptocurrencies and An Alternative
  Implementation]\from[url2933]
  \useURL[url2934][https://web.archive.org/web/https://www.researchgate.net/publication/344485520_Mixing_Strategies_in_Cryptocurrencies_and_An_Alternative_Implementation][][Archive.org]\from[url2934]
\stopitemize

Mixing BTC in this way should prevent any chain analysis on future
transactions. This will {\em not} however hide any past transactions or
the fact you purchased BTC from a KYC exchange. Instead we recommend to
use Bitcoin wallets that utilize Whirlpool or Monero (preferred).

\subsection[title={When converting from BTC to
Monero:},reference={when-converting-from-btc-to-monero}]

{\bf Now, as part of any process above, if you want to convert BTC back
to Monero}, we recommend not using a swapping service but instead
recommend using the new Monero Atomic Swap Tool:
\useURL[url2935][https://unstoppableswap.net/]\from[url2935]. This will
prevent unnecessary fees and intermediates when using a commercial
swapping service. The website is self-explanatory with detailed
instructions for all OSes.

\section[title={Appendix A1: Recommended VPS hosting
providers},reference={appendix-a1-recommended-vps-hosting-providers}]

We will only recommend providers that accept Monero as payment and here
is my personal shortlist:

\startitemize
\item
  {\bf Njalla \useURL[url2936][https://njal.la/]\from[url2936] (my
  personal favorite but quite expensive, recommended by
  PrivacyGuides.org.}
\item
  {\bf 1984.is (my second favorite, much less expensive)
  \useURL[url2937][https://www.1984.is]\from[url2937].}
\item
  To be considered at your own risk (untested):

  \startitemize
  \item
    \useURL[url2938][https://cryptoho.st/]\from[url2938] (warning, this
    might be against their ToS as they require personal identification
    on registration)
  \item
    \useURL[url2939][https://www.privex.io/]\from[url2939]
  \item
    \useURL[url2940][https://cockbox.org/]\from[url2940] (warning, this
    provider is rather \quotation{edgy} and could offend some people)
  \stopitemize
\stopitemize

Also consider these lists:

\startitemize
\item
  Tor Project:
  \useURL[url2941][https://community.torproject.org/relay/community-resources/good-bad-isps/]\from[url2941]
  \useURL[url2942][https://web.archive.org/web/https://community.torproject.org/relay/community-resources/good-bad-isps/][][{[}Archive.org{]}]\from[url2942]
\item
  PrivacyGuides.org:
  \useURL[url2943][https://privacyguides.org/providers/hosting/]\from[url2943]
  \useURL[url2944][https://web.archive.org/web/https://privacyguides.org/providers/hosting/][][{[}Archive.org{]}]\from[url2944]
\stopitemize

Lastly, you could pick one (at your own risk) from the list here that
does accept Monero:
\useURL[url2945][https://www.getmonero.org/community/merchants/\#hosting]\from[url2945]
\useURL[url2946][https://web.archive.org/web/https://www.getmonero.org/community/merchants/][][{[}Archive.org{]}]\from[url2946]

{\bf Please do read \goto{Appendix B2: Monero
Disclaimer}[appendix-b2-monero-disclaimer].}

If the service does not accept Monero but does accept BTC, consider the
following appendix: \goto{Appendix Z: Paying anonymously online with
BTC}[appendix-y-installing-and-using-desktop-tor-browser].

\section[title={Appendix A2: Guidelines for passwords and
passphrases},reference={appendix-a2-guidelines-for-passwords-and-passphrases}]

My opinion (and the one of many\footnote{NIST, NIST Has Spoken - Death
  to Complexity, Long Live the Passphrase!
  \useURL[url2947][https://www.sans.org/blog/nist-has-spoken-death-to-complexity-long-live-the-passphrase/]\from[url2947]
  \useURL[url2948][https://web.archive.org/web/https://www.sans.org/blog/nist-has-spoken-death-to-complexity-long-live-the-passphrase/][][{[}Archive.org{]}]\from[url2948]}\quote{\footnote{ZDnet,
  FBI recommends passphrases over password complexity
  \useURL[url2949][https://www.zdnet.com/article/fbi-recommends-passphrases-over-password-complexity/]\from[url2949]
  \useURL[url2950][https://web.archive.org/web/https://www.zdnet.com/article/fbi-recommends-passphrases-over-password-complexity/][][{[}Archive.org{]}]\from[url2950]}}\footnote{The
  Intercept, Passphrases That You Can Memorize --- But That Even the NSA
  Can't Guess
  \useURL[url2951][https://theintercept.com/2015/03/26/passphrases-can-memorize-attackers-cant-guess/]\from[url2951]
  \useURL[url2952][http://27m3p2uv7igmj6kvd4ql3cct5h3sdwrsajovkkndeufumzyfhlfev4qd.onion/2015/03/26/passphrases-can-memorize-attackers-cant-guess/][][{[}Tor
  Mirror{]}]\from[url2952]
  \useURL[url2953][https://web.archive.org/web/https://theintercept.com/2015/03/26/passphrases-can-memorize-attackers-cant-guess/][][{[}Archive.org{]}]\from[url2953]}\quote{\footnote{Proton
  Blog, Let's settle the password vs.~passphrase debate once and for all
  \useURL[url2954][https://proton.me/blog/protonmail-com-blog-password-vs-passphrase/]\from[url2954]
  \useURL[url2955][https://web.archive.org/web/https://proton.me/blog/protonmail-com-blog-password-vs-passphrase][][{[}Archive.org{]}]\from[url2955]}}\footnote{YouTube,
  Edward Snowden on Passwords: Last Week Tonight with John Oliver (HBO)
  \useURL[url2956][https://www.youtube.com/watch?v=yzGzB-yYKcc]\from[url2956]
  \useURL[url2957][https://yewtu.be/watch?v=yzGzB-yYKcc][][{[}Invidious{]}]\from[url2957]}'\footnote{YouTube,
  How to Choose a Password -- Computerphile
  \useURL[url2958][https://www.youtube.com/watch?v=3NjQ9b3pgIg]\from[url2958]
  \useURL[url2959][https://yewtu.be/watch?v=3NjQ9b3pgIg][][{[}Invidious{]}]\from[url2959]})
is that passphrases are generally better than passwords. So instead of
thinking of better passwords, forget them altogether and use passphrases
instead (when possible). Or just use a password manager with very long
passwords (such as KeePassXC, the preferred password manager in this
guide).

The well-known shown-below XKCD
\useURL[url2960][https://xkcd.com/936/]\from[url2960]
\useURL[url2961][https://web.archive.org/web/https://xkcd.com/936/][][{[}Archive.org{]}]\from[url2961]
is still valid despite some people disputing it (See
\useURL[url2962][https://www.explainxkcd.com/wiki/index.php/936:_Password_Strength]\from[url2962]
\useURL[url2963][https://web.archive.org/web/https://www.explainxkcd.com/wiki/index.php/936:_Password_Strength][][{[}Archive.org{]}]\from[url2963]).
Yes, it is quite old now and is a little bit outdated and might be
misinterpreted. But generally, it is still valid and a good argument for
using passphrases instead of passwords.

\placefigure{image58}{\externalfigure[./tex2pdf.-1a34188c73046814/fd53e813bad3f6ff1a41c93677fc836106411992.png]}

(Illustration by Randall Munroe, xkcd.com, licensed under CC BY-NC 2.5)

Here are some recommendations (based on Wikipedia\footnote{Wikipedia,
  Passphrase
  \useURL[url2964][https://en.wikipedia.org/wiki/Passphrase\#Passphrase_selection]\from[url2964]
  \useURL[url2965][https://wikiless.org/wiki/Passphrase\#Passphrase_selection][][{[}Wikiless{]}]\from[url2965]
  \useURL[url2966][https://web.archive.org/web/https://en.wikipedia.org/wiki/Passphrase\#Passphrase_selection][][{[}Archive.org{]}]\from[url2966]}):

\startitemize
\item
  Long enough to be hard to guess (typically four words is a minimum,
  five or more is better).
\item
  Not a famous quotation from literature, holy books, et cetera.
\item
  Hard to guess by intuition---even by someone who knows the user well.
\item
  Easy to remember and type accurately.
\item
  For better security, any easily memorable encoding at the user's own
  level can be applied.
\item
  Not reused between sites, applications, and other different sources.
\item
  Do not use only \quotation{common words} (like \quotation{horse} or
  \quotation{correct})
\stopitemize

Here is a nice website showing you some examples and guidelines:
\useURL[url2967][https://www.useapassphrase.com/]\from[url2967]

Watch this insightful video by Computerphile:
\useURL[url2968][https://www.youtube.com/watch?v=3NjQ9b3pgIg]\from[url2968]
\useURL[url2969][https://yewtu.be/watch?v=3NjQ9b3pgIg][][{[}Invidious{]}]\from[url2969]

{\bf Use a different one for each service/device if possible. Do not
make it easy for an adversary to access all your information because you
used the same passphrase everywhere.}

{\bf You might ask how? Simple: use a password manager such as the
recommended KeePassXC. Only remember the passphrase to unlock the
database and then store everything else in the KeePassXC database.
Within KeePassXC you can then create extremely long passwords (30+
random characters) for each different service.}

\section[title={Appendix A3: Search
Engines},reference={appendix-a3-search-engines}]

Which search engine to pick in your VMs?

We will not go into too many details. Just pick one from
PrivacyGuides.org
(\useURL[url2970][https://www.privacyguides.org/search-engines/]\from[url2970]
\useURL[url2971][https://web.archive.org/web/https://www.privacyguides.org/search-engines/][][{[}Archive.org{]}]\from[url2971]).

Personally, my favorites are:

\startitemize
\item
  \useURL[url2972][https://duckduckgo.com/]\from[url2972] (because you
  can easily use operators such as \quotation{!g} to google or
  \quotation{!b} to Bing)
\item
  \useURL[url2973][https://www.startpage.com/]\from[url2973]
\item
  SearX (\useURL[url2974][https://searx.me/]\from[url2974]) instances
  listed here: \useURL[url2975][https://searx.space/]\from[url2975]
\stopitemize

Note that some of those have a convenient \quotation{.onion} address:

\startitemize[packed]
\item
  DuckDuckGo:
  \useURL[url2976][http://duckduckgogg42xjoc72x3sjasowoarfbgcmvfimaftt6twagswzczad.onion/]\from[url2976]
\stopitemize

In the end, we were often not satisfied with the results of both those
search engines and still ended up on Bing or Google.

\section[title={Appendix A4: Counteracting Forensic
Linguistics},reference={appendix-a4-counteracting-forensic-linguistics}]

{\bf Note that this information is taken and adapted from a Dread Post
available here:}
\useURL[url2977][http://dreadytofatroptsdj6io7l3xptbet6onoyno2yv7jicoxknyazubrad.onion/post/aad54fe83b33a8a45920/]\from[url2977]

No plagiarism is intended but some important adaptations and
modifications have been made to improve the source post in various ways.

\subsection[title={Introduction:},reference={introduction-1}]

Stylometry is our personal and unique writing style. No matter who you
are, you have a unique finger printable, and traceable writing style.
This has been understood for a while now, and a branch of forensics is
built off of this principle: forensic linguistics. In this field, the
particular name for forensic linguistics applied to internet crime is
called \quotation{Writeprint}. Writeprint primarily aims to determine
author identification over the internet by comparing a suspect's text to
a known collection of writer invariant (normally written) texts, and
even without comparison texts, this forensic technique can yield
personal information about an author such as gender, age, and
personality.

\subsection[title={What does an adversary look for when examining your
writing?},reference={what-does-an-adversary-look-for-when-examining-your-writing}]

\startitemize[n][stopper=.]
\item
  Lexical features: analysis of word choice.
\item
  Syntactic features: analysis of writing style, sentence structure,
  punctuation, and hyphenation.
\item
  Structural features: analysis of structure and organization of
  writing.
\item
  Content-specific words: analysis of contextually significant writing
  such as acronyms.
\item
  Idiosyncratic features: analysis of grammatical errors, this is the
  most important factor to consider because it provides relatively high
  accuracy in author identification
\stopitemize

\subsection[title={Examples:},reference={examples}]

You might think that this is not something that an adversary pays
attention to? Think again! There have been multiple cases where
adversaries such as law enforcement have used Writeprint techniques to
help catch and sentence people. Here are some examples:

\startitemize
\item
  The OxyMonster case
  (\useURL[url2978][https://arstechnica.com/tech-policy/2018/06/dark-web-vendor-oxymonster-turns-out-to-be-a-frenchman-with-luscious-beard/]\from[url2978]
  \useURL[url2979][https://web.archive.org/web/https://arstechnica.com/tech-policy/2018/06/dark-web-vendor-oxymonster-turns-out-to-be-a-frenchman-with-luscious-beard/][][{[}Archive.org{]}]\from[url2979]):

  \startitemize[packed]
  \item
    Public data revealed that Vallerius (a.k.a OxyMonster) has Instagram
    and Twitter accounts. Agents compared the writing style of
    \quotation{OxyMonster} on the Dream Market forum while in a senior
    Moderator role to the writing style of Vallerius on his public
    Instagram and Twitter accounts. Agents discovered many similarities
    in the use of words and punctuation to including the word "cheers;''
    double exclamation marks; frequent use of quotation marks; and
    intermittent French post.
  \stopitemize
\stopitemize

Do not use the same writing style for your sensitive activities as for
your normal activities. In particular, pay close attention to your use
of common phrases, and punctuations. Also, as a side note: limit the
amount of reference material that an adversary can use as comparison
text, you do not want to find yourself in trouble because of your
political Twitter post, or that Reddit post you made years ago, do you?

\startitemize[packed]
\item
  Here is another example from the book American Kingpin, about how a
  DEA agent investigated the writing style of DPR (Dread Pirate Roberts
  a.k.a Ross Ulbricht, founder of the Silk Road Dark Market) from a
  unique perspective: For one, Ross Ulbricht used the word
  \quotation{epic} a lot, which showed that he was likely young. He also
  used emoji smiley faces in his writing, though he never used a hyphen
  as the nose, writing them as \quotation{:)} rather than the
  old-fashioned \quotation{:-)}. Yet the one attribute about Ulbricht
  that stood out was that rather than writing \quotation{yes} or
  \quotation{yeah} on the site's forums, Ulbricht instead always typed
  \quotation{yea}.
\stopitemize

Pay attention to the little things that might add up. If you usually
reply with \quotation{ok} to people, maybe try to reply with
\quotation{okay} for your sensitive activities. You should NEVER use
words or phrases from your sensitive activities (even if they are not in
a public post) for normal purposes, and vice versa. Ross Ulbricht used
\quotation{frosty} as the name for his Silk Road servers, and for his
YouTube account, which helped convince law enforcement that Dread Pirate
Roberts was in fact, Ross Ulbricht.

\subsection[title={How to counteract the efforts of your
adversary:},reference={how-to-counteract-the-efforts-of-your-adversary}]

\startitemize[n][stopper=.]
\item
  Reduce the amount of comparison text for adversaries to compare you
  with. This goes with having a small online footprint for your normal
  activities.
\item
  Use a word processor (such as LibreWriter) to fix any
  grammatical/spelling errors that you regularly encounter.
\item
  Reduce or change the idioms that you use while conducting sensitive
  activities.
\item
  Understand how your identity affects your writing style: Is your alias
  younger? Older? More educated? Or less educated? If your identity is
  older, maybe speak in a more JRR Tolkien style of writing.
\item
  Pay attention to how your slang and spelling might identify you. If
  you are from the UK, you should say \quotation{maths}, but if you are
  from the US you say \quotation{math}. It does not matter how you say
  \quotation{maths}, all that matters is that it can be used to profile
  you. This also applies to slang as many regions each have different
  and extremely particular slang. You do not ask someone from the USA
  for a \quotation{rubber} and expect them to give you an
  \quotation{eraser} as an example.
\item
  Pay attention to your use of emoticons and emojis. In the previous
  example, the DEA agent was able to make a correct assumption that
  Ulbricht was likely young because he did not use a hyphen when making
  a smiley emoticon.
\item
  Pay attention to how you structure your writing. Do you use two spaces
  after a period? Do you constantly use parenthesis in your writing? Do
  you use the oxford comma?
\item
  Consider what symbols you use in your writing. Do you use €, £ or \$?
  Do you use \quotation{dd-mm-yyyy} or \quotation{mm-dd-yyyy} for dates?
  Do you use \quotation{08:00 pm} or \quotation{20:00} for time?
\stopitemize

\subsection[title={What different linguistic choices could say about
you:},reference={what-different-linguistic-choices-could-say-about-you}]

\subsubsection[title={Emoticons:},reference={emoticons}]

\startitemize[n][stopper=.]
\item
  Russians for example use \quotation{)} instead of \quotation{:-)} or
  \quotation{:)} to express a smiley face.
\item
  Scandinavians use \quotation{=)} instead of \quotation{:-)} or
  \quotation{:)} for a smiley face.
\item
  Younger people generally do not use a hyphen in their smiley faces and
  just use \quotation{:)}.
\stopitemize

\subsubsection[title={Structural
features:},reference={structural-features}]

\startitemize[n][stopper=.]
\item
  Two spaces after a period give off the impression that you are quite
  older because this is how typing was taught to people learning to type
  with typewriters.
\item
  In the US people write numbers out with commas between numbers to the
  left of the starting number and with periods between numbers to the
  right of the starting number. This is in contrast to how people write
  out numbers on the rest of the planet.
\stopitemize

US: 1,000.00\$

\startblockquote
Europe: 1.000,00€
\stopblockquote

\subsubsection[title={Spelling slang and
symbols:},reference={spelling-slang-and-symbols}]

\startitemize[n][stopper=.]
\item
  Obviously, people in different nations use different slang. This is
  even more pronounced when you use slang that is not as well known in
  other places such as someone from the UK mentioning a
  \quotation{headmaster} when in other nations it is referred to as a
  \quotation{principal}.
\item
  Spelling is another important factor that is similar to slang, except
  it is harder to control. If you want to pretend that you are from the
  USA, but you actually live in Australia, it only takes one time of
  spelling \quotation{colour} as color to let people understand that
  something is up.
\item
  Some people also spell words in a particular way that is not regional
  for example you might spell \quotation{ax} as \quotation{axe} or vice
  versa.
\item
  Of course, the symbols you use on your keyboard can give a lot of
  information away, such as £'s or \$'s.
\stopitemize

\subsection[title={Techniques to prevent
writeprinting:},reference={techniques-to-prevent-writeprinting}]

Here are some techniques in order of use:

\subsubsection[title={Spelling and grammar
checking:},reference={spelling-and-grammar-checking}]

This helps prevent some fingerprinting done using your spelling and
grammar mistakes

\subsubsubsection[title={Offline using a word
processor:},reference={offline-using-a-word-processor}]

Use a word processor such as LibreWriter and use the spelling and
grammar checks features to fix mistakes you might have typed.

\subsubsubsection[title={Online using an online
service:},reference={online-using-an-online-service}]

If you do nothave a word processor available or don't want to use one,
you can also use an online spelling and grammar checker such as
Grammarly (this requires an e-mail and an account creation).

\subsubsection[title={Translation
technique:},reference={translation-technique}]

{\bf Disclaimer: a study archived here:
\useURL[url2980][https://web.archive.org/web/20181125133942/https://www.cs.drexel.edu/~sa499/papers/adversarial_stylometry.pdf]\from[url2980]
seems to indicate the translation technique is inefficient to prevent
stylometry. This step might be useless.}

After being done with spelling and grammar fixes. Use a website or
software such as Google Translate (or for a more privacy-friendly
version, \useURL[url2981][https://simplytranslate.org/]\from[url2981])
to translate between several different languages before translating back
to your original language. These translations back and forth will alter
your messages and make fingerprinting more difficult.

\subsubsection[title={Search and
replace:},reference={search-and-replace}]

Finally, and optionally, add some salt by purposefully adding some
mistakes to your messages.

First decide upon a list of words that you frequently do not misspell,
maybe the words \quotation{grammatical}, \quotation{symbol}, and
\quotation{pronounced} (this list should include more words). {\bf Do
not use an AutoCorrect automatic replace option for this as it might
correct when it does not make sense.} Instead, use Search and Replace
and do this manually for each word. {\bf Do not use \quotation{Replace
All} either and review each change.} This is just the first step, for
providing misinformation against linguistic fingerprinting.

Next, find a list of words that you commonly use in your writing. Let us
say that we love to use contractions when wew rite, maybe we always use
words such as: \quotation{can't}, \quotation{don't},
\quotation{shouldn't}, \quotation{won't}, or \quotation{let's}. Well,
maybe go into LibreWriter and use \quotation{Search and Replace} to
replace all contractions with the full versions of the words
(\quotation{can't} > \quotation{cannot}, \quotation{don't} >
\quotation{do not}, \quotation{shouldn't} > \quotation{should not},
\quotation{won't} > \quotation{will not}, \quotation{let's} >
\quotation{let us}). This can make a large difference in your writing
and give a difference in how people and most importantly your
adversaries perceive you. You can change most words to be different, as
an example you can change \quotation{huge} to \quotation{large}. Just
make sure these words fit with your identity.

Now, consider changing your words choices to fit a geographic location.
Maybe you live in the US, and you want to give the impression that your
identity is from the UK. For example, you can make use of location-based
spelling and lexicon. This is risky, and one mistake can give it away.

First off, you need to decide where you want to give the impression of
your location. Here is an example to give off the impression that you
are from the US, or the UK. First, you will need to understand a thing
or two about where your identity is \quotation{from}, do not pretend
that you are from the UK, yet have no idea about it other than it
exists.

After you have decided upon a good location that your identity is from,
research the differences in language between the two languages (in this
case between UK English and US English). Thanks to the internet, this is
quite easy, and you can find Wikipedia pages conveniently highlighting
the regional differences of a language between two nations. Pay
attention to how certain words are spelled (\quotation{metre} >
\quotation{meter}) and what words are exchanged with each other
(\quotation{boot} > \quotation{trunk}). Now that you have a list of
words that can be exchanged with each other, and a list of spelling that
are different, use the \quotation{Search and Replace} in your editor and
change the words such as \quotation{colour} into \quotation{color}, and
\quotation{lorry} into \quotation{truck}. {\bf Again, do not use an
AutoCorrect feature or \quotation{Replace All} as some changes might not
make sense. Review each proposed change. As an example, if you were to
use AutoCorrect or \quotation{Replace all} on the word \quotation{boot}
to change into \quotation{trunk}, this would make perfect sense in the
context of cars. But it would not make any sense in the context of
shoes.}

\subsubsection[title={Final advice:},reference={final-advice}]

Understand that you have to constantly think of what you type and how
you type while conducting sensitive activities.

Understand that altering your writing style for such purposes can
ultimately change your baseline writing style, ironically making your
writing traceable over longer periods.

Proofread yourself at least one time after you are done writing anything
to verify you made no mistakes in your process. Trust (yourself) but
verify anyway.

You might also consider the use of something like AnonyMouth
\useURL[url2982][https://web.archive.org/web/https://github.com/psal/anonymouth]\from[url2982]
\useURL[url2983][https://web.archive.org/web/https://github.com/psal/anonymouth][][{[}Archive.org{]}]\from[url2983]
which is a tool that you can use to anonymize your documents, developed
by PSAL, Drexel University's Privacy, Security, and Automation
Laboratory
\useURL[url2984][https://psal.cs.drexel.edu/index.php/Main_Page]\from[url2984]
\useURL[url2985][https://web.archive.org/web/https://psal.cs.drexel.edu/index.php/Main_Page][][{[}Archive.org{]}]\from[url2985].
Such tools can prove invaluable.

\subsection[title={Bonus links:},reference={bonus-links}]

\startitemize
\item
  \useURL[url2986][https://seirdy.one/posts/2022/07/09/stylometric-fingerprinting-redux/]\from[url2986]
  \useURL[url2987][https://web.archive.org/web/https://seirdy.one/posts/2022/07/09/stylometric-fingerprinting-redux/][][{[}Archive.org{]}]\from[url2987]:
  Stylometric fingerprinting redux
\item
  \useURL[url2988][https://www.whonix.org/wiki/Surfing_Posting_Blogging\#Stylometry]\from[url2988]
  \useURL[url2989][https://web.archive.org/web/https://www.whonix.org/wiki/Surfing_Posting_Blogging\#Stylometry][][{[}Archive.org{]}]\from[url2989]:
  Whonix documentation about stylometry.
\item
  \useURL[url2990][https://wikipedia.org/wiki/Forensic_linguistics]\from[url2990]
  \useURL[url2991][https://wikiless.org/wiki/Forensic_linguistics][][{[}Wikiless{]}]\from[url2991]
  \useURL[url2992][https://web.archive.org/web/https://wikipedia.org/wiki/Forensic_linguistics][][{[}Archive.org{]}]\from[url2992]:
  Gives a brief rundown of the basics of forensic linguistics, not too
  informative.
\item
  \useURL[url2993][https://wikipedia.org/wiki/Writeprint]\from[url2993]
  \useURL[url2994][https://wikiless.org/wiki/Writeprint][][{[}Wikiless{]}]\from[url2994]
  \useURL[url2995][https://web.archive.org/web/https://wikipedia.org/wiki/Writeprint][][{[}Archive.org{]}]\from[url2995]:
  Gives a brief and informative rundown of forensic linguistics applied
  to internet investigations.
\item
  \useURL[url2996][https://wikipedia.org/wiki/Stylometry]\from[url2996]
  \useURL[url2997][https://wikiless.org/wiki/Stylometry][][{[}Wikiless{]}]\from[url2997]
  \useURL[url2998][https://web.archive.org/web/https://wikipedia.org/wiki/Stylometry][][{[}Archive.org{]}]\from[url2998]:
  Gives a brief overview of Stylometry.
\item
  \useURL[url2999][https://wikipedia.org/wiki/Content_similarity_detection]\from[url2999]
  \useURL[url3000][https://wikiless.org/wiki/Content_similarity_detection][][{[}Wikiless{]}]\from[url3000]
  \useURL[url3001][https://web.archive.org/web/https://wikipedia.org/wiki/Content_similarity_detection][][{[}Archive.org{]}]\from[url3001]:
  We would recommend reading this, quite informative.
\item
  \useURL[url3002][https://wikipedia.org/wiki/Author_profiling]\from[url3002]
  \useURL[url3003][https://wikiless.org/wiki/Author_profiling][][{[}Wikiless{]}]\from[url3003]
  \useURL[url3004][https://web.archive.org/web/https://wikipedia.org/wiki/Author_profiling][][{[}Archive.org{]}]\from[url3004]:
  Read through this as well if you are interested in this topic.
\item
  \useURL[url3005][https://wikipedia.org/wiki/Native-language_identification]\from[url3005]
  \useURL[url3006][https://wikiless.org/wiki/Native-language_identification][][{[}Wikiless{]}]\from[url3006]
  \useURL[url3007][https://web.archive.org/web/https://wikipedia.org/wiki/Native-language_identification][][{[}Archive.org{]}]\from[url3007]:
  This is less important if you use a translator, but if you do not use
  a translator to communicate on forums that are not in your native
  language, consider giving this a quick read through.
\item
  \useURL[url3008][https://wikipedia.org/wiki/Computational_linguistics]\from[url3008]
  \useURL[url3009][https://wikiless.org/wiki/Computational_linguistics][][{[}Wikiless{]}]\from[url3009]
  \useURL[url3010][https://web.archive.org/web/https://wikipedia.org/wiki/Computational_linguistics][][{[}Archive.org{]}]\from[url3010]:
  Only read through this if this topic is interesting to you.
\item
  \useURL[url3011][https://regmedia.co.uk/2017/09/27/gal_vallerius.pdf]\from[url3011]
  \useURL[url3012][https://web.archive.org/web/https://regmedia.co.uk/2017/09/27/gal_vallerius.pdf][][{[}Archive.org{]}]\from[url3012]:
  Explains how authorities used forensic linguistics to help arrest
  OxyMonster (pages 13 -- 14).
\item
  \useURL[url3013][https://wikipedia.org/wiki/Ted_Kaczynski\#After_publication]\from[url3013]
  \useURL[url3014][https://wikiless.org/wiki/Ted_Kaczynski\#After_publication][][{[}Wikiless{]}]\from[url3014]
  \useURL[url3015][https://web.archive.org/web/https://wikipedia.org/wiki/Ted_Kaczynski\#After_publication][][{[}Archive.org{]}]\from[url3015]:
  May have an IQ of 167, but he was caught primarily based on forensic
  linguistics.
\item
  \useURL[url3016][https://i.blackhat.com/USA-19/Wednesday/us-19-Wixey-Im-Unique-Just-Like-You-Human-Side-Channels-And-Their-Implications-For-Security-And-Privacy.pdf]\from[url3016]
  \useURL[url3017][https://web.archive.org/web/https://i.blackhat.com/USA-19/Wednesday/us-19-Wixey-Im-Unique-Just-Like-You-Human-Side-Channels-And-Their-Implications-For-Security-And-Privacy.pdf][][{[}Archive.org{]}]\from[url3017]:
  Explains how your writing style can be used to track you, we highly
  recommend reading through these slides, or watching the accompanying
  presentation on YouTube.
\item
  \useURL[url3018][https://media.defcon.org/DEF\%20CON\%2026/DEF\%20CON\%2026\%20presentations/DEFCON-26-Matt-Wixey-Betrayed-by-the-Keyboard-Updated.pdf][][https://media.defcon.org/DEF\letterpercent{}20CON\letterpercent{}2026/DEF\letterpercent{}20CON\letterpercent{}2026\letterpercent{}20presentations/DEFCON-26-Matt-Wixey-Betrayed-by-the-Keyboard-Updated.pdf]\from[url3018]
  \useURL[url3019][https://web.archive.org/web/https://media.defcon.org/DEF\%20CON\%2026/DEF\%20CON\%2026\%20presentations/DEFCON-26-Matt-Wixey-Betrayed-by-the-Keyboard-Updated.pdf][][{[}Archive.org{]}]\from[url3019]:
  Explains how your writing style can be used to track you, we highly
  recommend reading through these slides, or watching the accompanying
  presentation on YouTube, this is quite similar to the last
  presentation.
\item
  \useURL[url3020][https://i.blackhat.com/us-18/Wed-August-8/us-18-Wixey-Every-ROSE-Has-Its-Thorn-The-Dark-Art-Of-Remote-Online-Social-Engineering.pdf]\from[url3020]
  \useURL[url3021][https://web.archive.org/web/https://i.blackhat.com/us-18/Wed-August-8/us-18-Wixey-Every-ROSE-Has-Its-Thorn-The-Dark-Art-Of-Remote-Online-Social-Engineering.pdf][][{[}Archive.org{]}]\from[url3021]:
  This goes over how to potentially spot deception through the internet,
  and presents a checklist to see how trustworthy someone is. We would
  advise reading the slides or watching the presentation on YouTube.
\stopitemize

\section[title={Appendix A5: Additional browser precautions with
JavaScript
enabled},reference={appendix-a5-additional-browser-precautions-with-javascript-enabled}]

To avoid Browser and User Fingerprinting through JavaScript but while
keeping JavaScript enabled, some additional safety measures should be
observed at least on some websites:

These recommendations are similar to the ones at the beginning of the
guide and especially valid for certain websites. Mostly, the
recommendation is to use privacy-friendly front-end instances and
alternative services for a variety of services:

\startitemize
\item
  For YouTube links, use an Invidious instance
  (\useURL[url3022][https://github.com/iv-org/invidious]\from[url3022]
  \useURL[url3023][https://web.archive.org/web/https://github.com/iv-org/invidious][][{[}Archive.org{]}]\from[url3023])

  \startitemize[packed]
  \item
    We recommend {[}https://yewtu.be{]}
  \stopitemize
\item
  For Twitter links, use a Nitter instance
  (\useURL[url3024][https://github.com/zedeus/nitter]\from[url3024]
  \useURL[url3025][https://web.archive.org/web/https://github.com/zedeus/nitter][][{[}Archive.org{]}]\from[url3025])

  \startitemize[packed]
  \item
    We recommend {[}https://nitter.net{]}
  \stopitemize
\item
  For Wikipedia links, use a Wikiless instance
  (\useURL[url3026][https://codeberg.org/orenom/wikiless]\from[url3026]
  \useURL[url3027][https://web.archive.org/web/https://codeberg.org/orenom/wikiless][][{[}Archive.org{]}]\from[url3027])
\item
  For Reddit, use a LibReddit instance
  (\useURL[url3028][https://github.com/spikecodes/libreddit]\from[url3028]
  \useURL[url3029][https://web.archive.org/web/https://github.com/spikecodes/libreddit][][{[}Archive.org{]}]\from[url3029])
\item
  For Maps, consider using
  \useURL[url3030][https://www.openstreetmap.org]\from[url3030]
\item
  For Translation, consider using SimplyTranslate at
  \useURL[url3031][https://simplytranslate.org/]\from[url3031]
\item
  For Search Engines use privacy-focused search engines such as:

  \startitemize
  \item
    StartPage:
    \useURL[url3032][https://www.startpage.com/]\from[url3032]
  \item
    DuckDuckGo: \useURL[url3033][https://duckduckgo.com/]\from[url3033]
  \item
    SearX (\useURL[url3034][https://searx.me/]\from[url3034]) instances:
    list available here:
    \useURL[url3035][https://searx.space/]\from[url3035]
  \stopitemize
\stopitemize

{\bf (Optional)} Consider the use of the
\useURL[url3036][https://libredirect.github.io/]\from[url3036]
\useURL[url3037][https://web.archive.org/web/20220509220021/https://libredirect.github.io/][][{[}Archive.org{]}]\from[url3037]
extension to automate the use of the above services.

\section[title={Appendix A6: Mirrors},reference={appendix-a6-mirrors}]

Find it online at:

\startitemize
\item
  Original: \useURL[url3038][https://anonymousplanet.org]\from[url3038]
\item
  Tor Onion Mirror:
  \useURL[url3039][http://thgtoallkcxrdv37u6knsc3pumk6cq6lqmcqlw3j5vkmyahkxive4jyd.onion]\from[url3039]
\item
  Archive.org:
  \useURL[url3040][https://web.archive.org/web/https://anonymousplanet.org]\from[url3040]
\item
  Archive.today:
  \useURL[url3041][https://archive.fo/anonymousplanet.org]\from[url3041]
\item
  Archive.today over Tor:
  \useURL[url3042][http://archiveiya74codqgiixo33q62qlrqtkgmcitqx5u2oeqnmn5bpcbiyd.onion/anonymousplanet.org]\from[url3042]
\item
  PDF:
  \useURL[url3043][https://anonymousplanet.org/export/guide.pdf]\from[url3043]
  \useURL[url3044][https://web.archive.org/web/https://anonymousplanet.org/export/guide.pdf][][{[}Archive.org{]}]\from[url3044]
  \useURL[url3045][http://thgtoa7imksbg7rit4grgijl2ef6kc7b56bp56pmtta4g354lydlzkqd.onion/guide.pdf][][{[}Tor
  Mirror{]}]\from[url3045]
\item
  OpenDocument Text (ODT) version at:
  \useURL[url3046][https://anonymousplanet.org/export/guide.odt]\from[url3046]
  \useURL[url3047][https://web.archive.org/web/https://anonymousplanet.org/export/guide.odt][][{[}Archive.org{]}]\from[url3047]
  \useURL[url3048][http://thgtoa7imksbg7rit4grgijl2ef6kc7b56bp56pmtta4g354lydlzkqd.onion/guide.odt][][{[}Tor
  Mirror{]}]\from[url3048]
\stopitemize

\section[title={Appendix A7: Comparing
versions},reference={appendix-a7-comparing-versions}]

If you want to compare an older version of the PDF with a newer version,
consider these online tools (note that we do not endorse those tools in
relation to their privacy policies, but it should not matter since these
PDFs are public):

\startitemize
\item
  \useURL[url3049][https://tools.pdf24.org/en/compare-pdf]\from[url3049]
\item
  \useURL[url3050][https://products.aspose.app/pdf/comparison]\from[url3050]
\item
  \useURL[url3051][https://draftable.com/compare]\from[url3051]
\stopitemize

If you want to compare the older version of the ODT format with a newer
version, use the LibreWriter compare features as explained here:
\useURL[url3052][https://help.libreoffice.org/7.1/en-US/text/shared/guide/redlining_doccompare.html]\from[url3052]
\useURL[url3053][https://web.archive.org/web/https://help.libreoffice.org/7.1/en-US/text/shared/guide/redlining_doccompare.html][][{[}Archive.org{]}]\from[url3053]

\section[title={Appendix A8: Crypto Swapping Services without
Registration and
KYC},reference={appendix-a8-crypto-swapping-services-without-registration-and-kyc}]

\subsection[title={General Crypto
Swapping:},reference={general-crypto-swapping}]

{\bf Skip to next section for BTC to Monero. Do not use swapping
services for BTC to Monero.}

Here is a small list of non-KYC crypto swapping services, remember they
all have a cost and fees:

\startitemize
\item
  \useURL[url3054][https://sideshift.ai]\from[url3054]
\item
  \useURL[url3055][https://bisq.network/]\from[url3055]
\item
  Kilo Swap (Onion Hidden Service):
  \useURL[url3056][http://mlyusr6htlxsyc7t2f4z53wdxh3win7q3qpxcrbam6jf3dmua7tnzuyd.onion/coinswap]\from[url3056]
\stopitemize

{\bf Consider having a look at
\useURL[url3057][https://kycnot.me/]\from[url3057] which is an
open-source project listing non-KYC exchanges/swapping services
(repository at
\useURL[url3058][https://codeberg.org/pluja/kycnot.me]\from[url3058]).}

\subsection[title={BTC to Monero only:},reference={btc-to-monero-only}]

{\bf Do not use any swapping service, use their Atomic Swap feature.}
See this Monero Atomic Swap Tool:
\useURL[url3059][https://unstoppableswap.net/]\from[url3059].

This will prevent unnecessary fees and intermediates when using a
commercial swapping service. The website is self-explanatory with
detailed instructions for all OSes.

\section[title={Appendix A9: Installing a Zcash
wallet:},reference={appendix-a9-installing-a-zcash-wallet}]

Remember this should only be done on a secure environment such as VM
behind the Whonix Gateway.

\subsection[title={Debian 11 VM:},reference={debian-11-vm}]

\startitemize
\item
  Load the Debian VM
\item
  Open a browser
\item
  Go to
  \useURL[url3060][https://packages.debian.org/buster/amd64/libindicator3-7/download]\from[url3060]
  and download from a listed mirror.
\item
  Go to
  \useURL[url3061][https://packages.debian.org/buster/amd64/libappindicator3-1/download]\from[url3061]
  and download from a listed mirror.
\item
  Go to the ZecWallet Lite Website to download the latest DEB package
  \useURL[url3062][https://www.zecwallet.co/\#download]\from[url3062]
  (change the download directory to /home/user for convenience)
\item
  Open a Terminal window and run the following commands (with the
  updated downloaded version if needed):

  \startitemize
  \item
    {\bf \type{**sudo dpkg -i ./libindicator3-7_0.5.0-4_amd64.deb**}}
  \item
    {\bf \type{**sudo dpkg -i ./libappindicator3-1_0.4.92-7_amd64.deb**}}
  \item
    {\bf \type{**sudo dpkg -i ./Zecwallet_Lite_1.7.5_amd64.deb**}}
  \stopitemize
\item
  Click the upper left menu, find then launch ZecWallet Lite
\stopitemize

\subsection[title={Ubuntu 20.04/21.04/21.10
VM:},reference={ubuntu-20.0421.0421.10-vm}]

\startitemize
\item
  Load the Ubuntu VM
\item
  Open a browser
\item
  Go to the ZecWallet Lite Website to download the latest DEB package
  \useURL[url3063][https://www.zecwallet.co/\#download]\from[url3063]
\item
  Open a Terminal window
\item
  Go to your download directory and run the following command (with the
  updated downloaded version if needed), for example:
  \type{sudo apt install ./Zecwallet_Lite_1.7.5_amd64.deb}
\item
  Click the upper left menu, find then launch ZecWallet Lite
\stopitemize

\subsection[title={Windows 10/11 VM:},reference={windows-1011-vm}]

\startitemize
\item
  Load the Windows VM
\item
  Open a browser
\item
  Go to
  \useURL[url3064][https://www.zecwallet.co/\#download]\from[url3064]
\item
  Download and install the latest Windows installer
\item
  Launch ZecWallet Lite
\stopitemize

\subsection[title={Whonix Workstation 16
VM:},reference={whonix-workstation-16-vm}]

\startitemize
\item
  Load the Whonix Workstation VM
\item
  Open Tor Browser
\item
  Go to
  \useURL[url3065][https://packages.debian.org/buster/amd64/libindicator3-7/download]\from[url3065]
  and download from a listed mirror.
\item
  Go to
  \useURL[url3066][https://packages.debian.org/buster/amd64/libappindicator3-1/download]\from[url3066]
  and download from a listed mirror.
\item
  Go to the ZecWallet Lite Website to download the latest DEB package
  \useURL[url3067][https://www.zecwallet.co/\#download]\from[url3067]
  (change the download directory to /home/user for convenience)
\item
  Open a Terminal window and run the following commands (with the
  updated downloaded version if needed):

  \startitemize
  \item
    {\bf \type{**sudo dpkg -i ./libindicator3-7_0.5.0-4_amd64.deb**}}
  \item
    {\bf \type{**sudo dpkg -i ./libappindicator3-1_0.4.92-7_amd64.deb**}}
  \item
    {\bf \type{**sudo dpkg -i ./Zecwallet_Lite_1.7.5_amd64.deb**}}
  \stopitemize
\item
  Click the upper left menu and go to Development, then launch ZecWallet
  Lite
\stopitemize

\section[title={Appendix B1: Checklist of things to verify before
sharing
information:},reference={appendix-b1-checklist-of-things-to-verify-before-sharing-information}]

Here is a checklist of things to verify before sharing information to
anyone:

\startitemize
\item
  Check the files for any metadata: see \goto{Removing Metadata from
  Files/Documents/Pictures}[removing-metadata-from-filesdocumentspictures]
\item
  Check the files for anything malicious: see \goto{Appendix T: Checking
  files for malware}[appendix-t-checking-files-for-malware]
\item
  Check the files for any watermarking: see
  \goto{Watermarking}[watermarking]
\item
  Check any writing for possible forensics analysis: see \goto{Appendix
  A4: Counteracting Forensic
  Linguistics}[appendix-a4-counteracting-forensic-linguistics]
\item
  Have a look at this part of the Whonix documentation:
  \useURL[url3068][https://www.whonix.org/wiki/Surfing_Posting_Blogging\#Anonymous_File_Sharing]\from[url3068]
  \useURL[url3069][https://web.archive.org/web/https://www.whonix.org/wiki/Surfing_Posting_Blogging\#Anonymous_File_Sharing][][{[}Archive.org{]}]\from[url3069]
\item
  Carefully assess the potential consequences and risks of communicating
  any sensitive information for you and others (legally, ethically, and
  morally). Remember \ldots{} Do not be evil. Legal is not necessarily
  Good.
\stopitemize

{\bf After curating the files for anything you want to leave out.
Double-check and even Triple check them. Then you could consider sending
them to an organization such as a press organization or others.}

\section[title={Appendix B2: Monero
Disclaimer},reference={appendix-b2-monero-disclaimer}]

First, please read this small introduction video to Monero:
\useURL[url3070][https://www.youtube.com/watch?v=H33ggs7bh8M]\from[url3070]
\useURL[url3071][https://yewtu.be/watch?v=H33ggs7bh8M][][{[}Invidious{]}]\from[url3071]

The anonymity of Monero depends on its crypto algorithms. If you do use
Monero from a KYC Exchange. You can be almost certain that you are safe
today. But you might not be in the long-term future if Monero algorithms
are ever broken\footnote{Monero Research Lab, Evaluating cryptocurrency
  security and privacy in a post-quantum world
  \useURL[url3072][https://github.com/insight-decentralized-consensus-lab/post-quantum-monero/blob/master/writeups/technical_note.pdf]\from[url3072]
  \useURL[url3073][https://web.archive.org/web/https://github.com/insight-decentralized-consensus-lab/post-quantum-monero/blob/master/writeups/technical_note.pdf][][{[}Archive.org{]}]\from[url3073]}
(think Quantum Computing). Do keep in mind that KYC regulations might
force operators (such as Crypto Exchanges) to keep your financial
records for up to 10 years and that you, therefore, need Monero
algorithms to not be broken for the next 10 years as well.

You may want to watch this insightful video for more details:
\useURL[url3074][https://www.youtube.com/watch?v=j02QoI4ZlnU]\from[url3074]
\useURL[url3075][https://yewtu.be/watch?v=j02QoI4ZlnU][][{[}Invidious{]}]\from[url3075]

Also please consider reading:
\useURL[url3076][https://github.com/monero-project/monero/blob/master/docs/ANONYMITY_NETWORKS.md\#privacy-limitations][][Privacy
Limitations in Anonymity Networks with Monero]\from[url3076]
\useURL[url3077][https://web.archive.org/web/https://github.com/monero-project/monero/blob/master/docs/ANONYMITY_NETWORKS.md\#privacy-limitations][][{[}Archive.org{]}]\from[url3077]

{\bf Use these at your own risk, sending cash payments to providers
accepting cash (through the postal service) is always a better solution
if/when possible.}

\section[title={Appendix B3: Threat modeling
resources},reference={appendix-b3-threat-modeling-resources}]

Here are various threat modeling resources if you want to go deeper in
threat modeling.

We recommend the LINDDUN
\useURL[url3078][https://www.linddun.org]\from[url3078] threat modeling
method
\useURL[url3079][https://web.archive.org/web/https://www.linddun.org/][][{[}Archive.org{]}]\from[url3079]:
- Researchers created an online tool to help make your threat model at
\useURL[url3080][https://www.linddun.org/go]\from[url3080]
\useURL[url3081][https://web.archive.org/web/https://www.linddun.org/go][][{[}Archive.org{]}]\from[url3081].
- It is synergistic with STRIDE below. - It is focused on privacy but is
clearly perfectly suitable for anonymity. - It is accessible to all
skill levels including beginners (providing many tutorials) but also
suitable for highly skilled readers. - It is used in the making of the
Threat Modeling Manifesto:
\useURL[url3082][https://www.threatmodelingmanifesto.org/]\from[url3082]
\useURL[url3083][https://web.archive.org/web/https://www.threatmodelingmanifesto.org/][][{[}Archive.org{]}]\from[url3083]

LINDDUN threat modeling tutorials and resources: - {\bf We recommend the
following quick tutorial video from \quotation{The Hated One} YouTube
channel with the approval and review from LINDDUN designers:
\useURL[url3084][https://www.youtube.com/watch?v=6AXkJ3dot2s]\from[url3084]}
\useURL[url3085][https://yewtu.be/watch?v=6AXkJ3dot2s\%3E][][{[}Invidious{]}]\from[url3085]
to get started. - More resources for deeper understanding and usage:

\starttyping
- You can read more here: [A Lightweight Approach to Privacy Threat Modeling](https://sion.info/assets/pdf/publications/WuytsIWPE2020.pdf)
- Here are two videos from [Dr. K. Wuyts](https://www.semanticscholar.org/author/Kim-Wuyts/3190241) (imec-DistriNet, KU Leuven) explaining the process:
    - [Privacy & prejudice: on privacy threat modeling misconceptions](https://www.youtube.com/watch?v=zI4SFyq_Xjw) <sup>[[Invidious]](https://yewtu.be/watch?v=zI4SFyq_Xjw)</sup>
    - [Privacy Threat Model Using LINDDUN](https://www.youtube.com/watch?v=C9F8X1j9Zpg) <sup>[[Invidious]](https://yewtu.be/watch?v=C9F8X1j9Zpg>)</sup>
\stoptyping

{\externalfigure[./tex2pdf.-1a34188c73046814/6773ad6f3fb9b8aceee4e4a7c846cf566ccc05ae.png]}
(Illustration from
\useURL[url3086][https://lirias.kuleuven.be/retrieve/295669][][LINDDUN2015]\from[url3086])

Here are alternative resources and methodologies if LINDDUN doesn't suit
you:

\startitemize[packed]
\item
  Online Operations Security:
  \useURL[url3087][https://web.archive.org/web/20210711215728/https://github.com/devbret/online-OPSEC][][https://github.com/devbret/online-OPSEC]\from[url3087]
\item
  Microsoft's STRIDE:
  \useURL[url3088][https://en.wikipedia.org/wiki/STRIDE_\%28security\%29][][https://en.wikipedia.org/wiki/STRIDE_\letterpercent{}28security\letterpercent{}29]\from[url3088]
  \useURL[url3089][https://wikiless.org/wiki/STRIDE_\%28security\%29][][{[}Wikiless{]}]\from[url3089]
  \useURL[url3090][https://web.archive.org/web/https://en.wikipedia.org/wiki/STRIDE_\%28security\%29][][{[}Archive.org{]}]\from[url3090]
\item
  PASTA:
  \useURL[url3091][https://versprite.com/tag/pasta-threat-modeling/]\from[url3091]
  \useURL[url3092][https://web.archive.org/web/https://versprite.com/tag/pasta-threat-modeling/][][{[}Archive.org{]}]\from[url3092]
\item
  Threat Modeling: 12 Available Methods:
  \useURL[url3093][https://insights.sei.cmu.edu/blog/threat-modeling-12-available-methods]\from[url3093]
  \useURL[url3094][https://web.archive.org/web/https://insights.sei.cmu.edu/blog/threat-modeling-12-available-methods/][][{[}Archive.org{]}]\from[url3094]
\item
  Threat Modelling:
  \useURL[url3095][https://www.geeksforgeeks.org/threat-modelling/]\from[url3095]
  \useURL[url3096][https://web.archive.org/web/https://www.geeksforgeeks.org/threat-modelling/][][{[}Archive.org{]}]\from[url3096]
\stopitemize

\section[title={Appendix B4: Important notes about evil-maid and
tampering},reference={appendix-b4-important-notes-about-evil-maid-and-tampering}]

Your context needs to be taken into account.

Preventing an evil-maid attack attack or tampering might lead to bad
consequences. Your adversary might then resort to other means to obtain
the key.

On the other hand, allowing the attack but detecting it will not let
your adversary know that you are aware of the tampering. You can then
take steps safely to not reveal information and possibly leave.

See the \goto{Some last OPSEC thoughts}[some-last-opsec-thoughts]
section for some tips.

\section[title={Appendix B5: Types of CPU
attacks:},reference={appendix-b5-types-of-cpu-attacks}]

Select security issues plague many Intel CPUs, such as transient
execution attacks (formerly called speculative execution side channel
methods). Here you can check your CPU against affected micro-processors
with known bugs
\useURL[url3097][https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affected-consolidated-product-cpu-model.html]\from[url3097]
\useURL[url3098][https://web.archive.org/web/20220814123250/https://www.intel.com/content/www/us/en/developer/topic-technology/software-security-guidance/processors-affected-consolidated-product-cpu-model.html][][{[}Archive.org{]}]\from[url3098].

The Advanced Programmable Interrupt Controller (APIC) is an integrated
CPU component responsible for accepting, prioritizing, and dispatching
interrupts to logical processors (LPs). The APIC can operate in xAPIC
mode, also known as legacy mode, in which APIC configuration registers
are exposed through a memory-mapped I/O (MMIO) page.

Enter AEPIC (stylized ÆPIC), the first architectural CPU bug that leaks
stale data from the microarchitecture without using a side channel. It
architecturally leaks stale data incorrectly returned by reading
undefined APIC-register ranges. This novel method was revealed in the
paper {\em ÆPIC Leak: Architecturally Leaking Uninitialized Data from
the Microarchitecture} which you can read here:
\useURL[url3099][https://aepicleak.com/aepicleak.pdf][][Borrello2022AEPIC]\from[url3099]
\useURL[url3100][https://web.archive.org/web/20220812101719/https://aepicleak.com/aepicleak.pdf][][{[}Archive.org{]}]\from[url3100]

Model-specific registers (MSRs) and their configuration bits can also be
detected automatically on Intel and AMD CPUs:
\useURL[url3101][https://github.com/IAIK/msrevelio][][Kogler2022]\from[url3101]
\useURL[url3102][https://web.archive.org/web/20220814125349/https://andreaskogler.com/papers/msrtemplating.pdf][][{[}Archive.org{]}]\from[url3102].
This allows an attacker (with heavy knowledge of CPU functionality) to
view information about the MSRs, which are essentially special CPU
registers allowing interaction with low-level CPU features and advanced
configuration of the CPU's behavior. Modern x86 CPUs have hundreds of
these, which are usually documented very little and in increasingly less
verbosity over the past few years.

\subsubsubsection[title={Some other microarchitecture
bugs:},reference={some-other-microarchitecture-bugs}]

\startitemize[packed]
\item
  \useURL[url3103][https://platypusattack.com/][][PLATYPUS]\from[url3103]
  \useURL[url3104][https://web.archive.org/web/20220814132343/https://platypusattack.com/][][{[}Archive.org{]}]\from[url3104]
  - Software-based Power Side-Channel Attacks on x86, which shows how an
  unprivileged attacker can leak AES-NI keys from Intel SGX and the
  Linux kernel and break kernel address-space layout randomization
  (KASLR).
\item
  \useURL[url3105][https://www.nextplatform.com/2022/08/11/squip-side-channel-attack-rattles-amds-zen-cores/][][SQUIP]\from[url3105]
  \useURL[url3106][https://web.archive.org/web/20220812082548/https://www.nextplatform.com/2022/08/11/squip-side-channel-attack-rattles-amds-zen-cores/][][{[}Archive.org{]}]\from[url3106]
  - Scheduler Queue Usage via Interface Probing. All of AMD's Zen CPUs
  are vulnerable to a medium-severity flaw which can allow threat actors
  to run side-channel attacks.
\item
  \useURL[url3107][https://www.schneier.com/blog/archives/2022/06/hertzbleed-a-new-side-channel-attack.html][][Hertzbleed]\from[url3107]
  \useURL[url3108][https://web.archive.org/web/20220712000058/https://www.schneier.com/blog/archives/2022/06/hertzbleed-a-new-side-channel-attack.html][][{[}Archive.org{]}]\from[url3108]
  - Deducing cryptographic keys by analyzing power consumption has long
  been an attack, but it's not generally viable because measuring power
  consumption is often hard. This new attack measures power consumption
  by measuring time, making it easier to exploit.
\item
  \useURL[url3109][https://www.bleepingcomputer.com/news/security/new-retbleed-speculative-execution-cpu-attack-bypasses-retpoline-fixes/][][Retbleed]\from[url3109]
  \useURL[url3110][https://web.archive.org/web/20220804151557/https://www.bleepingcomputer.com/news/security/new-retbleed-speculative-execution-cpu-attack-bypasses-retpoline-fixes/][][{[}Archive.org{]}]\from[url3110]
  - Retbleed focuses on return instructions, which are part of the
  retpoline software mitigation against the speculative execution class
  of attacks that became known starting early 2018, with Spectre.
\stopitemize

\section[title={Appendix B6: Warning for using Orbot on
Android},reference={appendix-b6-warning-for-using-orbot-on-android}]

While this is often misunderstood, Orbot on Android does not make your
Tor-enabled apps go through Tor if you add them to the list. Orbot is
acting as a device-wide VPN (also known as a \quotation{transparent
proxy}). The list of apps using Orbot is a whitelist. This list will not
make some apps magically use Tor and unchecked ones use the clear-net.
This only ensures the device-wide VPN is using Tor to route traffic.
This means that Orbot can only control what app can access the VPN it
creates. Other apps will lose connectivity.

What is important to know is that, if you launch an app (or Android does
it automatically) while Orbot is not running, the app will just use the
normal network, without involving Orbot (with the exception of some apps
supporting a proxy Orbot).

Additionally, you should not be surprised by Tor Browser not working
when using Orbot in VPN mode, as the Tor design does not allow
\quotation{Tor over Tor} (you cannot re-enter the Tor network from a Tor
exit node).

This is explained rather well by Alexander Færøy, who is a core
developer at the Tor Project, in their
\useURL[url3111][https://gitlab.torproject.org/legacy/trac/-/wikis/doc/TorifyHOWTO\#tor-over-tor][][TorifyHOWTO:
Tor over Tor]\from[url3111].

\quotation{When using a transparent proxy, it is possible to start a Tor
session from the client as well as from the transparent proxy (read the
warning!), creating a}Tor over Tor" scenario. Doing so produces
undefined and potentially unsafe behavior. In theory, however, you can
get six hops instead of three, but it is not guaranteed that you'll get
three different hops - you could end up with the same hops, maybe in
reverse or mixed order. It is not clear if this is safe. It has never
been discussed. You can choose an entry/exit point, but you get the best
security that Tor can provide when you leave the route selection to Tor;
overriding the entry / exit nodes can mess up your anonymity in ways we
don't understand. Therefore Tor over Tor usage is highly discouraged."

And from
\useURL[url3112][https://tor.stackexchange.com/questions/427/is-running-tor-over-tor-dangerous][][a
post]\from[url3112] on the Tor Stack Exchange:

\quotation{The danger (beyond the performance hit) which keeps me from
running Tor over Tor has to do with timing and congestion measurements.
Adversaries watching your traffic at the exit(s) of your circuits have a
better chance of linking your Whonix activity with your {[}Tor Browser
Bundle{]} activity when those shared circuits slow down or drop packets
at the same time. This can happen without Tor over Tor when your
instances use a common upstream link. The linkage will be made tighter
and more explicit if you run the Whonix Tor traffic through your TBB
SOCKS5 Tor circuits. This tighter linkage raises the danger of
successful correlation.}

\section[title={Appendix B7: Caution about Session
Messenger},reference={appendix-b7-caution-about-session-messenger}]

Here are our reasons:

\startitemize[packed]
\item
  The company is based in Australia which has very {\em unfavorable}
  privacy laws.\footnote{Wikipedia, Privacy in Australian Law
    \useURL[url3113][https://en.wikipedia.org/wiki/Privacy_in_Australian_law]\from[url3113]
    \useURL[url3114][https://wikiless.org/wiki/Privacy_in_Australian_law][][{[}Wikiless{]}]\from[url3114]
    \useURL[url3115][https://web.archive.org/web/https://en.wikipedia.org/wiki/Privacy_in_Australian_law][][{[}Archive.org{]}]\from[url3115]}'
  \footnote{Parliament of Autralia, Surveillance Legislation Amendment
    (Identify and Disrupt) Bill 2021,
    \useURL[url3116][https://www.aph.gov.au/Parliamentary_Business/Bills_Legislation/Bills_Search_Results/Result?bId=r6623]\from[url3116]
    \useURL[url3117][https://web.archive.org/web\%5B/https://en.wikipedia.org/wiki/Privacy_in_Australian_law\%5D(https://www.aph.gov.au/Parliamentary_Business/Bills_Legislation/Bills_Search_Results/Result?bId=r6623)][][{[}Archive.org{]}]\from[url3117]}
\item
  They push their own cryptocurrency, Oxen, which creates a conflict of
  interest.
\item
  They use LokiNet, which requires Oxen to run nodes to route Session
  traffic, and it costs 15,000 \$OXEN or 3,750 \$OXEN for a shared
  node\footnote{Lokinet Documentation, Service Nodes,
    \useURL[url3118][https://loki.network/service-nodes/]\from[url3118]
    \useURL[url3119][https://web.archive.org/https://loki.network/service-nodes/][][{[}Archive.org{]}]\from[url3119]},
  which is about \lettertilde{}\$1,800 US dollars or \lettertilde{}\$500
  US dollars, respectively.
  \startitemize[packed]
  \item
    The price of running nodes essentially puts their network behind a
    paywall if you want to run a node, even just to contribute bandwidth
    to the network like you might with Tor. But there is a stakeless
    fork of Lokinet.
  \item
    Session's developers claim this to be an attempt to prevent
    \useURL[url3120][https://en.wikipedia.org/wiki/Sybil_attack][][sybil
    attacks]\from[url3120], but many have argued that this only
    encourages such attacks; by doing so, guaranteeing only governments
    and other well-funded organizations (the people these networks
    normally try to protect against) will ever have the financial
    resources to run nodes. (Eh, it's all pretty debatable. But \$OXEN
    is privacy-focused.)
  \stopitemize
\item
  They dropped critical security features of their protocol (perfect
  forward secrecy (PFS) and deniability)\footnote{GetSession.org, The
    Session Protocol: What's changing --- and why
    \useURL[url3121][https://getsession.org/session-protocol-explained/]\from[url3121]
    \useURL[url3122][https://web.archive.org/web/https://getsession.org/session-protocol-explained/][][{[}Archive.org{]}]\from[url3122]}
  in favor of long-term message keys and self-deleting cryptographic
  signatures, which provide much weaker security guarantees. \footnote{Session
    Documentation, Session protocol explained,
    \useURL[url3123][https://getsession.org/session-protocol-explained]\from[url3123]
    \useURL[url3124][https://web.archive.org/\%5Bhttps://loki.network/service-nodes/\%5D(https://getsession.org/session-protocol-explained)][][{[}Archive.org{]}]\from[url3124]}
  \startitemize[packed]
  \item
    This {\em might} not be as bad, if the nodes are free to run, but
    they're not.
  \stopitemize
\item
  Session has been audited\footnote{Quarkslab, Audit of Session Secure
    Messaging Application
    \useURL[url3125][https://blog.quarkslab.com/audit-of-session-secure-messaging-application.html]\from[url3125]
    \useURL[url3126][https://web.archive.org/web/https://blog.quarkslab.com/audit-of-session-secure-messaging-application.html][][{[}Archive.org{]}]\from[url3126]}
  with satisfactory results, but that audit does not mention these
  changes. We also currently lack sufficient information on LokiNet (the
  onion routing network used by Session) to endorse it. Session is still
  recommended by some, for example Techlore.\footnote{Techlore, Top 5
    BEST Messengers For Privacy
    \useURL[url3127][https://www.youtube.com/watch?v=aVwl892hqb4]\from[url3127]
    \useURL[url3128][https://yewtu.be/watch?v=aVwl892hqb4][][{[}Invidious{]}]\from[url3128]}
\item
  Their funding is completely opaque.
\stopitemize

In short, our opinion is that you may use Session Messenger on iOS due
to the absence of a better alternative (such as Briar). But if Briar or
another app (maybe Cwtch in the future) becomes available, we will
recommend going away from Session messenger as soon as possible. It is a
last resort.

\thinrule

\section[title={References:},reference={references}]

\stoptext
