Hash Functions

Hash functions

Beginner LevelBy Pratima Sharma

A hash function is a mathematical algorithm that takes an input of arbitrary size (such as a string, file, or transaction data) and produces a fixed-size output, known as a hash or digest.

In blockchain systems, hash functions are critical for securing data, linking blocks, and verifying integrity without revealing the actual content.

Example

  • Input: "Blockchain"
  • Hash (using SHA-256): 6251e5f99d2a8b8efc58d233... (64 hex characters)

No matter how large or small the input, the output length remains fixed.

Hash Function Illustration

Key Properties of Hash Functions

1. Deterministic

A hash function must always generate the same output for the same input.

  • Example: If you hash "Bitcoin" today and hash "Bitcoin" tomorrow with SHA-256, the output will be identical.
  • Why it matters: Ensures consistency and reliability for data verification in blockchain.

2. Collision-Resistant

A collision occurs when two different inputs produce the same hash output. A secure hash function makes finding such collisions computationally infeasible.

  • Example:
    • Input 1: "Alice sends 1 BTC to Bob"
    • Input 2: "Alice sends 100 BTC to Bob"
    • The outputs must be different; otherwise, an attacker could replace a valid transaction with a fraudulent one.
  • Why it matters: Prevents malicious users from forging data with the same hash.

3. Pre-Image Resistant

Given a hash output, it should be computationally infeasible to determine the original input.

  • Example: If a blockchain block hash is known (e.g., 0000000000000000000abc...), no one should be able to reverse-engineer the exact block content.
  • Why it matters: Ensures confidentiality of data and protects sensitive information.

4. Avalanche Effect (Bonus Property)

A small change in input must produce a drastically different output.

  • Example:
    • Input: "Blockchain" → 6251e5f99d2a8b8efc58d233...
    • Input: "blockchain" → 3adbbad1791fbae3ec908894...
  • Why it matters: Ensures data tampering is easily detected.

Example in Blockchain Context

Let’s say a blockchain block contains:

  • Transaction: Alice → Bob (10 BTC)
  • Previous Hash: 0000abc123...
  • Timestamp: 2025-09-12

All this data is passed through a hash function (SHA-256) to generate the Block Hash.

  • If any single transaction or timestamp is modified, the hash changes completely.
  • Since each block links to the previous block’s hash, tampering with one block invalidates the entire chain — making blockchain secure and immutable.

Summary

  • Hash functions are the backbone of blockchain cryptography.
  • Properties like determinism, collision resistance, pre-image resistance, and avalanche effect ensure security.
  • They enable immutability, trustless verification, and integrity in distributed ledgers.

Continue Learning

Explore more topics in Cryptography in Blockchain or browse other tutorials.