Hashing a seed with SHAKE-256 and setting the output size to 1GiB it takes 6.5 seconds on my system:
$ time dd if=/dev/random count=40960 bs=1 &>/dev/null | shake256sum -N 8589934592 > /dev/null
real 0m6.497s
user 0m5.682s
sys 0m0.844s
/\ 165.2 MiB/s
SHAKE-256 can be used to generate keys of any size as an (experienced) user of this forum stated.
Let's suppose I want to use pure SHA3-256 instead of SHAKE.
I can generate a key/keystream of any size with SHA3-256 by using:
keystream = H(00∥S)∥H(01∥S)∥H(02∥S)∥H(03∥S)...
H is the Hash, S is the seed.
My question is:
Does hashing a seed with counter using SHA3-256 would have a similar performance that of SHAKE-256? Will I have a speed near 165.2 MiB/s if I use SHA3 in this way? (These two hash functions have similar performances).