Skip to main content

Settings

Color Mode

Theme Skin

Background

Appearance preferences are saved in this browser only.

Environment

Current Environment Production

Built with JEKYLL_ENV=production. Changes require deployment.

Theme & Build

Jekyll v3.10.0
Last BuildOct 17, 19:54

Page Info

Layout default
Collection none
Path overthewire/vortex/vortex16.md
URL /docs/wargames/vortex/vortex16/
Date 2026-04-07

Source Code

Set repository: USER/REPO in your _config.yml to enable source-code shortcuts.

Vortex16

Vortex Level 16 — find 100 bits out of a 128-bit randomly generated hashed key, a partial hash-matching problem.

Table of Contents

Source: This content is aggregated from overthewire (MIT). Visit the original repository for the latest version.

The BOFH

This level requires finding 100 bits out of a 128 bit randomly generated hashed key. You must login to vortex.labs.overthewire.org to complete this level.

Study guide

Level map: logged in as vortex16, obtain access to vortex17.

What this level teaches

The cost and structure of partial hash search.

Key ideas

  • The task as stated. The page describes it as finding 100 bits out of a randomly generated, hashed 128-bit key. Read the level’s code to see exactly which bits must match and what you control.
  • Cost estimation. Matching fewer bits is exponentially cheaper than matching all of them: each extra required bit roughly doubles the expected work.
  • Speed. Efficient C and parallel search make the difference between hours and years.

How to approach it

  1. Read exactly what must match, and how many bits.
  2. Estimate expected work for the plan you choose.
  3. Implement and benchmark on smaller bit counts first.

Why it matters

It illustrates truncated hashes and why a short checksum gives only weak assurance.