214 Commits

Author SHA1 Message Date
nopeitsnothing 42d325df06 chore(ci): fix domain
New domain, who dis?
2026-06-03 18:38:29 -04:00
nopeitsnothing bf00272811 ci(web): use new domain (anonymousplanet.net)
This is the new domain.
2026-06-03 18:04:07 -04:00
github-actions[bot] ae1c293c6b docs(pgp): cross-signing pgp keys
Release cross-signed copies of PGP keys per Qubes-spec.
2026-06-03 17:56:31 -04:00
nopeitsnothing 45a8539a9e ci(GitHub-CI): draft only, also use version output
Set the draft to true and manually verify tags before release
Set our version tag so we use [vX.X.X] for cleaner release
2026-05-31 06:24:20 -04:00
nopeitsnothing cc5ad371a8 ci(darktea): change the repo URL for our tor mirror
The repo is defunct - please use the new one.
2026-05-31 03:42:30 -04:00
nopeitsnothing 84a7ccbdd9 fix: fix inline reference
The ref should be [link](#target)
2026-05-30 11:49:26 -04:00
nopeitsnothing 4eaca49a1c style(docs): fix recommended reading admonition
- docs/about/index.md: convert "Recommended Reading" to collapsible
  admonition
2026-05-30 11:01:51 -04:00
nopeitsnothing c5e5ae48e1 ci: refactoring some things and removing others
Lots of source additions here from long-standing notes over the past few
months. Squashed to make it neater than 219 commits.

- bump version to v1.2.4, Jun 2026
- expand Tor section with new "Traffic analysis and the limits of Tor" subsection
  guard node persistence, website fingerprinting, and a practical breakdown of
  when Tor is and is not sufficient
- expand hardware/firmware threat section with new subsections on firmware
  implants, USB attack hardware (O.MG Cable, Rubber Ducky), Evil Maid attacks,
  supply chain compromise, and a physical inspection checklist
- rename "Removing Metadata from Files/Documents/Pictures" section to "Metadata
  auditing"; add reference table of tools by file type; expand EXIF/XMP coverage,
  PDF metadata (font fingerprinting), and DOCX revision history with real-world
  source identification cases; restructure subsections
- add introductory paragraph to "Your Metadata" section
- add new appendix B8: operational security failure case studies with common
  threads
- add new appendix B9: post-quantum cryptography covering HNDL threat, NIST PQC
  standards, Signal's PQXDH, browser hybrid KEM, PGP limitations, VPN guidance,
  and Monero note
- add new appendix C1: stylometric analysis and writing style covering features
  measured, deployed tools, real cases (J.K. Rowling), effective and ineffective
  countermeasures including AI rewriting
- fix Dangerzone GitHub URL (firstlook -> freedomofpress)
- Remove duplicate footnote [^500]; minor wording fixes ("users" -> "people",
  passive voice tweaks, cross-reference updates)

- docs/index.md: both MSK and RSK GPG fingerprints in a collapsible tip admonition
  instead of bare text
- docs/about/index.md: convert Note admonitions to tip; reformat social media
  links into collapsible tip block
- docs/mirrors/index.md: simplify PDF download instructions to point to Releases;
- README.md: add star history chart
- mkdocs.yml: rename site to "The Hitchhiker's Guide"; update site description
  with hashtags

- sign.yml: remove commented-out workflow_run trigger and if: condition; add
  verify job that runs after sign, downloads artifacts, runs verify_pdf.py, and
  writes a full job summary with hashes; update artifact upload description; minor
  comment and whitespace cleanup
- release.yml, changelog.yml: replace decorative banner comments with single-line
  comments; fix trailing-space style in permissions block
- publish.yml: remove stale comment about nomaterial theme
- verify_pdf.py: full rewrite: replace single-hash-file lookup with flexible
  resolver that checks both bare hash files (.sha256, .b2sum) and two-column
  sumfiles (sha256sums.txt, b2sums.txt); add BLAKE2b verification alongside
  SHA-256; fix signature extension (.asc not .sig); improve CLI (--file,
  --export-dir flags; remove --all; default runs all checks); improve VirusTotal
  output with direct link; cleaner output formatting with ruled separators
2026-05-30 09:32:16 -04:00
nopeitsnothing d1817e9049 ci(pipeline): more meta changes to the pipeline
pre-commit install --install-hooks
2026-05-27 23:49:19 -04:00
nopeitsnothing ede2a53437 ci(pipeline): replace semver tagging with timestamp tags, drop tag_release.py
- release.yml now generates release-YYYYMMDD-<sha> tags automatically
- changelog.yml requires explicit version input, no auto-increment from tags
- sign.yml normalises extensions to .asc and .b2sum
- build-sign-release.yml neutered to a no-op with descriptive error
- tag_release.py archived to scripts/archived/
- update_changelog.py: version_from_changelog() is now primary version source
- .gitignore: fix export/ tracking to match actual file extensions
- docs/code/develop.md: fully rewritten to reflect new manual four-step flow
2026-05-27 23:49:19 -04:00
github-actions[bot] 91a77ed552 chore(export): update PDFs, hashes and signatures [skip ci] 2026-05-26 00:14:20 +00:00
nopeitsnothing 1c3cf75cf0 ci(github): Manual only
automatic triggering is disabled to prevent version mismatches
2026-05-25 19:34:04 -04:00
github-actions[bot] 121be79cd8 docs: update changelog [skip ci] 2026-05-24 12:03:20 +00:00
nopeitsnothing 3b550119a8 chore(lint): commitizen passes
Passed a couple times through the automatic linter to fix some markdown

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 07:58:11 -04:00
nopeitsnothing c19389ce49 change(changelog): v1.2.3
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 07:57:59 -04:00
nopeitsnothing aabcbac3d9 fix(develop): we use the Anonymous Planet RSK for releases
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 01:16:29 -04:00
nopeitsnothing e11a1eb1ce fix(release): sign using RSK instead
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 01:05:31 -04:00
nopeitsnothing df6cfbc94b ci(release): auto-increment using [vX.X.X]
Keep it clean, simple, only include the semver tag:

LATEST=$(git tag --list 'v*' --sort=-version:refname \
  | grep -E '^v[0-9]+\.[0-9]+\.[0-9]+

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 00:35:59 -04:00
github-actions[bot] 095bb0d8be docs: update changelog [skip ci] 2026-05-24 04:12:03 +00:00
nopeitsnothing 8b81081089 change(changelog): only use "vX.X.X" in version tags
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 00:10:06 -04:00
nopeitsnothing ccc97461c9 add(changelog): explain missing v1.2.2 tag
v1.2.2 contained broken Python and other additions that were not meant for release

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-24 00:07:25 -04:00
github-actions[bot] 8d74635d49 docs: update changelog [skip ci] 2026-05-24 03:59:47 +00:00
nopeitsnothing f71e5e2a28 fix(changelog): prevent history dump and filter noise commits
commits_since(): when no prior tag exists, scope to commits not yet on
origin/main via merge-base instead of walking the entire history. This
is what caused the v2.0.1 entry to contain every commit back to project
inception.

categorise(): replace the minimal skip pattern with a compiled NOISE
regex that also drops:
  - numbered series commits (3/8, 7/8, etc.)
  - vague WIP messages (Tweaking, Moving some, Still broken, pt2...)
  - one-word infrastructure fixes (Fix workflow, Fix path, Fix README)
  - oops commits (Forgot to, Revert "...")
  - joke messages (One job to rule them all)

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-23 23:55:34 -04:00
nopeitsnothing 3e28ec19ad fix(convert): actually save per-page PDFs for qpdf, not PNGs
We ignore this for the guide

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-23 23:21:14 -04:00
github-actions[bot] 192da89138 docs: update changelog [skip ci] 2026-05-24 03:05:09 +00:00
nopeitsnothing c658c354ee fix(convert): actually save per-page PDFs for qpdf, not PNGs
Previous filesystem edits to _save_images_as_pdf did not persist to
disk. Rewrote the function: quantize each dark-themed RGB image to
palette mode (256 colours, FASTOCTREE) so Pillow uses zlib/deflate
instead of JPEG (no libjpeg needed), save each as a single-page PDF,
then merge with qpdf. qpdf only accepts PDF inputs to --pages.

Also restores the orphaned footnote citations [^536] and [^537] in
docs/guide/index.md at the key disclosure law paragraph (line 8586).
Previous edit also did not persist to disk.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-23 22:57:26 -04:00
nopeitsnothing 343ad7f037 fix(convert): fail fast with helpful message if pdftoppm or qpdf missing
Previously the script crashed with a FileNotFoundError traceback when
system tools were absent. Now _check_dependencies() runs before any
work begins and prints install instructions for Linux/WSL, macOS, and
a pointer to develop.md for Windows.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-23 22:53:28 -04:00
nopeitsnothing 85ea1fee66 docs(develop): rewrite developer guide for current pipeline
Replaces the thin stub describing the old monolithic workflow with a
full developer reference covering:

- Prerequisites (Linux/macOS/Windows tabs)
- Repository layout
- Local build instructions for both PDFs and the MkDocs site
- Pipeline flow diagram (build → sign → release → changelog)
- What to check before pushing
- Every GitHub Secret: what it is, how to generate it, what breaks
  without it, and a summary table
- Step-by-step release process using tag_release.py
- Release verification instructions (GPG + hash checks)
- Troubleshooting section for every known CI failure mode

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-23 22:48:13 -04:00
nopeitsnothing cdc54d8b3b feat(scripts): add tag_release.py — guided signed release tagger
Interactive script for maintainers to create GPG-signed annotated tags.
Checks clean tree and branch, auto-increments version from latest tag,
pulls the message from the matching changelog entry, resolves the release
signing key (default: 9FA5436D0EE360985157382517ECA05F768DEDF6),
creates the tag, verifies the signature, then prints the push command.

Usage:
  python scripts/tag_release.py                   # auto version
  python scripts/tag_release.py --version v1.2.4
  python scripts/tag_release.py --dry-run         # preview only

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 17:46:37 -04:00
nopeitsnothing 823edbf4af fix(ci): resolve Pillow JPEG KeyError and cairosvg missing dep
convert.py: Pillow's PDF writer requires libjpeg for RGB images, which
is not available in the CI Python environment. Replace all Pillow PDF
saves with _save_images_as_pdf(), which writes pages as lossless PNGs
and assembles them with qpdf — no JPEG dependency needed.

build.yml: install mkdocs-material[imaging] instead of mkdocs-material
to satisfy the cairosvg dependency required by the social plugin.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 17:23:15 -04:00
nopeitsnothing f9d4c17ac6 8/8 chore(bump): v1.2.3
Some whitespace failed checks

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 17:23:15 -04:00
nopeitsnothing 4fd0413f4b 8/8 chore(scripts): minor cleanup to setup_workflow.py
Some whitespace failed checks

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:28:43 -04:00
nopeitsnothing bb005772af 7/8 docs(guide): bump version string to v1.2.3
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:07 -04:00
nopeitsnothing 77840d7d5c 6/8 chore: track .b2 hash files in .gitignore
Adds export/thgtoa.pdf.b2 and export/thgtoa-dark.pdf.b2 alongside
the existing .sha256 and .sig entries.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:07 -04:00
nopeitsnothing f02a15a07c 5/8 docs(changelog): rewrite for v1.2.3 — consolidate and clean up
Merges the v1.2.2 and v1.2.3 draft entries into a single clean
release. Removes duplicate bullets, internal implementation noise,
and half-finished notes. Switches admonitions to success/warning/bug
types for better visual scanning. Adds a plain-English summary line
per version.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:06 -04:00
nopeitsnothing c0aa6b8814 4/8 ci: add automated changelog update workflow
update_changelog.py reads git log since the last version tag,
categorises commits by conventional-commit prefix, and prepends a
new ## [vX.Y.Z] entry to docs/changelog/index.md. changelog.yml
runs after build.yml succeeds and commits the result back to main
with [skip ci]. Supports dry_run and manual_version dispatch inputs.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:06 -04:00
nopeitsnothing c6fd2891e0 3/8 ci: split monolithic workflow into build, sign, release stages
build.yml   — builds PDFs, uploads artifact, no secrets required
sign.yml    — hashes (SHA-256 + BLAKE2b) and GPG-signs, triggered via
              workflow_run after build or manually with a build_run_id
release.yml — downloads artifacts, uploads to VirusTotal, publishes
              tagged GitHub Release with all 12 assets attached

All three chain automatically on push to main. Each can be re-run or
triggered independently against any historical run.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:05 -04:00
nopeitsnothing 11f88859bf 2/8 refactor(pdf): wire dark mode through convert.py
Removes the dead Chromium dark mode path and BeautifulSoup CSS
injection code. Dark PDF is now produced by calling convert.py on the
finished light PDF. --both builds light then dark; --dark alone works
if the light PDF already exists.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:05 -04:00
nopeitsnothing 68b2687b6b 1/8 feat(pdf): add pixel-based dark mode PDF converter
Replaces the broken --prefers-color-scheme=dark Chromium flag with a
pixel-level converter. Rasterizes pages via pdftoppm, remaps colors to
the hacker theme (#1f1f31 bg, #e0e0e0 text, #5e8bde links), and
reassembles with qpdf. Processes in batches of 50 pages to avoid OOM
on large documents like the 414-page guide.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:27:04 -04:00
nopeitsnothing 3184181fa8 ci: refactor pipeline into independent build/sign/release/changelog workflows
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-05-22 16:20:57 -04:00
nopeitsnothing f3cb57230f Submit actual develop page
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-25 17:40:12 -04:00
nopeitsnothing 5e8057bb1f Fix copy information in website footer
And also move the develop workflow information to docs/code to cleanup
the guide documents, preventing accidental addition to the PDF.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-25 17:37:09 -04:00
nopeitsnothing ac3d2ceb37 Fix some broken YAML references
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-24 15:54:30 -04:00
nopeitsnothing 5eded0af38 Delete stale information
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-24 00:50:53 -04:00
nopeitsnothing 1bb0acc3e8 Sign local copy
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:50:31 -04:00
nopeitsnothing 25bc901ece Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:43:52 -04:00
nopeitsnothing 78a0a37ee8 Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:38:27 -04:00
nopeitsnothing aeb63cd7ba Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:34:47 -04:00
nopeitsnothing 64ddd18535 Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:29:54 -04:00
nopeitsnothing 7c9847e7d1 Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:23:15 -04:00
nopeitsnothing 1e8c90513f Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:21:00 -04:00
nopeitsnothing 2d09d7c01c Tweaking some of the build to function pt6
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:15:19 -04:00
nopeitsnothing 1938e031ee Tweaking some of the build to function pt5
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:13:28 -04:00
nopeitsnothing 8483d6336b Tweaking some of the build to function pt4
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:08:28 -04:00
nopeitsnothing 1c168691c5 Tweaking some of the build to function pt3
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 03:04:39 -04:00
nopeitsnothing ae50911375 Tweaking some of the build to function pt2
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 02:58:56 -04:00
nopeitsnothing df2dd61676 Tweaking some of the build to function
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 02:50:05 -04:00
nopeitsnothing 904fa24478 Moving some things around
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-20 02:45:06 -04:00
nopeitsnothing 28556c016c One job to rule them all
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:46:00 -04:00
nopeitsnothing 7bc3ed6bb6 Forgot to add flag
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:36:07 -04:00
nopeitsnothing 9a58ca1b7c The GPG bit fails, let's try again pt2
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:27:35 -04:00
nopeitsnothing 655e47fb8d The GPG bit fails, let's try again
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:25:57 -04:00
nopeitsnothing c0eb8aa6f3 Move out some scripts
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:17:39 -04:00
nopeitsnothing 90aa8b5442 Combined actions refactor
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-19 00:05:27 -04:00
nopeitsnothing 85912692d2 Combined actions into one file for less overhead
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-18 23:45:03 -04:00
nopeitsnothing 6305e1fbbb Overhaul the Hashing, scanning, release management
tool :) pt 2

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-18 22:05:52 -04:00
nopeitsnothing 0b71c3f49a Overhaul the Hashing, scanning, release management
...tool :)

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-18 22:03:40 -04:00
nopeitsnothing 468ff8f4a1 Refactor build action
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-17 13:44:04 -04:00
nopeitsnothing 11c2882ba5 Slightly refactor the workflow task
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 17:10:39 -04:00
nopeitsnothing 4c3ca7bfd7 Fix README
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 06:56:12 -04:00
nopeitsnothing 5636291c8a Build pipeline WIP
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 06:44:59 -04:00
nopeitsnothing 41ac52de0a Add: How to verify the authenticity of our files and check virus scans
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 06:03:23 -04:00
nopeitsnothing f100633632 Refactoring the VT job
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 05:58:25 -04:00
nopeitsnothing 062128732e Downgrade to working versions to fix broken jobs
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 05:55:35 -04:00
nopeitsnothing e0d16797ed Appendix A6: comment out deprecated ODT information
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 01:36:06 -04:00
nopeitsnothing d5659af3f7 Replace broken internal link with correct rel path
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 01:34:20 -04:00
nopeitsnothing a2dbdd10e9 Add nav in mkdocs.yml config
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-16 01:27:59 -04:00
nopeitsnothing cd00fa79fd Fix broken link to page
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-15 18:04:19 -04:00
nopeitsnothing c49cc87390 Update VT scan workflow
- Use v6.x for latest stable actions/checkout
- Use v6.x for latest stable Go version
- Add release line
- Scan on push using rules

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-14 04:50:59 -04:00
nopeitsnothing a14191bc7b Use VT v5.x
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-14 04:35:26 -04:00
nopeitsnothing a47e02939d Add VirusTotal scans for submitted PDFs
Submit locally crafted PDFs (currently, dark mode is broken and I'm
refactoring the CSS and HTML to fix this). First runs likely will fail
due to how runners work on GitHub Actions.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-14 04:21:12 -04:00
nopeitsnothing 52a38f5deb Fix path
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-14 03:34:45 -04:00
nopeitsnothing 206a6ff6b7 Refactor PDF build in CI, add dark mode PDF (pt 4)
Refactored GitHub Actions workflow **Build guide PDF**
(`scripts\build_guide_pdf.py`): now builds both light and dark mode PDFs
(`export/thgtoa.pdf` and `export/thgtoa-dark.pdf` respectively).

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-14 03:22:13 -04:00
nopeitsnothing 0e8de6ccc0 Fix PDF build in CI
Added workflow for building PDF. Progress.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-12 05:01:54 -04:00
nopeitsnothing d0dfec95db Fix PDF build in CI
Added workflow for building PDF. Progress.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-04-12 04:21:50 -04:00
nopeitsnothing 783f02f404 services: archive Matrix database and shutdown
We are temporarily disabling the Matrix homeserver at anonymousplanet
dot net due to the inability to keep up with infrastructure costs. This
is the last attempt we will make until we know the services will be more
reliable and we apologize for the inconvenience and instability. This is
a joint decision caused by late payments to our hosting provider and we
decided it best to simply leave things down and focus on other matters.
We never really wanted to make a big deal about servers and services on
them, it was mostly about community and chatting with like-minded
individuals. We'll be around on Matrix still, just reach out to us if
you have questions or comments.

(Matrix) nope: thehidden at tchncs dot de
(Matrix) daskolburn: daskolburn at thomcat dot rocks

Our email remains the same: contact at anonymousplanet dot org

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2026-01-18 21:52:46 -05:00
nopeitsnothing 6c8dba5d5f The Tor onion v3 address works
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-29 23:30:21 -05:00
nopeitsnothing ee32450516 Merge branch 'fix-broken-markdown-links'
5745d29b - amend previous commit, fixing another found markdown link
that was broken.
2025-12-29 22:37:34 -05:00
nopeitsnothing c7452ea796 Fix
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-29 22:02:53 -05:00
nopeitsnothing 3621967517 Revert "Fix some metadata"
This reverts commit 6448e2b786.
2025-12-29 21:50:00 -05:00
nopeitsnothing 88896a4f15 File endings
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-29 21:47:32 -05:00
nopeitsnothing 14de26d77d Missing parenthesis
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:45:28 -05:00
nopeitsnothing 3b430dc96a Extra parenthesis
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:43:57 -05:00
nopeitsnothing 565f3b8516 Creating your anonymous online identities
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:42:23 -05:00
nopeitsnothing fd60ef8460 Traffic anonymization
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:39:44 -05:00
nopeitsnothing fb5e1fca74 OPSEC thoughts
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:31:47 -05:00
nopeitsnothing 02764539f2 Watermarking
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:30:33 -05:00
nopeitsnothing 2e0b7a9716 Browser and device fingerprinting
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 01:28:29 -05:00
nopeitsnothing 239d1c632f Requirements refs
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:24:53 -05:00
nopeitsnothing c76ccd3e43 Local data leaks, forensics
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:21:07 -05:00
nopeitsnothing 37068765cc Whonix virtual machines
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:19:45 -05:00
nopeitsnothing 2c3dea5f41 Some more
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:18:16 -05:00
nopeitsnothing d623dda610 Adversarial considerations (threats)
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:15:40 -05:00
nopeitsnothing 8e386addb8 Some more
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:13:35 -05:00
nopeitsnothing 7b3599df63 Some Tails refs
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:09:11 -05:00
nopeitsnothing ac870b1497 Some additional measures against forensics refs
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:03:46 -05:00
nopeitsnothing 88cee5a3c0 Comparing versions ref
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-22 00:00:58 -05:00
nopeitsnothing 56678b3567 Persistent plausible deniability
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-21 23:57:18 -05:00
nopeitsnothing 3b1c5946ae All refs I have time for at the moment
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-21 22:03:26 -05:00
nopeitsnothing 6448e2b786 Fix some metadata
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-16 12:51:03 -05:00
nopeitsnothing 957da7e2af Update admin info in Matrix listing
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-12-03 16:48:02 -05:00
nopeitsnothing 6c4fd4a5c0 Fix some metadata
- remove some old references to "files" we don't host.
- the guide is not available in PDF in favor of a modern website.
- the website can be cloned and redistributed using various tools.

b34f4e1464e1f30fee960b50895b85ecb9e5eb6e2e33d97f1b3da730553176ad0248f437220dcb9628cd5a93ec809b9625e8e60eba4dab13efa002f7f4c6273a

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-30 09:06:23 -04:00
nopeitsnothing 2f5254a9fb Fix discussion channels
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-07 19:04:29 -04:00
nopeitsnothing 23f2acb788 Fix nope's Matrix pushed to only one repo
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-03 16:14:29 -04:00
nopeitsnothing 2bfa84de28 Fix Das' Matrix pushed to only one repo
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-03 16:10:10 -04:00
nopeitsnothing 9b98497ed3 chore(commit): remove commitizen requirement
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-03 16:05:58 -04:00
nopeitsnothing d212e86012 chore(crypto): remove than/nope signed canary
I will no longer include my canary here, please see:
https://itsnothing.net/crypto.txt and https://itsnothing.net/pgp.txt

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-10-03 15:43:29 -04:00
nopeitsnothing 621a6ae3d0 chore(pre-commit): upgrade pre-commit hooks 2025-10-03 15:39:16 -04:00
nopeitsnothing 377e8ecad7 docs(link): Wikiless.org --> Wikiless.com 2025-08-05 03:35:19 -04:00
nopeitsnothing 2c35d7ced8 gpg(than): minor updated information
Cryptographic, canary, etc.
2025-07-19 03:18:19 -04:00
nopeitsnothing 6caa68cca6 Still broken, try again 2025-05-26 04:59:48 -04:00
nopeitsnothing 516eeb7177 Fix workflow 2025-05-26 04:54:44 -04:00
nopeitsnothing 500c3baa7f Missing README.md 2025-05-26 04:50:20 -04:00
nopeitsnothing 7dd6442f20 Fix some references and tidy up language 2025-05-24 05:10:46 -04:00
nopeitsnothing 580a499841 docs(chore): cleanup old remnants 2025-03-22 11:30:13 -04:00
nopeitsnothing dc786a2bcd docs(chore): sample publishing config 2025-03-17 05:45:43 -04:00
nopeitsnothing 75568fc90f docs(chore): move CNAME to docs 2025-03-17 05:37:06 -04:00
nopeitsnothing 7cc0ba2a1b docs(chore): add CNAME 2025-03-17 05:08:01 -04:00
nopeitsnothing 1a934baede docs(chore): remove old site artifacts 2025-03-17 05:03:22 -04:00
nopeitsnothing dadade4cc1 docs(link): fix some absolute links 2025-03-16 05:16:33 -04:00
nopeitsnothing 041e2937aa docs(mkdocs): add Blackhat USA 2024 conference on Wi-Fi dangers 2025-03-15 11:47:03 -04:00
nopeitsnothing b8c265c929 docs(mkdocs): add Blackhat USA 2024 conference on Wi-Fi dangers 2025-03-15 11:45:58 -04:00
nopeitsnothing 11b6004bba docs(mkdocs): formatting and tooling upgrades to improve performance
BREAKING CHANGE: This version is NOT compatible with v1.1.x. It is a top-down rebuild of the guide in mkdocs-material.

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2025-03-15 11:45:35 -04:00
nopenothinghere ec6ff4f3e4 Update site
docs/about/index.md
  - Change logo
  - "Where do I start?"
  - "Notes on the journey"
  - "Disclaimer"
  - Update mirrors
  - Update Matrix section
  - Update donations
  - Recommended reading material

docs/guide/index.md
  - Change logo

docs/media/metadata.png
  - Add image for "we kill people over metadata"
    Thank you anarsec.guide!

docs/mirrors/index.md
  - Update mirrors
  - "Where to find the Hitchhiker's Guide"
  - Our official git mirrors

mkdocs.yml
  - Shorten site name (displays better in tab)
  - Add git authors plugin for later
  - Update bottom "social" row with all git repos
  - Add hardlink to domain for bottom of page to backlink
2023-08-14 23:11:28 -04:00
nopenothinghere 9bdff50575 Remove old site generation artifacts 2023-08-09 21:22:43 -04:00
nopenothinghere 6cb0883f83 Upload test site 2023-08-09 21:19:45 -04:00
nopeitsnothing 061d1a544a Update site favicon/logo (#328) 2023-08-09 20:57:28 -04:00
nopeitsnothing 2abc03f8bb AnonAddy rebranded to Addy.io (#327) 2023-08-09 18:01:16 -04:00
nopenothinghere 4162aa5f50 Add image 2023-08-09 16:43:10 -04:00
nopenothinghere bc4fea42a4 Sign recent changes 2023-08-09 14:08:34 -04:00
nopeitsnothing 57698e248d Detail new architectural CPU bugs
- Detail Downfall attacks
- Detail Inception & Phantom attacks
2023-08-09 13:26:09 -04:00
nopenothinghere c23dd99036 Sign recent changes 2023-08-09 12:02:01 -04:00
nopeitsnothing 1273f7acc8 Update VPN recommendations with audit links (#323) 2023-08-09 11:59:02 -04:00
doublepleat c73c3e446c Change "master" branch to "main" (#322) 2023-08-03 14:28:50 -04:00
nopeitsnothing 2639e35f09 Delete _site needed for local deploy
Cleanup metadata
2023-07-29 13:23:55 -04:00
nopenothinghere 76e6bea50c (meta) Update .gitignore 2023-07-29 13:21:07 -04:00
nopenothinghere 1c7ea25ef9 v1.1.9
Fix VT hashes
Sign recent changes
2023-07-29 13:00:17 -04:00
nopenothinghere 993987c6ae Fix one more file path
Sign changes
2023-07-29 12:16:41 -04:00
nopenothinghere 148f30a9c9 Fix file path on verify page
Sign changes
2023-07-29 12:05:46 -04:00
nopenothinghere 983bd463c1 (meta) Update workflows 2023-07-29 11:31:19 -04:00
nopenothinghere f0b66574d9 Update VT hashes
Sign recent changes
2023-07-29 11:29:13 -04:00
nopeitsnothing 2d331680c0 Merge remote-tracking branch 'origin/master' 2023-07-29 09:27:39 -04:00
doublepleat f248363832 Rename "TAILS" to "Tails" (#317)
* Fix typo

Change TAILS -> Tails

* Remove duplicate link

"Snapchat Transparency Report" is repeated
Archive link is different but just older version of the same

---------

Co-authored-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-29 09:25:56 -04:00
nopeitsnothing 7c5f9c5290 Fix Appendix K reference to itself (#320) 2023-07-29 09:19:16 -04:00
nopenothinghere cd0b6cd830 Fix Appendix K reference to itself 2023-07-29 09:15:48 -04:00
nopeitsnothing 00bd59da91 Update "Online Phone Number" section (#319)
- Adds silent.link

As always, this guide recommends using providers which accept Monero
(XMR) as payment, or, at the very least offer non-KYC transaction via
BTC - which is viable using this guide.

Do not trust Google results for "free SMS verification".
2023-07-28 15:04:46 -04:00
nopenothinghere 9f4ae5158e Missing parenthesis 2023-07-27 23:47:00 -04:00
nopeitsnothing 80fc552f0c Fixup Brave config settings (#318) 2023-07-27 23:39:35 -04:00
nopeitsnothing d65f9e65ea Add updated list of CPU attacks
Includes recent Zenbleed advisory
2023-07-24 22:14:43 +00:00
nopeitsnothing 01c303df2f v1.1.8
Sign recent changes

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-10 06:52:23 -04:00
nopeitsnothing 34a718db77 v1.1.8
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-10 06:14:33 -04:00
nopeitsnothing 034d7cf0eb Update version
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-10 05:42:50 -04:00
nopeitsnothing e7d22c6a78 .gitignore: Add tex2pdf
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-10 05:39:09 -04:00
nopeitsnothing a7bebf2cff Update VirusTotal hashes
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-07 23:05:44 -04:00
nopeitsnothing c43ab1cecd Onion is offline
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-07 22:59:10 -04:00
nopeitsnothing 15cb74186c Sign recent changes
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-07 22:35:40 -04:00
nopeitsnothing 7ecb5699da This should be moved to "Browser and Device Fingerprinting"
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-07-07 22:09:28 -04:00
nopeitsnothing f7c43db799 chore(ci/cd): add dependency check action (#315) 2023-07-03 07:30:01 +00:00
nopeitsnothing 87c70c37c8 Revert "Quantum resistance and good crypto algos (#305)" (#314)
This reverts commit 0ddd743812.
2023-06-24 19:09:17 +00:00
nopeitsnothing fc5fc7f74f chore(ci/cd): update ISSUE_TEMPLATE/* (#312) 2023-06-19 20:44:44 +00:00
nopeitsnothing 6f1362bd40 docs: update all old Tor onion urls to new onion (#310) 2023-06-19 14:52:23 +00:00
nopeitsnothing 5636b005bb chore(update): new VT scan links
Sign recent changes

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-17 14:28:04 -04:00
nopeitsnothing 3ae7548f82 update VT scan links
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-17 14:22:46 -04:00
nopeitsnothing 5f7d123736 docs(sign): update changelog for v1.1.8-pre.1
Sign recent changes

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-17 14:06:11 -04:00
nopeitsnothing 6211e69168 docs(sign): Backdate and prepare for v1.1.8-pre.1
Backdate and sign recent changes
Release notes

Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-17 13:43:51 -04:00
nopeitsnothing 506c941261 docs(sign): Sign recent changes
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-17 13:31:44 -04:00
nopeitsnothing 76ceebf1eb chore: lock old issues & pull requests (#302)
actions: close stale issues and prs
2023-06-17 17:19:22 +00:00
nopeitsnothing 0ddd743812 Quantum resistance and good crypto algos (#305) 2023-06-15 10:20:13 +00:00
nopeitsnothing 1213b96488 appendix d: remove trailing period in title (#303)
this period messes with the markdown refs and needs removing
2023-06-13 00:53:27 +00:00
nopeitsnothing 91e34eff56 Sign recent changes, update VT hashes
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-10 22:36:24 -04:00
nopeitsnothing 81d536b3c4 missing some inline images
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-10 22:23:10 -04:00
nopeitsnothing 917052c1d3 Sign recent changes
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-10 18:38:15 -04:00
nopeitsnothing 8b926f28c1 add new hashes for automatically scanned docs (#299)
Signed-off-by: nopeitsnothing <no@anonymousplanet.org>
2023-06-10 22:27:04 +00:00
nopeitsnothing 862e1fffd0 Update vt-scan.yml
YAML lint
2023-06-10 22:06:18 +00:00
nopeitsnothing df9bc408a1 Update vt-scan.yml
Final iteration
2023-06-10 22:03:49 +00:00
nopeitsnothing 7324c48e1c Update vt-scan.yml
Final iteration?
2023-06-10 21:56:35 +00:00
nopeitsnothing 3b9f9d8a7c Update vt-scan.yml 2023-06-10 21:48:09 +00:00
nopeitsnothing 518ca98896 Update vt-scan.yml 2023-06-10 21:44:54 +00:00
nopeitsnothing 7ad1772b59 Update vt-scan.yml 2023-06-10 21:40:26 +00:00
nopeitsnothing 7800b012a2 Integrate with VirusTotal
Automatically scan on release
2023-06-10 21:36:28 +00:00
Sharp-tailed Grouse 2dc4b592a7 fix quotation mark inside of code block
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-10 16:39:10 -04:00
nopeitsnothing 99bd1eb0cc Merge branch 'Anon-Planet:master' into master 2023-06-09 01:41:43 +00:00
nopeitsnothing df1d4e2bfc add AnarSec.guide to links (#297)
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-09 01:28:12 +00:00
Sharp-tailed Grouse 2c50757792 add AnarSec to links
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 21:19:07 -04:00
Sharp-tailed Grouse 6b7d5cc8e5 Sign recent changes
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 18:53:35 -04:00
Sharp-tailed Grouse 33160ccc38 update version: v1.1.6 -> v1.1.7
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 18:48:46 -04:00
Sharp-tailed Grouse a61b106e55 update changelog
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 18:47:55 -04:00
Sharp-tailed Grouse 3a0b52a99e Sign recent changes
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 17:46:07 -04:00
nopeitsnothing eb97bbfa78 shorten to one section and remove subsections (#293)
Currently, this section is comprised of several sets of instruction
It can be shorter and to the point, and doesn't need to be so wordy

Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-08 18:41:00 +00:00
Sharp-tailed Grouse 11b88c8349 Sign recent changes
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-07 03:07:27 -04:00
nopeitsnothing 7235fef327 fix missing inline image (#292)
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-06-07 06:43:02 +00:00
Unknown fdf5c49afd mirroring is now manual, sorry
I don't care, I might sometimes forget, but this action doesn't even work for automatic backups so...yeah, I'll do it manually (via `git push gitlab`).
2023-06-04 06:10:27 +00:00
Than Harrison c8bfb2ef7a Merge pull request #289 from sharp-tailed/master
Sign recent changes
2023-04-16 13:46:28 +00:00
Than Harrison 5b95f8adc0 Merge pull request #288 from sharp-tailed/quick-fixes
Guide: remove in memoriam for Lena per her wishes, add Lucas as NTH mod
2023-04-16 13:26:03 +00:00
Sharp-tailed Grouse b2df270c20 Sign recent changes
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-16 09:14:17 -04:00
Sharp-tailed Grouse 7f3985ce53 Some quick fixes
A few are simply typos and grammatical changes:

- Remove Lena's message (as per their request)
- Update chatroom rules for Matrix
- Fix various grammatical errors, spelling mistakes, etc.
- Add Lucas to mod status
- Remove in memoriam of Lena

Lena has requested (very explicitly, I might add) that we remove all of her
"stupid fucking messages". This is me doing that.

Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-16 08:50:54 -04:00
Than Harrison e2bc642b9a Merge pull request #284 from sharp-tailed/issue/283-open-collective
Add A.P. Open Collective link (#283)
2023-04-02 06:58:21 +00:00
Sharp-tailed Grouse 6495449c4c Add A.P. Open Collective link (#283)
Closes #283

Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-02 02:56:02 -04:00
Than Harrison c3237d9bfc Merge pull request #280 ("Final v1.1.6 updates")
Final v1.1.6 updates
2023-04-01 09:15:00 +00:00
Sharp-tailed Grouse b44f4a0db7 Sign recent changes
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-01 05:10:34 -04:00
Sharp-tailed Grouse 510330d061 Direct downloads now available yet again
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-01 04:58:40 -04:00
Sharp-tailed Grouse be66fef4fb Add note about note about Alex...geez
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-01 04:58:10 -04:00
Sharp-tailed Grouse ae06351a02 Add note regarding co-admin Alex's absence
Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-01 04:57:37 -04:00
Sharp-tailed Grouse b36c796b18 Delete lua file that isn't being used
Also add VT scans of PDF and ODT docs

Signed-off-by: Sharp-tailed Grouse <no@anonymousplanet.org>
2023-04-01 04:44:34 -04:00
346 changed files with 17848 additions and 18407 deletions
+9
View File
@@ -0,0 +1,9 @@
[tool.commitizen]
name = "cz_conventional_commits"
# enforce sign-off below as well
extra_arguments = ["-S", "--signoff"]
# harmless redundancy
[tool.commitizen.customize]
schema_pattern = '^(feat|add|fix|bugfix|revert|security|perf|refactor|change|chore|ci|docs|style|test|build)(\(.+\))?(!)?: .{1,72}(\n.*)*\nSigned-off-by: .+ <.+@.+>'
-13
View File
@@ -1,13 +0,0 @@
# These are supported funding model platforms
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
custom: https://anonymousplanet.org/donations.html
-34
View File
@@ -1,34 +0,0 @@
---
name: Suggestion
about: Suggest something for the guide
title: ""
labels: "T: doc"
assignees: ""
---
**Please describe the scope.**
<!-- A clear and concise description of what the problem is,
e.g. something that is outdated or needs additional info.
Limit this to about 60-70 chars. -->
**Please describe the solution.**
<!-- A clear and concise description of what you want to happen
or see changed. You're welcome to ask for changes regarding
anything as long as it is in scope. -->
**Please describe alternatives.**
<!-- A clear and concise description of any alternative solutions
or features you've considered. e.g. "This could instead be
replaced by <some other program> or <other link>." Make sure it's
in scope. -->
**Give any additional relevant context.**
<!-- Add any other links and related imagery or data here. We
will not entertain any sort of suggestion that doesn't fit in the
threat model described in the guide. It is aimed at protecting
journalists, whistleblowers and activists, and any suggestion will
require research on the behalf of the person writing the issue. -->
+85
View File
@@ -0,0 +1,85 @@
# 1. Push to main → 01-build.yml runs automatically → note the run ID
# 2. Manually trigger 02-sign.yml with that build run ID → note the sign run ID
# 3. Manually trigger 03-release.yml with: version=v1.2.5, sign_run_id=<id>
# 4. Manually trigger 04-changelog.yml with: version=v1.2.5
name: 📖 Build PDFs
on:
workflow_dispatch:
inputs:
build_mode:
description: 'PDF build mode'
required: true
default: 'both'
type: choice
options:
- light
- dark
- both
push:
branches:
- main
paths:
- "docs/**"
- "mkdocs.yml"
- "scripts/**"
- ".github/workflows/01-build.yml"
permissions:
contents: read
jobs:
build:
name: Build PDFs
runs-on: ubuntu-latest
outputs:
build_mode: ${{ steps.mode.outputs.build_mode }}
run_id: ${{ github.run_id }}
steps:
- name: 🛠️ Checkout
uses: actions/checkout@v4
- name: 🐍 Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: 📦 Install Python dependencies
run: pip install "mkdocs-material[imaging]" pillow numpy
- name: 🖼️ Install poppler and qpdf
run: |
sudo apt-get update -qq
sudo apt-get install -y poppler-utils qpdf
- name: Setup Chrome
uses: browser-actions/setup-chrome@v2
with:
chrome-version: 120
install-dependencies: true
install-chromedriver: true
- name: 🖨️ Resolve build mode
id: mode
run: |
MODE="${{ inputs.build_mode || 'both' }}"
echo "build_mode=$MODE" >> $GITHUB_OUTPUT
echo "Building in mode: $MODE"
- name: 🖨️ Build PDFs
env:
CI: true
run: python scripts/build_guide_pdf.py --${{ steps.mode.outputs.build_mode }}
- name: 📤 Upload PDF artifacts
uses: actions/upload-artifact@v4
with:
name: pdfs
path: |
export/thgtoa.pdf
export/thgtoa-dark.pdf
if-no-files-found: warn
retention-days: 90
compression-level: 0
+256
View File
@@ -0,0 +1,256 @@
name: 🔏 Sign PDFs
# Can be triggered:
# 1. Automatically after build.yml completes on main
# 2. Manually, pointing at a specific build run to pull PDFs from
on:
workflow_dispatch:
inputs:
build_run_id:
description: 'build.yml run ID to download PDFs from'
required: true
type: string
# Download artifacts from other runs + commit export/ files back to the repo
permissions:
actions: read
contents: write
jobs:
sign:
name: Hash & Sign PDFs
runs-on: ubuntu-latest
outputs:
light_sha256: ${{ steps.hashes.outputs.light_sha256 }}
dark_sha256: ${{ steps.hashes.outputs.dark_sha256 }}
light_b2: ${{ steps.hashes.outputs.light_b2 }}
dark_b2: ${{ steps.hashes.outputs.dark_b2 }}
steps:
- name: 🛠️ Checkout (for pgp/ key reference only)
uses: actions/checkout@v4
with:
sparse-checkout: pgp
- name: 📥 Download PDF artifacts
uses: actions/download-artifact@v4
with:
name: pdfs
path: export/
run-id: ${{ inputs.build_run_id }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: 📋 List downloaded files
run: ls -lh export/
# Hash - extensions match export/ conventions: .sha256, .b2sum
- name: "#️⃣ Hash PDFs"
id: hashes
run: |
cd export
for f in thgtoa.pdf thgtoa-dark.pdf; do
[ -f "$f" ] || continue
sha256sum "$f" | awk '{print $1}' > "${f}.sha256"
b2sum "$f" | awk '{print $1}' > "${f}.b2sum"
done
# Combined summary files
sha256sum thgtoa.pdf thgtoa-dark.pdf 2>/dev/null > sha256sums.txt || \
sha256sum thgtoa.pdf 2>/dev/null > sha256sums.txt
b2sum thgtoa.pdf thgtoa-dark.pdf 2>/dev/null > b2sums.txt || \
b2sum thgtoa.pdf 2>/dev/null > b2sums.txt
light_sha256=$(cat thgtoa.pdf.sha256 2>/dev/null || echo "")
dark_sha256=$(cat thgtoa-dark.pdf.sha256 2>/dev/null || echo "")
light_b2=$(cat thgtoa.pdf.b2sum 2>/dev/null || echo "")
dark_b2=$(cat thgtoa-dark.pdf.b2sum 2>/dev/null || echo "")
echo "light_sha256=$light_sha256" >> $GITHUB_OUTPUT
echo "dark_sha256=$dark_sha256" >> $GITHUB_OUTPUT
echo "light_b2=$light_b2" >> $GITHUB_OUTPUT
echo "dark_b2=$dark_b2" >> $GITHUB_OUTPUT
echo "--- SHA-256 ---"
cat sha256sums.txt
echo "--- BLAKE2b ---"
cat b2sums.txt
# GPG sign — detached ASCII-armor signatures use .asc extension
- name: 🔑 Install GPG
run: |
sudo apt-get update -qq
sudo apt-get install -y gnupg
- name: 🔏 Import GPG signing key
env:
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
run: |
echo "$GPG_PRIVATE_KEY" | gpg --batch --import
echo "$GPG_PASSPHRASE" | gpg --batch --yes --passphrase-fd 0 \
--pinentry-mode loopback --list-secret-keys
- name: 🔏 Sign PDFs and hash files
env:
GPG_PASSPHRASE: ${{ secrets.GPG_PASSPHRASE }}
run: |
sign() {
local file="$1"
[ -f "$file" ] || return 0
echo "$GPG_PASSPHRASE" | gpg --batch --yes --passphrase-fd 0 \
--pinentry-mode loopback \
--detach-sign --armor --output "${file}.asc" "$file"
echo "Signed: $file → ${file}.asc"
}
sign export/thgtoa.pdf
sign export/thgtoa-dark.pdf
sign export/sha256sums.txt
sign export/b2sums.txt
# Commit export/ back to main
- name: 📦 Checkout full repo for commit
uses: actions/checkout@v4
with:
ref: main
fetch-depth: 0
path: repo
- name: 📂 Copy export files into repo
run: cp -v export/* repo/export/
- name: 🔏 Configure SSH commit signing
run: |
mkdir -p ~/.ssh
echo "${{ secrets.ACTIONS_SSH_SIGNING_KEY }}" > ~/.ssh/signing_key
chmod 600 ~/.ssh/signing_key
git config --global gpg.format ssh
git config --global user.signingKey ~/.ssh/signing_key
git config --global commit.gpgSign true
git config --global user.name "github-actions[bot]"
git config --global user.email "github-actions[bot]@users.noreply.github.com"
# If no change in git diff, do nothing
- name: 📤 Commit and push export/ to main
working-directory: repo
run: |
git add export/
if git diff --cached --quiet; then
echo "Nothing to commit — export/ is already up to date."
else
git commit -S -m "chore(export): update PDFs, hashes and signatures [skip ci]"
git push origin main
fi
# Upload artifacts for 03-release.yml and verify job to consume
- name: 📤 Upload signatures artifact
uses: actions/upload-artifact@v4
with:
name: signatures
path: |
export/sha256sums.txt
export/b2sums.txt
export/thgtoa.pdf.sha256
export/thgtoa-dark.pdf.sha256
export/thgtoa.pdf.b2sum
export/thgtoa-dark.pdf.b2sum
export/thgtoa.pdf.asc
export/thgtoa-dark.pdf.asc
export/sha256sums.txt.asc
export/b2sums.txt.asc
if-no-files-found: error
retention-days: 90
compression-level: 0
- name: 📤 Upload signed PDFs artifact
uses: actions/upload-artifact@v4
with:
name: pdfs-signed
path: |
export/thgtoa.pdf
export/thgtoa-dark.pdf
if-no-files-found: warn
retention-days: 90
compression-level: 0
# Verify — runs after sign, surfaces results as a job summary
verify:
name: Verify hashes & signatures
runs-on: ubuntu-latest
needs: sign
# Always run so the summary is visible even if sign partially failed
if: always()
steps:
- name: 🛠️ Checkout scripts and public key
uses: actions/checkout@v4
with:
sparse-checkout: |
scripts/verify_pdf.py
pgp
- name: 📥 Download signatures artifact
uses: actions/download-artifact@v4
with:
name: signatures
path: export/
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: 📥 Download signed PDFs artifact
uses: actions/download-artifact@v4
with:
name: pdfs-signed
path: export/
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: 🔑 Install GPG and import public key
run: |
sudo apt-get update -qq
sudo apt-get install -y gnupg
gpg --import pgp/anonymousplanet-release.asc
- name: 🐍 Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: 🔍 Run verify_pdf.py
id: verify
run: |
# Capture output and exit code separately so we can write the
# summary regardless of whether verification passed or failed.
set +e
output=$(python scripts/verify_pdf.py --hashes --signatures --export-dir export 2>&1)
exit_code=$?
set -e
echo "exit_code=$exit_code" >> $GITHUB_OUTPUT
# ── Job summary ──────────────────────────────────────────────
{
if [ "$exit_code" -eq 0 ]; then
echo "## ✅ Verification passed"
else
echo "## ❌ Verification failed"
fi
echo ""
echo "**Run:** [\`${{ github.run_id }}\`](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}) &nbsp;·&nbsp; **Commit:** [\`${GITHUB_SHA::7}\`](${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }}) &nbsp;·&nbsp; **By:** \`${{ github.actor }}\`"
echo ""
echo "### Script output"
echo '```'
echo "$output"
echo '```'
echo ""
echo "### Hashes"
echo '```'
echo "── SHA-256 ──────────────────────────────────────────────────────"
cat export/sha256sums.txt 2>/dev/null || echo "(not found)"
echo ""
echo "── BLAKE2b ──────────────────────────────────────────────────────"
cat export/b2sums.txt 2>/dev/null || echo "(not found)"
echo '```'
} >> $GITHUB_STEP_SUMMARY
# Propagate failure so the job is marked red if verification fails
exit $exit_code
+191
View File
@@ -0,0 +1,191 @@
name: 🚀 Release
# Manual only — run this deliberately after build and sign are confirmed good.
# Provide the 02-sign.yml run ID to pull artifacts from. The release tag is
# automatically passed to the tag input. Exports "inputs.version" to $TAG.
on:
workflow_dispatch:
inputs:
sign_run_id:
description: '02-sign.yml run ID to pull signatures and PDFs from'
required: true
type: string
prerelease:
description: 'Mark as pre-release?'
required: false
default: false
type: boolean
version:
description: 'Version string to record (e.g. v1.2.4) — required'
required: true
type: string
permissions:
contents: write # create releases and tags
actions: read # download artifacts from other runs
jobs:
release:
name: Publish GitHub Release
runs-on: ubuntu-latest
steps:
- name: 🛠️ Checkout (for pgp/)
uses: actions/checkout@v4
with:
fetch-depth: 0
sparse-checkout: pgp
# Download artifacts from the specified sign run
- name: 📥 Download signatures artifact
uses: actions/download-artifact@v4
with:
name: signatures
path: release/
run-id: ${{ inputs.sign_run_id }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: 📥 Download signed PDFs artifact
uses: actions/download-artifact@v4
with:
name: pdfs-signed
path: release/
run-id: ${{ inputs.sign_run_id }}
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: 📋 List release assets
run: ls -lh release/
# Read hashes for the release body
- name: "#️⃣ Read hashes"
id: hashes
run: |
read_hash() { cat "release/$1" 2>/dev/null || echo "(not built)"; }
echo "light_sha256=$(read_hash thgtoa.pdf.sha256)" >> $GITHUB_OUTPUT
echo "dark_sha256=$(read_hash thgtoa-dark.pdf.sha256)" >> $GITHUB_OUTPUT
echo "light_b2=$(read_hash thgtoa.pdf.b2sum)" >> $GITHUB_OUTPUT
echo "dark_b2=$(read_hash thgtoa-dark.pdf.b2sum)" >> $GITHUB_OUTPUT
# VirusTotal
- name: 🦠 Upload PDFs to VirusTotal
id: vt
uses: crazy-max/ghaction-virustotal@v5
with:
vt_api_key: ${{ secrets.VT_API_KEY }}
files: |
release/thgtoa.pdf
release/thgtoa-dark.pdf
- name: 🔗 Build VT report URLs
id: vt_urls
run: |
light_hash=$(cat release/thgtoa.pdf.sha256 2>/dev/null || echo "")
dark_hash=$(cat release/thgtoa-dark.pdf.sha256 2>/dev/null || echo "")
if [ -n "$light_hash" ]; then
echo "light_vt=https://www.virustotal.com/gui/file/${light_hash}" >> $GITHUB_OUTPUT
else
echo "light_vt=(not built)" >> $GITHUB_OUTPUT
fi
if [ -n "$dark_hash" ]; then
echo "dark_vt=https://www.virustotal.com/gui/file/${dark_hash}" >> $GITHUB_OUTPUT
else
echo "dark_vt=(not built)" >> $GITHUB_OUTPUT
fi
# Generate release tag — timestamp + short SHA, always unique
- name: 🏷️ Generate release tag
id: tag
run: |
SHORT_SHA=$(echo "${{ github.sha }}" | cut -c1-7)
DATE=$(date -u +'%Y%m%d')
TAG="${{ inputs.version }}"
NAME="Release ${DATE} (${SHORT_SHA})"
echo "tag=$TAG" >> $GITHUB_OUTPUT
echo "name=$NAME" >> $GITHUB_OUTPUT
echo "Tag: $TAG"
# Create GitHub Release
- name: 🚀 Create GitHub Release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ steps.tag.outputs.tag }}
name: ${{ steps.tag.outputs.name }}
prerelease: ${{ inputs.prerelease || false }}
draft: true
fail_on_unmatched_files: false
body: |
## 📖 The Hitchhiker's Guide to Online Anonymity
Built from [`${{ inputs.version }}`](${{ github.server_url }}/${{ github.repository }}/releases/tag/${{ inputs.version }}).
---
### 📄 Release assets
| File | Description |
|------|-------------|
| `thgtoa.pdf` | Light mode PDF |
| `thgtoa-dark.pdf` | Dark mode PDF (hacker theme) |
| `sha256sums.txt` | SHA-256 checksums (both files) |
| `b2sums.txt` | BLAKE2b checksums (both files) |
| `thgtoa.pdf.sha256` | SHA-256 — light PDF |
| `thgtoa-dark.pdf.sha256` | SHA-256 — dark PDF |
| `thgtoa.pdf.b2sum` | BLAKE2b — light PDF |
| `thgtoa-dark.pdf.b2sum` | BLAKE2b — dark PDF |
| `*.asc` | GPG detached signatures (ASCII armor) |
---
### #️⃣ Hashes
**thgtoa.pdf** (light)
```text
SHA-256 ${{ steps.hashes.outputs.light_sha256 }}
BLAKE2b ${{ steps.hashes.outputs.light_b2 }}
```
**thgtoa-dark.pdf** (dark)
```text
SHA-256 ${{ steps.hashes.outputs.dark_sha256 }}
BLAKE2b ${{ steps.hashes.outputs.dark_b2 }}
```
---
### 🔏 Verifying GPG signatures
```bash
# Import the release signing key
gpg --import pgp/anonymousplanet-release.asc
# Verify PDFs
gpg --verify thgtoa.pdf.asc thgtoa.pdf
gpg --verify thgtoa-dark.pdf.asc thgtoa-dark.pdf
# Verify hash files
gpg --verify sha256sums.txt.asc sha256sums.txt
gpg --verify b2sums.txt.asc b2sums.txt
```
---
### 🦠 VirusTotal scans
| File | Report |
|------|--------|
| `thgtoa.pdf` | ${{ steps.vt_urls.outputs.light_vt }} |
| `thgtoa-dark.pdf` | ${{ steps.vt_urls.outputs.dark_vt }} |
files: |
release/thgtoa.pdf
release/thgtoa-dark.pdf
release/sha256sums.txt
release/b2sums.txt
release/thgtoa.pdf.sha256
release/thgtoa-dark.pdf.sha256
release/thgtoa.pdf.b2sum
release/thgtoa-dark.pdf.b2sum
release/thgtoa.pdf.asc
release/thgtoa-dark.pdf.asc
release/sha256sums.txt.asc
release/b2sums.txt.asc
+58
View File
@@ -0,0 +1,58 @@
name: 📝 Update Changelog
# Manual only — run after a release is published. Provide the exact version
# string (e.g. v1.2.4) to prepend to the changelog. Version is required to
# prevent silent auto-increment drift from release tags.
on:
workflow_dispatch:
inputs:
version:
description: 'Version string to record (e.g. v1.2.4) — required'
required: true
type: string
dry_run:
description: 'Dry run — print entry without committing'
required: false
default: false
type: boolean
permissions:
contents: write # commit changelog back to main
jobs:
changelog:
name: Prepend changelog entry
runs-on: ubuntu-latest
steps:
- name: 🛠️ Checkout
uses: actions/checkout@v4
with:
# Use a PAT so the commit triggers downstream workflows (GITHUB_TOKEN won't)
token: ${{ secrets.CHANGELOG_PAT || secrets.GITHUB_TOKEN }}
fetch-depth: 0
- name: 🐍 Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.13"
- name: 📝 Generate and prepend changelog entry
env:
DRY_RUN: ${{ inputs.dry_run || 'false' }}
MANUAL_VERSION: ${{ inputs.version }}
GH_SHA: ${{ github.sha }}
GH_REF: ${{ github.ref_name }}
TRIGGERING_SHA: ${{ github.event.workflow_run.head_sha || github.sha }}
run: python scripts/update_changelog.py
- name: 📤 Commit changelog
if: ${{ inputs.dry_run != 'true' }}
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add docs/changelog/index.md
# Only commit if there's actually a change
git diff --cached --quiet && echo "No changelog change to commit." || \
git commit -m "docs: update changelog [skip ci]"
git push
-30
View File
@@ -1,30 +0,0 @@
name: Push to Mirrors
on: [ push, delete, create ]
# Ensures that only one mirror task will run at a time.
concurrency:
group: git-mirror
jobs:
gitlab:
runs-on: ubuntu-latest
steps:
- name: Official GitLab Mirror
uses: wearerequired/git-mirror-action@v1
env:
SSH_PRIVATE_KEY: ${{ SSH_PRIVATE_KEY }}
with:
source-repo: "git@github.com:Anon-Planet/thgtoa.git"
destination-repo: "git@gitlab.com:anonymousplanetorg/thgtoa.git"
codeberg:
runs-on: ubuntu-latest
steps:
- name: Official Codeberg Mirror
uses: wearerequired/git-mirror-action@v1
env:
SSH_PRIVATE_KEY: ${{ SSH_PRIVATE_KEY }}
with:
source-repo: "git@github.com:Anon-Planet/thgtoa.git"
destination-repo: "git@codeberg.org:anonypla/thgtoa.git"
+19
View File
@@ -0,0 +1,19 @@
name: 🚀 Publish docs via GitHub Pages
on:
push:
branches:
- main
jobs:
build:
name: Publish the Hitchhiker's Guide
runs-on: ubuntu-latest
steps:
- name: Checkout main
uses: actions/checkout@v4
- name: Deploy docs
uses: mhausenblas/mkdocs-deploy-gh-pages@master
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CUSTOM_DOMAIN: anonymousplanet.net
+29 -4
View File
@@ -1,4 +1,29 @@
# Minimize global Ruby .gitignore # Visual Studio (Windows) solution metadata
Gemfile .vs/
Gemfile.lock .vscode/
_site/
# Python (MkDocs, scripts/build_guide_pdf.py)
__pycache__/
*.py[cod]
*$py.class
.venv/
venv/
env/
ENV/
.env
# Cache
.cache/
# MkDocs build output and local PDF export
site/
_site/
_site_test/
build/
# Export directory — track only hashes and signatures, not the PDFs themselves
export/thgtoa.pdf.sha256
export/thgtoa-dark.pdf.sha256
export/thgtoa.pdf.b2sum
export/thgtoa-dark.pdf.b2sum
export/*.asc
+182
View File
@@ -0,0 +1,182 @@
---
# Documentation:
# https://github.com/DavidAnson/markdownlint/blob/main/doc/Rules.md
# Default state for all rules
default: false
# MD001/heading-increment/header-increment - Heading levels should only increment by one level at a time
MD001: true
# MD002/first-heading-h1/first-header-h1 - First heading should be a top-level heading
MD002:
# Heading level
level: 1
# MD003/heading-style/header-style - Heading style
MD003:
# Heading style
# # ATX style H1
style: "atx"
# MD004/ul-style - Unordered list style
MD004:
# List style
style: "sublist"
# MD005/list-indent - Inconsistent indentation for list items at the same level
MD005: true
# MD006/ul-start-left - Consider starting bulleted lists at the beginning of the line
MD006: true
# MD007/ul-indent - Unordered list indentation
MD007:
# Spaces for indent
indent: 4
# Whether to indent the first level of the list
start_indented: false
# MD009/no-trailing-spaces - Trailing spaces
MD009:
# Spaces for line break
br_spaces: 2
# Allow spaces for empty lines in list items
list_item_empty_lines: false
# Include unnecessary breaks
strict: false
# MD010/no-hard-tabs - Hard tabs
MD010:
# Include code blocks
code_blocks: false
# Number of spaces for each hard tab
spaces_per_tab: 1
# MD011/no-reversed-links - Reversed link syntax
MD011: true
# MD012/no-multiple-blanks - Multiple consecutive blank lines
MD012:
# Consecutive blank lines
maximum: 1
# MD013/line-length - Line length
MD013: false
# MD014/commands-show-output - Dollar signs used before commands without showing output
# TODO: set false for now but we should consider enabling it
# https://cirosantilli.com/markdown-style-guide#dollar-signs-in-shell-code
MD014: false
# MD018/no-missing-space-atx - No space after hash on atx style heading
MD018: true
# MD019/no-multiple-space-atx - Multiple spaces after hash on atx style heading
MD019: true
# MD022/blanks-around-headings/blanks-around-headers - Headings should be surrounded by blank lines
MD022:
# Blank lines above heading
lines_above: 1
# Blank lines below heading
lines_below: 1
# MD023/heading-start-left/header-start-left - Headings must start at the beginning of the line
MD023: true
# MD025/single-title/single-h1 - Multiple top-level headings in the same document
# TODO: consider enabling it
# MD026/no-trailing-punctuation - Trailing punctuation in heading
MD026:
# Punctuation characters
punctuation: ".,;:!。,;:!"
# MD027/no-multiple-space-blockquote - Multiple spaces after blockquote symbol
MD027: true
# MD028/no-blanks-blockquote - Blank line inside blockquote
MD028: true
# MD029/ol-prefix - Ordered list item prefix
MD029:
# List style
style: "one_or_ordered"
# MD030/list-marker-space - Spaces after list markers
MD030:
# Spaces for single-line unordered list items
ul_single: 1
# Spaces for single-line ordered list items
ol_single: 1
# Spaces for multi-line unordered list items
ul_multi: 1
# Spaces for multi-line ordered list items
ol_multi: 1
# MD031/blanks-around-fences - Fenced code blocks should be surrounded by blank lines
MD031:
# Include list items
list_items: true
# MD033/no-inline-html - Inline HTML
# MD033:before uncomment, update docs/dasharo-tools-suite/documentation.md:18:1
# and docs/variants/msi_z690/initial-deployment.md:14:1
# Allowed elements
# allowed_elements: ["br", "center", "img", "script", "form", "input", "iframe"]
# MD034/no-bare-urls - Bare URL used
MD034: false
# MD035/hr-style - Horizontal rule style
MD035:
# Horizontal rule style
style: "---"
# MD037/no-space-in-emphasis - Spaces inside emphasis markers
MD037: true
# MD038/no-space-in-code - Spaces inside code span elements
# MD038: true - Rule temporarily disabled, it prevents new tabs from being
# formatted correctly - eg. docs/unified/novacustom/building-manual.md:46
# MD039/no-space-in-links - Spaces inside link text
MD039: true
# MD040/fenced-code-language - Fenced code blocks should have a language specified
MD040: true
# MD041/first-line-heading/first-line-h1 - First line in a file should be a top-level heading
MD041:
# Heading level
level: 1
# RegExp for matching title in front matter
front_matter_title: "^\\s*title\\s*[:=]"
# MD042/no-empty-links - No empty links
MD042: true
# MD046/code-block-style - Code block style
# MD046: Rule temporarily disabled, it prevents new tabs from being formatted
# correctly - eg. docs/unified/novacustom/overview.md:9
# Block style
# style: "fenced"
# MD047/single-trailing-newline - Files should end with a single newline character
MD047: true
# MD048/code-fence-style - Code fence style
MD048:
# Code fence style
style: "backtick"
# MD049/emphasis-style - Emphasis style should be consistent
MD049:
# Emphasis style should be consistent
style: "underscore"
# MD050/strong-style - Strong style should be consistent
MD050:
# Strong style should be consistent
style: "asterisk"
+30
View File
@@ -0,0 +1,30 @@
---
default_stages: [pre-commit]
default_install_hook_types: [pre-commit, commit-msg]
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v5.0.0
hooks:
- id: check-added-large-files
- id: check-merge-conflict
- id: check-symlinks
- id: end-of-file-fixer
- id: trailing-whitespace
- id: mixed-line-ending
args: [--fix=lf]
- repo: https://github.com/commitizen-tools/commitizen
rev: v4.8.3
hooks:
- id: commitizen
stages: [commit-msg]
- repo: local
hooks:
- id: require-commit-body
name: Avoid bad commits
language: script
entry: scripts/hooks/require-commit-body.sh
stages: [commit-msg]
-857
View File
@@ -1,857 +0,0 @@
v1.1.6 "The one where the documents all build."
The thing works now.
- Fixed the errors in pandoc (Tex2PDF) build
- Updated Tor .onion links
- Drank a boat load of espresso
v1.1.6-pre2
- I know, I know. Pre-release? Again??! v1.1.6 coming **very** soon.
- Update to $OXEN staking prices in Session section
- Small grammar/spelling fixes
- Fix image inline linking issue (stop using dual linking)
- Re-order hardlinks to make it easy to manage
v1.1.6-pre1
- Update on Tor Browser route due to major changes
- Tor Project has condensed their settings and it is no longer
necessary to manually configure bridges.
- Fix out of date options/settings for Tor on Android
- Small grammar/spelling fixes
- Removal and fix of some bad links
- Removal of AnonArchive (down)
- "How to spot if someone has been searching your stuff" fixed
- PDF and ODT builds disabled temporarily
- Update to social links for SEO plugin
- Link to Qubes tutorial for installing Windows VMs
- Added link to Arkenfox/user.js
- Remove unnecessary addons
v1.1.5
- Various spelling and grammar fixes
- Fixed several numbering errors in references
- Updated and fixed many broken URLs and saved them in the Wayback Machine
- Noted that https://mastodon.social/@anonypla is gone? added strike-through
- Adapted Qubes OS hardware requirements that were too low for a decent experience (RAM) according to their recommendation
- Put more incentive to use Tor Browser Safest mode as long as it does not break anything and switch to Safer if necessary and with precautions linked in an appendix
- Precision that Anti-Evil Maid on Qubes OS is only available on Intel CPUs
- Removed dead link of Centry Fork project
- Added Windows 11 support to the guide
- Partial additions of partial Qubes 4.1.X support but needs completion and testing (coming soon)
- Added link to official guide to upgrade from Qubes 4.0.X to 4.1.X (fresh or in-place)
- Fixed issue in Qubes OS Tor over VPN and VPN over Tor Networking cases that were just plain wrong
- Added guidance to run Windows 11 within Virtualbox + link to official guide from Oracle
- Added recommendation to install/use Safing PortMaster and added a link for some compatibility issues between Portmaster and some VPNs
- Removed Windows AME completely from the guide
- Replaced the "I would" by a "We would" since it is now a group effort and project
- Added a safest recommendation for more paranoid people in security level choices in Tor
v1.1.4-pre2
- Fixed some spelling/grammar
- Update to contributing guidelines
- Update of modern-crypto room rules
- Addition of chatroom-rules for the PSA community
- Update of verification guide (removed outdated content, fixed links, updates)
- Removal of CTemplar references since it was shutdown
- Fixed links to Proton services, references, onion URL, and archives
- Removal of BTC Wasabi recommedation in favor of Coinjoin alternative and wallet recommendations
- Re-phrasing of some confusing sentences
- LibRedirect extension is recommended again
- Fixed many links formatting
- Removal of removed content (dark pdf)
- Fixed links to ODT file
- Added recommendation to <https://z0ccc.github.io/extension-fingerprints/#> and <https://www.deviceinfo.me/>
- Removed links to non-existant mirrors
- Updated some outdated references(old project)
v1.1.4-pre1
- Addition of a legacy resources page for the old archives
- Changes in the about page to reflect the current situation
- Changes in the donation page to reflect the current situation
- Fix link to video "How to Hack a Turned-Off Computer, [..]"
- Misspelling and grammar mistakes fixed
- Fix formatting
- Garbage removal
- Inline linking fixes
- Privacyguides changed their URL scheme
- Almost all archive.org links fixed
- Annotated some links to make them more descriptive
- Got rid of dupes and empty refs
- Renew links for researchgate articles that were removed
- Removed mobile wikipedia links
- Fix a couple patent links & Rubber-hose cryptanalysis wiki
- Update PDF archivals so they are direct links but not downloaded
- Some scientific articles were removed or replaced
- IEEExplore, Spread-spectrum watermarking of audio signals
- ScienceDirect, Robust audio watermarking using perceptual masking
- SSRN, The Cryptocurrency Tumblers: Risks, Legality and Oversight
- Property of the People, Lawful Access to Secure Messaging Apps Data
- Arxiv url fixes
- s/grayshirt/grayshift/gi
- Trailing parentheses and commas removed
- Fixed all broken links
- Removed uMatrix from the guide (use uBlock Origin)
- Removal of https://xchange.me/ (abandoned)
- Removal of https://swap.lightning-network.ro/ (abandoned)
- Removal of https://privacyguides.org/providers/hosting/ (category removed from website)
- Added a warning about the privacy redirect extension stating it might be abandoned/unmaintained
- Added Anonymouth for linguistic antiforensics & related links
v1.1.3
- Added dedicated section about gait recognition and other long-range biometric techniques
- Updated PDF toolchain to allow embedding images in the PDF guide
v1.1.3-pre1
- Updating info to reflect the new identity being used to publich the guide
- Attempted to reconstruct toolchain to generate PDF and ODT guides
v1.1.2
- Removed SIM/Virtual Numbers providers not accepting at least XMR from the guide as there are sufficient providers accepting XMR
- Added some more free SMS providers in the guide
- Added links to Scribe.rip front-end to Medium.com for Medium.com links
- Considerable work was done in relation to the community aspects of this project and other related projects with the creation of a Matrix space (PSA) regrouping several efforts.
- Added link to <https://psa.anonymousplanet.org/> containing the community rules for our chatrooms on Matrix and Discord
- Added reference to <https://en.wikipedia.org/wiki/Sybil_attack> to the attacks against anonymized Tor traffic section
- Added reference to <https://arstechnica.com/information-technology/2014/07/active-attack-on-tor-network-tried-to-decloak-users-for-five-months/> in the attacks against anonymized Tor traffic section
- Added reference to <https://www.whonix.org/wiki/Anbox> for running Android Apps within the Whonix Workstation
- Added reference to <https://www.wikigain.com/install-macos-monterey-on-virtualbox/> to the macOS VM section
- Added reference to <https://blog.kraken.com/post/11905/your-fingerprint-can-be-hacked-for-5-heres-how/> to the biometrics section
- Added reference to <https://propertyofthepeople.org/document-detail/?doc-id=21114562>
- Added reference to <https://12ft.io/> in the introduction section
- Added reference to <https://www.bleepingcomputer.com/news/security/firmware-attack-can-drop-persistent-malware-in-hidden-ssd-area/> to the SSD wiping conclusions
- Added reference to <https://www.welivesecurity.com/wp-content/uploads/2021/12/eset_jumping_the_air_gap_wp.pdf> to the advanced targeted techniques section
- Small grammar/spelling fixes
- **Special thanks to the anonymous donator of 1 XMR**
v1.1.1
- Added reference to <https://www.youtube.com/watch?v=H33ggs7bh8M> as an intro video to Monero in the Monero Disclaimer section
- Added reference to <https://www.youtube.com/watch?v=qkJGF3syQy4> in the Guest VM Browser section about Brave
- Added reference to <https://www.vice.com/en/article/m7vqkv/how-fbi-gets-phone-data-att-tmobile-verizon> in the metadata/geo-location section
- Added reference to <https://fingerprintjs.com/blog/disabling-javascript-wont-stop-fingerprinting/> in several sections about JavaScript
- Added reference to <https://qua3k.github.io/ungoogled/> in the sections about Ungoogled-Chromium
- Re-Added Privacytools.io in the Links section
- Added a general disclaimer on the Links page about websites possibly using sponsorships, affiliate links, paid services, premium offers, and merchandising...
- Re-Added a Discord server to provide easier access to the community through <https://discord.gg/V8dmd9y7mt> with all the rooms bridged to Matrix rooms
- Changed the Matrix/Discord communities from being room focused (#anonymity) to a broader "Privacy Security Anonymity" space with a new #security focused room and an off-topic room.
- Creation of a Matrix space at ```#privacy-security-anonymity:matrix.org``` <https://matrix.to/#/#privacy-security-anonymity:matrix.org>
- Added an RSS bot to those rooms relaying some relevant security and anonymity news within those rooms.
- Started the test hosting of a small Synapse server with the domain anonymousplanet.org
v1.1.0
- Removed SHA-3 from recommended methods for password storage
- Added reference to <https://docs.securedrop.org/en/stable/source.html> in the section about communicating sensitive information to various organizations
- **Pending review** removal of privacytools.io from the guide after discovering sponsored recommendations within the lists on their website. Disclaimer added on the links page.
- Added reference to <https://web.archive.org/web/20181125133942/https://www.cs.drexel.edu/~sa499/papers/adversarial_stylometry.pdf> in the Stylometry section
- Added reference to <https://www.whonix.org/wiki/Surfing_Posting_Blogging#Stylometry> in the Stylometry section
- Added reference to <https://www.whonix.org/wiki/Surfing_Posting_Blogging#Anonymous_File_Sharing> in the appendix checklist of things to check before sharing information
- Added reference to <https://web.archive.org/web/20181125133942/https://www.cs.drexel.edu/~sa499/papers/adversarial_stylometry.pdf> in the section about countering stylometry using translators
- Changed the fonts of the website to improve readability (now using "Helvetica", "Calibri",and "Times New Roman")
- Removed some unnecessary information from the main page and the donations page to reduce their size
- Added a new Tor Exit node (Tor-Exit-05)
- Various spelling/grammar fixes
v1.0.9
- Re-Added Privacytools.io (along Privacyguides.org) as a good source of information and recommendations for various services/products/platforms within the guide.
- Added a Links page to the website with a small collection of recommended projects to visit.
- Changed the layout of the website to make the buttons a bit smaller
- Added reference to <https://medium.com/@c5/darkweb-vendors-and-the-basic-opsec-mistakes-they-keep-making-e54c285a488c> in the OPSEC section.
- Added reference to <https://kycnot.me/> which lists non-KYC cryptocurrencies exchange services
- Fixed some mistakes in the cryptocurrency swapping section
v1.0.8-hotfix
- Added a reference to <https://privacytests.org/> in the section about picking a browser in a guest VM
- Fixed not-working Nitter links by changing the Nitter instance to Nitter.net
- Added Minisign signatures for the PDFs and the ODT file
- **Hotfix** Added a reference to <https://qua3k.github.io/ungoogled/> and now strongly recommends **against** using Ungoogled-Chromium due to them lagging behind in security patches
v1.0.8
- Added a reference to <https://www.websiteplanet.com/blog/gethealth-leak-report/> in the Smart Devices section
- Added several academic references to the Tor Correlation Fingerprinting attack: <https://homes.esat.kuleuven.be/~mjuarezm/index_files/pdf/ccs18.pdf>, <https://www.internetsociety.org/sites/default/files/blogs-media/website-fingerprinting-internet-scale.pdf>, and <https://www.esat.kuleuven.be/cosic/publications/article-2456.pdf>
- Added a reference to <https://blog.torproject.org/new-low-cost-traffic-analysis-attacks-mitigations> in the same section
- Added an important precision/correction that Tor Correlation Fingerprinting attacks references papers were done in a limited closed-world testing environment and their efficiency in a real open-world situation has not been demonstrated other than theoretically
- Added two VPS hosting providers to the list of possible providers: <https://cryptoho.st/> and <https://www.privex.io/>
- Added reference to <https://about.fb.com/news/2021/10/end-to-end-encrypted-backups-on-whatsapp/> announcing e2ee backups on WhatsApp
v1.0.7
- Added reference to <https://www.scientificamerican.com/article/a-blank-wall-can-show-how-many-people-are-in-a-room-and-what-theyre-doing/> in the targeted techniques section
- Added reference to <https://www.scientificamerican.com/article/a-shiny-snack-bags-reflections-can-reconstruct-the-room-around-it/> in the targeted techniques section
- Added reference to <https://www.scientificamerican.com/article/footstep-sensors-identify-people-by-gait/> in the targeted techniques section
- Switched various links from PrivacyTools.io to PrivacyGuides.org that were forgotten in a previous update
- Added guidance to share information and files publicly including IPFS
- Added an appendix containing a checklist of things to verify before sharing any information or file (metadata...)
- Complete reworking of the Introduction and Prologue for better readability (there was way too much text in there)
- Added references to <https://thenewoil.org>, <https://privacyguides.org>, and the YouTube Techlore channel <https://www.youtube.com/c/Techlore> as bonus introduction reads on privacy and security
- Various grammar/spelling fixes
v1.0.6
- Added reference to <https://www.forbes.com/sites/thomasbrewster/2021/10/04/google-keyword-warrants-give-us-government-data-on-search-users> in the digital fingerprint section
- Added the fourth Tor Exit node in the donation page listing
- Added recommendation for considering Minisign (<https://jedisct1.github.io/minisign/>) as an alternative to PGP/GPG for file signing
- Added new archive of the guide on anonarchive.org
- Added Content-Security-Policy and X-XSS-Protection metatags to the HTML headers of the website
- Added reference to <https://latacora.singles/2019/07/16/the-pgp-problem.html> to justify the recommendation to use Minisign over PGP/GPG for signing
- Added <https://mobilesms.io> to the list of online phone number providers
- Added an "extra paranoid" route using Zcash in addition to Monero if you want even more safety than just relying on Monero alone for anonymous crypto transactions
- Added instructions to install a Zcash wallet on various OSes including the Whonix Workstation
- Refined the VPN over Tor sections with more information about using a self-hosted VPN/Proxy instead of a VPN provider
- Added guidance to upgrade Whonix from version 15 to version 16 on Qubes OS
- Added disclaimer about Windows 11 not being supported (yet) by the guide
- Some grammar/spelling fixes
- Various broken links fixes
v1.0.5
- Added reference to <https://www.theguardian.com/australia-news/2021/sep/11/inside-story-most-daring-surveillance-sting-in-history> in the smartphone warnings section
- Made main website available through IPv6
- Endnotes are now also supported on the repository MD file through <https://github.com/AnonymousPlanet/thgtoa/blob/main/guide.md> thanks to markdown update from GitHub. Previously, those were only working on the rendered Jekyll HTML
- Added link to <https://oksms.org> as an option if you cannot afford a dedicated number. More will be added soon.
- Added reference to <https://www.vice.com/en/article/93ypke/the-nsa-and-cia-use-ad-blockers-because-online-advertising-is-so-dangerous> as an argument to recommend adding uBlock to Tor Browser
- Added reference to <http://0pointer.net/blog/authenticated-boot-and-disk-encryption-on-linux.html> in the in-depth Linux hardening resources
- Added reference to <https://www.usenix.org/system/files/sec21-hoang.pdf> and <https://gfwatch.org/> in the section about hostile environments
- Added reference to <https://www.d-id.com/talkingheads/> in the creating new identities section
- Added reference to <https://twitter.com/SecurityJon/status/1445020885472235524> and <https://labs.f-secure.com/blog/sniff-there-leaks-my-bitlocker-key/> into the Windows Host OS section of the Whonix route
- Added reference to <https://www.wired.com/story/clearview-ai-new-tools-identify-you-photos/> in the biometrics section
- Added reference to <https://www.coindesk.com/business/2021/09/21/leaked-slides-show-how-chainalysis-flags-crypto-suspects-for-cops/> in the Cryptocurrencies Transaction section
- Added Cwtch <https://cwtch.im> to the messaging apps lists and recommendations
- Added a new fourth Tor Exit node using donations funds
- Some grammar/spelling fixes
v1.0.4
- Added reference to <https://therecord.media/malware-found-preinstalled-in-classic-push-button-phones-sold-in-russia/> in the burner phone section
- Added reference to <https://sourceforge.net/p/veracrypt/discussion/technical/thread/3961542951/> in the Veracrypt settings sections
- Changed Privacytools.io to Privacyguides.org after name change
- Added reference to <https://github.com/iperov/DeepFaceLive> in the Face recognition section
- Added reference to <https://www.news.ucsb.edu/2021/020392/dont-fidget-wifi-will-count-you> within the Wi-Fi around you section
- Matrix room change from #online-anonymity:matrix.org to #anonymity:matrix.org (old alias remains valid)
- Renewed hosting of Tor-Exit-01 for 1 year using funding from donations
v1.0.3
- Added reference to ProtonMail IP logging case <https://techcrunch.com/2021/09/06/protonmail-logged-ip-address-of-french-activist-after-order-by-swiss-authorities/>
- Added more information regarding Firefox hardening settings
- Added reference to <https://www.privateinternetaccess.com/blog/internet-freedom-around-the-world-in-50-stats/>
- Fixed several broken links
- Some grammar fixes
v1.0.2
- Minor layout fixes
- Added BLAKE2 hash to the list of hashes and clarified the hashes recommendations
- Added Twofish and Serpent to the recommended section in the File Encryption section
- Added reference to <https://justdeleteme.xyz/> and <https://inteltechniques.com/workbook.html> in the Removing traces section
- Added references to <https://techcrunch.com/2021/08/19/google-geofence-warrants/> and <https://www.techdirt.com/articles/20210821/10494847401/google-report-shows-reverse-warrants-are-swiftly-becoming-law-enforcements-go-to-investigative-tool.shtml> about the expanding trend of Geofencing warrants
- Added reference to <https://edwardsnowden.substack.com/p/all-seeing-i> in reference to Apple Privacy
- Added various references and information about setting up plausible deniability on Linux
- Added reference and information about setting up plausible deniability on Qubes OS
- Improved the section about countering linguistic forensics
- Updated Archive.today onion v2 address to v3
- Full (self) proofreading resulting in a large amount of spelling/grammar fixes and some shame about those
v1.0.1
- Added information about Monero Atomic Swap for converting from BTC to Monero instead of a swapping service (Monero Rules!)
- Added link to <https://www.useapassphrase.com/> in the password/passphrase guidelines appendix
- Added an appendix about Crypto Swapping services with some recommendations
- Added OnlyFans, Binance and Kraken to the list of tested online services
- Added Information on how to check if your Tor Exit node is in few or many blocklists to avoid issues when signing-up to various services
- Various spelling/grammar fixes
v1.0.0 Codename "Deal With It" (because it's not perfect, so deal with it)
- Various spelling/grammar fixes to the Countering Forensic Linguistics section
- Added guidance on how to compare older PDFs with newer releases using some online tools
- Added guidance on how to compare older ODTs with newer releases using LibreWriter
- Removed the attribution to Mark Twain from the quote in the final editorial notes
- Added some references in the list of threats to anonymity to the proposed mitigations in the guide
- Various grammar/spelling fixes
- Slightly changed the Light theme header color
v1.0.0-rc3-hotfix (unpublished release)
- Modified the Countering Forensic Linguistics section to remove the AutoCorrect usage recommendation in favor of "Search and Replace" to avoid unintended mistakes.
- Removed hybrid-analysis checks from the files as I think VirusTotal is enough
v1.0.0-rc3
- Added recommendation to use the Privacy Redirect extension on the Guest VMs browsers: <https://github.com/SimonBrazell/privacy-redirect>
- Added a section to emphasize some precautions when using a Browser with JavaScript enabled (including Tor Browser up to the "Safer Level") in every route
- Added more information and recommendations related to using Tor Browser at the "Safer" level.
- Added some more crypto disclaimers to avoid some services such as Mixers/Tumblers
- Re-ordered and re-linked many sections in a more logical way
- Removed some duplicate information in some sections
- Fixed some bad hyperlinks
- Added a release of the guide in the ODT format in addition to PDFs
v1.0.0-rc2
- Many grammar/spelling changes after some proofreading
v1.0.0-rc1 (Release Candidate 1)
- Small grammar/spelling fixes
- Small layout fixes
- Added some information about Safari in the Guest VM Browser selection/hardening sections
- Removed DREAD in the threat modeling references as it is deprecated
- Added link to <https://arstechnica.com/gadgets/2021/07/vpn-servers-seized-by-ukrainian-authorities-werent-encrypted/> in the No Logging but Logging anyway section of VPN providers
- Added Session Messenger as a possible "last resort" recommendation for iOS users because well there is no better option it seems despite their lack of PFS and Deniability
- Corrected the Session Messenger information as not using Tor Natively but using LokiNet Onion Routing natively
- Added a new Tor Browser route for the simplest, easiest way to access the web anonymously with appropriate security warnings
- Added additional information on attack mitigations on Bitlocker encrypted drives and reference to <https://dolosgroup.io/blog/2021/7/9/from-stolen-laptop-to-inside-the-company-network>
- Changed the recommendations about the state of your real phone while using a burner phone. You should never bring it with you and leave it on at home.
- Changed the route picking UML to only show options depending on your skills/resources/availability without considering threats/adversaries
- Expanded the threat modeling section (after the previous UML) with adversaries/threats and picking the adequate route in consequence
- Added reference to <https://arxiv.org/pdf/2107.04940.pdf> to the Bad Cryptography section
- Added reference to <https://edition.cnn.com/2021/07/23/tech/idme-unemployment-facial-recognition/index.html> to the Face Recognition section
- Lowered recommendation for RiseUP as a free mail service as they now require invitation for registration
- Added reference to <https://gitlab.com/FG-01/fg-01> as a possible mitigation to gait recognition systems as well as 2 more journalistic references to gait recognition
- Changed information about China/Russia "will block" ECH/eSNI to "might block" as it hasn't been verified/confirmed
- Added a whole appendix on Counteracting Forensic Linguistics (Writeprint) with your anonymous identities
- Added IPFS mirror of the whole website at <https://ipfs.anonymousplanet.org>
v0.9.9h
- Fixed bad and missing linking about browser selection and install in guest VMs setup sections
- Added ShutUp10 to the list of tools to improve Privacy on Windows 10
- Removed Windows AME from the recommendations/possibilities within guest VMs and advising against it instead
v0.9.9g
- Added Safing.io to the recommended VPN providers list (provisional)
- Many links fixed/updated/replaced/removed (dead links check on the whole document)
- Updated most of the .onion v2 addresses to .onion v3 addresses (except for Archive.today which is still on v2)
- Added .onion addresses to some publication links having a Tor mirror such as The Intercept
- Decided to switch the licensing of the project to add NonCommercial (cc-by-nc-4.0), prior releases are not affected
v0.9.9f
- Added section on search engines
- Added some more information on Brave source of adblocking
- Added separator between the text and the references to the online HTML version
- Added a ToC entry of the references to the online HTML version
- Added a bit more information on eventual physical destruction of HDDs and SSDs
v0.9.9e
- Added more information on why I recommend Brave within guests VMs and more information about other choices (mainly Firefox)
- Added Browser Hardening guidelines for Brave, Ungoogled-Chromium, Edge, and Firefox
v0.9.9d
- Changed wording from all incorrect "TAILS" instances to the correct "Tails"
- Changed wording from some incorrect "Qube OS" instances to the correct "Qubes OS"
- Added header to the PDFs with the title
- Added footer to the PDFs with the page numbers
- Changed the PDFs from having all references in the endnotes to having them in the footnotes of each page for better readability
v0.9.9c
- Improved the password/passphrase recommendation section
- Added a new Tor Exit node to the project <https://metrics.torproject.org/rs.html#details/F535BA067A776457083141688C7FE781B6DFB24E>
- Added ChaCha20 to the recommended file/disk encryption algorithms
- Various fixes in the README/Index
v0.9.9b
- Changed recommendation from Veracrypt to Bitlocker for Windows simple encryption route to prevent rubber-hose cryptanalysis
- Started running a Tor exit-node using project funds <https://metrics.torproject.org/rs.html#details/970814F267BF3DE9DFF2A0F8D4019F80C68AEE26>. I was only able to buy 3 months with the remaining funds. Please donate if you want this to continue.
- Changed slightly the donations requests so that they appear sooner including in the README/index.html and earlier in the guide in a lighter way
- Small grammar/spelling fixes
v0.9.9a
- Added Wikiless links to all Wikipedia articles for enhanced privacy (see <https://codeberg.org/orenom/wikiless>)
- Added message to inform users with JavaScript disabled that JavaScript is needed to toggle the themes on the website
- Removed underline of every hyperlink in the PDF format guide for better readability
- Added small section about helping others staying anonymous by running a Tor entry/relay node
- Shortened the Index/README to make it more readable and creating a sub-page with the safety/integrity/authentication information
- Added new hosting provider to the list (<https://1984.is>) and created a small appendix dedicated to recommended hosting providers
- Small grammar/spelling fixes
- Small fixes on the website layout (thanks to LiJu09 again)
v0.9.9
- Added toggle switch from dark to light theme for the website (requires Javascript) to improve general UX (very special thanks to LiJu09 for the great help)
- Fixed layout issues in the OSX section about Gatekeeper and XProtect
- Small fix in the malware section "higher level" changed to "lower level"
- Added reference to <https://www.inteltechniques.com/podcast.html> as an OSINT resource
- Added reference to <https://github.com/Qubes-Community/Contents/blob/master/docs/privacy/anonymizing-your-mac-address.md> in the Qubes Route section
- Various spelling/grammar fixes
v0.9.8
- Added reference to <https://github.com/insight-decentralized-consensus-lab/post-quantum-monero/blob/master/writeups/technical_note.pdf> in the Monero Disclaimer section
- Added cars in the Smart Devices section because obviously cars are also issues
- Added reference to <https://www.washingtonpost.com/technology/2019/12/17/what-does-your-car-know-about-you-we-hacked-chevy-find-out/> in the Smart Devices section
- Added more OSINT links: <https://osintframework.com/>, <https://recontool.org>, and <https://github.com/jivoi/awesome-osint>
- Added more information about crafting your legend for your anonymous identities in a consistent manner in the creating new identities section
- Added more OPSEC information and a reference to <https://www.youtube.com/watch?v=IqZZU9lFlF4>
- Added more references to Hardening Linux: <https://wiki.archlinux.org/title/Security> and <https://codeberg.org/SalamanderSecurity/PARSEC>
- Added references to AppArmor usage on Whonix VMs: <https://www.whonix.org/wiki/AppArmor>
- Added AppArmor/SELinux references within the Qubes OS section for Hardening VMs
- Added light introduction video references for hardening Linux/Windows/MacOS by the nice people at Techlore.
- Switched from Mastodon.online to Mastodon.social <https://mastodon.social/@anonypla>
- Fixed duplicate notations on GPG key
- Added Nitter links to Twitter links
- Various spelling/grammar fixes
v0.9.7b
- Added disclaimer about Monero usage and its long-term security relative to KYC regulations
- Added a bonus step within the BTC anonymizing section to reference Wasabi Wallet <https://wasabiwallet.io/> as an added efficient obfuscation measure
- Fixed layout issue at the very end of the guide (wrong tabulation)
- Added reference to RiseUp, Disroot, and Autistici for e-mail creation if you need an e-mail verification for creating for instance a ProtonMail or a MailFence account
- Removed <http://keys.gnupg.net/> from README because it's dead it seems
v0.9.7a
- Fixed wrong information about Session messenger and presence of Forward Secrecy and removed from recommendations due to that and the absence of deniability
- Added information about how to get/use BTC anonymously using Monero swapping
- Removed the THGTOA subreddit and the discord server (due to being mostly unused) to leave only the Matrix room and GitHub for discussions
- Made the README slightly more user-friendly
- Various spelling/grammar fixes
v0.9.7
- Fixed DNS section stating that ECH/eSNI leaks DNS when in fact it leaks only DN (Domain Name)
- Fixed DNS section stating that Firefox enforces OCSP stapling when it does not
- Added information in DNS section that Chromium based browsers do not rely on OCSP but CRLSets
- Fixed DNS illustration according to above fixes
- Renamed DNS section into DNS and IP and added information about IP correlation with various websites despite having encrypted DNS
- Added reference to <https://www.hackerfactor.com/blog/index.php?/archives/906-Tor-0day-The-Management-Vulnerability.html> in the anonymize Tor/VPN traffic section
- Added section about rootkits and backdoors in the malware in the malware, exploits and viruses section
- Added information about rootkits and firmware malware/backdoors
- Added Session in the messengers table and recommendations
- Added disclaimer to be extra cautious when using Tails (always use the last version and be extremely careful with bundled apps)
- Various spelling/grammar fixes
v0.9.6b
- Added emphasis and disclaimer on the threat model of this guide to clarify strongly that this guide is a DRAFT and may contain inaccuracies. This guide should not be considered a definitive truth.
- Added reference to the new Tutanota incident forcing them to monitor users
- Added reference to the RSA Conference 2020, When Cybercriminals with Good OpSec Attack <https://www.youtube.com/watch?v=zXmZnU2GdVk> video in the OPSEC section
v0.9.6a
- Added the USB Wi-Fi dongle option within the section to block Host OS network access while allowing VM network access
- Small spelling/grammar fixes
v0.9.6
- Added references to AnonAddy and Simplelogin e-mail aliasing services in the e-mail verification section of creating new online identities. Could be useful.
- Fixed the word SSD that was somehow spelled SDD all over the place (/shame)
- Added section to explain how to disable/prevent Internet Access on the Host OS while allowing VMs (specifically the Whonix Gateway) to access the internet in the Whonix Route
- Added further password recommendation based on Bruce Schneier recommendations <https://www.schneier.com/blog/archives/2014/03/choosing_secure_1.html>
- Removed telegram channel because is was unused and empty in favor of keeping only the Matrix channel (Primary) and the Discord channel (Secondary) but linked
- Added information about AMD PSP not having remote management capabilities unlike IME
- Various spelling/grammar fixes
v0.9.5
- Added some small disclaimer for Coreboot containing some proprietary software
- Added reference to Tempora surveillance program
- Small correction to the text relating to the Tutanota court order to avoid misunderstandings
- Added <https://censys.io/> and <https://www.zoomeye.org/> in addition to Shodan as IoT search engines options
- Removed SHA3 from the "avoid" list because it was incorrect
- Added more information in the Online Backups section
- Added more references to people caught due to their fingerprints appearing on shared pictures online in the biometrics section
- Added link to <https://stegcloak.surge.sh/> in the Hidden communications in plain sight section
- Various small spelling/grammar fixing
v0.9.4
- Added reference to <https://www.youtube.com/watch?v=FDZ39h-kCS8> in the Smart Devices around you section
- Added reference to TypingDNA (<https://www.typingdna.com/>) in the Online Behavior section
- Various small spelling fixes
- Added reference to SORM (Russia) along PRISM,XKEYSCORE...
- Added reference to smarttags (Apple AirTags, Samsung Smarttags, Tile...) in the smart devices section
- Added reference to Michael Bazzell's interesting OSINT Techniques book <https://inteltechniques.com/book1.html> in the bonus resources section
- Added reference to LibGen in the Introduction section in addition to Sci-Hub
- Fixed some ordering issues in the various sections that were re-ordered in previous updates
v0.9.3
- Added reference to <https://disable-gatekeeper.github.io/> and how to disable MacOS Gatekeeper on Big Sur
- Various grammar/spelling/layout fixes
- Transifex translations are now possible and open for any volunteer. Currently some are working on Russian/Ukrainian
- Added https://crypton.sh/ to the list of Monero accepting phone number providers
- Added reference to e-mail tracking in the Malware section
- Updated DNS section to reflect change from eSNI to ECH
- Added more OSINT video tutorials references from Bellingcat
- Added information about OCSP stapling in the DNS section
- Added illustration for comparing simple OCSP vs OCSP stapling
- Added illustration for comparing DNS encryption with and without ECH
v0.9.2a
- Multiple small punctuation fixes for better readability/translation of markdown format
- Small reference fix from BBC to The Guardian
v0.9.2
- Added reference to <https://mattw.io/youtube-geofind/location> for Video geolocation (YouTube)
- Added reference to <https://jakecreps.com/tag/osint-tools/> for various OSINT tools to try on yourself
- Fixed some bad links between a bunch of cross-references
- Some font color fixing in the dark themed PDF
- Added various attribution references for some external illustrations
- Various spelling/grammar fixes
- Re-organized some of the de-anonymization methods into grouped sub-sections for readability
v0.9.1
- Fixed Messaging table inaccuracies regarding metadata leaks and e2e for Element/Matrix and Zoom
- Added reference/guidance to Windows AME (<https://ameliorated.info/>)for use in guest VMs in place of Standard Windows 10 Pro
- Added Tor Mirror into the HTML header for discoverability
- Added reference to <https://arxiv.org/pdf/1906.05754.pdf> in the crypto transactions section
- Added references to NEC NeoFace and Clearview AI face recognition systems in the Face/Biometrics section
- Added FLoC opt-out and no-referrer policies into the HTML header
- Added reference to <https://arxiv.org/abs/1512.05616> in the Smart Devices warning section
- Added reference to <https://people.eecs.berkeley.edu/~dawnsong/papers/2012%20On%20the%20Feasibility%20of%20Internet-Scale%20Author%20Identification.pdf> in the digital fingerprint section
- Added reference to <https://www.gwern.net/Death-Note-Anonymity> in the Bonus section
- Fixed the Qubes OS section implying that Qubes OS is a Linux distribution when it is not
- Fixed LICENSE file missing on the website
- Various spelling/grammar fixes
v0.9.0
- Various layout, spelling, and grammar fixes
- Added new discussion channel on matrix ```#online-anonymity:matrix.org```
- Fixed connectivity methods table recommendations (VPN over Tor over VPN)
- Removed the shark meme because it was a bit much
- Added reference to the recent Spotify AI voice recognition patent <https://patents.justia.com/patent/10891948>
- Added more information and illustration about Tor Bridges and especially Meek bridges for users in hostile environments
- Added some more information about hash collisions
- Moved Requirements section up before Introduction
- Fixed DNS privacy illustration DoHoT that was spelled wrong
- Fixed Appendixes names that were out of order
- Added guidance to create a Proxy VPS in addition to a VPN VPS in the case of the now VPN/Proxy over Tor route
- Added more guidance to the "No Tor/VPN" option in a hostile environment
v0.8.9a
- Moved the donations section to the bottom of the guide
v0.8.9
- Added reference to <https://www.freehaven.net/anonbib/date.html> in the bonus resources section
- Many small fixes in the README
- Various small layout and grammar fixes
- Removed some parts about unblockable telemetry on MacOS Big Sur since this issue is no longer relevant it seems (and the telemetry can be blocked)
- Erratum: removed a quote from a user on his request
v0.8.8
- Fixed QR codes pointing to old addresses (but still valid)
- Added Keyoxide proofs to the README
- Various small fixes
- Huge thanks to the generous donator of 1 XMR
- Added proper native Tor mirror on <http://thgtoa7imksbg7rit4grgijl2ef6kc7b56bp56pmtta4g354lydlzkqd.onion>
v0.8.7
- Added reference to <https://www.scss.tcd.ie/doug.leith/apple_google.pdf> in the Smart Devices section and the OS Telemetry section.
- Moved/rephrased small introduction paragraph about Apple being among the best choices for Privacy in the OS and Telemetry section.
- Changed recommendation for Android VM to Androix-x86 CyanogenMod releases (14.1 r5 at the time of this writing)
- Several small spelling/grammar/layout fixes
- Added more explanation and illustration to the basic concept of Virtualization through a new Appendix
- Fixed illustration to mention Tor Stream Isolation possibilities
- Added a couple easter eggs because why not
v0.8.6
- Small layout fixes due to regex errors in pandoc conversion
- Small re-write of the instant messaging section that should make more sense now
- Changed the Briar information to reflect that they do now provide a Desktop option (with limited features) in addition to the Android client (emulator no longer strictly required)
- Updated the messaging table to include qTox (Tox) and Gajim (XMPP)
- Added reference to IDF famous tweet <https://twitter.com/idf/status/1125066395010699264>
- Added some references to Zero-Trust security models
- Added some references to Bad Opsec resources (<https://www.youtube.com/watch?v=eQ2OZKitRwc> and <https://www.youtube.com/watch?v=eQ2OZKitRwc>)
- Added several tools to check an IP or your own IP for various things in the "Your IP Address" section
- Added references to Hybrid Analysis for PDFs in addition to VirusTotal
- Added small additional illustration about threat models in the Introduction
- Added small additional illustration about Privacy vs Anonymity in the Introduction
- Removed the password protected PDF file from the project because it was never used and creaitng more compatibilities issues than necessary on my side
- Replaced donations QR codes with better ones
v0.8.5
- Changed donations QR codes with better ones with logos
- Many small fixes in grammar/spelling/layout
- Fixed many unnecessary escaping backslashes in front of special characters because pandoc does that
- Changed all lines containing code lines into inline code for better readability on the online version
- Migrated my Mastodon account to <https://mastodon.online/@anonypla> (old one redirected automatically)
- Fixed Tor over VPN section that was clearly missing emphasis on it being a viable option with good use cases
- Added more information in the Pick your Connectivity conclusions for a better overview
- Added section about Online file Syncing in the Online Backup section
- Added more information about messaging apps and a rather detailed table comparing their privacy/security/anonymity features
- Added disclaimer on reddit/discord to not discuss sensitive topics on those platforms
v0.8.4
- Added more information regarding Tor stream isolation and VPNs
- Added reference to <https://clickclickclick.click> in the Behavior analysis section
- Added project website mirror at <https://mirror.anonymousplanet.org> (hosted at GitLab)
- Added PDFs mirror at CryptPad.from
- Added reference to recently released list of data collected by Google Chrome
- Added reference to <https://www.bbc.com/news/technology-55573802> about Facial recognition defeating Face Masks in the biometrics section
- Added reference to Microsoft Azure Facial Cognitive Services Demo <https://azure.microsoft.com/en-us/services/cognitive-services/face/#demo> in the biometrics section
- Added reference to <https://www.bellingcat.com/news/2021/03/19/berlin-assassination-new-evidence-on-suspected-fsb-hitman-passed-to-german-investigators/> in the biometrics section
v0.8.3
- Added reference to <https://www.reflectacles.com/> glasses to interfere with CCTV surveillance.
- Added "enhance" example to the deblurring section
- Thanks to the anonymous donators. Their donations were spent to renew the domain for 3 more years (4 years total).
- Added information about risks/drawbacks related to Tor Stream Isolation when using VPN over Tor and for which use cases this method is recommended
- Added QR code for BTC legacy address in the donations section
v0.8.2
- Brighter fonts on some headers for better readability in dark mode
- Added reference to Sci-Hub in the introduction
- Added reference to deniable encryption on Linux and why it is not (yet) in the current routes
- Added reference to EncroChat and Sky ECC and warning against using such commercial devices/services for anonymity
- Small fixes in some URLs that were not properly changed after domain switch to anonymousplanet.org
- Added Bitcoin legacy address in addition to Segwit for donations
- Various spelling/grammar issues
v0.8.1
- Fixed many various small layout/spelling/grammar issues
- Fixed 2 shortened URLs (t.me and bit.ly) from the guide with correct destination URLs
- Added some references to "roll your own crypto" cases (Telegram, Zoom)
- Added reference to <https://www.vice.com/en/article/y3g97x/location-data-apps-drone-strikes-iowa-national-guard> in the Metadata/Geolocation section
- Removed archive.today PDF links to replace them with Archive.org links (because archive.today doesn't actually save PDFs)
- Added reference to a MAC tracking device <https://amsignalinc.com/data-sheets/Acyclica/Acyclica-RoadTrend-Product-Sheet.pdf> in the MAC address section
- Added disclaimer about not endorsing Cloudflare in the DNS section by mentioning them several times for technical reasons.
- Added references to Ungoogled-Chromium as an alternative to Tor Browser, Firefox and Brave.
- Added some results of Browser fingerprinting testing by the EFF coveryourtracks project.
- Added reference to Tor Browser security levels which I realized are not known by most people.
- Added Archive.org links to all documents/pages hyperlinks for people willing to avoid direct links to various websites
- Added Invidious (through yewtu.be invidious instance hosted in the NL) links to all YouTube videos hyperlinks for people wanting more privacy on Youtube videos
- Added reference to AMD PSP security analysis (and how it is not as bad as IME) in the "Your CPU" section <https://www.youtube.com/watch?v=bKH5nGLgi08&t=2834s> and the laptop recommendation section.
- Moved the Safe Browser part of Guest OSes into an Appendix to avoid duplication
- Added domain for project <https://anonymousplanet.org/> with donation funds
v0.8.0
- Changed mat2 VM appendix to debian testing (instead of stable) to get latest version of mat2
- Fixed mat2 VM appendix as the network was not working properly with the previous guidance
- Added reference to <https://en.wikipedia.org/wiki/Stylometry>
- Added references to various threat modeling methodologies (LUNDDUN, STRIFE, DREAD, PASTA) and some more in-depth resources for those willing to go further
- Added reference to <https://geekfeminism.wikia.org/wiki/Who_is_harmed_by_a_%22Real_Names%22_policy%3F> in the introduction
- Added reference to <https://gendersec.tacticaltech.org/wiki/index.php/Complete_manual#.22Real.22_names> in the creating identities section
- Multiple spelling/grammar fixes (including email into e-mail, and wifi into wi-fi)
- Added reference to <https://www.whonix.org/wiki/Data_Collection_Techniques> as bonus resources in de-anonymization methods
- Added reference to <https://www.whonix.org/wiki/DoNot> in the OPSEC section because it should be there
- Added reference to <https://www.whonix.org/wiki/Printing_and_Scanning> in the Printing Watermarking section
- Added reference to MIT project SeeingYellow <http://seeingyellow.com/> in the Printing Watermarking section
- Re-Wrote the malware section in the de-anonymization methods for better readability
- Added a specific Anti-Virus section in the Malware checks section with various references and arguments for some selective/limited use.
- Added reference to EFF security scenarios (<https://ssd.eff.org/en/module-categories/security-scenarios>) in the Introduction as examples of threat models for various people.
- Added new section with guidance for safe document publishing including various tool recommendations.
- Added a bit more guidance on malware removal for Pictures and Documents (PDFs, Office Documents...)
- Added Bad Cryptography in the de-anonymization threats with some examples
- Added several Behavior Analysis references in the renamed "Your Digital Fingerprint, Footprint, and Online Behavior" section
v0.7.9
- Updated GitHub Transparency report
- Added information to make animated online identities pictures for increased plausibility
- Added references to the list of services blocking Tor (<https://gitlab.torproject.org/legacy/trac/-/wikis/org/doc/ListOfServicesBlockingTor>)
- Added reference to <https://haveibeenpwned.com/> in the Identities maintenance section
- Added automatic archival and links of the project to Archive.today (through Archive.fo)
v0.7.8
- Various small layout/spelling/grammar fixes
- Added reference to Financial transactions and KYC in the real-name system section
- Added guidance to bypass some local restrictions on supervised computers safely (Appendix Q)
- Added guidance to run Tails without using Tor in a hostile environment
- Updated UML diagram of various routes to include a non-dedicated laptop
- Changed the whole document to a more formal/cleared grammar for better readability and compatibility with translation engines
- Changed table colors for better readability in dark modes (PDF and Online)
v0.7.7
- Added some acknowledgements to various added Projects
- Changed and improved the "Picking your route" section with the new option (Tails+Whonix)
- Added basic threat model illustration in the Introduction
- Added basic UML diagram to pick your route
- Added basic UML diagrams for picking your connectivity methods
- Added illustration of the Tails with HiddenVM option
- Rescaled some images that were way too big
- Added a whole bunch of platforms to the Online Identities section
- Added more references to German law in the Online Identities section
- Added a legend to the Online Identities overview table
v0.7.6
- Added reference to video visually explaining DNS
- Added some information related to the anonymous use of Bitcoin (vs Monero).
- Added reference to risks of using Crypto Tumblers and Mixers.
- Added reference to the Go Incognito project (<https://github.com/techlore-official/go-incognito>) and their informative YouTube videos for optional introduction before reading this guide.
- Added reference to ExifTool and ExifCleaner to Metadata removal sections for documents (because they also work on those formats)
- Added reference to picture recognition cloaking tools (Fawkes, Adverserial.io, LowKey) for preventing picture recognition algorithms from various platforms.
- Added detailed guidance to create Android guest VMs in the Whonix Route
- Added detailed guidance to create Android Qubes in the Qubes Route
- Added detailed guidance to use Persistent Plausible Deniability with Whonix within Tails (using HiddenVM project)
- Added Briar, GitLab to the online identities sections
- Added recommended Apps for sharing and communicating anonymously
- Added some acknowledgements to various added Projects
v0.7.5
- Added reference to <https://github.com/rshipp/awesome-malware-analysis> in the Malware analysis appendix
- Many small fixes in layout/spelling/grammar
- Added quotes around VirusTotal "privacy policy"
- Changed "Exploits in your Apps" to "Malware and Exploits in your Apps"
- Added references to State surveillance using "mandatory" apps such as WeChat.
- Added Wikipedia reference to <https://en.wikipedia.org/wiki/List_of_government_mass_surveillance_projects>
- Added guidance and references to check files for integrity and authenticity in the "Checking files for malware" section.
- Added emphasis on recommendation of using Tor Browser on the Host OS if Tor is available.
- Removed GPG signatures from markdown and text files to instead sign the whole release for convenience in Contribution workflow.
- Adapted the README to the new signatures
- Added Bitcoin donation option
v0.7.4
- Added reference to Whonix Live mode if you don't want persistence when shutting down the VMs as an added possible safety measure
- Added reference to harden Linux from <https://madaidans-insecurities.github.io/guides/linux-hardening.html>
- Added reference to Linux security issues from <https://madaidans-insecurities.github.io/linux.html>
- Added reference to PDF listing malware analysis tools <https://www.winitor.com/pdf/Malware-Analysis-Fundamentals-Files-Tools.pdf>
- Added reference to SANS Malware Analysis cheat sheet <https://digital-forensics.sans.org/media/analyzing-malicious-document-files.pdf>
- Added reference to the DoHoT project in the DNS section <https://github.com/alecmuffett/dohot> and updated the DNS illustration with this possibility
- Various spelling/grammar fixes
- Started adding some proper code blocks in the online Markdown version and will slowly adopt this in the whole guide in the future
- Fixed the Title missing a T
- Fixed a an hyperlink issue causing PDFID to detect an Automatic Action on guide.pdf
- Added warning in README concerning VirusTotal "privacy policy"
- Changed the PDFID warnings in the README to better explain their meaning for checking the PDFs published here
- Started fixing some accessibility issues in the guide (bad indents, empty spaces...)
- Fixed some bad links in cross-references
- Changed link from <https://panopticlick.eff.org/> to <https://coveryourtracks.eff.org/>
v0.7.3
- Added extra-security measures and references for sending cash to a VPN provider safely
- Added reference to sim-swapping in TOTP recommendation (and why SMS 2FA is bad)
- Added VirusTotal scans to all PDFs in the repository (while not endorsing/recommending VirusTotal at all for anything sensitive)
- Added Disclaimer about VirusTotal and their privacy policy in the guide and README
- Added QR code for Monero donations within the guide itself
- Added references in the Phishing section
- Added reference to <https://archive.flossmanuals.net/bypassing-censorship/index.html> in the Safe Access without Tor/VPN appendix
- Added guidance to communicate sensitive information safely to various organization (such as the press)
- Various grammar/spelling/layout fixes
v0.7.2
- Small layout/spelling/grammar fixes
- Added methods to check your surveillance and censorship levels on your Network using various resources.
- Changed site font to Helvetica
- Changed paragraph spacing on PDFs for better readability
v0.7.1
- Switched Github Pages Jekyll theme to Hacker because I prefer dark themes and this one doesn't rely on external fonts (Google).
- Added some references to voice deepfake tech in the Biometrics section
- Slightly changed the styles/colors of the PDFs
v0.7.0
- Added recommendations to consider leaving your smartphone at home online instead of just leaving it powered off or within a faraday bag.
- Added disclaimer stating that this guide is not sponsored by any commercial entity such as VPN providers
- Added specific sections and guidance about the various connectivity schemes (Tor, VPN over Tor, Tor Over VPN, VPN only, VPN over VPN and No Tor/VPN) with various references.
- Added guidance for using Tor Bridges with Tor Browser, Tails, Whonix and Qubes OS.
- Added last resort guidance for situations where Tor and/or VPN might not be possible options.
- Added guidance to use Long Range Antennas (Yagi type) for connecting to Public Wi-Fis from a safe distance
- Added new face recognition reference and gait recognition reference
- Added dark themed PDF
- Fixed error in Windows VM installation behind Whonix (missing Network setting)
- Various grammar/spelling fixes
v0.6.9
- Fixes/Adds to the online phone numbers sections. Recommendations based on identification requirements.
- Grammar/Spelling fixes.
v0.6.8
- Added security disclaimer concerning online phone providers using Monero.
v0.6.7
- Added guidance to possibly get online phone numbers using Monero (less recommended than a Physical Burner Phone with a Pre-paid SIM paid by cash).
- Adapted the various sections of the guide to reflect the above change.
v0.6.6
- Added reference to PornHub biometrics identification statement
- Small various spelling/layout fixes
- Added reference to Project Snowflake from Tor at the end of the guide if you wish you help others evade censorship
- Removed bad link to <https://www.blackbagtech.com/blog/2017/01/13/windows-10-jump-list-forensics/> (no archive available)
- Fixed bad inline reference
- As from now on, all new references in this guide will also be saved to the Internet Archive in case of article removal
- Added privacy vs anonymity in the Introduction
- Added more references to legitimate use of Anonymity from the Whonix and Tor projects
v0.6.5
- Passive automated mirror setup at GitLab <https://gitlab.com/AnonymousPlanet/thgtoa>
- Added Donation Monero address within the guide
- Added README/Guide mention to the GitLab mirror
- Changed CHANGELOG/LICENSE to CHANGELOG.md/LICENSE.md for GitHub Pages integration
- Updated GPG key with GitLab noreply e-mail for commit verification
- Added sitemap on GitHub Pages for SEO
- Added latest version, changelog and alternative pdf download links on Github Pages
- Verified site on Keybase
v0.6.4
- Improved HTML layouts for better readability and SEO
- Added redirect from <https://anonymousplanet.github.io> to the guide page
- Fixed README to to include hyperlinks
v0.6.3
- Added Table of Contents to PDF formats for better readability
- Fixed Appendixes/Sections references in the Markdown/HTML format
- Moved target-audience disclaimer from introduction to start of document
- Small layout fixes
v0.6.2
- Various little kramdown glitches fixed in HTML format
- Small fixes in spelling/grammar
- Added a small disclaimer in the introduction to let people know they can just read the first 26 pages to learn about the various threats without the need for practical applications
v0.6.1
- Various endnotes layout fixes
- Added OSINT YouTube Playlist reference
- Added reference to Whonix Live Host OS documentation (Similar to HiddenVM project)
- Added Twitter account (If it lasts, it was already suspended three times) <https://twitter.com/AnonyPla>. I'd be grateful if you share/like my tweet about this guide.
v0.6.0
- Various small spelling/grammar/layout fixes
- Added various references to Whonix Documentation (Hardening, Anti-Forensics, Anti-Evil Maid...)
- Added one Bellingcat reference to a recent case
- Added some Qubes OS references (Anti-Evil Maid and Hardening)
- Added new sub-route to the Tails route using the HiddenVM project <https://github.com/aforensics/HiddenVM> for providing Plausible Deniability within Tails
v0.5.9
- Added Monero accepting VPS providers as options for self-hosting cloud services and self-hosting VPN services
v0.5.8
- Added various references to Whonix documentation (anti-forensics, cold boot attack defenses, full disk encryption)
- Small various fixes
- Added reasoning for not supporting M1 Macs
- Added Acknowledgements at the end of the guide
- Added some resources to cold-boot, evil-maid defenses
v0.5.7
- Added methods to check Trim/ATA/NVMe operations on external SSDs
- Added methods to securely delete data on Qubes OS
v0.5.6
- Added donations/sponsorship support to this project using Monero
- Added reference to Law Enforcement surveillance capabilities (CCC video)
- Added guidance to remove some forensic traces from MacOS
- Added guidance to remove some forensic traces from Linux (log deletion and trim)
- Added variants for securely erasing SSD drives (only ATA drives were mentioned, added specific info for NVMe drives).
- Added lists of laptop brands supporting Secure Erase (SSD) from BIOS/UEFI.
- Changed recommendation from GParted to System Rescue instead due to GParted not providing nvme-cli by default.
- Fix: Multiple fixes in SDD/HDD sections (layout, duplicate data...)
- Fix: Multiple fixes in SDD secure erasing section and added various warnings for various methods
- Fix: Removed blkdiscard from wrong section and from MacOS as it's not supported on MacOS by Homebrew
- Various spelling/grammar fixes
v0.5.5
- Added passphrase recommendations (xkcd.com) in the OPSEC section and other sections.
v0.5.4
- Added more information and mitigation possibilities for CPU exploits on Virtual Machines (Spectre, Meltdown...)
v0.5.3
- Added guidance to hidden containers with plausible deniability in the backup section
- Added guidance for online backups
- Added information for VPN kill switches for Whonix, MacOS and Linux
v0.5.2
- Update of GPG key (added no-reply e-mail) to get verified commits
v0.5.1
- Small various fixes
v0.5.0
- Added Watermarking section in threats with pictures/videos/audios watermarks and printer watermarks within
v0.4.9
- Various small spelling/grammar/layout fixes
- Added some Laptop recommendations and more info about Libreboot and Coreboot
- Added various references to key disclosure laws
- Added guidance to create a mat2-web guest Debian VM for removing metadata from files conveniently
- Changed CHANGELOG to markdown for integrating into GitHub Pages
v0.4.8
- Various fixes on spelling/grammar and layout
- Various fixes on KeepassXC sections for Linux/MacOS
- Added hardening recommendations for Virtualbox
- Added VPN installation tutorials for Linux/MacOS
v0.4.7
- added Virtualbox workaround for Spectre/Meltdown issue mitigation
- added section and guidance to remove metadata from various files and tools
- added reference to Haven app for physical security in OPSEC section
- added recommendation to use systematic TOTP 2FA for online identities when possible
- added references to Deepfakes, facial recognition and fingerprint recognition in biometric threats
v0.4.6 Added link to Shodan to Smart Devices Section, Full rewrite of data wipe sections (especially SSDs)
v0.4.5 Improved SSD/HDD erasure section and some spelling fixes.
v0.4.x Added Backup methods, OPSec tricks, Malicious USB, Printers and various fixes
v0.3.x Added MacOS information and various fixes
v0.2.x Added Qubes OS information and various fixes
v0.1.x Initial Release (missing Qubes OS details and MacOS support)
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfhzQAKCRAoXmBIoSMh
sqY5AQCs+ZCRXQ7pZicBbcTL9vMgPzhZ6JfRo/G8gDm7DaH6tAD+LGgr/CPwZu/A
OAD359iFDRjnYm0dsY6afy5ToB22lQk=
=WFn/
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/mCtsLz0C8AL4OHqPmwd8DBbUm0TIRGI5INu2VCC8rheuaVBqJX/F+fgZ8E3gSNOo0+jviz+qAoMoVF3weqt/AQ=
trusted comment: timestamp:1680335310 file:CHANGELOG.md hashed
3Hm06tbf5yvdy38TdnGZU6Rzxj89Fzaa9XO/e0g69bvKJNpcQ21U0yNyuv/9V6Lal8/q4tOfUSNtWpSko4RrAA==
+1 -1
View File
@@ -1 +1 @@
anonymousplanet.org anonymousplanet.net
-5
View File
@@ -1,5 +0,0 @@
# Contributor Code of Conduct
This project adheres to No Code of Conduct. We are all adults. We accept anyone's contributions. Nothing else matters.
For more information please visit the [No Code of Conduct](https://github.com/domgetter/NCoC) homepage.
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfhzgAKCRAoXmBIoSMh
sul0AP96LS75EXGqeCq5ic2YIG5A+emICYi8qCePtz+OR3LwBAD+O6OqfGYDhjwB
beUmiF1IveuoP+fVsaavvLqaUifnBwM=
=926r
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/gD5vCC8/YFdUVxQVvGfr4Far0rKgyq8NvpyWOyv7OniMR0H1cROxjbaNwDGKi40AIpnb4DxlLhGLB9vXxAk4Qo=
trusted comment: timestamp:1680335312 file:CODE_OF_CONDUCT.md hashed
8ZCh3j5OFCt1TrJjRqhMaw35omLWqEkt9iPoiRamKLSZ7bHQtjxYLUkVzzywci3rqYSH5J/foTuuBGPBZOU2BQ==
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh0AAKCRAoXmBIoSMh
sqsRAP9FYsTS4eOVpTuhk90U8gV/5J+LguFtsPO3z2IQcVKgPgEAkqYbyrzgu0Ls
XFAS01F8e1by+2qZoBsu8nuEnih8NAo=
=Kdf7
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/tV9Fy2nTvAb4k8umjfk+y6Bpi6z4nOEGBCAm1VfwbmjJF5Kpe9aU0bZtncMMN7vZXi+kYrvUuVG18ZECx8pRg4=
trusted comment: timestamp:1680335313 file:CONTRIBUTING.md hashed
DA9AId6tgXMrNVoyrrscYw+WG/BvVEdmVaKJKbcRV3z7yM7H0FE9wx//x+m9VgaDyq0mgDkd44Fvjt7TxgG/CQ==
-31
View File
@@ -1,31 +0,0 @@
PGP/GPG key ID `7DFFD7471FB76E2A8ABBBCDDD769B3749E933B8A` is no longer active
PGP/GPG key ID `42FF35DB9DE7C088AB0FD4A70C216A52F6DF4920` is no longer active
This project now uses separate master, release signing, and email keys.
Current master key fingerprint: `9EA98278639F1CD853E096CBFF94507587A6A9B9`
Current release key fingerprint: `83A6CF9EF57AC25B5C7F5D29285E6048A12321B2`
Current email key fingerprint: `B6D1757632A280F99F2DCBFDB9AB9D93AFF05B9C`
The email and release keys should be signed by the master key.
The master key takes precedence over all other project keys.
------------------------------------------------------------------------------------
Minisign key
```
untrusted comment: minisign public key 902835EC74825934
RWQ0WYJ07DUokK8V/6LNJ9bf/O/QM9k4FSlDmzgEeXm7lEpw3ecYjXDM
```
is no longer active
Use
```
untrusted comment: minisign public key FE6A09A3AF18F7A7
RWSn9xivowlq/ihAzclDBxhCxbYz4bLkC8E645lHgSUlQNlDvoTxO5Fv
```
instead
Files signed using this key pair can be verified with the following command:
```
minisign -Vm <file> -P RWSn9xivowlq/ihAzclDBxhCxbYz4bLkC8E645lHgSUlQNlDvoTxO5Fv
```
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh0QAKCRAoXmBIoSMh
sln0AP92N6DWLW1Le7UPMtdxY7+qITMdFoYXgn9gj4J2jBRLQAEAhP37VhQIdVXg
B9yFEOEQw3kIls55JlRkQ3hrPxPVfw0=
=VTt0
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/gEdIFDRsGwF2xuLoX64+PcxRZHg0mT+M3d5ZBNe4iv6jUdYpoFpY6Ba2Ny2jTxhLq8lbu4IsvRsBxMSvCdipQE=
trusted comment: timestamp:1680335315 file:KEY_ROTATION.md hashed
mpcXR7nKMEl8oBGdZM+F35/fRIpZoaBMxK8Z1PvaxXGpnZW2K7MQZvHeJs6BqJmodABPUggd/Ovy74XSQ+AwDQ==
-407
View File
@@ -1,407 +0,0 @@
Attribution-NonCommercial 4.0 International
=======================================================================
Creative Commons Corporation ("Creative Commons") is not a law firm and
does not provide legal services or legal advice. Distribution of
Creative Commons public licenses does not create a lawyer-client or
other relationship. Creative Commons makes its licenses and related
information available on an "as-is" basis. Creative Commons gives no
warranties regarding its licenses, any material licensed under their
terms and conditions, or any related information. Creative Commons
disclaims all liability for damages resulting from their use to the
fullest extent possible.
Using Creative Commons Public Licenses
Creative Commons public licenses provide a standard set of terms and
conditions that creators and other rights holders may use to share
original works of authorship and other material subject to copyright
and certain other rights specified in the public license below. The
following considerations are for informational purposes only, are not
exhaustive, and do not form part of our licenses.
Considerations for licensors: Our public licenses are
intended for use by those authorized to give the public
permission to use material in ways otherwise restricted by
copyright and certain other rights. Our licenses are
irrevocable. Licensors should read and understand the terms
and conditions of the license they choose before applying it.
Licensors should also secure all rights necessary before
applying our licenses so that the public can reuse the
material as expected. Licensors should clearly mark any
material not subject to the license. This includes other CC-
licensed material, or material used under an exception or
limitation to copyright. More considerations for licensors:
wiki.creativecommons.org/Considerations_for_licensors
Considerations for the public: By using one of our public
licenses, a licensor grants the public permission to use the
licensed material under specified terms and conditions. If
the licensor's permission is not necessary for any reason--for
example, because of any applicable exception or limitation to
copyright--then that use is not regulated by the license. Our
licenses grant only permissions under copyright and certain
other rights that a licensor has authority to grant. Use of
the licensed material may still be restricted for other
reasons, including because others have copyright or other
rights in the material. A licensor may make special requests,
such as asking that all changes be marked or described.
Although not required by our licenses, you are encouraged to
respect those requests where reasonable. More considerations
for the public:
wiki.creativecommons.org/Considerations_for_licensees
=======================================================================
Creative Commons Attribution-NonCommercial 4.0 International Public
License
By exercising the Licensed Rights (defined below), You accept and agree
to be bound by the terms and conditions of this Creative Commons
Attribution-NonCommercial 4.0 International Public License ("Public
License"). To the extent this Public License may be interpreted as a
contract, You are granted the Licensed Rights in consideration of Your
acceptance of these terms and conditions, and the Licensor grants You
such rights in consideration of benefits the Licensor receives from
making the Licensed Material available under these terms and
conditions.
Section 1 -- Definitions.
a. Adapted Material means material subject to Copyright and Similar
Rights that is derived from or based upon the Licensed Material
and in which the Licensed Material is translated, altered,
arranged, transformed, or otherwise modified in a manner requiring
permission under the Copyright and Similar Rights held by the
Licensor. For purposes of this Public License, where the Licensed
Material is a musical work, performance, or sound recording,
Adapted Material is always produced where the Licensed Material is
synched in timed relation with a moving image.
b. Adapter's License means the license You apply to Your Copyright
and Similar Rights in Your contributions to Adapted Material in
accordance with the terms and conditions of this Public License.
c. Copyright and Similar Rights means copyright and/or similar rights
closely related to copyright including, without limitation,
performance, broadcast, sound recording, and Sui Generis Database
Rights, without regard to how the rights are labeled or
categorized. For purposes of this Public License, the rights
specified in Section 2(b)(1)-(2) are not Copyright and Similar
Rights.
d. Effective Technological Measures means those measures that, in the
absence of proper authority, may not be circumvented under laws
fulfilling obligations under Article 11 of the WIPO Copyright
Treaty adopted on December 20, 1996, and/or similar international
agreements.
e. Exceptions and Limitations means fair use, fair dealing, and/or
any other exception or limitation to Copyright and Similar Rights
that applies to Your use of the Licensed Material.
f. Licensed Material means the artistic or literary work, database,
or other material to which the Licensor applied this Public
License.
g. Licensed Rights means the rights granted to You subject to the
terms and conditions of this Public License, which are limited to
all Copyright and Similar Rights that apply to Your use of the
Licensed Material and that the Licensor has authority to license.
h. Licensor means the individual(s) or entity(ies) granting rights
under this Public License.
i. NonCommercial means not primarily intended for or directed towards
commercial advantage or monetary compensation. For purposes of
this Public License, the exchange of the Licensed Material for
other material subject to Copyright and Similar Rights by digital
file-sharing or similar means is NonCommercial provided there is
no payment of monetary compensation in connection with the
exchange.
j. Share means to provide material to the public by any means or
process that requires permission under the Licensed Rights, such
as reproduction, public display, public performance, distribution,
dissemination, communication, or importation, and to make material
available to the public including in ways that members of the
public may access the material from a place and at a time
individually chosen by them.
k. Sui Generis Database Rights means rights other than copyright
resulting from Directive 96/9/EC of the European Parliament and of
the Council of 11 March 1996 on the legal protection of databases,
as amended and/or succeeded, as well as other essentially
equivalent rights anywhere in the world.
l. You means the individual or entity exercising the Licensed Rights
under this Public License. Your has a corresponding meaning.
Section 2 -- Scope.
a. License grant.
1. Subject to the terms and conditions of this Public License,
the Licensor hereby grants You a worldwide, royalty-free,
non-sublicensable, non-exclusive, irrevocable license to
exercise the Licensed Rights in the Licensed Material to:
a. reproduce and Share the Licensed Material, in whole or
in part, for NonCommercial purposes only; and
b. produce, reproduce, and Share Adapted Material for
NonCommercial purposes only.
2. Exceptions and Limitations. For the avoidance of doubt, where
Exceptions and Limitations apply to Your use, this Public
License does not apply, and You do not need to comply with
its terms and conditions.
3. Term. The term of this Public License is specified in Section
6(a).
4. Media and formats; technical modifications allowed. The
Licensor authorizes You to exercise the Licensed Rights in
all media and formats whether now known or hereafter created,
and to make technical modifications necessary to do so. The
Licensor waives and/or agrees not to assert any right or
authority to forbid You from making technical modifications
necessary to exercise the Licensed Rights, including
technical modifications necessary to circumvent Effective
Technological Measures. For purposes of this Public License,
simply making modifications authorized by this Section 2(a)
(4) never produces Adapted Material.
5. Downstream recipients.
a. Offer from the Licensor -- Licensed Material. Every
recipient of the Licensed Material automatically
receives an offer from the Licensor to exercise the
Licensed Rights under the terms and conditions of this
Public License.
b. No downstream restrictions. You may not offer or impose
any additional or different terms or conditions on, or
apply any Effective Technological Measures to, the
Licensed Material if doing so restricts exercise of the
Licensed Rights by any recipient of the Licensed
Material.
6. No endorsement. Nothing in this Public License constitutes or
may be construed as permission to assert or imply that You
are, or that Your use of the Licensed Material is, connected
with, or sponsored, endorsed, or granted official status by,
the Licensor or others designated to receive attribution as
provided in Section 3(a)(1)(A)(i).
b. Other rights.
1. Moral rights, such as the right of integrity, are not
licensed under this Public License, nor are publicity,
privacy, and/or other similar personality rights; however, to
the extent possible, the Licensor waives and/or agrees not to
assert any such rights held by the Licensor to the limited
extent necessary to allow You to exercise the Licensed
Rights, but not otherwise.
2. Patent and trademark rights are not licensed under this
Public License.
3. To the extent possible, the Licensor waives any right to
collect royalties from You for the exercise of the Licensed
Rights, whether directly or through a collecting society
under any voluntary or waivable statutory or compulsory
licensing scheme. In all other cases the Licensor expressly
reserves any right to collect such royalties, including when
the Licensed Material is used other than for NonCommercial
purposes.
Section 3 -- License Conditions.
Your exercise of the Licensed Rights is expressly made subject to the
following conditions.
a. Attribution.
1. If You Share the Licensed Material (including in modified
form), You must:
a. retain the following if it is supplied by the Licensor
with the Licensed Material:
i. identification of the creator(s) of the Licensed
Material and any others designated to receive
attribution, in any reasonable manner requested by
the Licensor (including by pseudonym if
designated);
ii. a copyright notice;
iii. a notice that refers to this Public License;
iv. a notice that refers to the disclaimer of
warranties;
v. a URI or hyperlink to the Licensed Material to the
extent reasonably practicable;
b. indicate if You modified the Licensed Material and
retain an indication of any previous modifications; and
c. indicate the Licensed Material is licensed under this
Public License, and include the text of, or the URI or
hyperlink to, this Public License.
2. You may satisfy the conditions in Section 3(a)(1) in any
reasonable manner based on the medium, means, and context in
which You Share the Licensed Material. For example, it may be
reasonable to satisfy the conditions by providing a URI or
hyperlink to a resource that includes the required
information.
3. If requested by the Licensor, You must remove any of the
information required by Section 3(a)(1)(A) to the extent
reasonably practicable.
4. If You Share Adapted Material You produce, the Adapter's
License You apply must not prevent recipients of the Adapted
Material from complying with this Public License.
Section 4 -- Sui Generis Database Rights.
Where the Licensed Rights include Sui Generis Database Rights that
apply to Your use of the Licensed Material:
a. for the avoidance of doubt, Section 2(a)(1) grants You the right
to extract, reuse, reproduce, and Share all or a substantial
portion of the contents of the database for NonCommercial purposes
only;
b. if You include all or a substantial portion of the database
contents in a database in which You have Sui Generis Database
Rights, then the database in which You have Sui Generis Database
Rights (but not its individual contents) is Adapted Material; and
c. You must comply with the conditions in Section 3(a) if You Share
all or a substantial portion of the contents of the database.
For the avoidance of doubt, this Section 4 supplements and does not
replace Your obligations under this Public License where the Licensed
Rights include other Copyright and Similar Rights.
Section 5 -- Disclaimer of Warranties and Limitation of Liability.
a. UNLESS OTHERWISE SEPARATELY UNDERTAKEN BY THE LICENSOR, TO THE
EXTENT POSSIBLE, THE LICENSOR OFFERS THE LICENSED MATERIAL AS-IS
AND AS-AVAILABLE, AND MAKES NO REPRESENTATIONS OR WARRANTIES OF
ANY KIND CONCERNING THE LICENSED MATERIAL, WHETHER EXPRESS,
IMPLIED, STATUTORY, OR OTHER. THIS INCLUDES, WITHOUT LIMITATION,
WARRANTIES OF TITLE, MERCHANTABILITY, FITNESS FOR A PARTICULAR
PURPOSE, NON-INFRINGEMENT, ABSENCE OF LATENT OR OTHER DEFECTS,
ACCURACY, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT
KNOWN OR DISCOVERABLE. WHERE DISCLAIMERS OF WARRANTIES ARE NOT
ALLOWED IN FULL OR IN PART, THIS DISCLAIMER MAY NOT APPLY TO YOU.
b. TO THE EXTENT POSSIBLE, IN NO EVENT WILL THE LICENSOR BE LIABLE
TO YOU ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION,
NEGLIGENCE) OR OTHERWISE FOR ANY DIRECT, SPECIAL, INDIRECT,
INCIDENTAL, CONSEQUENTIAL, PUNITIVE, EXEMPLARY, OR OTHER LOSSES,
COSTS, EXPENSES, OR DAMAGES ARISING OUT OF THIS PUBLIC LICENSE OR
USE OF THE LICENSED MATERIAL, EVEN IF THE LICENSOR HAS BEEN
ADVISED OF THE POSSIBILITY OF SUCH LOSSES, COSTS, EXPENSES, OR
DAMAGES. WHERE A LIMITATION OF LIABILITY IS NOT ALLOWED IN FULL OR
IN PART, THIS LIMITATION MAY NOT APPLY TO YOU.
c. The disclaimer of warranties and limitation of liability provided
above shall be interpreted in a manner that, to the extent
possible, most closely approximates an absolute disclaimer and
waiver of all liability.
Section 6 -- Term and Termination.
a. This Public License applies for the term of the Copyright and
Similar Rights licensed here. However, if You fail to comply with
this Public License, then Your rights under this Public License
terminate automatically.
b. Where Your right to use the Licensed Material has terminated under
Section 6(a), it reinstates:
1. automatically as of the date the violation is cured, provided
it is cured within 30 days of Your discovery of the
violation; or
2. upon express reinstatement by the Licensor.
For the avoidance of doubt, this Section 6(b) does not affect any
right the Licensor may have to seek remedies for Your violations
of this Public License.
c. For the avoidance of doubt, the Licensor may also offer the
Licensed Material under separate terms or conditions or stop
distributing the Licensed Material at any time; however, doing so
will not terminate this Public License.
d. Sections 1, 5, 6, 7, and 8 survive termination of this Public
License.
Section 7 -- Other Terms and Conditions.
a. The Licensor shall not be bound by any additional or different
terms or conditions communicated by You unless expressly agreed.
b. Any arrangements, understandings, or agreements regarding the
Licensed Material not stated herein are separate from and
independent of the terms and conditions of this Public License.
Section 8 -- Interpretation.
a. For the avoidance of doubt, this Public License does not, and
shall not be interpreted to, reduce, limit, restrict, or impose
conditions on any use of the Licensed Material that could lawfully
be made without permission under this Public License.
b. To the extent possible, if any provision of this Public License is
deemed unenforceable, it shall be automatically reformed to the
minimum extent necessary to make it enforceable. If the provision
cannot be reformed, it shall be severed from this Public License
without affecting the enforceability of the remaining terms and
conditions.
c. No term or condition of this Public License will be waived and no
failure to comply consented to unless expressly agreed to by the
Licensor.
d. Nothing in this Public License constitutes or may be interpreted
as a limitation upon, or waiver of, any privileges and immunities
that apply to the Licensor or You, including from the legal
processes of any jurisdiction or authority.
=======================================================================
Creative Commons is not a party to its public
licenses. Notwithstanding, Creative Commons may elect to apply one of
its public licenses to material it publishes and in those instances
will be considered the “Licensor.” The text of the Creative Commons
public licenses is dedicated to the public domain under the CC0 Public
Domain Dedication. Except for the limited purpose of indicating that
material is shared under a Creative Commons public license or as
otherwise permitted by the Creative Commons policies published at
creativecommons.org/policies, Creative Commons does not authorize the
use of the trademark "Creative Commons" or any other trademark or logo
of Creative Commons without its prior written consent including,
without limitation, in connection with any unauthorized modifications
to any of its public licenses or any other arrangements,
understandings, or agreements concerning use of licensed material. For
the avoidance of doubt, this paragraph does not form part of the
public licenses.
Creative Commons may be contacted at creativecommons.org.
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh0wAKCRAoXmBIoSMh
suCEAP9HosFzj8/w9w+EzKM+XJBXDZc3beZkVJ4Kf4yOlMgUBwEA97aOiHyzYwmp
/PRYhgK8zUUYxOIRfkDtl1ekb8ahrw0=
=nF54
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/gAzBQtyzCamju84eebs9pmkibZyZu3dRxd3LrTgZgknkRyjTMx8clMYRpHl1l7XCqCROtQU8r+zSXd79xFgFQc=
trusted comment: timestamp:1680335316 file:LICENSE.md hashed
WVZeiBuCi5Vje4LQJgOIehfYUWjVkDWtOEtct/eZwkEDbDf9vVdYLkpk5MuEvy6zbbSG7lChoxAyAXQHnixMCw==
-4
View File
@@ -1,4 +0,0 @@
guide: clean
./make.sh
clean:
./clean.sh
+7 -42
View File
@@ -1,51 +1,16 @@
Welcome. Welcome.
**[IMPORTANT RECOMMENDATION FOR UKRAINIANS. ВАЖЛИВА РЕКОМЕНДАЦІЯ ДЛЯ УКРАЇНЦІВ](briar.html)** ## Star History
This is a maintained guide with the aim of providing an introduction to various online tracking techniques, online ID verification techniques, and detailed guidance to creating and maintaining (truly) anonymous online identities. <span style="color: red">**It is written with hope for activists, journalists, scientists, lawyers, whistle-blowers, and good people being oppressed, censored, harassed anywhere!**</span> This guide has no affiliation with the [Anonymous](https://en.wikipedia.org/wiki/Anonymous_(hacker_group)) <sup>[[Wikiless]](https://wikiless.org/wiki/Anonymous_(hacker_group))</sup> <sup>[[Archive.org]](https://web.archive.org/web/https://en.wikipedia.org/wiki/Anonymous_(hacker_group))</sup> collective/movement. [![Star History Chart](https://api.star-history.com/chart?repos=Anon-Planet/thgtoa&type=date&logscale&legend=top-left)](https://www.star-history.com/?repos=Anon-Planet%2Fthgtoa&type=date&logscale=&legend=bottom-right)
This is a guide with the aim of providing an introduction to various online tracking techniques, online ID verification techniques, and detailed guidance to creating and maintaining (truly) anonymous online identities. <span style="color: red">**It is written with hope for activists, journalists, scientists, lawyers, whistle-blowers, and good people being oppressed, censored, harassed anywhere!**</span> This guide has no affiliation with the [Anonymous](https://en.wikipedia.org/wiki/Anonymous_(hacker_group)) <sup>[[Wikiless]](https://wikiless.com/wiki/Anonymous_(hacker_group))</sup> <sup>[[Archive.org]](https://web.archive.org/web/https://en.wikipedia.org/wiki/Anonymous_(hacker_group))</sup> collective/movement.
This guide is an open-source non-profit initiative, [licensed](LICENSE.html) under **Creative Commons Attribution-NonCommercial 4.0 International** ([cc-by-nc-4.0](https://creativecommons.org/licenses/by-nc/4.0/) <sup>[[Archive.org]](https://web.archive.org/web/https://creativecommons.org/licenses/by-nc/4.0/)</sup>) and is **not sponsored/endorsed by any commercial/governmental entity**. This means that you are free to use our guide for pretty much any purpose **excluding commercially** as long as you do attribute it. There are no ads or any affiliate links. This guide is an open-source non-profit initiative, [licensed](LICENSE.html) under **Creative Commons Attribution-NonCommercial 4.0 International** ([cc-by-nc-4.0](https://creativecommons.org/licenses/by-nc/4.0/) <sup>[[Archive.org]](https://web.archive.org/web/https://creativecommons.org/licenses/by-nc/4.0/)</sup>) and is **not sponsored/endorsed by any commercial/governmental entity**. This means that you are free to use our guide for pretty much any purpose **excluding commercially** as long as you do attribute it. There are no ads or any affiliate links.
**If you would like to make a donation to help this project, you can do so from [here](donations.html) where you will also find the project goals. All the donations will be strictly used within the context of this project. All donations and spendings are logged on the donations page.** **If you would like to make a donation to help this project, you can do so from [here](donations.html) where you will also find the project goals. All the donations will be strictly used within the context of this project. All donations and spendings are logged on the donations page.**
**Direct downloads alternatives:** **Ways to read or export the guide**
- **Coming soon**
**View the guide:** - **In your browser:** [Hitchhiker's Guide](https://www.anonymousplanet.net/) (hosted site). After a local build you can also open `site/guide/index.html` directly.
- [In your browser](guide.html) - **Local HTML preview:** from the repository root, with Python 3 and [MkDocs Material](https://squidfunk.github.io/mkdocs-material/getting-started/) installed (`pip install mkdocs-material`), run `mkdocs serve` and open the URL printed in the terminal (for example `http://127.0.0.1:8000`).
- [PDF](export/guide.pdf)
- [OpenDocument (ODT)](export/guide.odt)
- Raw [Markdown](https://github.com/Anon-Planet/thgtoa/raw/master/guide.md) text.
Mirrors:
- Tor Onion Mirror: <http://thgtoa27ujspeqxasrfvcf5aozqdczvgmwgorrmblh6jn4nino3spcqd.onion/>
The guide and all the files are also readily available on Archive.org and Archive.today:
- Archive.org: <https://web.archive.org/web/https://anonymousplanet.org/>
- Archive.today: <https://archive.ph/anonymousplanet.org/>
- Archive.today over Tor: <http://archiveiya74codqgiixo33q62qlrqtkgmcitqx5u2oeqnmn5bpcbiyd.onion/anonymousplanet.org/>
If you want to access/see the original/legacy project, please see the [legacy resources](legacy.html) page.
If you want to see the changes between your PDF and the latest PDF, you could use one of these tools (we do not endorse those):
- <https://tools.pdf24.org/en/compare-pdf>
- <https://products.aspose.app/pdf/comparison>
- <https://draftable.com/compare>
If you want to compare an older ODT file with a newer one, use the LibreWriter compare features as explained here: <https://help.libreoffice.org/7.1/en-US/text/shared/guide/redlining_doccompare.html> <sup>[[Archive.org]](https://web.archive.org/wen/https://help.libreoffice.org/7.1/en-US/text/shared/guide/redlining_doccompare.html)</sup>)
**If you want to check the files for integrity, safety, authenticity, please refer to this ["How To"](verify.html).**
Feel free to submit issues using Github Issues with the repository link above. Criticism, opinions, and ideas are welcome!
Follow or contact us on:
Discussion Channels:
- Matrix room: ```#anonymity:matrix.org``` <https://matrix.to/#/#anonymity:matrix.org>
- Matrix space: ```#privacy-security-anonymity:matrix.org``` <https://matrix.to/#/#privacy-security-anonymity:matrix.org>
- Twitter at https://twitter.com/AnonyPla
- Mastodon at https://mastodon.social/@anonymousplanet
Have a good read and feel free to share and/or recommend it!
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh1AAKCRAoXmBIoSMh
siunAQC2DT2qJEjvosnRz+eT7xPCPqJVF9ou4WVLJeJ1F5MVuQEA+Sr1ogWLT83F
Gl7Gw5nAo1VoEy+QoXfVvjCpW8PLFwk=
=SzD0
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/khaN6RZfM31d2qqisqStlc6eQx4EzeEUkv9fXpl1oJ2+lAC4r3voqLTkAKLSpfXhgh26HBsa6HSNrA4ySYYAwk=
trusted comment: timestamp:1680335318 file:README.md hashed
Dix3k+roD19I7GwhfjremcvHpUhHa6EUSBFX4Pxubgk+pRWMEobtF1vQDiergJRyBLcOY3amj76WBf5rhMILDQ==
-59
View File
@@ -1,59 +0,0 @@
markdown: kramdown
kramdown:
hard_wrap: false
plugins:
- jekyll-relative-links
- jekyll-sitemap
- jekyll-seo-tag
relative_links:
enabled: true
collections: true
title: The Hitchhiker's Guide to Online Anonymity
description: The Hitchhiker's Guide to Online Anonymity
tagline: The Hitchhiker's Guide to Online Anonymity
author: AnonymousPlanet
theme: jekyll-theme-hacker
github:
home_url: index.html
pdf_url: export/guide.pdf
odt_url: export/guide.odt
guide_url: guide.html
donations_url: donations.html
changelog_url: CHANGELOG.html
license_url: LICENSE.html
about_url: about.html
minisign_url: minisign.pub
links_url: links.html
twitter_url: https://anonymousplanet.org/twitter.html
mastodon_url: https://mastodon.social/@anonymousplanet
constitution_url: constitution.html
tor_mirror_url: http://thgtoa27ujspeqxasrfvcf5aozqdczvgmwgorrmblh6jn4nino3spcqd.onion
defaults:
-
scope:
path: ""
values:
layout: default
sitemap: true
locale: "en-US"
author:
name: AnonymousPlanet
twitter: AnonyPla
social:
name: AnonymousPlanet
links:
- https://twitter.com/AnonyPla
- https://github.com/Anon-Planet
- https://matrix.to/#/#privacy-security-anonymity:matrix.org
- https://mastodon.social/@anonymousplanet
exclude:
- Gemfile
- Gemfile.lock
- .github
- .gitignore
include:
- LICENSE.md
- about.md
- legacy.md
- briar.md
- .well-known
-196
View File
@@ -1,196 +0,0 @@
<!DOCTYPE html>
<html lang="{{ site.lang | default: "en-US" }}">
<head>
<meta charset='utf-8'>
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta http-equiv="onion-location" content="{{ site.github.tor_mirror_url }}{{ page.url }}" />
<meta http-equiv="Content-Security-Policy" content="default-src 'self' 'unsafe-inline'; base-uri 'self'; form-action 'self'; object-src 'self'; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline'">
<meta http-equiv=”X-XSS-Protection” content=”1">
<meta http-equiv="Permissions-Policy" content="interest-cohort=()"/>
<meta name="referrer" content="no-referrer">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="{{ 'assets/css/style.css' }}" id="dark">
<link rel="stylesheet" href="{{ 'assets/css/light_style.css' }}" media="none" id="light">
<link rel="shortcut icon" type="image/x-icon" href="media/favicon.ico">
<script>
function SetDark() {
document.getElementById('dark').media = "";
document.getElementById('light').media = "none";
themeicon.innerHTML = '<svg height="24px" viewBox="0 0 24 24" width="24px" fill="#FFF"><path d="M0 0h24v24H0z" fill="none"/><path d="M20 8.69V4h-4.69L12 .69 8.69 4H4v4.69L.69 12 4 15.31V20h4.69L12 23.31 15.31 20H20v-4.69L23.31 12 20 8.69zM12 18c-3.31 0-6-2.69-6-6s2.69-6 6-6 6 2.69 6 6-2.69 6-6 6zm0-10c-2.21 0-4 1.79-4 4s1.79 4 4 4 4-1.79 4-4-1.79-4-4-4z"/></svg>';
}
function SetLight() {
document.getElementById('light').media = "";
document.getElementById('dark').media = "none";
themeicon.innerHTML = '<svg enable-background="new 0 0 24 24" height="24px" viewBox="0 0 24 24" width="24px" fill="#000000"><rect fill="none" height="24" width="24"/><path d="M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36c-0.98,1.37-2.58,2.26-4.4,2.26 c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"/></svg>';
}
window.addEventListener('load',
function() {
if (window.matchMedia("(prefers-color-scheme: dark)").matches) {
if (localStorage.getItem("theme") == "light") {
SetLight();
document.getElementById('switch').checked = true;
} else {
SetDark();
document.getElementById('switch').checked = false;
}
} else if (window.matchMedia("(prefers-color-scheme: light)").matches) {
if (localStorage.getItem("theme") == "dark") {
SetDark();
document.getElementById('switch').checked = false;
} else {
SetLight();
document.getElementById('switch').checked = true;
}
} else {
SetDark();
document.getElementById('switch').checked = false;
}
}, false);
function switch_theme(state) {
if (state) {
SetLight();
localStorage.setItem("theme", "light");
} else {
SetDark();
localStorage.setItem("theme", "dark");
}
};
</script>
<style>
.theme-switch-wrapper {
display: inline-block;
z-index: 100;
position: absolute;
right: 0;
top: -10px;
}
.jswarning {
display: inline-block;
border: 1px solid green;
}
.theme-switch-wrapper span {
margin-right: 2px;
}
.theme-switch {
display: inline-block;
height: 25px;
position: relative;
width: 40px;
}
.theme-switch input {
display: none;
}
.slider {
background: #696969;
cursor: pointer;
position: absolute;
left: 0;
right: 0;
top: 0;
bottom: 0;
transition: 0.5s;
}
.slider::before {
background: #fff;
bottom: 4px;
content: '';
height: 17px;
left: 4px;
position: absolute;
transition: 0.5s;
width: 17px;
}
input:checked + .slider {
background: #151515;
}
input:checked + .slider::before {
transform: translateX(15px);
}
.slider.round {
border-radius: 34px;
}
.slider.round::before {
border-radius: 50%;
}
.fas {
font-size: 30px;
}
</style>
<noscript>
<style>.theme-switch-wrapper {display:none;}</style>
</noscript>
{% seo %}
</head>
<body style="transition: all 0.5s ease;">
<header>
<div class="container" style="position: relative;">
<div class="theme-switch-wrapper">
<!-- Icon -->
<span id="toggle-icon">
<i id="themeicon" class="fas fa-sun"></i>
</span>
<!-- Switch -->
<label class="theme-switch">
<input type="checkbox" id="switch" onclick="switch_theme(this.checked)">
<div class="slider round"></div>
</label>
</div>
<a id="a-title">
<h1>The Hitchhikers Guide to Online Anonymity</h1>
</a>
<h2>How I learned to start worrying and love <del>privacy</del> anonymity</h2>
<h4 class="project-version">The latest Version is v1.1.6. See the <a href="{{ site.github.changelog_url }}" style="color:#ff4700">changelog.</a></h4>
<section id="downloads">
{% if page.url != "/" %}
<a href="{{ site.github.home_url }}" class="btn_small">Home</a>
{% endif %}
{% if page.url != "/guide.html" %}
<a href="{{ site.github.guide_url }}" class="btn_small" style="color:#FF0000">View Online</a>
{% endif %}
<a href="{{ site.github.pdf_url }}" class="btn_small">PDF</a>
<!--<a href="{{ site.github.pdf_dark_url }}" class="btn_small">PDF (Dark)</a>-->
<a href="{{ site.github.odt_url }}" class="btn_small">OpenDocument</a>
{% if page.url != "/donations.html" %}
<a href="{{ site.github.donations_url }}" class="btn_small">Donate</a>
{% endif %}
{% if page.url != "/constitution.html" %}
<a href="{{ site.github.constitution_url }}" class="btn_small">Constitution</a>
{% endif %}
<a href="{{ site.github.repository_url }}" target="_blank" class="btn_small">Repository</a>
<!--<a href="{{ site.github.keyoxide_url }}" target="_blank" class="btn_small">Keyoxide</a>-->
<a rel="me" href="{{ site.github.mastodon_url }}" target="_blank" class="btn_small">Mastodon</a>
<a rel="me" href="{{ site.github.twitter_url }}" target="_blank" class="btn_small">Twitter</a>
<!--<a rel="me" href="{{ site.github.mastodon_url }}" target="_blank" class="btn_small">Mastodon</a>-->
{% if page.url != "/links.html" %}
<a href="{{ site.github.links_url }}" class="btn_small">Links</a>
{% endif %}
{% if page.url != "/about.html" %}
<a href="{{ site.github.about_url }}" class="btn_small">About</a>
{% endif %}
</section>
<h5>GPG Key Fingerprint: 9EA9 8278 639F 1CD8 53E0 96CB FF94 5075 87A6 A9B9 / Minisign public key: <a href="{{ site.github.minisign_url }}" style="color:#ff4700">minisign.pub</a></h5>
<noscript><p class="jswarning">JavaScript is required to toggle light mode. JavaScript is not used for any other purpose.</p></noscript>
</div>
</header>
<div class="container">
<section id="main_content">
{{ content }}
</section>
</div>
</body>
</html>
-42
View File
@@ -1,42 +0,0 @@
The current maintainers of this project are Alex (they/them) and The Hidden (aka No).
After unfortunate events, we have picked up maintenance of this guide in order to continue the project the original founder, Lena, started. Lena faked her death, then returned later. Before her <del>death</del>, she gave me access to her accounts to maintain the guide. I will be maintaining her guide, as well as running her Matrix space, from this point. As we've said before, we cannot guarantee we'll do everything right, or how she would have done it, but we're trying our best.
---
Please share this project if you enjoy it and think it might be useful to others.
Follow or contact us on:
- Twitter: <https://twitter.com/AnonyPla>
- Mastodon: <https://mastodon.social/@anonymousplanet>
- E-Mail: <contact@anonymousplanet.org> (You may use our [PGP public key](https://anonymousplanet.org/pgp/AnonymousPlanet-Email-Key_B6D1757632A280F99F2DCBFDB9AB9D93AFF05B9C.asc) to encrypt e-mails. Do not forget to attach your PGP public key if you want an encrypted answer)
Discussion Channels:
- Matrix room: ```#anonymity:matrix.org``` <https://matrix.to/#/#anonymity:matrix.org>
- Matrix space: ```#privacy-security-anonymity:matrix.org``` <https://matrix.to/#/#privacy-security-anonymity:matrix.org>
- Github Discussions: <https://github.com/Anon-Planet/thgtoa/discussions/>
**Below you'll find the original about text from the initial founder, Lena, of this guide before she went missing, most links are invalid.**
This text will remain here in memoriam of her legacy and the incredible work she did vastly alone without any contributors.
---
Hello I'm back,
**First I'll thank you immensely Alex for salvaging this and helping me. Thank you. Thank you so much.**
My name is Lena, I'm 22 years old, I'm Ukrainian from Kyiv. Online, I'm I'm just a simple anonymity and privacy activist.
I also used to be an activist in real life for various causes and did my share of protests. I was forced to flee the country like many others, and for the moment reside in Germany.
I'm a firm supporter of human rights, equality, repect, I hate corruption, and now ... sorry but not sorry ... I seriously dislike Russians who still support Putin but in particular, I really hate pro-russian Chechnians who came to Ukraine for the sport as they are just savages to my eyes. This is my sole personal opinion.
I also strongly believe privacy should be a universal right and that anonymity should never become illegal. I don't want our lives to turn into Gattaca, Minority Report, Black Mirror, or 1984 (Too late for that one, I'm afraid). I do not want our laws and rights to become terms of services.
My goal is to bring accessible knowledge on these topics to the many and hopefully reach the few good people who really need it. In this specific case, I think the needs of the few outweigh the needs of the many.
Some facts about me:
- I am not rich.
- I enjoy good memes, movies, series, and books (and I'm sure some of you will spot some of the many references to those in my project).
Please share this project if you enjoy it and think it might be useful to others.
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh1gAKCRAoXmBIoSMh
sspYAP94KlEc8j6agyeq3l2zoOvV0OcR67gSJ+UJKBwqwX+4YQD/ah3YgXnqSsBS
CRyoFmwwrJvKDoDj9lPpae47IiXR0gs=
=Ylsy
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/jPGLG4VcZ5au6he/dAI4GTaWrTiWJEdqbaCxJHxOsczmmoIPZyrXjl8lSwWc+cQ4Lh5wh/OWuK79IY/6lGhVws=
trusted comment: timestamp:1680335319 file:about.md hashed
iljjU44BMSi/pC1dqnoS0sQDojgcL80y85alEF9h75MPIexjFv+Zu25YlTmK5TDTLbXdissqRyMRwO43LNxJBg==
-87
View File
@@ -1,87 +0,0 @@
---
---
@import 'jekyll-theme-hacker';
body {
font-family: "Helvetica", "Bitstream Vera Sans Mono", "Lucida Console", Terminal;
background: #FFFFFF;
color: #252525;
}
table {
border-collapse: collapse;
}
th {
border: 2px solid orange;
background-color: dimgray;
}
td {
border: 1px solid orange;
}
td:nth-child(1) {
border: 2px solid orange;
font-weight: bold
}
header {
border-bottom: 1px dashed #669114;
background: #F5F5F5;
}
header h1 {
color: #669114;
}
h1, h2, h3, h4, h5, h6 {
color: #669114;
}
a {
color: #132935;
text-decoration: none;
}
.btn {
background:#DCDCDC;
color: #111;
border: 1px solid rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(0, 0, 0, 0.25);
border-top: 1px solid rgba(0, 0, 0, 0.35);
}
.btn_small {
display: inline-block; background: -webkit-linear-gradient(top, rgba(40, 40, 40, 0.3), rgba(35, 35, 35, 0.3) 50%, rgba(10, 10, 10, 0.3) 50%, rgba(0, 0, 0, 0.3));
font-family: Helvetica, Arial, sans-serif; font-weight: bold;
font-size: 13px;
text-decoration: none; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.75);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
background:#DCDCDC;
color: #111;
border: 1px solid rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(0, 0, 0, 0.25);
border-top: 1px solid rgba(0, 0, 0, 0.35);
padding: 1px 5px;
border-radius: 25px;
}
.btn:hover {
background: -webkit-linear-gradient(top, rgba(40,40,40,0.4), rgba(35,35,35,0.4) 50%, rgba(10,10,10,0.4) 50%, rgba(0,0,0,0.4));
}
code.highlighter-rouge {
background:#DCDCDC;
color: #000000
}
.highlight {
background:#DCDCDC;
color: #000000
}
ul li { list-style-image: url("../images/bullet_light.png"); }
-51
View File
@@ -1,51 +0,0 @@
---
---
@import 'jekyll-theme-hacker';
body {
font-family: "Helvetica", "Bitstream Vera Sans Mono", "Lucida Console", Terminal;
background: #151515;
}
table {
border-collapse: collapse;
}
th {
border: 2px solid orange;
background-color: dimgray;
}
a {
text-decoration: none;
}
td {
border: 1px solid orange;
}
td:nth-child(1) {
border: 2px solid orange;
font-weight: bold
}
.btn {
border: 1px solid rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(0, 0, 0, 0.25);
border-top: 1px solid rgba(0, 0, 0, 0.35);
}
.btn_small {
display: inline-block; background: -webkit-linear-gradient(top, rgba(40, 40, 40, 0.3), rgba(35, 35, 35, 0.3) 50%, rgba(10, 10, 10, 0.3) 50%, rgba(0, 0, 0, 0.3));
font-family: Helvetica, Arial, sans-serif; font-weight: bold;
font-size: 13px;
text-decoration: none; text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.75);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
border: 1px solid rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(0, 0, 0, 0.25);
border-top: 1px solid rgba(0, 0, 0, 0.35);
padding: 1px 5px;
border-radius: 25px;
color: rgba(255, 255, 255, 0.8);
}
Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

-17
View File
@@ -1,17 +0,0 @@
b61bf2e353177b802423cf7ace080d92e90dd58db0ae3cab292b3df9722d67735174954fd8939c8ef9f337dd33a3f7ac4c59b681f7030fad5a1a659226ab271f CHANGELOG.md
13a500b51aaaab394f40d459c722f25c94fdb92c0488a45caa67b5ef5c4d8ea1d5a9e303879cb04fbe61fb756a0b0e713533178cac66310d1f6d227c7a1b9bc7 CODE_OF_CONDUCT.md
57930e368db74237e225d57fb277dd30d68b75ce76567f5d608b2cd43ca547ac1f83ec04d3ba54e332e710ac3d641ec51c83fd92dd702d50e34d09d59a167ebb CONTRIBUTING.md
51b88600d8c32dc6189bace5786e7dc4c4c9e6b40a106b12e349307757e4d8aa4df6cf5cac1e06200664dd385cb35e4db84d7e7992fd9c3c9cea05fca28a27bb KEY_ROTATION.md
be4c0b66dbdca9446079753dc3fcf2fb3eec55e8061c23ebcb20242458319a44120397d825b621fe6a59940204a05689bbb1a23bdd69120f775913f5c08d40dc LICENSE.md
33efc63a406a5eebe89217bfb6a3e99641fc63226c146c6ef11dec186d90c93324e285ce8f0c0c973f2c7ab5a781e77f5d8b39154dd46f1aa9971ea457092df2 README.md
51f8fb376233f1c8930a0540bcd169c389e8ef35aff8bc1fee98ac41811dd27be9897e81887ded7fc83f139e78bb6842dc1acc8b3d1214a4a49ca88c1e48abac about.md
26196d7b81bb79c8dc290a98204e3d416e887552ec68b0de4bbe2f17bcc11fe8e3dfccc7f210a72ddecba2eecfa2e33ceaf57f4b0c3061230d62b805e8228f79 briar.md
891592dbb81e072fbce58e5772a3a2c9194f1eece192ac24c590c82d1446abfc6b35962ccf5b3e5b52c1a4ec685416f25737a9cca210b558a1bc43d3afa1384e chatrooms-rules.md
0f1ade686710eae78be9d2ac09f8249399994b4e73d37e8d0893cff9d58ba93dc38eb5ffb912744aa1318508449ed7a11661af99e778f0d800f5b11ced4fbd2c constitution.md
5a0a6f7e1df8e6965606d12e6763c86c96adb023df120c0a71e631f2ad44fcd9057c84f793411f71e6b5366a84fe583def86729f0863d0e3a0f083d228f37850 donations.md
aee1b15060dbe02ef64b165d8039f0211eda3a3cb1435ae75fd0eeccbc220400b7ae1f6d189b8f2d83f402f52d3995e43e31abc00d7bfd20dedc36266563ed84 guide.md
046a52e53005963dd38343505aa43e51b5d750f0891c0a20a675c80ef9a254077db98b15165641a5f7ea33cc19f035e2aa7dbec4504a95c32b63911e3c7a8046 legacy.md
66ff213a8a0ec7fe0540858153b799343ce35cc0e9f541d3ea241160758096e278496f85260e6a26ede7f7a30744398b3aaf6b7a15265f3cb6ecc91a09771fe0 links.md
32b57ea09d576ce73f74352e9fe1baef19ed6c3808a9e3fa4716ec881f57a579861fa22b95e56dc729048c27e242fbbc15866cb2c36411c9e49173c00c126647 moderncrypto-rules.md
28ee0d22dd1f3ad583eeae49d459b8bafcafbb094912342afa628f015c89f1c296769a66bdd5d1c98b5c56a2351ffb9eb15f38ad34fae9f765bfa584d31003bc twitter.md
b95e9fa16a93a07c1eae64b2ec6f180c23b8d005d3c0cd682700d04a767205095670524225ed5810bf4eeb3d7b4c7fc3e08d161ea5dcefc70b36cac6776d662c verify.md
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh6AAKCRAoXmBIoSMh
srN2AP0TmruDkqDjwAZ/U93ijF2QhBHP5g49cHRplkDWo5LUBwEAuE+iyAqVCpSW
nkqhdgdInT2qRe+G4Ml5jRRxM/l1QA4=
=ANo3
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/rtm3Vs83OEudyQPQZe2ajhVBIw9wkSw7KjPi/MqBMC2pQf+1qe/zBH+KDLaHmjgHWPK0wrp9Kgh7+Z4yDjLWwM=
trusted comment: timestamp:1680335337 file:b2sum.txt hashed
iuibRpqWVqMC+3S4IgNlpVS+KATxngRplfPcjTCGdoLsVD8R+pFTqVRNvvocWRfBkLSw9Q80wi7Rm7USubzNAA==
-11
View File
@@ -1,11 +0,0 @@
## спілкування / Communication:
Це послання до народу України. Ми настійно рекомендуємо вам використовувати Briar для спілкування. Ви можете знайти його тут: <https://briarproject.org/ .
За допомогою цієї програми ви можете спілкуватися, навіть коли немає Інтернету.
Посібник тут: <https://briarproject.org/manual/uk/> , Швидкий початок: <https://briarproject.org/quick-start/uk/>
--------------------------------------------------------------------------
This is a message for the people of Ukraine. We strongly recommend that you use Briar for communicating. You can find it here: <https://briarproject.org/>
With this application, you can communicate even when there is no internet.
The manual is here: <https://briarproject.org/manual/> , quick-start guie here: <https://briarproject.org/quick-start/>
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh2AAKCRAoXmBIoSMh
sp60AQCcvJrgWFAPqDUQMt0CaF4e6Tsg4BLNDirQ/nW46Usc4wEA2RPtAN6n8vjP
F834c6ojvbeZJgMsJNGHJAazzHMGrgk=
=yg0z
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/mjhwPVty4ZNYfjn4Gx8rNfbI0b+wd4o32ZIPOV/tWquVnu0QA3tLFvn+UODOdV+MYvFsknKZ37H9BAgqPt0CQc=
trusted comment: timestamp:1680335321 file:briar.md hashed
TLAQ4Ergf7NvqnCuCU7oxTYKrRgeernN0NVzYfJ0fowLHaBXjPEqTZXtxMAwhZJ3HttFcmYdft1q6a4eYOxWCQ==
-76
View File
@@ -1,76 +0,0 @@
### Privacy Security Anonymity Community Matrix/Discord chatrooms rules:
You will find here the rules for the rooms part of the PSA Community. These rules are valid on Matrix and/or Discord if applicable.
**Note that rooms part of the PSA community keep their sovereignty and can apply their own local rules, with their own local moderation. Some of the rooms are following the general rules. Some are not.**
- [General Rules](#general)
- [Nothing To Hide Privacy Room Rules](#nth)
- [Modern Cryprography Room Rules](#moderncrypto)
- [OS Security Room Rules](#ossecurity)
- [Bnonymity Room Rules](#bnonymity)
- [Exceptions](#exceptions)
- [PSA Bans](#psabans)
- [Ban Appeals](#appeals)
#### General default rules for PSA rooms **unless specific rules are mentioned below**:<a name="general"></a>
These are currently enforced on **```#anonymity:matrix.org```**, **```#security:matrix.org```**, **```#OSINT:matrix.org```**, and not applied on rooms with their own ruleset below.
- Keep it legal
- English only
- Be respectful to each other
- Avoid FUD and/or disinformation
- Avoid gatekeeping and try to remain welcoming to new users
- No hate speech (No racism, no homophobia, no transphobia...)
- No spam
- No doxxing
- No trolling (this doesn't mean sarcasm is forbidden)
- No NSFW content (no Porn, no Gore, no Hentai...)
- No upload of any non-media files (binaries, executables, compressed files...)
- No voice messages (these will be auto-deleted by the bots)
- **Avoid drifting too much off-topic or move to an off-topic room like #bnonymity**
- **Any discussion about AnonyPla / Lena whereabouts is only tolerated, to an extent, in the ```#Bnonymity:matrix.org``` room.**
Some exceptions can apply, see the [exceptions](#exceptions) section at the bottom of this page. Violations will be handled at the discretion of the acting moderator.
#### Rules for Nothing To Hide Privacy (```#privacy:matrix.org```):<a name="nth"></a>
- Zero tolerance for discussion of how to commit illicit acts
- LIMIT POLITICAL DISCUSSION TO PRIVACY-RELATED TOPICS ONLY
- Do not dox others
- No suspicious links or uploading of non-image binary files
- Be respectful
#### Rules for Modern Cryptography (```#moderncrypto:gnuradio.org```):<a name="moderncrypto"></a>
See <https://anonymousplanet.org/moderncrypto-rules.html>
#### Rules for OS Security:<a name="ossecurity"></a>
See <https://artemislena.eu/coc.html>
#### Rules for Bnonymity (```#bnonymity:matrix.org```):<a name="bnonymity"></a>
- Keep it legal (seriously)
- English only (no Russian, no Chinese, English only)
- Be "somewhat" respectful to each other
- No hate speech (No racism, no homophobia, no transphobia...)
- No spammerino (scams, ads, flooding...)
- No doxxing
- No NSFW content (no Porn, no Gore, no Hentai...)
- All of the above can result in an insta-ban depending on the severity
#### Exceptions:<a name="exceptions"></a>
##### Exceptions for #Anonymity, #Security, and #Bnonymity rooms:
- Talks about Sci-Hub and/or LibGen are allowed
- Talks about torrenting anonymously are allowed unless the purpose is blatantly illegal
#### PSA Bans:<a name="psabans"></a>
Currently, the following rooms are sharing a common PSA banlist for serious offenders:
- ```#Anonymity:matrix.org```
- ```#Security:matrix.org```
- ```#Bnonymity:matrix.org```
- ```#OSINT:matrix.org```
- ```#ModernCrypto:gnuradio.org```
This means that those PSA bans are effectively applied on all those rooms and can be issued by admins of these rooms. See the next section for information about appeals.
#### Ban Appeals:<a name="appeals"></a>
- **Please contact the mods or admins of the room in question to state your case for appealing.**
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh2QAKCRAoXmBIoSMh
smEGAPwNjkYsGth+1FiICXg+ncbD+SomKVlotyB6hYLazy6zQwD+IN3BBQ0omcSL
oeHp01espcU/iXTx8OddiNnXU5CilAI=
=fmPE
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/rSnaMOsbp2MHC3YZeQh4vjs31ikY7gGEkSUNHfwrdw2qr/ebmHBXTVxAYkN22cocTayR08gYCJuGMQceINFUgc=
trusted comment: timestamp:1680335322 file:chatrooms-rules.md hashed
/acSaW2PnzFb18JNs0aj9G2W3K8RRrT0p93b7fvQklOzaulb84DA40FJFP/uIKaypLUrLTj2nksftABl7yB8BA==
-12
View File
@@ -1,12 +0,0 @@
#!/bin/bash
rm *.pdf &> /dev/null
rm *.html &> /dev/null
rm *.odt &> /dev/null
rm *.minisig &> /dev/null
rm *.asc &> /dev/null
rm sha256sum.txt &> /dev/null
rm b2sum.txt &> /dev/null
rm -r export/{.,}* &> /dev/null
true
-7
View File
@@ -1,7 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iHUEABYKAB0WIQSDps+e9XrCW1x/XSkoXmBIoSMhsgUCZCfh2gAKCRAoXmBIoSMh
sgEEAP99oYgC1CWkGgX2u66Q7/pOl0MaTt/yTFcgY9izyJlUjwEAjWBuaEHTMp7L
SjO8Ws3mnms0BOnpiGp5pBzxoBAzfgE=
=A6Zz
-----END PGP SIGNATURE-----
-4
View File
@@ -1,4 +0,0 @@
untrusted comment: signature from minisign secret key
RUSn9xivowlq/pTBVjkP4uv5unHZNWMoXS1e0g8frI16Z7Oo13E5kkaSDRQfNY5ljVzaYTS87i+qGp2f/rajz3CFZ+hZK4XmEAs=
trusted comment: timestamp:1680335324 file:constitution.md hashed
Cj/NU4FFzb+euI7nMXsXTLJ/izkWQaFCQ9DeMDWESkBfSkg8MXOh//ip43hyALx6stZ1BcB+MM3McWZvRHVBDA==
+1
View File
@@ -0,0 +1 @@
anonymousplanet.net
+113
View File
@@ -0,0 +1,113 @@
---
title: "Anonymous Planet"
description: We are the maintainers of the Hitchhiker's Guide and the PSA Matrix space.
schema:
"@context": https://schema.org
"@type": Organization
"@id": https://www.anonymousplanet.net/
name: Anonymous Planet
url: https://www.anonymousplanet.net/about/
logo: ../media/profile.png
sameAs:
- https://github.com/Anon-Planet
- https://opencollective.com/anonymousplanetorg
- https://mastodon.social/@anonymousplanet
---
![Anonymous Planet logo](../media/profile.png){ align=right }
**Anonymous Planet** are the maintainers of the [_Hitchhiker's Guide_](../guide/index.md) and the [_PSA Community_](https://psa.anonymousplanet.net). It is responsible for maintaining the projects and code repositories. This project is part of our ongoing efforts to provide open-source tools and resources for the community, with regular updates and improvements added to the changelog.
The purpose: providing an introduction to various online tracking techniques, online ID verification techniques, and detailed guidance to creating and maintaining (truly) anonymous online identities. It is written with the hopes that good people (e.g., activists, journalists, scientists, lawyers, whistle-blowers, etc.) will be able to fight oppression, censorship and harassment! The website and projects are free (as in freedom) and not affiliated with any donor or projects discussed.
??? Note "Where do I start?"
Start either by going to [the beginning](../guide/index.md) or using the search at top right of the page. It is also available at whatever point you are in your reading.
??? Note "Notes on the journey"
This guide is a work in progress. It will probably never be "finished". You may (will) find broken links when you click on some search results and during some navigation steps. Please report these. Otherwise, most of the search functionality is a great experience and can help you find linked topics. Try to search for something in one section of the reading. It will show up in many other places.
??? Note "Disclaimer"
There might be some wrong or outdated information in this guide because no one is perfect. Your experience may vary. Remember, check regularly for an updated version of this guide. Please do your own independent, well-thought research. There is no one resource online that can provide 100% security, anonymity, and/or privacy.
This guide is a non-profit open-source initiative, licensed under Creative Commons **Attribution-NonCommercial** 4.0 International ([cc-by-nc-4.0](https://creativecommons.org/licenses/by-nc/4.0/) <sup>[[Archive.org]](https://web.archive.org/web/https://creativecommons.org/licenses/by-nc/4.0/)</sup>).
- For mirrors see [Mirrors](../mirrors/index.md) and the links at the bottom right of the page. You should see these on every page.
- For help in comparing versions see [Comparing versions](../guide/index.md#appendix-a6-comparing-versions)
Feel free to submit issues **(please do report anything wrong)** using GitHub Issues at: <https://github.com/Anon-Planet/thgtoa/issues>. We also accept Merge Requests (MR) from our Gitlab and many other places. Do not hesitate to report issues and suggestions!
??? tip "Discuss ideas on Matrix for real-time chat"
We offer a Matrix.org hosted space of our own. Check it out!
- Read [the rules](https://psa.anonymousplanet.net/), please
- Matrix Room: https://matrix.to/#/#nth:anonymousplanet.net
- Matrix Space: https://matrix.to/#/#psa:anonymousplanet.net
- Admins: @daskolburn:thomcat.rocks and @thehidden:tchncs.de
???+ tip "Follow us on"
- Twitter at <https://twitter.com/AnonyPla>
- Mastodon at <https://mastodon.social/@anonymousplanet>
To contact me, see the updated information on the website or send an e-mail to <contact@anonymousplanet.net>
**Please consider [donating](../guide/index.md#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.**
???+ example "Recommended Reading"
Some of those resources may, in order to sustain their project, contain or propose:
- Sponsored commercial content
- Monetized content through third party platforms (such as YouTube)
- Affiliate links to commercial services
- Paid Services such as consultancy
- Premium content such as ad-free content or updated content
- Merchandising
_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 (<https://github.com/techlore-official/go-incognito> <sup>[[Archive.org]](https://web.archive.org/web/https://github.com/techlore-official/go-incognito)</sup>) as an introduction before going further: <https://www.youtube.com/playlist?list=PL3KeV6Ui_4CayDGHw64OFXEPHgXLkrtJO> <sup>[[Invidious]](https://yewtu.be/playlist?list=PL3KeV6Ui_4CayDGHw64OFXEPHgXLkrtJO)</sup>. 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.
_Anonymous Planet_ **does not** participate in any sponsoring, endorsement, advertising, or other affiliate programs for any entity. We only rely on anonymous donations in a closed, transparent loop system.
??? tip "Privacy related"
- AnarSec: <https://www.anarsec.guide/>
- EFF Surveillance Self-Defense: <https://ssd.eff.org/>
- Prism-Break: <https://prism-break.org/>
- Privacy Guides: <https://privacyguides.org>
- Techlore: <https://techlore.tech>
- The New Oil: <https://thenewoil.org>
- PrivacyTools.io: <https://privacytools.io>
??? tip "Blogs and personal websites"
- CIA Officer's Blog: <https://officercia.mirror.xyz/>
- Continuing Ed: <https://edwardsnowden.substack.com/>
- Madaidan's Insecurities: <https://madaidans-insecurities.github.io/>
- Seirdy's Home: <https://seirdy.one/>
??? tip "Useful resources"
- KYC? Not me: <https://kycnot.me/>
- Library Genesis: <https://en.wikipedia.org/wiki/Library_Genesis> <sup>[[Wikiless]](https://wikiless.com/wiki/Library_Genesis)</sup> (see their latest known URL in the Wikipedia article)
- Real World Onion Sites: <https://github.com/alecmuffett/real-world-onion-sites>
- Sci-Hub <https://en.wikipedia.org/wiki/Sci-Hub> <sup>[[Wikiless]](https://wikiless.com/wiki/Sci-Hub)</sup> (see their latest known URL in the main Wikipedia article)
- Terms of Service, Didn't Read: <https://tosdr.org>
- Whonix Documentation: <https://www.whonix.org/wiki/Documentation>
??? note "We are not affiliated with Anonymous or Riseup"
One or two of our community members uses or has used the resources of Riseup. We are not affiliated with Riseup in any manner.
We also hold **no affiliation** with the [Anonymous](https://en.wikipedia.org/wiki/Anonymous_(hacker_group)) <sup>[[Wikiless]](https://wikiless.com/wiki/Anonymous_(hacker_group))</sup> <sup>[[Archive.org]](https://web.archive.org/web/https://en.wikipedia.org/wiki/Anonymous_(hacker_group))</sup> hacker collective.
## License
!!! Danger ""
:fontawesome-brands-creative-commons: :fontawesome-brands-creative-commons-by: :fontawesome-brands-creative-commons-nd: This guide is an open-source non-profit initiative, licensed under [Creative Commons Attribution-NonCommercial 4.0 International](https://github.com/Anon-Planet/thgtoa/blob/master/LICENSE.md) and is not sponsored/endorsed by any commercial/governmental entity. This means that you are free to use our guide for pretty much any purpose excluding commercially as long as you do attribute it. There are no ads or any affiliate links.
+106
View File
@@ -0,0 +1,106 @@
---
title: "Release Notes"
description: "Release Notes"
schema:
"@context": https://schema.org
"@type": Organization
"@id": https://www.anonymousplanet.net/
name: Anonymous Planet
url: https://www.anonymousplanet.net/authors/
logo: ../media/profile.png
sameAs:
- https://github.com/Anon-Planet
- https://opencollective.com/anonymousplanetorg
- https://mastodon.social/@anonymousplanet
---
# Release Notes
Notable changes to the guide and its tooling. Follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
---
## [v1.2.4]
!!! Note "Meta"
- Rename workflows (GH - now we can know the order)
!!! Note "Changed"
- Change the repo URL for our tor mirror
- Fix recommended reading admonition
- Refactoring some things and removing others
- More meta changes to the pipeline
- Rewrite developer guide for current pipeline
!!! Note "Fixed"
- Fix an inline reference
- Use the Anonymous Planet RSK for releases (we used the MSK for testing)
- Prevent history dump and filter noise commits
- Actually save per-page PDFs for qpdf, not PNGs
- Fail fast with helpful message if pdftoppm or qpdf missing
## [v1.2.3]
CI/CD pipeline split into independent stages, dark PDF quality improved, release signing automated, and the changelog now updates itself on every build. Skipping v1.2.2 which was a placeholder and contained broken Python unsuitable for a tag/release.
???+ tip "Added"
- **Dark mode PDF** (`scripts/convert.py`): pixel-level converter replaces the broken `--prefers-color-scheme=dark` Chromium flag. Produces a 200 DPI hacker-themed PDF (`#1f1f31` background, `#e0e0e0` text, `#5e8bde` links) with batched page processing to avoid OOM on large documents.
- **Three independent CI workflows** replacing the old monolithic `build-sign-release.yml`:
- `01-build.yml`: builds PDFs and uploads them as an artifact; no secrets required, can be re-run freely.
- `02-sign.yml`: downloads the PDF artifact, computes SHA-256 and BLAKE2b hashes, GPG-signs all outputs, and uploads a `signatures` artifact. Can be re-run against any historical build.
- `03-release.yml`: downloads both artifacts, uploads to VirusTotal, and publishes a tagged GitHub Release with all 12 assets attached. Can be triggered manually against any previous sign run.
- **`scripts/update_changelog.py`**: reads `git log` since the last version tag, categorises commits by conventional-commit prefix, and prepends a new entry to this file automatically after each successful build.
- **`04-changelog.yml`** workflow: commits the auto-generated changelog entry back to `main` after every build, with `dry_run` and `manual_version` dispatch inputs for safe local testing.
- **`scripts/tag_release.py`**: interactive guided helper for maintainers to create GPG-signed annotated tags. Checks clean tree and branch, auto-increments the version, pulls the message from the changelog, resolves the release signing key, creates and verifies the tag, then prints the push command.
- **`docs/code/develop.md`**: full developer reference covering prerequisites, local build instructions, the pipeline flow, all required GitHub Secrets, the release process, verification steps, and a troubleshooting section for every known CI failure mode.
!!! warning "Changed"
- `build-sign-release.yml` deprecated (now removed) - push triggers removed, manual dispatch only. Will be deleted once in-flight runs complete.
- The full pipeline (build → sign → release → changelog) now chains automatically via `workflow_run` on every push to `main`.
- GPG signing uses `--pinentry-mode loopback` and `--passphrase-fd 0` to avoid interactive prompts on headless runners.
- VirusTotal scans moved to the release stage so they run once per release, not once per build.
- `.gitignore` updated to track `.b2` per-file hash files alongside existing `.sha256` and `.sig` entries.
- Stale information removed from the guide; deprecated ODT section in Appendix A6 commented out.
- Footer copyright information corrected.
!!! bug "Fixed"
- `_save_images_as_pdf` in `convert.py` was passing raw PNG files to `qpdf --pages`, which only accepts PDF inputs. Fixed by quantizing each page to palette mode (256 colours, FASTOCTREE) and saving as a single-page PDF before merging.
- `convert.py` now fails immediately with install instructions if `pdftoppm` or `qpdf` are missing, instead of crashing with an unhelpful `FileNotFoundError`.
- Pillow `KeyError: 'JPEG'` on CI resolved by installing `mkdocs-material[imaging]` and using palette-mode PDF encoding instead of RGB+JPEG.
- Orphaned footnote citations `[^536]` and `[^537]` (Australian privacy law and the Identify and Disrupt Act) restored at the key disclosure law paragraph in the guide.
- Broken internal links and mismatched cross-references throughout the guide corrected.
---
## [v1.2.1]
First automated PDF build and the start of the CI pipeline.
???+ tip "Added"
- `scripts/build_guide_pdf.py`: builds the MkDocs site and renders the full guide to a single PDF via headless Chromium (Chrome or Edge). Supports `--dark`, `--light`, and `--both` modes.
- GitHub Actions workflow that installs Chromium, runs the build script, and uploads `export/thgtoa.pdf` as an artifact on every push to `main` or manual dispatch.
- `docs/stylesheets/extra.css` for shared site styling.
- This changelog.
!!! warning "Changed"
- `README.md` updated with instructions for local PDF export and a note about the GitHub Actions artifact.
- `.gitignore` updated to exclude local build outputs (`export/`, `site/`, `_site_test/`).
!!! bug "Fixed"
- Broken reference-style internal links throughout `docs/guide/index.md` replaced with correct fragment links.
- Broken footnote marker on the "free (unallocated) space" list item in the guide.
---
[v1.2.4]: https://github.com/Anon-Planet/thgtoa/releases/tag/v1.2.4
[v1.2.3]: https://github.com/Anon-Planet/thgtoa/releases/tag/v1.2.3
[v1.2.1]: https://github.com/Anon-Planet/thgtoa/releases/tag/v1.2.1
+404
View File
@@ -0,0 +1,404 @@
# Developer Guide
This page covers everything you need to contribute to the project, run the build pipeline locally, configure GitHub Secrets, and publish a release.
---
## Prerequisites
Install these before anything else.
=== "Linux / macOS"
```bash
# Python 3.11+
python3 --version
# poppler (pdftoppm) and qpdf
sudo apt install poppler-utils qpdf # Debian/Ubuntu
brew install poppler qpdf # macOS
# GPG
sudo apt install gnupg # Debian/Ubuntu
brew install gnupg # macOS
# Python dependencies
pip install "mkdocs-material[imaging]" pillow numpy
```
=== "Windows"
```powershell
# Python 3.11+ from https://python.org
# poppler: download from https://github.com/oschwartz10612/poppler-windows/releases
# Extract and add the bin\ folder to PATH
# qpdf: download from https://github.com/qpdf/qpdf/releases
# Extract and add the bin\ folder to PATH
# GPG: download Gpg4win from https://gpg4win.org
# Python dependencies
pip install "mkdocs-material[imaging]" pillow numpy
```
You also need **Google Chrome** or **Microsoft Edge** installed for the light-mode PDF build (headless Chromium).
---
## Repository layout
```
.github/
workflows/
01-build.yml # builds PDFs, uploads artifact
02-sign.yml # hashes + GPG signs, uploads signatures artifact
03-release.yml # publishes GitHub Release with all assets
04-changelog.yml # prepends a new entry to docs/changelog/index.md
publish.yml # deploys MkDocs site to GitHub Pages
docs/
guide/index.md # the guide (single Markdown file)
changelog/ # release notes
code/ # this page
export/ # PDF output (PDFs gitignored; .sha256, .b2sum, .asc tracked)
pgp/ # public signing keys
scripts/
build_guide_pdf.py # MkDocs + Chromium PDF builder
convert.py # pixel-based dark mode PDF converter
update_changelog.py # auto-generates changelog entries from git log
setup_workflow.py # GitHub Secrets setup assistant
verify_pdf.py # signature verification helper
archived/
tag_release.py # ARCHIVED - GPG tag helper (not used in current flow)
```
---
## Building locally
### Build both PDFs
```bash
python scripts/build_guide_pdf.py --both
```
This builds the MkDocs site, renders it to `export/thgtoa.pdf` via headless Chromium, then calls `scripts/convert.py` to produce `export/thgtoa-dark.pdf`.
| Flag | Effect |
|------|--------|
| `--both` | Light PDF then dark PDF |
| (no flag) | Light PDF only |
| `--dark` | Dark PDF only (light PDF must already exist) |
### Build only the dark PDF from an existing light PDF
```bash
python scripts/convert.py export/thgtoa.pdf export/thgtoa-dark.pdf
```
Options:
| Flag | Default | Description |
|------|---------|-------------|
| `--dpi` | `200` | Rasterization DPI. 150 = smaller file, 300 = sharper but slow |
| `--batch-size` | `50` | Pages per batch. Reduce if you hit OOM |
| `--bg` | `1f1f31` | Background colour (hex) |
| `--text` | `e0e0e0` | Body text colour (hex) |
| `--link` | `5e8bde` | Link / blue element colour (hex) |
### Preview the MkDocs site
```bash
mkdocs serve
```
Opens at `http://127.0.0.1:8000`.
---
## CI/CD pipeline overview
The pipeline is fully manual after the initial build - no step automatically triggers the next. This prevents version mismatches between what was built, what was signed, and what gets released. The workflows are numbered to help guide you.
```
push to main (or manual trigger)
01-build.yml
Builds thgtoa.pdf + thgtoa-dark.pdf.
Uploads artifact: pdfs
Note the run ID.
│ # manually trigger 02-sign.yml with the build run ID
02-sign.yml
Downloads pdfs artifact. Hashes (SHA-256 + BLAKE2b) and GPG-signs
all files. Commits export/ back to main. Uploads artifacts:
signatures, pdfs-signed
Note the run ID.
│ # manually trigger 03-release.yml with the sign run ID
03-release.yml
Downloads signatures + pdfs-signed artifacts. Runs VirusTotal.
Creates GitHub Release tagged release-YYYYMMDD-<short-sha>.
│ # manually trigger 04-changelog.yml with the version string
04-changelog.yml
Runs update_changelog.py, prepends a new ## [vX.Y.Z] entry,
commits back to main.
```
Each stage is independent. If signing fails (e.g. an expired/revoked key, other problems in CI), re-run only `02-sign.yml` pointing at the existing build artifact - no need to rebuild the PDFs.
!!! warning "Before you push"
- Make sure the working tree is clean (`git status`)
- Run `mkdocs build` locally if you changed `docs/` to catch broken links before CI does
- If you added new footnotes, verify they have both a definition `[^N]:` and at least one inline citation `[^N]`
---
## Release process (step by step)
### 1. Trigger a build
Push to `main` - `01-build.yml` runs automatically when `docs/`, `mkdocs.yml`, or `scripts/` change. You can also trigger it manually from **Actions → Build PDFs → Run workflow**.
Once it completes successfully, **note the run ID** from the URL or the Actions list.
---
### 2. Sign the PDFs
Go to **Actions → Sign PDFs → Run workflow**.
| Input | Value |
|-------|-------|
| `build_run_id` | The run ID from step 1 |
`02-sign.yml` will:
- Download the PDFs artifact from the build run
- Compute SHA-256 and BLAKE2b hashes, writing `thgtoa.pdf.sha256`, `thgtoa.pdf.b2sum`, `sha256sums.txt`, `b2sums.txt`, and the dark equivalents
- GPG-sign all PDFs and hash files, writing `.asc` detached signature files
- Commit the updated `export/` directory back to `main`
- Upload two artifacts: `signatures` and `pdfs-signed`
Once it completes successfully, **note the run ID**.
---
### 3. Publish the release
Go to **Actions → Release → Run workflow**.
| Input | Value |
|-------|-------|
| `sign_run_id` | The run ID from step 2 |
| `prerelease` | `false` for a normal release |
`03-release.yml` will:
- Download `signatures` and `pdfs-signed` artifacts from the sign run
- Upload both PDFs to VirusTotal
- Auto-generate a release tag in the format `release-YYYYMMDD-<short-sha>` (e.g. `release-20260527-abc1234`)
- Create a GitHub Release with all PDFs, hash files, and signatures attached, and the VirusTotal report URLs in the body
No version number needs to be chosen at this step - the tag is derived from the date and commit SHA, so it is always unique and always traceable.
---
### 4. Update the changelog
Go to **Actions → Update Changelog → Run workflow**.
| Input | Value |
|-------|-------|
| `version` | The human-readable version string, e.g. `v1.2.4` |
| `dry_run` | `true` to preview without committing |
`04-changelog.yml` runs `scripts/update_changelog.py`, which:
- Reads git log since the last `## [vX.Y.Z]` heading in the changelog
- Categorises commits into Added / Changed / Fixed using conventional-commit prefixes
- Prepends a new `## [version]` admonition block to `docs/changelog/index.md`
- Commits the result back to `main`
The version string is the only human decision in the release process. It goes into the changelog only - it does not affect the release tag.
!!! tip "Previewing the changelog entry"
Run with `dry_run: true` first to review the generated entry before it is committed.
---
## Release tag format
Release tags use the format `release-YYYYMMDD-<short-sha>`, for example:
```
release-20260527-abc1234
```
This format is always unique, requires no version decision at release time, and is directly traceable to the commit that was built. The version string (e.g. `v1.2.4`) is a separate, human-assigned label that lives only in the changelog.
---
## Commit message format
All commits must follow the [Conventional Commits](https://www.conventionalcommits.org) format. This is enforced by the `commitizen` pre-commit hook. Not because we want to limit cooperation with others, but becasue it promotes a cleaner Changelog; we can avoid all the noise by doing this programatically.
```
<type>(<scope>): <description>
```
Accepted types and their changelog bucket:
| Type | Bucket |
|------|--------|
| `feat`, `feature`, `add` | Added |
| `fix`, `bugfix`, `revert`, `security` | Fixed |
| `perf`, `refactor`, `change`, `chore`, `ci`, `docs`, `style`, `test`, `build` | Changed |
Examples:
```bash
feat: add dark-mode PDF export
fix(scripts): handle locked PDF on Windows
docs: update developer workflow guide
chore(ci): pin Chrome version to 120
```
---
## GitHub Secrets
Configure these in **Settings → Secrets and variables → Actions** before the pipeline will fully work. The build step requires no secrets; signing and releasing require all of them.
### `GPG_PRIVATE_KEY`
The ASCII-armored private key used to sign PDFs and hash files.
```bash
gpg --armor --export-secret-keys C3023DBEA3FB38C438BA1EEDCEC60AEDE8B992A2
```
Copy the entire output (including `-----BEGIN PGP PRIVATE KEY BLOCK-----` and the closing line) and paste it as the secret value.
!!! danger "Key security"
This is the release signing key. Only repository admins should have access to it. Never commit it to the repository or share it outside of GitHub Secrets.
### `GPG_PASSPHRASE`
The passphrase protecting the private key above. Must match exactly - no trailing newline.
### `ACTIONS_SSH_SIGNING_KEY`
An SSH private key used by `02-sign.yml` to sign the commit that pushes `export/` back to `main`. Generate a dedicated key for this:
```bash
ssh-keygen -t ed25519 -C "github-actions signing key" -f actions_signing_key
```
Add the **private key** as the `ACTIONS_SSH_SIGNING_KEY` secret, and the **public key** to the repository's Deploy Keys (Settings → Deploy Keys) with write access.
### `VT_API_KEY`
A [VirusTotal](https://www.virustotal.com) API key with file upload permissions. Used by `03-release.yml` to scan both PDFs before publishing. Get one by creating a free account at `virustotal.com` → API key under your profile. The free tier (4 lookups/minute, 500/day) is sufficient.
### `CHANGELOG_PAT`
A GitHub Personal Access Token with `contents: write` scope on this repository. Needed because `04-changelog.yml` commits back to `main` - commits made with the default `GITHUB_TOKEN` do not trigger further workflow runs (GitHub loop-prevention). A PAT bypasses this. If absent, falls back to `GITHUB_TOKEN` - the commit still happens, it just won't trigger downstream workflows.
**Creating one:** GitHub → Settings → Developer settings → Personal access tokens → Fine-grained tokens → set Contents to Read and write for this repo only.
### Secrets summary
| Secret | Required by | What happens if missing |
|--------|------------|------------------------|
| `GPG_PRIVATE_KEY` | `02-sign.yml` | Signing step fails - no `.asc` files produced |
| `GPG_PASSPHRASE` | `02-sign.yml` | GPG import succeeds but signing fails |
| `ACTIONS_SSH_SIGNING_KEY` | `02-sign.yml` | Export commit is unsigned (may fail if branch protection requires signed commits) |
| `VT_API_KEY` | `03-release.yml` | VirusTotal step fails - release is not published |
| `CHANGELOG_PAT` | `04-changelog.yml` | Falls back to `GITHUB_TOKEN` - changelog updates but commit won't trigger downstream workflows |
---
## Verifying a release
Anyone can verify the authenticity of a release download.
```bash
# Import the release signing key
gpg --import pgp/anonymousplanet-release.asc
# Verify the PDFs
gpg --verify thgtoa.pdf.asc thgtoa.pdf
gpg --verify thgtoa-dark.pdf.asc thgtoa-dark.pdf
# Verify the hash files
gpg --verify sha256sums.txt.asc sha256sums.txt
gpg --verify b2sums.txt.asc b2sums.txt
# Check the PDF hashes match
sha256sum -c sha256sums.txt
b2sum -c b2sums.txt
```
A successful verify looks like:
```txt
gpg: Signature made Sun 31 May 2026 03:23:26 AM EDT
gpg: using EDDSA key C3023DBEA3FB38C438BA1EEDCEC60AEDE8B992A2
gpg: Good signature from "Anonymous Planet Release Signing Key" [ultimate]
Primary key fingerprint: C302 3DBE A3FB 38C4 38BA 1EED CEC6 0AED E8B9 92A2
```
You can safely ignore Github, Codeberg, etc. warnings like "The email in this signature doesnt match the committer email."
```txt
λ > git tag -v v1.2.3
object cdc54d8b3bc2b286827b23921d8d4062f85295cf
type commit
tag v1.2.3
tagger nopeitsnothing <no@anonymousplanet.net> 1780212206 -0400
v1.2.3
gpg: Signature made Sun 31 May 2026 03:23:26 AM EDT
gpg: using EDDSA key C3023DBEA3FB38C438BA1EEDCEC60AEDE8B992A2
gpg: Good signature from "Anonymous Planet Release Signing Key" [ultimate]
Primary key fingerprint: C302 3DBE A3FB 38C4 38BA 1EED CEC6 0AED E8B9 92A2
```
---
## Troubleshooting
**`cairosvg` missing during MkDocs build**
Install the imaging extras: `pip install "mkdocs-material[imaging]"`. Required by the `social` plugin.
**`KeyError: 'JPEG'` in convert.py**
Pillow needs libjpeg. Reinstall after installing the system lib: `sudo apt install libjpeg-dev && pip install --force-reinstall pillow`.
**`qpdf: can't find PDF header`**
Ensure you are on the current version of `convert.py` - qpdf only accepts PDF inputs, not PNG.
**GPG signing fails on CI with `No secret key`**
The `GPG_PRIVATE_KEY` secret is missing or malformed. Re-export with `gpg --armor --export-secret-keys <fingerprint>` and paste the full block including header and footer lines.
**GPG signing fails with `Bad passphrase`**
The `GPG_PASSPHRASE` secret has a trailing space or newline. Paste it again with no surrounding whitespace.
**`03-release.yml` fails on VirusTotal**
The `VT_API_KEY` is missing, invalid, or over the rate limit (500 requests/day on the free tier). Check the secret and re-run after a few minutes.
**`02-sign.yml` fails downloading PDF artifact**
The `build_run_id` is wrong, or the artifact has expired (90-day retention). Trigger a new build and use the fresh run ID.
**Changelog already contains version X**
`update_changelog.py` will error if `MANUAL_VERSION` is set to a version already in the changelog. Choose the next version string.
**Footnote warnings from MkDocs (`link '#fnref:N' has no anchor`)**
A footnote definition `[^N]:` exists without a matching inline citation. Add the citation or remove the orphaned definition.
+24 -30
View File
@@ -1,42 +1,36 @@
##### Any opinion is welcome. ---
##### Feel free to discuss in the [discussions] section. title: Content Contributions
##### Feel free report issues in the [issues] section. ---
You can [submit bugs and feature requests](https://github.com/Anon-Planet/thgtoa/issues/new) with detailed information about your issue or idea:
### Code Free Contributions - If you'd like to propose an addition, please follow the standards outlined here.
- If you're reporting an issue, please be sure to include the expected behaviour, the observed behaviour, and steps to reproduce the problem.
#### There are multiple ways you can add to the guide:
- You can [submit bugs and feature requests](https://github.com/AnonyPla-ng/thgtoa/issues/new) with detailed information about your issue or idea:
- If you'd like to propose an addition, please follow the standards outlined here.
- If you're reporting an issue, please be sure to include the expected behaviour, the observed behaviour, and steps to reproduce the problem.
- This can require technical knowledge, but you can also get involved in conversations about bug reports and feature requests. This is a great way to get involved without getting too overwhelmed! - This can require technical knowledge, but you can also get involved in conversations about bug reports and feature requests. This is a great way to get involved without getting too overwhelmed!
- [Help fellow committers test recently submitted pull requests](https://github.com/AnonyPla-ng/thgtoa/pulls). Simply by pulling down a pull request and testing it, you can help ensure our new code contributions for stability and quality. - [Help fellow committers test recently submitted pull requests](https://github.com/Anon-Planet/thgtoa/pulls). Simply by pulling down a pull request and testing it, you can help ensure our new code contributions for stability and quality.
### Content Contributions
For those of you who are looking to add content to the guide, include the following: For those of you who are looking to add content to the guide, include the following:
##### <u>Pull Requests</u> ##### <u>Pull Requests</u>
- **Do** create a [topic branch] to work on instead of working directly on `master`. This helps to: - **Do** create a [topic branch] to work on instead of working directly on `main`. This helps to:
- Protect the process. + Protect the process.
- Ensures users are aware of commits on the branch being considered for merge. + Ensures users are aware of commits on the branch being considered for merge.
- Allows for a location for more commits to be offered without mingling with other contributor changes. + Allows for a location for more commits to be offered without mingling with other contributor changes.
- Allows contributors to make progress while a PR is still being reviewed. + Allows contributors to make progress while a PR is still being reviewed.
- **Do** follow the [50/72 rule] for Git commit messages. - **Do** follow the [50/72 rule] for Git commit messages.
- **Do** write "WIP" on your PR and/or open a [draft PR] if submitting unfinished changes.. - **Do** write "WIP" on your PR and/or open a [draft PR] if submitting unfinished changes..
- **Do** make sure the title of a draft PR makes it immediately clear that it's a draft - **Do** make sure the title of a draft PR makes it immediately clear that it's a draft
- **Do** target your pull request to the **master branch**. - **Do** target your pull request to the **main branch**.
- **Do** specify a descriptive title to make searching for your pull request easier. - **Do** specify a descriptive title to make searching for your pull request easier.
- **Don't** leave your pull request description blank. - **Don't** leave your pull request description blank.
- **Don't** abandon your pull request. Being responsive helps us land your changes faster. - **Don't** abandon your pull request. Being responsive helps us land your changes faster.
- **Don't** post questions in older closed PRs. - **Don't** post questions in older closed PRs.
- **Do** stick to the guide to find common style issues. - **Do** stick to the guide to find common style issues.
- **Don't** make mass changes (such as replacing "I" with "we") using automated serach/replace functionality. - **Don't** make mass changes (such as replacing "I" with "we") using automated serach/replace functionality.
- Search/replace doesn't understand context, and as such, will inevitably cause inconsistencies and make the guide harder to read. + Search/replace doesn't understand context, and as such, will inevitably cause inconsistencies and make the guide harder to read.
- If it's part of a larger PR, it'll also make the reviewer's life harder, as they'll have to go through manually and undo everything by hand. + If it's part of a larger PR, it'll also make the reviewer's life harder, as they'll have to go through manually and undo everything by hand.
- *If you're going to make mass changes, take the time to do it properly*. Otherwise I'll just have to undo it anyway. + _If you're going to make mass changes, take the time to do it properly_. Otherwise we'll just have to undo it anyway.
- If your change contains backslashes (`\`), wither escape them with another backslash (`\\`) or put them in a ```code block```. + If your change contains backslashes (`\`), either escape them with another backslash (`\\`) or put them in a ```code block```.
When reporting guide issues: When reporting guide issues:
@@ -49,22 +43,22 @@ When reporting guide issues:
Please split large sets of changes into multiple PRs. For example, a PR that adds Windows 11 support, removes Windows AME references, and fixes typos can be split into 3 PRs. This makes PRs easier to review prior to merging. Please split large sets of changes into multiple PRs. For example, a PR that adds Windows 11 support, removes Windows AME references, and fixes typos can be split into 3 PRs. This makes PRs easier to review prior to merging.
For an example of what *not* to do, see: <https://github.com/Anon-Planet/thgtoa/pull/51>. This PR contains enough changes to split into multiple smaller and individually-reviewable PRs. For an example of what _not_ to do, see: <https://github.com/Anon-Planet/thgtoa/pull/51>. This PR contains enough changes to split into multiple smaller and individually reviewable PRs.
### Updating PRs ### Updating PRs
While a PR is being reviewed, modifications may be made to it by the reviewer prior to merging. If this is the case, a new branch will be created for the PR's review. If you would like to submit a change to a PR that is in the process of being reviewed, *do not update the PR directly*. This will only cause merge conflicts and delay the PR from being merged. Instead, submit your changes to the PR's review branch. While a PR is being reviewed, modifications may be made to it by the reviewer prior to merging. If this is the case, a new branch will be created for the PR's review. If you would like to submit a change to a PR that is in the process of being reviewed, _do not update the PR directly_. This will only cause merge conflicts and delay the PR from being merged. Instead, submit your changes to the PR's review branch.
For an example of what *not* to do, see: <https://github.com/Anon-Planet/thgtoa/pull/51>. Instead of submitting changes to the PR directly, they should have been submitted as changes to the [PR's associated review branch](https://github.com/NobodySpecial256/thgtoa/tree/pr/51). For an example of what _not_ to do, see: <https://github.com/Anon-Planet/thgtoa/pull/51>. Instead of submitting changes to the PR directly, they should have been submitted as changes to the PR's associated review branch.
--- ---
**Thank you** for taking the few moments to read this far! You're already way ahead of the **Thank you** for taking the few moments to read this far! You're already way ahead of the
curve, so keep it up! curve, so keep it up!
[discussions]: https://github.com/AnonyPla-ng/thgtoa/discussions [discussions]: https://github.com/Anon-Planet/thgtoa/discussions
[issues]: https://github.com/AnonyPla-ng/thgtoa/issues [issues]: https://github.com/Anon-Planet/thgtoa/issues
[help fellow users with open issues]: https://github.com/AnonyPla-ng/thgtoa/issues [help fellow users with open issues]: https://github.com/Anon-Planet/thgtoa/issues
[topic branch]: http://git-scm.com/book/en/Git-Branching-Branching-Workflows#Topic-Branches [topic branch]: http://git-scm.com/book/en/Git-Branching-Branching-Workflows#Topic-Branches
[Qubes#7457]: https://github.com/QubesOS/qubes-issues/issues/7457 [Qubes#7457]: https://github.com/QubesOS/qubes-issues/issues/7457
[50/72 rule]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html [50/72 rule]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html
@@ -72,4 +66,4 @@ curve, so keep it up!
[console output]: https://docs.github.com/en/free-pro-team@latest/github/writing-on-github/creating-and-highlighting-code-blocks#fenced-code-blocks [console output]: https://docs.github.com/en/free-pro-team@latest/github/writing-on-github/creating-and-highlighting-code-blocks#fenced-code-blocks
[verification steps]: https://docs.github.com/en/free-pro-team@latest/github/writing-on-github/basic-writing-and-formatting-syntax#task-lists [verification steps]: https://docs.github.com/en/free-pro-team@latest/github/writing-on-github/basic-writing-and-formatting-syntax#task-lists
[reference associated issues]: https://github.com/blog/1506-closing-issues-via-pull-requests [reference associated issues]: https://github.com/blog/1506-closing-issues-via-pull-requests
[help fellow committers test recently submitted pull requests]: https://github.com/AnonyPla-ng/thgtoa/pulls [help fellow committers test recently submitted pull requests]: https://github.com/Anon-Planet/thgtoa/pulls
+45 -38
View File
@@ -1,80 +1,87 @@
---
title: Impressum
---
# A Constitution for an Anonymous Planet. # A Constitution for an Anonymous Planet.
To amend the rules and regulations of the network and of the PSA community, this constitution is hereby set forth. It is applicable to all the projects of the initiative, especially the Hitchhiker's Guide to Online Anonymity. All members/collaborators must abide by these lines when contributing within the context of the initiative. To amend the rules and regulations of the network and of the PSA community, this constitution is hereby set forth. It is applicable to all the projects of the initiative, especially the Hitchhiker's Guide to Online Anonymity. All members/collaborators must abide by these lines when contributing within the context of the initiative.
## Requirements ## Requirements
> Our content is licensed under **[Creative Commons Attribution NonCommercial](https://creativecommons.org/licenses/by-nc/3.0/)** to prevent commercial usage. > Content is licensed under **[Creative Commons Attribution NonCommercial](https://creativecommons.org/licenses/by-nc/3.0/)** to prevent commercial usage.
### 1. Anonymity above everything ### Anonymity above everything.
Anonymity is necessary to maintain the balance of power, specifically to help journalists, whistleblowers, lawyers, scientists, and victims of oppression. Anonymity first, even if that means using non-free and/or proprietary means. Security and privacy are second, again, even if using non-free or non-open-source and/or proprietary means. In this sense, the ends may at times justify proprietary means. Anonymity is necessary to maintain the balance of power, specifically to help journalists, whistleblowers, lawyers, scientists, and victims of oppression. Anonymity first, even if that means using non-free and/or proprietary means. Security and privacy are second, again, even if using non-free or non-open-source and/or proprietary means. In this sense, the ends may at times justify proprietary means.
### 2. Independence ### Independence.
The Anonymous Planet initiative has no affiliation with the "Anonymous" collective and does not endorse their activities. The Anonymous Planet initiative has no affiliation with the "Anonymous" collective and does not endorse their activities.
Any overlap of their activities and our guide are purely coincidental. Any overlap of their activities and our guide are purely coincidental.
### 3. Accessibility ### Accessibility.
We will strive to always keep available the following methods of reading the Hitchhiker's Guide: We will strive to always keep available the following methods of reading the Hitchhiker's Guide:
* online;
* offline (e.g., PDF, ODT, EPUB (in the future));
* via the Tor network
### 4. Freedom - online;
- offline (e.g., PDF, ODT);
- via the Tor network
### Freedom.
Maintain free, open-source, and non-commercial nature of all our projects. This does not mean proprietary and/or closed-source tools won't be recommendeded. All scientific knowledge should be free for anyone and we support and encourage Sci-Hub and LibGen. Any attempt to erode the freedom of information and flow of knowledge of our projects, in any manner, is hostile. Maintain free, open-source, and non-commercial nature of all our projects. This does not mean proprietary and/or closed-source tools won't be recommendeded. All scientific knowledge should be free for anyone and we support and encourage Sci-Hub and LibGen. Any attempt to erode the freedom of information and flow of knowledge of our projects, in any manner, is hostile.
### 5. Verifiability, falsifiability and reproducibility ### Verifiability, falsifiability and reproducibility.
We will make every effort to be transparent about any and all bias we have. We will make every effort to be transparent about any and all bias we have.
Anyone claiming to be unbiased is lying, therefore we will not falsely claim to be. Anyone claiming to be unbiased is lying, therefore we will not falsely claim to be.
All our content shall be verifiable, reproducible and fact-checked: All our content shall be verifiable, reproducible and fact-checked:
- academic references (e.g., studies, papers, and peer reviewed publications);
- reputable media references (e.g., articles, videos, and documentaries);
- official documentation (e.g., manuals, field guides, and technical documents);
- renowned and reputable expert review;
- direct testing by our own collaborators for falsifiablity
### 6. Innocence - academic references (e.g., studies, papers, and peer reviewed publications);
Suspected offenders are innocent until proven guilty, with zero tolerance for abuse of power or position. - reputable media references (e.g., articles, videos, and documentaries);
- official documentation (e.g., manuals, field guides, and technical documents);
- renowned and reputable expert review;
- direct testing by our own collaborators for falsifiablity
### Innocence.
Suspected offenders are innocent until proven guilty, with zero tolerance for abuse of power or position.
Any accusing/moderating member is: Any accusing/moderating member is:
- Subject to the burden of proving the wrong-doing of the offender. - Subject to the burden of proving the wrong-doing of the offender.
- Required to motivate any sanction. - Required to motivate any sanction.
Any offender has the right to: Any offender has the right to:
- Face their accuser (know who is accusing them). - Face their accuser (know who is accusing them).
- Appeal sanctions to an uninvolved third party. - Appeal sanctions to an uninvolved third party.
- Participate in their own incrimination (the burden of proof lies with the accuser). - Participate in their own incrimination (the burden of proof lies with the accuser).
- Due process of the above. - Due process of the above.
### 7. Freedom of thought ### Freedom of thought.
Open-minded and pragmatic - with no tolerance for gatekeeping. Open-minded and pragmatic - with no tolerance for gatekeeping.
Critical thinking and fact-checking are strongly encouraged; we welcome criticism including of a harsh nature (excluding ad-hominem and slurs). Critical thinking and fact-checking are strongly encouraged; we welcome criticism including of a harsh nature (excluding ad-hominem and slurs).
### 8. We do not tolerate intolerance ### We do not tolerate intolerance.
See the [Paradox of Tolerance](https://en.wikipedia.org/wiki/Paradox_of_tolerance), which includes hate speech. See the [Paradox of Tolerance](https://en.wikipedia.org/wiki/Paradox_of_tolerance), which includes hate speech.
### 9. No analytics ### No analytics.
Note that, while we will never use analytics, the (now free) platforms hosting our content might be gathering such analytics outside of our control, such as Github pages. As the initiative progresses, we will strive to avoid these as soon as possible. Note that, while we will never use analytics, the (now free) platforms hosting our content might be gathering such analytics outside of our control, such as Github pages. As the initiative progresses, we will strive to avoid these as soon as possible.
### 10. No profit ### No profit.
Any excess donations will only be used to support our main projects first and possibly support other intitiatives (like hosting Tor exit nodes). In all cases, we abide by the following principles: Any excess donations will only be used to support our main projects first and possibly support other intitiatives (like hosting Tor exit nodes). In all cases, we abide by the following principles:
- Funding transparency (i.e., all donations, spendings, source code, and future goals will be public). - Funding transparency (i.e., all donations, spendings, source code, and future goals will be public).
- Acceptance of donations from any entity anonymously or acknowledged (opt-in) will not have any influence on our content. - Acceptance of donations from any entity anonymously or acknowledged (opt-in) will not have any influence on our content.
- No sponsored content. - No sponsored content.
- No affiliate links. - No affiliate links.
- No product placements. - No product placements.
- No advertising. - No advertising.
**Disclaimer: it is possible that, coincidentally, a donation could correlate with a recommendation. It will then be clearly stated that while the donation was welcome, the donating entity will not be gaining visibility/coverage/endorsement/recommendations due to such a donation.** **Disclaimer: it is possible that, coincidentally, a donation could correlate with a recommendation. It will then be clearly stated that while the donation was welcome, the donating entity will not be gaining visibility/coverage/endorsement/recommendations due to such a donation.**
## Core Goals. ## Core Goals.
0. Help people in need of anonymity to maintain both their physical and digital safety. Help people in need of anonymity to maintain both their physical and digital safety.
## Non-Goals: ## Non-Goals.
0. Help any people who are using this knowledge for bad purposes. Helping people takes precedence and we know our content can be used nefariously. Our initiative believes in having one good person given an anonymous voice, safely, is worth the risk of having several using our content for evil. As we do adhere to a fair "rule of law" system which, having 9 criminals and 1 innocent person free, is much better than having one innocent person in prison among 9 criminals. Help any people who are using this knowledge for bad purposes. Helping people takes precedence and we know our content can be used nefariously. Our initiative believes in having one good person given an anonymous voice, safely, is worth the risk of having several using our content for evil. As we do adhere to a fair "rule of law" system which, having 9 criminals and 1 innocent person free, is much better than having one innocent person in prison among 9 criminals.
**Yours faithfully, Anonymous Planet** **Yours faithfully, Anonymous Planet**
+111 -107
View File
@@ -1,107 +1,111 @@
Donations to support this project are welcome as the funding of this project is limited. ---
Those donations are mainly used to pay for Tor onion hosting (VPS), mail hosting, domain name registration, and to maintain/run Tor exit nodes. **No profit is ever being made**. title: How to Get Involved
All donations and spendings are being logged here below for transparency. ---
There are multiple ways you can add to the guide. Donations to support this project are welcome but are entirely optional. Those donations are mainly used to pay for Tor onion hosting (VPS), mail hosting, domain name registration, and to maintain/run Tor exit nodes. **No profit is ever being made**. All donations and spendings are being logged here below for transparency. Some costs for load balancer servers have been omitted for privacy reasons, but are not paid for with existing Anonymous Planet finances.
<span style="color: red">**Current project donation goals:**</span>
<span style="color: red">**Current project donation goals:**</span>
- <del>Funding for a VPS for hosting our .onion website</del>: **done**
- <del>Funding for extending our domain name</del>: **Recovery of original domain secured until 2029** - <del>Funding for a VPS for hosting our .onion website</del>: **done**
- Funding for a decent mail hosting - <del>Funding for extending our domain name</del>: **Recovery of original domain secured until 2029**
- Funding for a VPS for hosting various services - Funding for a decent mail hosting
- Funding for a VPS for hosting various services
**Donate anonymously using Monero (XMR):**
## Donate using Monero (XMR)
Here is the address for the main project:
Total Monero donations received: **7.101317184263 XMR**
- ```46crzj54eL493BA68pPT4A1MZyKQxrpZu9tVNsfsoa5nT85QqCt8cDTfy1fcTH1oyjdtUbhmpZ4QcVtfEXB337Ng6PS21ML``` Total Monero remaining: **2.059336719397 XMR**
![][1] Here is the address for the main project:
**Donate using Bitcoin (BTC):** ```46crzj54eL493BA68pPT4A1MZyKQxrpZu9tVNsfsoa5nT85QqCt8cDTfy1fcTH1oyjdtUbhmpZ4QcVtfEXB337Ng6PS21ML```
Here are the addresses for the main project: ![][1]
- SegWit address: ```bc1qp9g2c6dquh5lnvft50esxsl97kupdpyqyd4kkv``` ## Donate using Bitcoin (BTC)
- Legacy address: ```1BBgBSVe6w4DWq2BewUQhDEjsNovhfPswD```
Total Bitcoin donations received: **1.89353 mBTC**
![][2]____________________![][3] Total Bitcoin remaining: **0 mBTC**
Here are the addresses for the main project:
**Thank you for any contribution. All donations will be mentioned within this file.**
SegWit address: ```bc1qp9g2c6dquh5lnvft50esxsl97kupdpyqyd4kkv```
Donations log (UTC date/time): Legacy address: ```1BBgBSVe6w4DWq2BewUQhDEjsNovhfPswD```
- 2021-02-06 16:48: 0.1 XMR ![][2]_____________________![][3]
- 2021-03-15 00:09: 1.24869 mBTC
- 2021-03-15 08:41: 0.07896 mBTC ## Content Contributions
- 2021-03-31 16:28: 1 XMR (Special thanks for this very generous donation)
- 2021-04-03 22:31: 0.5 XMR (Special thanks for this very generous donation) You can easily contribute code or information suggestions at our code repositories listed at the bottom of the website and on the [Mirrors](../mirrors/index.md) tab above. We have many options that are easily accessible. Please follow our [contributing guidelines](../code/index.md) and use good PR syntax.
- 2021-05-07 06:22: 0.010433355105 XMR
- 2021-06-16 03:05: 0.03 XMR **Thank you for any contribution. All donations will be mentioned on this page.**
- 2021-06-27 18:39: 0.05 XMR
- 2021-07-12 07:24: 0.02 XMR ### Donations log
- 2021-07-16 14:31: 0.1 mBTC
- 2021-07-20 21:01: 0.058981 XMR - 2021-02-06 16:48: 0.1 XMR
- 2021-07-24 15:16: 0.000000000001 XMR - 2021-03-15 00:09: 1.24869 mBTC
- 2021-07-25 02:37: 0.000000000001 XMR - 2021-03-15 08:41: 0.07896 mBTC
- 2021-08-03 00:17: 0.04119191113 XMR - 2021-03-31 16:28: 1 XMR (Special thanks for this very generous donation)
- 2021-08-07 15:05: 0.206328241262 XMR - 2021-04-03 22:31: 0.5 XMR (Special thanks for this very generous donation)
- 2021-08-10 11:42: 0.21 mBTC - 2021-05-07 06:22: 0.010433355105 XMR
- 2021-08-13 00:25: 0.25 XMR - 2021-06-16 03:05: 0.03 XMR
- 2021-08-14 04:58: 0.25588 mBTC - 2021-06-27 18:39: 0.05 XMR
- 2021-08-30 17:32: 0.000000000001 XMR - 2021-07-12 07:24: 0.02 XMR
- 2021-09-17 14:34: 0.018 XMR - 2021-07-16 14:31: 0.1 mBTC
- 2021-10-01 06:23: 0.000000002137 XMR - 2021-07-20 21:01: 0.058981 XMR
- 2021-10-02 19:16: 1 XMR (Special thanks for this very generous donation) - 2021-07-24 15:16: 0.000000000001 XMR
- 2021-10-17 15:40: 0.02 XMR - 2021-07-25 02:37: 0.000000000001 XMR
- 2021-10-18 16:06: 0.1958 XMR - 2021-08-03 00:17: 0.04119191113 XMR
- 2021-11-12 20:42: 0.02 XMR - 2021-08-07 15:05: 0.206328241262 XMR
- 2021-11-14 18:28: 0.018 XMR - 2021-08-10 11:42: 0.21 mBTC
- 2021-12-03 21:38: 0.10134722595 XMR - 2021-08-13 00:25: 0.25 XMR
- 2021-12-16 01:16: 1 XMR (Special thanks for this very generous donation) - 2021-08-14 04:58: 0.25588 mBTC
- 2021-12-16 18:06: 0.017 XMR - 2021-08-30 17:32: 0.000000000001 XMR
- 2022-01-09 17:54: 0.045918219893 XMR - 2021-09-17 14:34: 0.018 XMR
- 2022-01-15 17:35: 0.014 XMR - 2021-10-01 06:23: 0.000000002137 XMR
- 2022-01-24 21:08: 0.010786 XMR - 2021-10-02 19:16: 1 XMR (Special thanks for this very generous donation)
- 2022-01-26 12:07: 0.010391 XMR - 2021-10-17 15:40: 0.02 XMR
- 2022-02-03 19:59: 0.013013984 XMR - 2021-10-18 16:06: 0.1958 XMR
- 2022-02-18 17:27: 0.019 XMR - 2021-11-12 20:42: 0.02 XMR
- 2022-03-14 10:25: 0.0139887 XMR - 2021-11-14 18:28: 0.018 XMR
- 2022-07-30 03:51: 0.0222 XMR - 2021-12-03 21:38: 0.10134722595 XMR
- 2022-09-28 05:13: 2 XMR - 2021-12-16 01:16: 1 XMR (Special thanks for this very generous donation)
- 2022-08-19 : SimpleLogin.io Premium Account for life (**This is not sponsoring/advertising**) - 2021-12-16 18:06: 0.017 XMR
- 2022-09-19 : 0.345024603905 XMR (Thanks to Rick Deckhard which is also one of our contributors) - 2022-01-09 17:54: 0.045918219893 XMR
- 2022-01-15 17:35: 0.014 XMR
Total Monero donations received: **7.101317184263 XMR** - 2022-01-24 21:08: 0.010786 XMR
Total Bitcoin donations received: **1.89353 mBTC** - 2022-01-26 12:07: 0.010391 XMR
- 2022-02-03 19:59: 0.013013984 XMR
Spendings log (UTC date): - 2022-02-18 17:27: 0.019 XMR
- 2022-03-14 10:25: 0.0139887 XMR
- 2021-03-12: 0.08181086 XMR (+fees) for domain anonymousplanet.org (1 year) - 2022-07-30 03:51: 0.0222 XMR
- 2021-03-16: 1.20179 mBTC (+fees) for domain anonymousplanet.org renewal (extension 3 years totalling 4 years) - 2022-09-28 05:13: 2 XMR
- 2021-04-01: 0.8317 XMR (+fees) for basic VPS for Tor Mirror hosting - 2022-08-19: SimpleLogin.io Lifetime Premium
- <del>2021-04-05: 0.99367 mBTC (+fees +exchange from XMR to BTC) for Mail Hosting (1 year): <span style="color: red">**Lost**</span> - 2022-09-19: 0.345024603905 XMR (Special thanks to a previous maintainer)
- <del>2021-04-13: 0.71895 mBTC (+fees +exchange from XMR to BTC) for Mail Hosting (extension to 2 years)</del>: <span style="color: red">**Lost**</span>
- 2021-04-25: 0.02892 mBTC (Wallet to Wallet transfer fee) #### Spendings log
- 2021-07-13: 0.78463 mBTC (+fees +exchange from BTC to XMR) for consoliation
- <del>2021-07-13: 0.067261698061 XMR (+fees) for a Tor Exit Node (01) Hosting (3 months)</del>: <span style="color: red">**Lost**</span> - 2021-03-12: 0.08181086 XMR (+fees) for domain anonymousplanet.net (1 year)
- <del>2021-07-15: 0.151959953047 XMR (+fees) for a Tor Exit Node (02) Hosting (6 months)</del>: <span style="color: red">**Lost**</span> - 2021-03-16: 1.20179 mBTC (+fees) for domain anonymousplanet.net renewal (extension 3 years totalling 4 years)
- <del>2021-08-16: 0.253331471239 XMR (+fees) for a Tor Exit Node (03) Hosting (12 months)</del>: <span style="color: red">**Lost**</span> - 2021-04-01: 0.8317 XMR (+fees) for basic VPS for Tor Mirror hosting
- 2021-08-18: AtomicSwap conversion from remaining mBTC (-0.56588) to XMR (+0.081904862179) - <del>2021-04-05: 0.99367 mBTC (+fees +exchange from XMR to BTC) for Mail Hosting (1 year): <span style="color: red">**Lost**</span>
- <del>2021-08-19: 0.0644 XMR (+fees) for Mail Hosting extension</del>: <span style="color: red">**Lost**</span> - <del>2021-04-13: 0.71895 mBTC (+fees +exchange from XMR to BTC) for Mail Hosting (extension to 2 years)</del>: <span style="color: red">**Lost**</span>
- <del>2021-09-18: 0.246971511836 XMR (+fees) for renewal 1 year of Tor Exit Node 01</del>: <span style="color: red">**Lost**</span> - 2021-04-25: 0.02892 mBTC (Wallet to Wallet transfer fee)
- 2021-10-04: 0.26954 XMR (+fees) for securing the anonymousplanet.org domain name until 2029 - 2021-07-13: 0.78463 mBTC (+fees +exchange from BTC to XMR) for consolidation
- <del>2021-10-06: 0.236073464623 XMR (+fees) for a Tor Exit Node (04) Hosting (12 months)</del>: <span style="color: red">**Lost**</span> - <del>2021-07-13: 0.067261698061 XMR (+fees) for a Tor Exit Node (01) Hosting (3 months)</del>: <span style="color: red">**Lost**</span>
- <del>2021-10-18: 0.01952 XMR (+fees) for testing a new VPS hosting provider (Privex.io) for one month</del>: <span style="color: red">**Ended**</span> - <del>2021-07-15: 0.151959953047 XMR (+fees) for a Tor Exit Node (02) Hosting (6 months)</del>: <span style="color: red">**Lost**</span>
- <del>2021-10-30: 0.240787814495 XMR (+fees) for a Synapse Hosting VPS (12 months) with bots to help grow the community. This is a test program that will be converted into a Tor Exit Node in case of failure</del>: <span style="color: red">**Lost**</span> - <del>2021-08-16: 0.253331471239 XMR (+fees) for a Tor Exit Node (03) Hosting (12 months)</del>: <span style="color: red">**Lost**</span>
- <del>2022-01-01: 0.28055816111 XMR (+fees) for renewal 1 year of Tor Exit Node 02</del>: <span style="color: red">**Lost**</span> - 2021-08-18: AtomicSwap conversion from remaining mBTC (-0.56588) to XMR (+0.081904862179)
- <del>2022-02-02: 0.966793601024 XMR (+fees) for sponsoring a related external special project in line with the Universal Declaration of Human Rights (details will remain indisclosed to protect project members)</del>: <span style="color: red">**Lost**</span> - <del>2021-08-19: 0.0644 XMR (+fees) for Mail Hosting extension</del>: <span style="color: red">**Lost**</span>
- 2022-07-11: 0.503232784687 XMR (+fees) for 1984.is VPS (12 months): - <del>2021-09-18: 0.246971511836 XMR (+fees) for renewal 1 year of Tor Exit Node 01</del>: <span style="color: red">**Lost**</span>
- 2022-09-19: 0.345024603905 XMR (+fees) for upgrading VPS RAM/Disk - 2021-10-04: 0.26954 XMR (+fees) for domain anonymousplanet.net extension until 2029
- <del>2021-10-06: 0.236073464623 XMR (+fees) for a Tor Exit Node (04) Hosting (12 months)</del>: <span style="color: red">**Lost**</span>
Total Monero remaining: **2.059336719397 XMR** - <del>2021-10-18: 0.01952 XMR (+fees) for testing a new VPS hosting provider (Privex.io) for one month</del>: <span style="color: red">**Ended**</span>
Total Bitcoin remaining: **0 mBTC** - <del>2021-10-30: 0.240787814495 XMR (+fees) for a Synapse Hosting VPS (12 months) with bots to help grow the community. This is a test program that will be converted into a Tor Exit Node in case of failure</del>: <span style="color: red">**Lost**</span>
- <del>2022-01-01: 0.28055816111 XMR (+fees) for renewal 1 year of Tor Exit Node 02</del>: <span style="color: red">**Lost**</span>
[1]: media/monero.png - <del>2022-02-02: 0.966793601024 XMR (+fees) to sponsor a special project (w/ Universal Declaration of Human Rights)</del>: <span style="color: red">**Lost**</span>
[2]: media/bitcoin-segwit.png - <del>2022-07-11: 0.503232784687 XMR (+fees) for 1984.is VPS (12 months)</del>: <span style="color: red">**Ended**</span>
[3]: media/bitcoin-legacy.png - <del>2022-09-19: 0.345024603905 XMR (+fees) for upgrading VPS RAM/Disk</del>: <span style="color: red">**Ended**</span>
[1]: ../media/monero.png
[2]: ../media/bitcoin-segwit.png
[3]: ../media/bitcoin-legacy.png
+12899 -13853
View File
File diff suppressed because it is too large Load Diff
+50
View File
@@ -0,0 +1,50 @@
---
title: ""
description: We are the maintainers of the Hitchhiker's Guide and the PSA Matrix space.
schema:
"@context": https://schema.org
"@type": Organization
"@id": https://www.anonymousplanet.net/
name: Anonymous Planet
url: https://www.anonymousplanet.net/authors/
logo: ../media/profile.png
sameAs:
- https://github.com/Anon-Planet
- https://opencollective.com/anonymousplanetorg
- https://mastodon.social/@anonymousplanet
---
# **Hello, and welcome to the Hitchhiker's Guide.**
You'll use these keys to [**verify the checksum and GPG signature of all files for authenticity**](verify/index.md).
Please share this project if you enjoy it and you think it might be useful to others.
![Anonymous Planet logo](media/profile.png){ align=right }
??? tip "GPG Signing Keys for Verification"
<div style="padding: 1em; border-radius: 0.3em;">
<strong>Anonymous Planet Master Signing Key (MSK):</strong>
9FA5 436D 0EE3 6098 5157 3825 17EC A05F 768D EDF6
<strong>Anonymous Planet Release Signing Key (RSK):</strong>
C302 3DBE A3FB 38C4 38BA 1EED CEC6 0AED E8B9 92A2
</div>
Anonymous Planet is a collective of volunteers.
??? person "Das Kolburn"
- [:simple-github: GitHub](https://github.com/NobodySpecial256 "@NobodySpecial256")
- [:fontawesome-solid-envelope: E-mail](mailto:contact@anonymousplanet.net)
- [:simple-matrix: Personal Matrix](https://matrix.to/#/@daskolburn:thomcat.rocks "@daskolburn:thomcat.rocks"), [:simple-matrix: Org Matrix](https://matrix.to/#/@daskolburn:anonymousplanet.net "@daskolburn:anonymousplanet.net")
??? person "Nope"
- [:simple-github: GitHub](https://github.com/nopeitsnothing "@nopeitsnothing")
- [:simple-mastodon: Mastodon](https://ioc.exchange/@unknown "@unknown@ioc.exchange"){rel=me}
- [:fontawesome-solid-house: Homepage](https://www.itsnothing.net)
- [:fontawesome-solid-envelope: E-mail](mailto:contact@anonymousplanet.net)
- [:simple-matrix: Personal Matrix](https://matrix.to/#/@thehidden:tchncs.de "@thehidden:tchncs.de"), [:simple-matrix: Org Matrix](https://matrix.to/#/@nope:anonymousplanet.net "@nope:anonymousplanet.net")

Before

Width:  |  Height:  |  Size: 15 MiB

After

Width:  |  Height:  |  Size: 15 MiB

Before

Width:  |  Height:  |  Size: 936 B

After

Width:  |  Height:  |  Size: 936 B

Before

Width:  |  Height:  |  Size: 949 B

After

Width:  |  Height:  |  Size: 949 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 113 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 88 KiB

Before

Width:  |  Height:  |  Size: 401 KiB

After

Width:  |  Height:  |  Size: 401 KiB

Before

Width:  |  Height:  |  Size: 220 KiB

After

Width:  |  Height:  |  Size: 220 KiB

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Before

Width:  |  Height:  |  Size: 453 KiB

After

Width:  |  Height:  |  Size: 453 KiB

Before

Width:  |  Height:  |  Size: 209 KiB

After

Width:  |  Height:  |  Size: 209 KiB

Before

Width:  |  Height:  |  Size: 243 KiB

After

Width:  |  Height:  |  Size: 243 KiB

Before

Width:  |  Height:  |  Size: 237 KiB

After

Width:  |  Height:  |  Size: 237 KiB

Before

Width:  |  Height:  |  Size: 235 KiB

After

Width:  |  Height:  |  Size: 235 KiB

Before

Width:  |  Height:  |  Size: 471 KiB

After

Width:  |  Height:  |  Size: 471 KiB

Before

Width:  |  Height:  |  Size: 706 KiB

After

Width:  |  Height:  |  Size: 706 KiB

Before

Width:  |  Height:  |  Size: 100 KiB

After

Width:  |  Height:  |  Size: 100 KiB

Before

Width:  |  Height:  |  Size: 144 KiB

After

Width:  |  Height:  |  Size: 144 KiB

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Before

Width:  |  Height:  |  Size: 105 KiB

After

Width:  |  Height:  |  Size: 105 KiB

Before

Width:  |  Height:  |  Size: 187 KiB

After

Width:  |  Height:  |  Size: 187 KiB

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 112 KiB

Before

Width:  |  Height:  |  Size: 246 KiB

After

Width:  |  Height:  |  Size: 246 KiB

Before

Width:  |  Height:  |  Size: 197 KiB

After

Width:  |  Height:  |  Size: 197 KiB

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 203 KiB

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

Before

Width:  |  Height:  |  Size: 89 KiB

After

Width:  |  Height:  |  Size: 89 KiB

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Before

Width:  |  Height:  |  Size: 380 KiB

After

Width:  |  Height:  |  Size: 380 KiB

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 145 KiB

Before

Width:  |  Height:  |  Size: 153 KiB

After

Width:  |  Height:  |  Size: 153 KiB

Before

Width:  |  Height:  |  Size: 130 KiB

After

Width:  |  Height:  |  Size: 130 KiB

Before

Width:  |  Height:  |  Size: 140 KiB

After

Width:  |  Height:  |  Size: 140 KiB

Before

Width:  |  Height:  |  Size: 144 KiB

After

Width:  |  Height:  |  Size: 144 KiB

Before

Width:  |  Height:  |  Size: 118 KiB

After

Width:  |  Height:  |  Size: 118 KiB

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Before

Width:  |  Height:  |  Size: 197 KiB

After

Width:  |  Height:  |  Size: 197 KiB

Before

Width:  |  Height:  |  Size: 113 KiB

After

Width:  |  Height:  |  Size: 113 KiB

Some files were not shown because too many files have changed in this diff Show More