KECCAK 256 hash generator

This is a free online KECCAK 256 hash generator

Use this generator to create an KECCAK256 hash of a string

What is KECCAK256?

Keccak is the winner of SHA-3 competition, so many people referring SHA-3 as Keccak. The core algorithm is still the same, but there's slight modification for SHA-3. That's why when we compared the result of SHA-3 with Keccak result, it will be different.

Ethereum uses Keccak256 in a consensus engine called Ethash. Keccak is a family of hash functions that eventually got standardized to SHA-3 (SHA256 is part of a family of hash functions called SHA-2). Ethereum called it Keccak instead of SHA-3 as it has slightly different parameters than the current SHA-3.

KECCAK256 in programming languages

Will the KECCAK256 cryptographic hash function output be same in all programming languages?
Yes, correct implementation of KECCAK256 will produce the same result, otherwise KECCAK256 would not be useful as a checksum. The difference may come up with encoding and byte order. You must be sure that text is encoded to exactly the same sequence of bytes.

Is it possible to decode the KECCAK256?
No, that's not possible.

KECCAK256 in PHP

PHP how to convert string to KECCAK256 hash?
kornrunner/php-keccak

composer require kornrunner/keccak
<?php
use kornrunner\Keccak;
$hash = Keccak::hash('sita.app', 256);
//output: eedac5dd0fa73bb98e905b09d9836417700fd0e7755e6432821ede8d01046a25
?>

KECCAK256 in Nodejs

Nodejs how to convert string to KECCAK256 hash?
keccak256 in github

npm install keccak256
const keccak256 = require('keccak256')
console.log(keccak256('sita.app in nodejs').toString('hex'))
//output: "dbe0968e1bc268f2ab024cad921cab5128d508acb563e1d63d4b7b7c5d30189a"
console.log(keccak256(Buffer.from('sita.app in nodejs')).toString('hex'))
//output: "dbe0968e1bc268f2ab024cad921cab5128d508acb563e1d63d4b7b7c5d30189a"

KECCAK256 in Python

Python how to convert string to KECCAK256 hash?

pycryptodome
from Crypto.Hash import keccak
k = keccak.new(digest_bits=256)
k.update('sita.app')
print k.hexdigest()
pysha3
import sha3
k = sha3.keccak_256()
k.update('string')
print k.hexdigest()
  • For python3 the strings need to be passed in binary k.update(b'string')
  • If you want to find a new hash you need to initialize k again otherwise it will update the value on top of the existing one.
  • pysha3 was not working since I had installed both sha3 and pysha3 libraries, so import sha3 was giving preference to sha3 lib.