Bỏ qua đến nội dung chính
FreeOnlineTools Go
Tiếng Việt
explanation

Băm Là Gì? Giải thích Đầy đủ về Hàm Băm

By FreeOnlineTools Team · Updated 2026-09-02

Quick Answer

Hashing chuyển bất kỳ input nào thành output kích thước cố định (hash) bằng hàm one-way. Cùng input luôn tạo cùng hash; input khác tạo hash khác (collision resistance). Dùng Hash Generator miễn phí để tính SHA-256, SHA-1 và MD5 trong trình duyệt.

Introduction

Hashing là quá trình chuyển input dữ liệu kích thước bất kỳ thành output kích thước cố định gọi hash hoặc digest. Hàm hash là thuật toán thực hiện chuyển đổi. Hàm hash cryptographic có thuộc tính đặc biệt hữu ích cho integrity dữ liệu, lưu mật khẩu và chữ ký digital. Khác encryption, hashing là one-way —không thể phục hồi input từ hash.

Step by Step

  1. Understand hash function properties

    Cryptographic hash functions have four key properties: (1) Deterministic — same input always gives same output. (2) Quick to compute. (3) One-way — infeasible to recover input from hash. (4) Collision-resistant — infeasible to find two different inputs with the same hash. (5) Avalanche effect — small input change drastically changes output.

  2. Learn common algorithms

    SHA-256 (256-bit output, 64 hex chars) is the modern standard — used in Bitcoin, TLS, and digital signatures. SHA-512 is more secure but slower. SHA-3 is the newest family. MD5 (128-bit) and SHA-1 (160-bit) are broken for collision resistance and should not be used for security.

  3. Distinguish hashing from encryption

    Hashing is one-way — you cannot reverse it. Encryption is two-way — you can decrypt with a key. Hashing is for integrity and verification; encryption is for confidentiality. Never use a hash to store data you need to recover.

  4. Use hashing correctly

    For data integrity, hash the data and compare to a known-good hash. For passwords, use a slow key-stretching hash (bcrypt, scrypt, Argon2) with a unique salt — not raw SHA-256, which is too fast and vulnerable to brute force.

Examples

SHA-256 hash

Input: Hello, World!

Output: dffd6021bb2bd5b0af676290809ec008dfca50a8d29e6ac0a52c2d7e9f0a3b0c

Avalanche effect

Input: Hello, World! (vs Hello, World?)

Output: Completely different hash despite one-character change

MD5 hash (broken, legacy only)

Input: Hello, World!

Output: ed0760733d7505e9ceacf8af225020ac

Common Problems

  • Using MD5 or SHA-1 for security —both are broken for collision resistance. Use SHA-256 or stronger for any security purpose.
  • Hashing passwords without a salt —identical passwords produce identical hashes, enabling rainbow table attacks. Use bcrypt, scrypt, or Argon2 with a unique salt.
  • Confusing hashing with encryption —hashing is one-way (cannot be reversed); encryption is two-way (can be decrypted with a key).
  • Expecting hashes to be unique —collisions are theoretically possible but practically infeasible for secure algorithms (SHA-256 has 2^256 possible outputs).

Tips

  • Use SHA-256 for data integrity verification, content addressing, and digital signatures.
  • For password storage, use bcrypt, scrypt, or Argon2 —not raw SHA-256. These algorithms have key stretching to resist brute force.
  • Hashing is one-way —never use it to store data you need to recover. Use encryption for confidential data.
  • Use our Hash Generator to compute SHA-256 and other hashes instantly in your browser.

Related Tools

Related Guides

References