> For the complete documentation index, see [llms.txt](https://alham-rizvi.gitbook.io/alhamrizvi/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://alham-rizvi.gitbook.io/alhamrizvi/cryptography/hashing/06.-hashing-types-1.md).

# 06. Hashing Types 1

### Hashing Types 01

Below is a structured preview of the hashing algorithms we will study in detail in the upcoming lessons. Each topic will be broken down later with internal design, security properties, and CTF relevance.

### Hashing Algorithms Overview Table

| Algorithm           | Type                       | Security Level    | Main Use Case                     | Key Idea                                |
| ------------------- | -------------------------- | ----------------- | --------------------------------- | --------------------------------------- |
| MD5                 | Cryptographic hash         | Broken            | Legacy checksums, CTF cracking    | Fast but vulnerable to collisions       |
| SHA-1               | Cryptographic hash         | Broken            | Legacy systems, old signatures    | Collision attacks proven                |
| SHA-2 (SHA-256/512) | Cryptographic hash         | Secure            | Blockchain, TLS, general security | Strong modern standard                  |
| SHA-3               | Cryptographic hash         | Secure            | Modern cryptography               | Sponge construction, safer design       |
| BLAKE2              | Cryptographic hash         | Secure            | High-performance systems          | Faster than SHA-2 with similar security |
| Whirlpool           | Cryptographic hash         | Secure (rare use) | Niche cryptography                | 512-bit design                          |
| RIPEMD-160          | Cryptographic hash         | Moderate/legacy   | Some blockchain systems           | Alternative SHA-1-like design           |
| CRC32               | Non-cryptographic checksum | Not secure        | Error detection                   | Linear, reversible, not for security    |
| MurmurHash          | Non-cryptographic hash     | Not secure        | Hash tables, databases            | Fast, non-crypto design                 |

### Key Understanding Before We Start

#### 1. Not all hashes are for security

* Cryptographic hashes → MD5, SHA family, BLAKE2, Whirlpool, RIPEMD
* Non-cryptographic hashes → CRC32, MurmurHash

#### 2. Security depends on design purpose

* Cryptographic hashes → resist attacks and collisions
* Non-cryptographic hashes → optimized for speed, not safety

#### 3. CTF mindset reminder

When you encounter a hash:

* Weak legacy hash (MD5, SHA-1) → brute force or collision thinking
* Strong modern hash (SHA-2, SHA-3, BLAKE2) → look for input/logic flaws
* Non-crypto hash → expect manipulation or reversal

### What’s Next

In the upcoming lessons, we will study each algorithm in detail:

* Internal structure
* Step-by-step hashing process
* Design goals
* Known weaknesses (if any)
* Real-world usage
* CTF exploitation patterns

Each topic will move you from understanding *what it is* → *how it works* → *how it fails (if it does)*


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://alham-rizvi.gitbook.io/alhamrizvi/cryptography/hashing/06.-hashing-types-1.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
