KECCAK 256 hash generator
This is a free online KECCAK 256 hash generator
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?
pycryptodomefrom 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.