---
title: "All PHP 8.5 hash algorithms"
url: https://www.exakat.io/all-php-8-5-hash-algorithms/
date: 2026-02-13
modified: 2026-02-13
author: "dams"
description: "All PHP 8.5 hash algorithms Choosing the right hashing algorithm is difficult, balancing the need for security, speed, and reliability. PHP offers a almost 60 built-in hashing options, but not..."
categories:
  - "Code auditing"
tags:
  - "hash"
  - "php"
image: https://www.exakat.io/wp-content/uploads/2026/02/ruelle.320.png
word_count: 2480
---

# All PHP 8.5 hash algorithms

# All PHP 8.5 hash algorithms

Choosing the right hashing algorithm is difficult, balancing the need for security, speed, and reliability. PHP offers a almost 60 built-in hashing options, but not all are created equal : some are industry standards for cryptographic security, while others are optimized for lightning-fast non-cryptographic tasks like caching or checksums; some are just here for legacy reasons. This blog post provides a comprehensive, categorized guide to every algorithm available in PHP, helping you navigate the trade-offs between legacy compatibility and modern security to ensure you're always using the right tool for the job.

 

 

 

 

## Hashing families

- MD
- SHA-1
- SHA-2
- SHA-3
- RIPEMD
- Whirlpool
- Tiger
- Snefru
- GOST
- Checksum
- FNV
- Jenkins
- MurmurHash
- xxHash
- Haval

## MD

### md2

[More details](https://en.wikipedia.org/wiki/MD5)

md2 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast, widely used.

Usage: non-cryptographic caching, legacy identifier generation.

### md4

[More details](https://en.wikipedia.org/wiki/MD5)

md4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast, widely used.

Usage: non-cryptographic caching, legacy identifier generation.

### md5

[More details](https://en.wikipedia.org/wiki/MD5)

md5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast, widely used.

Usage: non-cryptographic caching, legacy identifier generation.

## SHA-1

### sha1

[More details](https://en.wikipedia.org/wiki/SHA-1)

sha1 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: legacy compatibility.

Usage: non-cryptographic caching, legacy identifier generation.

## SHA-2

### sha224

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

### sha256

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

### sha384

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

### sha512/224

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

### sha512/256

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

### sha512

[More details](https://en.wikipedia.org/wiki/SHA-2)

Strengths: high security, industry standard.

Usage: cryptographic security, digital signatures.

## SHA-3

### sha3-224

[More details](https://en.wikipedia.org/wiki/SHA-3)

Strengths: modern, resistant to length extension attacks.

Usage: cryptographic security, future-proof hashing.

### sha3-256

[More details](https://en.wikipedia.org/wiki/SHA-3)

Strengths: modern, resistant to length extension attacks.

Usage: cryptographic security, future-proof hashing.

### sha3-384

[More details](https://en.wikipedia.org/wiki/SHA-3)

Strengths: modern, resistant to length extension attacks.

Usage: cryptographic security, future-proof hashing.

### sha3-512

[More details](https://en.wikipedia.org/wiki/SHA-3)

Strengths: modern, resistant to length extension attacks.

Usage: cryptographic security, future-proof hashing.

## RIPEMD

### ripemd128

[More details](https://en.wikipedia.org/wiki/RIPEMD)

ripemd128 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: alternative to sha.

Usage: cryptographic security (160+ bits), blockchain (ripemd-160).

### ripemd160

[More details](https://en.wikipedia.org/wiki/RIPEMD)

Strengths: alternative to sha.

Usage: cryptographic security (160+ bits), blockchain (ripemd-160).

### ripemd256

[More details](https://en.wikipedia.org/wiki/RIPEMD)

ripemd256 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: alternative to sha.

Usage: cryptographic security (160+ bits), blockchain (ripemd-160).

### ripemd320

[More details](https://en.wikipedia.org/wiki/RIPEMD)

ripemd320 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: alternative to sha.

Usage: cryptographic security (160+ bits), blockchain (ripemd-160).

## Whirlpool

### whirlpool

[More details](https://en.wikipedia.org/wiki/Whirlpool_(hash_function))

Strengths: large 512-bit hash, based on aes.

Usage: high-security cryptographic hashing.

## Tiger

### tiger128,3

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

### tiger160,3

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

### tiger192,3

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

### tiger128,4

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

### tiger160,4

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

### tiger192,4

[More details](https://en.wikipedia.org/wiki/Tiger_(hash_function))

Strengths: designed for 64-bit systems.

Usage: fast hashing on 64-bit systems.

## Snefru

### snefru

[More details](https://en.wikipedia.org/wiki/Snefru)

snefru is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: historical interest.

Usage: historical interest only.

### snefru256

[More details](https://en.wikipedia.org/wiki/Snefru)

snefru256 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: historical interest.

Usage: historical interest only.

## GOST

### gost

[More details](https://en.wikipedia.org/wiki/GOST_(hash_function))

gost is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: russian national standard.

Usage: cryptographic security (standard-specific).

### gost-crypto

[More details](https://en.wikipedia.org/wiki/GOST_(hash_function))

Strengths: russian national standard.

Usage: cryptographic security (standard-specific).

## Checksum

### adler32

[More details](https://en.wikipedia.org/wiki/Adler-32)

adler32 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: faster than crc32 but less reliable.

Usage: checksum, error detection.

### crc32

[More details](https://en.wikipedia.org/wiki/Cyclic_redundancy_check)

crc32 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: error detection in data transmission.

Usage: checksum, error detection.

### crc32b

[More details](https://en.wikipedia.org/wiki/Cyclic_redundancy_check)

crc32b is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: error detection in data transmission.

Usage: checksum, error detection.

### crc32c

[More details](https://en.wikipedia.org/wiki/Cyclic_redundancy_check)

crc32c is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: error detection in data transmission.

Usage: checksum, error detection.

## FNV

### fnv132

[More details](https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function)

fnv132 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: low collision rate, simple.

Usage: fast hash table keys, non-cryptographic identifier generation.

### fnv1a32

[More details](https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function)

fnv1a32 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: low collision rate, simple.

Usage: fast hash table keys, non-cryptographic identifier generation.

### fnv164

[More details](https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function)

fnv164 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: low collision rate, simple.

Usage: fast hash table keys, non-cryptographic identifier generation.

### fnv1a64

[More details](https://en.wikipedia.org/wiki/Fowler%E2%80%93Noll%E2%80%93Vo_hash_function)

fnv1a64 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: low collision rate, simple.

Usage: fast hash table keys, non-cryptographic identifier generation.

## Jenkins

### joaat

[More details](https://en.wikipedia.org/wiki/Jenkins_hash_function)

joaat is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast non-cryptographic hash.

Usage: fast non-cryptographic identifier generation.

## MurmurHash

### murmur3a

[More details](https://en.wikipedia.org/wiki/MurmurHash)

murmur3a is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast non-cryptographic hash for hash tables.

Usage: high-performance hash table indexing, caching.

### murmur3c

[More details](https://en.wikipedia.org/wiki/MurmurHash)

murmur3c is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast non-cryptographic hash for hash tables.

Usage: high-performance hash table indexing, caching.

### murmur3f

[More details](https://en.wikipedia.org/wiki/MurmurHash)

murmur3f is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: fast non-cryptographic hash for hash tables.

Usage: high-performance hash table indexing, caching.

## xxHash

### xxh32

[More details](https://github.com/Cyan4973/xxHash)

xxh32 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: extremely fast non-cryptographic hash.

Usage: extremely fast non-cryptographic data processing, caching.

### xxh64

[More details](https://github.com/Cyan4973/xxHash)

xxh64 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: extremely fast non-cryptographic hash.

Usage: extremely fast non-cryptographic data processing, caching.

### xxh3

[More details](https://github.com/Cyan4973/xxHash)

xxh3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: extremely fast non-cryptographic hash.

Usage: extremely fast non-cryptographic data processing, caching.

### xxh128

[More details](https://github.com/Cyan4973/xxHash)

xxh128 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: extremely fast non-cryptographic hash.

Usage: extremely fast non-cryptographic data processing, caching.

## Haval

### haval128,3

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval128,3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval160,3

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval160,3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval192,3

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval192,3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval224,3

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval224,3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval256,3

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval256,3 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval128,4

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval128,4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval160,4

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval160,4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval192,4

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval192,4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval224,4

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval224,4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval256,4

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval256,4 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval128,5

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval128,5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval160,5

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval160,5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval192,5

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval192,5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval224,5

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval224,5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).

### haval256,5

[More details](https://en.wikipedia.org/wiki/HAVAL)

haval256,5 is not a secure hashing anymore. Do not use it for security sensitive operations.

Strengths: variable length and rounds.

Usage: flexible cryptographic hashing (variable output).